我想让“Bug”这个简单的卡车在路上向着房子移动。目前它会在第一次需要转弯时卡住。我的尝试如下:

xmove= clamp(routeX * movespeed,-1,1)
ymove = clamp(routeY * movespeed,-1,1)
move_and_collide(xmove,ymove,[tilemap,house])
if xmove > x {sprite_index = bugL}
else if xmove < x {sprite_index = bugR}
else if ymove > y {sprite_index = bugB}
else if ymove < y {sprite_index = bugF}

这根本没有改变任何事。

”x += movespeed;

if(place_meeting(x - movespeed,y, house)){
    if(sign(movespeed) == 1){
        movespeed = -2;
    }
}
else if(place_meeting(x + movespeed,y, house)){
    if(sign(movespeed) == -1){
        movespeed = 2;
    }

这使得它忽略所有碰撞,尽管我仍然保留了之前的移动代码。

“if(place_meeting(x - movespeed,y, house)){
Image_angle += 90}”

这没有任何作用。

参考地图:

https://preview.redd.it/2fbebeve3xah1.png?width=1274&format=png&auto=webp&s=9aea67530e523811aa1e217aad4d3eafca198363