Index: binaries/data/mods/public/gui/gamesetup/gamesetup.js =================================================================== --- binaries/data/mods/public/gui/gamesetup/gamesetup.js +++ binaries/data/mods/public/gui/gamesetup/gamesetup.js @@ -262,6 +262,11 @@ var g_GameStarted = false; /** + * Whether the player has been warned already that rejoining in multiplayer mode is not supported. + */ +var g_AIMultiplayerWarning = true; + +/** * Selectable options (player, AI, unassigned) in the player assignment dropdowns and * their colorized, textual representation. */ @@ -863,6 +868,30 @@ "hidden": () => !g_PlayerAssignments[Engine.GetPlayerGUID()] || g_PlayerAssignments[Engine.GetPlayerGUID()].player == -1 && !g_IsController, + "onPress": () => function() { + + let callback = g_IsController ? launchGame : toggleReady; + + if ( + !g_IsNetworked || + !g_AIMultiplayerWarning || + !g_IsController && g_IsReady == 2 || + g_GameAttributes.settings.PlayerData.every(pData => !pData.AI)) + { + callback(); + return; + } + + g_AIMultiplayerWarning = false; + messageBox( + 400, + 200, + translate("Rejoining multiplayer games with AI players is not supported!") + " " + + translate("Do you want to continue?"), + translate("WARNING"), + [translate("No"), translate("Yes")], + [null, callback]); + } }, "civResetButton": { "hidden": () => g_GameAttributes.mapType == "scenario" || !g_IsController, Index: binaries/data/mods/public/gui/gamesetup/gamesetup.xml =================================================================== --- binaries/data/mods/public/gui/gamesetup/gamesetup.xml +++ binaries/data/mods/public/gui/gamesetup/gamesetup.xml @@ -250,14 +250,7 @@ style="StoneButton" size="100%-164 100%-52 100%-24 100%-24" tooltip_style="onscreenToolTip" - > - - if (g_IsController) - launchGame(); - else - toggleReady(); - - + />