public void FireAdvisor(AdvisorPanel panel)
    {
        Advisor a = panel.GetComponent <AdvisorPanel>().advisor;

        PlayerStatController.instance.advisorAssign.Remove(a);
        advisorPanels.Remove(panel);
        Destroy(panel.gameObject);
        advisorListHirePage.GetComponent <AdvisorListHire>().AddAdvisorFromBeingFired(panel);
    }
Beispiel #2
0
    public void AddAdvisorFromBeingFired(AdvisorPanel prevPanel)
    {
        //Create a panel for the advisor and add to panels list
        AdvisorPanel panel = Instantiate(advisorPanelPrefab, panelParent).GetComponent <AdvisorPanel>();

        panel.advisor = prevPanel.advisor;
        panel.name    = prevPanel.name;
        panel.GetComponentInChildren <HireAdvisor>().advisorListHirePage    = gameObject;
        panel.GetComponentInChildren <RemoveAdvisorCandidate>().advisorList = this;
        advisorPanels.Add(panel);
    }
    public void AddAdvisor(Advisor advisor)
    {
        //Create a panel for the advisor and add to panels list
        AdvisorPanel panel = Instantiate(advisorPanelEmployedPrefab, panelParent).GetComponent <AdvisorPanel>();

        panel.advisor = advisor;
        panel.name    = advisor.displayName;
        panel.GetComponentInChildren <FireAdvisor>().advisorList = this;
        advisorPanels.Add(panel);
        PlayerStatController.instance.advisorAssign.Add(advisor);
    }
    public void InitializeAdvisorPanels()
    {
        List <Advisor> advisorAssignList = PlayerStatController.instance.advisorAssign;

        //Create panels for current existing advisors
        foreach (Advisor a in advisorAssignList)
        {
            //Create a panel for the advisor and add to panels list
            AdvisorPanel panel = Instantiate(advisorPanelEmployedPrefab, panelParent).GetComponent <AdvisorPanel>();
            panel.advisor = a;
            panel.name    = a.displayName;
            panel.GetComponentInChildren <FireAdvisor>().advisorList = this;
            advisorPanels.Add(panel);
        }
    }
Beispiel #5
0
    //Refills the advisors you can choose to hire from, up to the number a certain limit
    void RenewAdvisors()
    {
        List <Advisor> advisorBackList = PlayerStatController.instance.advisorListBacklog;
        List <Advisor> advisorHireList = PlayerStatController.instance.advisorHire;
        int            random;
        int            currHireSize = advisorHireList.Count;

        //Create panels for current existing advisors
        foreach (Advisor a in advisorHireList)
        {
            //Create a panel for the advisor and add to panels list
            AdvisorPanel panel = Instantiate(advisorPanelPrefab, panelParent).GetComponent <AdvisorPanel>();
            panel.advisor = a;
            panel.name    = a.displayName;
            panel.GetComponentInChildren <HireAdvisor>().advisorListHirePage    = gameObject;
            panel.GetComponentInChildren <RemoveAdvisorCandidate>().advisorList = this;
            advisorPanels.Add(panel);
        }

        //Fill up the current hire list if there is still space
        for (int i = 0; i < advisorHireLimit - currHireSize; i++)
        {
            //Generates a random index
            random = Random.Range(0, advisorBackList.Count);

            //Create a panel for the advisor and add to panels list
            AdvisorPanel panel = Instantiate(advisorPanelPrefab, panelParent).GetComponent <AdvisorPanel>();
            panel.advisor = advisorBackList[random];
            panel.name    = advisorBackList[random].displayName;
            panel.GetComponentInChildren <HireAdvisor>().advisorListHirePage    = gameObject;
            panel.GetComponentInChildren <RemoveAdvisorCandidate>().advisorList = this;
            advisorPanels.Add(panel);
            advisorHireList.Add(advisorBackList[random]);

            //Remove from backlog list
            advisorBackList.RemoveAt(random);
        }

        //Update Back Log list if necessary
        UpdateBackLog();
    }
Beispiel #6
0
 public void RemoveCandidate(AdvisorPanel panel)
 {
     advisorPanels.Remove(panel);
     Destroy(panel.gameObject);
 }