Hey iedereen,
daar ben ik weer eens. Nog weer een vraag over mijn snake spel. Ik probeer een o_Bird het laatste gedeelte (de tail) van o_Snake op te laten eten als o_Snake langs o_Bird loopt. Maar dit lukt me niet. Is er iemand die mij kan helpen? Hieronder staat de code die ik gebruik.
step event van o_Bird
/// @description Insert description here
// You can write your code in this editor
/// @description Insert description here
// You can write your code in this editor
//0 = up y -
//1 = right x +
//2 = down y +
//3 = left x -
if (directionFacing == 0 && place_meeting(x,y-32,o_Snake))
{
stepCounter ++;
if stepCounter > 20
{
with(tail)
{
instance_destroy();
global.length -=1;
if global.length <=1
{
show_message("You have been eaten");
room_restart();
}
}
}
stepCounter = 0;
}
if (directionFacing == 1 && place_meeting(x+32,y,o_Snake))
{
stepCounter ++;
if stepCounter > 20
{
with(tail)
{
instance_destroy();
global.length -=1;
if global.length <=1
{
show_message("You have been eaten");
room_restart();
}
}
}
stepCounter = 0;
}
if (directionFacing == 2 && place_meeting(x,y+32,o_Snake))
{
stepCounter ++;
if stepCounter > 20
{
with(tail)
{
instance_destroy();
global.length -=1;
if global.length <=1
{
show_message("You have been eaten");
room_restart();
}
}
}
stepCounter = 0;
}
if (directionFacing == 3 && place_meeting(x-32,y,o_Snake))
{
stepCounter ++;
if stepCounter > 20
{
with(tail)
{
instance_destroy();
global.length -=1;
if global.length <=1
{
show_message("You have been eaten");
room_restart();
}
}
}
stepCounter = 0;
}
alarm[0] event van o_Snake
/// @description Insert description here
// You can write your code in this editor
//id0 = head
if (currentID == 0)
// direction
// 0 = right
// 1 = left
// 2 = up
// 3 = down
{
currentID +=1;
alarm[0] = 15;
switch(global.dir)
{
case 0:
tail = instance_create_layer(x + 32, y, "Layer1", o_Snake);
break;
case 1:
tail = instance_create_layer(x - 32, y, "Layer1", o_Snake);
break;
case 2:
tail = instance_create_layer(x, y - 32, "Layer1", o_Snake);
break;
case 3:
tail = instance_create_layer(x, y + 32, "Layer1", o_Snake);
break;
}
}
else if (currentID == (global.length -1))
{
instance_destroy();
}
else
{
currentID +=1;
alarm[0] = 15;
}
Alvast bedankt!