public void Update(float delta) { if (enemy == null) { hostAi.ChangeState(StateAi.States.Roaming); } aimed = hostAi.IsAimedAt(enemy.Transform.origin, MeleeAimMargin); inRange = hostAi.DistanceToActor(enemy) <= MeleeRange; Strafe(delta); CloseDistance(delta); Attack(delta); }
public void Update(float delta) { if (enemy == null) { hostAi.ChangeState(StateAi.States.Roaming); } aimed = hostAi.IsAimedAt(enemy.Transform.origin, RangedAimMargin); currentRange = hostAi.DistanceToActor(enemy); inRange = currentRange <= RangedRange; if (!aimDelayActive) { Strafe(delta); MaintainDistance(delta); } Attack(delta); }