Adapt tracking projectiles to support targeting CenterPosition

Instead of closest targetable position.
This commit is contained in:
reaperrr
2017-06-11 21:51:00 +02:00
committed by abcdefg30
parent da7433a95f
commit 7eab278711
4 changed files with 16 additions and 4 deletions

View File

@@ -49,6 +49,9 @@ namespace OpenRA.Mods.Common.Projectiles
[Desc("Beam can be blocked.")]
public readonly bool Blockable = false;
[Desc("Ignore any other targetable positions and aim directly at center of target actor.")]
public readonly bool TargetCenterPosition = false;
[Desc("Draw a second beam (for 'glow' effect).")]
public readonly bool SecondaryBeam = false;
@@ -128,7 +131,7 @@ namespace OpenRA.Mods.Common.Projectiles
{
// Beam tracks target
if (info.TrackTarget && args.GuidedTarget.IsValidFor(args.SourceActor))
target = args.GuidedTarget.Positions.PositionClosestTo(source);
target = info.TargetCenterPosition ? args.GuidedTarget.CenterPosition : args.GuidedTarget.Positions.PositionClosestTo(source);
// Check for blocking actors
WPos blockedPos;