Ejemplo n.º 1
0
 /* Metodo che aggiorna il giocatore attivo */
 public void aggiornaGiocatoreDiTurno()
 {
     int index = giocatori.IndexOf(giocatoreDiTurno);
     index = (index + 1) % giocatori.Count;
     giocatoreDiTurno = giocatori[index];
     giocatoreDiTurno.Init();
 }
Ejemplo n.º 2
0
        // Aggiunge giocatori fino ad arrivare ad int numGiocatori
        //Costruttore implicito dei giocatori
        public void creaGiocatori(int numGiocatori)
        {
            if (numGiocatori < 1 || numGiocatori > 4) throw new Exception();

            while (giocatori.Count < numGiocatori)
            {
                giocatori.Add(new Giocatore());
            }

            giocatoreDiTurno = giocatori[0];
        }
Ejemplo n.º 3
0
        public GestoreDiGiocatori()
        {
            giocatoreDiTurno = null;
            giocatori = new List<Giocatore>();

            //Definizione dei colori dei giocatore
            QuantumColor.Add(e_color.Blu, Color.Blue);
            QuantumColor.Add(e_color.Rosso, Color.Red);
            QuantumColor.Add(e_color.Giallo, Color.Yellow);
            QuantumColor.Add(e_color.Verde, Color.Green);
        }
Ejemplo n.º 4
0
 // L'azione di colonizzazione vera e propria
 public bool Colonizza(Giocatore plyr)
 {
     if (plyr.PuòColonizzare && this.Colonizzabile(plyr.Colore))
     {
         // Da togliere il check sulla condizione Colonizzabile? (lo fa il programma prima?)
         for (int i = 0; i < _colonizzazioni.Length - 1; i++)
         {
             if (_colonizzazioni[i] == 0)
             {
                 _colonizzazioni[i] = plyr.Colore;
                 plyr.Azione(true);                 // Toglie 2 azioni al giocatore
                 return true;
             }
         }
     }
     return false;
 }
Ejemplo n.º 5
0
 public Nave(Giocatore proprietario)
 {
     _proprietario = proprietario;
     _ingioco = _mossa = _special = _riconfigurata = false;
     _tipo = e_nave.Rottame;
 }
Ejemplo n.º 6
0
 //True se la nave è del colore del giocatore argomento
 public bool Alleato(Giocatore player)
 {
     return (_proprietario.Colore == player.Colore);
 }
Ejemplo n.º 7
0
 public virtual bool PresenzaAlleata(Giocatore giocatore)
 {
     return false;
 }
Ejemplo n.º 8
0
        /// <summary>Determina se il giocatore argomento può colonizzare il pianeta.</summary>
        public bool Colonizzabile(Giocatore player)
        {
            int punteggio = 0;
            e_color colore = player.Colore;
            bool spazio = _colonizzazioni.Any(x => x == 0) && !_colonizzazioni.Any(x => x == colore);

            foreach (Tile t in this.TileAdiacenti(false, false))
                if (t?.PresenzaAlleata(player) == true)
                {
                    var c = (Casella)t;
                    punteggio += c.Occupante.Pwr;
                }
            System.Diagnostics.Debug.WriteLine(punteggio);
            if (spazio && punteggio == (int)this.Tipo) return true;
            else return false;
        }
Ejemplo n.º 9
0
 /// <summary> Restituisce True se sul pianeta c'è una mentina del giocatore argomento</summary>
 public override bool PresenzaAlleata(Giocatore player)
 {
     return _colonizzazioni.Any(c => c == player.Colore);
 }
Ejemplo n.º 10
0
 public override bool PresenzaAlleata(Giocatore giocatore)
 {
     return (_occupante != null && _occupante.Colore == giocatore.Colore);
 }