From 3ad35cb80378c88b206ef37788f85e6e7adf61cd Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sun, 6 Apr 2014 20:03:37 +1200 Subject: [PATCH] Support indefinite beacon duration for support powers that remove the beacon on completion. --- OpenRA.Mods.RA/Effects/Beacon.cs | 3 ++- mods/cnc/rules/structures.yaml | 1 + mods/d2k/rules/atreides.yaml | 1 + mods/d2k/rules/ordos.yaml | 1 + 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/OpenRA.Mods.RA/Effects/Beacon.cs b/OpenRA.Mods.RA/Effects/Beacon.cs index 90abc83f7d..f5433e3469 100644 --- a/OpenRA.Mods.RA/Effects/Beacon.cs +++ b/OpenRA.Mods.RA/Effects/Beacon.cs @@ -44,7 +44,8 @@ namespace OpenRA.Mods.RA.Effects poster.Play(posterType); } - owner.World.Add(new DelayedAction(duration, () => owner.World.Remove(this))); + if (duration > 0) + owner.World.Add(new DelayedAction(duration, () => owner.World.Remove(this))); } public void Tick(World world) diff --git a/mods/cnc/rules/structures.yaml b/mods/cnc/rules/structures.yaml index dac6f9b5f1..f3b8d39f7c 100644 --- a/mods/cnc/rules/structures.yaml +++ b/mods/cnc/rules/structures.yaml @@ -386,6 +386,7 @@ HQ: IncomingSound: enemya.aud UnitType: a10 DisplayBeacon: True + BeaconDuration: -1 BeaconPoster: airstrike DisplayRadarPing: True CameraActor: camera diff --git a/mods/d2k/rules/atreides.yaml b/mods/d2k/rules/atreides.yaml index 9dfc1619b1..e854b7b35a 100644 --- a/mods/d2k/rules/atreides.yaml +++ b/mods/d2k/rules/atreides.yaml @@ -60,6 +60,7 @@ PALACEA: UnitType: orni.bomber SelectTargetSound: DisplayBeacon: True + BeaconDuration: -1 CameraActor: camera CanPowerDown: DisabledOverlay: diff --git a/mods/d2k/rules/ordos.yaml b/mods/d2k/rules/ordos.yaml index 241b40a6a8..434a772e14 100644 --- a/mods/d2k/rules/ordos.yaml +++ b/mods/d2k/rules/ordos.yaml @@ -89,6 +89,7 @@ PALACEO: UnitType: orni.bomber SelectTargetSound: DisplayBeacon: True + BeaconDuration: -1 CameraActor: camera CanPowerDown: DisabledOverlay: