Files
beyond/Assets/Scripts/InvectorDerivatives/bIDCombatAction.cs
2024-11-20 15:21:28 +01:00

41 lines
1.4 KiB
C#

using Invector.vCharacterController.AI;
using Invector.vCharacterController.AI.FSMBehaviour;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Beyond
{
public class bIDCombatAction : vSimpleCombatAction
{
public override string defaultName
{
get { return "ID Melee Combat"; }
}
protected override void EngageTarget(vIControlAICombat controller)
{
if (controller.currentTarget.transform == null) return;
if (controller.targetDistance <= controller.attackDistance)
{
controller.Stop();
if (controller.currentHealth < IDBattleController.firstEventHP)
{
controller.Attack(true);
}
else
{
controller.Attack();
}
}
else if (!controller.animatorStateInfos.HasAnyTag("Attack", "LockMovement", "CustomAction"))
{
if (engageInStrafe)
controller.StrafeMoveTo(controller.currentTarget.transform.position, (controller.currentTarget.transform.position - controller.transform.position).normalized, engageSpeed);
else controller.MoveTo(controller.currentTarget.transform.position, engageSpeed);
}
else controller.Stop();
}
}
}