GetFirstObjectInShape(int, float, location, int, int, vector)
シェイプ(shape)内の指定タイプ(クリーチャー、ドア等)の最初のobjectを得ます。
object GetFirstObjectInShape( int nShape, float fSize, location lTarget, int bLineOfSight = FALSE, int nObjectFilter = OBJECT_TYPE_CREATURE, vector vOrigin = [0.0,0.0,0.0] );
Parameters
nShape
fSize
シェイプ形状の大きさ(さらなる情報はDescriptionを参照してください)または、RADIUS_SIZE_*。
lTarget
シェイプの始点
bLineOfSight
これは呪文エフェクトが壁を通り抜けないことを確実にするために使用することができます。(デフォルト:FALSE)
nObjectFilter
このobjectタイプの結果を制限します(OBJECT_TYPE_*)。(デフォルト: OBJECT_TYPE_CREATURE)
vOrigin
通常はスペルキャスターの位置です。(Default: [0.0,0.0,0.0])
Description
指定したnShapeのfSize内の最初のobjectを、objectが含まれていない場合はOBJECT_INVALIDを返します。
nShapeに依存するfSizeの意味は以下のとおり:
If nShape == SHAPE_SPHERE, fSizeは球状範囲です。
If nShape == SHAPE_SPELLCYLINDER, fSizeは円筒状範囲です。
If nShape == SHAPE_CONE, fSizeは広い円錐状範囲です。.
If nShape == SHAPE_CUBE, fsizeは立方体の面のうちの1つの長さの半分です。
例えば、クリーチャーとドアだけを返すためには、nObjectFilterパラメーターの値をOBJECT_TYPE_CREATURE | OBJECT_TYPE_DOORにします。
Known Bugs
この関数はOBJECT_TYPE_PLACEABLEオブジェクトを返しません(キーワードやOBJECT_TYPE_ALLを使っても)。
SHAPE_CONEの形状がCONE(円錐)でないことが数人のユーザーから報告されています。そして実はこの定数はオフィシャルキャンペーン全体を通して、たった一つの関数でしか使われてないことで、それが少しバグが多くしているのかもしれません。
SHAPE_SPELLCONE定数では、ITargetは円錐の角度を表します。ltargetの方向にfSizeだけ離れます。"vOrigin"は無視されます−円錐に始点はありません−−−円錐の始点はOBJECT_SELFの位置になります。
SHAPE_SPELLCYLINDERでは、"fSize"は通常円筒の長さで、円筒の終点はvOriginからlTargetに向かって沿うように"fSize"進んだところです。円筒の幅(直径)は常に約10フィート(?)です
−公式フォーラムでのKorak氏の報告
Version
1.31
Example
// バーニングハンズ呪文を使うBiowareのスクリプトより // [Snip][Snip] oTarget = GetFirstObjectInShape(SHAPE_SPELLCONE, 10.0, GetSpellTargetLocation(), TRUE, OBJECT_TYPE_CREATURE | OBJECT_TYPE_DOOR | OBJECT_TYPE_PLACEABLE); // 無効なobjectを捕まえるまで、呪文の形状範囲内のターゲットを循環する while(GetIsObjectValid(oTarget)) { if(!GetIsReactionTypeFriendly(oTarget)) { // セービングスロー、ダメージ、エフェクト等を操る } // 呪文の形状範囲内の次のターゲットを選択する oTarget = GetNextObjectInShape(SHAPE_SPELLCONE, 10.0, GetSpellTargetLocation(), TRUE, OBJECT_TYPE_CREATURE | OBJECT_TYPE_DOOR | OBJECT_TYPE_PLACEABLE); } // [Snip][Snip]
See Also
functions: | GetNextObjectInShape |
categories: | Miscellaneous Functions |
constants: | OBJECT_TYPE_* Constants | RADIUS_SIZE_* Constants | SHAPE_* Constants |
author: Tom Cassiotis, editor: Charles Feduke, additional contributor(s): Paul Catalano, JP team: geshi, Rainie
Send comments on this topic.