Difference between revisions of "LlGetWallclock"
Jump to navigation
Jump to search
(simplify hhmmss calculation (see discussion for details)) |
Omei Qunhua (talk | contribs) m (Add some hopefully helpful comments) |
||
Line 4: | Line 4: | ||
|func_footnote=For GMT use [[llGetGMTclock]] | |func_footnote=For GMT use [[llGetGMTclock]] | ||
|func_desc | |func_desc | ||
|return_text=that is the time in seconds since midnight Pacific time (PST/PDT), truncated to whole seconds. | |return_text=that is the time in seconds since midnight Pacific time (PST/PDT), truncated to whole seconds. That is the same as the time of day in SLT expressed as seconds. | ||
|spec | |spec | ||
|caveats | |caveats | ||
Line 77: | Line 77: | ||
|also_tests | |also_tests | ||
|also_articles | |also_articles | ||
|notes | |notes=To determine if the current time returned by this function is PST or PDT, you can look at the difference between the times returned by llGetWallclock() and llGetGMTclock(). The difference will be 8 hours for PST, and 7 hours for PDT, that is 28800 or 25200 seconds. | ||
|permission | |permission | ||
|negative_index | |negative_index |
Revision as of 15:38, 16 December 2013
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: float llGetWallclock( );81 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns a float that is the time in seconds since midnight Pacific time (PST/PDT), truncated to whole seconds. That is the same as the time of day in SLT expressed as seconds.
For GMT use llGetGMTclock
Caveats
Examples
<lsl>// Real World Sun integer Flag;
default {
state_entry() { Flag = -1; llSetTimerEvent(0.1); } timer() { float time = llGetWallclock(); if (Flag == -1) { llSetTimerEvent(60.0); } if (time < 21600) { if (Flag) { llSetText("The Sun is coming! :)", <1,1,0>, 1.0); Flag = 0; } } else if (time < 64800) { if (Flag != 1) { llSetText("Sun has risen. :(", <1,0,0>, 1.0); Flag = 1; } } else if (Flag != 2) { llSetText("Goodbye Sun. :(", <1,0,0>, 1.0); Flag = 2; } }
}</lsl>
<lsl>// Convert to human-readable HH:MM:SS format string ConvertWallclockToTime() {
integer now = (integer)llGetWallclock(); integer seconds = now % 60; integer minutes = (now / 60) % 60; integer hours = now / 3600; return llGetSubString("0" + (string)hours, -2, -1) + ":" + llGetSubString("0" + (string)minutes, -2, -1) + ":" + llGetSubString("0" + (string)seconds, -2, -1);
}
default {
touch_start(integer total_number) { llSay(0, ConvertWallclockToTime()); }
}
</lsl>Notes
To determine if the current time returned by this function is PST or PDT, you can look at the difference between the times returned by llGetWallclock() and llGetGMTclock(). The difference will be 8 hours for PST, and 7 hours for PDT, that is 28800 or 25200 seconds.
See Also
Functions
• | llGetGMTclock | – | Seconds since midnight GMT |