10#ifndef TIMER_GAME_CALENDAR_H
11#define TIMER_GAME_CALENDAR_H
46 static constexpr int DEF_MINUTES_PER_YEAR = 12;
47 static constexpr int FROZEN_MINUTES_PER_YEAR = 0;
Storage class for Calendar time constants.
static constexpr int MAX_MINUTES_PER_YEAR
One week of real time. The actual max that doesn't overflow TimerGameCalendar::sub_date_fract is 1062...
Timer that is increased every 27ms, and counts towards ticks / days / months / years.
static uint16_t sub_date_fract
Subpart of date_fract that we use when calendar days are slower than economy days.
static Month month
Current month (0..11).
static Date ConvertYMDToDate(Year year, Month month, Day day)
Converts a tuple of Year, Month and Day to a Date.
static YearMonthDay ConvertDateToYMD(Date date)
Converts a Date to a Year, Month & Day.
static void SetDate(Date date, DateFract fract)
Set the date.
static Date date
Current date in days (day counter).
static Year year
Current year, starting at 0.
static DateFract date_fract
Fractional part of the day.
Template class for time constants shared by both Calendar and Economy time.
Template class for all TimerGame based timers.
StrongType::Typedef< int32_t, struct YearTag< struct Calendar >, StrongType::Compare, StrongType::Integer > Year
StrongType::Typedef< int32_t, DateTag< struct Calendar >, StrongType::Compare, StrongType::Integer > Date
Definition of the common class inherited by both calendar and economy timers.