Duvida com inimigos
Enviado: Sáb Dez 08, 2018 3:10 pm
Eu estou tentando fazer um inimigo mas estou com algumas duvidas
1- Como faço para que o inimigo tenha colisão em mais de um bloco? Na foto por exemplo ele
colide com só com um objeto e o outro ele atravessa
o codigo step que estou usando para colisão do inimigo é esse:
hsp = dir * movespeed
vsp += grav;
//horizontal colison
if (place_meeting(x+hsp,y,Obj_Terra))
{
while(!place_meeting(x+sign(hsp),y,Obj_Terra))
{
x += sign(hsp);
}
hsp = 0;
dir *= -1;
}
x += hsp;
//Vertical colision
if (place_meeting(x,y+vsp,Obj_Terra))
{
while(!place_meeting(x,y+sign(vsp),Obj_Terra))
{
y += sign(vsp);
}
vsp = 0;
}
y += vsp;
E a segunda duvida que eu tenho é como fazer para que o inimigo
morra quando o player pula na cabeça dele? quando o player tenta pular na
cabeça do inimigo ele morre, como faço para corrigir isso?
codigo que estou usando para colisão com player:
if (place_meeting(x,y,Obj_Player))
{
if (Obj_Player.y < y-10)
{
with (Obj_Player) vsp = -jumpspeed;
instance_destroy();
}
else
{
game_restart();
}
}
Agradeço qualquer ajuda!
1- Como faço para que o inimigo tenha colisão em mais de um bloco? Na foto por exemplo ele
colide com só com um objeto e o outro ele atravessa
o codigo step que estou usando para colisão do inimigo é esse:
hsp = dir * movespeed
vsp += grav;
//horizontal colison
if (place_meeting(x+hsp,y,Obj_Terra))
{
while(!place_meeting(x+sign(hsp),y,Obj_Terra))
{
x += sign(hsp);
}
hsp = 0;
dir *= -1;
}
x += hsp;
//Vertical colision
if (place_meeting(x,y+vsp,Obj_Terra))
{
while(!place_meeting(x,y+sign(vsp),Obj_Terra))
{
y += sign(vsp);
}
vsp = 0;
}
y += vsp;
E a segunda duvida que eu tenho é como fazer para que o inimigo
morra quando o player pula na cabeça dele? quando o player tenta pular na
cabeça do inimigo ele morre, como faço para corrigir isso?
codigo que estou usando para colisão com player:
if (place_meeting(x,y,Obj_Player))
{
if (Obj_Player.y < y-10)
{
with (Obj_Player) vsp = -jumpspeed;
instance_destroy();
}
else
{
game_restart();
}
}
Agradeço qualquer ajuda!