Turns out that a t_string doesn't automatically obtain the correct
translated value. Thus, I'll simply get it by calling
translation::dsgettext() directly. I also changed the translated string to
be used in the tab label as well.
(cherry-picked from commit 395eaf5251d50373d23bd8f53b7b254683a3dfed)
The original text that referred to Knalga was confusing if the
player thought of Knalga as "dwarvish territory", and most of
the campaign's scenarios have been somewhere in Knalga.
(cherry-picked from commit a6bd0c87ac9ee4066ddad2700182778a0658f4e2)
Updated to [allow_undo], because the hint message shouldn't block undoing a
recall. Recruiting can't be undone, even with [allow_undo], so this isn't
allowing a cheater's opportunity to recruit units with desired traits.
(cherry-picked from commit 66c56403db61acd1621d2b4d78e8f848c826540b)
Anyone who prefers to be credited some other way (or whose name I misspelled) can feel free to open another PR
@Byteron @rrigby @DisherProject @Ferk @Konrad22 @lilinitsy @UnwiseOwl @bandita137@Ordoviz
(cherry-picked from commit ff4e1b2e61ab99be12e1b36cbc954e3f66efa116)
New map for SoF - Sc1 to fix#3383 (removing the fast way to reach the elvish leader, by replacing some regular mountains with snowy mountains).
(cherry-picked from commit 87eb901c105c1fdd405a1a7fddf7d81fdf545b94)
previously the game would go into an infinite loop at
https://github.com/wesnoth/wesnoth/blob/1.14.4/src/gui/widgets/window.cpp#L1046
when a tooltip doesn't fit on screen, this could in particular happen in
the mp lobby when hovering over the 'i' of a game that uses a ridiculous
amount of modifications.
I currently don't see any case where the game is actually able to 'fix'
a bad height that was reported from reevaluate_best_size. so i just
disable reevaluate_best_size for floating tooltips.
If there exists such a case, an alternative fix could be to change the
reevaluate loop in window::layout to also stop when a new iteration
returned the same size as the previous iteration.
(cherry-picked from commit 936516c83b6e0a6e76938c65158d2d6d98f94fba)
previously both were broken:
1) 'require_scenario' was only checked if the scenario was installed
which obviously doesn't make any sense at all.
2) 'require_scenario' was read from the local scenario data instead from
the remote scenario.
3) 'require_era' was only checked when the scenario was not installed,
so people who do have an outated version of the era installed could not
join bacause it assumed require_era=yes in that case.
4) the server tried to read 'require_scenario' from the wrong wml node,
'require_scenario' is an attribute of [scenario] and not of savefile
toplevel.
(cherry-picked from commit eec8b674de6d04f13f5b875c1b1e6b953e45ef9e)
fixes#3017, assuming that the error is actually casued by the
'process_gamelist_diff failed'
As process_gamelist_diff simply returns after getting an error its quite
likeley that the gamelist is then in a corrupted state so we stop
processing it until we get a fresh gamelist.
(cherry-picked from commit 367aec2bb2d5fc5f5acbb53842441c6190c9d452)
previously it would happen that for example an attribute like
`side_name=_"female^Footpads"` in side would get its translatable mark (_)
removed after the game has started. This meant that observers that enterd
the game after it started would see the literal string "female^Footpads"
in the status side overview window.
The new code marks all translatable simple_wml attributes to make sure their
translatable mark is preserved along with their textdomain. It can still
happen though that attributes will appear in the the wrong textdomain area
after simple_wml processing though because in some cases note::output
might skip over textdomain markers. It is still not as bad as string like
"female^Footpads" appearing in the ui though.
An alterntive appraoch to fix this issue would be to carefully make sure
not to change any atributes of wml tags that can also contain translatable
attributes, which would probably imply not editing the wml objects received
by the client at all and instead storing the new information (in particular
side information like is_local=yes/no) in a seperate wml object. (that would
then be sended to the clients along with the original scenario wml objects.)
fixes#1420
(cherry-picked from commit eb23ac56461c8d57dc5d1aee018832c2dc7dcf36)
instead we use a custom struct. std::pair is bad becasue you never know
what "first" or "second" mean.
(cherry-picked from commit c4aacbe31f31799861e03f4b7f7b241bee64aa65)
as said in the comment, that get_special_bool might return the wrong value, as since 5f58cd7c6d the bc_vector no longer contains disabled attacks we can just remove this code.
fixes#3324
(cherry-picked from commit 44734570dd1824a098252d78dafc0f5a561c13cf)
as the ingame ui is not shown yet, [delay] would only result in showing a black screen,
Also in the case of initial lua it might result in crashes because of the threaded loadingscren, or simply because parts of the ui are not initialized yet.
(cherry-picked from commit 97b561269101e5e6d1637d00b44363fc6a1728fd)
Also fixes a mistake from the 1.14.3 rules that caused "xxx MiB" to be
replaced with "xxx MB MiB" for all platforms. Oops. Nobody noticed
anyway (?).
[ci skip]
(cherry-picked from commit 12a3b973b9f357d0b1685df5b29fbcea0fefc7be)
Uses an Orcish castle instead of destroyes human. Troll would maybe fit best,
but it doesn't fit well with the surrounding. Has now only 2 castle hexes.
On easy difficulty, reduced turns by two, it should be enought turns.
Also added one more enemy, as there are less wolves spawned on easy.
And income for Gryphons once again increased by 1, they are very expensive.
Reminding events have been adjusted to turns.
[ci skip]
(cherry-picked from commit c2064827e4d65d819ee258ec40ef54b0c8875590)
Until he is found. This also means one less villages for side 2, increased
their income thatfor,
[ci skip]
(cherry-picked from commit 390d66fda1f55f0b08b3ad950c7e96b38bb35994)
It is the Saurians that have their males killed in S11, so the females
take revenge.
(cherry-picked from commit 32a630bd3f9a7fe30a0799d7039f37db8155382a)
This reverts commit a4bad90bad379feb77e17a4d8ab6cda1dc05e3cc.
It is supposed to be the male Saurians that get killed in S11, and the
females seek revenge in S21.
(cherry-picked from commit 7ced35839b83979b36f3d4236333667ee02d04ea)