From ba738427471d349c987586c8101efacc46b52308 Mon Sep 17 00:00:00 2001 From: matjaeck <37185497+matjaeck@users.noreply.github.com> Date: Sun, 3 Nov 2019 23:06:37 +0100 Subject: [PATCH] Allow GrantCondition to grant conditions permanently. --- OpenRA.Mods.Common/Traits/Conditions/GrantCondition.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/OpenRA.Mods.Common/Traits/Conditions/GrantCondition.cs b/OpenRA.Mods.Common/Traits/Conditions/GrantCondition.cs index d83cb65a02..a9f26c6541 100644 --- a/OpenRA.Mods.Common/Traits/Conditions/GrantCondition.cs +++ b/OpenRA.Mods.Common/Traits/Conditions/GrantCondition.cs @@ -21,6 +21,9 @@ namespace OpenRA.Mods.Common.Traits [Desc("Condition to grant.")] public readonly string Condition = null; + [Desc("Is the condition irrevocable once it has been activated?")] + public readonly bool GrantPermanently = false; + public override object Create(ActorInitializer init) { return new GrantCondition(this); } } @@ -47,7 +50,7 @@ namespace OpenRA.Mods.Common.Traits protected override void TraitDisabled(Actor self) { - if (conditionToken == ConditionManager.InvalidConditionToken) + if (Info.GrantPermanently || conditionToken == ConditionManager.InvalidConditionToken) return; conditionToken = conditionManager.RevokeCondition(self, conditionToken);