diff options
author | Fire-Head <Fire-Head@users.noreply.github.com> | 2019-06-13 02:35:26 +0200 |
---|---|---|
committer | Fire-Head <Fire-Head@users.noreply.github.com> | 2019-06-13 02:35:26 +0200 |
commit | 75bca8e31eef877cc6df83146c665f86ad6f8583 (patch) | |
tree | eed79ac6f6bdee9d914e283266bf4b7aee56c6a6 /src/Clock.cpp | |
parent | CameraCreate cosmetic fix (diff) | |
download | re3-75bca8e31eef877cc6df83146c665f86ad6f8583.tar re3-75bca8e31eef877cc6df83146c665f86ad6f8583.tar.gz re3-75bca8e31eef877cc6df83146c665f86ad6f8583.tar.bz2 re3-75bca8e31eef877cc6df83146c665f86ad6f8583.tar.lz re3-75bca8e31eef877cc6df83146c665f86ad6f8583.tar.xz re3-75bca8e31eef877cc6df83146c665f86ad6f8583.tar.zst re3-75bca8e31eef877cc6df83146c665f86ad6f8583.zip |
Diffstat (limited to 'src/Clock.cpp')
-rw-r--r-- | src/Clock.cpp | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/src/Clock.cpp b/src/Clock.cpp index bd4126f2..dd7b99fe 100644 --- a/src/Clock.cpp +++ b/src/Clock.cpp @@ -3,6 +3,10 @@ #include "Timer.h" #include "Pad.h" #include "Clock.h" +#include "Stats.h" + +_TODO("gbFastTime"); +Bool &gbFastTime = *(Bool*)0x95CDBB; uint8 &CClock::ms_nGameClockHours = *(uint8*)0x95CDA6; uint8 &CClock::ms_nGameClockMinutes = *(uint8*)0x95CDC8; @@ -30,26 +34,37 @@ CClock::Initialise(uint32 scale) void CClock::Update(void) { - if(CPad::GetPad(1)->GetRightShoulder1()){ + if(CPad::GetPad(1)->GetRightShoulder1()) + { ms_nGameClockMinutes += 8; ms_nLastClockTick = CTimer::GetTimeInMilliseconds(); - if(ms_nGameClockMinutes >= 60){ + + if(ms_nGameClockMinutes >= 60) + { ms_nGameClockHours++; ms_nGameClockMinutes = 0; if(ms_nGameClockHours >= 24) ms_nGameClockHours = 0; } - }else - if(CTimer::GetTimeInMilliseconds() - ms_nLastClockTick > - ms_nMillisecondsPerGameMinute){ + + } + else if(CTimer::GetTimeInMilliseconds() - ms_nLastClockTick > ms_nMillisecondsPerGameMinute || gbFastTime) + { ms_nGameClockMinutes++; ms_nLastClockTick += ms_nMillisecondsPerGameMinute; - if(ms_nGameClockMinutes >= 60){ + + if ( gbFastTime ) + ms_nLastClockTick = CTimer::GetTimeInMilliseconds(); + + if(ms_nGameClockMinutes >= 60) + { ms_nGameClockHours++; ms_nGameClockMinutes = 0; if(ms_nGameClockHours >= 24) + { + CStats::DaysPassed++; ms_nGameClockHours = 0; - // TODO: stats days passed + } } } ms_nGameClockSeconds += |