From b6efcec496d49282d1184ae3436a8ea36b375f54 Mon Sep 17 00:00:00 2001 From: gfgtdf Date: Thu, 29 May 2014 22:27:50 +0200 Subject: [PATCH] fixup 28ffcc54483942c598d24cecd4f65534f0185c51 I didn't see that store_carryover(state_of_game, playcontroller, disp, end_level); uses end_level. --- src/playcampaign.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/playcampaign.cpp b/src/playcampaign.cpp index 18a3edd078c..45350575fc4 100644 --- a/src/playcampaign.cpp +++ b/src/playcampaign.cpp @@ -292,6 +292,10 @@ static LEVEL_RESULT playsingle_scenario(const config& game_config, LEVEL_RESULT res = playcontroller.play_scenario(story, skip_replay); + end_level = playcontroller.get_end_level_data_const(); + config& cfg_end_level = state_of_game.carryover_sides.child_or_add("end_level_data"); + end_level.write(cfg_end_level); + if (res == DEFEAT) { if (resources::persist != NULL) resources::persist->end_transaction(); @@ -315,10 +319,6 @@ static LEVEL_RESULT playsingle_scenario(const config& game_config, } } - end_level = playcontroller.get_end_level_data_const(); - config& cfg_end_level = state_of_game.carryover_sides.child_or_add("end_level_data"); - end_level.write(cfg_end_level); - return res; } @@ -339,6 +339,10 @@ static LEVEL_RESULT playmp_scenario(const config& game_config, game_config, disp.video(), skip_replay, blindfold_replay, io_type == IO_SERVER); LEVEL_RESULT res = playcontroller.play_scenario(story, skip_replay); + end_level = playcontroller.get_end_level_data_const(); + config& cfg_end_level = state_of_game.carryover_sides.child_or_add("end_level_data"); + end_level.write(cfg_end_level); + //Check if the player started as mp client and changed to host if (io_type == IO_CLIENT && playcontroller.is_host()) io_type = IO_SERVER; @@ -368,10 +372,6 @@ static LEVEL_RESULT playmp_scenario(const config& game_config, } } - end_level = playcontroller.get_end_level_data_const(); - config& cfg_end_level = state_of_game.carryover_sides.child_or_add("end_level_data"); - end_level.write(cfg_end_level); - return res; }