From 68d32ab1fa9c79e848038ca1c451e7d8f368531b Mon Sep 17 00:00:00 2001 From: 8cy <50817549+8cy@users.noreply.github.com> Date: Wed, 29 Apr 2020 04:36:14 -0700 Subject: Cerasus, v9.0.0 basically just add an insane amount of things - all new animal commands - waifu cmds - change/ move clientid, invite, uwufy, support, howify, say, pfp - add ip, security key, vote, datefacts, githubzen, fmk, fml, offsptring, facts, rate, opinion, onion, quantum coin, rolldie, romannumerals, russianrullete, smashorpass, spoiler, sub - minecraft cmds - SERVER check cmds - lewd cmds - roleplay commands - fun commands and games - utils --- src/commands/utility/rustserverstatus.ts | 76 ++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/commands/utility/rustserverstatus.ts (limited to 'src/commands/utility/rustserverstatus.ts') diff --git a/src/commands/utility/rustserverstatus.ts b/src/commands/utility/rustserverstatus.ts new file mode 100644 index 0000000..bce83cb --- /dev/null +++ b/src/commands/utility/rustserverstatus.ts @@ -0,0 +1,76 @@ +import { Command, CommandoMessage } from 'discord.js-commando'; +import { MessageEmbed } from 'discord.js'; +import emoji from 'emoji-random' +import gamedig from 'gamedig' +import gameDigHelper from '../../utils/gameDigHelper.js' + +module.exports = class RustServerStatusUtility extends Command { + constructor(client) { + super(client, { + name: 'rustserverstatus', + aliases: [ + 'rust-ss', + 'rust-server-status', + 'rustss' + ], + group: 'utility', + memberName: 'rustserverstatus', + description: 'Grabs you the server status of a Rust server.', + examples: [ + 'uwu!rustserverstatus', + 'uwu!rustss' + ], + userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], + clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], + throttling: { + usages: 5, + duration: 30 + }, + args: [ + { + key: 'host', + prompt: 'What is the IP or host of the server?', + type: 'string' + }, + { + key: 'port', + prompt: 'What is the port of the server?', + type: 'integer', + default: '28015', + max: 65535, + min: 1 + } + ] + }); + } + async run(msg: CommandoMessage, { host, port }) { + try { + const options = { + host, + type: 'rust' + } + + if (port) { + options.port = port + } + + gamedig + .query(options) + .then(data => { + msg.replyEmbed( + gameDigHelper(data) + .setThumbnail('https://steamcdn-a.akamaihd.net/steam/apps/252490/header.jpg') + .setColor(0xFFCC4D) + ) + }) + .catch(err => { + if (err === 'UDP Watchdog Timeout') return msg.reply('Server timed out, it\'s probably offline. ' + emoji.random()) + + //console.error(err) + return msg.reply('Woops, an unknown error has occured. ' + emoji.random()) + }) + } finally { + msg.channel.stopTyping() + } + } +}; \ No newline at end of file -- cgit v1.2.3