diff --git a/src/ai/manager.hpp b/src/ai/manager.hpp index 3fd305fbe1eb..ea78b0a79bb5 100644 --- a/src/ai/manager.hpp +++ b/src/ai/manager.hpp @@ -556,6 +556,7 @@ class manager ai_composite& get_active_ai_for_side( side_number side ); + friend class game_launcher; }; } //end of namespace ai diff --git a/src/game_launcher.cpp b/src/game_launcher.cpp index 00ea0631c560..c304c064c30b 100644 --- a/src/game_launcher.cpp +++ b/src/game_launcher.cpp @@ -15,6 +15,7 @@ #include "game_launcher.hpp" #include "game_errors.hpp" +#include "ai/manager.hpp" // for manager #include "preferences/credentials.hpp" #include "commandline_options.hpp" // for commandline_options #include "config.hpp" // for config, etc @@ -959,6 +960,7 @@ void game_launcher::launch_game(RELOAD_GAME_DATA reload) try { campaign_controller ccontroller(state_, game_config_manager::get()->game_config(), game_config_manager::get()->terrain_types()); LEVEL_RESULT result = ccontroller.play_game(); + ai::manager::singleton_ = nullptr; // don't show The End for multiplayer scenario // change this if MP campaigns are implemented if(result == LEVEL_RESULT::VICTORY && !state_.classification().is_normal_mp_game()) {