Advertisement
WasuMrTomass0

KZG Python Szablon

Sep 1st, 2021 (edited)
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.36 KB | None | 0 0
  1. from random import choice, randint
  2. from os import system
  3. from time import sleep
  4.  
  5.  
  6. # # # # # # # # # # # # # Lista  przeciwników # # # # # # # # # # # #
  7.  
  8. # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
  9.  
  10. class Przeciwnik:
  11.     def __init__(self, parametry_przeciwnika):
  12.         self.nazwa = parametry_przeciwnika[0]
  13.         self.zycie = parametry_przeciwnika[1]
  14.         self.obrazenia = parametry_przeciwnika[2]
  15.  
  16.     def odejmij_zycie(self, zadane_obrazenia):
  17.         self.zycie -= zadane_obrazenia
  18.  
  19.     pass  # class Przeciwnik
  20.  
  21.  
  22. def losuj_przeciwnika():
  23.     przeciwnik = Przeciwnik(choice(lista_przeciwnikow))
  24.     print('*' * 64)
  25.     print(f'Twój nowy przeciwnik to {przeciwnik.nazwa}. Szykuj się do walki!')
  26.     print('*' * 64)
  27.     return przeciwnik
  28.  
  29.  
  30. def wypisz_przeciwnika(przeciwnik):
  31.     print(f'{przeciwnik.nazwa} ma jeszcze {przeciwnik.zycie} życia.\n')
  32.     pass
  33.  
  34.  
  35. def wypisz_akcje(zycie, obrazenia, mana, obrazenia_blyskawica, leczenie):
  36.     print(f'Masz {zycie} życia i {mana} many. Możliwe akcje to:')
  37.     print(f'0 - zwykły atak ({obrazenia} obrażeń; 90% szans na trafienie)')
  38.     print(f'1 - przyzwij błyskawicę ({obrazenia_blyskawica} obrażeń i ogłusza wroga na 1 rundę; koszt 25 many)')
  39.     print(f'2 - leczenie (leczysz się o {leczenie} punktów zdrowia; można wykonać co trzy rundy)')
  40.     pass
  41.  
  42.  
  43. def wybierz_akcje(mana, ile_do_leczenia):
  44.     # # # # # # # # # Kod odpowiedzialny za wybór akcji # # # # # # # # #
  45.  
  46.  
  47.     # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
  48.     pass
  49.  
  50.  
  51. def wyczysc_konsole() -> None:
  52.     system('cls')  # Windows
  53.     # system('clear')  # Linux
  54.     pass
  55.  
  56.  
  57. def wypisz_wynik(ilosc_rund, ilosc_zabitych):
  58.     print('*' * 64)
  59.     print('Nikt nie jest niepokonany i ostatecznie poległeś!')
  60.     print(f'Jednak wytrzymałeś aż {ilosc_rund} rund i pokonałeś {ilosc_zabitych} przeciwników! Brawo!')
  61.     print('*' * 64)
  62.     pass
  63.  
  64.  
  65. # Funkcja main (główna) naszej gry
  66. def main():
  67.     # Miejsce na kod
  68.     # nasze podstawowe ustawienia, które można zmieniać, jeśli gra byłaby za łatwa lub za trudna
  69.     # Zmienne, ktore nalezy ustawic: zycie, obrazenia, mana, obrazenia_blyskawica, regeneracja_many,
  70.     # ile_do_leczenia, wartosc_leczenia, ile_rund, ile_zabitych
  71.  
  72.     # # # # # # # # # # Zmienne nadzorujące rozgrywkę # # # # # # # # # #
  73.  
  74.  
  75.  
  76.     # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
  77.  
  78.     przeciwnik = losuj_przeciwnika()
  79.     # dopóki mamy punkty życia to gra działa
  80.     while zycie > 0:
  81.         ile_rund += 1
  82.  
  83.         # wypisanie informacji o przeciwniku, dostępnych akcjach i wybór akcji
  84.         wypisz_przeciwnika(przeciwnik)
  85.         wypisz_akcje(zycie, obrazenia, mana, obrazenia_blyskawica, wartosc_leczenia)
  86.         akcja = wybierz_akcje(mana, ile_do_leczenia)
  87.  
  88.         wyczysc_konsole()
  89.  
  90.         # # # # # # # # # # # Logika zadawanych obrażeń # # # # # # # # # # #
  91.  
  92.  
  93.  
  94.         # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
  95.  
  96.         # Regeneracja many oraz odliczanie do następnego leczenia
  97.         mana += regeneracja_many
  98.         ile_do_leczenia -= 1
  99.  
  100.         sleep(1)
  101.         pass  # Koniec pętli while
  102.  
  103.     # Wypisanie podsumowania rozgrywki
  104.     wypisz_wynik(ile_rund, ile_zabitych)
  105.     pass  # Koniec funkcji main
  106.  
  107.  
  108. if __name__ == '__main__':
  109.     main()
  110.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement