From b3d468aca15bf659fedad0d412bf18a0f3e963fd Mon Sep 17 00:00:00 2001 From: Guillermoqnk <62642518+Guillermoqnk@users.noreply.github.com> Date: Fri, 10 Mar 2023 11:06:57 +0100 Subject: [PATCH] Fix return fire logic ignoring AutoAttack priotities Added brand new feature Unnecessary assignmet removed --- OpenRA.Mods.Common/Traits/AutoTarget.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/OpenRA.Mods.Common/Traits/AutoTarget.cs b/OpenRA.Mods.Common/Traits/AutoTarget.cs index 9fbdc2a495..d299d2c294 100644 --- a/OpenRA.Mods.Common/Traits/AutoTarget.cs +++ b/OpenRA.Mods.Common/Traits/AutoTarget.cs @@ -256,6 +256,15 @@ namespace OpenRA.Mods.Common.Traits if (attacker.AppearsFriendlyTo(self)) return; + // Respect AutoAttack priorities. + if (stance > UnitStance.ReturnFire) + { + var autoTarget = ScanForTarget(self, allowMove, true); + + if (autoTarget != Target.Invalid) + attacker = autoTarget.Actor; + } + Aggressor = attacker; Attack(Target.FromActor(Aggressor), allowMove);