Difference between revisions of "LlRezAtRoot"

From Second Life Wiki
Jump to navigation Jump to search
m (Copy editing)
Line 3: Line 3:
|func=llRezAtRoot|func_id=286|func_sleep=0.1|func_energy=200.0
|func=llRezAtRoot|func_id=286|func_sleep=0.1|func_energy=200.0
|p1_type=string|p1_name=inventory
|p1_type=string|p1_name=inventory
|p2_type=vector|p2_name=position|p2_desc=initial position
|p2_type=vector|p2_name=position|p2_desc=initial position (in [[Viewer coordinate frames#Region|region coordinates]])|p2_hover=position (in region coordinates)|p2_hover=position (in region coordinates)
|p3_type=vector|p3_name=velocity|p3_desc=initial velocity
|p3_type=vector|p3_name=velocity|p3_desc=initial velocity
|p4_type=rotation|p4_name=rot|p4_desc=initial rotation
|p4_type=rotation|p4_name=rot|p4_desc=initial rotation
|p5_type=integer|p5_name=param|p5_desc=[[on_rez]] event parameter and value returned by [[llGetStartParameter]].
|p5_type=integer|p5_name=param|p5_desc=[[on_rez]] event parameter and value returned by [[llGetStartParameter]] in the rezzed object.|p5_hover=on_rez event parameter and value returned by llGetStartParameter in the rezzed object.
|func_desc=Instantiate '''inventory''' object rotated to '''rot''' with its root at '''position''', moving at '''velocity''', using '''param''' as the start parameter
|func_desc=Instantiate '''inventory''' object rotated to '''rot''' with its root at '''position''', moving at '''velocity''', using '''param''' as the start parameter
|func_footnote=Causes a hard delay based on the mass of the object rezzed.<br>
|func_footnote=Causes a hard delay based on the mass of the object rezzed.<br>
Line 12: Line 12:
|constants
|constants
|spec
|spec
|caveats
|caveats=
*Silently fails to rez '''inventory''' if '''pos''' is more than 10 meters away.
|examples=<pre class="lsl">//Rez an object on touch
|examples=<pre class="lsl">//Rez an object on touch
string object = "Object";//Object in inventory
string object = "Object";//Object in inventory

Revision as of 13:00, 22 September 2007

Summary

Function: llRezAtRoot( string inventory, vector position, vector velocity, rotation rot, integer param );
0.1 Forced Delay
200.0 Energy

Instantiate inventory object rotated to rot with its root at position, moving at velocity, using param as the start parameter

• string inventory an object in the inventory of the prim this script is in
• vector position initial position (in region coordinates)
• vector velocity initial velocity
• rotation rot initial rotation
• integer param on_rez event parameter and value returned by llGetStartParameter in the rezzed object.

Causes a hard delay based on the mass of the object rezzed.
To rez an object so its center is at pos (instead of the root) use llRezObject instead.

Caveats

  • This function causes the script to sleep for 0.1 seconds.
  • If inventory is missing from the prim's inventory or it is not an object then an error is shouted on DEBUG_CHANNEL.
  • Silently fails to rez inventory if pos is more than 10 meters away.

Examples

//Rez an object on touch
string object = "Object";//Object in inventory
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 meter above this
        vector speed = llGetVel();
        llRezAtRoot(object, vec, speed, rot, start_param);
    }
}

See Also

Events

•  object_rez triggered when this object rezzes an object from inventory

Functions

•  llRezObject
•  llGetStartParameter
•  llGodLikeRezObject

Deep Notes

Signature

function void llRezAtRoot( string inventory, vector position, vector velocity, rotation rot, integer param );