namespace DeivSky.StateMachine
namespace UOP1.StateMachine
{
interface IStateComponent
public class State
/// <summary>
/// An object representing an action.
/// Class that represents a conditional statement.
using System.Collections.Generic;
using UnityEngine;
namespace DeivSky.StateMachine
namespace UOP1.StateMachine
public class StateMachine : MonoBehaviour
public class StateTransition : IStateComponent
using System.Collections.Generic;
namespace DeivSky.StateMachine.ScriptableObjects
namespace UOP1.StateMachine.ScriptableObjects
public abstract class StateActionSO : ScriptableObject
public abstract class StateConditionSO : ScriptableObject
[CreateAssetMenu(fileName = "New State", menuName = "State Machines/State")]
public class StateSO : ScriptableObject
[CreateAssetMenu(fileName = "New Transition", menuName = "State Machines/Transition")]
public class StateTransitionSO : ScriptableObject
"name": "DeivSky.StateMachine",
"name": "UOP1.StateMachine",
"references": [],
"includePlatforms": [],
"excludePlatforms": [],
using System;
using DeivSky.StateMachine;
using DeivSky.StateMachine.ScriptableObjects;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(fileName = "Chase", menuName = "State Machines/Tests/Actions/Chase")]
[CreateAssetMenu(fileName = "CloseToTarget", menuName = "State Machines/Tests/Conditions/Close To Target")]
using DeivSky.StateMachine;
using UOP1.StateMachine;
[CreateAssetMenu(fileName = "Eat", menuName = "State Machines/Tests/Actions/Eat")]
[CreateAssetMenu(fileName = "EnableHunger", menuName = "State Machines/Tests/Actions/Enable Hunger")]
[CreateAssetMenu(fileName = "IsHungry", menuName = "State Machines/Tests/Conditions/IsHungry")]
[CreateAssetMenu(fileName = "Timer", menuName = "State Machines/Tests/Conditions/Timer")]
fileFormatVersion: 2
guid: 0c2ca5875abd6634993342de5c275d35
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant: