LlRezAtRoot/ja
From Second Life Wiki
メインページ > LlRezAtRoot > LlRezAtRoot/ja
関数: llRezAtRoot( string inventory, vector position, vector velocity, rotation rot, integer param );
オブジェクト inventory を、そのルートプリムの位置が position になるよう、rot で回転し、velocity で移動しつつ、開始パラメタ param で出現させる。
| • string | inventory | – | a プリムのインベントリにあるオブジェクト | |
| • vector | position | – | 最初の位置 (リージョン座標で指定) | |
| • vector | velocity | – | 最初の速度ベクトル | |
| • rotation | rot | – | 最初の回転 | |
| • integer | param | – | on_rez イベントの引数であり、rez されたオブジェクトでの llGetStartParameter の戻り値でもある。 |
rez するオブジェクトの大きさによっては、かなり時間がかかります。
ルートプリムでなくオブジェクトの中心を pos として使いたい場合は、代わりに llRezObject を使ってください。
警告
- この関数は0.1秒間、スクリプトを停止します。
- プリムのインベントリからinventoryが無い場合、 あるいは、a オブジェクトでない場合、エラーが上でshoutされます。
- inventory を rez するオブジェクトから pos までが 10 メートル以上離れている場合、エラー表示を出さずに inventory の rez は失敗します。
- あなたがその土地にログオフ時でも建造可能な権限を持っていないと、エラー表示を出さずに失敗します。
- すなわち、以下のいずれかを満たす必要があります。
- そこがあなた自身の土地である。
- その土地を所有するグループにあなたが属し、グループによる建造が土地で許可されており、オブジェクトにグループ設定が済んでいる。
- その土地では誰でも建造が許可されている。
- その土地を所有するグループへ、オブジェクトを譲渡する。この方法は常にうまくゆくでしょう。
- あなたがログインしている時に限り、"常に「オブジェクト作成」を許可" というグループ権限が上記の制約に優先します。詳細はディープノートの要因の項を参照してください。
- すなわち、以下のいずれかを満たす必要があります。
例
//タッチしてオブジェクトを rez する。 string object = "Object";//インベントリ内にあるオブジェクト名 integer start_param = 10; rotation rot; default { state_entry() { rot = llEuler2Rot(< 0, 90, 90> * DEG_TO_RAD); } touch_start(integer a) { vector vec = llGetPos() + < 0.0, 0.0, 5.0>; // 5 メートル直上 vector speed = llGetVel(); llRezAtRoot(object, vec, speed, rot, start_param); } }
関連項目
イベント
| • | object_rez | – | オブジェクトをインベントリから rez する時に発生する。 |
関数
| • | llRezObject | |||
| • | llGetStartParameter | |||
| • | llGodLikeRezObject |
ディープノート
要因
| | | SVC-3145 | [c] | Rezzing enabled by PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS fails for scripts when the script's owner is offline. |
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。

