예제 #1
0
    public void TowerChoice(int NumeroTorre)
    {
        int price          = Torri[NumeroTorre].GetComponent <Turret_LookAtRobot>().turretStats.priceToBuy;                      //estrae il costo della torretta che si vuole costruire
        int moneyPossessed = GameObject.Find("GameManager").GetComponent <GoldManager>().money;                                  //controlla quanti soldi ha il giocatore

        if (moneyPossessed >= price)                                                                                             //se il giocatore ha abbastanza soldi per poter comprare...
        {
            if (pStatus.turretOnTop == false)                                                                                    //controlla che la piattaforma non sia occupata
            {
                GameObject NewTower = (Instantiate(Torri[NumeroTorre], SpawnPoint.position, Quaternion.identity)) as GameObject; //crea la torre scelta nello spawnPoint che hai cliccato
                Build_Panel.SetActive(false);                                                                                    //chiudi il pannello Build
                pStatus.changePlatformStatus(NewTower);                                                                          //imposta lo stato della piattaforma su "occupato"
                repairScript.addTorretta(NewTower);                                                                              //aggiungi la torretta alla lista delle torrette nel livello
                NewTower.GetComponent <Turret_HealthBar>().SetPlatform(TempTarget);                                              //assegna la base di provenienza alla torretta


                //sottrai i soldi
                GameObject.Find("GameManager").GetComponent <GoldManager>().ChangeMoney(-price);//trova il GameManager,prendi il component GoldManager e chiama il comando per cambiare i soldi(ChangeMoney)
            }
        }
        else
        {
            if (!Povero_Panel.activeInHierarchy)    //se il pannello di avviso non è già visibile...
            {
                //Debug.Log("Sei povero");
                Povero_Panel.SetActive(true);       //...fai apparire il pannello di avviso
            }
        }
    }
예제 #2
0
    public void CreateRubble(GameObject piattaforma)
    {
        pStatus    = piattaforma.GetComponent <Platform_Status>();
        SpawnPoint = piattaforma.transform.Find("SpawnPoint");   //trova il transform del figlio della piattaforma, purchè sia chiamato "SpawnPoint"


        repairScript.removeTorretta(pStatus.turretOnTop);   //rimuovi la torretta attuale alla lista delle torrette nel livello
        GameObject NewRubble = (Instantiate(rovine, SpawnPoint.transform.position, Quaternion.identity)) as GameObject;

        pStatus.changePlatformStatus(NewRubble); //aggiorna la piattaforma
        //DA AGGIUNGERE: inserimento dati della torre distrutta all'interno della rovina
        Debug.Log("Rovina creata");
    }