TalentAdvancedProtectSelf()

AIは速やかに近くの敵を検索し、それが面する敵のタイプに対して、それ自体上に最も有益な防御系タレントを得ます。

int TalentAdvancedProtectSelf();

Description

近くの敵のタイプから守るのに最も適した防御系タレントを発見し、適用に成功した場合、呼出関数に知らせるブーリアンを返します。



Remarks

使用するタレント(呪文、特技、アイテム)を決定するためにこの関数が行う段階の詳細:

近くにいる全ての敵のリストを作成し、それらをそれぞれの基礎クラス(Fighter系、Mage系、Monster系、Cleric系)に分け、それぞれのカテゴリー毎のレベルを合計する。


個々のレベル総計の比較により、最も差し迫ったカテゴリーに基づく脅威を決定します。


TALENT_CATEGORY_BENEFICIAL_PROTECTION_SELFからランダムなタレントを得ます。


そのタレントが、最も脅威と見なした基礎クラスに対して有効かどうかを調べます。


そうでなければ、TALENT_CATEGORY_BENEFICIAL_PROTECTION_SINGLEからランダムなタレントを得ます。


そのタレントが、最も脅威と見なした基礎クラスに対して有効かどうかを調べます。


そうでなければ、TALENT_CATEGORY_BENEFICIAL_PROTECTION_AREAEFFECTからランダムなタレントを得ます。

そのタレントが、最も脅威と見なした基礎クラスに対して有効かどうかを調べます。


そうでなければ、最初に戻りTALENT_CATEGORY_BENEFICIAL_PROTECTION_SELFからその他のタレントを得ます。

この手続きを10回繰り返し、自身を防御するタレントを探します。


見つかったものが呪文であった場合、詠唱前にそのeffectを既に得ているかどうかを調べます。


そうでなければ、自身にその呪文を詠唱します。

見つかったものが特技であった場合、その特技を持っているかどうか調べます。

持っていれば、特技を使用します。


見つかったものが呪文でも特技でもない場合、それを使用します。


タレントが、どの上記に示されたTALENT_CATEGORYグループ定数に分類されているかは確かめられません。


Requirements

#include "nw_i0_generic"

Version

1.22

See Also

functions: StartProtectionLoop | TalentHealingSelf | TalentUseEnhancementOnSelf | TalentUseProtectionOnSelf | TalentUseProtectionOthers
categories: Combat Actions Functions | Core AI Talent Functions | Talents/Skills/Feats Functions


author: John Shuell, JP team: Rainie
Send comments on this topic.