Advertisement
MatteB_01

Untitled

Sep 29th, 2022
616
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.79 KB | None | 0 0
  1. import random
  2.  
  3. #-----------------------COMANDO DEL SISTEMA DI SCELTA-------------------------------------------------
  4. def choice(num):  #num è il totale delle scelte possibili
  5.     okay = False
  6.     while not okay:
  7.         scelta = input("Scegli: ")
  8.  
  9.         if not scelta.isnumeric():
  10.             print("Inserire un numero valido.")
  11.  
  12.         else:
  13.             scelta = int(scelta)
  14.             if scelta <= num and scelta != 0:
  15.                 return(scelta)
  16.             else:
  17.                 print("Inserire un numero valido.")
  18.  
  19.  
  20.  
  21. def intro():
  22.     print("Quella che stai per giocare è un' avventura testuale durante la quale ti verranno presentate delle scelte numerate.\nPer poter progredire all' interno della trama è necessario dichiarare il numero della scelta quando necessario.")
  23.     print("[1] Ho capito, iniziamo!")
  24.     choice(1)
  25.     print("Ottimo, siamo pronti ad iniziare")
  26.     ok = False
  27.  
  28.     while not ok:
  29.         nome = input("Come ti chiami, avventuriero? ")
  30.         print(f"{nome}, giusto?")
  31.         print("[1]si\n[2]no")
  32.         scelta = choice(2)
  33.  
  34.         if scelta == 1:
  35.             ok = True
  36.  
  37.     print(f"perfetto {nome}, la tua avventura inizierà adesso")
  38.     print("\n"*5)
  39.     print("")
  40.     return nome
  41.  
  42.  
  43. def menu(nome, maxHp, hpAttuali, stats, bonus, inventario):
  44.     caratteristiche = ["FOR", "DES", "COS", "INT", "SAG", "CAR"]
  45.     print("+" + "-" * len(nome) + "+")
  46.     print(f"|{nome}|")
  47.     print("+" + "-" * len(nome) + "+")
  48.     print(f"HP {hpAttuali}/{maxHp}")
  49.     print("-" * (len(nome)+2))
  50.  
  51.     for i in range(6):
  52.         print(f"{caratteristiche[i]}  {stats[i]}({bonus[i]})")
  53.     print("-" *(len(nome)+2))
  54.  
  55.     print("INVENTARIO")
  56.     for i in inventario:
  57.         print(i)
  58.     print("-" * (len(nome)+2))
  59.  
  60.  
  61.  
  62. def main():
  63. #-----------------STAT PERSONAGGIO------------------------
  64.     unsorted = []
  65.     stats = [0 for i in range(6)]
  66.     bonus = []
  67.  
  68.     #determino le stat
  69.     for i in range(6):
  70.         stat = random.randint(6,18)
  71.         unsorted.append(stat)
  72.  
  73.     #Ordino le stat per un guerriero
  74.     stats[0] = max(unsorted)+3
  75.     unsorted.remove(max(unsorted))
  76.     stats[2] = max(unsorted)+1
  77.     unsorted.remove(max(unsorted))
  78.     stats[1] = max(unsorted)+1
  79.     unsorted.remove(max(unsorted))
  80.     stats[3] = max(unsorted)+1
  81.     unsorted.remove(max(unsorted))
  82.     stats[4] = max(unsorted)+1
  83.     unsorted.remove(max(unsorted))
  84.     stats[5] = max(unsorted)+1
  85.  
  86.     #determino i bonus e gli hp
  87.     for stat in stats:
  88.         bon = (stat-10)//2
  89.         bonus.append(bon)
  90.  
  91.     maxHp = random.randint(15, 60) + bonus[2]*6
  92.     hpAttuali = maxHp
  93.     nome = intro()
  94.     inventario = ["pesce", "cioccolato"]
  95.     menu(nome, maxHp, hpAttuali, stats, bonus, inventario)
  96.  
  97.  
  98. #-------------------------- --------------------------
  99.  
  100. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement