UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

36 lines (32 loc) 3.53 kB
'use strict'; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } }); class SkinImage { width; height; data; constructor({ width, height, data }) { this.width = width; this.height = height; this.data = data; } // TODO: API networkSerialize(stream) { stream.writeUnsignedIntLE(this.width); stream.writeUnsignedIntLE(this.height); stream.writeUnsignedVarInt(this.data.length); stream.write(this.data); } static networkDeserialize(stream) { const width = stream.readUnsignedIntLE(); const height = stream.readUnsignedIntLE(); const length = stream.readUnsignedVarInt(); const data = stream.read(length); return new SkinImage({ width, height, data }); } } exports.default = SkinImage; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2tpbkltYWdlLmNqcy5janMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9za2luL1NraW5JbWFnZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSBCaW5hcnlTdHJlYW0gZnJvbSAnQGpzcHJpc21hcmluZS9qc2JpbmFyeXV0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2tpbkltYWdlIHtcbiAgICBwdWJsaWMgd2lkdGg6IG51bWJlcjtcbiAgICBwdWJsaWMgaGVpZ2h0OiBudW1iZXI7XG4gICAgcHVibGljIGRhdGE6IEJ1ZmZlcjtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcih7IHdpZHRoLCBoZWlnaHQsIGRhdGEgfTogeyB3aWR0aDogbnVtYmVyOyBoZWlnaHQ6IG51bWJlcjsgZGF0YTogQnVmZmVyIH0pIHtcbiAgICAgICAgdGhpcy53aWR0aCA9IHdpZHRoO1xuICAgICAgICB0aGlzLmhlaWdodCA9IGhlaWdodDtcbiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBBUElcblxuICAgIHB1YmxpYyBuZXR3b3JrU2VyaWFsaXplKHN0cmVhbTogQmluYXJ5U3RyZWFtKTogdm9pZCB7XG4gICAgICAgIHN0cmVhbS53cml0ZVVuc2lnbmVkSW50TEUodGhpcy53aWR0aCk7XG4gICAgICAgIHN0cmVhbS53cml0ZVVuc2lnbmVkSW50TEUodGhpcy5oZWlnaHQpO1xuICAgICAgICBzdHJlYW0ud3JpdGVVbnNpZ25lZFZhckludCh0aGlzLmRhdGEubGVuZ3RoKTtcbiAgICAgICAgc3RyZWFtLndyaXRlKHRoaXMuZGF0YSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBuZXR3b3JrRGVzZXJpYWxpemUoc3RyZWFtOiBCaW5hcnlTdHJlYW0pOiBTa2luSW1hZ2Uge1xuICAgICAgICBjb25zdCB3aWR0aCA9IHN0cmVhbS5yZWFkVW5zaWduZWRJbnRMRSgpO1xuICAgICAgICBjb25zdCBoZWlnaHQgPSBzdHJlYW0ucmVhZFVuc2lnbmVkSW50TEUoKTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gc3RyZWFtLnJlYWRVbnNpZ25lZFZhckludCgpO1xuICAgICAgICBjb25zdCBkYXRhID0gc3RyZWFtLnJlYWQobGVuZ3RoKTtcbiAgICAgICAgcmV0dXJuIG5ldyBTa2luSW1hZ2Uoe1xuICAgICAgICAgICAgd2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICBkYXRhXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBRUEsTUFBcUIsU0FBVSxDQUFBO0FBQUEsRUFDcEIsS0FBQTtBQUFBLEVBQ0EsTUFBQTtBQUFBLEVBQ0EsSUFBQTtBQUFBLEVBRUEsV0FBWSxDQUFBLEVBQUUsS0FBTyxFQUFBLE1BQUEsRUFBUSxNQUF5RCxFQUFBO0FBQ3pGLElBQUEsSUFBQSxDQUFLLEtBQVEsR0FBQSxLQUFBO0FBQ2IsSUFBQSxJQUFBLENBQUssTUFBUyxHQUFBLE1BQUE7QUFDZCxJQUFBLElBQUEsQ0FBSyxJQUFPLEdBQUEsSUFBQTtBQUFBO0FBQ2hCO0FBQUEsRUFJTyxpQkFBaUIsTUFBNEIsRUFBQTtBQUNoRCxJQUFPLE1BQUEsQ0FBQSxrQkFBQSxDQUFtQixLQUFLLEtBQUssQ0FBQTtBQUNwQyxJQUFPLE1BQUEsQ0FBQSxrQkFBQSxDQUFtQixLQUFLLE1BQU0sQ0FBQTtBQUNyQyxJQUFPLE1BQUEsQ0FBQSxtQkFBQSxDQUFvQixJQUFLLENBQUEsSUFBQSxDQUFLLE1BQU0sQ0FBQTtBQUMzQyxJQUFPLE1BQUEsQ0FBQSxLQUFBLENBQU0sS0FBSyxJQUFJLENBQUE7QUFBQTtBQUMxQixFQUVBLE9BQWMsbUJBQW1CLE1BQWlDLEVBQUE7QUFDOUQsSUFBTSxNQUFBLEtBQUEsR0FBUSxPQUFPLGlCQUFrQixFQUFBO0FBQ3ZDLElBQU0sTUFBQSxNQUFBLEdBQVMsT0FBTyxpQkFBa0IsRUFBQTtBQUN4QyxJQUFNLE1BQUEsTUFBQSxHQUFTLE9BQU8sa0JBQW1CLEVBQUE7QUFDekMsSUFBTSxNQUFBLElBQUEsR0FBTyxNQUFPLENBQUEsSUFBQSxDQUFLLE1BQU0sQ0FBQTtBQUMvQixJQUFBLE9BQU8sSUFBSSxTQUFVLENBQUE7QUFBQSxNQUNqQixLQUFBO0FBQUEsTUFDQSxNQUFBO0FBQUEsTUFDQTtBQUFBLEtBQ0gsQ0FBQTtBQUFBO0FBRVQ7Ozs7In0=