From 3ec5693f697057bb72f202dd8503b485d81978b8 Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sun, 26 Jun 2011 16:12:18 +1200 Subject: [PATCH] Fix repair depot crash --- OpenRA.Mods.RA/Activities/Rearm.cs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/OpenRA.Mods.RA/Activities/Rearm.cs b/OpenRA.Mods.RA/Activities/Rearm.cs index 4fd29033eb..bbd2e63b25 100644 --- a/OpenRA.Mods.RA/Activities/Rearm.cs +++ b/OpenRA.Mods.RA/Activities/Rearm.cs @@ -17,21 +17,21 @@ namespace OpenRA.Mods.RA.Activities { public class Rearm : Activity { - + readonly LimitedAmmo limitedAmmo; int ticksPerPip = 25 * 2; int remainingTicks = 25 * 2; - public Rearm(Actor actor) - { - ticksPerPip = actor.TraitOrDefault().ReloadTimePerAmmo(); + public Rearm(Actor self) + { + limitedAmmo = self.TraitOrDefault(); + if (limitedAmmo != null) + ticksPerPip = limitedAmmo.ReloadTimePerAmmo(); remainingTicks = ticksPerPip; } public override Activity Tick(Actor self) { - if (IsCanceled) return NextActivity; - var limitedAmmo = self.TraitOrDefault(); - if (limitedAmmo == null) return NextActivity; + if (IsCanceled || limitedAmmo == null) return NextActivity; if (--remainingTicks == 0) {