LightProgrammer000

Robocop (teste)

Mar 7th, 2025
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.03 KB | None | 0 0
  1. """
  2. # CLasse: Robocop
  3. """
  4.  
  5. # Bibliotecas
  6. from random import randint, choice
  7. from colorama import Fore
  8.  
  9. class Robocop:
  10.  
  11.     # Variável de classe (também chamada de "estática" em alguns contextos)
  12.     mortos = 0
  13.  
  14.     def __init__(self, balas=100):
  15.         self.nome = "Robocop"
  16.         self.altura = "2.01"
  17.         self.peso = "150 kg"
  18.         self.tecnologia = "Java"
  19.         self.balas = balas
  20.  
  21.  
  22.     def __str__(self):
  23.         return f"# {Fore.GREEN}{self.nome}{Fore.RESET} {Fore.CYAN}({self.tecnologia}){Fore.RESET}"
  24.  
  25.  
  26.     def atirar(self):
  27.  
  28.         tiros = randint(1, 100)
  29.  
  30.         if tiros <= self.balas:
  31.             print(f"# {tiros} tiro(s) disparado(s)")
  32.             self.balas -= tiros
  33.  
  34.         else:
  35.             self.status_municao()
  36.  
  37.  
  38.     def status_municao(self):
  39.  
  40.         if self.balas > 0:
  41.             print(f"\n# Armazenamento restante: {self.balas}%")
  42.  
  43.         else:
  44.             print(f"\n# Armazenamento restante: 0%")
  45.  
  46.  
  47.     def decisao(self):
  48.  
  49.         lista = list(range(1, 21))
  50.         situacao = choice(lista)
  51.  
  52.         print("# Destino do vagabundo...")
  53.  
  54.         if 0 < situacao < 6:
  55.             print(f"{Fore.BLACK}# Morrer 😈 {Fore.RESET}")
  56.             self.balas -= 1
  57.             Robocop.mortos += 1
  58.             print(f"# {Fore.RED}Vagabundos mortos{Fore.RESET}: {Robocop.mortos}")
  59.  
  60.         elif situacao < 15:
  61.             print("# Imobilizar")
  62.  
  63.         else:
  64.             print("# Dizer as leis e reportar à delegacia")
  65.  
  66.  
  67. def apresentacao(rob):
  68.     print(f"# {Fore.RED}Máquina{Fore.RESET}: {rob.nome}")
  69.     print(f"# {Fore.CYAN}Altura{Fore.RESET}: {rob.altura}")
  70.     print(f"# {Fore.GREEN}Peso{Fore.RESET}: {rob.peso}")
  71.     print(f"# {Fore.YELLOW}Desenvolvimento{Fore.RESET}: {rob.tecnologia}\n")
  72.  
  73.  
  74. def arena_teste_1():
  75.     rob = Robocop(100)
  76.     print(rob)
  77.  
  78.     apresentacao(rob)
  79.     print("")
  80.  
  81.     for i in range(0, 30):
  82.         rob.atirar()
  83.         rob.decisao()
  84.         print("")
  85.  
  86.  
  87. def main():
  88.     arena_teste_1()
  89.  
  90.  
  91. if __name__ == '__main__':
  92.     main()
  93.  
Add Comment
Please, Sign In to add comment