- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- [CreateAssetMenu(menuName = "AI/Action/Chase")]
- public class ChaseAction : Action
- {
- [SerializeField]
- private float velocity;
- public override void Act(FiniteStateMachine fsm)
- {
- if (!fsm.dic.HasKey("movement")) fsm.dic.SetValue("movement", fsm.GetComponent<IMovable>());
- (fsm.dic.GetValue("movement") as IMovable).ChangeVelocity(Vector3.Normalize(fsm.GetTarget().transform.position - fsm.transform.position) * velocity);
- }
- }