Newer
Older
HardPoint-Project-Abertay-University-Unity3D / Assets / Scripts / FSM / MeleeEnemy / Actions / ChaseAction.cs
@Rackday Rackday on 18 Aug 542 bytes Project Added
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);

    }
}