diff --git a/OpenRA.Mods.Common/Traits/CashTrickler.cs b/OpenRA.Mods.Common/Traits/CashTrickler.cs index 890123863e..3db9178bc8 100644 --- a/OpenRA.Mods.Common/Traits/CashTrickler.cs +++ b/OpenRA.Mods.Common/Traits/CashTrickler.cs @@ -16,7 +16,7 @@ using OpenRA.Traits; namespace OpenRA.Mods.Common.Traits { [Desc("Lets the actor generate cash in a set periodic time.")] - public class CashTricklerInfo : ConditionalTraitInfo + public class CashTricklerInfo : PausableConditionalTraitInfo { [Desc("Number of ticks to wait between giving money.")] public readonly int Interval = 50; @@ -36,7 +36,7 @@ namespace OpenRA.Mods.Common.Traits public override object Create(ActorInitializer init) { return new CashTrickler(this); } } - public class CashTrickler : ConditionalTrait, ITick, ISync, INotifyCreated, INotifyOwnerChanged + public class CashTrickler : PausableConditionalTrait, ITick, ISync, INotifyCreated, INotifyOwnerChanged { readonly CashTricklerInfo info; PlayerResources resources; @@ -64,6 +64,9 @@ namespace OpenRA.Mods.Common.Traits void ITick.Tick(Actor self) { if (IsTraitDisabled) + ticks = info.Interval; + + if (IsTraitPaused || IsTraitDisabled) return; if (--ticks < 0)