diff --git a/OpenRA.Game/Traits/Player/PlayerResources.cs b/OpenRA.Game/Traits/Player/PlayerResources.cs index ad3625fd9a..f29493a629 100644 --- a/OpenRA.Game/Traits/Player/PlayerResources.cs +++ b/OpenRA.Game/Traits/Player/PlayerResources.cs @@ -97,6 +97,8 @@ namespace OpenRA.Traits public void Tick(Actor self) { + var eva = self.World.WorldActor.Info.Traits.Get(); + OreCapacity = self.World.Queries.OwnedBy[Owner].WithTrait() .Sum(a => a.Trait.Capacity); @@ -106,7 +108,7 @@ namespace OpenRA.Traits if (--nextSiloAdviceTime <= 0) { if (Ore > 0.8*OreCapacity) - Owner.GiveAdvice(Owner.World.WorldActor.Info.Traits.Get().SilosNeeded); + Owner.GiveAdvice(eva.SilosNeeded); nextSiloAdviceTime = AdviceInterval; } @@ -115,7 +117,7 @@ namespace OpenRA.Traits var move = Math.Min(Math.Max((int)(diff * displayCashFracPerFrame), displayCashDeltaPerFrame), diff); - var eva = self.World.WorldActor.Info.Traits.Get(); + if (DisplayCash < Cash) { DisplayCash += move;