77004 Commits

Author SHA1 Message Date
Nils Kneuper
e33486b43a updated Portuguese (Brazil) translation 2020-09-04 18:38:34 +02:00
Steve Cotton
538a172079
Fix inverted logic in working out which resources are active (#5127)
This line is meant to skip the rest of the loop for things that have previously
been inserted in to loaded_resources; but instead it skipped the rest of the
loop unless the id was already in loaded_resources. Fixes #5126.
2020-09-04 13:59:28 +02:00
newfrenchy83
51f7340067
fix codeblocks project for lua widget 2020-09-04 13:20:16 +02:00
Martin Hrubý (hrubymar10)
1b1c0a4e52
Fix Xcode project 2020-09-04 10:54:28 +02:00
Gunter Labes
8c103a9018
Fix unused parameter warning 2020-09-04 09:04:58 +02:00
Wedge009
6ef05c73e7 Update WCII strings
* Attempt to resolve spelling errors and other phrases which didn't make complete sense.
* Replace apostrophes in user-visible strings with typographical equivalent.
* Revised WoCopedia Help based on clarification from @gfgtdf.
* Unify use of 'OK' in dialogues and remove use of 'okay' in prose.
* Remove some 'modern' language usage such as 'guys'.

[ci skip]
2020-09-04 14:21:39 +10:00
Steve Cotton
a2b98687b7
Update the VC16 project files for Lua Widgets (#5125)
In source_lists/wesnoth, put the new files in alphabetical order.

This (as expected) fails to build on MacOS, just like the previous build.

It also fails to build with Clang on Linux, just like the previous build. That's
caused by src/scripting/push_check.hpp:89's unused parameter 'L', and is
also just like the previous build.
2020-09-04 05:44:15 +02:00
Pentarctagon
c082660aa6 Compress linux and windows debug information before uploading.
Also limit sftp to taking at most 5 minutes.
2020-09-03 19:21:38 -05:00
gfgtdf
5a9c5bda1c add more lua widget callbacks
I'm not sure how mcuh of this api we should expose
in particular wrt to the fron/back_pre/postchild
parameter. The api is still no in its final state
2020-09-03 22:08:53 +02:00
gfgtdf
a158eef0d0 move widget attributes before children
This is mostly for perfromance reasons, sicne windget::find()
might search quite a while (relertively) in the wirst case
2020-09-03 22:08:53 +02:00
gfgtdf
ae2b7fc2de add lua window:close() function 2020-09-03 22:08:53 +02:00
gfgtdf
661fc1d8ef refactoor lua gui2 callback code
this refactors the lua gui2 callback c++ implementation
Now the callback infrastructure also supports different
types of callbacks for a single widget. Furthermore
it also supports multiple open gui2 dialogs at the same time.

This now also makes the widget parameter of widget.find
manditory.
2020-09-03 22:08:53 +02:00
gfgtdf
7b2ede6243 SotA: use new gui2 widgets api in custom dialog 2020-09-03 22:08:53 +02:00
gfgtdf
ba1ea7a701 wc: use new widget lua userdata in help dialog 2020-09-03 22:08:53 +02:00
gfgtdf
522f301dd0 fix unused parameter warning 2020-09-03 22:08:53 +02:00
gfgtdf
90a5930f21 new lua gui2 widget userdata
lua now has a widget userdata that can be used
to set/get widgets properties as one would
expect, a lot of the set/get_dialog_xy function
were converted into modifiable properties of
the widget userdata. This in particular allows
us to get rid of the strange 'path to widget'
type of arguments of gui2 functions.

It currently generates lot of compiler wanrings,
I will fix this in a later commit.

One of the main advantage is that it makes it
much easier to add new api, previously a lot
of functions where overused, probably because
that was just easier than creatign a new
function. For example set_dialog_value returned
multiple value of listbox objects. (the
compatibility path doesn't support this
particular feature yet but i don't think it is
important, it probably wasn't even used at all,
since it also wasn't documented).

This also adds some new features, like an 'add_item'
function to add an item to a listbox, a 'type'
property of widgets to query the type of a
widget and a 'item_count' property to count the
number of children in an item.

Im still not 100% sure about the
property /function names, in particular:

1) i might rename 'items' to 'elements' or
   'children' in some functions. Not sure yet
2) I might rename the 'value' property to
   'value_compat' to make clear that its only
   supposed to be used by the
   backwards_compat.lua code.

A next step in improving this api might be
to introduce a (reusable!) 'window' userdata
so that the implementaion of wesnoth.show_dialog
would become:
```
function wesnoth.show_dialog(wml, preshow, postshow)
  local dialog = gui.create_dialog(wml)
  preshow(dialog)
  local res = dialog:show()
  postshow(dialog)
  return res
end
```

However this is currently not really possble
since the pure existance of a gui2::window
object blocks the gui1 code (the main game view)
from receiving events. So we clearly cannot luas
gc take ownership of gui2::window objects.
2020-09-03 22:08:53 +02:00
gfgtdf
0a9c3a45eb fix lua_push<string_view> 2020-09-03 22:08:53 +02:00
Martin Hrubý (hrubymar10)
c48e176a1a
Fix Xcode source tarball builds
Closes #5117
2020-09-03 10:48:30 +02:00
Pentarctagon
10c60fd2e3 Print when starting/finishing the sqlite updates and when the caching step starts. 2020-09-02 12:47:34 -05:00
gfgtdf
cd34e2d8ae
fix crash in unit animation code
fixes #5121
2020-09-02 17:57:56 +02:00
Pentarctagon
ca7ab8ec8a Resend the announcements and server info text when rejoining the lobby.
Fixes #5095
2020-09-01 00:55:11 -05:00
Steve Cotton
67dfb4f23d
Refactor text.cpp's buffer alloc, throw instead of crashing if it needs more than 2GB (#5042)
The limit is arbitrary, and 2 gigabytes is very large. The new TODO comment
in the .cpp file gives a possible future refactor which would reduce the limit.

The old early-return for surface_buffer_.empty() moves upwards and changes to
testing for zeros before the allocation; it now also acts as a guard for
division by zero in the (height > int::max() / stride) test.

The loop around from_cairo_format() relied on stride being exactly
sizeof(uint32_t) * width, an assumption which would break if
cairo_format_stride_for_width added padding.
2020-09-01 04:17:49 +02:00
Steve Cotton
fbfda841bb Changelog; update for #5110 and add some placeholder headings
The placeholders will hopefully avoid merge conflicts when changelog
entries are included in PRs.

[ci-skip]
2020-08-31 19:44:25 +02:00
Severin Glöckner
7136e3cfc3 NR: fix errors
- Typo found by travis
- Duplicated code
2020-08-31 16:20:07 +02:00
gfgtdf
ae3eea28f8
fix unit_type::variation_id_ not set 2020-08-31 14:34:46 +02:00
Severin Glöckner
9cda7e7353 MP Survivals: remove quick trait for slow leaders
In PvE the player doesn't need this bonus, like he doesn't have it in campaigns either.

[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
8b26a1b9d2 NR: make heroes unrenamable
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
723f24f4ab NR: add comments for scenarios and characters
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
4aefaa84c9 NR: Tallin loses his traits
Three traits is one too much. Normally leaders don't have any.

[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
b03d441240 NR misc
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
c0f8d3618a NR 10 & 11: hide sides until their leader arrives (if ever)
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
d1b00b1ce8 NR: handle dead loyals
In place of death loyals other units are recalled.
Best level 2 ones, in difference to level 3 ones they need still xp.

[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
f3727e98ff NR: better supporter death handler
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
71f77c5263 NR 13: remove duplicate recall
happened in prestart already

[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
f2d616498b NR 09: increase gold carryover to 80%
This scenario is not guaranteed to take place.
If the player wouldn't play it, he wouldn't lose 60% of his gold.

The enemies give up to 248 XP, but the players units mightt also
have already reached Level 3. (There's no keep, only preselected loyals)

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
f2b6b089ee NR 09: unhide side
[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
b78087dfad NR 07: fix 2nd objectives not showing
They were supposed to be unlocked by a die event,
but it never happened because [store_unit]kill=yes
removed the unit in it's last breath event.

Refactor the handling of that.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
59bf5d0d82 NR S5: avoid three traits unit
Abhai is a loyal who has absoutely no relevance in path A.
Remove his third trait, because more than two traits is not UI-friendly.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
a7cffd78c2 NR 10: clean up code
- avoid duplicated text
- add a comment explaining eryssa_hostile variable

using boolean_equals instead of equals is difficult here

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
514205b9e7 Nr 09: handle debug mode
Arriving there without Eryssa is normally not possible,
but with ":n" one will.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
dc3934acd9 NR 08: handle a corner case
Let the player advance to S9 as well if he defeated all enemies.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
a01fc14dd6 NR: move objectives to prestart
[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
7a24276f29 NR 07: use new castle terrain
The outside variant of the dwarvish castle.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
408e18c297 TSG: move objectives to prestart
In some cases, players can see the obectives already earlier
by pressing CTRL + J. E.g. when the game scrolls to a unit
for a [message]. If the objectives aren't set at that time,
then the default objectives are displayed (kill all enemy leaders).

Because the code uses boolean_equals instead of equals it's not
anymore dependent of other variables being set beforehand.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
3278201971 TSG: remove explicit overlay
Done implicit by loyal trait now.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
96dc05ae75 TSG 8b: add a micro AI
Chocobones arrive ahead of all other units,
this brings them a bit more in sync with the other forces.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
3b2cb8849e ANL: recommend lowering starting gold
closes #1149

The difficulty slider is in fact the gold setting.
bob_the_mighty suggest setting it to 75, though for new players 100 might be better.

I think the best we can get from this situation is to have it by default on 100,
but to tell players about changing the gold setting if the scenario becomes too easy for them.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
662938bd73 TSG 6a: make human guard non-loyal too
Side-effect of this change: It's gender is now random.
Handling that too.

(income was already increased by former commit)
[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
c55da47912 TSG 6a: increase upkeep istead of using loyal guardians
[ci skip]
2020-08-30 22:28:42 +02:00
Severin Glöckner
9542a296af TSG 8b: remove loyal from enemies
For side 3: additional upkeep costs are
1 / 2 / 4
Try to compensate by increasing upkeep by
0 / 0 / 1

For side 2: additional upkeep costs are
2 / 5 / 6
Try to compensate by increasing upkeep by
0 / 2 / 2

[ci skip]
2020-08-30 22:28:42 +02:00