示例#1
0
    public bool AddTower(Tower tower)
    {
        if (IsFull())
        {
            return(false);
        }
        Tower    t          = Instantiate(tower);
        TowerSet towerToUse = new TowerSet();

        towerToUse.tower = t;
        //towerToUse.realTower = towerObj;
        spawnedTowers.Add(towerToUse);
        return(true);
    }
示例#2
0
    /*public bool RemoveTower(Tower tower) { shouldnt be necessary
     *  if (spawnedTowers.Remove(tower)) {
     *      Destroy(tower);
     *      return true;
     *  }
     *  return false;
     * }*/

    public List <TowerSet> SaveTower(GameObject towerToSave)
    {
        for (int i = spawnedTowers.Count - 1; i >= 0; i--)
        {
            TowerSet tower = spawnedTowers[i];
            if (towerToSave != null && towerToSave != spawnedTowers[i].realTower)
            {
                //Instantiate(wall, spawnedTowers[i].realTower.transform.position, Quaternion.identity);
                if (spawnedTowers[i].realTower != null)
                {
                    spawnedTowers[i].realTower.gameObject.GetComponent <Animator>().SetTrigger("Despawn");
                    // Destroy(spawnedTowers[i].realTower.gameObject);
                }

                spawnedTowers.Remove(spawnedTowers[i]);
            }
        }
        return(spawnedTowers);
    }