public void PlatziereSchiff(int schiffGroesse, Schiffsausrichtung ausrichtung, int reihenIndex, int spaltenIndex) { var koordinaten = BerechneSchiffskoordinaten(schiffGroesse, ausrichtung, reihenIndex, spaltenIndex); if (IsKoordinatenAußerhalbDesSpielfelds(koordinaten)) { throw new Exception("Die Koordinaten liegen außerhalb des Spielfelds."); } else if (IsSchiffBereitsVorhanden(koordinaten)) { throw new Exception("Auf den gewählten Koordinaten ist bereits ein Schiff vorhanden."); } else { foreach (var koordinate in koordinaten) { int reihenKoordinate = koordinate.ZeilenKoordinate; int spaltenKoordinate = koordinate.SpaltenKoordinate; _felder[reihenKoordinate, spaltenKoordinate] = new Feld() { IsGesetzt = true }; } } }
private Feld[,] _felder; //Firmenkonvention: Private Klasseninstanzen mit _ !!! public Spielfeld(int reihenAnzahl, int spaltenAnzahl) //Konstruktor der Klasse Spielfeld: { _felder = new Feld[reihenAnzahl, spaltenAnzahl]; for (int i = 0; i < _felder.GetLength(0); i++) { for (int u = 0; u < _felder.GetLength(1); u++) { _felder[i, u] = new Feld(); } } }