using UnityEngine; public class RoamState : BaseState { public RoamState() : base() { Debug.Log($"### {this} constructor"); } protected override void Enter() { base.Enter(); Debug.Log($"### {this} Enter STAGE"); // get the target point } protected override void Update() { base.Update(); // keeping roaming for a specific duration // use a set of target points which would be placed on the arena, // get one of the target point and then start roaming towards that point. // if an enemy/player is found within a specific radius and in front of- // -the player then go to the next state after acquiring the target- // -(next state could be ChargeState) Debug.Log($"### {this} Update STAGE"); } protected override void Exit() { base.Exit(); Debug.Log($"### {this} Exit STAGE"); } }