Criando um jogo com apenas 5 eventos




Vamos aprender a fazer um jogo simples (com apenas 5 eventos) no MMF. Para este exemplo vou usar sprites e sons de Mário. Você pode baixar vários no Mario Fan Games Galaxy (http://www.mfgg.net).

Primeiro, defina o tamanho (size) do seu frame (em Storyboard Editor ou em propriedades do frame, na aba "Settings") e o tamanho da tela (em propriedades da aplicação, na aba "Window") para 256 x 207 (que é o tamanho do Backdrop que vamos usar no jogo do exemplo).

Agora clique com o botão direito no frame e selecione "Insert object". Depois escolha "Active", que são os objetos animados. Clique duas vezes no objeto que você acabou de criar para abrir o Picture Editor. No nosso caso vamos importar um sprite do Mário.

Agora clique no Mário e na Properties Toolbar escolha a aba "Movement" (o bonequinho azul) e defina o tipo de movimento para "Platform". Depois, crie mais um Active object (um cogumelo), e na aba "Movement" defina o tipo de movimento para "Bouncing Ball" (deixe a "Initial direction" apenas para baixo e defina a "Speed" para 30).

Para terminar crie um "Backdrop object" (fundo de tela do jogo) e um "Score" (mostra os pontos do jogador).

Agora vamos programar.

Abra o Event Editor (Ctrl + E). São apenas 5 eventos:

CONDIÇÃO: Clique em "Storyboard controls" (o tabuleiro de xadrez), "Start of Frame".
AÇÃO: Em "Sound", selecione "Music" e em "Play music" escolha a música que vai tocar no jogo.

Esse evento é para colocar música.

CONDIÇÃO: Clique no (objeto) "Mário", "Position" e em "Test Position" (marcando todas as setas que indicam que o objeto estaria saindo da área do frame). Ou então, se quiser fazer o jogo com chão, clique no (objeto) "Mário", "Collisions", "Backdrop". Com esse segundo método, você precisa criar 3 obstáculos (backdrops): um para o chão, e dois para o Mário não sair da tela.
AÇÃO: No "Mário", selecione "Movement" e "Stop".

Esse evento impede que o Mário caia da tela quando você executa o jogo.

CONDIÇÃO: Clique em "The timer" (o relógio), selecione "Every" e coloque 00"-70.
AÇÃO: "Em Create new objects", selecione o "cogumelo" (x=128 y=-10). Depois no "cogumelo" selecione "Position", "Set X coordinate..." e escreva "Random(Frame Width)" no Expression Editor.

Esse evento cria, a cada 00"-70, um novo cogumelo em uma posição horizontal aleatória do frame.

CONDIÇÃO: Clique no "Mário", "Collisions", "Another object" e selecione o "cogumelo".
AÇÃO: Em "Sound", selecione "Sample" e em "Play sample" escolha o som que vai tocar. Em "Player 1", selecione "Score", "Add to score" e coloque "1". No "cogumelo" selecione "Destroy".

Esse evento adiciona 1 ponto ao seu Score para cada cogumelo que o Mário pegar, toca um som e destrói o cogumelo.

CONDIÇÃO: Clique no "cogumelo", "Position" e em "Test Position" (marcando a seta que indica que o objeto estaria saindo da área do frame pela parte de baixo).
AÇÃO: Em "Storyboard Controls", selecione "Next frame".

Esse evento passa para o próximo frame quando o Mário não conseguir pegar o cogumelo.

Clique em "Run aplication" para rodar o jogo e ver como ficou. Agora crie um frame para a tela de título e outro para os Hi-scores (use o objeto "Hi-score") e pronto! Terminamos nosso jogo!