bitburner-src/src/PersonObjects/Player/PlayerObjectWorkMethods.ts
Snarling e578bd7681 Remove IPlayer interface
Use PlayerObject instead when referring to the type of "The Player."
2022-09-27 15:35:41 -04:00

23 lines
670 B
TypeScript

import { Work } from "../../Work/Work";
import { PlayerObject } from "./PlayerObject";
export function startWork(this: PlayerObject, w: Work): void {
if (this.currentWork !== null) {
this.currentWork.finish(true);
}
this.currentWork = w;
}
export function processWork(this: PlayerObject, cycles = 1): void {
if (this.currentWork === null) return;
const finished = this.currentWork.process(cycles);
if (finished) {
this.finishWork(false);
}
}
export function finishWork(this: PlayerObject, cancelled: boolean): void {
if (this.currentWork === null) return;
this.currentWork.finish(cancelled);
this.currentWork = null;
this.focus = false;
}