Olá, gente, meu nome é Alexandre, sou novo aqui no fórum.
Nesse jogo que estou fazendo, quando a partida se desenrola por um certo, Pilas é interrompido com a seguinte exceção:
ERROR Exception(IndexError('list assignment index out of range',),)
-590
Exception(IndexError('list assignment index out of range',),)
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/pilas-1.4.12-py2.7.egg/pilasengine/widget.py", line 25, in _decorator
func(self, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/pilas-1.4.12-py2.7.egg/pilasengine/widget.py", line 146, in keyPressEvent
texto=event.text())
File "/usr/local/lib/python2.7/dist-packages/pilas-1.4.12-py2.7.egg/pilasengine/eventos/evento.py", line 30, in emitir
raise Exception(e)
Exception: list assignment index out of range
Como ainda não conheço bem o código de Pilas, preferi não me aventurar a encontrar uma solução, a parte do meu código que está disparando a exceção é esta:
class GameScreen(pilasengine.escenas.Escena):
def iniciar(self):
self.game = GameEngine()
(...)
pilas.eventos.pulsa_tecla.conectar(self.al_pulsar_tecla)
(...)
def al_pulsar_tecla(self, tecla):
if (tecla.codigo == 1) or (tecla.codigo == 2):
self.game.where_to_turn(tecla.codigo)
self.game.new_round()
if self.game.current_bag == []:
self.game.bag()
self.game.insert_stone()
self.fill_rings(self.game.outer, self.outer_ring)
self.fill_rings(self.game.middle, self.middle_ring)
self.fill_rings(self.game.inner, self.inner_ring)
self.print_score()
if self.game.game_over:
self.game_over()
else:
pass
return
(...)
Alguém pode me ajudar a descobrir o que está acontecendo? Avisem-me se for necessário que eu poste mais trechos do código. Muito obrigado!