Exemple #1
0
    void Start()
    {
        populationText = GameObject.Find("PopulationCount").GetComponent<Text>();
        farmerText = GameObject.Find("FarmerCount").GetComponent<Text>();
        medicText = GameObject.Find("MedicCount").GetComponent<Text>();

        agentSpawner = GameObject.FindGameObjectWithTag("Spawner").GetComponent<AgentSpawner>();
    }
Exemple #2
0
    void Start()
    {
        populationText = GameObject.Find("PopulationCount").GetComponent <Text>();
        farmerText     = GameObject.Find("FarmerCount").GetComponent <Text>();
        medicText      = GameObject.Find("MedicCount").GetComponent <Text>();

        agentSpawner = GameObject.FindGameObjectWithTag("Spawner").GetComponent <AgentSpawner>();
    }
Exemple #3
0
    public AgentManagementBase()
        : base(true)
    {
        int startLength = 100;
        localAgentPoints = new Vector3[startLength];
        localAgentIds = new int[startLength];

        AddSubSystem(agentSpawner = new AgentSpawner());
    }
Exemple #4
0
    private void Awake()
    {
        _spawnPosition = transform.parent;
        _speed         = 15f;
        _rayPerception = GetComponentInChildren <RayPerception3D>();

        _agentSpawner = FindObjectOfType <AgentSpawner>();

        _carAcademy = FindObjectOfType <CarAcademy>();
    }
    private void Awake()
    {
        enemySpawner = enemySpawnerGO.GetComponent <AgentSpawner>();
        enemySpawner.SetUpScenarioObserver(this);

        playerGO?.GetComponent <Player>().SetScenarioObserver(this);

        enemyCountText   = UIEnemyCount.GetComponent <Text>();
        announcementText = UIAnnouncement.GetComponent <Text>();

        announcementText.text = "";
    }
Exemple #6
0
 // Start is called before the first frame update
 public void Awake()
 {
     if (Instance == null)
     {
         Instance = this;
     }
     else
     {
         Destroy(this);
         return;
     }
 }
Exemple #7
0
    // Use this for initialization
    void Start()
    {
        spawner         = FindObjectOfType <AgentSpawner>();
        world           = FindObjectOfType <AgentWorld>();
        leaderBoardText = FindObjectOfType <LeaderBoardText>();
        playerNameToId  = new Dictionary <string, int>();
        playerIdToName  = new string[leaderBoardSize];
        playerScores    = new int[leaderBoardSize];
        File.WriteAllText(logPath, string.Empty);
        FileStream fileStream = new FileStream(logPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);

        streamReader = new StreamReader(fileStream);
    }
 public void Start()
 {
     if (agentSpawner == null)
     {
         agentSpawner = AgentSpawner.Instance;
     }
     if (ic == null)
     {
         ic = IllnessController.Instance;
     }
     if (wc == null)
     {
         wc = WorldController.Instance;
     }
     ac = gameObject.transform.GetComponent <AgentController>();
 }
    private void SetBuildingComponents(GameObject build, bool state)
    {
        BoxCollider boxCollider = build.GetComponent <BoxCollider>();

        if (boxCollider)
        {
            boxCollider.enabled = state;
        }

        ResourceCollector resourceCollector = build.GetComponent <ResourceCollector>();

        if (resourceCollector)
        {
            resourceCollector.enabled = state;
        }

        ResourceConverter resourceConverter = build.GetComponent <ResourceConverter>();

        if (resourceConverter)
        {
            resourceConverter.enabled = state;
        }

        AgentSpawner agentSpawner = build.GetComponent <AgentSpawner>();

        if (agentSpawner)
        {
            agentSpawner.enabled = state;
        }

        Animator animator = build.GetComponent <Animator>();

        if (animator)
        {
            animator.enabled = state;
        }

        TreeSibling treeSibling = build.GetComponent <TreeSibling>();

        if (treeSibling)
        {
            treeSibling.enabled = state;
        }
    }
Exemple #10
0
    public void SpwanAgents()
    {
        foreach (FixedAgents fixedAgent in m_fixedAgents)
        {
            GameObject agent = GameObject.Instantiate(fixedAgent.agent, m_parent);
            agent.transform.position = fixedAgent.agentSpawner.transform.position;
            m_levelAgents.Add(agent.GetComponent <AgentBehavior>());
        }

        float agentWheights = 0.0f;

        foreach (LevelAgents posibleAgent in m_posibleAgents)
        {
            LevelAgents pAgent = posibleAgent;

            if (pAgent.forceAgent)
            {
                int          spwanerIndex = Random.Range(0, m_agentSpawners.Count);
                AgentSpawner spawn        = m_agentSpawners[spwanerIndex];

                GameObject agent = GameObject.Instantiate(pAgent.agent, m_parent);
                agent.transform.position = spawn.transform.position;

                m_levelAgents.Add(agent.GetComponent <AgentBehavior>());
                pAgent.inLevel = true;

                spawn.count--;
                m_agentSpawners[spwanerIndex] = spawn;
            }
            agentWheights += posibleAgent.agentProbobiltiy;
        }

        for (int i = 0; i < m_agentSpawners.Count; i++)
        {
            AgentSpawner spawn = m_agentSpawners[i];
            while (spawn.count > 0)
            {
                float wheight = Random.Range(0.0f, agentWheights);
                for (int j = 0; j < m_posibleAgents.Count; j++)
                {
                    LevelAgents pAgent = m_posibleAgents[j];

                    if (!pAgent.singleton || (pAgent.singleton && !pAgent.inLevel))
                    {
                        wheight -= pAgent.agentProbobiltiy;
                        if (wheight <= 0)
                        {
                            GameObject agent = GameObject.Instantiate(pAgent.agent, m_parent);
                            agent.transform.position = spawn.transform.position;

                            m_levelAgents.Add(agent.GetComponent <AgentBehavior>());
                            pAgent.inLevel     = true;
                            m_posibleAgents[j] = pAgent;
                            spawn.count--;
                            break;
                        }
                    }
                }
            }
            m_agentSpawners[i] = spawn;
        }
    }
    //=================\\
    //===== Start =====\\
    //=================\\
    void Start()
    {
        globalAttributes = GameObject.FindGameObjectWithTag ("GameController").GetComponent<GameController> ();
        aSpawner = GameObject.Find("ASpawner").GetComponent<AgentSpawner>();
        // === HUD Background ===\\
        HUDDelBg = (Image)Instantiate (HUDBg);
        HUDDelBg.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        HUDDelBg.rectTransform.sizeDelta = new Vector2 (960, 109);
        HUDDelBg.transform.Translate (Screen.width / 2, Screen.height - 54.5f, 0);
        HUDDelBg.CrossFadeAlpha (0.9f, 0, false);

        //cursorTexture_default.Resize (9, 11);
        Cursor.SetCursor(cursorTexture_default, hotSpot, CursorMode.Auto);

        //===========================\\
        // === GLOBAL ATTRIBUTES === \\
        //===========================\\
        //Scrap
        scrapIconDel = (Image)Instantiate (scrapIcon);
        scrapIconDel.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        scrapIconDel.rectTransform.sizeDelta = new Vector2 (90, 72);
        scrapIconDel.transform.Translate (((HUDDelBg.gameObject.transform.position.x) - 30), Screen.height - 42.5f, 0);

            //Text
            scrapDelText = (Text)Instantiate (scrapText);
            scrapDelText.gameObject.transform.SetParent (myCanvas.gameObject.transform);

            scrapDelText.text = "";
            scrapDelText.transform.position = new Vector2 (HUDDelBg.rectTransform.position.x + 42.5f, scrapIconDel.rectTransform.position.y);
            scrapDelText.rectTransform.sizeDelta = new Vector2 (200, 50);

        //Population
        populationIconDel = (Image)Instantiate (populationIcon);
        populationIconDel.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        populationIconDel.rectTransform.sizeDelta = new Vector2 (70, 70);
        populationIconDel.transform.Translate (scrapIconDel.transform.position.x - 380, scrapIconDel.rectTransform.position.y - 25.5f, 0);

            //Text
            populationDelText = (Text)Instantiate (populationText);
            populationDelText.gameObject.transform.SetParent (myCanvas.gameObject.transform);

            populationDelText.text = "";
            populationDelText.fontSize = 20;
            populationDelText.transform.position = new Vector2 (populationIconDel.transform.position.x + 70, scrapDelText.transform.position.y - 25.5f);

        //Power
        powerIconDel = (Image)Instantiate (powerIcon);
        powerIconDel.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        powerIconDel.rectTransform.sizeDelta = new Vector2 (100, 100);
        powerIconDel.transform.Translate (populationIconDel.transform.position.x + 185, scrapIconDel.rectTransform.position.y - 25.5f, 0);

            //Text
            powerDelText = (Text)Instantiate (powerText);
            powerDelText.gameObject.transform.SetParent (myCanvas.gameObject.transform);

            powerDelText.text = "";
            powerDelText.transform.position = new Vector2 (powerIconDel.transform.position.x + 70, scrapDelText.transform.position.y - 25.5f);
            powerDelText.rectTransform.sizeDelta = new Vector2 (200, 50);

        //Food
        foodIconDel = (Image)Instantiate (foodIcon);
        foodIconDel.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        foodIconDel.rectTransform.sizeDelta = new Vector2 (120, 120);
        foodIconDel.transform.Translate (powerIconDel.transform.position.x + 390, scrapIconDel.rectTransform.position.y - 17.5f, 0);

            //Text
            foodDelText = (Text)Instantiate (foodText);
            foodDelText.gameObject.transform.SetParent (myCanvas.gameObject.transform);

            foodDelText.text = "";
            foodDelText.transform.position = new Vector2 (foodIconDel.transform.position.x + 70, scrapDelText.transform.position.y - 25.5f);
            foodDelText.rectTransform.sizeDelta = new Vector2 (100, 100);

        //Water
        waterIconDel = (Image)Instantiate (waterIcon);
        waterIconDel.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        waterIconDel.rectTransform.sizeDelta = new Vector2 (100, 100);
        waterIconDel.transform.Translate (foodIconDel.transform.position.x + 185, scrapIconDel.rectTransform.position.y - 20.5f, 0);

            //Text
            waterDelText = (Text)Instantiate (waterText);
            waterDelText.gameObject.transform.SetParent (myCanvas.gameObject.transform);

            waterDelText.text = "";
            waterDelText.transform.position = new Vector2 (waterIconDel.transform.position.x + 70, scrapDelText.transform.position.y - 25.5f);
            waterDelText.rectTransform.sizeDelta = new Vector2 (200, 50);

        //===============\\
        //=== BUTTONS ===\\
        //===============\\

        // === Building Buttons === \\
        //OLD WAY FOR USING AN ARRAY TO MAKE THE BUILD AND DESTROY BUTTON. MAY BE USED LATER FOR ALL STRUCTURE BUTTONS.
        //		for (int i = 0; i < buildBtnArray.Length; i++) {
        //			Button tempButton = (Button)Instantiate (buildBtnArray [i], Vector3.zero, Quaternion.identity);
        //			tempButton.gameObject.transform.SetParent (myCanvas.gameObject.transform);
        //			buildBtnArray [i] = tempButton;
        //		}

        //Switch Modes
        switchModeDelBtn = (Button)Instantiate (switchModeBtn);
        switchModeDelBtn.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        switchModeDelBtn.image.rectTransform.sizeDelta = new Vector2 (81.25f, 81.25f);
        switchModeDelBtn.transform.position = new Vector2 (102.5f, Screen.height - 82);
        switchModeDelBtn.GetComponentInChildren<Text> ().text = "";
        switchModeDelBtn.onClick.AddListener (() => switchMode ());

        //Build Button
        buildBtnDel = (Button)Instantiate (buildBtn);
        buildBtnDel.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        buildBtnDel.image.rectTransform.sizeDelta = new Vector2 (81.25f, 81.25f);
        buildBtnDel.transform.position = new Vector2 (switchModeDelBtn.transform.position.x, Screen.height - 166.5f);
        buildBtnDel.onClick.AddListener (() => buildBtnClicked ());
        buildBtnDel.gameObject.SetActive (true);

        buildClicked = false;

        //Destroy Button //HIDDEN FOR..WELL, FOREVER
        //		destroyBtnDel = (Button)Instantiate (destroyBtn);
        //		destroyBtnDel.gameObject.transform.SetParent (myCanvas.gameObject.transform);
        //
        //		destroyBtnDel.GetComponentInChildren<Text> ().text = "";
        //		destroyBtnDel.transform.position = new Vector2 (buildBtnDel.transform.position.x, buildBtnDel.transform.position.y - 95);
        //		destroyBtnDel.image.rectTransform.sizeDelta = new Vector2 (75, 75);
        //		destroyBtnDel.onClick.AddListener (() => buildBtnClicked ());

        // === STRUCTURE BUTTONS === \\
        //Farm Button
        farmDelBtn = (Button)Instantiate (farmBtn);
        farmDelBtn.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        farmDelBtn.image.rectTransform.sizeDelta = new Vector2 (65, 65);
        farmDelBtn.transform.position = new Vector2 (buildBtnDel.transform.position.x - 67.5f, buildBtnDel.transform.position.y - 75.625f);
        farmDelBtn.onClick.AddListener (() => switchStructure ("farm"));
        farmDelBtn.gameObject.SetActive (false);

        //Water Station Button
        waterStationDelBtn = (Button)Instantiate (waterStationBtn);
        waterStationDelBtn.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        waterStationDelBtn.image.rectTransform.sizeDelta = new Vector2 (65, 65);
        waterStationDelBtn.transform.position = new Vector2 (farmDelBtn.transform.position.x + 70, farmDelBtn.transform.position.y);
        waterStationDelBtn.onClick.AddListener (() => switchStructure ("water"));
        waterStationDelBtn.gameObject.SetActive (false);

        //Power Station Button
        powerStationDelBtn = (Button)Instantiate (powerStationBtn);
        powerStationDelBtn.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        powerStationDelBtn.image.rectTransform.sizeDelta = new Vector2 (65, 65);
        powerStationDelBtn.transform.position = new Vector2 (waterStationDelBtn.transform.position.x + 70, farmDelBtn.transform.position.y);
        powerStationDelBtn.onClick.AddListener (() => switchStructure ("power"));
        powerStationDelBtn.gameObject.SetActive (false);

        //Shelter Button
        shelterDelBtn = (Button)Instantiate (shelterBtn);
        shelterDelBtn.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        shelterDelBtn.image.rectTransform.sizeDelta = new Vector2 (65, 65);
        shelterDelBtn.transform.position = new Vector2 (farmDelBtn.transform.position.x + 32.5f, farmDelBtn.transform.position.y - 70);
        shelterDelBtn.onClick.AddListener (() => switchStructure ("shelter"));
        shelterDelBtn.gameObject.SetActive (false);

        //Training Ground Button
        trainingGroundDelBtn = (Button)Instantiate (trainingGroundBtn);
        trainingGroundDelBtn.gameObject.transform.SetParent (myCanvas.gameObject.transform);

        trainingGroundDelBtn.image.rectTransform.sizeDelta = new Vector2 (65, 65);
        trainingGroundDelBtn.transform.position = new Vector2 (shelterDelBtn.transform.position.x + 70, shelterDelBtn.transform.position.y);
        trainingGroundDelBtn.onClick.AddListener (() => switchStructure ("training"));
        trainingGroundDelBtn.gameObject.SetActive (false);

        //Colours
        redValue = new Color (255 / 255f, 70 / 255f, 82 / 255f);
        whiteValue = new Color (244 / 255f, 244 / 255f, 244 / 255f);
        greenValue = new Color (115 / 255f, 255 / 255f, 149 / 255f);
    }
    // Use this for initialization
    void Awake()
    {
        myAgentSpawner = FindObjectOfType<AgentSpawner> ();
        notificationController = GameObject.Find ("NotificationController").GetComponent <NotificationController> ();

        population = new List<GameObject> ();

        unAssignedPopulation = new List<GameObject>();

        buildingDatabase = new List<GameObject> ();
        farmerList = new List<GameObject>();
        farmBuildingList = new List<GameObject>();

        powerWorkerList = new List<GameObject>();
        powerBuildingList = new List<GameObject>();

        waterWorkerList = new List<GameObject> ();
        waterBuildingList = new List<GameObject> ();

        traineeList = new List<GameObject> ();
        trainingBuildingList = new List<GameObject> ();

        loadLastSave ();

        if (firstLoad) {
            //
            scrap += 75;
            //Start the game with 100 power
            power += 0;

            //Start population with a 10 person cap
            popLimit = 10;

            waterAlerted = true;
            powerAlerted = true;
            foodAlerted = true;
        }

        for ( int x = 0; x < mapSize; x++){
            for( int y = 0; y < mapSize; y++){

            }
        }

        InvokeRepeating("updateGridGraph",3,10);
    }