Untitled
unknown
plain_text
7 months ago
22 kB
2
Indexable
Never
using System; using System.Collections.Generic; namespace GRA_LOWCAPOTWOROW { public class Gra { int lvl; int dmg; int zycie; string imie; string lokalizacja; string ekwipunek; int dmg_w; int zycie_w; public int[] odwiedzone_lokalizacje = new int[3]; public void Imie(string imie) { this.imie = imie; } public Gra() //konstruktor { lvl = 1; dmg = 5; zycie = 10; lokalizacja = "Senna Kotlina - START"; dmg_w = 7; zycie_w = 8; } public void Wilkolak(int dmg_w, int zycie_w) { this.dmg_w = dmg_w; this.zycie_w = zycie_w; } public void Statystyki_W(int zycie_w, int dmg_w) { Console.ForegroundColor = ConsoleColor.Blue; Console.WriteLine("----------------------------------------------------------------"); Console.WriteLine(" STATYSTYKI WILKOŁAKA"); string statystyki_w = $" \n Punkty życia Wilkołaka: {zycie}, \n Punkty walki Wilkołaka: {dmg}"; //łańcuch interpolowany Console.WriteLine(statystyki_w); Console.WriteLine("----------------------------------------------------------------"); Console.ResetColor(); } public void Ekwipunek(string ekwipunek) { this.ekwipunek = ekwipunek; } public void Lokalizacja(string lokalizacja) { this.lokalizacja = lokalizacja; } public void Statystyki(int lvl, int zycie, int dmg, string lokalizacja, string ekwipunek) { Console.WriteLine("----------------------------------------------------------------"); Console.WriteLine(" STATYSTYKI"); string statystyki = $" \n Twój poziom gry: {lvl}, \n Twoje punkty życia: {zycie}, \n Twoje punkty walki: {dmg}, \n Twoja aktualna lokalizacja: {lokalizacja}, \n Zawartość Twojego plecaka: {ekwipunek}"; //łańcuch interpolowany Console.WriteLine(statystyki); Console.WriteLine("----------------------------------------------------------------"); } public void Dialog(string postac, string kwestia) { ConsoleColor kolor; if (postac == "Wiesniak1") { kolor = ConsoleColor.Blue; } else if (postac == "Baba") { kolor = ConsoleColor.Red; } else { kolor = ConsoleColor.Green; } Console.ForegroundColor = kolor; Console.WriteLine(postac + ": " + kwestia); Console.ResetColor(); } public void Las(Gra settings) { odwiedzone_lokalizacje [0] = 1; Console.WriteLine("Znalazł_ś się w lesie! Las jest obfity w leśne przysmaki, jako specjalny prezent otrzymujesz tojad!"); if (ekwipunek.Contains("pusty")) ekwipunek = "tojad, "; else ekwipunek += "tojad, "; Console.WriteLine("Zawartość Twojego plecaka: " + settings.ekwipunek); ekwipunek += "ząb, "; Console.WriteLine("Zawartość Twojego plecaka: " + settings.ekwipunek); Console.WriteLine("Rozwinięcie"); settings.Dialog("Wiesniak1", "Cześć, jak się masz?"); settings.Dialog("Baba", "Witaj! Mam się świetnie."); settings.Dialog("Wilk", "Siema skurwysyny"); Console.WriteLine("Wiesniak daje Ci wskazowke ukryta w wierszu, musisz to rozwiazac. Podaj poprawną odpowiedz"); string zagadka1 = Console.ReadLine().ToLower(); int licznik = 3; for (int i = 1; i <= 3; i++) { if (zagadka1 == "dobra") { Console.WriteLine("Super {0}, pokonał_ś zagadkę wiesniora, wchodzisz na nowy level", imie); lvl++; settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); settings.WalkazWilkiem(settings); i = 3; } else { Console.WriteLine("Odpowiedział_ś źle! Twoje pozostałe próby: {0}", licznik); licznik--; zagadka1 = Convert.ToString(Console.ReadLine()); if (licznik < 1) { Console.WriteLine("Niestety {0}, tym razem się nie udało, tracisz 2 punkty walki", imie); dmg = dmg - 2; settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); Console.WriteLine("Pomimo to, nie poddawaj się!! Musimy ruszać dalej!"); settings.WalkazWilkiem(settings); } } } } public void WalkazWilkiem(Gra settings) { Console.WriteLine("BLA BLA BLA"); Console.WriteLine("zaczynamy fame mma"); //settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); //gracz.Statystyki_w(gracz.zycie_w, gracz.dmg_w); if (ekwipunek.Contains("tojad")) { Console.WriteLine("Możesz pozbyć się wilkołaka bez walki, bo posiadasz tojad"); settings.zycie_w = 0; ekwipunek = ekwipunek.Replace("tojad, ", ""); if (String.IsNullOrEmpty(ekwipunek)) { Console.WriteLine("Twój plecak jest pusty"); } settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); settings.Statystyki_W(settings.zycie_w, settings.dmg_w); Console.WriteLine("W nagrode dostajesz: "); WyborLokalizacji(settings); } else { Console.WriteLine("Musisz stoczyć walkę z wilkołakiem, klikaj spację, by pozbawić go punktów życia"); while (zycie_w > 0 && zycie > 0 && dmg > 0 || dmg_w > 0) { ConsoleKeyInfo keyInfo = Console.ReadKey(true); if (keyInfo.Key == ConsoleKey.Spacebar) { if (dmg > 0) { zycie_w--; dmg--; Console.WriteLine("Zadajesz obrażenia wilkołakowi! Pozostałe punkty życia wilkołaka: " + zycie_w); } if (dmg_w > 0) { zycie--; dmg_w--; Console.WriteLine("Wilkołak zadał Ci obrażenia! Twoje pozostałe punkty życia: " + zycie); } } } if (zycie_w <= 0 && zycie > 0) { Console.WriteLine("Wilkołak stracił wszystkie punkty życia!"); settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); settings.Statystyki_W(settings.zycie_w, settings.dmg_w); Console.WriteLine("W nagrode dostajesz: "); WyborLokalizacji(settings); } else if (zycie_w > 0 && zycie <= 0) { Console.WriteLine("Wilkołak Cię pokonał! Wilkołak ma jeszcze punkty walki, a Ty nie masz życia!"); settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); settings.Statystyki_W(settings.zycie_w, settings.dmg_w); Console.WriteLine("Nie udało Ci się go pokonać, spadasz na niższy lvl. Ruszaj w dalszą podróż!"); WyborLokalizacji(settings); } else if (zycie_w >= 0 && zycie >= 0) { Console.WriteLine("Nikt nie wygrał"); Console.WriteLine("Wiesniak przychodzi i daje znowu zagadke i moze tym razem pokonasz wilkołaka"); WyborLokalizacji(settings); } } } public void Gory(Gra settings) { odwiedzone_lokalizacje[1] = 2; Console.WriteLine("Witamy w górach!"); Console.WriteLine("Wyczerpany podróżą, chcesz zebrać coś do żarcia u podnóża gór. \n Masz do wyboru: \n 1 - wilczełyko, \n 2 - borówka czernica, \n 3 - pokrzyk wilcza jagoda"); double wybor3; bool dobrywybor3 = false; while (!dobrywybor3) { ConsoleKeyInfo keyInfo = Console.ReadKey(); Console.WriteLine(); if (Char.IsDigit(keyInfo.KeyChar)) { wybor3 = double.Parse(keyInfo.KeyChar.ToString()); if (wybor3 == 1) { Console.WriteLine("Wybrał_ś wilczełyko " + imie); if (ekwipunek.Contains("pusty")) ekwipunek = "wilczełyko, "; else ekwipunek += "wilczełyko, "; //trujące dobrywybor3 = true; } else if (wybor3 == 2) { Console.WriteLine("Wybrał_ś borówkę czernicę " + imie); if (ekwipunek.Contains("pusty")) ekwipunek = "borówka czernica, "; else ekwipunek += "borówka czernica, "; //zjadliwa dobrywybor3 = true; } else if (wybor3 == 3) { Console.WriteLine("Wybrał_ś wilczą jagodę " + imie); if (ekwipunek.Contains("pusty")) ekwipunek = "wilcza jagoda, "; else ekwipunek += "wilcza jagoda, "; //trująca dobrywybor3 = true; } else { Console.WriteLine("Dokonałeś złego wyboru! Wybierz poprawną liczbę, aby przejść dalej:"); } } else { Console.WriteLine("Dokonałeś złego wyboru! Wybierz poprawną liczbę, aby przejść dalej:"); } } Console.WriteLine("Zachowaj swoją zdobycz na później, myślę, że może Ci się przydać!"); Console.WriteLine("Podsłuchujesz rozmowę"); settings.Dialog("Wiesniak1", "Słyszałaś, że w górach grasuje jakiś potwór?"); settings.Dialog("Baba", "Nie"); settings.Dialog("Yeti", "Siema skurwysyny"); Console.WriteLine("Postanawiasz ruszać w prawo BLABLABLA po drodze spotykasz głodne dziecko, które prosi Cię o jedzenie"); if (ekwipunek.Contains("borówka czernica")) { Console.WriteLine("Super, dziecko żyje i zjadło borówki od Ciebie, wskakujesz na wyższy lvl"); settings.lvl++; ekwipunek = ekwipunek.Replace("borówka czernica, ", ""); } else { Console.WriteLine("Masz dzieciaka na sumieniu, spadasz o lvl niżej"); settings.lvl--; if (ekwipunek.Contains("wilczełyko")) ekwipunek = ekwipunek.Replace("wilczełyko, ", ""); if (ekwipunek.Contains("wilcza jagoda")) ekwipunek = ekwipunek.Replace("wilcza jagoda, ", ""); } Console.WriteLine("Wspinasz się wyżej i znajdujesz jakąś jaskinię czy coś, wchodzisz do środka? Naciśnij ENTER, jeśli tak"); ConsoleKeyInfo przycisk = Console.ReadKey(true); if (przycisk.Key == ConsoleKey.Enter) { Console.WriteLine("Spotykasz Yeti"); //jakaś zagadka do pokonania Yeti WyborLokalizacji(settings); } else { Console.WriteLine("Pizda jesteś, w takim razie spadasz o lvl i zabieramy Ci wszystkie zdobycze z plecaka"); settings.lvl--; ekwipunek = "Twój plecak jest pusty!"; settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); WyborLokalizacji(settings); } } public void WyborLokalizacji(Gra settings) { Console.WriteLine("Twoja ostatnia lokalizacja: " + lokalizacja); Console.WriteLine("Pora na kolejną przygodę, wybierz jedną z pozostałych lokalizacji, w których nie byłeś!!"); //chyba ze chce zakonczyc gre int licznik_lokalizacji = 0; for (int i = 0; i < odwiedzone_lokalizacje.Length; i++) { if (odwiedzone_lokalizacje[i] == 1) licznik_lokalizacji++; else if (odwiedzone_lokalizacje[i] == 2) licznik_lokalizacji = licznik_lokalizacji + 7; else if (odwiedzone_lokalizacje[i] == 3) licznik_lokalizacji = licznik_lokalizacji + 2; } switch (licznik_lokalizacji) { case 0: Console.WriteLine("Jeszcze nigdzie nie byłeś!!"); break; case 1: Console.WriteLine("Byłeś tylko w lesie.\n Wybierz: \n 2 - jeśli bliskie Ci wspinaczki górskie \n 3 - jeśli uspokaja Cię szum fal"); double wybor2 = Convert.ToDouble(Console.ReadLine()); //tzreba dać warunke jak się poda zły znak to, żeby kodu nie wywalało bool dobrywybor2 = false; while (!dobrywybor2) { if (wybor2 == 2) { Console.WriteLine("Wybrałeś wspinaczki górskie. Przed Tobą kolejne wyzwanie! " + imie); lokalizacja = "góry"; settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); settings.Gory(settings); dobrywybor2 = true; } else if (wybor2 == 3) { Console.WriteLine("Wybrałeś szum fal. Przed Tobą kolejne wyzwanie! " + imie); lokalizacja = "morze"; settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); dobrywybor2 = true; } else { Console.WriteLine("Dokonałeś złego wyboru! Wybierz poprawną liczbę, aby przejść dalej:"); wybor2 = Convert.ToDouble(Console.ReadLine()); } } return; case 2: Console.WriteLine("Byłeś tylko nad morzem"); break; case 3: Console.WriteLine("Byłeś nad morzem i w lesie"); break; case 7: Console.WriteLine("Byłeś tylko w górach"); //PrzeniesDoInnejLokalizacji(gracz); return; case 8: Console.WriteLine("Byłeś w lesie i w górach"); break; case 9: Console.WriteLine("Byłeś nad morzem i w górach"); break; case 10: Console.WriteLine("Byłeś już wszędzie!!!"); break; } } public void Wybor1(Gra settings) { Console.WriteLine("Stajesz przed swoim pierwszym poważnym wyborem. \n Przed Tobą rozciągają się trzy ścieżki. \n BLABLABLA Wybierz tą, którą podpowiada Ci serce: "); Console.WriteLine("Wybierz: \n 1 - jeśli chcesz podążać mroczną leśną ścieżką \n 2 - jeśli bliskie Ci wspinaczki górskie \n 3 - jeśli uspokaja Cię szum fal"); double wybor1 = Convert.ToDouble(Console.ReadLine()); //tzreba dać warunke jak się poda zły znak to, żeby kodu nie wywalało bool dobrywybor1 = false; while (!dobrywybor1) { if (wybor1 == 1) { Console.WriteLine("Wybrałeś mroczną leśną ścieżkę. Przed Tobą pierwsze wyzwanie! " + imie); lokalizacja = "las"; ekwipunek = "Twój plecak jest pusty!"; settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); settings.Las(settings); dobrywybor1 = true; } else if (wybor1 == 2) { Console.WriteLine("Wybrałeś wspinaczki górskie. Przed Tobą pierwsze wyzwanie! " + imie); lokalizacja = "góry"; ekwipunek = "Twój plecak jest pusty!"; settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); dobrywybor1 = true; } else if (wybor1 == 3) { Console.WriteLine("Wybrałeś szum fal. Przed Tobą pierwsze wyzwanie! " + imie); lokalizacja = "morze"; ekwipunek = "Twój plecak jest pusty!"; settings.Statystyki(settings.lvl, settings.zycie, settings.dmg, settings.lokalizacja, settings.ekwipunek); dobrywybor1 = true; } else { Console.WriteLine("Dokonałeś złego wyboru! Wybierz poprawną liczbę, aby przejść dalej:"); wybor1 = Convert.ToDouble(Console.ReadLine()); } } } public class Program { static void Main(string[] args) { Console.WriteLine("PRZYGODY W SENNEJ KOTLINIE"); Console.WriteLine("Witam w Sennej Kotlinie"); Console.WriteLine("Dzisiaj stoczysz walkę dobra ze złem, próbując uratować mieszkańców Sennej Kotliny. \n Pamiętaj, że każdy wybór ma swoje konsekwencje, a czasu nie można cofnąć. \n Słuchaj swojej intuicji, ale również nie zapominaj o logicznym myśleniu. \n Poza tym baw się dobrze i nie daj się pożreć!!"); Console.WriteLine("Na sam początek podaj nam swój przydomek, byśmy wiedzieli jak się zwracać do przyszłego bohatera Sennej Kotliny"); Gra settings = new Gra(); string imie = Console.ReadLine(); settings.Imie(imie); Console.WriteLine("To są Twoje statystyki {0}: ", imie); settings.Statystyki(1, 10, 5, "Senna Kotlina = START", "Twój plecak jest pusty!"); settings.Wybor1(settings); Console.ReadKey(); } } } }