Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Discord = require('discord.js');
- const client = new Discord.Client();
- client.login('your token here');
- var request = require('request');
- var mcCommand = '/u'; // Command for updating the bot
- var mcIP = 'your server ip here'; // Your MC server IP or hostname address
- var mcPort = 25565; // Your MC server port (25565 is the default)
- var minutes = 5; //This is how often (in minutes) you want the bot to update itself
- var refreshTime = minutes * 60 * 1000;
- function playerCheck() {
- var url = 'http://api.mcsrvstat.us/2/' + mcIP;
- request(url, function(err, response, body) {
- if(err) {
- console.log(err);
- return message.reply('Error getting Minecraft server status...');
- }
- body = JSON.parse(body);
- client.user.setStatus('dnd', 'g');
- var status = 'are not :(';
- if(body.online) {
- status = '';
- client.user.setStatus('online', 'g');
- if(body.players.list) {
- status += '- ' + body.players.online + ' people';
- } else {
- status += 'Nobody is playing!';
- }
- }
- client.user.setActivity(status);
- });
- };
- client.on('ready', () => {
- playerCheck(); //Initial player check
- console.log("Discord bot is online!");
- setInterval(() => {
- playerCheck(); //Routine check based on refreshTime
- }, refreshTime); //How often the server refreshes
- });
- client.on('message', message => {
- if (message.content === mcCommand) {
- playerCheck()
- }
- });
- client.on('message', message => {
- if (message.content === '/ip') {
- message.reply(mcIP);
- }
- });
- client.on('message', message => {
- if (message.content === '/p') {
- var url = 'http://api.mcsrvstat.us/2/' + mcIP;
- request(url, function(err, response, body) {
- if(err) {
- console.log(err);
- return message.reply('Error getting Minecraft server status...');
- }
- body = JSON.parse(body);
- if (body.online) {
- if (body.players.list) {
- if (body.players.list > 1) {
- var players = 'People playing right now are: ' + body.players.list.slice(0, arr.length - 1).join(', ') + " and " + arr.slice(-1);
- }else {
- var players = body.players.list[0] + ' is playing all alone right now :('
- }
- }else {
- var players = "No one's playing right now :("
- }
- }else {
- var players = 'Server is offline right now :/'
- }
- message.reply(players)
- })
- }
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement