Criando a Title
http://www.youtube.com/watch?v=8yLUaea-k0o&feature=youtu.be
Download: Aqui!
Destiny Patch
Antes de começarmos o tutorial é necessário que você saiba algumas coisas sobre a ferramenta Destiny Patch. O Destiny Patch é o patch criado por Bananen-Joe e está em sua versão 2.0. (Clique aqui para conhecer seus conceitos básicos). Aconselho a baixarem a versão em inglês porque na versão traduzida os códigos também estão traduzidos, o que dificulta a compreensão.
Esse patch possui diversas ferramentas que deixarão o seu jogo mais dinâmico e uma delas é o DestinyScript, uma linguagem própria que permite a facilidade da programação e quebra o limite da mesma. (Clique aqui para saber como habilitá-lo.)
Parte 1
Criar a tela de título é muito simples, a programação é muito fácil. O que dificulta é o design das imagens que serão utilizadas. Há diversos tipos de titles. Na demo está presente uma das mais simples, contendo 3 opções com movimento livre, ou seja, há um loop entre as opções. Eu utilizei, apenas, 4 imagens, contando as opções e o cursor. Aproveitei que a cor do tile vazio é preta então não utilizei uma imagem de fundo. Como vocês podem reparar eu resolvi focar no código e não no visual. Isso está muito nítido no vídeo de demonstração.
O primeiro passo é retirar todos os heróis do grupo para que eles não apareçam na tela de título. Seria feioso isso, né? Siga o exemplo:
Você pode mudar o gráfico do herói na primeira aba do database mas é aconselhável que se retire a party por inteira.
Parte 2
Agora que fizemos uma pequena alteração no database vamos começar com os eventos. Digo eventos mas, no caso, só é preciso um evento em um mapa qualquer e com duas páginas. Interessante, não?
Crie um novo evento em Início Automático cujos comandos serão, em ordem: Mostrar as imagens utilizadas, Setar uma variável em 1(Esta será responsável para informar qual opção está em destaque) e Ativar uma switch. (Essa switch é a ponte para a Terabítia.) # Nomes de variáveis e/ou switches são opcionais.
Após criar esses comandos vamos nos preparar para editar a segunda página do evento. Segue o exemplo:
Parte 3
Espero que você tenha pego o espírito da coisa porque é agora que o bicho pega. kkk' Nem tanto.
Esse segundo evento deverá começar pela mesma switch antes criada como disparo e deverá estar em Processo Paralelo. Vamos aos comandos: (Melhor parte!)
Todo código no Destiny Script precisa começar com $. Se não começar desse jeito ele será lido como um comentário comum. Esqueci de dizer que os scripts por Destiny são feitos nos comentários? Bem, disse agora.
[spoiler=Código para a tecla Baixo]
$ if(Keyboard.GetKeyState(VK_DOWN)&& v[1]==1)Command.Wait(1); v[1]=2;Picture[4].Y =120;Command.PlaySound("mk1 cursor");elseif(Keyboard.GetKeyState(VK_DOWN)&& v[1]==2)Command.Wait(1); v[1]=3;Picture[4].Y =190;Command.PlaySound("mk1 cursor");elseif(Keyboard.GetKeyState(VK_DOWN)&& v[1]==3)Command.Wait(1); v[1]=1;Picture[4].Y =50;Command.PlaySound("mk1 cursor"); endif; endif; endif;
[/spoiler]
[spoiler=Código para a tecla Cima]
$ if(Keyboard.GetKeyState(VK_UP)&& v[1]==1)Command.Wait(1); v[1]=3;Picture[4].Y =190;Command.PlaySound("mk1 cursor");elseif(Keyboard.GetKeyState(VK_UP)&& v[1]==2)Command.Wait(1); v[1]=1;Picture[4].Y =50;Command.PlaySound("mk1 cursor");elseif(Keyboard.GetKeyState(VK_UP)&& v[1]==3)Command.Wait(1); v[1]=2;Picture[4].Y =120;Command.PlaySound("mk1 cursor"); endif; endif; endif;
[/spoiler]
[spoiler=Código para Confirmar Escolha]
$ if(Keyboard.GetKeyState(VK_Z)||Keyboard.GetKeyState(VK_RETURN))if(v[1]==1) v[1]=4;else if(v[1]==2) v[1]=5; else v[1]=6; endif; endif; endif;
[/spoiler]
Vamos entender todos esses códigos. Começando pelo início. -avá
•if(Keyboard.GetKeyState(VK_DOWN))# Condição que verifica se a tecla para baixo está apertada.
•if(v[1]==1)# Condição que verifica se a variável de ID 1 é igual a 1.
•Command.Wait(1);# Comando Wait, na 2ª aba de eventos (tempo).
• v[1]=2;# Muda o valor da variável de ID 1 para 2.
•Picture[4].Y =120;# Muda a coordenada dos Y da imagem de ID 4 para 120.
•Command.PlaySound("mk1 cursor");# Toca o SE chamado mk1 cursor na pasta Sounds.
# Os códigos são parecidos, suas funções são, basicamente, as mesmas, então não tem motivo para colocar todos aqui. Os valores são opcionais, foram os utilizados na demo.
Depois de colar cada código em cada comando de comentário vocês devem criar algumas Forks (condições). Note que quando eu clico nas opções, o valor atual da variável é somado ao total de opções, determinando novos resultados que podem ser verificados nessas Fork's. Veja o exemplo:
Repare que após a mensagem eu mudo o valor da variável para o valor inicial para que a mensagem não se repita, permitindo que o sistema não sofra danos. haha'