GetMatchCompatibility(talent, string, int)
要求される方法で選択されるクラスから、クリーチャーが特殊能力を使用できるかどうかを調べます。
int GetMatchCompatibility( talent tUse, string sClass, int nType );
Parameters
tUse
調べる特殊能力。
sClass
調べるクラス。
nType
使用する方法。(変数)NW_TALENT_*
Description
特殊能力tUseが、入力されるsClassに対するNPCの保護に有効であるかどうかによって、ブーリアン値true/falseを返します。
ランダムな行動を作り出すために使用されます。
Remarks
通常は、GetMatchCompatibility()関数よりも、NPCが持っている特殊能力だけを返すことができるGetCreatureTalentRandom()関数の方が好んで呼ばれます。GetMatchCompatibility関数は、特殊能力が特定のクラスに対して有効かどうかを調べます。
Requirements
#include "NW_I0_GENERIC"
Version
1.26
Example
// NPCのAIコード(すべてのケースについてはテストされていません。) // いくつかのコードはnw_i0_genericから取ってきていますが、それを自分の手柄にしてはいません。 #include "nw_i0_generic" void main() { talent tUse; struct sEnemies sCount = DetermineEnemies(); int bValid = FALSE; int nCnt; string sClass = GetMostDangerousClass(sCount); while(GetIsTalentValid(tUse) && nCnt < 10) { tUse = GetCreatureTalentRandom(TALENT_CATEGORY_BENEFICIAL_PROTECTION_SELF); if(GetIsTalentValid(tUse) && GetMatchCompatibility(tUse, sClass, NW_TALENT_PROTECT)) { bValid = TRUE; nCnt = 11; } nCnt++; } if(bValid == TRUE) SendMessageToPC(GetFirstPC(),"NPC CAN USE TALENT"); }
See Also
author: GoLeM, editor: Charles Feduke, additional contributor(s): Genji, JP team: katsu794
Send comments on this topic.