widelands-dev team mailing list archive
-
widelands-dev team
-
Mailing list archive
-
Message #13850
[Merge] lp:~widelands-dev/widelands/bug-1629691-make-empty-ai-empty into lp:widelands
GunChleoc has proposed merging lp:~widelands-dev/widelands/bug-1629691-make-empty-ai-empty into lp:widelands.
Commit message:
Set AI from selection in UI when saveloading
Requested reviews:
Widelands Developers (widelands-dev)
Related bugs:
Bug #1629691 in widelands: "Suggestion for "No AI": do nothing more thoroughly"
https://bugs.launchpad.net/widelands/+bug/1629691
For more details, see:
https://code.launchpad.net/~widelands-dev/widelands/bug-1629691-make-empty-ai-empty/+merge/349389
The bug is that when loading a savegame, the AI selected in the interface by the user was completely ignored. This overwrites the AI setting from the savegame when starting a savegame.
--
Your team Widelands Developers is requested to review the proposed merge of lp:~widelands-dev/widelands/bug-1629691-make-empty-ai-empty into lp:widelands.
=== modified file 'src/logic/game.cc'
--- src/logic/game.cc 2018-05-27 06:02:18 +0000
+++ src/logic/game.cc 2018-07-12 05:43:15 +0000
@@ -337,6 +337,13 @@
loader_ui->set_background(background);
loader_ui->step(_("Loading…"));
gl.load_game(settings.multiplayer);
+ // Players might have selected a different AI type
+ for (uint8_t i = 0; i < settings.players.size(); ++i) {
+ const PlayerSettings& playersettings = settings.players[i];
+ if (playersettings.state == PlayerSettings::State::kComputer) {
+ get_player(i + 1)->set_ai(playersettings.ai);
+ }
+ }
} catch (...) {
throw;
}
Follow ups