UNPKG

mcraft-fun-mineflayer

Version:

Mineflayer viewer (connector) for mcraft.fun project and vanilla Minecraft client! Both TCP and WebSockets servers are supported.

45 lines (44 loc) 1.64 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createStateCaptureFile = exports.PACKETS_REPLAY_FILE_EXTENSION = exports.WORLD_STATE_FILE_EXTENSION = exports.WORLD_STATE_VERSION = void 0; const minecraft_protocol_1 = require("minecraft-protocol"); const packetsLogger_1 = require("./packetsLogger"); const events_1 = require("events"); exports.WORLD_STATE_VERSION = 1; exports.WORLD_STATE_FILE_EXTENSION = 'worldstate.txt'; exports.PACKETS_REPLAY_FILE_EXTENSION = 'packets.txt'; // todo rename const createStateCaptureFile = (bot, adjustPacketsLogger) => { const header = { formatVersion: exports.WORLD_STATE_VERSION, minecraftVersion: bot.version, }; const logger = new packetsLogger_1.PacketsLogger(header); adjustPacketsLogger?.(logger); logger.contents = `${JSON.stringify(header)}\n`; //@ts-ignore class FakeClient extends events_1.EventEmitter { id = 0; state = minecraft_protocol_1.states.PLAY; username = ''; socket = {}; writeChannel(channel, params) { logger.log(true, { name: 'writeChannel', state: 'play' }, { channel, params }); } write(name, params) { logger.log(true, { name, state: 'play' }, params); } registerChannel(name, typeDefinition, custom) { } chat() { } writeRaw(buffer) { throw new Error('Not implemented'); } supportFeature = bot.supportFeature; } return { client: new FakeClient(), logger }; }; exports.createStateCaptureFile = createStateCaptureFile;