我正在尝试为我的子弹地狱游戏制作一个寻的弹丸,我需要能够计算目标和弹丸之间相对于弹丸角度的角度(0 度将是弹丸指向的方向)。现在角度计算是绝对使用point_direction完成的,但问题是当目标位于第 4 个扇区时,射弹开始转向错误的方向。另一个问题是,如果射弹在追击目标时进行 180 度转弯(或者如果被敌人发射则向下移动),转向方向将反转。我也尝试过mp_potential_函数,但它们的寻路太“激进”了。
这是我当前的代码的样子:
if(instance_exists(obj_fighter1)) {
var target;
target = instance_nearest(x, y, obj_fighter1);
if(target != noone) {
var angle_to_target;
angle_to_target = point_direction(x,y,target.x,target.y);
if(angle_to_target < direction) {
direction -= 2;
}
if(angle_to_target > direction) {
direction += 2;
}
}
}
希望这些信息足够并且可以理解。