/* * Original Author Unkown Discworld Creator * @Changed Shaydz: changed lots of things. */ #include <localtime.h> #include <dst.h> #define SPECIAL_DAY "/handlers/special_day" inherit COMMAND_BASE; mixed *_timezones; string est_time(){ int hours = TIME_H->query_hour(time()); switch (hours) { case 2..4: return "pre dawn"; case 5..7: return "around dawn"; case 8..10: return "morning"; case 11..13: return "around midday"; case 14..16: return "afternoon"; case 17..20: return "around dusk"; case 21..22: return "night"; default: return "around midnight"; } } /* est_time() */ void create() { mixed *time_rubbish; time_rubbish = localtime(time()); _timezones = ({ "Sydney (Server time)", (10 + AUS_DST) * (60 * 60), "Melbourne", (10 + AUS_DST) * (60 * 60), "Amsterdam", (CEST_DST +1) * (60 * 60), "London", (UK_DST * 60 * 60), // "New Orleans", - (time_rubbish[LT_GMTOFF]+(14*60*60)) + (NO_DST * 60 * 60), "Edinburgh", (SCOT_DST * 60 * 60), }); } /* create() */ mixed cmd( string word ) { mixed *time_rubbish; int i; string mess; time_rubbish = localtime(time()); /* Figure out the gmt time. */ mess = ""; mess += "You estimate the mud time to be " + est_time() + ".\n"; if(creatorp(TP)){ mess += "On "+mud_name()+", it is "+mudtime(time())+".\n\n"; for (i = 0; i < sizeof(_timezones); i += 2) { mess += sprintf( "It is %s in %s.\n", ctime(time() + time_rubbish[LT_GMTOFF] + _timezones[i + 1]), _timezones[i]); } } write(mess); return 1; } /* cmd() */ mixed *query_patterns() { return ({ "", (: cmd :) }); } /* query_patterns() */