Partes do Kwarwp

Um jogo de aventura que se joga aprendendo e criando programas na linguagem Python.

Este ambiente facilita a aprendizagem da linguagem Python.

O jogo é dirigido principalmente ao ensino de programação de computadores para jovens e crianças do ensino médio e fundamental.

Documentação

Descrição dos módulos de partes do Kwarwp.

Jogo para ensino de programação Python.

Classes neste módulo:
  • Vazio Espaço vago na arena do desafio.
  • Oca Destino final da aventura.
  • Piche Uma armadilha para prender o índio.
  • Tora Uma tora que o índio pode pegar.
  • Nulo Objeto Nulo para default em argumentos.

Changelog

Changed in version 20.08.b1: modifica Vazio.ocupou() para receber também a posição. - Nulo Objeto nulo passivo a todas as requisições.

Changed in version 20.08.b0: Moveu constantes de classe VITOLLINO, LADO para Vazio.

New in version 20.08.b0: Moveu Vazio, Oca, Piche para cá. Adicionou Tora e classe Nulo

class kwarwp.kwarwpart.Nulo[source]

Objeto nulo que responde passivamente a todas as requisições.

nulo(*_, **__)[source]

Método nulo, responde passivamente a todas as chamadas.

Parameters:
  • _ – aceita todos os argumentos posicionais.
  • __ – aceita todos os argumentos nomeados.
Returns:

retorna o próprio objeto nulo.

class kwarwp.kwarwpart.Oca(imagem, x, y, cena, taba)[source]

A Oca é o destino final do índio, não poderá sair se ele entrar nela.

Parameters:
  • imagem – A figura representando o índio na posição indicada.
  • x – Coluna em que o elemento será posicionado.
  • y – Cinha em que o elemento será posicionado.
  • cena – Cena em que o elemento será posicionado.
  • taba – Representa a taba onde o índio faz o desafio.
class kwarwp.kwarwpart.Pedra(imagem, x, y, cena, taba)[source]

A Pedra é um uma coisa muito pesada que o índio só consegue empurrar.

Parameters:
  • imagem – A figura representando o índio na posição indicada.
  • x – Coluna em que o elemento será posicionado.
  • y – Linha em que o elemento será posicionado.
  • cena – Cena em que o elemento será posicionado.
  • taba – Representa a taba onde o índio faz o desafio.
pegar(requisitante)[source]

Consulta o ocupante atual se há permissão para pegar e entregar ao requistante.

Parameters:requistante – O ator querendo pegar o objeto.
class kwarwp.kwarwpart.Piche(imagem, x, y, cena, taba)[source]

Poça de Piche que gruda o índio se ele cair nela.

Parameters:
  • imagem – A figura representando o índio na posição indicada.
  • x – Coluna em que o elemento será posicionado.
  • y – Cinha em que o elemento será posicionado.
  • cena – Cena em que o elemento será posicionado.
  • taba – Representa a taba onde o índio faz o desafio.
acessa = None

O acessa () é usado como método dinâmico, variando com o estado da vaga. Inicialmente tem o comportamento de _acessa () que é o estado vago, aceitando ocupantes

elt

A propriedade elt faz parte do protocolo do Vitollino para anexar um elemento no outro .

No caso do espaço vazio, vai retornar um elemento que não contém nada.

ocupa(vaga)[source]

Pedido por uma vaga para que ocupe a posição nela.

Parameters:vaga – A vaga que será ocupada pelo componente.

No caso do índio, requisita que a vaga seja ocupada por ele.

sair = None

O sair () é usado como método dinâmico, variando com o estado da vaga. Inicialmente tem o comportamento de _sair () que é o estado vago, aceitando ocupantes

class kwarwp.kwarwpart.Tora(imagem, x, y, cena, taba)[source]

A Tora é um pedaço de tronco cortado que o índio pode carregar ou empurrar.

Parameters:
  • imagem – A figura representando o índio na posição indicada.
  • x – Coluna em que o elemento será posicionado.
  • y – Linha em que o elemento será posicionado.
  • cena – Cena em que o elemento será posicionado.
  • taba – Representa a taba onde o índio faz o desafio.
elt

A propriedade elt faz parte do protocolo do Vitollino para anexar um elemento no outro .

No caso da tora, retorna o elt do elemento do atributo self.vazio.

empurrar(empurrante, azimute)[source]

Consulta o ocupante atual se há permissão para pegar e entregar ao requistante.

Parameters:requistante – O ator querendo pegar o objeto.
ocupa(vaga)[source]

Pedido por uma vaga para que ocupe a posição nela.

Parameters:vaga – A vaga que será ocupada pelo componente.

No caso do índio, requisita que a vaga seja ocupada por ele.

pegar(requisitante)[source]

Consulta o ocupante atual se há permissão para pegar e entregar ao requistante.

Parameters:requistante – O ator querendo pegar o objeto.
posicao

A propriedade posição faz parte do protocolo do double dispatch com o Indio .

No caso da tora, retorna o a posição do atributo self.vaga.

class kwarwp.kwarwpart.Vazio(imagem, x, y, cena, taba, ocupante=None)[source]

Cria um espaço vazio na taba, para alojar os elementos do desafio.

Parameters:
  • imagem – A figura representando o índio na posição indicada.
  • x – Coluna em que o elemento será posicionado.
  • y – Cinha em que o elemento será posicionado.
  • cena – Cena em que o elemento será posicionado.
  • taba – Referência onde ele pode encontrar a taba.
  • ocupante – Objeto que ocupa inicialmente a vaga.
LADO = None
VITOLLINO = None
acessa = None

O acessa () é usado como método dinâmico, variando com o estado da vaga. Inicialmente tem o comportamento de _acessa () que é o estado vago, aceitando ocupantes

acessar(ocupante, azimute)[source]

Faz o índio caminhar na direção em que está olhando.

elt

A propriedade elt faz parte do protocolo do Vitollino para anexar um elemento no outro .

No caso do espaço vazio, vai retornar um elemento que não contém nada.

empurrar(requisitante, azimute)[source]

Consulta o ocupante atual se há permissão para pegar e entregar ao requistante.

Parameters:requistante – O ator querendo pegar o objeto.
limpa()[source]

Pedido por um ocupante para ele seja eliminado do jogo.

ocupa(vaga, *_)[source]

Pedido por uma vaga para que ocupe a posição nela.

No caso do espaço vazio, não faz nada.

ocupante = None

O ocupante se não for fornecido é encenado pelo próprio vazio, agindo como nulo

ocupou(ocupante, pos=(0, 0))[source]

O candidato à vaga decidiu ocupá-la e efetivamente entra neste espaço.

Parameters:
  • ocupante – O canditato a ocupar a posição corrente.
  • pos – A posição (atitude) do sprite do ocupante.

Este ocupante vai entrar no elemento do Vitollino e definitivamente se tornar o ocupante da vaga. Com isso ele troca o estado do método acessa para primeiro consultar a si mesmo, o ocupante corrente usando o protocolo definido em _valida_acessa ()

pegar(requisitante)[source]

Consulta o ocupante atual se há permissão para pegar e entregar ao requistante.

Parameters:requistante – O ator querendo pegar o objeto.
sai()[source]

Pedido por um ocupante para que desocupe a posição nela.

sair = None

O sair () é usado como método dinâmico, variando com o estado da vaga. Inicialmente tem o comportamento de _sair () que é o estado leniente, aceitando saidas

Indices and tables