Newer
Older
HardPoint-Project-Abertay-University-Unity3D / Assets / Scripts / FSM / MeleeEnemy / Actions / ChaseAction.cs
@Rackday Rackday on 18 Aug 2024 542 bytes Project Added
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. [CreateAssetMenu(menuName = "AI/Action/Chase")]
  5. public class ChaseAction : Action
  6. {
  7. [SerializeField]
  8. private float velocity;
  9. public override void Act(FiniteStateMachine fsm)
  10. {
  11. if (!fsm.dic.HasKey("movement")) fsm.dic.SetValue("movement", fsm.GetComponent<IMovable>());
  12. (fsm.dic.GetValue("movement") as IMovable).ChangeVelocity(Vector3.Normalize(fsm.GetTarget().transform.position - fsm.transform.position) * velocity);
  13. }
  14. }