- search_recall_list=yes|no (default yes)
- [else] tag which is run if no unit matches
- auto_recall=yes|no (default no) which recalls the unit if it's on the recall list
Added some features:
1) on_event now supports a comma separated list of event names in its first parameter
2) on_event now supports a number as second parameter that specifies in which order the event handlers are called.
3) on_event now passes wesnoth.current.event_context to the handler function, since the handler function will most likeley need it.
This resurrects the old check that was used to determine when it was
safe to create the buttons. It avoids it happening as a result of an
actual draw-all event, instead only happening when the GUI is being
updated.
Using characters like " or ' in unit type ids has a high change of
breaking code, in particular the statistics code assumes that the
unit type ids can be used as wml varaible keys.
This re-creates the main display-gui() buttons on a full redraw to take
into account that the theme expects them to be out of sync. As a
consequence I have also been forced to refactor how said buttons are
managed and introduced a new method to join the same event context
as another component.
According to the Wiki, since 1.13.2 message= is an alias for label=.
Using message= provokes a warning about it being deprecated.
This replaces message= with label= in the entire mainline (where it had not already been changed).
The halo is recreated when the mage starts to move, and it's initially
placed in the top-left corner of the screen. On the next frame the game
corrects its position. Correcting the position clears the list of hexes the
halo overlaps, which essentially means "the overlapped hexes aren't known,
update them when the halo is redrawn". However, the game also uses the list
of overlapped hexes to determine when the halo should be invalidated, and
thus redrawn: because the list was empty, the halo was never invalidated,
and it stayed at the top-left corner.
Fixed by placing the halo in the right position to begin with. This commit
includes my previous fixes as well, though, because the code was simply
incorrect before (even if it doesn't break anything any more).
Add #include <cstdint> to src/utils/context_free_grammar_generator.hpp. It
appears that without it, uint32_t ends up being different types in the
header and the implementation file (at least in Visual Studio 2013), which
makes the compiler complain that the print_nonterminal() function hasn't
been declared.