public string getDescription() { string description = "Next " + encounters.Count + " encounters: "; for (int i = 0; i < encounters.Count; i++) { CampEncounter encounter = encounters[i]; string eventDescription = ""; if (encounter == CampEncounter.elite) { eventDescription = "elite"; } else if (encounter == CampEncounter.basic) { eventDescription = "regular"; } else if (encounter == CampEncounter.campFire) { eventDescription = "campfire"; } else if (encounter == CampEncounter.campEvent) { eventDescription = "event"; } description += (i + 1) + ") " + eventDescription; description += "\n"; } return(description); }
public Fight getFight(CampEncounter campEncounter) { Fight fight = new Fight(); if (campEncounter == CampEncounter.basic) { fight = easyFights[basicFightCounter]; fight.cardOnComplete = true; basicFightCounter++; if (basicFightCounter > easyFights.Count - 1) { basicFightCounter = 0; } } else if (campEncounter == CampEncounter.elite) { fight = eliteFights[eliteFightCounter]; fight.upgradeOnComplete = true; eliteFightCounter++; if (eliteFightCounter > eliteFights.Count - 1) { eliteFightCounter = 0; } } else { throw new System.Exception("invalid status enum provided: " + campEncounter); } return(fight); }
public Event getEvent(CampEncounter campEncounter) { if (campEncounter == CampEncounter.campFire) { return(campFireEvent); } else { Event selected = campEvents[eventCounter]; eventCounter++; if (eventCounter > campEvents.Count - 1) { eventCounter = 0; } return(selected); } }
public void startFight() { GameData gameData = GameData.getInstance(); ContractGameObject currContract = gameData.currContractGameObject; if (gameData.currContractGameObject == null) { sceneUiManager.showCampScene(); campService.enterCamp(); } else { CampEncounter campEncounter = currContract.campContract.encounters[gameData.fightData.encounterCount]; if (campEncounter == CampEncounter.campFire || campEncounter == CampEncounter.campEvent) { sceneUiManager.showCampScene(); sceneUiManager.showEventScene(); EventTypes eventTypes = new EventTypes(eventManagerService, playerService); Event gameEvent = eventManagerService.getEvent(campEncounter); eventManagerService.showEvent(gameEvent); } else { Fight fight = enemyManagerService.getFight(campEncounter); gameData.fightData.currentFight = fight; enemyManagerService.initializeEnemiesForFight(fight); playerService.startFight(); deckService.startFight(); upgradeService.triggerCombatStartActions(); sceneUiManager.startFight(); } gameData.fightData.encounterCount++; gameData.fightData.turnCount = 0; if (gameData.fightData.encounterCount == gameData.fightData.totalEncounterCount) { gameData.fightData.encounterCount = 0; gameData.currContractGameObject = null; } } }