May or may not fix the issue noted in commit
62eb55a5a712b3e2157cf7fc0bb12873c4f0a574 regarding the SIGHUP handler,
which is in charge of scheduling load_config() to run. Rather
unfortunately, I'm unable to reproduce the issue on my own machine, so
I'll have to take this to production and test it live.
This can be used to signal campaignd clients in the future about
features that aren't yet implemented.
As with the previous change to using find() to locate a request handler,
this only applies to the first WML child of the request's root node.
Other nodes continue to be ignored.
Makes it so for each request received we use
request_handlers_table::find() instead of a plain linear search to find
the handler, using the tag name of the first WML child node we can find,
instead of trying to locate one with a known handler id.
In theory this allows taking advantage of the request_handlers_table
type's (currently a std::map) own lookup mechanism.
There was a small mistake here: The unit constructor
which takes a unit type first and 3 other parameters,
has the 4th one being an optional gender, and the
third a bool. fake_unit had a constructor mapping to
this, which sets the third to false. I over looked
this when factoring out fake_unit, but it only
generates a warning to cast enum to bool on MSVC
compilers.
This is a leftover from 1.0 where this was adjustable in a dialog. This
is not the case anymore, the current behavior results in
[side]share_view= always being true in mp which just means we have one
less option for mp scenario designers.
Even worse, the previous behavior results in share_view always being
false for scenarios in mp campaign that are not the first scenario,
regardless of the settings in the scenario.
Tested to compile on VC12 with openMP activated.
With two loops over the same unit list, 'guided' scheduling (as done
before the second loop was introduced) isn't optimal.
[ci skip]
selected_command_ might be -1 causing symbols["hotkey_description"] =
hotkey::get_description((*commands)[selected_command_]); to fail.
and remove a "case hotkey::SCOPE_COUNT: ..." which for forgotten in a
previous commit
This is consistent with the introduction of the UnitPtr class.
fake_units really aren't different from units, the only difference
is their life time / allocation and ownership. Since we are trying
to use reference counting for all units (to make them safe to use
with animations), the fake units need to be managed by a reference
counted pointer also. This is the easiest way to achieve that.
I also remove some odd code the [move_units_fake] handler --
there was explicit code to remove the fake units from the fake
unit manager, but this is redundant as it is the responsibility
of the destructor.
Code Blocks and VC project files are updated, but
Code::Blocks Scons and Xcode are not.
Added a new method, void create_engine::prepare_for_era_and_mods(),
which sets era and mod in game classification.
Prepare_for_[scenario, campaign] then set their respective defines and reload.
Conflicts:
changelog
src/gamestatus.cpp
src/gamestatus.hpp