Difference between revisions of "Attach/ja"
< Attach
Jump to navigation
Jump to search
Asuka Neely (talk | contribs) |
|||
(7 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{LSL_Event | {{LSL_Event/ja | ||
|event_id=23 | |event_id=23 | ||
|event_delay | |event_delay | ||
|event=attach | |event=attach | ||
|p1_type=key | |p1_type=key|p1_name=id | ||
|p1_name=id | |p1_desc=装着された場合はアバターの UUID、装着されなくなった場合は {{LSL_Constant/NULL_KEY/ja}} | ||
|p1_desc= | |p1_hover=装着された場合はアバターの UUID、装着されなくなった場合は NULL_KEY. | ||
|p1_hover= | |event_desc=オブジェクトがエージェントに {{LSLG|attachment|装着}} されたか、エージェントから取り外されたときにオブジェクト内部で発生します。 | ||
|event_desc= | |||
|constants | |constants | ||
|spec | |spec= | ||
===発生します=== | |||
# オブジェクトがアバターに装着されたとき | |||
#* 地面の上にあるものを装着したとき | |||
#* 持ち物から装着したとき | |||
#* オブジェクトを装着したアバターがログインしたとき | |||
# オブジェクトが取り外されたとき ('''id''' == {{LSL_Constant/NULL_KEY/ja}}) | |||
#* 地面の上に落としたとき | |||
#* 持ち物にしまったとき | |||
#* <s>オブジェクトを装着したアバターがログアウトしたとき</s>(現在のバージョンでは発生しませんが、スクリプト作成者は可能性を予測する必要があります) | |||
===発生しません=== | |||
# オブジェクトを装着したアバターがテレポートしたとき | |||
#* {{LSLG/ja|CHANGED_TELEPORT}} でアバターがテレポートしたことを検出します | |||
# オブジェクトを装着したアバターが違う地域に移ったとき | |||
#* {{LSLG/ja|CHANGED_REGION}} でアバターが地域を移ったことを検出します | |||
|caveats | |caveats | ||
|examples= | |examples= | ||
以下は attach イベントを単純化した例です。変数 id はスクリプトが入っているオブジェクトを装着したアバターのキーか、 {{LSL_Constant/NULL_KEY/ja}} となります。 {{LSLG/ja|if}} 条件式を使って、変数 id の値を調べています。 | |||
<source lang="lsl2">default | |||
< | |||
{ | { | ||
attach(key id) | attach(key id) | ||
{ | { | ||
if(id)// | if(id)//有効なキーか NULL_KEY かを調べます | ||
{ | { | ||
llSay(PUBLIC_CHANNEL," | llSay(PUBLIC_CHANNEL,"装着されました!"); | ||
} | } | ||
else | else | ||
{ | { | ||
llSay(PUBLIC_CHANNEL," | llSay(PUBLIC_CHANNEL,"取り外されました!"); | ||
} | } | ||
} | } | ||
}</ | }</source> | ||
|helpers | |helpers | ||
|also_header | |also_header | ||
|also_events | |also_events= | ||
{{LSL DefineRow|{{LSLG/ja|on_rez}}}} | |||
|also_functions= | |also_functions= | ||
{{LSL DefineRow| | {{LSL DefineRow|{{LSLG/ja|llAttachToAvatar}}}} | ||
{{LSL DefineRow| | {{LSL DefineRow|{{LSLG/ja|llDetachFromAvatar}}}} | ||
{{LSL DefineRow| | {{LSL DefineRow|{{LSLG/ja|llGetAttached}}}} | ||
|also_articles= | |also_articles= | ||
{{LSL DefineRow|{{LSLGC|Attachment | {{LSL DefineRow|{{LSLGC/ja|Attachment}}}} | ||
|also_footer | |also_footer | ||
|notes | |notes= | ||
==={{LSLG/ja|on_rez}} と {{LSLG/ja|attach}}=== | |||
持ち物の中から装着したときや、ログイン時には、 {{LSLG/ja|on_rez}} は {{LSLG/ja|attach}} の前に発生します。 | |||
===取り込みタイミング=== | |||
取り込みの間、オブジェクトには attach イベントを実行するだけの時間が与えられます。スクリプトが取り込まれる瞬間、これらのイベントを実行中でまだ完了していない場合、オブジェクトが次に rez されたときに実行を完了させます (これは望んでいないことかもしれません) 。取り外し時の処理をシンプルにすることをお薦めします。 | |||
{{LSLG/ja|attach}} は、最後に rez されたときにスクリプトがループしていた場合には発生'''しません'''。 ({{LSLG/ja|on_rez}} と同じです) | |||
|mode | |mode | ||
|deprecated | |deprecated | ||
|cat1=Attachment | |cat1=Attachment | ||
|cat2 | |cat2 | ||
|cat3 | |cat3 | ||
|cat4}} | |cat4}} |
Latest revision as of 08:47, 21 February 2016
LSL ポータル | 関数 | イベント | 型 | 演算子 | 定数 | 実行制御 | スクリプトライブラリ | カテゴリ別スクリプトライブラリ | チュートリアル |
仕様
発生します
- オブジェクトがアバターに装着されたとき
- 地面の上にあるものを装着したとき
- 持ち物から装着したとき
- オブジェクトを装着したアバターがログインしたとき
- オブジェクトが取り外されたとき (id == NULL_KEY)
- 地面の上に落としたとき
- 持ち物にしまったとき
オブジェクトを装着したアバターがログアウトしたとき(現在のバージョンでは発生しませんが、スクリプト作成者は可能性を予測する必要があります)
発生しません
- オブジェクトを装着したアバターがテレポートしたとき
- CHANGED_TELEPORT でアバターがテレポートしたことを検出します
- オブジェクトを装着したアバターが違う地域に移ったとき
- CHANGED_REGION でアバターが地域を移ったことを検出します
サンプル
注意点
on_rez と attach
持ち物の中から装着したときや、ログイン時には、 on_rez は attach の前に発生します。
取り込みタイミング
取り込みの間、オブジェクトには attach イベントを実行するだけの時間が与えられます。スクリプトが取り込まれる瞬間、これらのイベントを実行中でまだ完了していない場合、オブジェクトが次に rez されたときに実行を完了させます (これは望んでいないことかもしれません) 。取り外し時の処理をシンプルにすることをお薦めします。
attach は、最後に rez されたときにスクリプトがループしていた場合には発生しません。 (on_rez と同じです)
参考情報
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。