From 48a018d994ea8a2752cc98a89203782773a778e4 Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sun, 17 Sep 2017 13:07:53 +0100 Subject: [PATCH] Fix cheats reenabling OneShot support powers. --- .../Traits/SupportPowers/SupportPowerManager.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/OpenRA.Mods.Common/Traits/SupportPowers/SupportPowerManager.cs b/OpenRA.Mods.Common/Traits/SupportPowers/SupportPowerManager.cs index d58089eff3..94be3fe6f4 100644 --- a/OpenRA.Mods.Common/Traits/SupportPowers/SupportPowerManager.cs +++ b/OpenRA.Mods.Common/Traits/SupportPowers/SupportPowerManager.cs @@ -160,13 +160,14 @@ namespace OpenRA.Mods.Common.Traits public int RemainingTime; public int TotalTime; public bool Active { get; private set; } - public bool Disabled { get { return (!prereqsAvailable && !manager.DevMode.AllTech) || !instancesEnabled; } } + public bool Disabled { get { return (!prereqsAvailable && !manager.DevMode.AllTech) || !instancesEnabled || oneShotFired; } } public SupportPowerInfo Info { get { return Instances.Select(i => i.Info).FirstOrDefault(); } } public bool Ready { get { return Active && RemainingTime == 0; } } bool instancesEnabled; bool prereqsAvailable = true; + bool oneShotFired; public SupportPowerInstance(string key, SupportPowerManager manager) { @@ -249,7 +250,10 @@ namespace OpenRA.Mods.Common.Traits notifiedCharging = notifiedReady = false; if (Info.OneShot) + { PrerequisitesAvailable(false); + oneShotFired = true; + } } }