GetNearestObject(int, object, int)

選択された対象に対して、与えられた基準にマッチする最も近いオブジェクトを得ます。

object GetNearestObject(
    int nObjectType = OBJECT_TYPE_ALL,
    object oTarget = OBJECT_SELF,
    int nNth = 1
);

Parameters

nObjectType

OBJECT_TYPE_* (デフォルト: OBJECT_TYPE_ALL)

oTarget

(デフォルト: OBJECT_SELF)

nNth

(デフォルト: 1)


Description

指定されたタイプを持っているoTargetにN番目に近いオブジェクトを得ます。

エラー時には、OBJECT_INVALIDを返します。

この関数は、指定されたタイプにマッチするオブジェクトにN番目に近い(デフォルトは1、いちばん近い)オブジェクトを得ます。

デフォルトでは、タイプはOBJECT_TYPE_ALLに設定されています。従って、OBJECT_TYPE_*のタイプを指定すると、関数はN番目に近い有効なオブジェクトを返すでしょう。(有効なオブジェクトタイプの全てのリストについては、descriptionの最後を見て下さい。)

また、oTARGETもデフォルトではOBJECT_SELFになってますが、おそらく別のオブジェクトが設定されるかもしれません。

例えば、以下のスクリプトは、オブジェクトoPCに3番目に近いドアを、オブジェクトoNearestDoorに設定するでしょう。

object oNearestDoor = GetNearestObject(OBJECT_TYPE_DOOR, oPC, 3)

利用可能なオブジェクトタイプ定数のリスト:
OBJECT_TYPE_ALL (デフォルト)
OBJECT_TYPE_AREA_OF_EFFECT
OBJECT_TYPE_CREATURE
OBJECT_TYPE_DOOR
OBJECT_TYPE_ITEM
OBJECT_TYPE_PLACEABLE
OBJECT_TYPE_STORE
OBJECT_TYPE_TRIGGER
OBJECT_TYPE_WAYPOINT



Version

1.22

Example

// このスクリプトは、"BAR_MAID"のタグを持っているバーのメイドのためのものです。
// バーのメイドは3番目に近いドアを見つけ、そこへ歩こうと試みるでしょう。
 
void main
{
     // オブジェクトを初期化します。
     object oBarMaid = GetObjectByTag("BAR_MAID");
     object oDoor = GetNearestObject(OBJECT_TYPE_DOOR, oBarMaid, 3)
     // バーのメイドは、3番目に近いドアへ歩きます。
     ActionForceMoveToObject(oDoor)
}

See Also

functions: GetNearestObjectByTag | GetNearestObjectToLocation
categories: Get Data from Object Functions
constants: OBJECT_TYPE_* Constants


author: Jason Simpson, editor: Jeremy Spilinek, JP team: katsu794
Send comments on this topic.