예제 #1
0
    public void Update()
    {
        //Dictionary<AnimalSpawnTile, int> toBeUpdated = new Dictionary<AnimalSpawnTile, int>();

        foreach (var pair in animalsSpawned.ToList())
        {
            var spawnTile  = pair.Key;
            var numSpawned = pair.Value;

            var animal = spawnTile.prefab;
            if (animal != null)
            {
                if (numSpawned < 1)
                {
                    var random = UnityEngine.Random.Range(0, 100);
                    if (random == 0)
                    {
                        var newAnimal = Instantiate(animal, unitManager.unitParent);
                        newAnimal.position  = spawnTile.position;
                        newAnimal.spawnTile = spawnTile;

                        animals.Add(newAnimal);

                        unitManager.AddUnit(newAnimal);

                        animalsSpawned[spawnTile] = numSpawned + 1;
                    }
                }
            }
        }
    }
예제 #2
0
    void Load(InteractableSpawnTile save)
    {
        if (save.prefab != null)
        {
            var newInteractable = Instantiate(save.prefab, unitManager.unitParent);
            newInteractable.position = save.position;

            interactables.Add(save.position, newInteractable);

            unitManager.AddUnit(newInteractable);
        }
    }