// Costruttore della classe public Giocatore(string nome) { this.Nome = nome; // inizializzato le navi, non ha molta differenza dagli array this.ListaNavi = new List <Nave>(10) { new Portaerei("Portaerei"), new Incrociatore("Incrociatore_1"), new Incrociatore("Incrociatore_2"), new Torpediniere("Torpediniere_1"), new Torpediniere("Torpediniere_2"), new Torpediniere("Torpediniere_3"), new Sottomarino("Sottomarino_1"), new Sottomarino("Sottomarino_2"), new Sottomarino("Sottomarino_3"), new Sottomarino("Sottomarino_4") }; this.MioCampo = new CampoDaGioco(10); }
// Metodo per sparare nel campo dell'avversario public bool FaccioFuoco(Casella bersaglio, CampoDaGioco campoNemico) { bool colpito = false; // stati della casella: libera, occupata, mancata, colpita // Controllo che nella casella bersaglio sia presente una nave if (campoNemico.Casella[bersaglio.Riga, bersaglio.Colonna].StatoCasella == Stato.occupata) { colpito = true; // cambio lo stato della casella in modo che non possa essere più colpita campoNemico.Casella[bersaglio.Riga, bersaglio.Colonna].StatoCasella = Stato.colpita; campoNemico.Casella[bersaglio.Riga, bersaglio.Colonna].SimboloCasella = 'O'; } else { // anche se non è stata colpita nessuna nave devo cambiare lo stato della casella campoNemico.Casella[bersaglio.Riga, bersaglio.Colonna].StatoCasella = Stato.mancata; campoNemico.Casella[bersaglio.Riga, bersaglio.Colonna].SimboloCasella = 'X'; } return(colpito); }