bitburner-src/src/Player.ts

32 lines
1.2 KiB
TypeScript
Raw Normal View History

2019-04-04 02:08:11 +02:00
import { Corporation } from "./Corporation/Corporation";
import { PlayerObject } from "./PersonObjects/Player/PlayerObject";
2021-03-09 02:31:34 +01:00
import { sanitizeExploits } from "./Exploits/Exploit";
2021-09-25 20:42:57 +02:00
import { Reviver } from "./utils/JSONReviver";
2019-04-04 02:08:11 +02:00
import Decimal from "decimal.js";
export let Player = new PlayerObject();
2021-09-24 00:47:43 +02:00
export function loadPlayer(saveString: string): void {
2021-09-05 01:09:30 +02:00
Player = JSON.parse(saveString, Reviver);
// Parse Decimal.js objects
Player.money = new Decimal(Player.money);
if (Player.corporation instanceof Corporation) {
Player.corporation.funds = new Decimal(Player.corporation.funds);
Player.corporation.revenue = new Decimal(Player.corporation.revenue);
Player.corporation.expenses = new Decimal(Player.corporation.expenses);
2021-09-24 00:47:43 +02:00
for (let i = 0; i < Player.corporation.divisions.length; ++i) {
const ind = Player.corporation.divisions[i];
2021-09-05 01:09:30 +02:00
ind.lastCycleRevenue = new Decimal(ind.lastCycleRevenue);
ind.lastCycleExpenses = new Decimal(ind.lastCycleExpenses);
ind.thisCycleRevenue = new Decimal(ind.thisCycleRevenue);
ind.thisCycleExpenses = new Decimal(ind.thisCycleExpenses);
2017-12-02 04:50:08 +01:00
}
2021-09-05 01:09:30 +02:00
}
2021-03-09 02:31:34 +01:00
2021-09-05 01:09:30 +02:00
Player.exploits = sanitizeExploits(Player.exploits);
}