此函数将检查给定对象的所有实例,以查看哪个最接近给定 x/ y 点。所有检查将从给定的x/ y位置到指定对象的实例的原点(x/ y位置)。如果对象的实例不存在,则函数将返回关键字noone,但如果存在实例,则函数将返回找到的实例的id。请注意,如果运行代码的实例与被检查的对象具有相同的对象索引,那么它将包括在检查中(如果调用实例也是父对象的子对象,则包括父对象的检查)。
instance_nearest(x, y, obj);
参数 | 类型 | 描述 |
---|---|---|
x | Real | 要检查的X位置。 |
y | Real | 要检查的Y位置。 |
obj | Object Asset | 要检查其实例的对象。 |
var inst, xx;
xx = x;
x -= 10000;
inst = instance_nearest(xx, y, object_index);
if (inst != id)
{
draw_line(x, y, inst.x, inst.y);
}
x += 10000;
上面的代码将当前实例移动10000个像素,然后检查其以前的位置,以查找同一对象类型的最近实例。如果该实例是其自身,则它只会移动回其原始位置,但如果找到的实例不同,它将在两者之间画一条线。