Untitled
unknown
plain_text
3 years ago
22 kB
12
Indexable
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();
}
}
}
}
Editor is loading...