LlSetAgentRot: Difference between revisions

From Second Life Wiki
Jump to navigation Jump to search
Rider Linden (talk | contribs)
No edit summary
Lucia Nightfire (talk | contribs)
This function has viewer support as of 7.2.1.17108480561
 
(3 intermediate revisions by 2 users not shown)
Line 16: Line 16:
* This function will not change the rotation for a seated avatar. Update the agent's sit target instead.
* This function will not change the rotation for a seated avatar. Update the agent's sit target instead.
** Special case: If the agent is seated on a prim WITHOUT a sit target they will be turned to face the set rotation when they stand.
** Special case: If the agent is seated on a prim WITHOUT a sit target they will be turned to face the set rotation when they stand.
 
* Viewers prior to 7.2.1.17108480561 will not show your own avatar's rotation being affected by this function, but others will see your rotation update.
|spec
|constants
|constants
|examples=
|examples=
Line 39: Line 38:
         if (perm & PERMISSION_TRIGGER_ANIMATION)
         if (perm & PERMISSION_TRIGGER_ANIMATION)
         {
         {
             llSetAgentRot(llGetRot());
             llSetAgentRot(llGetRot(), 0);
         }
         }
     }
     }

Latest revision as of 11:26, 9 September 2025

Summary

Function: llSetAgentRot( rotation rot, integer flags );
0.0 Forced Delay
10.0 Energy

Sets the rotation the avatar to rot.

• rotation rot Rotation for avatar.
• integer flags Flags to control behavior of llSetAgentRot.

Specification

This function turns the avatar to face the direction indicated by rot.

flags is a placeholder for future expansion. There are no flags defined at this time, pass a constant value of 0.

Caveats

  • This function requires PERMISSION_TRIGGER_ANIMATION.
  • This function will only rotate an avatar around the yaw angle.
    • More complex rotations may be passed in, but the yaw is extracted and then renormalized.
  • Rotating to ZERO_ROTATION will face an avatar due east.
  • This function will not change the rotation for a seated avatar. Update the agent's sit target instead.
    • Special case: If the agent is seated on a prim WITHOUT a sit target they will be turned to face the set rotation when they stand.
  • Viewers prior to 7.2.1.17108480561 will not show your own avatar's rotation being affected by this function, but others will see your rotation update.

Examples

// Turn the touching avatar to face the same direction as the prim.

default
{
    state_entry()
    {
        llSetText("Avatar Rotator", llGetColor(ALL_SIDES), 1.0);
    }

    touch_start(integer total_number)
    {
        llRequestPermissions(llDetectedKey(0), PERMISSION_TRIGGER_ANIMATION);
    }
    
    run_time_permissions(integer perm)
    {
        if (perm & PERMISSION_TRIGGER_ANIMATION)
        {
            llSetAgentRot(llGetRot(), 0);
        }
    }

}

See Also

Functions

•  llRequestPermissions

Deep Notes

Signature

function void llSetAgentRot( rotation rot, integer flags );