示例#1
0
 public void Visualizza()
 {
     if (giocatoreDiturno == null)
     {
         giocatoreDiturno = GameObject.FindObjectOfType <StateController>().getGiocatoreAttivo();
     }
     if (Terreno != null)
     {
         this.GetComponentInChildren <Image>().GetComponentInChildren <Text>().text =
             Terreno.nomeCasella + "\n\nPREZZO : " + Terreno.costo + "\nPEDAGGIO : " + Terreno.pedaggio +
             "\nCON 1 CASA : " + Terreno.pedaggio1Casa + "\nCON 2 CASA : " + Terreno.pedaggio2Case +
             "\nCON 3 CASA : " + Terreno.pedaggio3Case + "\nCON 4 CASA : " + Terreno.pedaggio4Case +
             "\nCON ALBERGO : " + Terreno.pedaggioAlbergo + "\nCOSTO EDIFICIO : " + Terreno.costoEdificio;
     }
     else if (Societa != null)
     {
         this.GetComponentInChildren <Image>().GetComponentInChildren <Text>().text =
             Societa.nomeCasella + "\n\n" + "PREZZO : " + Societa.Costo;
     }
     else if (Stazione != null)
     {
         this.GetComponentInChildren <Image>().GetComponentInChildren <Text>().text =
             Stazione.nomeCasella + "\n\n" + "PREZZO : " + Stazione.Costo + "\nPEDAGGIO : " + Stazione.Pedaggio +
             "\nCON 2 STAZIONI : " + Stazione.Pedaggio2Stazioni + "\nCON 3 STAZIONI : " + Stazione.Pedaggio3Stazioni +
             "\nCON 4 STAZIONI : " + Stazione.Pedaggio4Stazioni;
     }
     giocatoreDiturno.controller.DisattivaPulsantiFineTurno();
     schermata.SetActive(true);
 }
    public override void Fermata(giocatore giocatoreDiTurno)
    {
        if (proprietario == null)
        {
            schermataAcquisto.Societa = this;
            schermataAcquisto.Visualizza();
        }
        else
        {
            int i = 0;
            foreach (Casella item in proprietario.proprieta)
            {
                if (item.name == "13" || item.name == "29")
                {
                    i++;
                }
            }

            if (i == 2)
            {
                giocatoreDiTurno.TrasferimentoDenaro(-10 * int.Parse(GameObject.Find("Risultato Dadi").GetComponent <Text>().text));
            }
            else
            {
                giocatoreDiTurno.TrasferimentoDenaro(-4 * int.Parse(GameObject.Find("Risultato Dadi").GetComponent <Text>().text));
            }

            giocatoreDiTurno.controller.AttivaPulsantiFineTurno();
        }
    }
示例#3
0
 public void PulsanteAnnulla()
 {
     giocatoreDiturno.controller.AttivaPulsantiFineTurno();
     this.giocatoreDiturno = null;
     this.Terreno          = null;
     this.Societa          = null;
     this.Stazione         = null;
     schermata.SetActive(false);
 }
示例#4
0
 public override void Fermata(giocatore giocatoreDiTurno)
 {
     i = UnityEngine.Random.Range(0, 16);
     if (carte[i] == null)
     {
         GameObject.FindObjectOfType <StateController>().Avviso("Non succede nulla", true);
     }
     carte[i].Effetto(giocatoreDiTurno);
     GameObject.FindObjectOfType <StateController>().Avviso(tipo + "\n\n" + carte[i].testo, carte[i].AttivaPulsanti);
 }
示例#5
0
    public void PulsanteAnnulla()
    {
        giocatoreDiturno.controller.AttivaPulsantiFineTurno();
        this.giocatoreDiturno = null;
        listaTerreni          = new List <Terreno>();
        terreno = null;
        colori  = new int[8];

        GameObject.Find("ScrollPulsanti").SetActiveRecursively(true);
        listaPulsanti = GameObject.Find("ScrollPulsanti").GetComponentsInChildren <Button>();

        for (int i = 0; i < listaPulsanti.Length; i++)
        {
            listaPulsanti[i].GetComponentInChildren <Text>().text = "PROPRIETÀ";
        }

        schermata.SetActive(false);
    }
 public override void Fermata(giocatore giocatoreDiTurno)
 {
     if (proprietario == null)
     {
         schermataAcquisto.Terreno = this;
         schermataAcquisto.Visualizza();
     }
     else
     {
         if (nEdifici == 0)
         {
             giocatoreDiTurno.TrasferimentoDenaro(-pedaggio);
             proprietario.TrasferimentoDenaro(pedaggio);
         }
         else if (nEdifici == 1)
         {
             giocatoreDiTurno.TrasferimentoDenaro(-pedaggio1Casa);
             proprietario.TrasferimentoDenaro(pedaggio1Casa);
         }
         else if (nEdifici == 2)
         {
             giocatoreDiTurno.TrasferimentoDenaro(-pedaggio2Case);
             proprietario.TrasferimentoDenaro(pedaggio2Case);
         }
         else if (nEdifici == 3)
         {
             giocatoreDiTurno.TrasferimentoDenaro(-pedaggio3Case);
             proprietario.TrasferimentoDenaro(pedaggio3Case);
         }
         else if (nEdifici == 4)
         {
             giocatoreDiTurno.TrasferimentoDenaro(-pedaggio4Case);
             proprietario.TrasferimentoDenaro(pedaggio4Case);
         }
         else if (nEdifici == 5)
         {
             giocatoreDiTurno.TrasferimentoDenaro(-pedaggioAlbergo);
             proprietario.TrasferimentoDenaro(pedaggioAlbergo);
         }
         giocatoreDiTurno.controller.Passa.interactable      = true;
         giocatoreDiTurno.controller.Costruisci.interactable = true;
         giocatoreDiTurno.controller.AttivaPulsantiFineTurno();
     }
 }
    public void Effetto(giocatore giocatoreDiTurno)
    {
        if (valore == 0 && movimento == 0)
        {
            giocatoreDiTurno.uscitaDiPrigione = true;
            GameObject.FindObjectOfType <StateController>().uscitaPrigione.SetActive(true);
            return;
        }

        giocatoreDiTurno.TrasferimentoDenaro(this.valore);

        if (movimento == -3)
        {
            giocatoreDiTurno.contatorePrigione = -2;
            movimento = int.Parse(giocatoreDiTurno.partenza.name) - 3;
            if (movimento <= 0)
            {
                movimento += 40;
            }
        }

        if (movimento != 0)
        {
            Casella[] caselle = GameObject.FindObjectsOfType <Casella>();
            Casella   casella = null;
            foreach (Casella item in caselle)
            {
                if (item.name == movimento.ToString())
                {
                    casella = item;
                }
            }
            if (casella.name == "11")
            {
                giocatoreDiTurno.contatorePrigione = 0;
            }

            giocatoreDiTurno.partenza = giocatoreDiTurno.Muovi(giocatoreDiTurno.partenza, casella);
        }
    }
    public void Randomizza()
    {
        if (Controller.IsDoneRolling)
        {
            return;
        }
        risultato = 0;

        int dado1, dado2;

        dado1        = UnityEngine.Random.Range(1, 7);
        dado2        = UnityEngine.Random.Range(1, 7);
        text[0].text = dado1.ToString();
        text[1].text = dado2.ToString();

        Controller.IsDoneRolling = true;

        risultato            = dado1 + dado2;
        text[2].text         = risultato.ToString();
        Controller.DiceTotal = risultato;

        giocatore giocatoreAttivo = Controller.getGiocatoreAttivo();

        if (giocatoreAttivo.contatorePrigione == -1)
        {
            if (dado1 == dado2)
            {
                Controller.Doppio++;
                Controller.Avviso("Tiro Doppio!\nQuando passi il turno puoi tirare di nuovo!\n\nFallo tre volte di seguito e finisci in prigione", false);
            }
            else
            {
                Controller.Doppio = 0;
            }
        }

        giocatoreAttivo.GetComponent <BoxCollider>().enabled = true;
        Controller.Tira.interactable = false;
        Controller.DisattivaPulsantiFineTurno();
    }
示例#9
0
    public override void Fermata(giocatore giocatoreDiTurno)
    {
        if (proprietario == null)
        {
            schermataAcquisto.Stazione = this;
            schermataAcquisto.Visualizza();
        }
        else
        {
            int nStazioni = 0;
            foreach (Casella item in proprietario.proprieta)
            {
                if (item.name == "6" || item.name == "16" || item.name == "26" || item.name == "36")
                {
                    nStazioni++;
                }
            }

            if (nStazioni == 1)
            {
                giocatoreDiTurno.TrasferimentoDenaro(-Pedaggio);
            }
            else if (nStazioni == 2)
            {
                giocatoreDiTurno.TrasferimentoDenaro(-Pedaggio2Stazioni);
            }
            else if (nStazioni == 3)
            {
                giocatoreDiTurno.TrasferimentoDenaro(-Pedaggio3Stazioni);
            }
            else if (nStazioni == 4)
            {
                giocatoreDiTurno.TrasferimentoDenaro(-Pedaggio4Stazioni);
            }

            giocatoreDiTurno.controller.AttivaPulsantiFineTurno();
        }
    }
    public void RimuoviGiocatore(giocatore giocatoreDaRimuovere)
    {
        if (giocatoreDaRimuovere == null)
        {
            return;
        }

        Terreno terreno;

        foreach (CasellaAcquistabile item in giocatoreDaRimuovere.proprieta)
        {
            terreno = item as Terreno;
            if (terreno != null)
            {
                terreno.RimuoviEdifici();
            }
            item.proprietario = null;
            item.CambioProprietario();
        }
        this.Avviso(giocatoreDaRimuovere.name + " È Stato eliminato", false);
        trattativa[CurrentPlayerId].interactable = false;
        trattativa[CurrentPlayerId] = null;
        Destroy(GameObject.Find(giocatoreDaRimuovere.name));
        this.Passa.interactable = true;

        if (GameObject.FindObjectsOfType <giocatore>().Length == 1)
        {
            this.Avviso("Partita Finita", false);
            GameObject.Find("TIRA").SetActive(false);
            GameObject.Find("PASSA").SetActive(false);
            GameObject.Find("COSTRUISCI").SetActive(false);
        }
        this.Doppio         = 0;
        this.IsDoneClicking = true;
        this.IsDoneRolling  = true;
        this.Passa.onClick.Invoke();
    }
 public override void Fermata(giocatore giocatoreDiTurno)
 {
     if (giocatoreDiTurno.contatorePrigione == -1)
     {
         giocatoreDiTurno.controller.AttivaPulsantiFineTurno();
     }
     else if (giocatoreDiTurno.contatorePrigione == 0)
     {
         giocatoreDiTurno.controller.AttivaPulsantiFineTurno();
         giocatoreDiTurno.contatorePrigione++;
     }
     else if (giocatoreDiTurno.contatorePrigione == 3)
     {
         giocatoreDiTurno.TrasferimentoDenaro(-125);
         giocatoreDiTurno.contatorePrigione = -1;
         controller.Avviso("Sono passati tre turni, hai pagato 125$ per uscire", false);
         controller.Tira.interactable = true;
     }
     else
     {
         giocatoreInPrigione = giocatoreDiTurno;
         this.abilitaSchermata();
     }
 }
示例#12
0
 public override void Fermata(giocatore giocatoreDiTurno)
 {
     GameObject.FindObjectOfType <StateController>().Avviso("Vai in prigione", false);
     giocatoreDiTurno.contatorePrigione = 0;
     giocatoreDiTurno.partenza          = giocatoreDiTurno.Muovi(giocatoreDiTurno.partenza, prigione);
 }
示例#13
0
 public virtual void Fermata(giocatore giocatoreDiTurno)
 {
     giocatoreDiTurno.controller.AttivaPulsantiFineTurno();
 }
示例#14
0
 public override void Fermata(giocatore giocatoreDiTurno)
 {
     giocatoreDiTurno.TrasferimentoDenaro(-valoreTassa);
     giocatoreDiTurno.controller.AttivaPulsantiFineTurno();
 }
示例#15
0
    public void Visualizza()
    {
        giocatoreDiturno = GameObject.FindObjectOfType <StateController>().getGiocatoreAttivo();

        foreach (CasellaAcquistabile item in giocatoreDiturno.proprieta)
        {
            if (item.nomeCasella == "TERAMO" || item.nomeCasella == "SANREMO")
            {
                colori[0]++;
            }
            else if (item.nomeCasella == "L'AQUILA" || item.nomeCasella == "TRANI" || item.nomeCasella == "TORINO")
            {
                colori[1]++;
            }
            else if (item.nomeCasella == "COSENZA" || item.nomeCasella == "MILANO" || item.nomeCasella == "VIAREGGIO")
            {
                colori[2]++;
            }
            else if (item.nomeCasella == "TERNI" || item.nomeCasella == "MESSINA" || item.nomeCasella == "FOGGIA")
            {
                colori[3]++;
            }
            else if (item.nomeCasella == "CASERTA" || item.nomeCasella == "BRINDISI" || item.nomeCasella == "ISCHIA")
            {
                colori[4]++;
            }
            else if (item.nomeCasella == "MONOPOLI" || item.nomeCasella == "ASCOLI PICENO" || item.nomeCasella == "ISOLA D'ELBA")
            {
                colori[5]++;
            }
            else if (item.nomeCasella == "ANDRIA" || item.nomeCasella == "BARLETTA" || item.nomeCasella == "CATANZARO")
            {
                colori[6]++;
            }
            else if (item.nomeCasella == "REGGIO CALABRIA" || item.nomeCasella == "CHIETI")
            {
                colori[7]++;
            }
        }

        foreach (CasellaAcquistabile item in giocatoreDiturno.proprieta)
        {
            if (colori[0] == 2 && (item.nomeCasella == "TERAMO" || item.nomeCasella == "SANREMO"))
            {
                listaTerreni.Add(item as Terreno);
            }
            else if (colori[1] == 3 && (item.nomeCasella == "L'AQUILA" || item.nomeCasella == "TRANI" || item.nomeCasella == "TORINO"))
            {
                listaTerreni.Add(item as Terreno);
            }
            else if (colori[2] == 3 && (item.nomeCasella == "COSENZA" || item.nomeCasella == "MILANO" || item.nomeCasella == "VIAREGGIO"))
            {
                listaTerreni.Add(item as Terreno);
            }
            else if (colori[3] == 3 && (item.nomeCasella == "TERNI" || item.nomeCasella == "MESSINA" || item.nomeCasella == "FOGGIA"))
            {
                listaTerreni.Add(item as Terreno);
            }
            else if (colori[4] == 3 && (item.nomeCasella == "CASERTA" || item.nomeCasella == "BRINDISI" || item.nomeCasella == "ISCHIA"))
            {
                listaTerreni.Add(item as Terreno);
            }
            else if (colori[5] == 3 && (item.nomeCasella == "MONOPOLI" || item.nomeCasella == "ASCOLI PICENO" || item.nomeCasella == "ISOLA D'ELBA"))
            {
                listaTerreni.Add(item as Terreno);
            }
            else if (colori[6] == 3 && (item.nomeCasella == "ANDRIA" || item.nomeCasella == "BARLETTA" || item.nomeCasella == "CATANZARO"))
            {
                listaTerreni.Add(item as Terreno);
            }
            else if (colori[7] == 2 && (item.nomeCasella == "REGGIO CALABRIA" || item.nomeCasella == "CHIETI"))
            {
                listaTerreni.Add(item as Terreno);
            }
        }

        giocatoreDiturno.controller.DisattivaPulsantiFineTurno();
        schermata.SetActive(true);

        listaPulsanti = GameObject.Find("ScrollPulsanti").GetComponentsInChildren <Button>();
        for (int i = listaPulsanti.Length - 1; i >= listaTerreni.Count; i--)
        {
            listaPulsanti[i].gameObject.SetActive(false);
        }

        Terreno[] supporto = listaTerreni.ToArray();
        for (int i = 0; i < supporto.Length; i++)
        {
            listaPulsanti[i].GetComponentInChildren <Text>().text = supporto[i].nomeCasella;
        }

        int altezza = listaTerreni.Count * 55 - 5;

        GameObject.Find("ScrollPulsanti").GetComponent <RectTransform>().sizeDelta = new Vector2(0, altezza);
    }