From 81cf02cc13a2d36c8e1a5b1a6c9330fc3d235ba1 Mon Sep 17 00:00:00 2001 From: leper Date: Fri, 8 Nov 2013 15:28:44 +0000 Subject: [PATCH] Fix building with --without-lobby. Fixes #2249. This was SVN commit r14113. --- .../mods/public/gui/gamesetup/gamesetup.js | 16 +++++--- .../mods/public/gui/gamesetup/gamesetup_mp.js | 9 +++-- binaries/data/mods/public/gui/session/menu.js | 3 ++ .../data/mods/public/gui/session/session.js | 8 ++-- .../data/mods/public/gui/session/session.xml | 9 +++-- build/premake/premake4.lua | 40 +++++++++++-------- source/gui/scripting/ScriptFunctions.cpp | 18 ++++----- source/lobby/Globals.cpp | 23 +++++++++++ source/lobby/XmppClient.cpp | 4 -- source/ps/GameSetup/GameSetup.cpp | 4 +- 10 files changed, 85 insertions(+), 49 deletions(-) create mode 100644 source/lobby/Globals.cpp diff --git a/binaries/data/mods/public/gui/gamesetup/gamesetup.js b/binaries/data/mods/public/gui/gamesetup/gamesetup.js index d07610cd27..07bf94748a 100644 --- a/binaries/data/mods/public/gui/gamesetup/gamesetup.js +++ b/binaries/data/mods/public/gui/gamesetup/gamesetup.js @@ -398,7 +398,7 @@ function handleNetMessage(message) break; case "start": - if (g_IsController) + if (g_IsController && Engine.HasXmppClient()) { var players = [ assignment.name for each (assignment in g_PlayerAssignments) ] Engine.SendChangeStateGame(Object.keys(g_PlayerAssignments).length, players.join(", ")); @@ -588,13 +588,14 @@ function cancelSetup() { Engine.DisconnectNetworkGame(); - // Set player presence - Engine.LobbySetPlayerPresence("available"); - - if(g_IsController) + if (Engine.HasXmppClient()) { + // Set player presence + Engine.LobbySetPlayerPresence("available"); + // Unregister the game - Engine.SendUnregisterGame(); + if (g_IsController) + Engine.SendUnregisterGame(); } } @@ -1526,6 +1527,9 @@ function keywordTestOR(keywords, matches) function sendRegisterGameStanza() { + if (!Engine.HasXmppClient()) + return; + var selectedMapSize = getGUIObjectByName("mapSize").selected; var selectedVictoryCondition = getGUIObjectByName("victoryCondition").selected; diff --git a/binaries/data/mods/public/gui/gamesetup/gamesetup_mp.js b/binaries/data/mods/public/gui/gamesetup/gamesetup_mp.js index 34f8e5ebcf..c43b134f04 100644 --- a/binaries/data/mods/public/gui/gamesetup/gamesetup_mp.js +++ b/binaries/data/mods/public/gui/gamesetup/gamesetup_mp.js @@ -45,7 +45,8 @@ function cancelSetup() if (g_IsConnecting) Engine.DisconnectNetworkGame(); // Set player lobby presence - Engine.LobbySetPlayerPresence("available"); + if (Engine.HasXmppClient()) + Engine.LobbySetPlayerPresence("available"); Engine.PopGuiPage(); } @@ -200,7 +201,8 @@ function startHost(playername, servername) startConnectionStatus("server"); g_ServerName = servername; // Set player lobby presence - Engine.LobbySetPlayerPresence("playing"); + if (Engine.HasXmppClient()) + Engine.LobbySetPlayerPresence("playing"); return true; } @@ -221,6 +223,7 @@ function startJoin(playername, ip) startConnectionStatus("client"); // Set player lobby presence - Engine.LobbySetPlayerPresence("playing"); + if (Engine.HasXmppClient()) + Engine.LobbySetPlayerPresence("playing"); return true; } diff --git a/binaries/data/mods/public/gui/session/menu.js b/binaries/data/mods/public/gui/session/menu.js index 0046f6499d..7b745b1f72 100644 --- a/binaries/data/mods/public/gui/session/menu.js +++ b/binaries/data/mods/public/gui/session/menu.js @@ -420,6 +420,9 @@ function openManual() function toggleDeveloperOverlay() { + if (Engine.HasXmppClient() && Engine.IsRankedGame()) + return; + var devCommands = getGUIObjectByName("devCommands"); var text = devCommands.hidden ? "opened." : "closed."; submitChatDirectly("The Developer Overlay was " + text); diff --git a/binaries/data/mods/public/gui/session/session.js b/binaries/data/mods/public/gui/session/session.js index 5f70373685..6b386b924f 100644 --- a/binaries/data/mods/public/gui/session/session.js +++ b/binaries/data/mods/public/gui/session/session.js @@ -258,10 +258,9 @@ function leaveGame() stopAmbient(); endGame(); - if (g_IsController) - { + if (g_IsController && Engine.HasXmppClient()) Engine.SendUnregisterGame(); - } + Engine.SwitchGuiPage("page_summary.xml", { "gameResult" : gameResult, "timeElapsed" : extendedSimState.timeElapsed, @@ -700,6 +699,9 @@ function stopAmbient() // Send a report on the game status to the lobby function reportGame(extendedSimState) { + if (!Engine.HasXmppClient()) + return; + // Resources gathered and used var playerFoodGatheredString = ""; var playerWoodGatheredString = ""; diff --git a/binaries/data/mods/public/gui/session/session.xml b/binaries/data/mods/public/gui/session/session.xml index ca212f6880..94dfd2a03d 100644 --- a/binaries/data/mods/public/gui/session/session.xml +++ b/binaries/data/mods/public/gui/session/session.xml @@ -247,9 +247,7 @@