Beispiel #1
0
    void InitializePlayerCompany()
    {
        GameObject newCompany = GameObject.Instantiate(Resources.Load <GameObject>("GameSystem/Company/Object/Player"));

        newCompany.transform.SetParent(CompanyManagerObject.transform);

        CompanyManager CompanyManagerCall = CompanyManagerObject.GetComponent <CompanyManager>();
        WorkerSelector WorkerSelectorCall = GameObject.Find("WorkerManager").GetComponent <WorkerSelector>();

        CompanyManagerCall.AddCompany(CompanyName, newCompany);
        CompanyManagerCall.PlayerCompanyName = CompanyName;
        newCompany.name = CompanyName;

        EconomyValue EconomyValueCall = CompanyManagerCall.GetPlayerCompanyValue().GetEconomyValue().GetComponent <EconomyValue>();

        EconomyValueCall.Balance = 40000;
        WorkerSelector.Worker CEO = WorkerSelectorCall.AddCustomWorker(null, 3, 0, 0, 0, 0, 0);
        CompanyManagerCall.GetPlayerCompanyValue().GetEmployeeValue().GetComponent <EmployeeValue>().HireEmployee(CEO);
        WorkerSelectorCall.UnHiredList.Remove(CEO);
    }
Beispiel #2
0
    public void HireEmployee(WorkerSelector.Worker newWorker)
    {
        EmployeeInfo newEmployee = new EmployeeInfo();

        newEmployee.Index                = CurrentIndex++;
        newEmployee.BaseInfo             = newWorker;
        newEmployee.FatigueValue         = newWorker.LaborForce * 0.5f;
        newEmployee.CurrentLaborForce    = newWorker.LaborForce;
        newEmployee.CurrentSincerityRate = newWorker.SincerityRate;
        newEmployee.Happiness            = 0.45f;
        newEmployee.isResting            = false;
        newEmployee.isWorking            = false;
        newEmployee.CurrentDayRoom       = null;

        EmployeeList.Add(newEmployee);
        TotalLabor += newWorker.LaborForce;

        if (EmployeeList.Count != 1)
        {
            EconomyValueCall.AddPersistHistory(TimeManagerCall.GetNextMonth(0), TimeManagerCall.Month, "Employee Pay", "#" + newEmployee.Index + " " + newEmployee.BaseInfo.Name, "Employee #" + newEmployee.Index + " Pay", -newEmployee.BaseInfo.Salary);
            CompanyValueCall.GetLandValue().GetComponent <LandValue>().ChangeLandValue(200);

            if (CompanyValueCall.CompanyName == CompanyManagerCall.PlayerCompanyName)
            {
                GameObject.Find("NotificationManager").GetComponent <NotificationManager>().AddNews("Info", newWorker.Name + " is new partner.");
                // Debug.Log(newEmployee.BaseInfo.Name + " " + newEmployee.BaseInfo.LaborForce + " " + newEmployee.BaseInfo.Salary);

                PanelControllerCall.UpdateFactoryInfo("Employee", TotalLabor, RequiredLabor);
                if (PanelControllerCall.CurrentSidePanel != null)
                {
                    if (PanelControllerCall.CurrentSidePanel.name == "WorkerPanel")
                    {
                        WorkerPanelController PanelComponent = PanelControllerCall.CurrentSidePanel.GetComponent <WorkerPanelController>();

                        PanelComponent.DisplayWorkerList();
                    }
                }
            }
        }
    }