// pop-up do wyboru ciosu, przyjmuje listę ciosów bohatera public void okienkoWyboruCiosu(Cios[] listaCiosow, int zaznaczonaOpcja) { const int x = 16; const int y = 6; const int w = 24; Wyswietlanie.prostokat(x, y, w, listaCiosow.Length * 2 + 3); int temp, temp2 = x + w; var kolor = ConsoleColor.White; for (int i = 0; i <= listaCiosow.Length; i++) { temp = y + 1 + i * 2; if (i == zaznaczonaOpcja) { kolor = ConsoleColor.Blue; } if (i < listaCiosow.Length) { Wyswietlanie.pisz(listaCiosow[i].pobierzNazwe(), kolor, x + 1, temp); Wyswietlanie.pisz(listaCiosow[i].pobierzKoszt().ToString(), ConsoleColor.Yellow, temp2 - 6, temp); Wyswietlanie.pisz(listaCiosow[i].pobierzObrazenia().ToString(), ConsoleColor.Red, temp2 - 3, temp); } else { Wyswietlanie.pisz("Powrot", kolor, x + 1, temp); } if (i == zaznaczonaOpcja) { kolor = ConsoleColor.White; } } }
public static void okienko(string tytul, int x, int y, int width, int height) { Wyswietlanie.wyczyscPole(x, y, width, height); var offset = (width - tytul.Length) / 2; Wyswietlanie.prostokat(x, y, width, height); Wyswietlanie.gotoXY(x + offset, y + 1); Console.Write(tytul); Wyswietlanie.gotoXY(x, y + 2); Wyswietlanie.rozdzielacz(width, false); }
// górny pasek statusu wyświetlający informacje o bohaterze // przyjmuje StatusPostaci public void pasekStatusu(StatusPostaci status) { // TODO: dodatkowe atrybuty przekazywać przez jakiś struct this.info(); Wyswietlanie.prostokat(0, 0, 120, 3); Wyswietlanie.wyczyscPole(1, 1, 118, 1); string tekst = $"Sila:{status.sila}, Pancerz:{status.pancerz}, "; tekst += $"Poziom:{status.poziom}, Doswiadczenie:{status.doswiadczenie}/1000, "; tekst += $"Pkt. Zdol:{status.punktyZdolnosci}, Pieniadze:{status.pieniadze}g"; Wyswietlanie.pisz($"Zycie:{status.zycie}, ", ConsoleColor.Red, 2, 1); Wyswietlanie.pisz($"Wytrzymalosc:{status.wytrzymalosc}, ", ConsoleColor.Yellow); Wyswietlanie.pisz(tekst, ConsoleColor.White); }
// pop-up do wyboru obrony public void okienkoWyboruObrony(int zaznaczonaOpcja) { const int x = 16; const int y = 6; const int w = 16; Wyswietlanie.prostokat(x, y, w, 7); int temp, temp2 = x + w - 3; var kolor = ConsoleColor.White; for (int i = 0; i < opcjeObrony.Length; i++) { temp = y + 1 + (i * 2); if (i == zaznaczonaOpcja) { kolor = ConsoleColor.Blue; } Wyswietlanie.pisz(this.opcjeObrony[i], kolor, x + 1, temp); switch (this.opcjeObrony[i]) { case "Normalna": Wyswietlanie.pisz(SilaObrony.kosztNormalna.ToString(), ConsoleColor.Yellow, temp2, temp); break; case "Mocna": Wyswietlanie.pisz(SilaObrony.kosztMocna.ToString(), ConsoleColor.Yellow, temp2, temp); break; } if (i == zaznaczonaOpcja) { kolor = ConsoleColor.White; } } }
// wyświetlanie informacji o grupie pod ekranem gry public void info() { Wyswietlanie.prostokat(0, 33, 23, 3); Wyswietlanie.pisz("Grupa 12, INIS2_3.1", ConsoleColor.White, 2, 34); }