diff options
Diffstat (limited to 'world/map/npc/functions/time.txt')
-rw-r--r-- | world/map/npc/functions/time.txt | 175 |
1 files changed, 0 insertions, 175 deletions
diff --git a/world/map/npc/functions/time.txt b/world/map/npc/functions/time.txt deleted file mode 100644 index 7d16a200..00000000 --- a/world/map/npc/functions/time.txt +++ /dev/null @@ -1,175 +0,0 @@ -// A replacement for gettimestr() -// At some point this should be a builtin in the server -// Should I allow formatting of times other than the current time? - -// Variables: -// output @ts_date$ "yyyy-mm-dd" -// output @ts_time$ "hh:mm:ss" - -function|script|time_stamp -{ - // local variables - // if there is reasonable demand, these might be exported - // (that is what the builtin is likely to do) - set @ts_year, gettime(7); - set @ts_month, gettime(6); - set @ts_mday, gettime(5); - //set @ts_wday, gettime(4); - set @ts_hour, gettime(3); - set @ts_minute, gettime(2); - set @ts_second, gettime(1); - - // locals used to generate leading zeroes - set @ts_month_pad$, ""; - set @ts_mday_pad$, ""; - set @ts_hour_pad$, ""; - set @ts_minute_pad$, ""; - set @ts_second_pad$, ""; - - if (@ts_month < 10) - set @ts_month_pad$, "0"; - if (@ts_mday < 10) - set @ts_mday_pad$, "0"; - if (@ts_hour < 10) - set @ts_hour_pad$, "0"; - if (@ts_minute < 10) - set @ts_minute_pad$, "0"; - if (@ts_second < 10) - set @ts_second_pad$, "0"; - - set @ts_date$, @ts_year + "-" + @ts_month_pad$ + @ts_month + "-" + @ts_mday_pad$ + @ts_mday; - set @ts_time$, @ts_hour_pad$ + @ts_hour + ":" + @ts_minute_pad$ + @ts_minute + ":" +@ts_second_pad$ + @ts_second; - - // cleanup - set @ts_year, 0; - set @ts_month, 0; - set @ts_mday, 0; - set @ts_hour, 0; - set @ts_minute, 0; - set @ts_second, 0; - set @ts_month_pad$, ""; - set @ts_mday_pad$, ""; - set @ts_hour_pad$, ""; - set @ts_minute_pad$, ""; - set @ts_second_pad$, ""; - - return; -} - - - -// HumanTime - returns a human-readable time -// author: meko - -// Internal variables: -// @separator$, @unit$, @unit2$, @unit3$, @unit4$, @unit5$ -// @seconds, @minutes, @hours, @days - -// Public Variables: -// input @ms integer -// output @time$ string - -function|script|HumanTime -{ - set @time$, "now"; - if(@seconds) set @ms, @ms + (@seconds * 1000); - if(@minutes) set @ms, @ms + (@minutes * 60000); - if(@days) set @ms, @ms + (@days * 1440000); - if(@ms < 1000) goto L_Millis; // under 1 second we have nothing to count - set @seconds, @ms / 1000; - set @ms, @ms % 1000; - if(@seconds < 60) goto L_Seconds; - set @minutes, @seconds / 60; - set @seconds, @seconds % 60; - if(@minutes < 60) goto L_Minutes; - set @hours, @minutes / 60; - set @minutes, @minutes % 60; - if(@hours < 24) goto L_Hours; - set @days, @hours / 24; - set @hours, @hours % 24; - if(@days) goto L_Days; - goto L_Clean; - -L_Millis: - set @time$, @ms + "ms"; - return; - -L_Seconds: - set @unit$, "second"; - if(@seconds > 1) set @unit$, "seconds"; - set @unit2$, "millisecond"; - if(@ms > 1) set @unit2$, "milliseconds"; - set @time$, @seconds + " " + @unit$; - if(@ms) set @time$, @time$ + " and " + @ms + " " + @unit2$; - goto L_Clean; - -L_Minutes: - set @unit$, "minute"; - if(@minutes > 1) set @unit$, "minutes"; - set @unit2$, "second"; - if(@seconds > 1) set @unit2$, "seconds"; - set @unit3$, "millisecond"; - if(@ms > 1) set @unit3$, "milliseconds"; - set @time$, @minutes + " " + @unit$; - set @separator$, " and "; - if(@ms) set @separator$, ", "; - if(@seconds) set @time$, @time$ + @separator$ + @seconds + " " + @unit2$; - if(@ms) set @time$, @time$ + " and " + @ms + " " + @unit3$; - goto L_Clean; - -L_Hours: - set @unit$, "hour"; - if(@hours > 1) set @unit$, "hours"; - set @unit2$, "minute"; - if(@minutes > 1) set @unit2$, "minutes"; - set @unit3$, "second"; - if(@seconds > 1) set @unit3$, "seconds"; - set @unit4$, "millisecond"; - if(@ms > 1) set @unit4$, "milliseconds"; - set @time$, @hours + " " + @unit$; - set @separator$, " and "; - if(@seconds || @ms) set @separator$, ", "; - if(@minutes) set @time$, @time$ + @separator$ + @minutes + " " + @unit2$; - set @separator$, " and "; - if(@ms) set @separator$, ", "; - if(@seconds) set @time$, @time$ + @separator$ + @seconds + " " + @unit3$; - if(@ms) set @time$, @time$ + " and " + @ms + " " + @unit4$; - goto L_Clean; - -L_Days: - set @unit$, "day"; - if(@hours > 1) set @unit$, "days"; - set @unit2$, "hour"; - if(@hours > 1) set @unit2$, "hours"; - set @unit3$, "minute"; - if(@minutes > 1) set @unit3$, "minutes"; - set @unit4$, "second"; - if(@seconds > 1) set @unit4$, "seconds"; - set @unit5$, "millisecond"; - if(@ms > 1) set @unit5$, "milliseconds"; - set @time$, @days + " " + @unit$; - set @separator$, " and "; - if(@minutes || @seconds || @ms) set @separator$, ", "; - if(@hours) set @time$, @time$ + @separator$ + @hours + " " + @unit2$; - set @separator$, " and "; - if(@seconds || @ms) set @separator$, ", "; - if(@minutes) set @time$, @time$ + @separator$ + @minutes + " " + @unit3$; - set @separator$, " and "; - if(@ms) set @separator$, ", "; - if(@seconds) set @time$, @time$ + @separator$ + @seconds + " " + @unit3$; - if(@ms) set @time$, @time$ + " and " + @ms + " " + @unit4$; - goto L_Clean; - -L_Clean: - set @unit$, ""; - set @unit2$, ""; - set @unit3$, ""; - set @unit4$, ""; - set @unit5$, ""; - set @seconds, 0; - set @minutes, 0; - set @hours, 0; - set @days, 0; - set @separator$, ""; - return; -} |