Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Discord = require("discord.js");
- var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
- const bot = new Discord.Client();
- const json = require("json").JSON;
- const mysql = require("mysql");
- var sys = require('sys');
- var exec = require('child_process').exec;
- var fs = require('fs');
- var os = require('os');
- var child;
- const guildId = "382941847122518019 i changed this";
- const broadcastChannel = "405719020533317632 i changed this";
- const connection = mysql.createConnection({
- host : 'localhost',
- port : '3306',
- user : 'root',
- password : 'i changed this',
- database : 'unknown'
- });
- const UPDATE_ABLE_RANKS = ["VIP", "VIP+", "MVP", "MVP++"];
- var fortunes = [
- "Yes",
- "No",
- "Maybe",
- "Not really",
- " " + "a wild swear has appeared"
- ];
- /
- *
- * @type {number}
- */
- var broadcasted = 0;
- var wasSent = true;
- const broadcastMessages = {0 : "Website: I hidden this", 1 : "Get list of available commands with !help", 2 : "Have you purchased rank? Use !fetchrank to also get that rank here!", 3 : "Server is in beta and you may experience bugs while playing", 4 : "See all event in special-events channel"};
- connection.connect(function(err) {
- if (err) throw err;
- console.log("Connected to MYSQL!");
- });
- function inArray(needle, haystack) {
- var length = haystack.length;
- for(var i = 0; i < length; i++) {
- if(haystack[i] == needle) return true;
- }
- return false;
- }
- function isNumber (text) {
- if(text) {
- var reg = new RegExp('[0-9]+$');
- return reg.test(text);
- }
- return false;
- }
- function removeSpecials(text) {
- if(text) {
- var lower = text.toLowerCase();
- var upper = text.toUpperCase();
- var result = "";
- for(var i=0; i<lower.length; ++i) {
- if(isNumber(text[i]) || (lower[i] != upper[i]) || (lower[i].trim() === '')) {
- result += text[i];
- }
- }
- return result;
- }
- return '';
- }
- bot.on('ready', (() => {
- console.log("Bot is up and running in " + bot.channels.length + " channels");
- bot.user.setStatus('dnd', 'Chicken')
- bot.user.setActivity("Netsword Database")
- }));
- bot.on("disconnected", function () {
- console.log("Disconnected from Discord");
- process.exit(1);
- });
- function leftToEight(){
- var d = new Date();
- return (-d + d.setHours(8,0,0,0));
- }
- function sendMessage(){
- if(!wasSent){
- return;
- }
- var guild = bot.guilds.get(guildId);
- if(guild && bot.channels.get(broadcastChannel)){
- // guild.channels.get(broadcastChannel).send(broadcastMessages[broadcasted]);
- var embed = new Discord.RichEmbed()
- .addField("Broadcast", broadcastMessages[broadcasted]);
- guild.channels.get(broadcastChannel).sendEmbed(embed);
- broadcasted++;
- if(broadcasted >= 4){
- broadcasted = 0;
- }
- wasSent = false;
- }else{
- console.log()
- }
- }
- bot.on("message", message => {
- if(message.author.bot
- )
- return;
- var dict = {"clientID" : message.author.id,
- "xp" : 0,
- "level" : 0};
- var dictstring = JSON.stringify(dict);
- var id = message.author.id;
- var msg = message.content.toLowerCase();
- fs.exists("./players/" + id +".json", function(exists) {
- if (!exists) {
- fs.writeFile("./players/" + id + ".json", dictstring);
- }
- });
- function regexIndexOf(text, re, i) {
- var indexInSuffix = text.slice(i).search(re);
- return indexInSuffix < 0 ? indexInSuffix : indexInSuffix + i;
- }
- if(message.channel.id == broadcastChannel){
- wasSent = true;
- }
- //var test = 'dpbre jidlo';
- fs.readFile('./badwords.json', function read(err, data) {
- if (err) {
- throw err;
- }
- var content = data;
- let json3 = JSON.parse(content)['badwords'];
- length = json3.length;
- while(length--) {
- if (msg.indexOf(json3[length])!=-1) {
- message.reply(":rage: LANGUAGE")
- .then(msg => {
- msg.delete(10000)
- });
- message.delete();
- return;
- }
- }
- });
- if (m
- Honza, [26.12.18 20:59]
- essage.content.indexOf('!') !== 0) return;
- const args = message.content.slice("!").trim().split(/ +/g);
- const command = args.shift().toLowerCase();
- if (command == '!playerinfo') {
- let [name] = args;
- if (name == null) {
- message.channel.sendMessage(':cry: Invalid arguments provided');
- return;
- }
- var result = [];
- connection.query("SELECT * FROM players WHERE name='" + name + "'", function (err, res, fields) {
- if (err) console.log(err);
- if (res.length) {
- for (var i = 0; i < res.length; i++) {
- result.push(res[i]);
- }
- }
- if (result[0] == null) {
- message.channel.sendMessage(":cry: Could not with user with username with username " + args[0]);
- return;
- }
- message.channel.sendMessage("XBL Username: " + result[0].name);
- message.channel.sendMessage("Coins: " + result[0].coins);
- message.channel.sendMessage("Gems: " + result[0].gems);
- message.channel.sendMessage("Rank: " + result[0].rank);
- var pet = "None";
- if (result[0].pet !== "") {
- pet = result[0].pet;
- pet = pet.replace(pet[0], pet[0].toUpperCase());
- }
- var prefix = "None";
- if(result[0].prefix !== ""){
- prefix = result[0].prefix;
- }
- message.channel.sendMessage("Pet: " + pet);
- message.channel.sendMessage("Prefix: " + prefix);
- });
- } else if (command == '!serverinfo') {
- message.channel.sendMessage('Retrieving server info...');
- var result2 = [];
- var data = httpGet('https://use.gameapis.net/mcpe/query/extensive/i changed this');
- let json2 = JSON.parse(data);
- result2.push(json2);
- var status = result2[0]['status'];
- message.channel.sendMessage("Server active: " + status);
- if (!status) {
- return;
- }
- message.channel.sendMessage("Players Online: " + result2[0]['players']['online']);
- /* if(data.status == false){
- message.channel.sendMessage("Server Status: offline");
- return;
- }*/
- /* message.channel.sendMessage("Server Status: online");
- message.channel.sendMessage("Online Players: " . myObj.status);*/
- } else if (command == '!exec') {
- message.delete();
- if (!message.member.roles.find("name", "Server Administrator")) {
- message.channel.sendMessage(":cry: You don't have permission to use this command")
- .then(msg => {
- msg.delete(5000)
- })
- ;
- return;
- }
- var NewsArgs = args.toString().replace(",", " ");
- if (NewsArgs == null || NewsArgs === "") {
- message.channel.sendMessage(':cry: Invalid arguments provided')
- .then(msg => {
- msg.delete(5000)
- });
- return;
- }
- message.channel.sendMessage("Executing " + NewsArgs);
- child = exec(NewsArgs, function (error, stdout, stderr) {
- console.log(stderr);
- if (error !== null) {
- message.channel.sendMessage('Error:' + error);
- }
- });
- Honza, [26.12.18 20:59]
- } else if (command == '!8ball') {
- if (args[0]) message.channel.sendMessage(fortunes[Math.floor(Math.random() * fortunes.length)]);
- } else if (command == '!broadcast') {
- message.delete();
- if (!message.member.roles.find("name", "Server Administrator") && !message.member.roles.find("name", "Builder") && !message.member.roles.find("name", "Server Developer")) {
- message.channel.sendMessage(":cry: You don't have permission to use this command")
- .then(msg => {
- msg.delete(5000)
- });
- return;
- }
- message.channel.sendMessage(message.content.slice(10));
- } else if (command == '!clear') {
- message.delete();
- if (!message.member.roles.find("name", "Server Administrator") && !message.member.roles.find("name", "Builder") && !message.member.roles.find("name", "Server Developer")) {
- message.channel.sendMessage(":cry: You don't have permission to use this command")
- .then(msg => {
- msg.delete(5000)});
- return;
- }
- if (!args[0]) {
- message.channel.sendMessage(':cry: Invalid arguments provided')
- .then(msg => {
- msg.delete(5000)});
- return;
- }
- if(args[0] > 100){
- message.channel.send("You can't delete more than 100 messages").then(msg => msg.delete(3000));
- return;
- }
- message.channel.bulkDelete(args[0]).then(() => {
- message.channel.send("Deleted " +args[0]+ " messages.").then(msg => msg.delete(3000));
- });
- }else if(command == '!info'){
- message.reply('channel id: ' + message.channel.id + " guild: " + message.guild.id);
- }else if(command == '!fetchrank'){
- if (!args[0]) {
- message.channel.sendMessage(':cry: Invalid arguments provided')
- .then(msg => {
- msg.delete(5000)});
- return;
- }
- var result = [];
- connection.query("SELECT * FROM players WHERE name='" + args[0] + "'", function (err, res, fields) {
- if (err) console.log(err);
- if (res.length) {
- for (var i = 0; i < res.length; i++) {
- result.push(res[i]);
- }
- }
- if (result[0] == null) {
- message.channel.sendMessage(":cry: Could not with user with username with username " + result[0] + "");
- return;
- }
- if(result[0].prefix == "discord"){
- message.channel.sendMessage("Account " + args[0] + " already has discord prefix!");
- }else {
- connection.query("UPDATE players SET prefix='discord' WHERE name='" + args[0] + "'");
- message.channel.sendMessage("**Congratulations! Added discord prefix and particles to account " + args[0]);
- message.channel.sendMessage("Applying discord verified role to " + args[0] + "...");
- message.channel.sendMessage("If you are connected on server, you may have to reconnect to see the changes.");
- var role = message.guild.roles.find("name", "Discord Verified");
- message.member.addRole(role);
- /* if(inArray(result[0].rank, UPDATE_ABLE_RANKS)){
- message.channel.sendMessage("I have added Discord features to the Xbox Account ipedrowtspvp");
- var role = message.guild.roles.find("name", result[0].rank);
- var Mrole = message.member.roles.find("name", result[0].rank);
- if(Mrole){
- message.channel.sendMessage("I could not add the discord tag since you already have a tag")
- .then(msg => {
- msg.delete(5000)});
- return;
- }
- message.member.addRole(role);
- message.channel.sendMessage("You now have " + result[0].rank + " rank! Congratulations!");*/
- /* }else{
- message.channel.sendMessage("Sorry, only users with purchased rank can fetch their account")
- .then(msg => {
- msg.delete(5000)});
- }*/
- }
- Honza, [26.12.18 20:59]
- });
- }else if(command == '!help'){
- var embed = new Discord.RichEmbed()
- .addField("Command Lis**t" + os.EOL, "!playerinfo**" + os.EOL + "Retrieve info about specified player" + os.EOL.repeat(2) + "!fetchrank" + os.EOL + "Connect your xbox account to discord account" + os.EOL.repeat(2) + "!serverinfo" + os.EOL + "Give info about server");
- message.channel.sendEmbed(embed);
- }
- });
- function httpGet(theUrl)
- {
- var xmlHttp = new XMLHttpRequest();
- xmlHttp.open( "GET", theUrl, false );
- xmlHttp.send( null );
- return xmlHttp.responseText;
- }
- bot.login('NDI5NzUyNTE1OTMyNzE3MDU4.DaGN0g.Sy89zKI broke this boiii');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement