mp_linear_path_object

此函数计算从当前实例位置到"xgoal"和"ygoal"值指定的点的直线路径。它使用指定的步骤大小,与函数mp_linear_step()中的大小相同。指定的路径必须已经存在,并且将被新路径覆盖,如果找到完整路径(true)或未找到完整路径(false),则函数将返回。仅找到完整路径,不会与指定的对象或实例发生碰撞,如果返回false,则仍会生成路径,但只会运行到路径被阻止的位置。

注意:此函数不会移动实例。它只设置路径,您必须使用Path函数进行移动。

 

语法:

mp_linear_path_object(path, xgoal, ygoal, stepsize, obj);

参数类型描述
pathPath Asset要使用的路径的索引
xgoalReal目标x位置。
ygoalReal目标y位置。
stepsizeReal实例每步移动的速度(以像素为单位)。
objObject Asset or Object Instance要阻止路径的对象。可以是对象索引、实例ID或特殊关键字,全部

 

返回:

Boolean

 

例子:

if (mp_linear_path_object(path, mouse_x, mouse_y, 4, obj_Wall))
{
    path_start(path, 4, 0, 0);
}

上述代码检查沿运行代码的对象和鼠标的x/y位置之间的路径是否与"obj_Wall"发生碰撞。如果没有碰撞并且生成了完整的路径,那么它将沿着生成的路径启动对象。