From 0e3ba0c72ea834cdf0697d36ab64a01a79bea388 Mon Sep 17 00:00:00 2001 From: Zimmermann Gyula Date: Thu, 25 Jun 2015 11:56:02 +0200 Subject: [PATCH 1/2] Add target validation to GrantUpgrade warheads. --- OpenRA.Mods.Common/Warheads/GrantUpgradeWarhead.cs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/OpenRA.Mods.Common/Warheads/GrantUpgradeWarhead.cs b/OpenRA.Mods.Common/Warheads/GrantUpgradeWarhead.cs index fb8976fd95..6f68c81ccf 100644 --- a/OpenRA.Mods.Common/Warheads/GrantUpgradeWarhead.cs +++ b/OpenRA.Mods.Common/Warheads/GrantUpgradeWarhead.cs @@ -28,6 +28,10 @@ namespace OpenRA.Mods.Common.Warheads public readonly WRange Range = WRange.FromCells(1); + // TODO: This can be removed after the legacy and redundant 0% = not targetable + // assumption has been removed from the yaml definitions + public override bool CanTargetActor(ActorInfo victim, Actor firedBy) { return true; } + public override void DoImpact(Target target, Actor firedBy, IEnumerable damageModifiers) { var actors = target.Type == TargetType.Actor ? new[] { target.Actor } : @@ -35,6 +39,9 @@ namespace OpenRA.Mods.Common.Warheads foreach (var a in actors) { + if (!IsValidAgainst(a, firedBy)) + continue; + var um = a.TraitOrDefault(); if (um == null) continue; From d222cd1c7a30092f542dd2905df201fb2cb91889 Mon Sep 17 00:00:00 2001 From: Zimmermann Gyula Date: Thu, 25 Jun 2015 16:05:59 +0200 Subject: [PATCH 2/2] Removes unneeded dummy warhead from TS EMP. --- mods/ts/weapons/superweapons.yaml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/mods/ts/weapons/superweapons.yaml b/mods/ts/weapons/superweapons.yaml index 465a09d39b..324eea7cd1 100644 --- a/mods/ts/weapons/superweapons.yaml +++ b/mods/ts/weapons/superweapons.yaml @@ -84,13 +84,8 @@ EMPulseCannon: Shadow: true Angle: 62 Image: pulsball - Warhead@2Eff: CreateEffect + Warhead@1Eff: CreateEffect Explosion: pulse_explosion -# Dummy warhead to allow targeting - Warhead@target: SpreadDamage - Spread: 0 - Damage: 0 - ValidTargets: Vehicle Warhead@emp: GrantUpgrade Range: 3c0 Duration: 250