LlRemoteLoadScriptPin/ja

From Second Life Wiki
Jump to navigation Jump to search

要約

関数: llRemoteLoadScriptPin( key target, string name, integer pin, integer running, integer start_param );

スクリプト nametarget へコピーし、start_paramrunning に設定する。

• key target 同じ 地域 にある プリムUUID
• string name プリムの インベントリ の中にあるscript
• integer pin llSetRemoteScriptAccessPin によって設定された pin と値が一致しなければなりません。
• integer running スクリプトを起動状態として設定するかの boolean 値。
• integer start_param スクリプト targetllGetStartParameter を実行すると返される値。

このスクリプトの入っているオブジェクトのオーナーが target の修正権限を持っている場合に限り動作します。

警告

  • この関数は 3.0 秒間、スクリプトを停止します。
  • target が 同じ人によって所有されておらず, かつ name が謙譲不可能の場合、 DEBUG_CHANNEL でエラーが叫ばれます。
  • name がコピー可能でない場合、 エラーがDEBUG_CHANNEL 上で叫ばれます。
  • target 同じ地域でない場合、 DEBUG_CHANNEL でエラーが叫ばれます。
  • スクリプトが持ち物間でコピーまたは移動された場合、これらの State は引き継がれません。メモリやイベントキューや実行位置は全て破棄されます。
  • name がプリムの中で見つからない場合、またはこれがscriptでない場合、エラーが DEBUG_CHANNEL 上で叫ばれます。
  • nametarget のインベントリに存在している場合、警告を出すことなく置き換えます。
  • start_param の値はスクリプトがリセットされると失われます。
  • target が別のユーザに装備されたオブジェクトの場合、オブジェクトの修正権限の如何に関わらず、この関数はエラー表示を出さずに (バグ?) 失敗します。[1]
  • pin が一致しなかった場合、"Task ~Prim~ trying to illegally load script onto task ~Other_Prim~!" というエラーメッセージが DEBUG_CHANNEL で shout されます。"~Prim~" と "~Other_Prim~" はそれぞれ該当するプリム名に置き換えられます。
  • target がスクリプトの所属先である場合 (target == llGetKey()) 、"Unable to add item!" が DEBUG_CHANNEL で shout されます。
  • スクリプトの入ったオブジェクトがグループに譲渡されている場合、たとえ target が同じグループに譲渡されていても、転送される name のスクリプトに謙譲権限が必要です。
  • スクリプトが (running 、または実行中チェックボックス、または llSetScriptState で) 実行状態に設定されると、state_entry がキューに入ります。

Important Issues

~ All Issues ~ Search JIRA for related Bugs
   stack trace error while running scripts after llRemoteLoadScriptPin

サンプル

<lsl>//子プリムの PIN をセットする integer PIN=1341134;

default { state_entry() {

       llOwnerSay(llGetObjectName()+" : "+(string)llGetKey()+" は一致する PIN で指定されたスクリプトを受け入れる準備ができました。");
       llSetRemoteScriptAccessPin(PIN);
   }
}</lsl>

関連項目

関数

•  llSetRemoteScriptAccessPin 送り先プリムの準備に使う
•  llSetScriptState スクリプトの起動状態を設定する
•  llResetOtherScript プリムの他のスクリプトをリセットする

特記事項

経緯

  • 1.2.6 で追加
  • SL 1.25.4 でこの関数はスクリプトがフルパーミッションでない限り、アタッチメントの中のスクリプトをコピー・移動しなくなった。(SVC-3725)
  • SL 1.25.5 でこの関数は、送り先がコピーと謙譲権限をもつ (もしくはもっと限定された) 場合に限り、アタッチメントの中のスクリプトをコピー・移動できるようになった。(SVC-3738)

All Issues

~ Search JIRA for related Issues
   stack trace error while running scripts after llRemoteLoadScriptPin

脚注

  1. ^ 装備したオブジェクトはそのオーナーだけが修正できます。

Signature

function void llRemoteLoadScriptPin( key target, string name, integer pin, integer running, integer start_param );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。