Difference between revisions of "Clock"
Jump to navigation
Jump to search
m |
Omei Qunhua (talk | contribs) (Improved clock script) |
||
Line 3: | Line 3: | ||
=====Say the current time (PST)===== | =====Say the current time (PST)===== | ||
<lsl> | <lsl> | ||
//Simple clock | // Simple SLT 12-hour clock with AM/PM and PDT/PST indicators. Uses llGetWallClock() and llGetGMTclock() | ||
// Omei Qunhua | |||
default | default | ||
Line 13: | Line 10: | ||
state_entry() | state_entry() | ||
{ | { | ||
llSetTimerEvent(1); | |||
} | |||
timer() | |||
{ | |||
integer Hours; | |||
integer Mins; | |||
string AMPM; | |||
float fSecs = llGetWallclock(); // Get SL time in seconds (will be either PST or PDT) | |||
string PST_PDT = " PST"; // Assume Pacific Standard Time | |||
if ( (llGetGMTclock() - fSecs) < 27000.0) // If difference between SLT and UTC is less then 7.5 hours, then SLT is currently PDT | |||
PST_PDT = " PDT"; // Pacific Daylight Time | |||
Mins = (integer) fSecs / 60; | |||
Hours = Mins / 60; | |||
Mins = Mins % 60; | |||
AMPM = " AM"; | |||
if (Hours > 11) // Convert to 12-hour format with PM indication | |||
if( | |||
{ | { | ||
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); | |||
} | } | ||
} | } |
Revision as of 13:44, 17 December 2013
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Say the current time (PST)
<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 Hours; integer Mins; string AMPM; float fSecs = llGetWallclock(); // Get SL time in seconds (will be either PST or PDT) string PST_PDT = " PST"; // Assume Pacific Standard Time if ( (llGetGMTclock() - fSecs) < 27000.0) // If difference between SLT and UTC is less then 7.5 hours, then SLT is currently PDT PST_PDT = " PDT"; // Pacific Daylight Time Mins = (integer) fSecs / 60; Hours = Mins / 60; Mins = Mins % 60; 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>