M
Mr.Eagle
Guest
(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.
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.