mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2025-01-08 22:37:37 +01:00
Throw an error when trying to charge stanek booster fragments
This commit is contained in:
parent
b46718d188
commit
8a68633d9c
@ -5,6 +5,7 @@ import { netscriptDelay } from "../NetscriptEvaluator";
|
|||||||
|
|
||||||
import { staneksGift } from "../CotMG/Helper";
|
import { staneksGift } from "../CotMG/Helper";
|
||||||
import { Fragments, FragmentById } from "../CotMG/Fragment";
|
import { Fragments, FragmentById } from "../CotMG/Fragment";
|
||||||
|
import { FragmentType } from "../CotMG/FragmentType";
|
||||||
|
|
||||||
import {
|
import {
|
||||||
Fragment as IFragment,
|
Fragment as IFragment,
|
||||||
@ -42,11 +43,19 @@ export function NetscriptStanek(
|
|||||||
},
|
},
|
||||||
chargeFragment: (_ctx: NetscriptContext) =>
|
chargeFragment: (_ctx: NetscriptContext) =>
|
||||||
function (_rootX: unknown, _rootY: unknown): Promise<void> {
|
function (_rootX: unknown, _rootY: unknown): Promise<void> {
|
||||||
|
//Get the fragment object using the given coordinates
|
||||||
const rootX = _ctx.helper.number("rootX", _rootX);
|
const rootX = _ctx.helper.number("rootX", _rootX);
|
||||||
const rootY = _ctx.helper.number("rootY", _rootY);
|
const rootY = _ctx.helper.number("rootY", _rootY);
|
||||||
checkStanekAPIAccess("chargeFragment");
|
checkStanekAPIAccess("chargeFragment");
|
||||||
const fragment = staneksGift.findFragment(rootX, rootY);
|
const fragment = staneksGift.findFragment(rootX, rootY);
|
||||||
|
//Check whether the selected fragment can ge charged
|
||||||
if (!fragment) throw _ctx.makeRuntimeErrorMsg(`No fragment with root (${rootX}, ${rootY}).`);
|
if (!fragment) throw _ctx.makeRuntimeErrorMsg(`No fragment with root (${rootX}, ${rootY}).`);
|
||||||
|
if (fragment.fragment().type == FragmentType.Booster) {
|
||||||
|
throw _ctx.makeRuntimeErrorMsg(
|
||||||
|
`The fragment with root (${rootX}, ${rootY}) is a Booster Fragment and thus cannot be charged.`,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
//Charge the fragment
|
||||||
const time = staneksGift.inBonus() ? 200 : 1000;
|
const time = staneksGift.inBonus() ? 200 : 1000;
|
||||||
return netscriptDelay(time, workerScript).then(function () {
|
return netscriptDelay(time, workerScript).then(function () {
|
||||||
const charge = staneksGift.charge(player, fragment, workerScript.scriptRef.threads);
|
const charge = staneksGift.charge(player, fragment, workerScript.scriptRef.threads);
|
||||||
|
Loading…
Reference in New Issue
Block a user