Pular para o conteúdo
Jogos Digitais
Nesta página
  1. Objetivos de aprendizagem
  2. Pré-requisitos
  3. Materiais
  4. Conceitos
  5. Exemplos
  6. Tutorial passo a passo
  7. Imagens
  8. Indicação da interface
  9. O código completo
  10. Explicação do código
  11. Resultado esperado (testado)
  12. Problemas comuns
  13. Exercício guiado
  14. Desafio individual
  15. Desafio avançado (opcional)
  16. Critérios de avaliação
  17. Checklist de conclusão
  18. Extensão

Módulo 6 · Aula 6.6 · Menu de fases, vidas e recomeço

Carga horáriaDificuldadeFerramentaCompetências
6 h/a⭐⭐GDevelop 5C2, C3

Objetivos de aprendizagem

  1. Fazer um menu que mostra cada fase como liberada ou trancada.
  2. Escolher a fase pelo teclado só se ela estiver liberada.
  3. Usar vidas globais que passam de uma fase para outra.
  4. Recomeçar a fase atual ao perder uma vida e ir para a tela de fim ao perder todas.

Pré-requisitos

Aulas 6.2 e 6.5.

Materiais

Computador com o GDevelop.

Conceitos

Menu como primeira cena. A cena Menu é a primeira do projeto (a bandeirinha ao lado do nome no gerenciador). Ela lê o progresso (Aula 6.5) e mostra as opções.

Texto que depende de variável. Cada opção é um objeto Texto (Opcao1, Opcao2, Opcao3). Dois eventos por opção: se FaseLiberada ≥ n, mostra o nome da fase; se for menor, mostra "trancada".

Teclas de número. Para a tecla 1 da fileira de cima do teclado, o nome é "Num1" (na Tecla acabou de ser pressionada). O teclado numérico da direita tem outros nomes; o curso usa a fileira de cima.

Vidas globais. Vidas é global: perder uma vida na Fase 2 continua valendo na Fase 3. O menu põe Vidas = 3 ao começar uma partida.

Recomeço. Pego pelo cão: Vidas − 1 e, se ainda há vidas, Alterar a cena para a própria fase ("Fase" + ToString(Fase)). Trocar para a mesma cena recria tudo: castanhas voltam, cães voltam aos postos. Sem vidas: Resultado = "perdeu" e cena Fim.

Fim volta ao menu. A tela de fim espera 1 segundo (Aula 3.8) e [Espaço] volta para o Menu, que lê de novo o progresso.

Exemplos

recursos/imagens/gdevelop/cajueiral-tela-menu.png: menu sem progresso, com a Fase 1 liberada e as Fases 2 e 3 trancadas.

Tutorial passo a passo

Parte A. A cena Menu (60 min)

  1. Cena Menu, marcada como primeira cena. Título, instruções e três textos de opção, e um rodapé "Teclas 1, 2 e 3 escolhem a fase. R apaga o progresso."
  2. Os eventos de texto das opções (dois por opção, a 1 sempre liberada).

Parte B. Escolher (60 min)

  1. Tecla acabou de ser pressionada "Num1" → Vidas = 3, cena "Fase1".
  2. "Num2" e FaseLiberada ≥ 2 → Vidas = 3, cena "Fase2". O mesmo para a 3.
  3. Teste: com o progresso apagado, a tecla 2 não pode fazer nada.

Parte C. Perder vida e recomeçar (60 min)

  1. Em Regras: Colisão Jogador com Cao → Vidas − 1, som; subeventos Vidas > 0 → cena da própria fase; Vidas ≤ 0 → "perdeu" e Fim.
  2. Placar mostra Vidas.

Parte D. Fim (60 min)

  1. Cena Fim com mensagem por Resultado e [Espaço] para o menu depois de 1 s.

Imagens

  • Captura real, eventos do menu (textos das opções, teclas "Num1", "Num2", "Num3", tecla "r"): recursos/imagens/gdevelop/captura-cajueiral-menu-eventos.png.
  • Captura real, grupo "Pego pelo cão": recursos/imagens/gdevelop/captura-cajueiral-regras-4.png.
  • Captura real, menu rodando: recursos/imagens/gdevelop/cajueiral-tela-menu.png.

Indicação da interface

ItemOnde fica
Primeira cenagerenciador do projeto, a cena com a bandeirinha; para mudar, menu ⋮ da cena (opção de definir como cena inicial; nome exato não conferido)
Nome da teclano campo da condição de tecla, digitar entre aspas, ou escolher na lista que o editor oferece

O código completo

Cena Menu (parte):
(sem condição)                        → Alterar o texto de Opcao1: "1   Fase 1: O primeiro cercado"
A variável FaseLiberada ≥ 2           → Alterar o texto de Opcao2: "2   Fase 2: Dois cães"
A variável FaseLiberada < 2           → Alterar o texto de Opcao2: "2   Fase 2: trancada"
A tecla "Num1" foi pressionada        → Vidas = 3; Alterar para a cena "Fase1"
A tecla "Num2" foi pressionada
A variável FaseLiberada ≥ 2           → Vidas = 3; Alterar para a cena "Fase2"

Regras, grupo "Pego pelo cão":
Comentário: O cão encostou: perde uma vida e a fase recomeça do início (as castanhas voltam).
Jogador está em colisão com Cao       → Alterar a variável Vidas: subtrair 1
                                        Reproduzir o som sons/pego.wav, vol.: 70, loop: não
    subevento: A variável Vidas > 0   → Alterar para a cena "Fase" + ToString(Fase)
    subevento: A variável Vidas ≤ 0   → Alterar a variável Resultado: definir como "perdeu"
                                        Alterar para a cena "Fim"

Explicação do código

  • A troca de cena acontece no fim do quadro. Mesmo que dois cães encostem ao mesmo tempo, a ação de subtrair vida roda uma vez só, porque é uma ação de variável num único evento.
  • O texto das opções é refeito todo quadro. Simples e suficiente: são três textos.

Resultado esperado (testado)

Teste automático no Cajueiral: sem progresso, as Fases 2 e 3 aparecem trancadas e a tecla 2 não sai do menu; a tecla 1 abre a Fase 1 com 3 vidas; o cão encostando na Fase 2 tirou 1 vida e a fase recomeçou com as 6 castanhas de volta; com o progresso salvo, a tecla 3 abriu direto a Fase 3; perdendo todas as vidas, o jogo foi para o Fim com a mensagem de derrota.

Problemas comuns

SintomaCausaSolução
A tecla 1 não faz nadanome da tecla "1" em vez de "Num1"usar "Num1"
Vidas voltam a 3 em cada faseVidas como variável de cenavariável global
Ao recomeçar, as castanhas já pegas continuam sumidasnão trocou de cena, só reposicionou o jogadortrocar para a própria cena
Começa direto na Fase 1Menu não é a primeira cenamarcar Menu como inicial

Exercício guiado

O jogador tem 1 vida na Fase 3 e é pego. Para qual cena o jogo vai, e o que o menu mostra depois? (Resposta: Fim com derrota; o menu mostra as três fases liberadas, porque o progresso continua salvo.)

Desafio individual

Mostre no menu um coração para cada vida da última partida (Aula 5.7).

Desafio avançado (opcional)

Permita escolher a fase também com o mouse ou o toque, clicando no texto da opção (Aula 3.9).

Critérios de avaliação

  • Menu com fases trancadas e liberadas corretas.
  • Vidas globais e recomeço da fase.

Checklist de conclusão

Extensão

Analise o menu de um jogo que você conhece: quantas opções, o que fica trancado, como o jogo avisa que algo foi liberado.