public void Init(int _activeAreaSetID) { activeAreaSetID = 1; //#if UNITY_EDITOR if (Data.Instance.DEBUG && Data.Instance.missions.test_mission) { setNewAreaSet(); return; } if (Data.Instance.playMode == Data.PlayModes.COMPETITION && 1 == 2) { areaSets.Clear(); GameObject[] thisAreaSets = Resources.LoadAll <GameObject>("competition_" + Data.Instance.competitionID); foreach (GameObject go in thisAreaSets) { AreaSet thisAreaSet = go.GetComponent <AreaSet>() as AreaSet; if (thisAreaSet.competitionsPriority >= 99 || thisAreaSet.competitionsPriority < 50 || Random.Range(0, 10) < 7) { areaSets.Add(thisAreaSet); } } RandomizeAreaSetsByPriority(); } //#endif num = 0; activeAreaSetID = 0; setNewAreaSet(); }
public Area getRandomArea(bool startingArea) { num++; if (!areaSet) { areaSet = areaSets[0]; areaSet.Restart(); } Area area; // print(areaSet + "areaSets.Length: " + areaSets.Count + " activeAreaSetID: " + activeAreaSetID + " num: " + num + " areaSet.totalAreasInSet " + areaSet.totalAreasInSet); if (Data.Instance.missions.MissionActiveID == 0) { showRelaxAreaBeforeStarting = false; } if (startingArea) { //area = Game.Instance.level.victoryAreaLastLevel; area = getStartingArea(); num = 0; } else if (showRelaxAreaBeforeStarting) { showRelaxAreaBeforeStarting = false; return(Data.Instance.missions.relaxArea[Random.Range(0, Data.Instance.missions.relaxArea.Length)]); } else { if (Data.Instance.playMode == Data.PlayModes.STORY || Data.Instance.playMode == Data.PlayModes.COMPETITION) { if (activeAreaSetID < areaSets.Count && num >= areaSet.totalAreasInSet) { if (num >= areaSet.totalAreasInSet) { setNewAreaSet(); activeAreaSetID++; num = 0; } } } else if (num >= areaSet.totalAreasInSet) { Data.Instance.events.OnSetNewAreaSet(activeAreaSetID); setNewAreaSet(); if (Random.Range(0, 10) < 5) { activeAreaSetID++; } activeAreaSetID++; num = 0; } area = areaSet.getArea(); } return(area); }
private List <AreaSet> Randomize(List <AreaSet> toRandom) { for (int i = 0; i < toRandom.Count; i++) { AreaSet temp = toRandom[i]; int randomIndex = Random.Range(i, toRandom.Count); toRandom[i] = toRandom[randomIndex]; toRandom[randomIndex] = temp; } return(toRandom); }
private void setNewAreaSet() { if (activeAreaSetID >= areaSets.Count) { activeAreaSetID = areaSets.Count - 1; } areaSet = areaSets[activeAreaSetID]; Game.Instance.gameCamera.SetOrientation(areaSet.getCameraOrientation()); areaSet.Restart(); }
void Start() { GameObject[] thisAreaSets = Resources.LoadAll <GameObject>("areas"); foreach (GameObject go in thisAreaSets) { AreaSet thisAreaSet = go.GetComponent <AreaSet>() as AreaSet; if (thisAreaSet) { areaSets.Add(thisAreaSet); } } RandomizeAreaSetsByPriority(); }
private List <AreaSet> Randomize(List <AreaSet> toRandom) { SocialEvents.OnCompetitionHiscore(1, 0, false); //if (!Data.Instance.isArcade && Data.Instance.playMode == Data.PlayModes.COMPETITION || Data.Instance.playMode == Data.PlayModes.GHOSTMODE) // Random.seed = Social.Instance.hiscores.GetMyScore(); for (int i = 0; i < toRandom.Count; i++) { AreaSet temp = toRandom[i]; int randomIndex = Random.Range(i, toRandom.Count); toRandom[i] = toRandom[randomIndex]; toRandom[randomIndex] = temp; temp.Restart(); } return(toRandom); }