public GameObject getPrefabBadgeFromRank(Person.RankEnum rank) { if (rankBadgeDict == null) { GenerateNewBadgeAssignment(); } if (rankBadgeDict.TryGetValue(rank, out int index)) { return(featurePoolBadge[index]); } Debug.LogError("Uh oh couldn't find a badge for the rank", this); return(null); }
internal void PostBuildingAwake(Building building) { this.building = building; // Add the target, setting unique identifier Room randomRoom = building.allRooms[UnityEngine.Random.Range(0, building.allRooms.Count)]; List <Person.RankEnum> employeePool = randomRoom.GetRankPool(); Person.RankEnum rank = employeePool[UnityEngine.Random.Range(0, employeePool.Count)]; target = randomRoom.InstantiatePrefabFromRank(rank); // Populate the rest of the building foreach (Room room in building.allRooms) { room.GenerateAndAddPeople(); } }
public Employee InstantiatePrefabFromRank(Person.RankEnum rank) { switch (rank) { case Person.RankEnum.Manager: numberOfManagers--; return(InstantiatePrefabEmployee(Game.S.pfbManager)); case Person.RankEnum.Executive: numberOfExecs--; return(InstantiatePrefabEmployee(Game.S.pfbExecutive)); case Person.RankEnum.CEO: numberOfCEOs--; return(InstantiatePrefabEmployee(Game.S.pfbCEO)); default: numberOfEmployees--; return(InstantiatePrefabEmployee(Game.S.pfbEmployee)); } }