当一个物体与一个墙碰撞时,它无法通过,但一些精灵可以通过。当墙在右边时,碰撞工作正常,但当从另一个方向接近时,部分物体发生碰撞。
我对不同的对象有不同的碰撞代码,所以它可能不是问题。这样做的原因是不同的物体对碰撞的反应不同,它们的移动也不同。
我的角色由用户控制的事件
hor = keyboard_check(ord("D"))-keyboard_check(ord("A"));
ver = keyboard_check(ord("S"))-keyboard_check(ord("W"));
if (place_meeting(x+(hor * sp),y,Object_Wall))
{
while (!place_meeting(x+sign(hor * sp),y,Object_Wall))
{
x += sign(hor);
}
hor = 0
}
if (place_meeting(x,y+(ver * sp),Object_Wall))
{
while (!place_meeting(x,y+sign(ver * sp),Object_Wall))
{
y += sign(ver);
}
ver = 0
}
x += hor * sp;
y += ver * sp;
敌人的代码随机漫游并且应该在撞墙后走开(撞墙事件)
move_towards_point(random(room_width),random(room_height),sp)
time = random_range(50,150)
敌人的问题只发生在他追逐玩家的时候,所以现在我想起来,角色碰撞可能是问题。
有关如何修复它的任何帮助吗?
答案 0 :(得分:0)