CRIANDO UM JOGO DE PLATAFORMA
Aprenda como criar um jogo de plataforma utilizando ou não o joystick, do fácil ao avançado.


3 - USANDO APENAS O VIRTUAL KEY :
[ AVANÇADO ]
- Aqui você vai criar um jogo de plataforma, sem utilizar o joystick e sim apenas dois virtual keys para se movimentar para direita e para esquerda.

1 - Coloque o Objeto1 no cenário, ele será nosso player...
2 - Coloque o Virtual Key_A e o Virtual Key_B, para utilizarmos para fazer o movimento. Coloque os dois no modo HOLD

3 - Abra os Códigos do objeto1 e coloque:
PRIMEIRA LINHA:
if virtual_check_a{
SEGUNDA LINHA:
hspeed_vk += 5
TERCEIRA LINHA:
if virtual_check_b{
QUARTA LINHA:
hspeed_vk -= 5
QUINTA LINHA:
gravity = true
O if virtual_check_a{, vai ser utilizado para verificar se o VirtualKey_A foi pressionado, logo se ele for pressionado, vai ativar a linha seguinte, que é a movimentação na horizontal, na velocidade de 5 pixels por segundo para direita.
O if virtual_check_b{, vai ser utilizado para verificar se o VirtualKey_B foi pressionado, logo se ele for pressionado, vai ativar a linha seguinte, que é a movimentação na horizontal, na velocidade de 5 pixels por segundo para a esquerda.
O gravity na quinta linha, serve para dizer que a gravidade está ligada... Se o gravity fosse igual a false, então a gravidade estaria desligada.
4 - Agora vamos adicionar nas linhas seguintes:
SEXTA LINHA:
if place_meeting(x,y,object6){
SÉTIMA LINHA:
collision = true
Isso vai fazer que o Objeto_1 Player, quando colidir com o objeto 6, que é objeto Bloco Invisível, ele não atravesse o objeto e utilize este objeto como chão.
Não esqueça de colocar objeto 6 abaixo do objeto 1, para que ele não caia no limbo.

Agora adicione mais um Virtual Key_C no lado direito da tela, para fazermos o pulo. ( no modo PRESS )
5 - Adicione nas linhas seguintes:
OITAVA LINHA:
joy1 = false
NONA LINHA:
if virtual_check_c{
DÉCIMA LINHA:
jump = 8
O if virtual_check_c{, vai ser utilizado para verificar se o VirtualKey_C foi pressionado, logo se ele for pressionado, vai ativar na linha seguinte, um pulo na intensidade de 8 pixels por segundo para cima. Esse pulo poderia ser feito também utilizando vspeed -= 8, mas chance muito grande de bugar e não dar certo, então não recomendo.
O código joy1 = false, vai desativar o joystick do lado esquerdo, para ele não ficar aparecendo em cima dos virtual keys... Agora nossa movimentação é os virtual keys.
Nosso script até o momento está assim:
if virtual_check_a{
hspeed_vk += 5
if virtual_check_b{
hspeed_vk -= 5
gravity = true
if place_meeting(x,y,object6){
collision = true
joy1 = false
if virtual_check_c{
jump = 8
6 - Porém precisamos fazer a mudança de sprite, coloque do lado código do virtual_check_a{ o código !kokeo para ativar as duas linhas seguintes e coloque o código:
sprite_index = sprite_2
Já do lado do código virtual_check_b{ coloque o código !megacode
e na linha seguinte
sprite_index = sprite_3
Porém você precisa deixar uma linha em branco por o código !megacode ativa as 3 linhas seguintes...
Fazendo com que agora ao se movimentar o player vai mudar para o sprite 2 além de se movimentar para direita...
O novo código vai ficar assim:
if virtual_check_a{ !kokeo
hspeed_vk += 5
sprite_index = sprite_2
if virtual_check_b{ !megacode
hspeed_vk -= 5
sprite_index = sprite_3
(linhas em branco)
gravity = true
if place_meeting(x,y,object6){
collision = true
joy1 = false
if virtual_check_c{
jump = 8
7 - Agora para finalizar, vamos criar um ataque adicionando mais um virtual_key_d e o código seguinte:
DÉCIMA PRIMEIRA LINHA:
if virtual_check_d{
DÉCIMA SEGUNDA LINHA
instance_change_return(object2,1)
Agora nosso objeto 2, será nosso ataque, ao clicar no botão D, ele irá trocar rápido para o objeto 2 e retornar para o objeto 1 com o fim da animação.
Nosso script final ficou assim:
if virtual_check_a{ !kokeo
hspeed_vk += 5
sprite_index = sprite_2
if virtual_check_b{ !megacode
hspeed_vk -= 5
sprite_index = sprite_3
(linhas em branco)
gravity = true
if place_meeting(x,y,object6){
collision = true
joy1 = false
if virtual_check_c{
jump = 8
if virtual_check_d{
instance_change_return(object2,1)
E então gostou do nosso tutorial ensinando sobre os botões virtuais do Astarout Engine ? Visite as outras abas do site e aprenda muito mais !!!
Visite também nossos dois canais do youtube para dar uma força