Ir para conteúdo
Fórum Script Brasil
  • 0

me ajudem com GML


Gabimio

Pergunta

pessoal, estou com problemas na gml, linguagem utilizada na engine Game Maker. Estou fazendo um script para fazer um jogo de plataforma e toda vez que abro chaves {} aparece como se aquilo fosse um erro. aqui estão as variáveis:

grav = 0.2;
hsp  = 0;
vsp  = 0;
VelocidadeDePulo = 7;
VelocidadeDeMovimento = 4;

e aqui o código no qual da erro:

   

key_direita = keyboard_check (vk_right);
key_esquerda = -keyboard_check (vk_left);
key_pulo = keyboard_check_pressed (vk_space);

move = key_direita + key_esquerda;
hsp = move * VelocidadeDeMovimento;

// incremento da gravidade ao vspeed
if (vsp < 10) vsp += grav;

//verifico se há um chão abaixo do player
if (place_meeting(x,y+1,obj_Wall));
{
    vsp = key_pulo * -VelocidadeDePulo;
}
//horizontal colission
if (place_meeting(x + hsp,y,obj_Wall));
{
    while(!place_meeting(x+sign(hsp),y,obj_Wall));
    {
        x += sign(hsp);
    }
    hsp = 0;
}
x  += hsp;

//vertical colission
if (place_meeting(x,y+vsp,obj_Wall));
{
    while(!place_meeting(x,y+sign(vsp),obj_Wall));
    {
        y += sign(vsp);
    }
     vsp = 0;
}

quem puder me ajudar, por favor agradeço :D

Editado por Gabimio
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Não conheço muito essa linguagem mais tenta agora e ver se funciona

grav = 0.2;
hsp  = 0;
vsp  = 0;
VelocidadeDePulo = 7;
VelocidadeDeMovimento = 4;

e aqui o código no qual da erro:

   

key_direita = keyboard_check (vk_right);
key_esquerda = -keyboard_check (vk_left);
key_pulo = keyboard_check_pressed (vk_space);

move = key_direita + key_esquerda;
hsp = move * VelocidadeDeMovimento;

// incremento da gravidade ao vspeed
if (vsp < 10){

vsp += grav;

}

//verifico se há um chão abaixo do player
if (place_meeting(x,y+1,obj_Wall))
{
    vsp = key_pulo *( -VelocidadeDePulo);
}
//horizontal colission
if (place_meeting(x + hsp,y,obj_Wall))
{
    while(!place_meeting(x+sign(hsp),y,obj_Wall))
    {
        x += sign(hsp);
    }
    hsp = 0;
}
x  += hsp;

//vertical colission
if (place_meeting(x,y+vsp,obj_Wall))
{
    while(!place_meeting(x,y+sign(vsp),obj_Wall))
    {
        y += sign(vsp);
    }
     vsp = 0;
}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...