GetNearestCreature(int, int, object, int, int, int, int, int)

対象のオブジェクトに対して最も近いクリーチャーを決定します。

object GetNearestCreature(
    int nFirstCriteriaType,
    int nFirstCriteriaValue,
    object oTarget = OBJECT_SELF,
    int nNth = 1,
    int nSecondCriteriaType = -1,
    int nSecondCriteriaValue = -1,
    int nThirdCriteriaType = -1,
    int nThirdCriteriaValue = -1
);

Parameters

nFirstCriteriaType

CREATURE_TYPE_* (詳細については、下のdescriptionを見てください)

nFirstCriteriaValue

CLASS_TYPE_*, SPELL_*, PERCEPTION_*, PLAYER_CHAR_IS_PC, PLAYER_CHAR_NOT_PC , RACIAL_TYPE_* , REPUTATION_TYPE_*, TRUE OR FALSE (値はnFirstCriteriaTypeに依存します。詳細については、下のfunction descriptionを見てください)

oTarget

我々は、oTargetに一番近い指定されたクリーチャーを見つけようとしています。(デフォルト: OBJECT_SELF)

nNth

一番近いクリーチャーを見つける必要がない場合、N番目に近いクリーチャーを見つけることができます。(デフォルト: 1)

nSecondCriteriaType

探しているクリーチャーのタイプをさらに詳しく指定するために、nFirstCriteriaTypeと同じ方法で使用されます。(デフォルト: -1)

nSecondCriteriaValue

探しているクリーチャーのタイプをさらに詳しく指定するために、nFirstCriteriaValueと同じ方法で使用されます。(デフォルト: -1)

nThirdCriteriaType

探しているクリーチャーのタイプをさらに詳しく指定するために、nFirstCriteriaTypeと同じ方法で使用されます。(デフォルト: -1)

nThirdCriteriaValue

探しているクリーチャーのタイプをさらに詳しく指定するために、nFirstCriteriaValueと同じ方法で使用されます。(デフォルト: -1)


Description

指定されたすべての基準を条件とするoTargetに最も近いクリーチャーを得ます。

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

この関数は、与えられた基準にマッチするN番目(デフォルトは1、または最も近い)に近いクリーチャーを選択します。デフォルトでは、oTARGETはOBJECT_SELFと等しいですが、別のオブジェクトを設定するかもしれません。最初の基準セット(nFirstCriteriaType と nFirstCriteriaValue)は指定する必要があります。2番目と3番目の基準セットはオプションです。

基準パラメーターは、タイプと値の対になっており、あらかじめ定められたグループ値のみ受け付けます。例えば、nFirstCriteriaTypeの値がCREATURE_TYPE_CLASSの場合、nFirstCriteriaValueはCLASS_TYPE_*の形式をとる必要があります。よってこの例の場合、パラメーター(CREATURE_TYPE_CLASS, CLASS_TYPE_CLERIC)とすると、クラスがクレリックである最も近いクリーチャーを返すでしょう。定められたタイプ/値のペアの完全なリストについては、descriptionの終わりを見てください。

2番目と3番目のタイプ/値の基準ペアを用いることで、探しているクリーチャーの型をさらに詳しく指定することができます。例えば、(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC, CREATURE_TYPE_IS_ALIVE, TRUE, CREATURE_TYPE_RACIAL_TYPE, RACIAL_TYPE_DWARF)と指定すると、まず始めの条件としてプレイヤーキャラクターであり、2番目の条件として生きていて、3番目の条件としてドワーフである最も近いクリーチャーを返すでしょう。

以下のリストは、使用されそうな基準タイプとそれらのタイプに関連づけられた値を表しています。

CREATURE_TYPE_CLASS CLASS_TYPE_*
CREATURE_TYPE_DOES_NOT_HAVE_SPELL_EFFECT SPELL_*
CREATURE_TYPE_HAS_SPELL_EFFECT SPELL_*
CREATURE_TYPE_IS_ALIVE TRUE OR FALSE
CREATURE_TYPE_PERCEPTION PERCEPTION_*
CREATURE_TYPE_PLAYER_CHAR PLAYER_CHAR_IS_PC OR PLAYER_CHAR_NOT_PC
CREATURE_TYPE_RACIAL_TYPE RACIAL_TYPE_*
CREATURE_TYPE_REPUTATION REPUTATION_TYPE_*

使用可能な基準値の定数リストの全体を見るためには、上の値の1つの一部分(例 SPELL_)をオーロラエディターのフィルターに入力し、定数ボタンを選択してください。



Known Bugs

パッチ1.28より前において、この関数は、初めの基準をCREATURE_TYPE_IS_ALIVEのみに指定した場合、常にOBJECT_INVALIDを返しました。


Version

1.28

See Also

functions: GetNearestCreatureToLocation | GetNearestSeenOrHeardEnemy
categories: Get Data from Creature Functions
constants: CLASS_TYPE_* Constants | CREATURE_TYPE_* Constants | PLAYER_CHAR_* Constants | SPELL_* Constants


author: Jason Simpson, editor: Charles Feduke, additional contributor(s): Gene Koo, JP team: katsu794
Send comments on this topic.