Tutorial de um Jogo de Plataforma Unity – Parte Final

Chegamos ao capítulo final dessa série de tutoriais.

Recapitule todos os passos: [link para parte 1, 2, 3 e 4].

No tutorial anterior, criamos o fluxo básico do jogo, com o personagem chegando ao final da fase, morrendo até game over.

Adicionamos informações de quantas vidas ele possui na tela e brincamos de trocar cenas.

Nesse tutorial, vamos adicionar som e um menu.

O que precisamos?

Para esse tutorial vamos precisar dos sons. Vamos usar o som de corrida que você pode baixar aqui.

 

Criando Sons

Importe o arquivo de som para a pasta Assets do seu projeto. Para isso, apenas arraste o arquivo para a pasta e o solte lá.

Selecione o arquivo recém importado e desmarque a opção 3D Sound.

Selecione o nosso herói e adicione um novo componente do tipo Audio Source. Para isso, clique em Add Component à Audio à Audio Source.

Desmarque a opção Play on Awake e arraste o arquivo de áudio para o campo Audio Clip.

 

Agora abra o arquivo HeroBehaviour e no final do método FixedUpdate adicione as linhas de código:

Code:

if (Mathf.Abs (axis) > 0 && noChao) {

                var audio = GetComponent<AudioSource> ();

                if(!audio.isPlaying)

                               audio.Play ();

                } else {

                               audio.Stop();
                }
}

Basicamente verificamos se o personagem está no chão e se está em movimento, depois recuperamos o componente AudioSource dele e, se ele não estiver tocando, o tocamos. Caso o personagem pare ou pule, paramos o áudio. DICA: aqui podemos adicionar um som de pulo da mesma forma que fizemos com o som de corrida.

Execute o projeto e você verá que agora temos o som de passos quando o personagem corre. Se o som estiver muito alto, podemos alterar a propriedade Volume do AudioSource. Eu coloquei 0.1.

 

Criando um Menu

Para criar um menu inicial crie uma nova cena, vá em File->new Scene e a salve como Menu.

Crie um GameObject vazio (GameObject-> Create Empty), adicione um novo script nele (Add Component-> New Script) e nomeie como MenuScript.cs.

Crie um novo método chamado OnGUI() e adicione as seguintes linhas de código:

Code:

void OnGUI()
{

    if (GUI.Button(new Rect(Screen.width/2 - 25, Screen.height/2 - 15, 50, 30),"Inicio"))

    {
             Application.LoadLevel("Fase1");
    }
}

Criamos um botão no formato de um retângulo posicionado no meio da tela, de tamanho 50 x 30 e que, quando clicado, carrega a Fase1.

Para finalizar, só precisamos registrar o menu no build. Va em File à Build Settings, clique em Add Current, clique e arraste o menu para que ele seja o primeiro item da lista.

 

Use a imaginação

Pronto, com esses conceitos vocês podem criar os seus próprios jogos! Não se esqueçam de sempre olharem os tutoriais da internet e a API do Unity que são sempre muito úteis!

O resultado final desse jogo pode ser visto aqui: Jogo Final Plataforma.

Lembre-se que um bom jogo não precisa ser algo complexo! Tem que ser apenas divertido! J

Quero ver vocês fazendo jogos e postando aqui os resultados.

Outra coisa que quero é que vocês sugiram o que a próxima série de tutoriais de Unity deve ter! J

Um abraço a todos que acompanharam até aqui e não se esqueçam de que, se vocês quiserem ver esse e outros tutoriais em vídeo, acessem: http://www.patreon.com/fabricadejogos e colaborem. Sua ajuda é muito importante.

É isso, pessoas legais! Nos vemos em breve!

Filipe Leal

Bacharel em Ciência da Computação pela UDESC e certificado como Microsoft Specialist. Atualmente trabalha como programador na Basecorp Learning Systems. Reside em Edmonton - Canadá. Faixa preta com 1o. grau em Pa-kua, tem preferência por jogos de Ação/Aventura, RPG, Luta e Party Games. Seu jogo favorito é The Legend of Zelda - Ocarina of Time.

Send this to a friend