void Start() { //Inicializo la state machine y añado los estados. FSM = new GenericFSM(); //Para añadir un Estado necesito un entero(índice) + Un action para Awake, Execute y Sleep; for (int i = 0; i < EstadosDelNpc.Count; i++) { FSM.AddState(i, EstadosDelNpc[i].execute, EstadosDelNpc[i].awake, EstadosDelNpc[i].sleep); } }
void Awake() { //Inicializo la state machine y añado los estados. FSM = new GenericFSM(); object[] BattleStats = { BSO_BasicDamage, BSO_MagicPower, BSO_Strenght, BSO_AttackSpeed, BSO_AttackRange }; EstadosDelNpc = new List <State> { new StateIdle(gameObject), //0 new StatePursuit(gameObject), //1 new StateAttack(gameObject, BattleStats), //2 }; //Para añadir un Estado necesito un entero(índice) + Un action para Awake, Execute y Sleep; for (int i = 0; i < EstadosDelNpc.Count; i++) { FSM.AddState(i, EstadosDelNpc[i].execute, EstadosDelNpc[i].awake, EstadosDelNpc[i].sleep); } FSM.SetState(0); }