Pesquisar na Comunidade
Mostrando resultados para as tags ''programming''.
Encontrado 1 registro
-
Ola , estou com problemas nesse código abaixo , ele é basicamente um jogo que eu estou criando para fins acadêmicos , a minha função 'ataque' esta com problemas nas linhas demarcadas por #**************************# pois ela não faz o que deveria fazer e devolve "NameError: name 'vida' is not defined" . Essa linhas seriam as responsáveis por executar uma função de outro arquivo e retornar o resultado(na forma de lista) dele, porem ele devera acessar o arquivo por meio da interação do usuário que enviara um valor de uma lista, essa lista é uma instancia da classe partida, que por sua vez foi criada pelo método especial __init__(self, ...). PRECISO DE AJUDA E SUGESTÕES PARA RESOLVER ESSE PROBLEMA!!! class partida(object): #...# #...# def ataque(self,j_atk,j_def): '''ira fazer o ataque e a defesa''' import sys sys.path.append("Teste_Armazenamento_de_Dados/ATAQUES") #ordem: nome,tipo,ataque_normal,ataque especial-1,ataque especial-2,defesa# Ataques_normal=['soco','facada','espada','mordida'] Ataques_especial=['dark magic','arremeço','bola de fogo','rasengan','chidori','rasenshuriken','chidori nagashi','paralizado','cura','teletransporte'] if j_atk[0]==self.jogador_X[0]: print('Voce pode usar o ataque simples '+self.jogador_X[2]+' ,') print('') print('usar o ataque especial 1 '+self.jogador_X[3]) print('') print('ou usar o ataque especial 2 '+self.jogador_X[4]) print('') while True: try: tipo_atk=int(input('Qual ataque voce deseja usar:\n '+self.jogador_X[2]+'(1) ,'+self.jogador_X[3]+'(2) ,'+self.jogador_X[4]+'(3) \n>>> ')) if tipo_atk==1: exec('import '+self.jogador_X[2]) #**************************# exec("vida="+self.jogador_X[2]+"ATAQUE_NORMAL(j_atk,j_def,'X'") #**************************# self.jogador_X=vida[0] self.jogador_Y=vida[1] print(self.jogador_X[1][0],self.jogador_Y[1][0]) break if tipo_atk==2: exec("vida=ataques."+self.jogador_X[3]+"(j_atk,j_def,'X')") self.jogador_X=vida[0] self.jogador_Y=vida[1] break if tipo_atk==3: exec("vida=ataques."+self.jogador_X[4]+"(j_atk,j_def,'X')") jogador_X=vida[0] self.jogador_Y=vida[1] break except: print('Digito invalido!!!') if j_atk[0]==self.jogador_Y[0]: print('Voce pode usar o ataque simples '+self.jogador_Y[2]+' ,') print('') print('usar o ataque especial 1 '+self.jogador_Y[3]) print('') print('ou usar o ataque especial 2 '+self.jogador_Y[4]) print('') while True: try: tipo_atk=int(input('Qual ataque voce deseja usar:\n '+self.jogador_Y[2]+'(1) ,'+self.jogador_Y[3]+'(2) ,'+self.jogador_Y[4]+'(3) \n>>> ')) if tipo_atk==1: exec('import '+self.jogador_X[2]) vida=ATAQUE_NORMAL(j_atk,j_def,'Y') self.jogador_X=vida[0] self.jogador_Y=vida[1] print(self.jogador_X[1][0],self.jogador_Y[1][0]) break if tipo_atk==2: exec("vida=ataques."+self.jogador_Y[2]+"(j_atk,j_def,'Y')") self.jogador_X=vida[0] self.jogador_Y=vida[1] break if tipo_atk==3: exec("vida=ataques."+self.jogador_Y[2]+"(j_atk,j_def,'Y')") self.jogador_X=vida[0] self.jogador_Y=vida[1] break except: print('Digito invalido!!!') #...# #...#
- 2 respostas
-
- python
- programming
-
(e %d mais)
Tags: