diff --git a/src/Script/ScriptHelpers.ts b/src/Script/ScriptHelpers.ts index f6da4054e..5d0e971de 100644 --- a/src/Script/ScriptHelpers.ts +++ b/src/Script/ScriptHelpers.ts @@ -56,7 +56,7 @@ export function scriptCalculateOfflineProduction(runningScript: RunningScript): Player.gainHackingExp(expGain); const moneyGain = - (runningScript.onlineMoneyMade / runningScript.onlineRunningTime) * timePassed * CONSTANTS.OfflineHackingIncome; + (runningScript.onlineMoneyMade / Player.playtimeSinceLastAug) * timePassed * CONSTANTS.OfflineHackingIncome; // money is given to player during engine load Player.scriptProdSinceLastAug += moneyGain; diff --git a/test/jest/Save.test.ts b/test/jest/Save.test.ts index 9890f8305..65f4f7f38 100644 --- a/test/jest/Save.test.ts +++ b/test/jest/Save.test.ts @@ -3,7 +3,8 @@ import "../../src/Player"; import { loadAllServers, saveAllServers } from "../../src/Server/AllServers"; import { loadAllRunningScripts } from "../../src/NetscriptWorker"; import { Settings } from "../../src/Settings/Settings"; - +import { Player, setPlayer } from "../../src/Player"; +import { PlayerObject } from "../../src/PersonObjects/Player/PlayerObject"; jest.useFakeTimers(); // Direct tests of loading and saving. @@ -151,6 +152,9 @@ test("load/saveAllServers", () => { // Feed a JSON object through loadAllServers/saveAllServers. // The object is a pruned set of servers that was extracted from a real (dev) game. jest.setSystemTime(123456789000); + + setPlayer(new PlayerObject()); + Player.playtimeSinceLastAug = 123456; loadStandardServers(); // Re-stringify with indenting for nicer diffs