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

functions: GetMostDangerousClass | MatchCombatProtections | MatchElementalProtections | MatchSpellProtections | TalentAdvancedProtectSelf
categories: Core AI Talent Functions | Talents/Skills/Feats Functions


author: GoLeM, editor: Charles Feduke, additional contributor(s): Genji, JP team: katsu794
Send comments on this topic.