UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

45 lines (42 loc) 3.86 kB
import fs from 'node:fs'; class BaseProvider { path; server; world; constructor(path, server) { this.server = server; this.path = path; if (!fs.existsSync(path)) { fs.mkdirSync(path); } } setWorld(world) { this.world = world; } getWorld() { return this.world; } /** * On enable hook. * @group Lifecycle */ async enable() { } /** * On disable hook. * @group Lifecycle */ async disable() { } getServer() { return this.server; } /** * Returns the path to the world folder. */ getPath() { return this.path; } } export { BaseProvider as default }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZVByb3ZpZGVyLmVzLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvd29ybGQvcHJvdmlkZXJzL0Jhc2VQcm92aWRlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEdlbmVyYXRvciwgV29ybGQgfSBmcm9tICcuLi8nO1xuaW1wb3J0IHR5cGUgeyBTZXJ2ZXIgfSBmcm9tICcuLi8uLi8nO1xuaW1wb3J0IHR5cGUgQ2h1bmsgZnJvbSAnLi4vY2h1bmsvQ2h1bmsnO1xuaW1wb3J0IHR5cGUgUHJvdmlkZXIgZnJvbSAnLi9Qcm92aWRlcic7XG5cbmltcG9ydCBmcyBmcm9tICdub2RlOmZzJztcblxuZXhwb3J0IGRlZmF1bHQgYWJzdHJhY3QgY2xhc3MgQmFzZVByb3ZpZGVyIGltcGxlbWVudHMgUHJvdmlkZXIge1xuICAgIHByb3RlY3RlZCBwYXRoOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIHNlcnZlcjogU2VydmVyO1xuICAgIHByb3RlY3RlZCB3b3JsZCE6IFdvcmxkO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHBhdGg6IHN0cmluZywgc2VydmVyOiBTZXJ2ZXIpIHtcbiAgICAgICAgdGhpcy5zZXJ2ZXIgPSBzZXJ2ZXI7XG4gICAgICAgIHRoaXMucGF0aCA9IHBhdGg7XG4gICAgICAgIGlmICghZnMuZXhpc3RzU3luYyhwYXRoKSkge1xuICAgICAgICAgICAgZnMubWtkaXJTeW5jKHBhdGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldFdvcmxkKHdvcmxkOiBXb3JsZCkge1xuICAgICAgICB0aGlzLndvcmxkID0gd29ybGQ7XG4gICAgfVxuICAgIHB1YmxpYyBnZXRXb3JsZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMud29ybGQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT24gZW5hYmxlIGhvb2suXG4gICAgICogQGdyb3VwIExpZmVjeWNsZVxuICAgICAqL1xuICAgIHB1YmxpYyBhc3luYyBlbmFibGUoKTogUHJvbWlzZTx2b2lkPiB7fVxuICAgIC8qKlxuICAgICAqIE9uIGRpc2FibGUgaG9vay5cbiAgICAgKiBAZ3JvdXAgTGlmZWN5Y2xlXG4gICAgICovXG4gICAgcHVibGljIGFzeW5jIGRpc2FibGUoKTogUHJvbWlzZTx2b2lkPiB7fVxuXG4gICAgcHVibGljIGdldFNlcnZlcigpOiBTZXJ2ZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2ZXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgcGF0aCB0byB0aGUgd29ybGQgZm9sZGVyLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRQYXRoKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnBhdGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIGNodW5rIGRlY29kZWQgZnJvbSB0aGUgcHJvdmlkZXIuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY3ggLSB0aGUgY2h1bmsgeCBjb29yZGluYXRlLlxuICAgICAqIEBwYXJhbSBjeiAtIHRoZSBjaHVuayB5IGNvb3JkaW5hdGUuXG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHJlYWRDaHVuayhjeDogbnVtYmVyLCBjejogbnVtYmVyLCBzZWVkOiBudW1iZXIsIGdlbmVyYXRvcjogR2VuZXJhdG9yLCBjb25maWc/OiBhbnkpOiBQcm9taXNlPENodW5rPjtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlcyBhIGNodW5rLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNodW5rIC0gdGhlIGNodW5rIGRhdGEuXG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHdyaXRlQ2h1bmsoY2h1bms6IENodW5rKTogUHJvbWlzZTx2b2lkPjtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQU9BLE1BQThCLFlBQWlDLENBQUE7QUFBQSxFQUNqRCxJQUFBO0FBQUEsRUFDQSxNQUFBO0FBQUEsRUFDQSxLQUFBO0FBQUEsRUFFSCxXQUFBLENBQVksTUFBYyxNQUFnQixFQUFBO0FBQzdDLElBQUEsSUFBQSxDQUFLLE1BQVMsR0FBQSxNQUFBO0FBQ2QsSUFBQSxJQUFBLENBQUssSUFBTyxHQUFBLElBQUE7QUFDWixJQUFBLElBQUksQ0FBQyxFQUFBLENBQUcsVUFBVyxDQUFBLElBQUksQ0FBRyxFQUFBO0FBQ3RCLE1BQUEsRUFBQSxDQUFHLFVBQVUsSUFBSSxDQUFBO0FBQUE7QUFDckI7QUFDSixFQUVPLFNBQVMsS0FBYyxFQUFBO0FBQzFCLElBQUEsSUFBQSxDQUFLLEtBQVEsR0FBQSxLQUFBO0FBQUE7QUFDakIsRUFDTyxRQUFXLEdBQUE7QUFDZCxJQUFBLE9BQU8sSUFBSyxDQUFBLEtBQUE7QUFBQTtBQUNoQjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsTUFBYSxNQUF3QixHQUFBO0FBQUE7QUFBQztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS3RDLE1BQWEsT0FBeUIsR0FBQTtBQUFBO0FBQUMsRUFFaEMsU0FBb0IsR0FBQTtBQUN2QixJQUFBLE9BQU8sSUFBSyxDQUFBLE1BQUE7QUFBQTtBQUNoQjtBQUFBO0FBQUE7QUFBQSxFQUtPLE9BQWtCLEdBQUE7QUFDckIsSUFBQSxPQUFPLElBQUssQ0FBQSxJQUFBO0FBQUE7QUFpQnBCOzs7OyJ9