private SharedWorker GenerateSingleWorker() { //Randomly selected name, surename and gender for new worker Gender newWorkerGender = (Gender)UnityEngine.Random.Range(0, NUMBER_OF_GENDERS); int nameIndex; string newWorkerName = CreateWorkerName(newWorkerGender, out nameIndex); int surenameIndex = UnityEngine.Random.Range(0, WorkerData.Surenames.Count); string newWorkerSurename = WorkerData.Surenames[surenameIndex]; SharedWorker newMarketWorker = new SharedWorker(newWorkerName, newWorkerSurename, newWorkerGender); newMarketWorker.Abilites = CreateWorkerAbilities(); newMarketWorker.ExperienceTime = CalculateWorkerExpierience(newMarketWorker); newMarketWorker.Salary = CalculateWorkerSalary(newMarketWorker); newMarketWorker.ID = MainSimulationManager.GenerateID(); int avatarIndex; newMarketWorker.Avatar = CreateWorkerAvatar(newMarketWorker, out avatarIndex); newMarketWorker.AvatarIndex = avatarIndex; newMarketWorker.NameIndex = nameIndex; newMarketWorker.SurenameIndex = surenameIndex; return(newMarketWorker); }
private void Start() { SimulationManagerComponent = GetComponent <MainSimulationManager>(); GameTimeComponent = GetComponent <GameTime>(); MaxLoanAmout = SimulationSettings.TargetBalance / 10; MinLoanAmount = MaxLoanAmout / 10; }
private void Start() { GameTimeComponent = GetComponent <GameTime>(); SimulationManagerComponent = GetComponent <MainSimulationManager>(); GameTimeComponent.MonthChanged += HandleCompanyExpenses; GameTimeComponent.DayChanged += UpdateWorkersState; GameTimeComponent.YearChanged += HandleWorkerHolidayLimits; SimulationManagerComponent.ControlledCompany.ProjectAdded += OnCompanyProjectAdded; SimulationManagerComponent.ControlledCompany.WorkerRemoved += OnCompanyWorkerRemoved; SimulationManagerComponent.ControlledCompany.WorkerAdded += OnCompanyWorkerAdded; foreach (LocalWorker companyWorker in SimulationManagerComponent.ControlledCompany.Workers) { companyWorker.SalaryChanged += OnCompanyWorkerSalaryChanged; } }
private SharedProject GenerateSingleProject() { SharedProject newProject; int projectNameIndex = UnityEngine.Random.Range(0, ProjectData.Names.Count); string projectName = ProjectData.Names[projectNameIndex]; newProject = new SharedProject(projectName); newProject.UsedTechnologies = GenerateProjectTechnologies(); newProject.CompletionTime = UnityEngine.Random.Range(PROJECT_COMPLETION_TIME_MIN, PROJECT_COMPLETION_TIME_MAX); newProject.CompletionBonus = CalculateProjectCompleteBonus(newProject); newProject.ID = MainSimulationManager.GenerateID(); newProject.NameIndex = projectNameIndex; //Every project name is associated with one icon newProject.IconIndex = projectNameIndex; newProject.Icon = ResourceHolderComponent.ProjectsIcons[projectNameIndex]; return(newProject); }
private void Awake() { GameTimeComponent = GetComponent <GameTime>(); SimulationManagerComponent = GetComponent <MainSimulationManager>(); }
private void Start() { this.SimulationManagerComponent = GetComponent <MainSimulationManager>(); SimulationManagerComponent.ControlledCompany.WorkerAdded += OnControlledCompanyWorkerAdded; SimulationManagerComponent.ControlledCompany.WorkerRemoved += OnControlledCompanyWorkerRemoved; }