WalkWayPoints(int, float)
NPCクリーチャーに予め設定した一連のウェイポイントを歩かせます。
void WalkWayPoints( int nRun = FALSE, float fPause = 1.0 );
Parameters
nRun
NPCが歩くか走るかを決定します。(デフォルト:FALSE)
fPause
個々のウェイポイントで休止する時間(秒)。(デフォルト:1.0)
Description
呼出者を前もって設定した特別なtagをつけたウェイポイントを歩かせ(nRunがTRUEなら走る)、個々のウェイポイントで立ち止まります。
Remarks
歩くウェイポイントのtagの書式は「"WP_”+ NPCのtag名 +"_0#"」でなければなりません。(例:WP_CITYGUARD_01)。#はNPCが歩くウェイポイントの順番です。そしてもう一つ、「"POST_"+ NPCのtag名」だと、NPCは戦闘終了後、このウェイポイントに戻ってきます。ウェイポイントの名前は大文字・小文字を区別します。
クリーチャーがウェイポイントを歩いている際に、なんらかの理由があって(すなわち敵と遭遇等)それをやめたとしても、その後、最も近いウェイポイントに戻って再び歩き始めます。これを回避するために、独自のWalkWayPoint関数を作成しなければなりません。もし独自のWalkWayPoint関数を作成するならば、標準的な先頭に"WP_"がついた名前を持ったウェイポイントを命名することはできません。
Known Bugs
SetSpawnInCondition(NW_FLAG_IMMOBILE_AMBIENT_ANIMATIONS)かSetSpawnInCondition(NW_FLAG_AMBIENT_ANIMATIONS)のどちらか一方を持ったキャラクターにフラグを立てる場合、walkwaypointsは問題を持っています。
初めは素晴らしく動作しますが、キャラクターが他の何かをする場合に歩くことをやめます。WalkWayPoints();命令を与えた時、再び同じように歩かせることができません。
Requirements
#include "NW_I0_GENERIC"
Version
1.28
See Also
functions: | ActionRandomWalk | CheckWayPoints | RunCircuit |
categories: | Core AI Functions | Movement Functions |
author: Ryan Hunt, editor: Charles Feduke, additional contributor(s): Ivan Hawkes, Diwall, Graziano Lenzi, JP team: Rainie
Send comments on this topic.