/*-------------------------------------------------------------------------*/ public void AddState(FSMState newState) { if (newState.ID == StateID.Null) { Debug.Log("Invalid State."); return; } foreach (FSMState state in stateList) { if (state.ID == newState.ID) { Debug.Log("FSM already contains this state."); return; } } if (stateList.Count == 0) { currentState = newState; } stateList.Add(newState); newState.SetFSM(this); newState.SetCharacter(this.character); }