sync
This commit is contained in:
commit
75621704f5
25 changed files with 1229 additions and 0 deletions
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
node_modules/
|
||||
config.js
|
3
.jshintrc
Normal file
3
.jshintrc
Normal file
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"esversion": 9
|
||||
}
|
10
.vscode/settings.json
vendored
Normal file
10
.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"files.exclude": {
|
||||
"**/.git": true,
|
||||
"**/.svn": true,
|
||||
"**/.hg": true,
|
||||
"**/CVS": true,
|
||||
"**/.DS_Store": true,
|
||||
"**/node_modules": true
|
||||
}
|
||||
}
|
7
clientpackets/position.js
Normal file
7
clientpackets/position.js
Normal file
|
@ -0,0 +1,7 @@
|
|||
module.exports = function(vanillaclient, client, server, data) {
|
||||
client.position.x = data.x;
|
||||
client.position.y = data.y;
|
||||
client.position.z = data.z;
|
||||
client.position.yaw = data.yaw;
|
||||
client.position.pitch = data.pitch;
|
||||
};
|
6
clientpackets/world_particles.js
Normal file
6
clientpackets/world_particles.js
Normal file
|
@ -0,0 +1,6 @@
|
|||
module.exports = function(vanillaclient, client, server, data) {
|
||||
if(data.particles > 20) {
|
||||
data.particles = 20;
|
||||
return data;
|
||||
}
|
||||
};
|
3
commands/cb.js
Normal file
3
commands/cb.js
Normal file
|
@ -0,0 +1,3 @@
|
|||
module.exports.exec = function (vanillaclient, client, server, args) {
|
||||
client.utils.cmdBlock(client, args.join(" "));
|
||||
};
|
10
commands/eval.js
Normal file
10
commands/eval.js
Normal file
|
@ -0,0 +1,10 @@
|
|||
const util = require("util");
|
||||
module.exports.exec = function (vanillaclient, client, server, args) {
|
||||
try {
|
||||
/*jshint ignore:start*/
|
||||
vanillaclient.chat(util.inspect(eval(args.join(" "))))
|
||||
/*jshint ignore:end*/
|
||||
} catch (e) {
|
||||
vanillaclient.chat(`§4Error: ${e.toString().replace(/\n/g,"\n§4Error: ")}`);
|
||||
}
|
||||
};
|
20
commands/hval.js
Normal file
20
commands/hval.js
Normal file
|
@ -0,0 +1,20 @@
|
|||
const crypto = require("crypto");
|
||||
const config = require("../config.js");
|
||||
module.exports.exec = function(vanillaclient, client, server, args) {
|
||||
const sha256 = crypto.createHash("sha256");
|
||||
const command = args.join(" ");
|
||||
const time = Math.floor(+new Date() / 10000);
|
||||
let raw = command.replace(/&[0-9a-fklmnor]/g, "");
|
||||
raw += ";";
|
||||
raw += vanillaclient.username.replace(/§[0-9a-fklmnor]/g, "");
|
||||
raw += ";";
|
||||
raw += time;
|
||||
raw += ";";
|
||||
raw += config.proxy.keys.hbot;
|
||||
|
||||
sha256.update(raw);
|
||||
const hash = sha256.digest();
|
||||
const big_int = hash.slice(0, 4).readUInt32BE();
|
||||
|
||||
client.chat(`${command} ${big_int.toString(36)}`);
|
||||
};
|
19
commands/icustop.js
Normal file
19
commands/icustop.js
Normal file
|
@ -0,0 +1,19 @@
|
|||
const nmp = require("minecraft-protocol");
|
||||
const config = require("../config");
|
||||
const r = require("crypto").randomBytes;
|
||||
module.exports.exec = function (vanillaclient, client, server, args) {
|
||||
let tempC = nmp.createClient(Object.assign({ username: r(8).toString("hex") }, config.client));
|
||||
tempC.on("login", function () {
|
||||
tempC.write("chat", { message: '/setblock ~ ~ ~ command_block{Command:"sudo * icu stop",auto:1b}' });
|
||||
setTimeout(function () {
|
||||
client.chat("/v on");
|
||||
tempC.end();
|
||||
tempC.socket.end();
|
||||
tempC.socket.destroy();
|
||||
}, 1000);
|
||||
setTimeout(function () {
|
||||
tempC.socket = null;
|
||||
tempC = null;
|
||||
}, 2000);
|
||||
});
|
||||
};
|
29
commands/owo.js
Normal file
29
commands/owo.js
Normal file
|
@ -0,0 +1,29 @@
|
|||
const d = { "l": "w", "i": "wi", "ea": "ew", "ou": "ow", "ha": "a", "u": "uw", "ee": "eew", "mp": "wp", "mm": "mya", "an": "nya", "on": "nyon", "r": "w", "g": "gy" };
|
||||
|
||||
function owoifyText(v) {
|
||||
const words = v.split(" ");
|
||||
let output = "";
|
||||
|
||||
for (let index = 0; index < words.length; index++) {
|
||||
const element = words[index];
|
||||
if (!element.match(/(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g)) {
|
||||
// copyright owo dimden uwu uwu 2020
|
||||
let format_string = element;
|
||||
for (let i in d) {
|
||||
format_string = format_string.replace(new RegExp(i, "g"), d[i]);
|
||||
}
|
||||
// thanks dimden ur epic
|
||||
output += format_string + " ";
|
||||
} else {
|
||||
output += element + " ";
|
||||
}
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
module.exports.exec = function(vanillaclient, client, server, args) {
|
||||
let owo = owoifyText(args.join(" ").replace("--send ",""));
|
||||
if(args[0] === "--send") return client.chat(owo);
|
||||
vanillaclient.chat(owo);
|
||||
};
|
25
commands/reloadall.js
Normal file
25
commands/reloadall.js
Normal file
|
@ -0,0 +1,25 @@
|
|||
const fs = require("fs");
|
||||
module.exports.exec = function(vanillaclient, client, server, args) {
|
||||
|
||||
vanillaclient.chat("Reloading...");
|
||||
let start = new Date();
|
||||
|
||||
/* deinject all modules */
|
||||
for(let module of client.modules) {
|
||||
module.uninject(vanillaclient, client, server);
|
||||
}
|
||||
|
||||
/* clear cache */
|
||||
for(let path of Object.keys(require.cache)) {
|
||||
if(path.includes("node_modules") || !path.includes(".js")) continue;
|
||||
delete require.cache[path];
|
||||
}
|
||||
|
||||
/* inject all modules */
|
||||
client.modules = [];
|
||||
client.injectModules();
|
||||
|
||||
let end = new Date();
|
||||
|
||||
vanillaclient.chat(`Done! Took ${end - start}ms. Memory usage: ${process.memoryUsage().heapUsed/1000}KB`);
|
||||
};
|
3
commands/test.js
Normal file
3
commands/test.js
Normal file
|
@ -0,0 +1,3 @@
|
|||
module.exports.exec = function(vanillaclient, client, server, args) {
|
||||
vanillaclient.chat("§4test");
|
||||
};
|
18
index.js
Normal file
18
index.js
Normal file
|
@ -0,0 +1,18 @@
|
|||
const config = require("./config");
|
||||
const fs = require("fs");
|
||||
const server = require("minecraft-protocol").createServer(config.server);
|
||||
|
||||
server.on("login", function (vanillaclient) {
|
||||
let client = require("minecraft-protocol").createClient(Object.assign({ username: vanillaclient.username }, config.client));
|
||||
client.modules = [];
|
||||
client.position = {};
|
||||
client.injectModules = function() {
|
||||
fs.readdirSync("./modules").forEach(function(module_file) {
|
||||
const module = require(`./modules/${module_file}`);
|
||||
module.inject(vanillaclient, client, server);
|
||||
client.modules.push(module);
|
||||
});
|
||||
};
|
||||
|
||||
client.injectModules();
|
||||
});
|
1
launcher_accounts.json
Normal file
1
launcher_accounts.json
Normal file
|
@ -0,0 +1 @@
|
|||
{}
|
61
modules/antiicu.js
Normal file
61
modules/antiicu.js
Normal file
|
@ -0,0 +1,61 @@
|
|||
const nmp = require("minecraft-protocol");
|
||||
const config = require("../config");
|
||||
const r = require("crypto").randomBytes;
|
||||
function spawnBot(client) {
|
||||
let tempC = nmp.createClient(Object.assign({ username: r(8).toString("hex") }, config.client));
|
||||
tempC.on("login", function () {
|
||||
tempC.write("chat", { message: '/setblock ~ ~ ~ command_block{Command:"sudo * icu stop",auto:1b}' });
|
||||
setTimeout(function () {
|
||||
client.chat("/v on");
|
||||
tempC.end();
|
||||
tempC.socket.end();
|
||||
tempC.socket.destroy();
|
||||
}, 1000);
|
||||
setTimeout(function () {
|
||||
tempC.socket = null;
|
||||
tempC = null;
|
||||
}, 2000);
|
||||
});
|
||||
}
|
||||
|
||||
module.exports.inject = function (vanillaclient, client) {
|
||||
client.opStatus = true;
|
||||
client.entityId = 0;
|
||||
client.icuDetector = [0, 0];
|
||||
|
||||
client.on("login", function (packet) {
|
||||
client.entityId = packet.entityId;
|
||||
});
|
||||
|
||||
client.positionHandler = function (packet) {
|
||||
client.icuDetector[0] = packet.teleportId;
|
||||
};
|
||||
|
||||
client.on("position", client.positionHandler);
|
||||
|
||||
client.icuInterval = setInterval(function () {
|
||||
let difference = client.icuDetector[0] - client.icuDetector[1];
|
||||
client.icuDetector[1] = client.icuDetector[0];
|
||||
if (difference > 18 && difference <= 22) spawnBot(client);
|
||||
}, 1000);
|
||||
|
||||
client.opHandler = function (packet) {
|
||||
if (client.entityId !== packet.entityId) return;
|
||||
switch (packet.entityStatus) {
|
||||
case 24:
|
||||
client.chat("/op @s[type=player]");
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
client.on("entity_status", client.opHandler);
|
||||
};
|
||||
|
||||
module.exports.uninject = function (vanillaclient, client) {
|
||||
clearInterval(client.icuInterval);
|
||||
client.icuInterval = undefined;
|
||||
client.opStatus = undefined;
|
||||
client.icuDetector = undefined;
|
||||
client.off("position", client.positionHandler);
|
||||
client.off("entity_status", client.opHandler);
|
||||
};
|
29
modules/chat.js
Normal file
29
modules/chat.js
Normal file
|
@ -0,0 +1,29 @@
|
|||
module.exports.inject = function (vanillaclient, client) {
|
||||
client.chatQueue = [];
|
||||
client.chatInterval = setInterval(function () {
|
||||
if (client.chatQueue[0]) client.write("chat", { message: client.chatQueue[0] });
|
||||
client.chatQueue.shift();
|
||||
}, 400);
|
||||
client.chat = function () {
|
||||
let msg = [...arguments].join(" ");
|
||||
msg.match(/.{1,255}/g).forEach(function (cutMsg) {
|
||||
client.chatQueue.push(cutMsg);
|
||||
});
|
||||
};
|
||||
|
||||
vanillaclient.chat = function () {
|
||||
vanillaclient.write("chat", {
|
||||
message: JSON.stringify({ text: [...arguments].join(" ") }),
|
||||
position: 1,
|
||||
sender: "00000000-0000-0000-0000-000000000000"
|
||||
});
|
||||
};
|
||||
};
|
||||
|
||||
module.exports.uninject = function(vanillaclient, client) {
|
||||
vanillaclient.chat = undefined;
|
||||
client.chat = undefined;
|
||||
clearInterval(client.chatInterval);
|
||||
client.chatInterval = undefined;
|
||||
client.chatQueue = undefined;
|
||||
};
|
41
modules/joinCommands.js
Normal file
41
modules/joinCommands.js
Normal file
|
@ -0,0 +1,41 @@
|
|||
const config = require('../config');
|
||||
|
||||
|
||||
module.exports.inject = function (vanillaclient, client, server) {
|
||||
function vanish() {
|
||||
client.utils.cmdBlock(client, `essentials:vanish ${client.username} enable`,2);
|
||||
}
|
||||
|
||||
function god() {
|
||||
client.utils.cmdBlock(client, `essentials:god ${client.username} enable`,3);
|
||||
}
|
||||
|
||||
function commandspy() {
|
||||
client.chat(`/commandspy on`);
|
||||
}
|
||||
|
||||
function skin() {
|
||||
client.chat(`/extras:skin ${config.proxy.joinCommands.skin}`);
|
||||
}
|
||||
|
||||
function nick() {
|
||||
client.chat(`/nick ${config.proxy.joinCommands.nick}`);
|
||||
}
|
||||
|
||||
function prefix() {
|
||||
client.chat(`/extras:prefix ${config.proxy.joinCommands.prefix}`);
|
||||
}
|
||||
|
||||
client.on('login', function() {
|
||||
if(config.proxy.joinCommands.vanish) vanish();
|
||||
if(config.proxy.joinCommands.god) god();
|
||||
if(config.proxy.joinCommands.commandspy) commandspy();
|
||||
if(config.proxy.joinCommands.skin) skin();
|
||||
if(config.proxy.joinCommands.nick) nick();
|
||||
if(config.proxy.joinCommands.prefix) prefix();
|
||||
});
|
||||
};
|
||||
|
||||
module.exports.uninject = function (vanillaclient, client) {
|
||||
/* ... */
|
||||
};
|
63
modules/packetHandler.js
Normal file
63
modules/packetHandler.js
Normal file
|
@ -0,0 +1,63 @@
|
|||
const fs = require("fs");
|
||||
const bad = ["encrypt", "compress", "success", "keep_alive"];
|
||||
const vanillapackets = fs.readdirSync("./vanillapackets");
|
||||
const clientpackets = fs.readdirSync("./clientpackets");
|
||||
|
||||
|
||||
module.exports.inject = function (vanillaclient, client, server) {
|
||||
|
||||
if (client.handlePacket) client.off("packet", client.handlePacket);
|
||||
if (vanillaclient.handlePacket) vanillaclient.off("packet", vanillaclient.handlePacket);
|
||||
client.handlePacket = function (data, meta) {
|
||||
if (bad.includes(meta.name)) return;
|
||||
if (clientpackets.includes(`${meta.name}.js`)) {
|
||||
let m = require(`../clientpackets/${meta.name}.js`);
|
||||
let res = m(vanillaclient, client, server, data);
|
||||
switch (res) {
|
||||
case undefined: break;
|
||||
case "cancel": return;
|
||||
default:
|
||||
vanillaclient.write(meta.name, res);
|
||||
return;
|
||||
}
|
||||
}
|
||||
vanillaclient.write(meta.name, data);
|
||||
};
|
||||
|
||||
vanillaclient.handlePacket = function (data, meta) {
|
||||
if (bad.includes(meta.name)) return;
|
||||
if (vanillapackets.includes(`${meta.name}.js`)) {
|
||||
let m = require(`../vanillapackets/${meta.name}.js`);
|
||||
let res = m(vanillaclient, client, server, data);
|
||||
switch (res) {
|
||||
case undefined: break;
|
||||
case "cancel": return;
|
||||
default:
|
||||
vanillaclient.write(meta.name, res);
|
||||
return;
|
||||
}
|
||||
}
|
||||
client.write(meta.name, data);
|
||||
};
|
||||
|
||||
|
||||
client.on("packet", client.handlePacket);
|
||||
vanillaclient.on("packet", vanillaclient.handlePacket);
|
||||
};
|
||||
|
||||
module.exports.uninject = function (vanillaclient, client) {
|
||||
if (client.handlePacket) client.off("packet", client.handlePacket);
|
||||
if (vanillaclient.handlePacket) vanillaclient.off("packet", vanillaclient.handlePacket);
|
||||
|
||||
client.handlePacket = function (data, meta) {
|
||||
if (bad.includes(meta.name)) return;
|
||||
vanillaclient.write(meta.name, data);
|
||||
}; // probably want to still send packets
|
||||
vanillaclient.handlePacket = function (data, meta) {
|
||||
if (bad.includes(meta.name)) return;
|
||||
client.write(meta.name, data);
|
||||
}; // probably want to still send packets
|
||||
|
||||
client.on("packet", client.handlePacket);
|
||||
vanillaclient.on("packet", vanillaclient.handlePacket);
|
||||
};
|
41
modules/utils.js
Normal file
41
modules/utils.js
Normal file
|
@ -0,0 +1,41 @@
|
|||
function cmdBlock(client, cmd, depth=4) {
|
||||
client.write("block_dig", { status: 0, location: { x: Math.floor(client.position.x), y: client.position.y - depth, z: Math.floor(client.position.z) }, face: 1 });
|
||||
client.write("held_item_slot", { slotId: 0 });
|
||||
client.write("set_creative_slot", {
|
||||
slot: 36,
|
||||
item: {
|
||||
present: true,
|
||||
itemId: 422,
|
||||
itemCount: 64,
|
||||
nbtData: undefined
|
||||
}
|
||||
});
|
||||
setTimeout(function () {
|
||||
client.write("block_place", {
|
||||
hand: 0,
|
||||
location: { x: Math.floor(client.position.x), y: client.position.y - depth, z: Math.floor(client.position.z) },
|
||||
direction: 1,
|
||||
cursorX: 0,
|
||||
cursorY: 0,
|
||||
cursorZ: 0,
|
||||
insideBlock: false
|
||||
});
|
||||
}, 50);
|
||||
setTimeout(function () {
|
||||
client.write("update_command_block", {
|
||||
"location": { x: Math.floor(client.position.x), y: client.position.y - depth, z: Math.floor(client.position.z) },
|
||||
"command": cmd,
|
||||
"mode": 0x01,
|
||||
"flags": 0x04
|
||||
});
|
||||
}, 100);
|
||||
}
|
||||
module.exports.inject = function (vanillaclient, client) {
|
||||
client.utils = {};
|
||||
client.utils.cmdBlock = cmdBlock;
|
||||
};
|
||||
|
||||
module.exports.uninject = function (vanillaclient, client) {
|
||||
client.utils = undefined;
|
||||
vanillaclient.utils = undefined;
|
||||
};
|
803
package-lock.json
generated
Normal file
803
package-lock.json
generated
Normal file
|
@ -0,0 +1,803 @@
|
|||
{
|
||||
"name": "kaboomproxy-v2",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"dependencies": {
|
||||
"minecraft-protocol": "^1.25.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/msal-common": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-4.3.0.tgz",
|
||||
"integrity": "sha512-jFqUWe83wVb6O8cNGGBFg2QlKvqM1ezUgJTEV7kIsAPX0RXhGFE4B1DLNt6hCnkTXDbw+KGW0zgxOEr4MJQwLw==",
|
||||
"dependencies": {
|
||||
"debug": "^4.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.8.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/msal-node": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.1.0.tgz",
|
||||
"integrity": "sha512-gMO9aZdWOzufp1PcdD5ID25DdS9eInxgeCqx4Tk8PVU6Z7RxJQhoMzS64cJhGdpYgeIQwKljtF0CLCcPFxew/w==",
|
||||
"dependencies": {
|
||||
"@azure/msal-common": "^4.3.0",
|
||||
"axios": "^0.21.1",
|
||||
"jsonwebtoken": "^8.5.1",
|
||||
"uuid": "^8.3.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "10 || 12 || 14 || 16"
|
||||
}
|
||||
},
|
||||
"node_modules/@xboxreplay/errors": {
|
||||
"version": "0.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@xboxreplay/errors/-/errors-0.1.0.tgz",
|
||||
"integrity": "sha512-Tgz1d/OIPDWPeyOvuL5+aai5VCcqObhPnlI3skQuf80GVF3k1I0lPCnGC+8Cm5PV9aLBT5m8qPcJoIUQ2U4y9g=="
|
||||
},
|
||||
"node_modules/@xboxreplay/xboxlive-auth": {
|
||||
"version": "3.3.3",
|
||||
"resolved": "https://registry.npmjs.org/@xboxreplay/xboxlive-auth/-/xboxlive-auth-3.3.3.tgz",
|
||||
"integrity": "sha512-j0AU8pW10LM8O68CTZ5QHnvOjSsnPICy0oQcP7zyM7eWkDQ/InkiQiirQKsPn1XRYDl4ccNu0WM582s3UKwcBg==",
|
||||
"dependencies": {
|
||||
"@xboxreplay/errors": "^0.1.0",
|
||||
"axios": "^0.21.1"
|
||||
}
|
||||
},
|
||||
"node_modules/aes-js": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.1.2.tgz",
|
||||
"integrity": "sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ=="
|
||||
},
|
||||
"node_modules/ajv": {
|
||||
"version": "6.12.6",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
|
||||
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
|
||||
"dependencies": {
|
||||
"fast-deep-equal": "^3.1.1",
|
||||
"fast-json-stable-stringify": "^2.0.0",
|
||||
"json-schema-traverse": "^0.4.1",
|
||||
"uri-js": "^4.2.2"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/epoberezkin"
|
||||
}
|
||||
},
|
||||
"node_modules/asn1": {
|
||||
"version": "0.2.3",
|
||||
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
|
||||
"integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y="
|
||||
},
|
||||
"node_modules/axios": {
|
||||
"version": "0.21.1",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
|
||||
"integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
|
||||
"dependencies": {
|
||||
"follow-redirects": "^1.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/buffer-equal": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz",
|
||||
"integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=",
|
||||
"engines": {
|
||||
"node": ">=0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/buffer-equal-constant-time": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
|
||||
"integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk="
|
||||
},
|
||||
"node_modules/debug": {
|
||||
"version": "4.3.1",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
|
||||
"integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
|
||||
"dependencies": {
|
||||
"ms": "2.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"supports-color": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/ecdsa-sig-formatter": {
|
||||
"version": "1.0.11",
|
||||
"resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
|
||||
"integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
|
||||
"dependencies": {
|
||||
"safe-buffer": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/endian-toggle": {
|
||||
"version": "0.0.0",
|
||||
"resolved": "https://registry.npmjs.org/endian-toggle/-/endian-toggle-0.0.0.tgz",
|
||||
"integrity": "sha1-5cx1eLEDLW7gHq/Nc3ZdsNtNwKY="
|
||||
},
|
||||
"node_modules/fast-deep-equal": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
|
||||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
|
||||
},
|
||||
"node_modules/fast-json-stable-stringify": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
|
||||
"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
|
||||
},
|
||||
"node_modules/follow-redirects": {
|
||||
"version": "1.14.1",
|
||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz",
|
||||
"integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "individual",
|
||||
"url": "https://github.com/sponsors/RubenVerborgh"
|
||||
}
|
||||
],
|
||||
"engines": {
|
||||
"node": ">=4.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"debug": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"node_modules/json-schema-traverse": {
|
||||
"version": "0.4.1",
|
||||
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
|
||||
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
|
||||
},
|
||||
"node_modules/jsonwebtoken": {
|
||||
"version": "8.5.1",
|
||||
"resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz",
|
||||
"integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==",
|
||||
"dependencies": {
|
||||
"jws": "^3.2.2",
|
||||
"lodash.includes": "^4.3.0",
|
||||
"lodash.isboolean": "^3.0.3",
|
||||
"lodash.isinteger": "^4.0.4",
|
||||
"lodash.isnumber": "^3.0.3",
|
||||
"lodash.isplainobject": "^4.0.6",
|
||||
"lodash.isstring": "^4.0.1",
|
||||
"lodash.once": "^4.0.0",
|
||||
"ms": "^2.1.1",
|
||||
"semver": "^5.6.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4",
|
||||
"npm": ">=1.4.28"
|
||||
}
|
||||
},
|
||||
"node_modules/jwa": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz",
|
||||
"integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==",
|
||||
"dependencies": {
|
||||
"buffer-equal-constant-time": "1.0.1",
|
||||
"ecdsa-sig-formatter": "1.0.11",
|
||||
"safe-buffer": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/jws": {
|
||||
"version": "3.2.2",
|
||||
"resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz",
|
||||
"integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==",
|
||||
"dependencies": {
|
||||
"jwa": "^1.4.1",
|
||||
"safe-buffer": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/lodash.get": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
|
||||
"integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk="
|
||||
},
|
||||
"node_modules/lodash.includes": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz",
|
||||
"integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8="
|
||||
},
|
||||
"node_modules/lodash.isboolean": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz",
|
||||
"integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY="
|
||||
},
|
||||
"node_modules/lodash.isinteger": {
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz",
|
||||
"integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M="
|
||||
},
|
||||
"node_modules/lodash.isnumber": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz",
|
||||
"integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w="
|
||||
},
|
||||
"node_modules/lodash.isplainobject": {
|
||||
"version": "4.0.6",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
|
||||
"integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs="
|
||||
},
|
||||
"node_modules/lodash.isstring": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
|
||||
"integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE="
|
||||
},
|
||||
"node_modules/lodash.merge": {
|
||||
"version": "4.6.2",
|
||||
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
|
||||
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
|
||||
},
|
||||
"node_modules/lodash.once": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz",
|
||||
"integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w="
|
||||
},
|
||||
"node_modules/lodash.reduce": {
|
||||
"version": "4.6.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz",
|
||||
"integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs="
|
||||
},
|
||||
"node_modules/macaddress": {
|
||||
"version": "0.5.2",
|
||||
"resolved": "https://registry.npmjs.org/macaddress/-/macaddress-0.5.2.tgz",
|
||||
"integrity": "sha512-cYYBbT3b84hTEHssWE6OmsuqF/NiLXE2RGK9Sc9SwwE9kMoKrbaUAJtKs6ucd0FFgZjXE1Wm3hoGEEYas0N6EA=="
|
||||
},
|
||||
"node_modules/minecraft-data": {
|
||||
"version": "2.84.0",
|
||||
"resolved": "https://registry.npmjs.org/minecraft-data/-/minecraft-data-2.84.0.tgz",
|
||||
"integrity": "sha512-3l8wZ62xlxclAG76r+ZUca/EfFBHeHI1o0z2Jc3Eu2DPF8lMgsAjOAWx9dVRK/s268XYOeoLdddvs0usJdeslg=="
|
||||
},
|
||||
"node_modules/minecraft-folder-path": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/minecraft-folder-path/-/minecraft-folder-path-1.2.0.tgz",
|
||||
"integrity": "sha512-qaUSbKWoOsH9brn0JQuBhxNAzTDMwrOXorwuRxdJKKKDYvZhtml+6GVCUrY5HRiEsieBEjCUnhVpDuQiKsiFaw=="
|
||||
},
|
||||
"node_modules/minecraft-protocol": {
|
||||
"version": "1.25.0",
|
||||
"resolved": "https://registry.npmjs.org/minecraft-protocol/-/minecraft-protocol-1.25.0.tgz",
|
||||
"integrity": "sha512-xAyjw03t/sKv7xBk4AxZnLMv5G/cJuXExAMtpK1lxZ5ILHfJObtz9m12tc1eiR7nXkoBgyUQptTZX81OWXyFtQ==",
|
||||
"dependencies": {
|
||||
"@azure/msal-node": "^1.0.0-beta.3",
|
||||
"@xboxreplay/xboxlive-auth": "^3.3.3",
|
||||
"aes-js": "^3.1.2",
|
||||
"buffer-equal": "^1.0.0",
|
||||
"debug": "^4.1.0",
|
||||
"endian-toggle": "^0.0.0",
|
||||
"lodash.get": "^4.1.2",
|
||||
"lodash.merge": "^4.3.0",
|
||||
"minecraft-data": "^2.70.0",
|
||||
"minecraft-folder-path": "^1.1.0",
|
||||
"node-fetch": "^2.6.1",
|
||||
"node-rsa": "^0.4.2",
|
||||
"prismarine-nbt": "^1.3.0",
|
||||
"protodef": "^1.8.0",
|
||||
"readable-stream": "^3.0.6",
|
||||
"uuid-1345": "^1.0.1",
|
||||
"yggdrasil": "^1.4.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/ms": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
|
||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
||||
},
|
||||
"node_modules/node-fetch": {
|
||||
"version": "2.6.1",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
|
||||
"integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==",
|
||||
"engines": {
|
||||
"node": "4.x || >=6.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/node-rsa": {
|
||||
"version": "0.4.2",
|
||||
"resolved": "https://registry.npmjs.org/node-rsa/-/node-rsa-0.4.2.tgz",
|
||||
"integrity": "sha1-1jkXKewWqDDtWjgEKzFX0tXXJTA=",
|
||||
"dependencies": {
|
||||
"asn1": "0.2.3"
|
||||
}
|
||||
},
|
||||
"node_modules/prismarine-nbt": {
|
||||
"version": "1.5.0",
|
||||
"resolved": "https://registry.npmjs.org/prismarine-nbt/-/prismarine-nbt-1.5.0.tgz",
|
||||
"integrity": "sha512-8vs0MV94kl6I2YUFE5IG4vOBYEw8nG0J0WaoLV6zP1smle5o6haeHqobn07vmcHJZ8iUz2f8oq6T3Y71DHvYpA==",
|
||||
"dependencies": {
|
||||
"protodef": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/protodef": {
|
||||
"version": "1.14.0",
|
||||
"resolved": "https://registry.npmjs.org/protodef/-/protodef-1.14.0.tgz",
|
||||
"integrity": "sha512-rL1WRlBC8LbAgBTa401eHMqnkX6zy1pHgS4kTSJVJ8rwP/AgVuWijGE3S3XHRkRjB/+4U1jMTqRdmtGdIqVOKQ==",
|
||||
"dependencies": {
|
||||
"lodash.get": "^4.4.2",
|
||||
"lodash.reduce": "^4.6.0",
|
||||
"protodef-validator": "^1.3.0",
|
||||
"readable-stream": "^3.0.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/protodef-validator": {
|
||||
"version": "1.3.1",
|
||||
"resolved": "https://registry.npmjs.org/protodef-validator/-/protodef-validator-1.3.1.tgz",
|
||||
"integrity": "sha512-lZ5FWKZYR9xOjpMw1+EfZRfCjzNRQWPq+Dk+jki47Sikl2EeWEPnTfnJERwnU/EwFq6us+0zqHHzSsmLeYX+Lg==",
|
||||
"dependencies": {
|
||||
"ajv": "^6.5.4"
|
||||
},
|
||||
"bin": {
|
||||
"protodef-validator": "cli.js"
|
||||
}
|
||||
},
|
||||
"node_modules/punycode": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
|
||||
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/readable-stream": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
|
||||
"integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
|
||||
"dependencies": {
|
||||
"inherits": "^2.0.3",
|
||||
"string_decoder": "^1.1.1",
|
||||
"util-deprecate": "^1.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/safe-buffer": {
|
||||
"version": "5.2.1",
|
||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
|
||||
"integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
]
|
||||
},
|
||||
"node_modules/semver": {
|
||||
"version": "5.7.1",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
|
||||
"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
|
||||
"bin": {
|
||||
"semver": "bin/semver"
|
||||
}
|
||||
},
|
||||
"node_modules/string_decoder": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
|
||||
"integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
|
||||
"dependencies": {
|
||||
"safe-buffer": "~5.2.0"
|
||||
}
|
||||
},
|
||||
"node_modules/uri-js": {
|
||||
"version": "4.4.1",
|
||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
|
||||
"dependencies": {
|
||||
"punycode": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/util-deprecate": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
|
||||
},
|
||||
"node_modules/uuid": {
|
||||
"version": "8.3.2",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
|
||||
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
|
||||
"bin": {
|
||||
"uuid": "dist/bin/uuid"
|
||||
}
|
||||
},
|
||||
"node_modules/uuid-1345": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/uuid-1345/-/uuid-1345-1.0.2.tgz",
|
||||
"integrity": "sha512-bA5zYZui+3nwAc0s3VdGQGBfbVsJLVX7Np7ch2aqcEWFi5lsAEcmO3+lx3djM1npgpZI8KY2FITZ2uYTnYUYyw==",
|
||||
"dependencies": {
|
||||
"macaddress": "^0.5.1"
|
||||
}
|
||||
},
|
||||
"node_modules/yggdrasil": {
|
||||
"version": "1.6.0",
|
||||
"resolved": "https://registry.npmjs.org/yggdrasil/-/yggdrasil-1.6.0.tgz",
|
||||
"integrity": "sha512-cV/NoXlHModwS+Bp1H1z7HA+tVwSJ3f91y8udULx9VqVAFYcyHElbLSla8xfy8PKmyMGKJnN2q04MvbQEwOwqw==",
|
||||
"dependencies": {
|
||||
"node-fetch": "^2.6.1",
|
||||
"uuid": "^8.2.0"
|
||||
}
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"@azure/msal-common": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-4.3.0.tgz",
|
||||
"integrity": "sha512-jFqUWe83wVb6O8cNGGBFg2QlKvqM1ezUgJTEV7kIsAPX0RXhGFE4B1DLNt6hCnkTXDbw+KGW0zgxOEr4MJQwLw==",
|
||||
"requires": {
|
||||
"debug": "^4.1.1"
|
||||
}
|
||||
},
|
||||
"@azure/msal-node": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.1.0.tgz",
|
||||
"integrity": "sha512-gMO9aZdWOzufp1PcdD5ID25DdS9eInxgeCqx4Tk8PVU6Z7RxJQhoMzS64cJhGdpYgeIQwKljtF0CLCcPFxew/w==",
|
||||
"requires": {
|
||||
"@azure/msal-common": "^4.3.0",
|
||||
"axios": "^0.21.1",
|
||||
"jsonwebtoken": "^8.5.1",
|
||||
"uuid": "^8.3.0"
|
||||
}
|
||||
},
|
||||
"@xboxreplay/errors": {
|
||||
"version": "0.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@xboxreplay/errors/-/errors-0.1.0.tgz",
|
||||
"integrity": "sha512-Tgz1d/OIPDWPeyOvuL5+aai5VCcqObhPnlI3skQuf80GVF3k1I0lPCnGC+8Cm5PV9aLBT5m8qPcJoIUQ2U4y9g=="
|
||||
},
|
||||
"@xboxreplay/xboxlive-auth": {
|
||||
"version": "3.3.3",
|
||||
"resolved": "https://registry.npmjs.org/@xboxreplay/xboxlive-auth/-/xboxlive-auth-3.3.3.tgz",
|
||||
"integrity": "sha512-j0AU8pW10LM8O68CTZ5QHnvOjSsnPICy0oQcP7zyM7eWkDQ/InkiQiirQKsPn1XRYDl4ccNu0WM582s3UKwcBg==",
|
||||
"requires": {
|
||||
"@xboxreplay/errors": "^0.1.0",
|
||||
"axios": "^0.21.1"
|
||||
}
|
||||
},
|
||||
"aes-js": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.1.2.tgz",
|
||||
"integrity": "sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ=="
|
||||
},
|
||||
"ajv": {
|
||||
"version": "6.12.6",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
|
||||
"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
|
||||
"requires": {
|
||||
"fast-deep-equal": "^3.1.1",
|
||||
"fast-json-stable-stringify": "^2.0.0",
|
||||
"json-schema-traverse": "^0.4.1",
|
||||
"uri-js": "^4.2.2"
|
||||
}
|
||||
},
|
||||
"asn1": {
|
||||
"version": "0.2.3",
|
||||
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
|
||||
"integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y="
|
||||
},
|
||||
"axios": {
|
||||
"version": "0.21.1",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
|
||||
"integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
|
||||
"requires": {
|
||||
"follow-redirects": "^1.10.0"
|
||||
}
|
||||
},
|
||||
"buffer-equal": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz",
|
||||
"integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74="
|
||||
},
|
||||
"buffer-equal-constant-time": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
|
||||
"integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk="
|
||||
},
|
||||
"debug": {
|
||||
"version": "4.3.1",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
|
||||
"integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
|
||||
"requires": {
|
||||
"ms": "2.1.2"
|
||||
}
|
||||
},
|
||||
"ecdsa-sig-formatter": {
|
||||
"version": "1.0.11",
|
||||
"resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
|
||||
"integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
|
||||
"requires": {
|
||||
"safe-buffer": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"endian-toggle": {
|
||||
"version": "0.0.0",
|
||||
"resolved": "https://registry.npmjs.org/endian-toggle/-/endian-toggle-0.0.0.tgz",
|
||||
"integrity": "sha1-5cx1eLEDLW7gHq/Nc3ZdsNtNwKY="
|
||||
},
|
||||
"fast-deep-equal": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
|
||||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
|
||||
},
|
||||
"fast-json-stable-stringify": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
|
||||
"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
|
||||
},
|
||||
"follow-redirects": {
|
||||
"version": "1.14.1",
|
||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz",
|
||||
"integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg=="
|
||||
},
|
||||
"inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"json-schema-traverse": {
|
||||
"version": "0.4.1",
|
||||
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
|
||||
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
|
||||
},
|
||||
"jsonwebtoken": {
|
||||
"version": "8.5.1",
|
||||
"resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz",
|
||||
"integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==",
|
||||
"requires": {
|
||||
"jws": "^3.2.2",
|
||||
"lodash.includes": "^4.3.0",
|
||||
"lodash.isboolean": "^3.0.3",
|
||||
"lodash.isinteger": "^4.0.4",
|
||||
"lodash.isnumber": "^3.0.3",
|
||||
"lodash.isplainobject": "^4.0.6",
|
||||
"lodash.isstring": "^4.0.1",
|
||||
"lodash.once": "^4.0.0",
|
||||
"ms": "^2.1.1",
|
||||
"semver": "^5.6.0"
|
||||
}
|
||||
},
|
||||
"jwa": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz",
|
||||
"integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==",
|
||||
"requires": {
|
||||
"buffer-equal-constant-time": "1.0.1",
|
||||
"ecdsa-sig-formatter": "1.0.11",
|
||||
"safe-buffer": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"jws": {
|
||||
"version": "3.2.2",
|
||||
"resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz",
|
||||
"integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==",
|
||||
"requires": {
|
||||
"jwa": "^1.4.1",
|
||||
"safe-buffer": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"lodash.get": {
|
||||
"version": "4.4.2",
|
||||
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
|
||||
"integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk="
|
||||
},
|
||||
"lodash.includes": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz",
|
||||
"integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8="
|
||||
},
|
||||
"lodash.isboolean": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz",
|
||||
"integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY="
|
||||
},
|
||||
"lodash.isinteger": {
|
||||
"version": "4.0.4",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz",
|
||||
"integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M="
|
||||
},
|
||||
"lodash.isnumber": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz",
|
||||
"integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w="
|
||||
},
|
||||
"lodash.isplainobject": {
|
||||
"version": "4.0.6",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
|
||||
"integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs="
|
||||
},
|
||||
"lodash.isstring": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
|
||||
"integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE="
|
||||
},
|
||||
"lodash.merge": {
|
||||
"version": "4.6.2",
|
||||
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
|
||||
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
|
||||
},
|
||||
"lodash.once": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz",
|
||||
"integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w="
|
||||
},
|
||||
"lodash.reduce": {
|
||||
"version": "4.6.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz",
|
||||
"integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs="
|
||||
},
|
||||
"macaddress": {
|
||||
"version": "0.5.2",
|
||||
"resolved": "https://registry.npmjs.org/macaddress/-/macaddress-0.5.2.tgz",
|
||||
"integrity": "sha512-cYYBbT3b84hTEHssWE6OmsuqF/NiLXE2RGK9Sc9SwwE9kMoKrbaUAJtKs6ucd0FFgZjXE1Wm3hoGEEYas0N6EA=="
|
||||
},
|
||||
"minecraft-data": {
|
||||
"version": "2.84.0",
|
||||
"resolved": "https://registry.npmjs.org/minecraft-data/-/minecraft-data-2.84.0.tgz",
|
||||
"integrity": "sha512-3l8wZ62xlxclAG76r+ZUca/EfFBHeHI1o0z2Jc3Eu2DPF8lMgsAjOAWx9dVRK/s268XYOeoLdddvs0usJdeslg=="
|
||||
},
|
||||
"minecraft-folder-path": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/minecraft-folder-path/-/minecraft-folder-path-1.2.0.tgz",
|
||||
"integrity": "sha512-qaUSbKWoOsH9brn0JQuBhxNAzTDMwrOXorwuRxdJKKKDYvZhtml+6GVCUrY5HRiEsieBEjCUnhVpDuQiKsiFaw=="
|
||||
},
|
||||
"minecraft-protocol": {
|
||||
"version": "1.25.0",
|
||||
"resolved": "https://registry.npmjs.org/minecraft-protocol/-/minecraft-protocol-1.25.0.tgz",
|
||||
"integrity": "sha512-xAyjw03t/sKv7xBk4AxZnLMv5G/cJuXExAMtpK1lxZ5ILHfJObtz9m12tc1eiR7nXkoBgyUQptTZX81OWXyFtQ==",
|
||||
"requires": {
|
||||
"@azure/msal-node": "^1.0.0-beta.3",
|
||||
"@xboxreplay/xboxlive-auth": "^3.3.3",
|
||||
"aes-js": "^3.1.2",
|
||||
"buffer-equal": "^1.0.0",
|
||||
"debug": "^4.1.0",
|
||||
"endian-toggle": "^0.0.0",
|
||||
"lodash.get": "^4.1.2",
|
||||
"lodash.merge": "^4.3.0",
|
||||
"minecraft-data": "^2.70.0",
|
||||
"minecraft-folder-path": "^1.1.0",
|
||||
"node-fetch": "^2.6.1",
|
||||
"node-rsa": "^0.4.2",
|
||||
"prismarine-nbt": "^1.3.0",
|
||||
"protodef": "^1.8.0",
|
||||
"readable-stream": "^3.0.6",
|
||||
"uuid-1345": "^1.0.1",
|
||||
"yggdrasil": "^1.4.0"
|
||||
}
|
||||
},
|
||||
"ms": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
|
||||
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
||||
},
|
||||
"node-fetch": {
|
||||
"version": "2.6.1",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
|
||||
"integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw=="
|
||||
},
|
||||
"node-rsa": {
|
||||
"version": "0.4.2",
|
||||
"resolved": "https://registry.npmjs.org/node-rsa/-/node-rsa-0.4.2.tgz",
|
||||
"integrity": "sha1-1jkXKewWqDDtWjgEKzFX0tXXJTA=",
|
||||
"requires": {
|
||||
"asn1": "0.2.3"
|
||||
}
|
||||
},
|
||||
"prismarine-nbt": {
|
||||
"version": "1.5.0",
|
||||
"resolved": "https://registry.npmjs.org/prismarine-nbt/-/prismarine-nbt-1.5.0.tgz",
|
||||
"integrity": "sha512-8vs0MV94kl6I2YUFE5IG4vOBYEw8nG0J0WaoLV6zP1smle5o6haeHqobn07vmcHJZ8iUz2f8oq6T3Y71DHvYpA==",
|
||||
"requires": {
|
||||
"protodef": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"protodef": {
|
||||
"version": "1.14.0",
|
||||
"resolved": "https://registry.npmjs.org/protodef/-/protodef-1.14.0.tgz",
|
||||
"integrity": "sha512-rL1WRlBC8LbAgBTa401eHMqnkX6zy1pHgS4kTSJVJ8rwP/AgVuWijGE3S3XHRkRjB/+4U1jMTqRdmtGdIqVOKQ==",
|
||||
"requires": {
|
||||
"lodash.get": "^4.4.2",
|
||||
"lodash.reduce": "^4.6.0",
|
||||
"protodef-validator": "^1.3.0",
|
||||
"readable-stream": "^3.0.3"
|
||||
}
|
||||
},
|
||||
"protodef-validator": {
|
||||
"version": "1.3.1",
|
||||
"resolved": "https://registry.npmjs.org/protodef-validator/-/protodef-validator-1.3.1.tgz",
|
||||
"integrity": "sha512-lZ5FWKZYR9xOjpMw1+EfZRfCjzNRQWPq+Dk+jki47Sikl2EeWEPnTfnJERwnU/EwFq6us+0zqHHzSsmLeYX+Lg==",
|
||||
"requires": {
|
||||
"ajv": "^6.5.4"
|
||||
}
|
||||
},
|
||||
"punycode": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
|
||||
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
|
||||
},
|
||||
"readable-stream": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
|
||||
"integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
|
||||
"requires": {
|
||||
"inherits": "^2.0.3",
|
||||
"string_decoder": "^1.1.1",
|
||||
"util-deprecate": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"safe-buffer": {
|
||||
"version": "5.2.1",
|
||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
|
||||
"integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
|
||||
},
|
||||
"semver": {
|
||||
"version": "5.7.1",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
|
||||
"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
|
||||
"integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
|
||||
"requires": {
|
||||
"safe-buffer": "~5.2.0"
|
||||
}
|
||||
},
|
||||
"uri-js": {
|
||||
"version": "4.4.1",
|
||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
|
||||
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
|
||||
"requires": {
|
||||
"punycode": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"util-deprecate": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
|
||||
},
|
||||
"uuid": {
|
||||
"version": "8.3.2",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
|
||||
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
|
||||
},
|
||||
"uuid-1345": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/uuid-1345/-/uuid-1345-1.0.2.tgz",
|
||||
"integrity": "sha512-bA5zYZui+3nwAc0s3VdGQGBfbVsJLVX7Np7ch2aqcEWFi5lsAEcmO3+lx3djM1npgpZI8KY2FITZ2uYTnYUYyw==",
|
||||
"requires": {
|
||||
"macaddress": "^0.5.1"
|
||||
}
|
||||
},
|
||||
"yggdrasil": {
|
||||
"version": "1.6.0",
|
||||
"resolved": "https://registry.npmjs.org/yggdrasil/-/yggdrasil-1.6.0.tgz",
|
||||
"integrity": "sha512-cV/NoXlHModwS+Bp1H1z7HA+tVwSJ3f91y8udULx9VqVAFYcyHElbLSla8xfy8PKmyMGKJnN2q04MvbQEwOwqw==",
|
||||
"requires": {
|
||||
"node-fetch": "^2.6.1",
|
||||
"uuid": "^8.2.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
5
package.json
Normal file
5
package.json
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"dependencies": {
|
||||
"minecraft-protocol": "^1.25.0"
|
||||
}
|
||||
}
|
14
vanillapackets/chat.js
Normal file
14
vanillapackets/chat.js
Normal file
|
@ -0,0 +1,14 @@
|
|||
const fs = require("fs");
|
||||
const config = require("../config.js");
|
||||
const commands = fs.readdirSync("./commands");
|
||||
module.exports = function(vanillaclient, client, server, data) {
|
||||
let msg = data.message;
|
||||
if(msg.startsWith(config.proxy.prefix)) {
|
||||
let args = msg.split(" ").slice(1);
|
||||
let cmd = msg.split(" ")[0].substr(1);
|
||||
if(!commands.includes(`${cmd}.js`)) return "cancel";
|
||||
let cmdfile = require(`../commands/${cmd}.js`);
|
||||
cmdfile.exec(vanillaclient, client, server, args);
|
||||
return "cancel";
|
||||
}
|
||||
};
|
4
vanillapackets/look.js
Normal file
4
vanillapackets/look.js
Normal file
|
@ -0,0 +1,4 @@
|
|||
module.exports = function(vanillaclient, client, server, data) {
|
||||
client.position.yaw = data.yaw;
|
||||
client.position.pitch = data.pitch;
|
||||
};
|
5
vanillapackets/position.js
Normal file
5
vanillapackets/position.js
Normal file
|
@ -0,0 +1,5 @@
|
|||
module.exports = function(vanillaclient, client, server, data) {
|
||||
client.position.x = data.x;
|
||||
client.position.y = data.y;
|
||||
client.position.z = data.z;
|
||||
};
|
7
vanillapackets/position_look.js
Normal file
7
vanillapackets/position_look.js
Normal file
|
@ -0,0 +1,7 @@
|
|||
module.exports = function(vanillaclient, client, server, data) {
|
||||
client.position.x = data.x;
|
||||
client.position.y = data.y;
|
||||
client.position.z = data.z;
|
||||
client.position.yaw = data.yaw;
|
||||
client.position.pitch = data.pitch;
|
||||
};
|
Reference in a new issue