The picker is used in the special node dialog and also in monster abilities.
Some changes were made to the game as well:
* If the rotatable wall is used for a field missile or touch ability, there's no longer an option for the designer to pick an orientation. Instead, it behaves like the rotatable wall in a radiate field ability, selecting an orientation based on the creature's facing direction.
* The magic values sent to place_spell_pattern for direct damage were rearranged to match the order of the eDamageType enum. This should have no effect, since the core place_spell_pattern function is only called by the various wrapper overloads. It also simplifies the code quite a bit.
* The Protective Circle spell pattern is now exposed to the place patten special nodes. It can be used as just a radius 4 circle, but the effect of different layers of fields can also be obtained by specifying a field type or damage type of -1.
There is also a change to the dialog engine:
* Calling setText() also implicitly calls recalcRect()
In effect, this is a combination of two of the previous pickers:
the location picker, and the editable string picker.
This required quite a significant rework of how the tilemap places its children.
Currently it's only used in special node editing.
I plan to add its use in many other places too though.
- boost-spirit dependency needed to be installed
- Visual Studio wanted boost/filesystem.hpp included in more places
- a deprecated enum was removed from new versions of boost, so we use
its replacement enum now
- vcpkg repository is now pinned to a commit where boost 1.84 libraries
work smoothly, there should be no more surprises
- vcpkg dependencies now cache, so successive CI runs are dramatically
faster
- for win-scons, we need to use 'call' in our batch script to source
vcvarsall.bat
- I updated the includepath and libpath we pass to win-scons to match
reality, but it still can't find any vcpkg libraries. This will need
further sleuthing
Since we can't directly use C++11 attributes, I've chosen BOOST_FALLTHROUGH to annotate intentional fallthroughs.
Thanks to @fosnola for spotting a missing break, which triggered this.