(svn r5928) -Cleanup: remove ConvertIntDate and use ConvertYMDToDate as ConvertIntDate was only called with Years.

This commit is contained in:
rubidium 2006-08-16 12:07:24 +00:00
parent dddd90583d
commit d5b6216c3d
4 changed files with 2 additions and 41 deletions

36
date.c
View File

@ -116,42 +116,6 @@ Date ConvertYMDToDate(Year year, Month month, Day day)
return (yr >> 2) * (365 + 365 + 365 + 366) + rem; return (yr >> 2) * (365 + 365 + 365 + 366) + rem;
} }
/**
* Convert a date on the form:
* 1920 - 2090 (MAX_YEAR_END_REAL)
* 192001 - 209012
* 19200101 - 20901231
* or if > 2090 and below 65536, treat it as a daycount.
* @return -1 if no conversion was possible
*/
Date ConvertIntDate(uint date)
{
Year year;
Month month = 0;
Day day = 1;
if (IS_INT_INSIDE(date, 1920, MAX_YEAR + 1)) {
year = date;
} else if (IS_INT_INSIDE(date, 192001, 209012 + 1)) {
month = date % 100 - 1;
year = date / 100;
} else if (IS_INT_INSIDE(date, 19200101, 20901231 + 1)) {
day = date % 100; date /= 100;
month = date % 100 - 1;
year = date / 100;
} else if (IS_INT_INSIDE(date, 2091, 65536)) {
return date;
} else {
return (Date)-1;
}
/* invalid ranges? */
if (month >= 12 || !IS_INT_INSIDE(day, 1, 31 + 1)) return (Date)-1;
return ConvertYMDToDate(year, month, day);
}
/** Functions used by the IncreaseDate function */ /** Functions used by the IncreaseDate function */
extern void OnNewDay_Train(Vehicle *v); extern void OnNewDay_Train(Vehicle *v);

1
date.h
View File

@ -32,4 +32,3 @@ extern DateFract _date_fract;
void SetDate(Date date); void SetDate(Date date);
void ConvertDateToYMD(Date date, YearMonthDay *ymd); void ConvertDateToYMD(Date date, YearMonthDay *ymd);
Date ConvertYMDToDate(Year year, Month month, Day day); Date ConvertYMDToDate(Year year, Month month, Day day);
Date ConvertIntDate(uint date);

4
misc.c
View File

@ -124,9 +124,7 @@ void InitializeGame(int mode, uint size_x, uint size_y)
_cur_tileloop_tile = 0; _cur_tileloop_tile = 0;
if ((mode & IG_DATE_RESET) == IG_DATE_RESET) { if ((mode & IG_DATE_RESET) == IG_DATE_RESET) {
uint starting = ConvertIntDate(_patches.starting_year); SetDate(ConvertYMDToDate(_patches.starting_year, 0, 1));
if (starting == (uint)-1) starting = 10958;
SetDate(starting);
} }
InitializeEngines(); InitializeEngines();

View File

@ -983,7 +983,7 @@ static void NetworkInitGameInfo(void)
_network_game_info.spectators_on = 0; _network_game_info.spectators_on = 0;
_network_game_info.game_date = _date; _network_game_info.game_date = _date;
_network_game_info.start_date = ConvertIntDate(_patches.starting_year); _network_game_info.start_date = ConvertYMDToDate(_patches.starting_year, 0, 1);
_network_game_info.map_width = MapSizeX(); _network_game_info.map_width = MapSizeX();
_network_game_info.map_height = MapSizeY(); _network_game_info.map_height = MapSizeY();
_network_game_info.map_set = _opt.landscape; _network_game_info.map_set = _opt.landscape;