Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Discord = require('discord.js');
- const bot = new Discord.Client();
- const fs = require('fs')
- const moment = require('moment');
- const mysql = require('mysql');
- const con = mysql.createConnection({
- host: 'localhost',
- user: 'root',
- password: "",
- database: 'j4f_tokens',
- });
- con.connect((err) => {
- // if (err) throw err;
- console.log('Connected to mySQL Server.');
- console.log('DATABASE = j4f_tokens');
- });
- bot.login('');
- let userData = JSON.parse(fs.readFileSync('Storage/userData.json', 'utf8'));
- const modRole = "administrator";
- bot.on('message', message => {
- let sender = message.author;
- let msg = message.content.toUpperCase();
- let prefix = '$';
- if (bot.user.id === message.author.id) {return}
- let userData = JSON.parse(fs.readFileSync('Storage/userData.json', 'utf8'));
- if (!userData[sender.id + message.guild.id]) userData[sender.id + message.guild.id] = {}
- if (!userData[sender.id + message.guild.id].money) userData[sender.id + message.guild.id].money = 0;
- if (!userData[sender.id + message.guild.id].lastDaily) userData[sender.id + message.guild.id].lastDaily = "Not collected";
- if (!userData[sender.id + message.guild.id].username) userData[sender.id + message.guild.id].username = message.author.username;
- if (message.content == prefix + "ping") {
- message.channel.sendMessage('Pong!');
- }
- if (message.content == prefix + "give") {
- if (!message.member.hasPermission('ADMINISTRATOR')) return message.channel.sendMessage("You need the role '" + modRole + "' to use this command!");
- const userMention = message.mentions.users.first();
- let definedUser = '';
- if (!userMention) {
- definedUser = message.author.id;
- userData[message.author.id + message.guild.id].money + 1;
- message.channel.sendMessage("You gave " + message.author.username + " 1 extra J4Token!");
- return;
- } else {
- definedUser = firstMentioned.id;
- userData[firstMentioned.id + message.guild.id].money + 1;
- message.channel.sendMessage("You gave 1 " + definedUser + " extra J4Token!");
- }
- }
- if (message.content == prefix + 'balance') {
- let pointsFromTokenSQL = 'SELECT points FROM tokens WHERE name = ?';
- const name = [message.author.id];
- pointsFromTokenSQL = mysql.format(pointsFromTokenSQL, name);
- con.query(pointsFromTokenSQL, (err, result) => {
- let resultJsonObj = result;
- console.log(resultJsonObj);
- console.log(resultJsonObj('points'));
- const pointsReturn = resultJsonObj[0].points;
- console.log('anything')
- // const points = pointsReturn.slice(0);
- const embed = new Discord.MessageEmbed()
- .setColor(0xa9ef27)
- .setTitle(`**Your J4Tokens ${message.author.tag.slice(0, -5)}**`)
- .addField('**Tokens**', (pointsReturn))
- message.channel.send({embed:{
- fields: [ { title: "J4F Tokens:", value: resultJsonObj[0].points } ]
- }
- });
- });
- }
- if (message.content == prefix + 'daily') {
- if (userData[sender.id + message.guild.id].lastDaily != moment().format('L')) {
- userData[sender.id + message.guild.id].lastDaily = moment().format('L');
- userData[sender.id + message.guild.id].money += 1;
- const pointsRandom = (Math.floor(Math.random() * 18) + 5);
- let fromUserPointsSQL = 'SELECT * FROM tokens WHERE name = ?';
- const name = [message.author.id];
- fromUserPointsSQL = mysql.format(fromUserPointsSQL, name);
- let setPointsSQL = `UPDATE tokens SET points = points + 1 WHERE name = ?`;
- setPointsSQL = mysql.format(setPointsSQL, name);
- con.query(fromUserPointsSQL, (err0, resultName) => {
- if (err0) throw err0;
- if (resultName.length > 0) {
- con.query(setPointsSQL, (err1) => {
- if (err1) throw err1;
- message.channel.sendMessage({embed:{
- title:"Daily Token",
- color: 0xa9ef27,
- description:"You received a shiny golden j4token. (We added it to your account!)"
- }})
- console.log(`${message.author} got 1 points!`);
- if (err2) throw err2;
- });
- } else {
- const newUser = [
- [`${message.author.id}`, `${message.author.tag}`, 1],
- ];
- con.query('INSERT INTO tokens (`name`, `username`, `points`) VALUES ?', [newUser], (err3) => {
- if (err3) throw err3;
- console.log('1 record inserted');
- message.channel.sendMessage({embed:{
- title:"Daily Token",
- color: 0xa9ef27,
- description:"You received a shiny golden j4token. (We added it to your account!)"
- }})
- });
- }
- });
- } else {
- message.channel.sendMessage({embed:{
- title:"Daily Token",
- color: 0xa9ef27,
- description:"Mmmm... Seems like you already got your daily J4Token. Check back in " + moment().endOf('day').fromNow() + '.'
- }})
- }
- }
- if(message.content == prefix + "global") {
- var globalMoney = 0;
- var globalUsers = 0;
- var globalRichest = '';
- var globalRichest$ = 0;
- for (var i in userData) {
- globalMoney += userData[i].money;
- globalUsers += 1;
- if (userData[i].money > globalRichest$) {
- globalRichest$ = userData[i].money;
- globalRichest = userData[i].username;
- }
- }
- message.channel.sendMessage({"embed":{
- title: "Global Overview.",
- color: 0xa9ef27,
- fields: [{
- name:"J4Tokens in existence:",
- value:globalMoney,
- inline:true
- }]
- }});
- }
- fs.writeFile('Storage/userData.json', JSON.stringify(userData), (err) => {
- // if (err) console.error(err);
- });
- bot.on('ready', () => {
- console.log('Economy launched...');
- });
- });
- ERROR
- /////////////////////////////
- C:\Users\Admin\Desktop\Discord Bot J4F>node .
- undefined:1
- SyntaxError: Unexpected end of JSON input
- at JSON.parse (<anonymous>)
- at Object.<anonymous> (C:\Users\Admin\Desktop\Discord Bot J4F\index.js:22:21)
- at Module._compile (module.js:643:30)
- at Object.Module._extensions..js (module.js:654:10)
- at Module.load (module.js:556:32)
- at tryModuleLoad (module.js:499:12)
- at Function.Module._load (module.js:491:3)
- at Function.Module.runMain (module.js:684:10)
- at startup (bootstrap_node.js:187:16)
- at bootstrap_node.js:608:3
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement