[Python] As variáveis não são armazenadas na função mesmo eu definindo elas fora da função

Discussão em 'Python' iniciado por Stack, Abril 15, 2025.

  1. Stack

    Stack Membro Participativo

    As variávies do inimigo não são salvas no "if ação1 == 1", porque no "print(enemy, " sofre ", dano, " de dano!")" mostra apenas " sofre 10 de dano!" e não o nome do do inimigo. Me ajudem, por favor.

    from random import randint
    import sys
    import os
    import time

    exp = 0
    nível = 1
    dano = 10
    hp = 30
    gold = 0

    enemy_stunned = False
    enemy_poisoned = False
    enemy_burning = False

    enemy = ""
    enemy_damage = 0
    enemy_hp = 0
    enemy_level = 0
    enemy_xp_drop = 0
    enemy_gold_drop = 0

    enemys = {
    "Ladrão" : {"hp" : 20, "dano" : 10, "level": 1, "gold" : 20, "xp" : 15},
    "Chronos" : {"hp" : 700, "dano" : 400, "level": 90, "gold" : 600, "xp" : 1000},
    "Morte" : {"hp" : 999, "dano" : 999, "level": 99, "gold" : 999, "xp" : 9999}
    }

    print('''
    Você acorda de tarde, após virar a noite jogando com seus amigos. Você ainda está cansado, mas levanta mesmo assim. Come alguma coisa que estava na geladeira, e sai de casa.
    Quando você bota o pé para fora, tudo fica escuro. Você se vê em um lugar escuro e sem vida, então se pergunta o que caralhos é aquilo. Andando um pouco, você encontra um olho gigante parecido com o de um videogame que você jogou.
    Esse olho começa a falar: "Hoje é seu dia de azar meu caro, estou entediado e quero pregar uma peça em alguém. Esse alguém é você. A partir de agora, você nunca mais poderar morrer. É isso, adeus," e você volta para onde estava antes num piscar de olhos.
    Você está horrorizado, mas as coisas só pioram quando um homem armado chega apontando a arma para você.
    Ele diz: "Ei, qual seu nome?"
    ''')

    player = input('Nome:')

    def opção1():
    print(f'''
    O assaltante responde: "Beleza {player}, agora me passa tudo que você tem de valor aí!"
    O que você faz?
    ''')
    print(f'''
    '1 - Dar um soco na cara dele.'
    '2 - Sair correndo e pular pela janela (você está no segundo andar de um prédio, é possível sobreviver). '
    '3 - Fingir de morto. '
    '4 - Falar: "Não" '
    '5 - Passar tudo para ele.
    '''
    )
    ação1 = input("Escolha:")
    if ação1 == "1":
    enemy = "Ladrão"
    enemy_hp = enemys["Ladrão"]["hp"]
    enemy_damage = enemys["Ladrão"]["dano"]
    enemy_level = enemys["Ladrão"]["level"]
    enemy_xp_drop = enemys["Ladrão"]["xp"]
    enemy_gold_drop = enemys["Ladrão"]["gold"]
    enemy_hp - dano
    ataque()

    elif ação1 == "2":
    print("b")

    def vitória():
    exp + enemy_xp_drop
    gold

    def ataque():
    print(enemy, " sofre ", dano, " de dano!")
    if enemy_hp > 0:
    ataque_inimigo()
    else:
    vitória()


    def ataque_inimigo(): if not enemy_stunned: hp - enemy_damage print(enemy, " te ataca, tirando ", dano, " de HP!") if hp > 0: ataque() else: print("Você morreu! Digite 'sim' para reiniciar.") r = input("Reiniciar? ") if r == "r": python = sys.executable os.execl(python, python, * sys.argv)

    opção1()

    Continue reading...

Compartilhe esta Página