- Protoyped on the AI movement, found solutions for turns and moving after impacting the player. - Created a full base for AI state machine. - Worked on binding the core AI logic with the finite state machine.
36 lines
786 B
C#
36 lines
786 B
C#
|
|
using UnityEngine;
|
|
|
|
public class IdleState : BaseState
|
|
{
|
|
public IdleState(AICarDriver aiCarDriver, GameplayManager gameplayManager) : base(aiCarDriver, gameplayManager)
|
|
{
|
|
Debug.Log($"### {this} constructor");
|
|
}
|
|
|
|
protected override void Enter()
|
|
{
|
|
base.Enter();
|
|
|
|
Debug.Log($"### {this} Enter STAGE");
|
|
}
|
|
|
|
protected override void Update()
|
|
{
|
|
base.Update();
|
|
|
|
// use a mod timer system and when timer completes then move onto the next state (RoamState)
|
|
base.Exit();
|
|
|
|
nextState = new AcquireTargetState(aiCarDriver, gameplayManager);
|
|
Debug.Log($"### {this} Update STAGE");
|
|
}
|
|
|
|
protected override void Exit()
|
|
{
|
|
base.Exit();
|
|
|
|
Debug.Log($"### {this} Exit STAGE");
|
|
}
|
|
}
|