--- deliantra/server/include/tod.h 2008/04/20 05:24:55 1.14 +++ deliantra/server/include/tod.h 2018/11/17 23:40:01 1.27 @@ -1,24 +1,26 @@ /* * This file is part of Deliantra, the Roguelike Realtime MMORPG. - * - * Copyright (©) 2006,2007 Marc Alexander Lehmann / Robin Redeker / the Deliantra team - * Copyright (©) 2003-2006,2007 Mark Wedel & Crossfire Development Team - * Copyright (©) 2000,2007 Tim Rightnour - * Copyright (©) 1992,2007 Frank Tore Johansen - * - * Deliantra is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * + * + * Copyright (©) 2017,2018 Marc Alexander Lehmann / the Deliantra team + * Copyright (©) 2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016 Marc Alexander Lehmann / Robin Redeker / the Deliantra team + * Copyright (©) 2003-2006 Mark Wedel & Crossfire Development Team + * Copyright (©) 2000 Tim Rightnour + * Copyright (©) 1992 Frank Tore Johansen + * + * Deliantra is free software: you can redistribute it and/or modify it under + * the terms of the Affero GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * + * + * You should have received a copy of the Affero GNU General Public License + * and the GNU General Public License along with this program. If not, see + * . + * * The authors can be reached via e-mail to */ @@ -30,15 +32,26 @@ #define TICK2TIME(tick) (tstamp (tick) * TICK) #define TIME2TICK(time) tstamp ((time) / TICK) -#define RUNTIME_PER_HOUR 180. +#define RUNTIME_PER_MINUTE 3. +#define RUNTIME_PER_HOUR (RUNTIME_PER_MINUTE * 60.) #define TICKS_PER_HOUR int (RUNTIME_PER_HOUR / MAX_TIME * 1e6) +// the first year in the game +#define EPOCH 8437 + /* game time */ #define HOURS_PER_DAY 28 #define DAYS_PER_WEEK 7 #define WEEKS_PER_MONTH 5 #define MONTHS_PER_YEAR 17 +// one game minute is 3s +// one game hour is 3m +// one game day is 1h24s +// one game week is 9h48s +// one game month is 2d1h +// one game year is 34d17h + /* convenience */ #define WEEKS_PER_YEAR (WEEKS_PER_MONTH * MONTHS_PER_YEAR) #define DAYS_PER_MONTH (DAYS_PER_WEEK * WEEKS_PER_MONTH) @@ -62,7 +75,9 @@ }; /* from common/time.c */ -extern void get_tod (timeofday_t *tod); +void get_tod (timeofday_t *tod); +char *format_tod (char *buf, int len, timeofday_t *tod); +void print_tod (object *op); #endif