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
@@ -281,9 +281,63 @@
for (let i in g_DefaultPlayerData)
g_DefaultPlayerData[i].Civ = "random";
+ let teamsList = [ "Teams", "FFA", "1v1", "2v2", "3v3", "4v4", "1v1v1", "2v2v2", "1v1v1v1", "2v2v2v2" ];
+
+ Engine.GetGUIObjectByName("teamButton").list = teamsList;
+ Engine.GetGUIObjectByName("teamButton").list_data = teamsList;
+ Engine.GetGUIObjectByName("teamButton").selected = 0;
+ Engine.GetGUIObjectByName("teamButton").onSelectionChange = function() {
+ switch(this.list_data[this.selected])
+ {
+ case "1v1":
+ Engine.GetGUIObjectByName("numPlayers").selected=1;
+ setTeams([0,1]);
+ break;
+ case "2v2":
+ Engine.GetGUIObjectByName("numPlayers").selected=3;
+ setTeams([0,0,1,1]);
+ break;
+ case "3v3":
+ Engine.GetGUIObjectByName("numPlayers").selected=5;
+ setTeams([0,0,0,1,1,1]);
+ break;
+ case "4v4":
+ Engine.GetGUIObjectByName("numPlayers").selected=7;
+ setTeams([0,0,0,0,1,1,1,1]);
+ break;
+ case "1v1v1":
+ Engine.GetGUIObjectByName("numPlayers").selected=2;
+ setTeams([0,1,2]);
+ break;
+ case "2v2v2":
+ Engine.GetGUIObjectByName("numPlayers").selected=5;
+ setTeams([0,0,1,1,2,2]);
+ break;
+ case "1v1v1v1":
+ Engine.GetGUIObjectByName("numPlayers").selected=3;
+ setTeams([0,1,2,3]);
+ break;
+ case "2v2v2v2":
+ Engine.GetGUIObjectByName("numPlayers").selected=7;
+ setTeams([0,0,1,1,2,2,3,3]);
+ break;
+ case "FFA":
+ for (let i in g_GameAttributes.settings.PlayerData)
+ g_GameAttributes.settings.PlayerData[i].Team = -1;
+ }
+ updateGameAttributes();
+ };
+
+
setTimeout(displayGamestateNotifications, 1000);
}
+function setTeams(teams)
+{
+ for (let i in g_GameAttributes.settings.PlayerData)
+ g_GameAttributes.settings.PlayerData[i].Team = teams[i];
+}
+
/**
* Called after the first tick.
*/
@@ -1473,7 +1527,6 @@
hideControl(ctrl, ctrl + "Text", notScenario);
Engine.GetGUIObjectByName("civResetButton").hidden = !notScenario;
- Engine.GetGUIObjectByName("teamResetButton").hidden = !notScenario;
for (let i = 0; i < g_MaxPlayers; ++i)
{
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
@@ -83,19 +83,8 @@
resetCivilizations();
-
-
-