LlTarget/ja
From Second Life Wiki
関数: integer llTarget( vector position, float range );
この関数は、スクリプトが位置に到着したときを知ることを試みます。
positionとrangeを登録するとat_targetが作動し、not_at_targetイベントが登録解除されるまで継続します。
llTargetRemoveと対象を登録解除する処理のinteger値を返します。
| • vector | position | |||
| • float | range |
よく似た関数のllRotTargetが回転のために存在します。
この関数はオブジェクトを動かさないため、llSetPosかllMoveToTargetを使うことで行ないます。
例
integer target_id; vector target_pos; default { state_entry() { target_pos = llGetPos() + <1.0, 0.0, 0.0>; target_id = llTarget(target_pos, 0.5); } at_target(integer tnum, vector targetpos, vector ourpos) { if (tnum == target_id) { llOwnerSay("object is within range of target"); llOwnerSay("target position: " + (string)targetpos + ", object is now at: " + (string)ourpos); llOwnerSay("this is " + (string)llVecDist(targetpos, ourpos) + " meters from the target"); llTargetRemove(target_id); } } not_at_target() { llOwnerSay( "not there yet - object is at " + (string)llGetPos() + ", which is " + (string)llVecDist(target_pos, llGetPos()) + " meters from the target (" + (string)target_pos + ")" ); } }
関連項目
イベント
| • at_target | not_at_target | – | 位置を対象のイベント | |
| • at_rot_target | not_at_rot_target | – | 回転を対象のイベント |
関数
| • | llTargetRemove | – | 対象の位置を停止します | |
| • | llRotTarget | – | 対象の回転を設定します | |
| • | llRotTargetRemove | – | 対象の回転を停止します |
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。

