using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu(menuName = "AI/Action/Patrol")]
public class PatrolAction : Action
{
public override void Act(FiniteStateMachine fsm)
{
if (!fsm.dic.HasKey("RoomEntity")) fsm.dic.SetValue("RoomEntity", fsm.GetComponent<RoomEntity>());
if (!fsm.dic.HasKey("PatrolDir")) fsm.dic.SetValue("PatrolDir", 1f);
if (!fsm.dic.HasKey("RigidBody")) fsm.dic.SetValue("RigidBody", fsm.GetComponent<Rigidbody>());
Rigidbody rb = fsm.dic.GetValue("RigidBody") as Rigidbody;
RoomEntity rE = fsm.dic.GetValue("RoomEntity") as RoomEntity;
if ((Vector3.Distance(fsm.transform.position, rE.platformController.endPoints[0].transform.position) < 0.5f && (float)fsm.dic.GetValue("PatrolDir") == -1) ||
(Vector3.Distance(fsm.transform.position, rE.platformController.endPoints[1].transform.position) < 0.5f && (float)fsm.dic.GetValue("PatrolDir") == 1))
{
fsm.dic.SetValue("PatrolDir", -(float)fsm.dic.GetValue("PatrolDir"));
}
rb.velocity = (float)fsm.dic.GetValue("PatrolDir") * Vector3.right;
}
}