diff --git a/OpenRA.Mods.Cnc/OpenRA.Mods.Cnc.csproj b/OpenRA.Mods.Cnc/OpenRA.Mods.Cnc.csproj
index c3a238a942..390e5ab1dd 100644
--- a/OpenRA.Mods.Cnc/OpenRA.Mods.Cnc.csproj
+++ b/OpenRA.Mods.Cnc/OpenRA.Mods.Cnc.csproj
@@ -89,7 +89,6 @@
-
diff --git a/OpenRA.Mods.Cnc/Widgets/Logic/CncDiplomacyLogic.cs b/OpenRA.Mods.Cnc/Widgets/Logic/CncDiplomacyLogic.cs
deleted file mode 100644
index 7910fb3be7..0000000000
--- a/OpenRA.Mods.Cnc/Widgets/Logic/CncDiplomacyLogic.cs
+++ /dev/null
@@ -1,77 +0,0 @@
-#region Copyright & License Information
-/*
- * Copyright 2007-2011 The OpenRA Developers (see AUTHORS)
- * This file is part of OpenRA, which is free software. It is made
- * available to you under the terms of the GNU General Public License
- * as published by the Free Software Foundation. For more information,
- * see COPYING.
- */
-#endregion
-
-using System;
-using System.Linq;
-using OpenRA.Traits;
-using OpenRA.Widgets;
-
-namespace OpenRA.Mods.Cnc.Widgets.Logic
-{
- public class CncDiplomacyLogic
- {
- World world;
-
- [ObjectCreator.UseCtor]
- public CncDiplomacyLogic([ObjectCreator.Param] Widget widget,
- [ObjectCreator.Param] Action onExit,
- [ObjectCreator.Param] World world)
- {
- this.world = world;
- var panel = widget.GetWidget("DIPLOMACY_PANEL");
- panel.GetWidget("BACK_BUTTON").OnClick = () => { Widget.CloseWindow(); onExit(); };
-
- var scrollpanel = panel.GetWidget("PLAYER_LIST");
- var itemTemplate = scrollpanel.GetWidget("PLAYER_TEMPLATE");
- scrollpanel.RemoveChildren();
-
- foreach (var p in world.Players.Where(a => a != world.LocalPlayer && !a.NonCombatant))
- {
- Player pp = p;
- var item = itemTemplate.Clone();
- var nameLabel = item.GetWidget("NAME");
- nameLabel.GetText = () => pp.PlayerName;
- nameLabel.Color = pp.ColorRamp.GetColor(0);
-
- var flag = item.GetWidget("FACTIONFLAG");
- flag.GetImageName = () => pp.Country.Race;
- flag.GetImageCollection = () => "flags";
- item.GetWidget("FACTION").GetText = () => pp.Country.Name;
-
- var stance = item.GetWidget("STANCE");
- stance.GetText = () => world.LocalPlayer.Stances[ pp ].ToString();
- stance.OnMouseDown = _ => ShowStanceDropDown(stance, pp);
- stance.IsDisabled = () => pp.IsBot || world.LobbyInfo.GlobalSettings.LockTeams;
- scrollpanel.AddChild(item);
- }
- }
-
- bool ShowStanceDropDown(DropDownButtonWidget dropdown, Player pp)
- {
- if (dropdown.IsDisabled())
- return true;
-
- var stances = Enum.GetValues(typeof(Stance)).OfType().ToList();
- Func setupItem = (s, template) =>
- {
- var item = ScrollItemWidget.Setup(template,
- () => s == world.LocalPlayer.Stances[ pp ],
- () => world.IssueOrder(new Order("SetStance", world.LocalPlayer.PlayerActor, false)
- { TargetLocation = new int2((int)s, 0), TargetString = pp.InternalName }));
-
- item.GetWidget("LABEL").GetText = () => s.ToString();
- return item;
- };
-
- dropdown.ShowDropDown("LABEL_DROPDOWN_TEMPLATE", 150, stances, setupItem);
- return true;
- }
- }
-}
diff --git a/OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs b/OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs
index 0b4900ad43..9e0a22ed69 100644
--- a/OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs
+++ b/OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs
@@ -16,7 +16,7 @@ namespace OpenRA.Mods.Cnc.Widgets.Logic
{
public class CncIngameChromeLogic
{
- enum MenuType { None, Diplomacy, Cheats }
+ enum MenuType { None, Cheats }
MenuType menu = MenuType.None;
Widget ingameRoot;
@@ -48,18 +48,6 @@ namespace OpenRA.Mods.Cnc.Widgets.Logic
if (world.LocalPlayer != null)
widget.GetWidget("PLAYER_WIDGETS").IsVisible = () => true;
- var diplomacyButton = ingameRoot.GetWidget("DIPLOMACY_BUTTON");
- var diplomacyAvailable = world.LocalPlayer != null && world.Players.Any(a => a != world.LocalPlayer && !a.NonCombatant);
- diplomacyButton.IsDisabled = () => !diplomacyAvailable;
- diplomacyButton.OnClick = () =>
- {
- if (menu != MenuType.None)
- Widget.CloseWindow();
-
- menu = MenuType.Diplomacy;
- Game.OpenWindow("DIPLOMACY_PANEL", new WidgetArgs() {{"onExit", () => menu = MenuType.None }});
- };
-
ingameRoot.GetWidget("OPTIONS_BUTTON").OnClick = () =>
{
if (menu != MenuType.None)
@@ -81,7 +69,7 @@ namespace OpenRA.Mods.Cnc.Widgets.Logic
if (menu != MenuType.None)
Widget.CloseWindow();
- menu = MenuType.Diplomacy;
+ menu = MenuType.Cheats;
Game.OpenWindow("CHEATS_PANEL", new WidgetArgs() {{"onExit", () => menu = MenuType.None }});
};
cheatsButton.IsVisible = () => world.LocalPlayer != null && world.LobbyInfo.GlobalSettings.AllowCheats;
diff --git a/OpenRA.Mods.Cnc/Widgets/Logic/CncLobbyLogic.cs b/OpenRA.Mods.Cnc/Widgets/Logic/CncLobbyLogic.cs
index c15389cb19..0ff2a3b64e 100644
--- a/OpenRA.Mods.Cnc/Widgets/Logic/CncLobbyLogic.cs
+++ b/OpenRA.Mods.Cnc/Widgets/Logic/CncLobbyLogic.cs
@@ -176,12 +176,6 @@ namespace OpenRA.Mods.Cnc.Widgets.Logic
disconnectButton.OnClick = () => { CloseWindow(); onExit(); };
var gameStarting = false;
- var lockTeamsCheckbox = lobby.GetWidget("LOCKTEAMS_CHECKBOX");
- lockTeamsCheckbox.IsChecked = () => orderManager.LobbyInfo.GlobalSettings.LockTeams;
- lockTeamsCheckbox.IsDisabled = () => !Game.IsHost || gameStarting || orderManager.LocalClient == null
- || orderManager.LocalClient.State == Session.ClientState.Ready;
- lockTeamsCheckbox.OnClick = () => orderManager.IssueOrder(Order.Command(
- "lockteams {0}".F(!orderManager.LobbyInfo.GlobalSettings.LockTeams)));
var allowCheats = lobby.GetWidget("ALLOWCHEATS_CHECKBOX");
allowCheats.IsChecked = () => orderManager.LobbyInfo.GlobalSettings.AllowCheats;
diff --git a/mods/cnc/chrome/diplomacy.yaml b/mods/cnc/chrome/diplomacy.yaml
deleted file mode 100644
index 9ed0be2903..0000000000
--- a/mods/cnc/chrome/diplomacy.yaml
+++ /dev/null
@@ -1,89 +0,0 @@
-Container@DIPLOMACY_PANEL:
- Id:DIPLOMACY_PANEL
- Logic:CncDiplomacyLogic
- X:(WINDOW_RIGHT - WIDTH)/2
- Y:(WINDOW_BOTTOM - 400)/2
- Width:450
- Height:335
- Children:
- Label@TITLE:
- Width:PARENT_RIGHT
- Y:0-25
- Font:BigBold
- Contrast:true
- Align:Center
- Text:Diplomacy
- Background@bg:
- Width:450
- Height:300
- Background:panel-black
- Children:
- ScrollPanel@PLAYER_LIST:
- Id:PLAYER_LIST
- X:15
- Y:30
- Width:420
- Height:255
- ItemSpacing:5
- Children:
- Container@PLAYER_TEMPLATE:
- Id:PLAYER_TEMPLATE
- Width:PARENT_RIGHT-27
- Height:25
- X:2
- Y:0
- Children:
- Label@NAME:
- Id:NAME
- X:10
- Width:150
- Height:25
- Image@FACTIONFLAG:
- Id:FACTIONFLAG
- X:PARENT_RIGHT-210
- Y:5
- Width:30
- Height:15
- Label@FACTION:
- Id:FACTION
- X:PARENT_RIGHT-170
- Width:40
- Height:25
- DropDownButton@STANCE:
- Id:STANCE
- X:PARENT_RIGHT-110
- Width:100
- Height:25
- Container@LABEL_CONTAINER:
- X:17
- Y:5
- Width:393
- Children:
- Label@NAME:
- X:10
- Width:150
- Height:25
- Text:Player
- Align:Center
- Font:Bold
- Label@RACE:
- X:PARENT_RIGHT-220
- Width:100
- Height:25
- Text:Faction
- Font:Bold
- Align:Center
- Label@STANCE:
- X:PARENT_RIGHT-110
- Width:100
- Height:25
- Text:Stance
- Font:Bold
- Align:Center
- Button@BACK_BUTTON:
- Id:BACK_BUTTON
- Key:escape
- Y:299
- Width:140
- Height:35
- Text:Back
\ No newline at end of file
diff --git a/mods/cnc/chrome/ingame.yaml b/mods/cnc/chrome/ingame.yaml
index 7c47126c51..319b373203 100644
--- a/mods/cnc/chrome/ingame.yaml
+++ b/mods/cnc/chrome/ingame.yaml
@@ -25,16 +25,9 @@ Container@INGAME_ROOT:
Width:140
Height:35
Text:Options
- Button@DIPLOMACY_BUTTON:
- Id:DIPLOMACY_BUTTON
- X:150
- Y:5
- Width:140
- Height:35
- Text:Diplomacy
Button@CHEATS_BUTTON:
Id:CHEATS_BUTTON
- X:295
+ X:150
Y:5
Width:140
Height:35
diff --git a/mods/cnc/chrome/lobby.yaml b/mods/cnc/chrome/lobby.yaml
index 6614374cc2..a4ef911c8c 100644
--- a/mods/cnc/chrome/lobby.yaml
+++ b/mods/cnc/chrome/lobby.yaml
@@ -31,13 +31,6 @@ Container@SERVER_LOBBY:
Y:1
Width:192
Height:192
- Checkbox@LOCKTEAMS_CHECKBOX:
- Id:LOCKTEAMS_CHECKBOX
- X:PARENT_RIGHT-209
- Y:230
- Width:130
- Height:20
- Text: Lock Teams
Checkbox@ALLOWCHEATS_CHECKBOX:
Id:ALLOWCHEATS_CHECKBOX
X:PARENT_RIGHT-209
diff --git a/mods/cnc/mod.yaml b/mods/cnc/mod.yaml
index 913b78d48b..0f4be0e7d7 100644
--- a/mods/cnc/mod.yaml
+++ b/mods/cnc/mod.yaml
@@ -79,7 +79,6 @@ ChromeLayout:
mods/cnc/chrome/modchooser.yaml
mods/cnc/chrome/preferences.yaml
mods/cnc/chrome/cheats.yaml
- mods/cnc/chrome/diplomacy.yaml
mods/cnc/chrome/dropdowns.yaml
mods/cnc/chrome/objectives.yaml