LlRemoteLoadScriptPin/ja
From Second Life Wiki
メインページ > LlRemoteLoadScriptPin > LlRemoteLoadScriptPin/ja
関数: llRemoteLoadScriptPin( key target, string name, integer pin, integer running, integer start_param );
スクリプト name を target へコピーし、running が 0 以外ならば開始パラメタ start_param で開始させる。
| • key | target | – | 同じリージョンにあるプリム | |
| • string | name | – | a プリムのインベントリにあるスクリプト | |
| • integer | pin | – | llSetRemoteScriptAccessPin によって設定された pin と値が一致しなければなりません。 | |
| • integer | running | – | スクリプトを開始させるならば 0 以外を、開始しないならば 0 を設定する。 | |
| • integer | start_param | – | スクリプト target で llGetStartParameter を実行すると返される値。 |
このスクリプトの入っているオブジェクトのオーナーが target の修正権限を持っている場合に限り動作します。
警告
- この関数は3.0秒間、スクリプトを停止します。
- プリムのインベントリからnameが無い場合、 あるいは、a スクリプトでない場合、エラーが上でshoutされます。
- start_param の値はスクリプトがリセットされると失われます。
- target が別のユーザに装備されたオブジェクトの場合、オブジェクトの修正権限の如何に関わらず、この関数はエラー表示を出さずに (バグ?) 失敗します。[1]
- pin が一致しなかった場合、"Task ~Prim~ trying to illegally load script onto task ~Other_Prim~!" というエラーメッセージが DEBUG_CHANNEL で shout されます。"~Prim~" と "~Other_Prim~" はそれぞれ該当するプリム名に置き換えられます。
- target が無効の場合、"Unable to add item!" というエラーメッセージが DEBUG_CHANNEL で shout されます。target が無効とされるのは以下のような場合です:
- llGetKey の戻り値と等しい。(訳注: すなわち自分自身にコピーを送ろうとしている。)
- バージョン 1.25.4 においてこの関数は、フルパーミションのスクリプトでなければ、装備されたオブジェクトへコピー/移動することができませんでした。(SVC-3725)
- バージョン 1.25.4 においてこの関数は、送り先に対してコピーとトランスファー (およびそれ以上) の権限を持っていれば、スクリプトをコピー/移動できるようになりました。(SVC-3738)
- llRemoteLoadScriptPin() を使ったスクリプトの入ったオブジェクトがグループに譲渡されている場合、たとえ転送先のオブジェクトが同じグループに譲渡されていても、転送されるスクリプトにトランスファー権限が必要です。
例
//Child Prim PIN setter integer PIN=1341134; default { state_entry() { llOwnerSay(llGetObjectName()+" : "+(string)llGetKey()+" は一致する PIN で指定されたスクリプトを受け入れる準備ができました。"); llSetRemoteScriptAccessPin(PIN); } }
ディープノート
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。

