Skip to content

Commit

Permalink
Fix some issues with recruit lists changing unexpectedly
Browse files Browse the repository at this point in the history
This only happened for [test] scenarios.
  • Loading branch information
CelticMinstrel committed Mar 20, 2016
1 parent 9d3ea7a commit 09d4033
Show file tree
Hide file tree
Showing 4 changed files with 4 additions and 5 deletions.
1 change: 0 additions & 1 deletion data/campaigns/tutorial/scenarios/02_Tutorial_part_2.cfg
Expand Up @@ -6,7 +6,6 @@
map_data="{campaigns/tutorial/maps/02_Tutorial_part_2.map}"
turns=26
experience_modifier=100
force_lock_settings=yes

{DEFAULT_SCHEDULE}

Expand Down
2 changes: 0 additions & 2 deletions src/game_config_manager.cpp
Expand Up @@ -271,8 +271,6 @@ void game_config_manager::load_game_config(FORCE_RELOAD_CONFIG force_reload,
BOOST_FOREACH(config& scenario, game_config_.child_range("scenario"))
{
scenario["require_scenario"] = require_campaign;
// make force_lock_settings default to true for [scenario]
scenario["force_lock_settings"] = scenario["force_lock_settings"].to_bool(true);
BOOST_FOREACH(config& side, scenario.child_range("side"))
{
side["no_leader"] = side["no_leader"].to_bool(true);
Expand Down
3 changes: 2 additions & 1 deletion src/game_initialization/connect_engine.cpp
Expand Up @@ -97,7 +97,8 @@ connect_engine::connect_engine(saved_game& state,
return;
}

force_lock_settings_ = (!state.mp_settings().saved_game) && scenario()["force_lock_settings"].to_bool();
const bool is_mp = state_.classification().is_normal_mp_game();
force_lock_settings_ = (!state.mp_settings().saved_game) && scenario()["force_lock_settings"].to_bool(!is_mp);

// Original level sides.
config::child_itors sides = current_config()->child_range("side");
Expand Down
3 changes: 2 additions & 1 deletion src/game_initialization/playcampaign.cpp
Expand Up @@ -369,9 +369,10 @@ LEVEL_RESULT campaign_controller::play_game()
//note that although starting_pos is const it might be changed by gamestate.some_non_const_operation() .
const config& starting_pos = state_.get_starting_pos();

const bool is_mp = state_.classification().is_normal_mp_game();
state_.mp_settings().num_turns = starting_pos["turns"].to_int(-1);
state_.mp_settings().saved_game = false;
state_.mp_settings().use_map_settings = starting_pos["force_lock_settings"].to_bool();
state_.mp_settings().use_map_settings = starting_pos["force_lock_settings"].to_bool(!is_mp);

ng::connect_engine_ptr connect_engine(new ng::connect_engine(state_, false, mp_info_));

Expand Down

0 comments on commit 09d4033

Please sign in to comment.