Invasores Documentação¶
Universo¶
-
class
universo.
Universo
(dimensao: typing.Tuple[int, int], quadros: int = 60) → None[código fonte]¶ Responsável pela manutenção do conjunto de objetos do jogo (
objetodojogo.ObjetoDoJogo
). Esta classe varre sua lista de objetos, chamando o método de respiração de cada objeto, rotina de cálculo de pontos e também gerando o fundo de estrelas.-
adicione
(objeto: objetodojogo.ObjetoDoJogo)[código fonte]¶ Adiciona um objeto à lista de desenho.
-
atualize
()[código fonte]¶ Atualiza o estado do jogo, chamando o método
ObjetoDoJogo.respire()
de todos os objetos na lista de desenho.
-
desenhe
(posicao: typing.List[int], imagem)[código fonte]¶ Desenha a imagem na posição x, y indicada
-
desenhe_fundo
()[código fonte]¶ Apaga a tela e desenha as estrelas
-
desenhe_objetos
()[código fonte]¶ Desenha a lista de objetos na tela
-
escreva
(posicao: typing.List[int], texto, cor, tamanho=None)[código fonte]¶ Escreve uma mensagem de texto na posição x, y passada. Se uma das posições for igual a -1, centraliza no eixo específico
-
finalize_sincronia
()[código fonte]¶ Espera o fim do frame atual.
-
gere_estrelas
() → None[código fonte]¶ Gera aleatoriamente as estrelas do fundo. As coordenadas x e y de cada estrela são escolhidas aleatoriamente e representão a posição da estrela. z é o tamanho da estrela.
-
objetos
= None¶ lista de objetos do jogo
-
reconfigura_video
(mensagem: int)[código fonte]¶ Usado para trocar de resolução. Atualiza os limites do universo, gera novas estrelas.
-
remova
(objeto: objetodojogo.ObjetoDoJogo)[código fonte]¶ Retira um objeto da lista de desenho e da lista de colisões
-
teste_colisao
()[código fonte]¶ Verifica se objetos de classes diferentes colidem uns com os outros
-
Objetos¶
-
class
objetodojogo.
ObjetoDoJogo
(nome, pos, imagem=None, tipo=None)[código fonte]¶ Implementa os objetos do universo. Um objeto do jogo representa uma imagem que será desenhada a cada frame. Para mudar o estado do objeto, o universo chama o método
respire()
a cada frame.Quando dois objetos colidem, o valor de dano é utilizado para subtrair um valor da resistência do outro objeto.
Quando a resistência chega a zero, o objeto é removido do universo
-
carregue_imagem
(nome: str) → None[código fonte]¶
-
colida
(objeto)[código fonte]¶ Chamado quando dois objetos colidem no jogo. Para evitar que os inimigos colidam entre si, apenas objetos com nomes diferentes podem colidir entre si.
Em caso de colisão, retira da resistencia do objeto atual o dano causado pelo outro objeto.
-
dano
= None¶ dano é o valor subtraido quando algo colide com este objeto
-
estado
= None¶ estado variável utilizada para controlar estados e principalmente troca de imagens
-
imagem
¶ Bitmap usado para desenhar este objeto
-
ix
= None¶ ix é o incremento x aplicado durante a respiração
-
iy
= None¶ iy é o incremento y aplicado durante a respiração
-
lx
= None¶ lx é a largura da imagem em pontos
-
ly
= None¶ ly é a altura da imagem em pontos
-
makeRect
() → pygame.Rect[código fonte]¶ Retorna um retângulo com as dimensões deste objeto
-
move
(direcao: int)[código fonte]¶ Move o objeto, na direção indicada.
Observar que direção é um int!
- 0 - direita
- 1 - esquerda
- 2 - para baixo
- 3 - para cima
A implementação deste método é responsável por fazer os ajustes de velocidade e posição necessários.
-
nome
= None¶ nome é utilizada para identificar um grupo de objetos
-
pos
= None¶ pos é a posicao inicial do objeto
-
resistencia
= None¶ resistencia é o valor que quando zerado retira o objeto do jogo
-
respire
()[código fonte]¶ Chamado a cada frame. Utilizado para modificar o estado do objeto.
-
retangulo
() → typing.Tuple[int, int, int, int][código fonte]¶
-
universo
= None¶ universo aponta para o universo ao qual este objeto pertence seu valor é setado pela classe Universo no momento da inclusão
-
visivel
= None¶ visivel indica se o objeto deve ou não ser desenhado
-
-
class
objetodojogo.
Posicao2D
(x, y)[código fonte]¶ -
add
(ix, iy)[código fonte]¶
-
tuple
()[código fonte]¶
-
Jogo¶
-
class
invasores.
Invasores
(tela)[código fonte]¶ Esta classe é responsavel pelo jogo em si. Toda customização deve ser feita aqui
-
atira
(evento=None)[código fonte]¶
-
aumentamisseis
()[código fonte]¶ Cheat para aumentar o número de mísseis do jogador em 1000
-
aumentaresistencia
()[código fonte]¶ Cheat para aumentar a resistência do jogador em 1000 pontos
-
avanca_fase
()[código fonte]¶
-
baixo
()[código fonte]¶
-
calcula_pontos
(universo, a, b)[código fonte]¶
-
carrega_fase
()[código fonte]¶
-
carregue_imagens
()[código fonte]¶
-
cima
()[código fonte]¶
-
cria_alienigena
(xi, yi, c, l, script, xl=60, yl=60)[código fonte]¶
-
cria_municao
(carga=100)[código fonte]¶
-
cria_resistencia
(carga=100)[código fonte]¶
-
direita
()[código fonte]¶
-
esquerda
()[código fonte]¶
-
fase1
()[código fonte]¶
-
fase2
()[código fonte]¶
-
faseT
()[código fonte]¶
-
incrementa_tempo_script
()[código fonte]¶
-
inicializa_comandos
()[código fonte]¶
-
inicializa_eventos
()[código fonte]¶
-
mostra_texto
(ttexto)[código fonte]¶
-
movejoystick
(evento)[código fonte]¶
-
movemouse
(evento)[código fonte]¶
-
nova_partida
()[código fonte]¶
-
para_tempo_script
(motivo)[código fonte]¶
-
repeticao_do_jogo
()[código fonte]¶ Loop principal do jogo. Apaga a tela, carrega a fase e repete até o jogador morrer ou escolher para sair.
-
saida
(evento=None)[código fonte]¶
-
tela_fim_de_jogo
()[código fonte]¶
-
tela_inicial
()[código fonte]¶
-
-
invasores.
jogo
()[código fonte]¶ Cria o loop do jogo. Alterna entre os três estados principais do invasores:
O usuário pode pressionar X para sair em qualquer tela.
Inimigos¶
-
class
alienigena.
Alienigena
(nome, pos, imagem, tipo='INIMIGO')[código fonte]¶ -
alienigenas_vivos
= 0¶
-
move
(direcao)[código fonte]¶
-
respire
()[código fonte]¶
-
set_script
(script)[código fonte]¶
-
Classes de Suporte¶
-
class
score.
Score
(nome, pos=[0, 0])[código fonte]¶ Utilizada para exibir o score do jogo. Implementada como um objeto normal, podendo inclusive suportar animação.
-
respire
()[código fonte]¶
-
-
class
score.
ScoreComFPS
(nome, pos)[código fonte]¶ -
respire
()[código fonte]¶
-
-
class
score.
Texto
(nome, pos, texto, tamanho, tempo, universo, cor)[código fonte]¶ Utilizada para exibir o score do jogo. Implementada como um objeto normal, podendo inclusive suportar animação.
-
respire
()[código fonte]¶ Decrementa a resistência a cada frame. Com objetivo de fazer o texto sumir após x frames
-
-
naleatorios.
faixa
(inicio, fim=None)[código fonte]¶ Gera um número aleatório entre inicio e fim
-
naleatorios.
pega
()[código fonte]¶ Retorna um número aleatório entre 0 e 1
-
som.
canais
(nome=None)[código fonte]¶
-
som.
carregue
(nome: str, local: str)[código fonte]¶
-
som.
reproduza
(nome: str)[código fonte]¶
-
class
temporizador.
Temporizador
(nome, descricao, cabecalho='')[código fonte]¶ Classe utilitária, usada para registrar o tempo decorrido entre dois pontos
-
fim
()[código fonte]¶
-
inicio
(valores=[])[código fonte]¶
-
-
traducao.
dicionario
(lingua)[código fonte]¶
-
traducao.
pega
(chave)[código fonte]¶
-
class
traducao.
traducao
(prefixo)[código fonte]¶ -
carregaDicionario
(nome)[código fonte]¶
-
dicionario
= {}¶
-
lingua
= 'pt'¶
-
pega
(chave)[código fonte]¶
-
-
class
video.
Imagem
(nome, local)[código fonte]¶ -
altura
()[código fonte]¶
-
carregue_imagem
(nome, local)[código fonte]¶
-
largura
()[código fonte]¶
-
ponto_croma
(x, y)[código fonte]¶
-
-
class
video.
Video
(dimensao, tela_cheia=False)[código fonte]¶ -
adicione
(funcao)[código fonte]¶
-
anterior_modo
()[código fonte]¶
-
atualize
()[código fonte]¶
-
desenhe
(imagem, posicao)[código fonte]¶
-
faz_tela_cheia
(sim=None)[código fonte]¶
-
fonte
(tamanho)[código fonte]¶
-
icone
(imagem)[código fonte]¶
-
limpe
(cor=(0, 0, 0, 0))[código fonte]¶
-
modo
(dimensao, tela_cheia=None)[código fonte]¶
-
notifique
(mensagem)[código fonte]¶
-
proximo_modo
()[código fonte]¶
-
texto
(mensagem, cor)[código fonte]¶
-
titulo
(nome)[código fonte]¶
-
-
video.
carregue
(nome, local)[código fonte]¶
-
video.
imagem
(nome)[código fonte]¶