LlFleeFrom/ja

From Second Life Wiki
Jump to navigation Jump to search

要約

関数: llFleeFrom( vector position, float distance, list options );

キャラクターに特定のpositionから一定のdistanceを保つように指示します。

• vector position position in region coordinates 逃げるための位置。
• float distance positionからの逃げる距離(メートル)。
• list options 現時点では利用可能なオプションはありません。

警告

  • llCreateCharacter/jaを使用しないと、スクリプトはコンパイルされません。
  • 逃げるpositionはナビメッシュの近くにある必要があります。それ以外の場合、この動作は失敗し、PU_FAILURE_INVALID_GOALをトリガーします。
  • 下記の例のようにエージェントやオブジェクトを避けたい場合、llEvade/jaを使用する方がエレガントでシムのリソースを節約できます。

サンプル

<syntaxhighlight lang="lsl2"> vector last_touched_pos; key last_touched_key;

default {

   state_entry()
   {
       llCreateCharacter([CHARACTER_DESIRED_SPEED, 50.0]);
   }
   touch_start(integer total_number)
   {

last_touched_key = llDetectedKey(0); last_touched_pos = llDetectedPos(0); llFleeFrom(last_touched_pos, 10, []); llSetTimerEvent(0.2);

   }
   timer()
   {

vector last_touched_pos_now = llList2Vector(llGetObjectDetails(last_touched_key, [OBJECT_POS]), 0); if ( llVecDist(last_touched_pos, last_touched_pos_now) > 1 ) { last_touched_pos = last_touched_pos_now; llFleeFrom(last_touched_pos, 10, []); }

   }

}

</syntaxhighlight>

注意点

位置ベクトルは、拡張範囲のリージョン座標を使用して現在のリージョンの外部に設定できます。たとえば、現在のリージョンの東にあるリージョンのSEコーナーを避けるには、次のようにします:<syntaxhighlight lang="lsl2">llFleeFrom(<0.0, 512.0, 0.0>, 20.0, []);</syntaxhighlight>

特記事項

経緯

Date of Release 31/07/2012

Search JIRA for related Issues

Signature

function void llFleeFrom( vector position, float distance, list options );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。