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.