Difference between revisions of "LlGetDate"
Jump to navigation
Jump to search
(Correction for leap year calculation) |
m (Revised the leap year calculation again!) |
||
Line 32: | Line 32: | ||
integer DayOfYear(integer year, integer month, integer day) | integer DayOfYear(integer year, integer month, integer day) | ||
{ | { | ||
return | return | ||
day | |||
+ (month - 1) * 30 | + (month - 1) * 30 - (1 + | ||
(( | |||
+ (month / 2) * (month <= 8) + (4 + (month - 7) / 2) * (month > 8); | ((year % 4) == 0) | ||
|| ((year % 100) != 0) | |||
|| ((year % 400) == 0) | |||
|| (year <= 1582) | |||
) && (month > 2))) | |||
+ (month / 2) * (month <= 8) + (4 + (month - 7) / 2) * (month > 8); | |||
} | } | ||
default | default |
Revision as of 06:39, 2 July 2008
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: string llGetDate( );204 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns a string that is the current date in the UTC time zone in the format "YYYY-MM-DD".
If you wish to know the time as well use: llGetTimestamp which uses the format "YYYY-MM-DDThh:mm:ss.ff..fZ"
Caveats
Examples
<lsl> // Birthday surprise default {
state_entry() { llSetTimerEvent(0.1); }
timer() { if(llGetDate() == "2009-02-15") llSetText("HAPPY BIRTHDAY!", <0,1,0>, 1.0); else llSetText("A surprise is coming...", <0,1,0>, 1.0); llSetTimerEvent(3600.0); // check every hour. }
} </lsl> <lsl> // Function to calculate the numeric day of year integer DayOfYear(integer year, integer month, integer day) {
return day + (month - 1) * 30 - (1 + ((((year % 4) == 0)