Francisco Gonçalves Cerqueira (up201905337@fe.up.pt)
Criar um clone com um aspeto mais recente do Flash Gordon (Atari 2600) em Pygame.
Neste jogo, o jogador terá de se movimentar ao longo de um labirinto, indicado na metade inferior, com o objetivo de eliminar todos os inimigos. Para isso, o jogador terá de gerir a sua atenção entre as duas metades do ecrã. O jogador perde quando é atingido pelos adversários três vezes.
FPRO 2019/20: Flash Gordon (Atari)
- Pygame
- Random
- Flash's Theme - Queen
- Vultan's Theme (Attack of the Hawk Men) - Queen
- Botões:
- Reset: Reiniciar a partida
- Som: Pausar/recomeçar a música de fundo
- Teclas:
- Setas/WASD: Movimentar a nave
- Espaço: Disparar
MATRIZ PARA O MAPA- fazer uma matriz binária (tamanho do mapa=32x8), em que teremos:
- vazio=0
- parede=1
- Desenhar os objetos no ecrã
- para já cada objeto deverá ter 25x25 porque assim vai ocupar 25*32=800 pixeis, que é um tamanho razoável
- colocar pontos de rescue ao longo do mapa
- fazer uma matriz binária (tamanho do mapa=32x8), em que teremos:
DESENHAR ECRÃ CIMA- Desenhar nave
- Desenhar também no mapa
TECLAS- Navegação da nave usando as teclas de cursor
COLISÃO NO MAPA- Não deixar nave mover se for contra alguma parede no mapa
- Quando chega a um rescue, desenhar 5 inimigos no ecrã de cima
- Usar aleatoriedade para decidir o tipo de inimigo e a direção do movimento
- Remover rescue point correspondente
- Transportar o jogador quando este chega aos extremos
COLISÃO ECRÃ DE CIMA- A nave não deve ultrapassar o ecrã
- Quando existe colisão da nave com inimigo, o jogador perde uma vida
- Nave pode disparar
- Quando existe colisão tiro com inimigo, o inimigo e o tiro desaparecem
DESENHAR VIDAS- Implementar sistema de vida do jogador
- Adicionar tempo de recuperação após perder uma vida
- O nível termina quando não existem mais vidas
CONSOLA- Aspetos Gráficos
- Botões
- Reset: Começar o jogo de novo
- FPS: Configurar FPS do jogo
- Visor
- Pontuação
- Vidas
MENUS- Ao iniciar o jogo deve ser apresentada uma tela inicial
- Quando a partida termina, é apresentado o menu de pontuação
RESTART- Opção para reiniciar partida
- Todos os rescue points coletados
- O jogo reinicia mantendo a pontuação, vidas e aumentando a velocidade dos inimigos
- A partida termina
- São apresentadas as pontuações da partida atual e da mais elevada de todas as partidas realizadas
RETOQUES FINAIS- Tornado
- Área com grande concentração de inimigos
- Estrelas
- Objeto meramente decorativo, permitindo uma ilusão de movimento
- Tornado
EFEITOS SONOROS- Todas as ações realizadas devem ter um efeito sonoro associado
- Deve existir pelo menos uma música de fundo
18/11/2019