Fórmula de Jogos ::: Desenvolvimento de Jogos - 2015 / 2016 / 2017 / 2018

Como criar um jogo - Parte 3

April 23, 2016

 

Bem-vindos a terceira aula do curso de desenvolvimento de jogos digitais. Nesta aula vamos finalizar o nosso jogo com a inserção do Score e das vidas. 


 

11. Completando o Jogo

Se você executar o seu jogo, você vai ver que a pontuação e vidas são agora apresentados , mas eles não mudam: temos que entrar as ações que irão modificá-los.  

 

Volte para o editor de eventos. 

 

O Score 

 

Queremos adicionar pontos para a pontuação quando a bola destrói um tijolo. Como você pode imaginar , nós temos que adicionar uma nova ação na linha onde a colisão entre o tijolo e a bola. Localize esta linha , e mova o mouse horizontalmente sob o objeto Player 1 .

Botão direito do mouse sobre o quadrado vazio localizado no cruzamento . Isso abre o menu Player 1 com as ações do objeto.

Como você pode ver este menu contém opções para alterar o número de vidas e a pontuação . Selecione a opção " Add to Score" . 

 

Nota: Como você observou , a ação "Add to score" está localizado sob o objeto Player 1 e não no objeto Score.

 

 

Uma nova caixa de diálogo aparece, que é o editor de expressão. Esta caixa de diálogo permite-nos realizar cálculos (e até mesmo fórmulas mais complexas ). Por enquanto, basta digitar o número 100 na zona de edição branco, e clicar em OK. 

 

 

Neste momento é inserida uma nova ação. Se você testar o seu jogo você vai ver que a pontuação agora aumenta à medida que os tijolos são destruídos.  

 

As vidas  

 

O objeto "Live - Vidas" inicia automaticamente com três vidas.  

 

Vamos pensar um pouco. Queremos subtrair uma vida quando o jogador perde a bola e vai para fora na parte inferior do campo de jogo . Isso nos dá o seguinte evento: " Quando a bola deixa a área na parte inferior / Subtrair uma vida do jogador " . Por isso, precisamos de introduzir uma nova linha de evento. 

 

 

Você certamente sabe o procedimento até agora : clique em New condição , e clique direito sobre a bola para abrir seu menu de condições. Agora, localize a "posição de teste de BallGolden " opção, esta é a que pretende utilizar. Ele imediatamente abre uma nova caixa de diálogo para que você possa escolher qual lado da estrutura correta. Selecione a opção "Leaves in the bottom ?" e clique em OK. 

 

 

Temos agora a nossa nova linha : 

 

 

Agora podemos entrar na ação para subtrair um do número de vidas . Você deve ser capaz de fazê-lo sozinho : localizar o quadrado abaixo do objeto " Player 1 " na frente da nossa nova condição , e clique direito . Em seguida, escolha " Subtrair da quantidade de vidas " , e digite 1 no editor de expressão. 

 

Nota: Como você observou , a ação " Subtrair da quantidade de vidas " está localizado sob o objeto Player 1 e não no objeto Lives. 

 

Nós também poderíamos fazer um efeito de áudio especial quando o jogador perde uma bola. Abra o menu de ações do objeto de "sound" e escolha reproduzir amostra. Localize o diretório onde extraiu os sons antes e selecione o arquivo : " DOWN01.WAV " . Antes de fechar o seletor de som , marque a caixa de seleção pequeno na parte inferior direita da caixa " Uninterruptable " o som será reproduzido integralmente e não será interrompido por outros sons. 

 

 

Se você lançar o seu jogo, você pode ver que tudo funciona muito bem, exceto por uma coisa : quando a bola deixar a área de jogo no fundo, ele está perdido para sempre ! Devemos programar uma ação para trazê-lo de volta! Vamos fazer isso. Localize o mouse na mesma linha do que antes, sob o objeto BallGolden , e clique direito . No menu Ação da bola , localize a opção " Position > Select position " . Esta opção exibe automaticamente o quadro para que você possa apontar para a nova posição do objeto . Posicione a cruz piscando no meio do quadro, sob os tijolos, e clique em OK. 

 

 

Nós agora entramos em uma nova ação que vai fazer o reposicionamento da bola automaticamente no centro da tela quando ela desaparece na parte inferior.

Teste o seu jogo agora para ver como esta funcionando. Você percebe imediatamente que é muito difícil de agarrar a bola quando se trata de volta na área de jogo. A bola vai em direção ao fundo em uma alta velocidade e na maioria das vezes o jogador acaba perdendo.

 
O que precisamos fazer, é reposicionar a bola na área de jogo. Isso pode ser feito por meio de uma ação simples.

 

No menu "action", selecione a opção "Direction > Selection direction". Isso abrirá uma caixa de diálogo semelhante à que temos encontrado ao definir a propriedade movimento da bola . Selecione apenas as indicações que apontam para cima e uma direção randômica será escolhida para a bola durante a execução.

 

 

Se você testar o seu jogo poderá perceber que a jogabilidade está bem melhor.

 

 

12. A tabela Hi-Score
 


Uma última coisa a fazer para que possamos colocar alguns retoques no nosso jogo e detectar quando o número de vidas é igual a zero, e quando for, terminar o jogo. Isso pode ser feito de maneira muito simples. Clique em "New condition" e na caixa de diálogo "New condition" e clique direito sobre o objeto "Player 1". Escolha a opção "Compare to player´s number of lives" . 

 

 

Isso abre o editor de expressão. Nós queremos comparar o número de vidas a zero. 

 

Vamos a ação. Clique com o lado direito do mouse em "StoryBoard Controls" e escolha a opção "Next Frame". 


 

 

Você certamente entende que, quando o número de vidas chega a zero, o sistema passará automaticamente para o próximo quadro. Próximo quadro ? Mas não há nenhum próximo quadro ainda! Bem, vamos criar um novo quadro com uma tabela de pontuação . 

 

Um novo quadro 

 

Para fazer isso , precisamos visualizar o editor de Storyboard. Você se lembra, o primeiro editor que encontramos. Bem, este é ele. Clique no ícone "Storyboard Editor" na barra de ferramentas. 

 

 

O editor storyboard é o lugar onde você pode ter uma visão global da sua aplicação. Ele mostra todos os quadros , um após o outro. Por enquanto só temos um quadro. Estamos indo para adicionar um novo quadro. Clique no botão " 2": 

 
 

 

Você pode ver imediatamente que um novo quadro foi adicionado à nossa aplicação. Nos vamos agora inserir alguns objetos no quadro, clique no botão "2" para ir para o "Frame Editor". 

 

Primeiro de tudo, vamos inserir um objeto de fundo com uma imagem agradável . Localize o objeto "ScreenHighScore" na janela da biblioteca e arraste e solte-o no quadro. Posicione corretamente para que ele cubre toda área em branco.

 

 

Agora, para o objeto Hi -Score . Selecione a opção "Insert > New Object" no menu principal , e escolha o objeto Hi-Score.

Solte-o no meio do quadro. Na barra de ferramentas de propriedade.

Agora você pode ver todas as propriedades do objeto. Sinta-se livre para experimentar . Não se esqueça de alterar a fonte do objeto clicando na aba "Text Options" na barra de ferramentas propriedade. Pessoalmente, eu escolhi uma fonte em negrito Arial com o tamanho 20. 

 

 

 

Nós temos agora que programar os eventos de nosso quadro de pontuação "High-Score". Clique no botão "Event editor" na barra de ferramentas . Como você pode ver, a lista de eventos está vazio. O que nós queremos fazer é simples: exibir tabela de pontuação elevada por 10 segundos e, em seguida, reiniciar o jogo. 

 

Vamos agora utilizar o objeto "Timer". Clique em "New Condition" e na caixa de diálogo "New Condition", clique com o lado direito do mouse sobre o objeto "Timer". Escolha a opção " Is the timer equal to a certain value ? "
 

 

 

E na caixa de diálogo seguinte , digite 10 segundos ( você pode arrastar a barra ou digitar um número no campo) . 

 

 

Agora para a ação. Mova o mouse para cima do objeto "Storyboard Controls" e clique com o botão direito do mouse. No menu de ações escolha a opção "Run Aplication". 

 

 

Agora você pode testar o seu jogo "BreakOut" desde o início. Para fazê-lo , não clique no ícone Executar Frame como você está acostumado a fazer, mas clique no ícone "Run Aplication".

 

 

13. A página de títulos

 


O Nosso jogo está quase completo. Mais ainda esta faltando um página de títulos (Menu).

 

Vamos agora criar o nosso menu clicando no ícone do Editor de Storyboard.

 

Em seguida, clique no botão "3". Um novo quadro é adicionado no final da aplicação . Agora clique na zona vazia ao lado do número 3 , mantenha pressionado o botão do mouse e arraste o quadro sobre o primeiro.

 

  

Solte o mouse , o novo quadro é agora o primeiro da aplicação. 


 

 

Vamos editar o quadro: clique no botão 1 para abrir o editor Frame. 

 

Localize na biblioteca, o objeto chamado : ScreenTitle e solte-o no quadro. Posicione para que ele possa cobrir toda área branca. 

 


Nós vamos inserir um objeto Botão neste quadro para que possamos iniciar o jogo.

 

Selecione a opção "Inserir" / "New object" no menu principal , e clique em " Interface" no painel esquerdo . Em seguida, escolha o objeto "Button" na lista de objetos exibidos .

Em seguida, solte esse objeto no quadro. As propriedades do novo objeto de botão são exibidos na barra de ferramentas propriedade. Precisamos mudar o texto do botão: clique no " texto" propriedade e digite "Play" na zona de edição. 

 

Em seguida, redimensionar o botão e posicioná-lo para o desejo do seu coração. 

 

 

Precisamos agora de definir o evento para este quadro (Clique no botão editor de eventos).

 

Este evento é simples: quando o usuário clica no botão , vamos para o próximo quadro.

 

Vamos seguir os comandos para que possamos finalizar o nosso jogos. Clique em New condição para abrir a caixa de diálogo condição. Como o botão do mouse sobre o objeto "Button" selecione a opção "Botão clicado? " . Esta é a nossa condição.

Agora para a ação, clique com o botão direito do mouse na área vazia sob os controles de Storyboard e escolha a opção "Next Frame" no menu.  

 
Parabéns, finalmente temos o nosso jogo pronto. 

 

Aproveite para jogar um pouco e descobrir todos os macetes. O mais importante é o sentimento de dever cumprido depois de ter criado um jogo só seu.

Até mais Galera !!! E não se esqueçam de visitar o nosso canal no Youtube.

 

 

 

 

 

 

 

 

 

 

Please reload