Ejemplo n.º 1
0
 void SpawnCitizens(int amount, Transform spawnPointsRoot, GameObject prefab)
 {
     for (int i = 0; i < amount; i++)
     {
         StartCoroutine(waitThenCallback(Random.Range(minSpawnDelay, maxSpawnDelay), () =>
         {
             Transform spawnPoint = spawnPointsRoot.GetChild(Random.Range(0, spawnPointsRoot.childCount - 1));
             Citizen citizen      = GameObject.Instantiate(prefab, spawnPoint.position, Quaternion.identity).GetComponent <Citizen>();
             citizen.OnDeath     += OnCitizenDied;
             OnSpook += citizen.OnSpooked;
         }));
     }
 }
Ejemplo n.º 2
0
 void Start()
 {
     GUIScript = gui.GetComponent <GameUI>();
     GameObject[] citizenObjects = GameObject.FindGameObjectsWithTag("CitizenP");
     for (int i = 0; i < citizenObjects.Length; i++)
     {
         Citizen citizen = citizenObjects[i].transform.root.gameObject.GetComponent <Citizen>();
         if (citizen == null)
         {
             continue;
         }
         citizen.OnDeath += OnCitizenDied;
         if (citizen.Type != Citizen.CitizenType.Attacker)
         {
             OnSpook += citizen.OnSpooked;
         }
     }
 }