ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/common/time.C
(Generate patch)

Comparing deliantra/server/common/time.C (file contents):
Revision 1.19 by root, Tue Dec 23 06:58:23 2008 UTC vs.
Revision 1.29 by root, Wed Nov 16 23:41:59 2016 UTC

1/* 1/*
2 * This file is part of Deliantra, the Roguelike Realtime MMORPG. 2 * This file is part of Deliantra, the Roguelike Realtime MMORPG.
3 * 3 *
4 * Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team 4 * Copyright (©) 2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016 Marc Alexander Lehmann / Robin Redeker / the Deliantra team
5 * Copyright (©) 2002,2007 Mark Wedel & Crossfire Development Team 5 * Copyright (©) 2002 Mark Wedel & Crossfire Development Team
6 * Copyright (©) 1992,2007 Frank Tore Johansen 6 * Copyright (©) 1992 Frank Tore Johansen
7 * 7 *
8 * Deliantra is free software: you can redistribute it and/or modify 8 * Deliantra is free software: you can redistribute it and/or modify it under
9 * it under the terms of the GNU General Public License as published by 9 * the terms of the Affero GNU General Public License as published by the
10 * the Free Software Foundation, either version 3 of the License, or 10 * Free Software Foundation, either version 3 of the License, or (at your
11 * (at your option) any later version. 11 * option) any later version.
12 * 12 *
13 * This program is distributed in the hope that it will be useful, 13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details. 16 * GNU General Public License for more details.
17 * 17 *
18 * You should have received a copy of the GNU General Public License 18 * You should have received a copy of the Affero GNU General Public License
19 * along with this program. If not, see <http://www.gnu.org/licenses/>. 19 * and the GNU General Public License along with this program. If not, see
20 * <http://www.gnu.org/licenses/>.
20 * 21 *
21 * The authors can be reached via e-mail to <support@deliantra.net> 22 * The authors can be reached via e-mail to <support@deliantra.net>
22 */ 23 */
23 24
24#include <global.h> 25#include <global.h>
25#include <tod.h> 26#include <tod.h>
30#include <sys/time.h> 31#include <sys/time.h>
31 32
32/* 33/*
33 * Gloabal variables: 34 * Gloabal variables:
34 */ 35 */
35tick_t pticks; 36tick_t server_tick;
36 37
37static const char *season_name[5] = { 38static const char *season_name[5] = {
38 "New Year", 39 "New Year",
39 "Growth", 40 "Growth",
40 "Harvest", 41 "Harvest",
75void 76void
76get_tod (timeofday_t *tod) 77get_tod (timeofday_t *tod)
77{ 78{
78 unsigned int todtick = (unsigned int)(runtime * (1. / RUNTIME_PER_HOUR)); 79 unsigned int todtick = (unsigned int)(runtime * (1. / RUNTIME_PER_HOUR));
79 80
80 tod->year = todtick / HOURS_PER_YEAR; 81 tod->year = todtick / HOURS_PER_YEAR + EPOCH;
81 tod->month = todtick / HOURS_PER_MONTH % MONTHS_PER_YEAR; 82 tod->month = todtick / HOURS_PER_MONTH % MONTHS_PER_YEAR;
82 tod->day = todtick % HOURS_PER_MONTH / DAYS_PER_MONTH; 83 tod->day = todtick % HOURS_PER_MONTH / DAYS_PER_MONTH;
83 tod->hour = todtick % HOURS_PER_DAY; 84 tod->hour = todtick % HOURS_PER_DAY;
84 tod->minute = (int)((runtime - todtick * RUNTIME_PER_HOUR) * (60. / RUNTIME_PER_HOUR)); 85 tod->minute = (int)((runtime - todtick * RUNTIME_PER_HOUR) * (60. / RUNTIME_PER_HOUR));
85 86
120 season_name[tod->season]); 121 season_name[tod->season]);
121 122
122 return buf; 123 return buf;
123} 124}
124 125
125const char * 126static const char *
126get_current_tod_str () 127get_current_tod_str ()
127{ 128{
128 timeofday_t tod; 129 timeofday_t tod;
129 get_tod (&tod); 130 get_tod (&tod);
130 131

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines