public EnemyPartyManager GetRandomEncounter(AreaNames currArea) { Debug.Log(currArea); List <EnemyPartyManager> currAreaList = null; switch (currArea) { case (AreaNames.MOUNTAIN): currAreaList = mountainParties; break; default: currAreaList = grasslandParties; break; } int randPartyIndex = UnityEngine.Random.Range(0, currAreaList.Count); int occurrenceChance = UnityEngine.Random.Range(1, 5); if (occurrenceChance <= currAreaList[randPartyIndex].occurrenceRate) { return(currAreaList[randPartyIndex]); } else { if (tries-- < 0) { throw new System.Exception("Invalid party Occurrence rate!"); } return(GetRandomEncounter(currArea)); } }
private void Start() { fadeTransition = GetComponent <FadeTransition>(); fsTransition = GetComponent <FourSideTransition>(); gm = this; currAreaName = AreaNames.GRASSLAND; allEffects = GetComponent <AllEffects>(); }
// returns true if a battle started public static bool AdvanceStepCount(char groundType) { AreaNames currArea = AreaNames.GRASSLAND; switch (groundType) { case ('g'): encounterStep -= 1; break; case ('s'): encounterStep -= 1; currArea = AreaNames.DESERT; break; case ('r'): encounterStep -= 2; currArea = AreaNames.GRASSLAND; break; case ('\0'): encounterStep -= 1; currArea = AreaNames.OCEAN; break; default: encounterStep--; break; } GameManager.currAreaName = currArea; if (encounterStep < 0) { encounterStep = UnityEngine.Random.Range(8, 24); BattleManager.bManager.StartBattle(); return(true); } return(false); }
public void AssignLocation(AreaNames newLocation) { currentArea = newLocation; startingArea = newLocation; //Remove later. Console.WriteLine(currentArea); }
public AreaBehaviour(AreaNames name, Faction factionInControl) { areaName = name; controllingFaction = factionInControl; LoadArea(); }