GetDetectMode(object)
クリーチャーの現在の捜索状態を得ます。
int GetDetectMode( object oCreature );
Parameters
oCreature
捜索しているかどうかを調べるクリーチャー
Description
oCreatureが捜索モードであればDETECT_MODE_ACTIVEを、そうでなければDETECT_MODE_PASSIVEを返します。
Known Bugs
時々、DETECT_MODE_PASSIVEを示す0の代わりに2が返される事があります。下記のサンプルプログラムを見てください。
Version
1.29
Example
// トリガーを踏んだ時に隠されたアイテムを発見できるかどうかを調べる
int nDC = 20; // 捜索の難易度、"20"は例に過ぎない
object oPC = GetEnteringObject();
if ( GetIsPC(oPC) ) {
int nSearch = GetSkillRank( SKILL_SEARCH, oPC );
// 捜索モードではない場合、〈捜索〉値の半分を使用する
if ( GetDetectMode(oPC) == DETECT_MODE_PASSIVE ) {
nSearch = nSearch / 2;
}
// 標準のD&Dスタイルのスキルチェックを使用する
if ( d20() + nSearch >= nDC ) {
// 捜索に成功した場合のプログラムをここに置く
}
}
// GetDetectModeとDETECT_MODE_PASSIVEのバグ修正
// 製作者 by: Slow Slosh
int GetDetectModeBugFix(object oCreature)
{
int iMode = GetDetectMode(oCreature);
if(iMode == 2) {iMode = DETECT_MODE_PASSIVE;}
return iMode;
}
See Also
| categories: | Get Data from Creature Functions |
| constants: | DETECT_MODE_* Constants |
author: Drake Coker, editor: Charles Feduke, additional contributor(s): Slow Slosh, JP team: Rainie
Send comments on this topic.