From bc14889881562585f4b6af8db507418043718b34 Mon Sep 17 00:00:00 2001 From: pevers Date: Tue, 17 Mar 2015 16:45:37 +0100 Subject: [PATCH] added cheat command to give money to all the players and AI --- OpenRA.Mods.Common/Commands/DevCommands.cs | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/OpenRA.Mods.Common/Commands/DevCommands.cs b/OpenRA.Mods.Common/Commands/DevCommands.cs index 62a8619475..65b8d9a355 100644 --- a/OpenRA.Mods.Common/Commands/DevCommands.cs +++ b/OpenRA.Mods.Common/Commands/DevCommands.cs @@ -10,6 +10,7 @@ using System; using System.Globalization; +using System.Linq; using OpenRA.Graphics; using OpenRA.Mods.Common.Traits; using OpenRA.Traits; @@ -37,6 +38,7 @@ namespace OpenRA.Mods.Common.Commands register("disableshroud", "toggles shroud."); register("givecash", "gives the default or specified amount of money."); + register("givecashall", "gives the default or specified amount of money to all players and ai."); register("instantbuild", "toggles instant building."); register("buildanywhere", "toggles you the ability to build anywhere."); register("unlimitedpower", "toggles infinite power."); @@ -63,15 +65,27 @@ namespace OpenRA.Mods.Common.Commands case "givecash": var givecashorder = new Order("DevGiveCash", world.LocalPlayer.PlayerActor, false); int cash; + int.TryParse(arg, out cash); - if (int.TryParse(arg, out cash)) - givecashorder.ExtraData = (uint)cash; - + givecashorder.ExtraData = (uint)cash; Game.Debug("Giving {0} credits to player {1}.", cash == 0 ? "cheat default" : cash.ToString(CultureInfo.InvariantCulture), world.LocalPlayer.PlayerName); world.IssueOrder(givecashorder); break; + case "givecashall": + int.TryParse(arg, out cash); + + foreach (var player in world.Players.Where(p => !p.NonCombatant)) + { + var givecashall = new Order("DevGiveCash", player.PlayerActor, false); + givecashall.ExtraData = (uint)cash; + Game.Debug("Giving {0} credits to player {1}.", cash == 0 ? "cheat default" : cash.ToString(CultureInfo.InvariantCulture), player.PlayerName); + world.IssueOrder(givecashall); + } + + break; + case "disableshroud": IssueDevCommand(world, "DevShroudDisable"); break; case "instantbuild": IssueDevCommand(world, "DevFastBuild"); break; case "buildanywhere": IssueDevCommand(world, "DevBuildAnywhere"); break;