# HG changeset patch # User dominik # Date 1093188336 0 # Node ID 8e2e584a95007dc352c745753fbc2da30f68250f # Parent c72381c275460eaa3814812dfa5e3d5d2ad2daa4 (svn r109) added/heavily modified patch by truesatan: cheat change date diff -r c72381c27546 -r 8e2e584a9500 lang/english.txt --- a/lang/english.txt Sun Aug 22 14:44:03 2004 +0000 +++ b/lang/english.txt Sun Aug 22 15:25:36 2004 +0000 @@ -1040,6 +1040,7 @@ STR_CHEAT_BUILD_IN_PAUSE :{LTBLUE}Build while in pause mode: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jetplanes will not crash (frequently) on small airports: {ORANGE} {STRING} STR_CHEAT_SWITCH_CLIMATE :{LTBLUE}Switch climate: {ORANGE} {STRING} +STR_CHEAT_CHANGE_DATE :{LTBLUE}Change date: {ORANGE} {DATE_SHORT} STR_SORT_BY_POPULATION :{BLACK}Population diff -r c72381c27546 -r 8e2e584a9500 misc_gui.c --- a/misc_gui.c Sun Aug 22 14:44:03 2004 +0000 +++ b/misc_gui.c Sun Aug 22 15:25:36 2004 +0000 @@ -1356,11 +1356,27 @@ return _opt.landscape; } +extern void EnginesMonthlyLoop(); + +// p2 1 (increase) or -1 (decrease) +int32 ClickChangeDateCheat(int32 p1, int32 p2) +{ + YearMonthDay ymd; + ConvertDayToYMD(&ymd, _date); + + if((ymd.year==0 && p2==-1) || (ymd.year==170 && p2==1)) return _cur_year; + + SetDate(ConvertYMDToDay(_cur_year + p2, ymd.month, ymd.day)); + EnginesMonthlyLoop(); + SetWindowDirty(FindWindowById(WC_STATUS_BAR, 0)); + return _cur_year; +} typedef int32 CheckButtonClick(int32, int32); static CheckButtonClick * const _cheat_button_proc[] = { ClickMoneyCheat, ClickChangePlayerCheat, + ClickChangeDateCheat, }; @@ -1429,7 +1445,8 @@ {CE_BOOL, 0, STR_CHEAT_CROSSINGTUNNELS, &_cheats.crossing_tunnels.value,&_cheats.crossing_tunnels.been_used}, {CE_BOOL, 0, STR_CHEAT_BUILD_IN_PAUSE, &_cheats.build_in_pause.value, &_cheats.build_in_pause.been_used}, {CE_BOOL, 0, STR_CHEAT_NO_JETCRASH, &_cheats.no_jetcrash.value, &_cheats.no_jetcrash.been_used}, - {CE_UINT8, 0, STR_CHEAT_SWITCH_CLIMATE, &_opt.landscape, &_cheats.switch_climate.been_used, &ClickChangeClimateCheat, -1, 4, 1}, + {CE_UINT8, 0, STR_CHEAT_SWITCH_CLIMATE, &_opt.landscape, &_cheats.switch_climate.been_used, &ClickChangeClimateCheat, -1, 4, 1}, + {CE_UINT8, 0, STR_CHEAT_CHANGE_DATE, &_cur_year, &_cheats.change_date.been_used, &ClickChangeDateCheat, -1,1,1}, }; @@ -1489,6 +1506,10 @@ val += STR_TEMPERATE_LANDSCAPE; SET_DPARAM16(0, val); + + // display date for change date cheat + if(ce->str==STR_CHEAT_CHANGE_DATE) + SET_DPARAM16(0, _date); // draw colored flag for change player cheat if(ce->str==STR_CHEAT_CHANGE_PLAYER) diff -r c72381c27546 -r 8e2e584a9500 variables.h --- a/variables.h Sun Aug 22 14:44:03 2004 +0000 +++ b/variables.h Sun Aug 22 15:25:36 2004 +0000 @@ -180,6 +180,7 @@ Cheat build_in_pause; // build while in pause mode Cheat no_jetcrash; // no jet will crash on small airports anymore Cheat switch_climate; + Cheat change_date; //changes date ingame } Cheats; VARDEF Cheats _cheats;