public Citizen() { id = IDPREFIX + citizenNum; citizenNum++; int nameSelection = random.Next(1); if (nameSelection > 0) { name = "Jane"; } else { name = "John"; } age = random.Next(18, 65); citizenNum++; infected = false; rebel = false; happiness = 50; hospitalized = false; dead = false; wearingMask = false; homeLocation = Game.town.Residential[random.Next(Game.town.Residential.Count - 1)]; generateWorkLocation(random.Next(3)); favoriteTask = new CitizenTask(random, this, true); currentTask = new CitizenTask(random, this, false); generateCitizenRisk(random.Next(1), random.Next(1), random.Next(1), Game.GAME_MODIFIER); }
private void updateTask() { currentTask.Update(random, this); // Updates citizen's task if (currentTask.Completed) { if (currentTask.Equals(favoriteTask)) { happiness += currentTask.calculateTaskHappiness(random, rebel, favoriteModifier); } else { happiness += currentTask.calculateTaskHappiness(random, rebel, 1); } currentTask = new CitizenTask(random, this, false); // Generates a new task that isn't a favorite } }
public void loadPreviousTask(int taskID, int startTime, int endTime, int startDay, int endDay, int completed, Building building) { currentTask = new CitizenTask(taskID, startTime, endTime, startDay, endDay, completed, building); }
private void loadFavoriteTask(int taskID, Building building) { favoriteTask = new CitizenTask(taskID, 0, 0, 0, 0, 0, building); // Instantiated with Zeros since that data isn't important for loading the citizen's favorite task }
private void generateLastTask(CitizenData c) { bool buildingFound = false; string taskLoc = c.CurrentTaskLoc; for (int i = 0; i < Game.town.recreational.Count; i++) { if (Game.town.recreational[i].ID.Equals(taskLoc)) { int num = 0; if (c.TaskCompleted) { num = 1; } currentTask = new CitizenTask(c.CurrentTaskId, Game.town.Time, c.EndTime, Game.town.Day, c.EndDay, num, Game.town.recreational[i]); buildingFound = true; } } if (!buildingFound) { for (int i = 0; i < Game.town.residential.Count; i++) { if (Game.town.residential[i].ID.Equals(taskLoc)) { int num = 0; if (c.TaskCompleted) { num = 1; } currentTask = new CitizenTask(c.CurrentTaskId, Game.town.Time, c.EndTime, Game.town.Day, c.EndDay, num, Game.town.residential[i]); buildingFound = true; } } } if (!buildingFound) { for (int i = 0; i < Game.town.essentials.Count; i++) { if (Game.town.essentials[i].ID.Equals(taskLoc)) { int num = 0; if (c.TaskCompleted) { num = 1; } currentTask = new CitizenTask(c.CurrentTaskId, Game.town.Time, c.EndTime, Game.town.Day, c.EndDay, num, Game.town.essentials[i]); buildingFound = true; } } } if (!buildingFound) { for (int i = 0; i < Game.town.emergency.Count; i++) { if (Game.town.emergency[i].ID.Equals(taskLoc)) { int num = 0; if (c.TaskCompleted) { num = 1; } currentTask = new CitizenTask(c.CurrentTaskId, Game.town.Time, c.EndTime, Game.town.Day, c.EndDay, num, Game.town.emergency[i]); buildingFound = true; } } } if (!buildingFound) { Debug.Log("This game sucks. Can't even load shit. It's like Detroit all over again"); } }