From f464ef308078fea740f7f97521715499e8f4c0eb Mon Sep 17 00:00:00 2001 From: Expand-sys Date: Fri, 2 Jul 2021 12:43:48 +1000 Subject: [PATCH] commit sepeku --- commands/moderation/mc.js | 29 ++++++++++++++ commands/moderation/whitelist.js | 35 ----------------- package-lock.json | 65 ++++++++++++++++++++++++++++++++ package.json | 2 + 4 files changed, 96 insertions(+), 35 deletions(-) create mode 100644 commands/moderation/mc.js delete mode 100644 commands/moderation/whitelist.js diff --git a/commands/moderation/mc.js b/commands/moderation/mc.js new file mode 100644 index 0000000..89bcb3f --- /dev/null +++ b/commands/moderation/mc.js @@ -0,0 +1,29 @@ +const fs = require("fs"); +const got = require("got"); + +const { Rcon } = require("rcon-client"); + +module.exports = { + name: "mc", + description: "send a mc command", + guildOnly: true, + permissions: "KICK_MEMBERS", + async execute(message, args) { + if (!args) { + return message.reply("OI you need to specify the command you want"); + } else { + const rcon = new Rcon({ + host: "twix.aosync.me", + port: 25575, + password: "6pnyf2DsCfHV67d3", + }); + + await rcon.connect(); + let content = message.content.split("!mc "); + let res = await rcon.send(`${content[1]}`); + + message.reply(`Sent Command ${content}: ${res}`); + rcon.end(); + } + }, +}; diff --git a/commands/moderation/whitelist.js b/commands/moderation/whitelist.js deleted file mode 100644 index d4b0b9b..0000000 --- a/commands/moderation/whitelist.js +++ /dev/null @@ -1,35 +0,0 @@ -const fs = require("fs"); -const got = require("got"); - -String.prototype.splice = function (idx, rem, str) { - return this.slice(0, idx) + str + this.slice(idx + Math.abs(rem)); -}; - -module.exports = { - name: "whitelist", - description: "Whitelist a user on the minecraft server", - guildOnly: true, - permissions: "KICK_MEMBERS", - async execute(message, args) { - if (!args) { - return message.reply("You need to type the user you want whitelisted"); - } else { - let file = JSON.parse(fs.readFileSync("../whitelist.json")); - let player = await got( - "https://api.mojang.com/users/profiles/minecraft/" + args[0] - ); - player = JSON.parse(player.body); - player.id = player.id.splice(8, 0, "-"); - player.id = player.id.splice(13, 0, "-"); - player.id = player.id.splice(18, 0, "-"); - player.id = player.id.splice(23, 0, "-"); - let format = { - uuid: player.id, - name: player.name, - }; - file.push(format); - fs.writeFileSync("../whitelist.json", JSON.stringify(file)); - return message.reply("Whitelisted user: " + player.name); - } - }, -}; diff --git a/package-lock.json b/package-lock.json index c578b7e..9b679c2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,8 +17,10 @@ "get-pixels": "^3.3.2", "google-it": "^1.6.2", "got": "^11.8.2", + "minecraft-server-util": "^3.5.2", "moment": "^2.29.1", "node-fetch": "^2.6.1", + "rcon-client": "^4.2.3", "request-promise-cache": "^2.0.1", "superagent": "^6.1.0", "unirest": "^0.6.0" @@ -1210,6 +1212,28 @@ "node": ">=4" } }, + "node_modules/minecraft-server-util": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/minecraft-server-util/-/minecraft-server-util-3.5.2.tgz", + "integrity": "sha512-cJ4UIE9gDBU8n+YJqVhaTfPKrEKJj1FvgloDydLXXnFWeuLCzPKfWdM7uYqRIXBlauvNFmOojbdm7H8JjIkiJg==", + "dependencies": { + "ansi-styles": "^5.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/minecraft-server-util/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/moment": { "version": "2.29.1", "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", @@ -1492,6 +1516,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/rcon-client": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/rcon-client/-/rcon-client-4.2.3.tgz", + "integrity": "sha512-g+DEzI3O0Nl4Y3mPp6DHhSpYeiv+wTq8iKxCumFGO0/SMCsdNfx9bpT5RyHa7phR5dvspKfQK0ZYJp1YCtXNng==", + "dependencies": { + "typed-emitter": "^0.1.0" + } + }, "node_modules/readable-web-to-node-stream": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.1.tgz", @@ -1856,6 +1888,11 @@ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" }, + "node_modules/typed-emitter": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/typed-emitter/-/typed-emitter-0.1.0.tgz", + "integrity": "sha512-Tfay0l6gJMP5rkil8CzGbLthukn+9BN/VXWcABVFPjOoelJ+koW8BuPZYk+h/L+lEeIp1fSzVRiWRPIjKVjPdg==" + }, "node_modules/typical": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", @@ -2915,6 +2952,21 @@ "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" }, + "minecraft-server-util": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/minecraft-server-util/-/minecraft-server-util-3.5.2.tgz", + "integrity": "sha512-cJ4UIE9gDBU8n+YJqVhaTfPKrEKJj1FvgloDydLXXnFWeuLCzPKfWdM7uYqRIXBlauvNFmOojbdm7H8JjIkiJg==", + "requires": { + "ansi-styles": "^5.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==" + } + } + }, "moment": { "version": "2.29.1", "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", @@ -3116,6 +3168,14 @@ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" }, + "rcon-client": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/rcon-client/-/rcon-client-4.2.3.tgz", + "integrity": "sha512-g+DEzI3O0Nl4Y3mPp6DHhSpYeiv+wTq8iKxCumFGO0/SMCsdNfx9bpT5RyHa7phR5dvspKfQK0ZYJp1YCtXNng==", + "requires": { + "typed-emitter": "^0.1.0" + } + }, "readable-web-to-node-stream": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.1.tgz", @@ -3395,6 +3455,11 @@ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" }, + "typed-emitter": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/typed-emitter/-/typed-emitter-0.1.0.tgz", + "integrity": "sha512-Tfay0l6gJMP5rkil8CzGbLthukn+9BN/VXWcABVFPjOoelJ+koW8BuPZYk+h/L+lEeIp1fSzVRiWRPIjKVjPdg==" + }, "typical": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", diff --git a/package.json b/package.json index 1720138..d8f27e3 100644 --- a/package.json +++ b/package.json @@ -21,8 +21,10 @@ "get-pixels": "^3.3.2", "google-it": "^1.6.2", "got": "^11.8.2", + "minecraft-server-util": "^3.5.2", "moment": "^2.29.1", "node-fetch": "^2.6.1", + "rcon-client": "^4.2.3", "request-promise-cache": "^2.0.1", "superagent": "^6.1.0", "unirest": "^0.6.0"