Difference between revisions of "Clock"
Jump to navigation
Jump to search
Omei Qunhua (talk | contribs) |
Omei Qunhua (talk | contribs) (Handle 2nd difference value between UTC and SLT) |
||
Line 14: | Line 14: | ||
timer() | timer() | ||
{ | { | ||
integer sltSecs = (integer) llGetWallclock(); // Get SL time in seconds (will be either PST or PDT) | |||
string PST_PDT = " PST"; | integer diff = (integer) llGetGMTclock() - sltSecs; // Compute the difference between UTC and SLT | ||
string PST_PDT = " PST"; // Assume Pacific Standard Time | |||
// If the difference between SLT and UTC is 7 hours or -17 hours, then SLT is currently PDT | |||
if (diff == 25200 || diff == -61200) | |||
PST_PDT = " PDT"; // Pacific Daylight Time | PST_PDT = " PDT"; // Pacific Daylight Time | ||
integer Mins | integer Mins = sltSecs / 60; | ||
integer Hours | integer Hours = Mins / 60; | ||
Mins | Mins = Mins % 60; | ||
string AMPM | string AMPM = " AM"; | ||
if (Hours > 11) // Convert to 12-hour format with PM indication | if (Hours > 11) // Convert to 12-hour format with PM indication | ||
{ | { |
Revision as of 03:20, 18 December 2013
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Show the current SL time (PST/PDT)
<lsl> // Simple SLT 12-hour clock with AM/PM and PDT/PST indicators. Uses llGetWallClock() and llGetGMTclock() // Omei Qunhua
default {
state_entry() { llSetTimerEvent(1); } timer() { integer sltSecs = (integer) llGetWallclock(); // Get SL time in seconds (will be either PST or PDT) integer diff = (integer) llGetGMTclock() - sltSecs; // Compute the difference between UTC and SLT string PST_PDT = " PST"; // Assume Pacific Standard Time
// If the difference between SLT and UTC is 7 hours or -17 hours, then SLT is currently PDT if (diff == 25200 || diff == -61200) PST_PDT = " PDT"; // Pacific Daylight Time integer Mins = sltSecs / 60; integer Hours = Mins / 60; Mins = Mins % 60; string AMPM = " AM"; if (Hours > 11) // Convert to 12-hour format with PM indication { AMPM = " PM"; Hours -= 12; } if (Hours == 0) Hours = 12; llSetText( (string) Hours + ":" + llGetSubString("0" + (string) Mins, -2, -1) + AMPM + PST_PDT, <1,1,1> ,1); }
} </lsl>