Index: binaries/data/mods/public/simulation/components/Attack.js =================================================================== --- binaries/data/mods/public/simulation/components/Attack.js +++ binaries/data/mods/public/simulation/components/Attack.js @@ -483,6 +483,7 @@ this.resyncAnimation = prepare != timings.prepare; this.target = target; this.callerIID = callerIID; + this.lastAttackedType = type; this.timer = cmpTimer.SetInterval(this.entity, IID_Attack, "Attack", prepare, timings.repeat, type); return true; @@ -744,6 +745,13 @@ if (msg.component != "Attack") return; + if (this.target) + { + let [target, iid] = [this.target, this.callerIID]; + this.StopAttacking(); + this.StartAttacking(target, this.lastAttackedType, iid); + } + let cmpUnitAI = Engine.QueryInterface(this.entity, IID_UnitAI); if (!cmpUnitAI) return;