diff --git a/OpenRA.Game/Game.cs b/OpenRA.Game/Game.cs index 8d81fdbc0d..bdddf25f13 100644 --- a/OpenRA.Game/Game.cs +++ b/OpenRA.Game/Game.cs @@ -162,7 +162,6 @@ namespace OpenRA CurrentPort = port; orderManager = new OrderManager(new NetworkConnection(host, port), ChooseReplayFilename()); - Game.Settings.DeveloperMode = LobbyInfo.GlobalSettings.AllowCheats; } static string ChooseReplayFilename() diff --git a/OpenRA.Game/Widgets/Delegates/DeveloperModeDelegate.cs b/OpenRA.Game/Widgets/Delegates/DeveloperModeDelegate.cs index 0fa4375fec..eab3b8be7b 100644 --- a/OpenRA.Game/Widgets/Delegates/DeveloperModeDelegate.cs +++ b/OpenRA.Game/Widgets/Delegates/DeveloperModeDelegate.cs @@ -80,29 +80,30 @@ namespace OpenRA.Widgets.Delegates return true; }; - devmodeBG.GetWidget("SETTINGS_GIVE_CASH").Checked = - () => true; - devmodeBG.GetWidget("SETTINGS_GIVE_CASH").OnMouseDown = mi => + devmodeBG.GetWidget("SETTINGS_GIVE_CASH").OnMouseUp = mi => { Game.IssueOrder(new Order("DevModeGiveCash", Game.world.LocalPlayer.PlayerActor)); + TriggerCheatingMessage(); return true; }; devmodeBG.GetWidget("SETTINGS_BUILD_SPEED").OnMouseDown = mi => { Game.IssueOrder(new Order("DevModeFastBuild", Game.world.LocalPlayer.PlayerActor)); + TriggerCheatingMessage(); return true; }; devmodeBG.GetWidget("SETTINGS_BUILD_SPEED").Checked = - () => true; + () => Game.world.LocalPlayer.PlayerActor.traits.Get().FastBuild; devmodeBG.GetWidget("SETTINGS_CHARGE_TIME").OnMouseDown = mi => { + TriggerCheatingMessage(); Game.IssueOrder(new Order("DevModeFastCharge", Game.world.LocalPlayer.PlayerActor)); return true; }; devmodeBG.GetWidget("SETTINGS_CHARGE_TIME").Checked = - () => true; + () => Game.world.LocalPlayer.PlayerActor.traits.Get().FastCharge; devModeButton.IsVisible = () => { return Game.Settings.DeveloperMode; }; diff --git a/mods/cnc/chrome/ingame.yaml b/mods/cnc/chrome/ingame.yaml index b5436d0022..b2c8f655ae 100644 --- a/mods/cnc/chrome/ingame.yaml +++ b/mods/cnc/chrome/ingame.yaml @@ -243,29 +243,24 @@ Container@ROOT: Width:PARENT_RIGHT - 30 Height:20 Text:Show Spatial Index Debug - Label@LABEL_MP_WARNING - Id:LABEL_MP_WARNING - X:30 - Y:180 - Text:Must be identical for all multiplayer players: - Checkbox@SETTINGS_GIVE_CASH + Button@SETTINGS_GIVE_CASH Id:SETTINGS_GIVE_CASH X:30 - Y:200 - Width:PARENT_RIGHT - 30 + Y:170 + Width:200 Height:20 Text: Give Cash Checkbox@SETTINGS_BUILD_SPEED Id:SETTINGS_BUILD_SPEED X:30 - Y:230 + Y:200 Width:PARENT_RIGHT - 30 Height:20 Text:Instant Build Speed Checkbox@SETTINGS_CHARGE_TIME Id:SETTINGS_CHARGE_TIME X:30 - Y:260 + Y:230 Width:PARENT_RIGHT - 30 Height:20 Text:Instant Charge Time (Special Powers) \ No newline at end of file diff --git a/mods/cnc/system.yaml b/mods/cnc/system.yaml index 6a4c726056..f00232ef7b 100644 --- a/mods/cnc/system.yaml +++ b/mods/cnc/system.yaml @@ -40,6 +40,7 @@ Player: PlayerResources: InitialCash: 5000 ActorGroupProxy: + DeveloperMode: World: GlobalDefaults: diff --git a/mods/ra/chrome/ingame.yaml b/mods/ra/chrome/ingame.yaml index 4e208367a6..8ccd7f6788 100644 --- a/mods/ra/chrome/ingame.yaml +++ b/mods/ra/chrome/ingame.yaml @@ -252,29 +252,24 @@ Container@ROOT: Width:PARENT_RIGHT - 30 Height:20 Text:Show Spatial Index Debug - Label@LABEL_MP_WARNING - Id:LABEL_MP_WARNING - X:30 - Y:180 - Text:Must be identical for all multiplayer players: - Checkbox@SETTINGS_GIVE_CASH + Button@SETTINGS_GIVE_CASH Id:SETTINGS_GIVE_CASH X:30 - Y:200 - Width:PARENT_RIGHT - 30 + Y:170 + Width:200 Height:20 Text: Give Cash Checkbox@SETTINGS_BUILD_SPEED Id:SETTINGS_BUILD_SPEED X:30 - Y:230 + Y:200 Width:PARENT_RIGHT - 30 Height:20 Text:Instant Build Speed Checkbox@SETTINGS_CHARGE_TIME Id:SETTINGS_CHARGE_TIME X:30 - Y:260 + Y:230 Width:PARENT_RIGHT - 30 Height:20 Text:Instant Charge Time (Special Powers) \ No newline at end of file