Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Plik Hero.cs
- public class Hero
- {
- public int Hp;
- public string Nazwa;
- public int Atak;
- public Hero(string nazwa, int hp, int atak)
- {
- Nazwa = nazwa;
- Hp = hp;
- Atak = atak;
- }
- public void WyswietlStatystyki()
- {
- Console.WriteLine($"Postać {Nazwa} posiada {Hp} życia i {Atak} pkt ataku.");
- Console.WriteLine();
- }
- }
- Plik Wojownik.cs
- public class Wojownik : Hero
- {
- public int Obrona;
- public Wojownik(string nazwa, int hp, int atak, int obrona)
- : base(nazwa, hp, atak)
- {
- Obrona = obrona;
- }
- public void OdejmijHp(int atak)
- {
- Hp -= atak - (Obrona / 3);
- }
- public int PobierzSileAtaku()
- {
- return Atak;
- }
- }
- Plik Mag.cs
- public class Mag : Hero
- {
- public int Moc;
- public Mag(string nazwa, int hp, int atak, int moc)
- : base(nazwa, hp, atak)
- {
- Moc = moc;
- }
- public void OdejmijHp(int atak)
- {
- Hp -= atak;
- }
- public int PobierzSileAtaku()
- {
- return Atak + (Moc / 5);
- }
- }
- Plik GeneratorPostaci.cs
- public class GeneratorPostaci
- {
- private Random LiczbyLosowe;
- private List<string> Imiona;
- public GeneratorPostaci()
- {
- LiczbyLosowe = new Random();
- Imiona = new List<string>();
- Imiona.Add("Vladimir");
- Imiona.Add("Nieznajomy");
- Imiona.Add("Max");
- Imiona.Add("Veigar");
- Imiona.Add("Gerard");
- }
- public Mag GenerujMaga()
- {
- int hp = LiczbyLosowe.Next(150, 300);
- int atak = LiczbyLosowe.Next(5, 15);
- string imie = Imiona[LiczbyLosowe.Next(0, Imiona.Count)];
- Imiona.Remove(imie);
- Mag mag = new Mag(imie, hp, atak, 10);
- return mag;
- }
- public Wojownik GenerujWojownika()
- {
- int hp = LiczbyLosowe.Next(150, 300);
- int atak = LiczbyLosowe.Next(5, 15);
- string imie = Imiona[LiczbyLosowe.Next(0, Imiona.Count)];
- Imiona.Remove(imie);
- Wojownik wojownik = new Wojownik(imie, hp, atak, 5);
- return wojownik;
- }
- }
- Plik Program.cs
- class Program
- {
- static void Main(string[] args)
- {
- GeneratorPostaci generatorPostaci = new GeneratorPostaci();
- Console.WriteLine("Witaj w grze Wojownik vs Magowie");
- // tworzymy gracza i przeciwnika
- Wojownik gracz = generatorPostaci.GenerujWojownika();
- Mag przeciwnik = generatorPostaci.GenerujMaga();
- Console.WriteLine("Na swojej drodze spotkałeś przeciwnika.");
- przeciwnik.WyswietlStatystyki();
- Console.WriteLine("Czy chcesz zaatakować (wpisz: atak) czy uciekać (wpisz:
- ucieczka)");
- string odp = Console.ReadLine();
- if (odp != "atak")
- {
- Console.WriteLine("Uciekasz....");
- Console.ReadKey();
- return;
- }
- Console.WriteLine("Do ataku !!!");
- // walka toczy się dopóki życie któregoś z graczy nie spadnie poniżej zera
- while (gracz.Hp >= 0 && przeciwnik.Hp >= 0)
- {
- // przeciwnik atakuje
- Console.WriteLine($"Gracz {przeciwnik.Nazwa} atakuje.");
- int atakPrzeciwnika = przeciwnik.PobierzSileAtaku();
- gracz.OdejmijHp(atakPrzeciwnika);
- Console.WriteLine($"Pozostało Ci {gracz.Hp} życia.\n");
- // sprawdzamy czy po ataku czasem nie zginęliśmy
- // jeżeli tak to kończymy walkę
- if (gracz.Hp <= 0)
- break;
- // zatrzymujemy na pół sekundy program dla ciekawszego efektu
- System.Threading.Thread.Sleep(500);
- // my atakujemy
- Console.WriteLine($"Gracz {gracz.Nazwa} atakuje.");
- int atakGracza = gracz.PobierzSileAtaku();
- przeciwnik.OdejmijHp(atakGracza);
- Console.WriteLine($"Przeciwnikowi zostało {przeciwnik.Hp} życia.\n");
- // sprawdzamy czy po ataku czasem nie pokonaliśmy wroga
- // jeżeli tak to kończymy walkę
- if (przeciwnik.Hp <= 0)
- break;
- // zatrzymujemy na pół sekundy program dla ciekawszego efektu
- System.Threading.Thread.Sleep(500);
- }
- if (gracz.Hp <= 0)
- {
- Console.WriteLine($"Niestety zostałeś pokonany. Przeciwnik {przeciwnik.Nazwa}
- wygrał.");
- }
- else
- {
- Console.WriteLine($"Gratulację. Pokonałeś przeciwnika {przeciwnik.Nazwa}");
- }
- Console.ReadKey();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment