// 디버깅용 private void CheckTurnState() { if (_stateMachine.IsStateType(typeof(GameMgr_Positioning_))) { gmState = GMState.Positioning; } else if (_stateMachine.IsStateType(typeof(GameMgr_Battle_))) { gmState = GMState.Battle; } else if (_stateMachine.IsStateType(typeof(GameMgr_Victory_))) { gmState = GMState.Victory; } else if (_stateMachine.IsStateType(typeof(GameMgr_Defeat_))) { gmState = GMState.Defeat; } else { gmState = GMState.Init; } }
//todo: tidy functions (put them into blocks) private void Awake() { Application.targetFrameRate = 60; if (gameManager != null && gameManager != this) { Destroy(this.gameObject); } else { gameManager = this; } gameState = GMState.FreeSelection; selectedSpecies = null; previousSelectedSpecies = null; forcePanelExit = false; AddPetSpecies("Reds", "red", 1, 0, 0, 0, 0, 0, 0); AddEnemySpecies("Enemies", 2); //AddSpecies("Blues", "Pet", "blue", 2, 0, 0, 0, 0, 0, 0); //AddPetSpecies("Enemies", "Hostile", "blue", 2, 0, 0, 0, 0, 0, 0); for (int i = 0; i < 5; i++) { GetSpeciesFromName("Reds").Spawn(); } for (int i = 0; i < 5; i++) { GetSpeciesFromName("Enemies").Spawn(); } //for (int i = 0; i < 5; i++) GetSpeciesFromName("Blues").Spawn(unitPrefab); //for (int i = 0; i < 5; i++) GetSpeciesFromName("Enemy").Spawn(unitPrefab); }
void Update() { gameState = GameManagerStateMachine.NextState(); }
public void SetState(GMState state) { _currentState = state; StartCoroutine(_currentState.Start()); }