Difference between revisions of "LlSleep"

From Second Life Wiki
Jump to navigation Jump to search
 
m (Replaced <source> with <syntaxhighlight>)
 
(12 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{LSLFunctionAll|func_id=108|func_sleep=0.0|func_energy=0.0|func=llSleep|p1_type=float|p1_name=sec|func_footnote=Put script to sleep for sec seconds|return_text|spec|caveats|examples|helpers|related|also|notes}}[[Category:LSL_Functions]][[Category:LSL_Stub]]
{{LSL_Function
|func_id=108|func_sleep=0.0|func_energy=0.0
|func=llSleep|p1_type=float|p1_name=sec|p1_desc=seconds to sleep
|func_footnote
|func_desc=Puts the script to sleep for '''sec''' seconds. The script will not do anything during this time.
 
The script will sleep at least until the next server-frame, which happen every (1/45 = ~0.02222) seconds under normal conditions.
 
If '''sec''' is zero or less, the script will not sleep at all.
 
|return_text
|spec
|caveats
|constants
|examples=<syntaxhighlight lang="lsl2">
default
{
    state_entry()
    {
        llSay(0, "I going to take a nap for 5 seconds.");
        llSleep(5.0);
        llSay(0, "I feel so refreshed!");
    }
}
</syntaxhighlight>
<syntaxhighlight lang="lsl2">
default
{
    state_entry()
    {
        llOwnerSay("Time between sleeps:");
 
        integer loops = 10;
        float last_time = 0.0;
 
        llResetTime();
        llSleep(0.02);
 
        while (--loops)
        {
            float time = llGetTime();
            llOwnerSay((string)(time - last_time));
            last_time = time;
            llSleep(0.0); // Try a value above zero
        }
    }
}
</syntaxhighlight>
|helpers
|also_functions={{LSL DefineRow||[[llSetTimerEvent]]}}
|also_events={{LSL DefineRow||[[timer]]}}
|also_tests
|also_articles
|notes
|permission
|negative_index
|sort=Sleep
|cat1=Script
|haiku={{Haiku|Clouds drift, streams flow on.|Yet in here, time holds its breath.|The mind disconnects.}}
|cat2
|cat3
|cat4
}}

Latest revision as of 08:26, 22 September 2024

Summary

Function: llSleep( float sec );

Puts the script to sleep for sec seconds. The script will not do anything during this time.

The script will sleep at least until the next server-frame, which happen every (1/45 = ~0.02222) seconds under normal conditions.

If sec is zero or less, the script will not sleep at all.

• float sec seconds to sleep

Examples

default
{
    state_entry()
    {
        llSay(0, "I going to take a nap for 5 seconds.");
        llSleep(5.0);
        llSay(0, "I feel so refreshed!");
    }
}
default
{
    state_entry()
    {
        llOwnerSay("Time between sleeps:");

        integer loops = 10;
        float last_time = 0.0;

        llResetTime();
        llSleep(0.02);

        while (--loops)
        {
            float time = llGetTime();
            llOwnerSay((string)(time - last_time));
            last_time = time;
            llSleep(0.0); // Try a value above zero
        }
    }
}

See Also

Events

•  timer

Functions

•  llSetTimerEvent

Deep Notes

Signature

function void llSleep( float sec );

Haiku

Clouds drift, streams flow on.
Yet in here, time holds its breath.
The mind disconnects.