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 do Kwarwp.
Jogo para ensino de programação Python.
- Classes neste módulo:
Changelog¶
New in version 20.08.b1: Adicionou JogoProxy
para realizar o passo a passo.
Capacidade de gerenciar mais de um índio.
Changed in version 20.08.b0: Moveu constantes de classe VITOLLINO, LADO para Vazio.
Moveu Vazio
, Oca
, Piche
para kwarwpart.
New in version 20.08.a3: Movimentação do índio para Indio.esquerda()
e
Indio.direita()
. Fala do índio: Indio.fala()
.
classes Oca e Piche, double dispatch para sair.
New in version 20.08.a2: Classe Vazio que recebe cada componente do mapa. Movimentação do índio é feita pulando para outro vazio.
New in version 20.08.a1: Classe Indio que executa roteiro e anda.
New in version 20.08.a0: Fábrica de componentes classe Indio. Usa um mapa de caracteres para colocar os elementos.
New in version 20.07: classe Kwarwp.
-
kwarwp.kwarapp.
IMGUR
= 'https://imgur.com/'¶ Prefixo do site imgur.
-
class
kwarwp.kwarapp.
Indio
(imagem, x, y, cena, taba, vitollino=None)[source]¶ Cria o personagem principal na arena do Kwarwp na posição definida.
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.
-
AZIMUTE
= Rosa(n=Ponto(x=0, y=-1), l=Ponto(x=1, y=0), s=Ponto(x=0, y=1), o=Ponto(x=-1, y=0))¶ Constante com os pares ordenados que representam os vetores unitários dos pontos cardeais.
-
acessa
(ocupante)[source]¶ Pedido de acesso a essa posição, delegada ao ocupante pela vaga.
Parameters: ocupante – O componente candidato a ocupar a vaga já ocupada pelo índio. No caso do índio, ele age como um obstáculo e não prossegue com o protocolo.
-
azimute
= None¶ índio olhando para o norte
-
elt
¶ A propriedade elt faz parte do protocolo do Vitollino para anexar um elemento no outro .
No caso do índio, retorna o elt do elemento do atributo self.indio.
-
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.
-
ocupou
(ocupante)[source]¶ O candidato à vaga decidiu ocupá-la e efetivamente entra neste espaço.
Parameters: ocupante – O canditato a ocupar a posição corrente. 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 ()
-
x
= None¶ Este x provisoriamente distingue o índio de outras coisas construídas com esta classe
-
class
kwarwp.kwarapp.
JogoProxy
(vitollino=None, elt=None, proxy=None, master=False)[source]¶ Proxy que enfileira comandos gráficos.
Parameters: - vitollino – Empacota o engenho de jogo Vitollino.
- elt – Elemento que vai ser encapsulado pelo proxy.
- proxy – Referência para o objeto proxy parente.
- master – Determina se este elemento vai ser mestre de comandos.
-
a
(*args, **kwargs)[source]¶ Método fábrica - Encapsula a criação de elementos
Parameters: - args – coleção de argumentos posicionais.
- kwargs – coleção de argumentos nominais.
Returns: Proxy para um Elemento construído com estes argumentos.
-
ae
= None¶ Cria um referência o Adapador de Eelementos
-
c
(*args, **kwargs)[source]¶ Encapsula a criação de cenas - apenas delega.
Parameters: - args – coleção de argumentos posicionais.
- kwargs – coleção de argumentos nominais.
Returns: Uma Cena do Vitollino construída com estes argumentos.
-
corrente
¶ Ativa Fábrica do JogoProxy
-
e
(*args, **kwargs)[source]¶ Método fábrica - Encapsula a criação de elementos ativos, que executam scripts
Parameters: - args – coleção de argumentos posicionais.
- kwargs – coleção de argumentos nominais.
Returns: Proxy para um Elemento construído com estes argumentos.
-
elt
¶ Propriedade elemento
-
pos
¶ Propriedade posição
-
siz
¶ Propriedade tamanho
-
x
¶ Propriedade posição x
-
y
¶ Propriedade posição y
-
class
kwarwp.kwarapp.
Kwarwp
(vitollino=None, mapa=None, medidas={}, indios=())[source]¶ Jogo para ensino de programação.
Parameters: - vitollino – Empacota o engenho de jogo Vitollino.
- mapa – Um texto representando o mapa do desafio.
- medidas – Um dicionário usado para redimensionar a tela.
-
KW
= None¶
-
apedra
(imagem, x, y, cena)[source]¶ Cria uma pedra na arena do Kwarwp na posição definida.
Parameters: - x – coluna em que o elemento será posicionado.
- y – linha em que o elemento será posicionado.
- cena – cena em que o elemento será posicionado.
Cria uma vaga vazia e coloca o componente dentro dela.
-
atora
(imagem, x, y, cena)[source]¶ Cria uma tora na arena do Kwarwp na posição definida.
Parameters: - x – coluna em que o elemento será posicionado.
- y – linha em que o elemento será posicionado.
- cena – cena em que o elemento será posicionado.
Cria uma vaga vazia e coloca o componente dentro dela.
-
barra
(imagem, x, y, cena)[source]¶ Cria uma armadilha na arena do Kwarwp na posição definida.
Parameters: - x – coluna em que o elemento será posicionado.
- y – linha em que o elemento será posicionado.
- cena – cena em que o elemento será posicionado.
Cria uma vaga vazia e coloca o componente dentro dela.
-
coisa
(imagem, x, y, cena)[source]¶ Cria um elemento na arena do Kwarwp na posição definida.
Parameters: - x – coluna em que o elemento será posicionado.
- y – linha em que o elemento será posicionado.
- cena – cena em que o elemento será posicionado.
Cria uma vaga vazia e coloca o componente dentro dela.
-
col
= None¶ Largura da casa da arena dos desafios, número de colunas e linhas no mapa
-
cria
(mapa='')[source]¶ Fábrica de componentes.
Parameters: mapa – Um texto representando o mapa do desafio.
-
indio
(imagem, x, y, cena)[source]¶ Cria o personagem principal na arena do Kwarwp na posição definida.
Parameters: - x – coluna em que o elemento será posicionado.
- y – linha em que o elemento será posicionado.
- cena – cena em que o elemento será posicionado.
-
lado
= None¶ Largura da casa da arena dos desafios, número de colunas e linhas no mapa
-
lin
= None¶ Largura da casa da arena dos desafios, número de colunas e linhas no mapa
-
maloc
(imagem, x, y, cena)[source]¶ Cria uma maloca na arena do Kwarwp na posição definida.
Parameters: - x – coluna em que o elemento será posicionado.
- y – linha em que o elemento será posicionado.
- cena – cena em que o elemento será posicionado.
Cria uma vaga vazia e coloca o componente dentro dela.
-
mapa
= None¶ Cria um matriz com os elementos descritos em cada linha de texto
-
os_indios
= None¶ Instância do personagem principal, o índio, vai ser atribuído pela fábrica do índio
-
taba
= None¶ Cria um dicionário com os elementos traduzidos a partir da interpretação do mapa
-
vazio
(imagem, x, y, cena)[source]¶ Cria um espaço vazio na arena do Kwarwp na posição definida.
Parameters: - x – coluna em que o elemento será posicionado.
- y – linha em que o elemento será posicionado.
- cena – cena em que o elemento será posicionado.
-
vitollino
= None¶ Referência estática para obter o engenho de jogo.
-
kwarwp.kwarapp.
MAPA_INICIO
= '\n..#^¨..\n'¶ Mapa com o posicionamento inicial dos elementos.
-
class
kwarwp.kwarapp.
Ponto
(x, y)¶ Par de coordenadas na direção horizontal (x) e vertiacal (y).
-
x
¶ Alias for field number 0
-
y
¶ Alias for field number 1
-