This prevents the list's geometry from changing considerably when
navigating into a folder that has no subfolders of its own because of
the lack of icons. We use an empty icon of the same size as the folder
icon for this purpose.
* Units - Dunefolk Nagas - first revisions
* Units - Nagas : rework dirkfang line stats and add a couple dirkfang animations
* Units - Nagas : additions to dirkfang animations
* units - nagas : attack anim tweeks
* units - nagas: melee boost to dirkfang and advancements
* units - nagas: terrain defense boost to ringcaster
* units - nagas - add dirkfang portrait
* units - nagas - revise attack numbers for entire line
* units - nagas - remove reference to old name Dervish in description
* wmlindent run
resolve https://github.com/wesnoth/wesnoth/issues/4718. if other_attack condition for adding of abilitie applied to opponent then abilitie function what for attack to same range what owned by owner of abilitie and weapon like abilities must be applied to all attack matched
For some reason the xcode job easily runs the longest despite being a partial recompile. Having it also be the final job to run therefore means that the entire build will be waiting for it to complete, whereas having it earlier allows other shorter jobs to be run alongside it.
If the current selection was a built-in server, the new server would be
added right below it even if it wasn't the last built-in server,
resulting in a new entry that can't be deleted without closing the
dialog and launching it again to force the server list to be
re-enumerated correctly.
This moves the relevant code out of the MP game setup flow into a
dedicated function, so it can also be used in the --report output.
However, it also fixes two bugs we just found out with the previous
code:
* The channel id was extracted using istream's formatted input
operator, resulting in everything beyond the very first word being
skipped.
* The channel id was expected to be stored in ./data/dist rather than
<game data dir>/data/dist. This causes issues whenever the process
working dir is not the game data dir (most notably on X11 when
launching with distribution-provided .desktop files) because the file
won't be found.
So now the file is read by swallowing the first line and stripping
whitespace around, as well as using game_config::path (guaranteed to be
non-empty by the time the game makes actual use of this info).
This makes it so all states of the text box widget have borders again.
The colours are changed, however, so that the focused state has the
brightest border.
This turned out to be necessary because otherwise the chat input textbox
in the MP lobby completely blends with the chat log box, making it seem
as though it disappears whenever it doesn't have the keyboard focus.
[ci skip]
Previously, a rabbit hole item on the map border could be selected for spawning a new rabbit, resulting in an error message on screen and abandoning the CA for the rest of the turn.
This replaces the previous behaviour of using <pwd>/translations, which
could break on certain edge cases (e.g. if Wesnoth is launched from the
command line from a different dir).
Add an enter_hex event for moving into the throne room, and modify the "attack"
event so that the undisguised units can trigger it too. For reviewing, note that
the diff shows these as if the existing "attack" was changed to a "enter_hex",
but in fact it's the existing `[filter_wml]` moving from "attack" to "enter_hex".
Add L2 Trolls to various lists, as they're used on easy/normal difficulties.
The main bug fixed here is "When a guard sees one of the two units not
disguised as an orc, it chases after the unit, but no other enemies are
alerted. This allows a player to pick off each enemy unit individually, then
release the prisoners."
When this utility was written, the list of languages was hardcoded in
src/language.cpp, an example of running it is shown in c2e397e07d.
That hardcoded list was removed by 3fbe2a5863 and b5270e41b9.