From 6f8d580567e6c263420ce8040df8839543044271 Mon Sep 17 00:00:00 2001 From: abcdefg30 Date: Thu, 3 Dec 2015 16:25:46 +0100 Subject: [PATCH] Fix a crash when producing an actor without OccupiesSpace in combination with UpgradeActorsNear --- OpenRA.Mods.Common/Traits/Upgrades/UpgradeActorsNear.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/OpenRA.Mods.Common/Traits/Upgrades/UpgradeActorsNear.cs b/OpenRA.Mods.Common/Traits/Upgrades/UpgradeActorsNear.cs index 59d67039be..57f5fbc324 100644 --- a/OpenRA.Mods.Common/Traits/Upgrades/UpgradeActorsNear.cs +++ b/OpenRA.Mods.Common/Traits/Upgrades/UpgradeActorsNear.cs @@ -106,6 +106,10 @@ namespace OpenRA.Mods.Common.Traits public void UnitProducedByOther(Actor self, Actor producer, Actor produced) { + // If the produced Actor doesn't occupy space, it can't be in range + if (produced.OccupiesSpace == null) + return; + // Work around for actors produced within the region not triggering until the second tick if ((produced.CenterPosition - self.CenterPosition).HorizontalLengthSquared <= info.Range.LengthSquared) {