Hover Text Clock

Written by Kitsune
// HoverText Clock Script
// By Ben Linden
//
// Drop on an object to make it display the PST time.
//
// If you are interested in scripting, check out
// the Script Help under the help menu.

// The double slash means these lines are comments
// and ignored by the computer.




// Global Variables
// a string is a collection of characters.
string smin; // Represents minutes
string sseconds; //Represens seconds

// All scripts have a default state, this will be
// the first code executed.
default
{
    // state_entry() is an event handler, it executes
    // whenever a state is entered.
    state_entry()
    {
        // llSetTimerEvent() is a function that sets 
        // up a timer event in seconds.
        llSetTimerEvent(2.0);  // call a timer event 
                               // every 2 seconds.
    }
    
    
    // timer() is an event handler, it executes on an
    // interval defined by llSetTimerEvent()
    timer()
    {
       // llFloor is a function that rounds down all numbers.
       // llGetWallClock is a function that returns the time 
       // of day in seconds, on a 24 hour clock.
       integer seconds =  llFloor(llGetWallclock());
       // Convert the total number of seconds into a integer (whole number)
       integer min = llFloor(seconds/60);
       // Figure out how many minutes that is
       seconds = seconds - (min*60);
       //Work out the remaining number of seconds
       integer hour = llFloor(min/60);
       // figure out how many hours it represents.
       min = min - (hour*60);
       // figure out the number of minutes remaining
       
       // if is a conditional statement, it will only execute if the conditions are met. 
       if(hour > 12) {hour = hour - 12;} // if the hours are greater than 12, convert to 12 hour time
       string shour = (string)hour; //convert the number into a string
       if(min < 10) {smin = "0"+(string)min;} // if less than 10 minutes, put a 0 in the minute string
       else { smin = (string)min;} 
       if(seconds < 10) { sseconds = "0"+(string)seconds;} // if less than 10 sec, put a 0 in the second string
       else {sseconds = (string)seconds;}
       
       
       string time = shour + ":" + smin + ":" + sseconds; // build the seperate strings into a complete string, with colons
       
       // llSetText is a function that displays a string over the object.
       llSetText(time, ZERO_VECTOR, 1.0); //Display the string in solid black.
    }

}