point_distance_3d

This function takes the supplied components of the vector and returns the length (distance) of the vector. It works in exactly the same way as point_distance() but with the addition of factoring in the z value (depth) for use in 3D space.

 

Syntax:

point_distance_3d(x1, y1, z1, x2, y2, z2);

ArgumentTypeDescription
x1RealThe x coordinate of the first component of the vector
y1RealThe y coordinate of the first component of the vector
z1RealThe z coordinate of the first component of the vector
x2RealThe x coordinate of the second component of the vector
y2RealThe y coordinate of the second component of the vector
z2RealThe z coordinate of the second component of the vector

 

Returns:

Real

 

Example:

var inst, ex, ey, ez;
inst = instance_nearest(x, y, enemy);
if (instance_exists(inst))
{
    ex = inst.x;
    ey = inst.y;
    ez = inst.z;
    if (point_distance_3d(x, y, z, ex, ey, ez) < 200)
    {
        instance_create_layer(x, y, "Bullets", obj_Missile)
    }
}

The above code will get the x and y and z coordinates of the nearest enemy and then use them to check the distance (length) of the vector formed by them and the player coordinates. If the value is less than 200, the player object will create an instance of "obj_Missile".