/// <summary> /// Funkcja, która dodaje pola zajęte stanowiące statek do planszy. /// </summary> /// <param name="r">Rząd</param> /// <param name="k">Kolumna</param> /// <param name="kierunek">Kierunek budowania statku</param> /// <param name="statek">Statek do wybudowania</param> private void BudujStatek(int r, int k, Kierunki kierunek, L_Statek statek) { if (kierunek == Kierunki.Lewo) { for (int i = 0; i < statek.IloscPol; i++) { L_Pole nowePole = new L_PoleZajete(statek.ID); _polaPlanszy[r, k - i] = nowePole; statek.DodajPole(nowePole); } } else if (kierunek == Kierunki.Gora) { for (int i = 0; i < statek.IloscPol; i++) { L_Pole nowePole = new L_PoleZajete(statek.ID); _polaPlanszy[r - i, k] = nowePole; statek.DodajPole(nowePole); } } else if (kierunek == Kierunki.Prawo) { for (int i = 0; i < statek.IloscPol; i++) { L_Pole nowePole = new L_PoleZajete(statek.ID); _polaPlanszy[r, k + i] = nowePole; statek.DodajPole(nowePole); } } else if (kierunek == Kierunki.Dol) { for (int i = 0; i < statek.IloscPol; i++) { L_Pole nowePole = new L_PoleZajete(statek.ID); _polaPlanszy[r + i, k] = nowePole; statek.DodajPole(nowePole); } } }