llGetWallclock

From Second Life Wiki
Revision as of 01:56, 10 July 2010 by Udge Watanabe (talk | contribs) (added an example of converting seconds to an HH:MM:SS string)
Jump to navigation Jump to search

Summary

Function: float llGetWallclock( );
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.

For GMT use llGetGMTclock

Examples

<lsl>// Real World Sun integer set;

default {

   state_entry()
   {
       llSetTimerEvent(0.1);
       set = -1;
   }
   
   timer()
   {
       float time = llGetWallclock();
       if(set == -1)
           llSetTimerEvent(60.0);
       if(time < 21600)
       {
           if(set)
           {
               llSetText("The Sun is coming! :)", <1,1,0>, 1.0);
               set = 0;
           }
       }
       else if(time < 64800)
       {
           if(set != 1)
           {
               llSetText("Sun has risen. :(", <1,0,0>, 1.0);
               set = 1;
           }
       }
       else if(set != 2)
       {
           llSetText("Goodbye Sun. :(", <1,0,0>, 1.0);
           set = 2;
       }
   }

}</lsl>

<lsl>// Convert to human-readable HH:MM:SS format string ConvertWallclockToTime (float now) {

   integer iNow = (integer) now;
   integer seconds = iNow % 60;
   integer minutes = ((iNow - seconds) % 3600) / 60;
   integer hours = (iNow - minutes - seconds) / 3600;
   string result = (string) seconds;
   if (seconds < 10)
       result = "0" + result;
   result = (string)minutes + ":" + result;
   if (minutes < 10)
       result = "0" + result;
   result = (string)hours + ":" + result;
   if (hours< 10)
       result = "0" + result;
   return result;

}

default {

   touch_start(integer total_number)
   {
       ConvertWallclockToTime(llGetWallclock());
   }

}

</lsl>

See Also

Functions

•  llGetGMTclock Seconds since midnight GMT

Deep Notes

Signature

function float llGetWallclock();