Obrigado por visitar a The Game Makers Brasil 😁 Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais.

Bug na colisão

Perguntas? A comunidade te ajuda a resolver.
Avatar do usuário
miguel07
Novato
Novato
Reações: 0
Mensagens: 1

Bug na colisão

Mensagem por miguel07 » Sáb Jul 27, 2024 4:36 pm

Estou começando a criar e jogos e estava tentando fazer a movimentação do personagem porém a colisão está bugada não sei porque, já que estava funcionando antes mas agora está assim
gm_d.PNG
gm_d.PNG (1.68 KiB) Exibido 1116 vezes
//Player
#region Controles
Key_right = keyboard_check(ord("D"))
Key_left= keyboard_check(ord("A"))
Key_jump = keyboard_check(ord("W"))
#endregion

#region Movimentação
var movement = Key_right - Key_left

hspd = movement * spd;

vspd =+ grv;

///troca de sprite
if (hspd = 0) {
sprite_index = Spr_Character_idle
}
else {
sprite_index = Spr_Character_Walking
}
if (hspd != 0) image_xscale = sign(hspd)


//Colisão Horizontal
if place_meeting(x+hspd,y,Obj_colision){
while(!place_meeting(x+sign(hspd),y, Obj_colision)){
x += sign(hspd);
}
hspd = 0;
}
x+= hspd;

//Colisão Vertical
if place_meeting(x,y+vspd,Obj_colision){
while(!place_meeting(x,y+sign(vspd), Obj_colision)){
y += sign(vspd);
}
vspd = 0;
}
y+= vspd;

if place_meeting(x,y+1,Obj_colision) and Key_jump{
vspd -= 8;
}

#endregion


Se alguem puder ajudar agradeço!!

Avatar do usuário
All-x
Administrador
Administrador
Reações: 8
Mensagens: 621
Localização: Dourados-MS

Contato:

Re: Bug na colisão

Mensagem por All-x » Seg Ago 05, 2024 4:35 pm

Na região ali da movimentação você colocou vspd =+ grv;, o correto seria vspd += grv;.
Começando com o Game Maker? Olhou para assinatura certa!

Imagem

Tutoriais e vídeo aulas de programação! Clique no Banner e confira!

Responder

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 3 visitantes