Advertisement
Guest User

domino

a guest
Nov 20th, 2019
493
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.97 KB | None | 0 0
  1. import random
  2. import os
  3. import time
  4.  
  5. class Gracz:
  6.     maxHP = 100
  7.     aktualneHP = maxHP
  8.     poziom = 1
  9.     exp = 0
  10.     zloto = 0
  11.     dmgUp = 30
  12.     dmgDown = 10
  13.     expToNextLVL = 100
  14.     mikstury = 0
  15. gracz = Gracz()
  16.  
  17. class Przeciwnik:
  18.     def __init__(self, maxHP,aktualneHP,dmgDown,dmgUp):
  19.         self.maxHP = 100
  20.         self.aktualneHP = self.maxHP
  21.         self.dmgDown = 10
  22.         self.dmgUp = 30
  23.  
  24. def Gra():
  25.     while(True):
  26.         os.system('cls')
  27.         print("Witaj na Arenie! \n\n\t [1] -> Prześpij się w tawernie\n\t [2] -> Kup mikstury w sklepie\n\t [3] -> Walcz na arenie")
  28.         Statystyki()
  29.         wyborMiejsca = int(input())
  30.         ## Tawerna
  31.         if wyborMiejsca == 1:
  32.             Tawerna()
  33.         if wyborMiejsca == 2:
  34.             Sklep()
  35.         if wyborMiejsca == 3:
  36.             Arena()
  37.  
  38. def Statystyki():
  39.     print("\n\n\n\tStatystyki postaci\n##################################\n")
  40.     print("\tZdrowie: " + str(gracz.aktualneHP) + "/" + str(gracz.maxHP))
  41.     print("\tZłoto: " + str(gracz.zloto))
  42.     print("\tObrażenia: " + str(gracz.dmgDown) + "-" + str(gracz.dmgUp))
  43.     print("\tPoziom: " + str(gracz.poziom))
  44.     print("\tDoświadczenie: " + str(gracz.exp) + "/" + str(gracz.expToNextLVL))
  45.     print("\tMikstury zdrowia: " + str(gracz.mikstury))
  46.  
  47. def Tawerna():
  48.     os.system('cls')
  49.     cenaTawerna = random.randint(2, 20)
  50.     print("Witaj w tawernie 'Obskórna Speluna'!\nCzy masz ochotę się przespać za skromne " + str(cenaTawerna) + " sztuk złota?")
  51.     print("\n\t [1] -> Tak \n\t [2] -> Nie")
  52.     wyborTawerna = int(input())
  53.     if wyborTawerna == 1:
  54.         if gracz.zloto > cenaTawerna:
  55.             gracz.zloto -= cenaTawerna
  56.             gracz.aktualneHP = gracz.maxHP
  57.         else:
  58.             print("Nie stać cię na to!")
  59.             time.sleep(1)
  60.             Tawerna()
  61.     else:
  62.         pass
  63.  
  64. def Sklep():
  65.     os.system('cls')
  66.     cenaMikstur = 13 * gracz.poziom
  67.     print("Witaj w sklepie alchemicznym\nMożesz u nas zakupić leczące mikstury za " + str(cenaMikstur) + " sztuk złota za sztukę?")
  68.     print("\n\t [1] -> Tak\n\t [2] -> Nie")
  69.     wyborSklep = int(input())
  70.     if wyborSklep == 1:
  71.         print("\nIle sztuk chcesz zakupić?")
  72.         iloscMikstur = int(input())
  73.         if iloscMikstur * cenaMikstur > gracz.zloto:
  74.             print("Nie stać cię na to!")
  75.             time.sleep(1)
  76.             Sklep()
  77.         else:
  78.             gracz.zloto -= iloscMikstur * cenaMikstur
  79.             gracz.mikstury += iloscMikstur
  80.     else:
  81.         pass
  82. def Arena():
  83.     os.system('cls')
  84.     print("Przed tobą wejście na arenę, wybierz przeciwnika z którym się zmierzysz!\n\n\t [1] -> Prosty przeciwnik \n\t [2] -> Trudny przeciwnik \n\t [3] -> Finalny przeciwnik (3 poziom)")
  85.     wyborArena = int(input())
  86.     if wyborArena == 1:
  87.         Walka(1)
  88.     if wyborArena == 2:
  89.         Walka(2)
  90.     if wyborArena == 3:
  91.         Walka(3)
  92.  
  93. def Walka(typ_przeciwnika):
  94.     def Przegrana():
  95.         os.system('cls')
  96.         print("Poniosłeś porażkę, ostatkami sił wracasz do \nbezpiecznego miejsca i odpoczywasz")
  97.         gracz.aktualneHP = int(gracz.maxHP / 2)
  98.         time.sleep(2)
  99.     def Zwyciestwo():
  100.         os.system('cls')
  101.         zloto = random.randint(10, 40)
  102.         exp = random.randint(10, 40)
  103.         gracz.zloto += zloto
  104.         gracz.exp += exp
  105.         print("Odniosłeś zwycięstwo, wracasz ze " + str(zloto) + " sztukami złota oraz \notrzymałeś " + str(
  106.             exp) + " punktów doświadczenia!")
  107.         time.sleep(5)
  108.     def przebiegWalki():
  109.         global walka
  110.         walka = True
  111.         while walka:
  112.             if gracz.aktualneHP > 0 and przeciwnik.aktualneHP > 0:
  113.                 graczDmg = random.randint(gracz.dmgDown,gracz.dmgUp)
  114.                 przeciwnikDmg = random.randint(przeciwnik.dmgDown,przeciwnik.dmgUp)
  115.                 przeciwnik.aktualneHP -= graczDmg
  116.                 print("Zadałeś przeciwnikowi " + str(graczDmg) + " obrażen! Pozostało mu " + str(przeciwnik.aktualneHP))
  117.                 time.sleep(0.75)
  118.             else:
  119.                 if gracz.aktualneHP < 0:
  120.                     Przegrana()
  121.                 else:
  122.                     Zwyciestwo()
  123.                 walka = False
  124.                 break
  125.             if przeciwnik.aktualneHP > 0:
  126.                 gracz.aktualneHP -= przeciwnikDmg
  127.                 print("Przeciwnik ci zadał " + str(przeciwnikDmg) + " obrażen! Pozostało ci " + str(gracz.aktualneHP))
  128.                 time.sleep(0.75)
  129.     if typ_przeciwnika == 1:
  130.         przeciwnik = Przeciwnik(100, 100, 5, 25)
  131.         przebiegWalki()
  132.     if typ_przeciwnika == 2:
  133.         przeciwnik = Przeciwnik(130, 150, 10, 35)
  134.         przebiegWalki()
  135.     if typ_przeciwnika == 3 and gracz.poziom >= 3:
  136.         przeciwnik = Przeciwnik(160, 160, 15, 40)
  137.         przebiegWalki()
  138.     if typ_przeciwnika == 3 and gracz.poziom < 3:
  139.         print("Masz zbyt mały poziom aby wziąć udział w walce!")
  140.         time.sleep(2)
  141.  
  142. Gra()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement