public void StartBattle(BattleSceneData battleSceneData) { _previousLevel = battleSceneData.PreviousLevel; /* -- Set up Battle -- */ PlayerLoader.BattleSetUp(battleSceneData.PlayerMingmings, battleSceneData.PlayerCards.ToList()); EnemyLoader.BattleSetUp(battleSceneData.EnemyMingmings, battleSceneData.EnemyCards.ToList()); _playerTurn = PlayerTurn.PlayerOne; StartCoroutine(StartTurnAfterSeconds(1)); }
public void GetEncounter() { OnStartEncounter?.Invoke(); var thisScene = new LevelSceneData(gameObject.scene.name, this, _player); var battleScene = new BattleSceneData( GameSceneController.BattleScene, _player.DevController.DeckHolder.CurrentDeck, trainerController.DevController.DeckHolder.CurrentDeck, thisScene, _player.DevController.PlayableMingmings, trainerController.DevController.PlayableMingmings ); GameSceneController.Singleton.SwapScenes(thisScene, battleScene); }
public void GetEncounter() { bool hasEncounter = Rules.GetRandomFloat() <= EncounterChance; if (!hasEncounter) { return; } mingmings.Clear(); int mingmingSpawns = Rules.GetRandomInt(1, MaxMingmings + 1); for (int i = 0; i < mingmingSpawns; i++) { var _drop = DropTable.GetDrop(); if (_drop != null) { int mingmingLevel = Rules.GetRandomInt(MinMingmingLevel, MaxMingmingLevel + 1); var _mingming = new MingmingInstance((MingmingData)_drop, mingmingLevel); _mingming.Name = "Wild " + _mingming.Name; mingmings.Add(_mingming); } } if (mingmings.Any()) { OnStartEncounter?.Invoke(); var player = FindObjectOfType <PlayerController>(); var thisScene = new LevelSceneData(gameObject.scene.name, this, player); var battleScene = new BattleSceneData(GameSceneController.BattleScene, player.DevController.DeckHolder.CurrentDeck, new List <CardData>(), thisScene, player.DevController.PlayableMingmings, mingmings); GameSceneController.Singleton.SwapScenes(thisScene, battleScene); } }