public override void Execute(AgentBase agent) { base.Execute(agent); if (agent.Behavior.GetType() == typeof(PathFollowingBehaviour)) { var tempBehaviour = (PathFollowingBehaviour)agent.Behavior; if (tempBehaviour.Finished()) { UICore.GetInstance().Log(agent.Name + ": I need to repair my ride.."); agent.StateMachine.ChangeState(new RepairingVehicle()); } } }
public override void Execute(AgentBase agent) { base.Execute(agent); if (agent.Behavior.GetType() == typeof(PathFollowingBehaviour)) { var tempBehaviour = (PathFollowingBehaviour)agent.Behavior; if (tempBehaviour.Finished()) { agent.StateMachine.ChangeState(new ReachedFinish()); UICore.GetInstance().Log(agent.Name + ": I finished a lap!"); } } }
public void Enter(AgentBase agent) { UICore.GetInstance().Log(agent.Name + ": I'm fixing my ride.."); UICore.GetInstance().Log(agent.Name + ": My wear is " + agent.Wear); }
public void Exit(AgentBase agent) { UICore.GetInstance().Log(agent.Name + ": I've repaired my ride!"); UICore.GetInstance().Log(agent.Name + ": My wear is now " + agent.Wear); }