bitburner-src/src/PersonObjects/Player/PlayerObjectWorkMethods.ts

23 lines
634 B
TypeScript
Raw Normal View History

2022-07-07 08:00:23 +02:00
import { Work } from "../../Work/Work";
import { IPlayer } from "../IPlayer";
export function start(this: IPlayer, w: Work): void {
if (this.currentWork !== null) {
2022-09-06 15:07:12 +02:00
this.currentWork.finish(true);
2022-07-07 08:00:23 +02:00
}
this.currentWork = w;
}
export function process(this: IPlayer, cycles = 1): void {
if (this.currentWork === null) return;
2022-09-06 15:07:12 +02:00
const finished = this.currentWork.process(cycles);
2022-07-07 08:00:23 +02:00
if (finished) {
2022-07-14 23:43:08 +02:00
this.finishWork(false);
2022-07-07 08:00:23 +02:00
}
}
export function finish(this: IPlayer, cancelled: boolean): void {
if (this.currentWork === null) return;
2022-09-06 15:07:12 +02:00
this.currentWork.finish(cancelled);
2022-07-07 08:00:23 +02:00
this.currentWork = null;
2022-07-22 00:27:23 +02:00
this.focus = false;
2022-07-07 08:00:23 +02:00
}