Difference between revisions of "LlSetSunDirection"

From Second Life Wiki
Jump to navigation Jump to search
 
(24 intermediate revisions by 2 users not shown)
Line 1: Line 1:
llSetSunPosition
{{
|p1_type=vector|p1_name=height|p1_desc=a vector that is the direction of the sun in the region
LSL_Function
|p2_type=float|p2_name=tau |p2_desc=seconds to allow for the change
|func=llSetSunDirection|sort=SetSunDirection
|func_desc=Requests the UserAgent's (viewer) to shift to a specific SunPosition setting while sitting on the object containing the script.
|p1_type=vector|p1_name=direction|p1_desc=A vector that is the direction of the sun in the region
|return_text
|p2_type=float|p2_name=Delay|p2_desc=Seconds to allow for the change
|spec
|func_desc=
|caveats=*The user may choose to revert to the region default at any time.
Requests the UserAgent's Viewer to change the phase of day/night to a specific Direction while sitting on the object containing the script.  ''(This function prototype assumes that the parameter specifying the SunDirection would be a vector, which is probably wrong, as Windlight appears to control this with a float which is the Arc of the Sun.)''
The transition should take the number of seconds specified by the Delay parameter.
llSetSunDirection recognizes 5 preset vectors that function similar to the Menu choice World->Force Sun
 
A related JIRA feature request exists at [https://jira.secondlife.com/browse/VWR-7677 VWR-7677]. Please go vote for it if this is important to you.
 
|constants=
{{{!}} {{Prettytable}}
{{!}}-{{Hl2}}
! colspan="2" {{!}} Constants
! Action
{{!}}-
{{!}} SUNRISE
{{!}} <?,?,?>
{{!}} Sets the Direction to the East.
{{!}}-
{{!}} NOON
{{!}} <?,?,?>
{{!}} Sets the Direction to up.
{{!}}-
{{!}} SUNSET
{{!}} <?,?,?>
{{!}} Sets the Direction to the West.
{{!}}-
{{!}} MIDNIGHT
{{!}} <?,?,?>
{{!}} Sets the Direction to down.
{{!}}-
{{!}} REGION_DEFAULT
{{!}} <?,?,?>
{{!}} Sets the Direction to the region's current Direction.
{{!}}}
 
|notes=
Useful for nightclubs and space oriented sims, which will prefer night environments.
Also for items such as sailboats that tend to prefer day.
This function applies to an avatar who is currently seated on a prim with a script that makes this call, much as [[llForceMouselook]] is able to implicitly get permission to change the viewer state.
This might suggest a likely permission (i.e. PERMISSION_CONTROL_ENVIRONMENT) that could be requested of the avatar: llRequestPermissions( AvatarKey, PERMISSION_CONTROL_ENVIRONMENT ) and detected when granted, by the event: run_time_permissions(integer perm) by testing the permission value against the appropriate constant if(perm & PERMISSION_CONTROL_ENVIRONMENT).
Alternatively, this function might have the Avatar Key passed as a parameter. Which could remove the implicit permission that the SIT action would grant.
 
 
|also_functions=
{{LSL DefineRow||[[llGetSunDirection]]|Setting the Direction, then waiting the Delay period, and calling llGetSunDirection should return the vector specified in the original llSetSunPosition.}}
{{LSL DefineRow||[[llForceMouselook]]|Suggests that this type of request is reasonable to send to a User Agent/Viewer.}}
{{LSL DefineRow||[[llAvatarOnSitTarget]]|Call this to determine what agent would be affected by this call.}}
 
|mode=request
|cat1
 
}}

Latest revision as of 07:43, 10 March 2012

Emblem-important-yellow.png LSL Feature Request
The described function does not exist. This article is a feature request.

Summary

Function: llSetSunDirection( vector direction, float Delay );

Requests the UserAgent's Viewer to change the phase of day/night to a specific Direction while sitting on the object containing the script. (This function prototype assumes that the parameter specifying the SunDirection would be a vector, which is probably wrong, as Windlight appears to control this with a float which is the Arc of the Sun.) The transition should take the number of seconds specified by the Delay parameter. llSetSunDirection recognizes 5 preset vectors that function similar to the Menu choice World->Force Sun

A related JIRA feature request exists at VWR-7677. Please go vote for it if this is important to you.

• vector direction A vector that is the direction of the sun in the region
• float Delay Seconds to allow for the change

Constants Action
SUNRISE <?,?,?> Sets the Direction to the East.
NOON <?,?,?> Sets the Direction to up.
SUNSET <?,?,?> Sets the Direction to the West.
MIDNIGHT <?,?,?> Sets the Direction to down.
REGION_DEFAULT <?,?,?> Sets the Direction to the region's current Direction.

Examples

Notes

Useful for nightclubs and space oriented sims, which will prefer night environments. Also for items such as sailboats that tend to prefer day. This function applies to an avatar who is currently seated on a prim with a script that makes this call, much as llForceMouselook is able to implicitly get permission to change the viewer state. This might suggest a likely permission (i.e. PERMISSION_CONTROL_ENVIRONMENT) that could be requested of the avatar: llRequestPermissions( AvatarKey, PERMISSION_CONTROL_ENVIRONMENT ) and detected when granted, by the event: run_time_permissions(integer perm) by testing the permission value against the appropriate constant if(perm & PERMISSION_CONTROL_ENVIRONMENT). Alternatively, this function might have the Avatar Key passed as a parameter. Which could remove the implicit permission that the SIT action would grant.

See Also

Functions

•  llGetSunDirection Setting the Direction, then waiting the Delay period, and calling llGetSunDirection should return the vector specified in the original llSetSunPosition.
•  llForceMouselook Suggests that this type of request is reasonable to send to a User Agent/Viewer.
•  llAvatarOnSitTarget Call this to determine what agent would be affected by this call.

Deep Notes

Signature

//function void llSetSunDirection( vector direction, float Delay );