예제 #1
0
 def maloc(self, imagem, x, y, cena):
     """ Cria uma maloca na arena do Kwarwp na posição definida.
     :param x: coluna em que o elemento será posicionado.
     :param y: linha em que o elemento será posicionado.
     :param cena: cena em que o elemento será posicionado.
     
     Cria uma vaga vazia e coloca o componente dentro dela.
     """
     coisa = Oca(imagem, x=0, y=0, cena=cena, taba=self)
     vaga = Vazio("", x=x, y=y, cena=cena, ocupante=coisa, taba=self)
     return vaga
예제 #2
0
 def testa_pega_vazio_oca_piche(self):
     """ Vai até a piche, oca e vazio e tenta pegar."""
     cena = self.k.cria()
     ftaba = self.t
     l = self.LADO
     indio = self.k.o_indio
     indio.pega()
     coisa = Oca("", x=0, y=0, cena=cena, taba=self.k)
     vaga = Vazio("", x=3*l, y=2*l, cena=cena, ocupante=coisa)
     vazio = self.k.taba[(3,2)] = vaga
     indio.pega()
     coisa = Piche("", x=0, y=0, cena=cena, taba=self.k)
     vaga = Vazio("", x=3*l, y=2*l, cena=cena, ocupante=coisa)
     vazio = self.k.taba[(3,2)] = vaga
     indio.pega()
     indio.esquerda()
     indio.esquerda()
     indio.pega()
예제 #3
0
 def testa_chega_taba_indio(self):
     """ Chega no seu destino, tenta mover o índio, mas fica preso."""
     ftaba = self.t
     cena = self.k.cria()
     l = self.LADO
     indio = self.k.o_indio
     oca = Oca("", x=0, y=0, cena=cena, taba=ftaba)
     vaga = Vazio("", x=3*l, y=2*l, cena=cena, ocupante=oca)
     vazio = self.k.taba[(3,1)] = vaga
     self.assertIsInstance(vazio.ocupante, Oca, f"but vaga was {type(vazio.ocupante)}")
     pos = oca.posicao
     self.assertEquals((3, 1),  pos, f"but oca pos was {pos}")
     indio.anda()
     indio.anda()
     self.assertIsInstance(indio.vaga, Oca, f"but vaga was {type(indio.vaga)}")
     self.assertEquals(oca, indio.vaga, f"but vaga was {indio.vaga}")
     self.assertIn("chegou", ftaba.falou, f"but fala was {ftaba.falou}")
     indio.anda()
     pos = indio.posicao
     self.assertEquals((3, 1),  pos, f"but last pos was {pos}")