From 5605650e26dbe178b61a67577ab22069dffbc9ae Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Thu, 22 Feb 2024 00:02:50 +0000 Subject: [PATCH] Saveload: Don't apply state ticks offset on load if not stored in save --- src/saveload/afterload.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/saveload/afterload.cpp b/src/saveload/afterload.cpp index f6f0430653..5912a8fec2 100644 --- a/src/saveload/afterload.cpp +++ b/src/saveload/afterload.cpp @@ -872,7 +872,8 @@ bool AfterLoadGame() if (SlXvIsFeaturePresent(XSLFI_VARIABLE_DAY_LENGTH, 1, 3)) { /* CalTime is used here because EconTime hasn't been set yet, but this needs to be done before setting EconTime::Detail::SetDate, * because that calls RecalculateStateTicksOffset which overwrites DateDetail::_state_ticks_offset which is an input here */ - _state_ticks = GetStateTicksFromDateWithoutOffset(CalTime::CurDate().base(), CalTime::CurDateFract()) + DateDetail::_state_ticks_offset; + _state_ticks = GetStateTicksFromDateWithoutOffset(CalTime::CurDate().base(), CalTime::CurDateFract()); + if (SlXvIsFeaturePresent(XSLFI_VARIABLE_DAY_LENGTH, 3, 3)) _state_ticks += DateDetail::_state_ticks_offset; } /* Update current year