• Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

Question - Code Right and wrong collision

Mr.Eagle

Member
(Estou escrevendo isso usando o tradutor do Google, desculpe se o texto fica confuso)
Sou muito novo no Game Maker Studio 2 e ainda estou aprendendo o básico. Eu tenho um problema de colisão, antes de programar a colisão usando o botão "sólido", descobri que estava errado e tente usar o código de colisão (código abaixo)
// Movimentos básicos
var movimento = key_right - key_left;
hspd = move * caminha;
vspd = vspd + grv
if (hspd! = 0) image_xscale = sinal (hspd)
// Colisão horizontal
x = x + hspd
se place_meeting (x + hspd, y, obj_wall)
{
while (! place_meeting (sinal x + (hspd), y, obj_wall))
{
x = x + sinal (hspd)
}
hspd = 0
}
// Colisão vertical
y = y + vspd;
se place_meeting (x, y + vspd, obj_wall)
{
while (! place_meeting (x, y + sinal (vspd), obj_wall))
{
y = sinal + + (vspd);
}
vspd = 0;
}
//Saltar
se place_meeting (x, y + 1, obj_wall) && (key_jump)
{
vsp = - salto;
}
que é usado até o canal YoYo no seu vídeo "Tutorial do Plataformer (GML) - Parte 1/2", verifica várias vezes e obtém em outros canais e usa o mesmo código, mas sempre que tenta rodar o jogo, o personagem começa a atravessar o chão (obj_wall) e no final ele recebe a cabeça presa por baixo no bloco sem mover.
Você poderia me ajudar com isso? Eu verifiquei e a opção "sólida" não está ativada e tentei reescrever o código várias vezes e sempre resulta no mesmo.
Espero ter sido claro com o meu problema.
1582855989963.png
 
Top