Newer
Older
TheVengeance-Project-IADE-Unity2D / Assets / Scripts / NPC / FSM / Transition.cs
@Rackday Rackday on 26 Aug 638 bytes Major Update
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

namespace MyCollections.AI.FinitStateMachine
{
    [CreateAssetMenu(menuName = "Finite State Machine/Transition")]
    public class Transition : ScriptableObject
    {
        [SerializeField] private Condition condition;
        [SerializeField] private State targetState;
        [SerializeField] private Action action;

        public bool IsTriggered(FSM fsm) => condition.CheckCondition(fsm);
        public State TargetState() => targetState;

        public Action GetAction() => action;

        public Condition GetCondition() => condition;
    }
}