Files
@ r4381:c965d1f3016a
Branch filter:
Location: cpp/openttd-patchpack/source/date.h - annotation
r4381:c965d1f3016a
1.7 KiB
text/x-c
(svn r6131) -Codechange : Complete all missing _ttdpatch_flags entries
-Feature : both unifiedmaglevmode are now set.
Maglev and monorail are not allowed to run on each other tracks and will not be.
Setting those flags will allow grfsets as the Norvegian one to be loaded
-Codechange : link the TTDPatch's irregularstations with OTTD's nonuniform_stations
-Codechange : Reformat the whole array (thanks Rubidium, it sure looks better now)
-Feature : both unifiedmaglevmode are now set.
Maglev and monorail are not allowed to run on each other tracks and will not be.
Setting those flags will allow grfsets as the Norvegian one to be loaded
-Codechange : link the TTDPatch's irregularstations with OTTD's nonuniform_stations
-Codechange : Reformat the whole array (thanks Rubidium, it sure looks better now)
r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4322:9e4c90dab88c r4326:7102aa7f4fb2 r4322:9e4c90dab88c r4322:9e4c90dab88c r4326:7102aa7f4fb2 r4326:7102aa7f4fb2 r4326:7102aa7f4fb2 r4326:7102aa7f4fb2 r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4261:8c2d0c75e37a r4288:b6dbdc0a7329 r4288:b6dbdc0a7329 | /* $Id$ */
/**
* 1 day is 74 ticks; _date_fract used to be uint16 and incremented by 885. On
* an overflow the new day begun and 65535 / 885 = 74.
* 1 tick is approximately 30 ms.
* 1 day is thus about 2 seconds (74 * 30 = 2220) on a machine that can run OpenTTD normally
*/
#define DAY_TICKS 74
/*
* ORIGINAL_BASE_YEAR, ORIGINAL_MAX_YEAR and DAYS_TILL_ORIGINAL_BASE_YEAR are
* primarily used for loading newgrf and savegame data and returning some
* newgrf (callback) functions that were in the original (TTD) inherited
* format, where '_date == 0' meant that it was 1920-01-01.
*/
/** The minimum starting year/base year of the original TTD */
#define ORIGINAL_BASE_YEAR 1920
/** The maximum year of the original TTD */
#define ORIGINAL_MAX_YEAR 2090
/**
* The offset in days from the '_date == 0' till
* 'ConvertYMDToDate(ORIGINAL_BASE_YEAR, 0, 1)'
*/
#define DAYS_TILL_ORIGINAL_BASE_YEAR (365 * ORIGINAL_BASE_YEAR + ORIGINAL_BASE_YEAR / 4 - ORIGINAL_BASE_YEAR / 100 + ORIGINAL_BASE_YEAR / 400)
/* The absolute minimum & maximum years in OTTD */
#define MIN_YEAR 0
/* MAX_YEAR, nicely rounded value of the number of years that can
* be encoded in a single 32 bits date, about 2^31 / 366 years. */
#define MAX_YEAR 5000000
/* Year and Date are defined elsewhere */
typedef uint8 Month;
typedef uint8 Day;
typedef uint16 DateFract;
typedef struct YearMonthDay {
Year year;
Month month;
Day day;
} YearMonthDay;
extern Year _cur_year;
extern Month _cur_month;
extern Date _date;
extern DateFract _date_fract;
void SetDate(Date date);
void ConvertDateToYMD(Date date, YearMonthDay *ymd);
Date ConvertYMDToDate(Year year, Month month, Day day);
|