public IEnumerator BattleOverState() { battleState = BattleDefine.EBattleState.BattleOver; battleOverEvent?.Invoke(); DataManager._instance.animalExp = new Tuple <int, int> [3]; DataManager._instance.farmObjects = -1; if (isWin) { // 경험치, 설정 for (int i = 0; i < 3; i++) { if (DataManager._instance.gogoAnimalIndexes[i] == -1) { DataManager._instance.animalExp[i] = new Tuple <int, int>(-1, -1); continue; } DataManager._instance.animalExp[i] = new Tuple <int, int>(DataManager._instance.gogoAnimalIndexes[i], EnemyManager._instance.enemy.animalData.enemyExp); DataManager._instance.playerData.animalDatas[DataManager._instance.gogoAnimalIndexes[i]].exp += EnemyManager._instance.enemy.animalData.enemyExp; DataManager._instance.SaveData <PlayerData>(DataManager._instance.playerData, "/PlayerData/" + 0 + ".json"); } // 아이템 설정 float rand = UnityEngine.Random.Range(0f, 1f); if (rand < EnemyManager._instance.enemy.animalData.farmObjectPercent) { DataManager._instance.farmObjects = EnemyManager._instance.enemy.animalData.farmObjectIndex; DataManager._instance.playerData.farmObjectDatas.Add(new FarmObjectData(EnemyManager._instance.enemy.animalData.farmObjectIndex, 0, 0, new DateTime(), false)); DataManager._instance.SaveData <PlayerData>(DataManager._instance.playerData, "/PlayerData/" + 0 + ".json"); } } yield return(new WaitForSeconds(2.0f)); StartCoroutine(EndState()); }
public IEnumerator ReadyState() { battleState = BattleDefine.EBattleState.Ready; readyEvent?.Invoke(); yield return(new WaitForSeconds(2.0f)); animalManager.StartAnimals(); enemyManager.StartAnimals(); StartCoroutine(PlayingState()); }
public IEnumerator PauseState() { battleState = BattleDefine.EBattleState.Pause; pauseEvent?.Invoke(); yield return(null); }
public IEnumerator PlayingState() { battleState = BattleDefine.EBattleState.Playing; playingEvent?.Invoke(); yield return(null); }
public IEnumerator EndState() { battleState = BattleDefine.EBattleState.End; endEvent?.Invoke(); yield return(null); }