wip: Construct API

This commit is contained in:
ForestOfLight
2026-05-29 23:27:11 +02:00
Unverified
parent f750710732
commit 2b90020e37
25 changed files with 454 additions and 29 deletions
+13 -6
View File
@@ -1,29 +1,36 @@
import { world } from "@minecraft/server";
import { Builder } from "./Builder";
import { BuilderNotFoundError } from "../Errors/BuilderNotFoundError";
export class Builders {
static builders = {};
static add(playerId) {
if (this.builders[playerId])
if (Builders.builders[playerId])
return;
this.builders[playerId] = new Builder(playerId);
Builders.builders[playerId] = new Builder(playerId);
}
static remove(playerId) {
delete this.builders[playerId];
delete Builders.builders[playerId];
}
static get(id) {
return this.builders[id];
const builder = Builders.builders[id];
if (builder === void 0)
throw new BuilderNotFoundError(id);
}
static onJoin(playerId) {
this.add(playerId);
Builders.add(playerId);
}
static onLeave(playerId) {
this.remove(playerId);
Builders.remove(playerId);
}
static getIds() {
return Object.keys(Builders.builders);
}
}