gaber-elsayed

Credits 3 , Database (Enmap)

Nov 26th, 2019
301
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.51 KB | None | 0 0
  1. const credit = new Enmap({ name: "SCredits" });
  2. client.on('message',async message => {
  3. if(message.author.bot || message.channel.type === 'dm') return;
  4. if(credit.get(message.author.id) === undefined) {
  5. credit.ensure(message.author.id, { credits: 0, messages: 1, xp: 0, lastdaily: null });
  6. }
  7. let getRandom = (min,max) => {return Math.floor(Math.random() * (max-min) + min)};
  8. let em = `${client.guilds.get("525365808352985088").emojis.find(r => r.name === "discordPartner")}`;
  9. let no = `${client.guilds.get("525365808352985088").emojis.find(r => r.name === "discordPartner")}`;
  10. let cmd = message.content.split(" ")[0].substring(prefix.length);
  11. let args = message.content.split(" ").slice(1);
  12. let mention = message.mentions.users.first();
  13. if(!message.content.startsWith(prefix)) return;
  14. if(cmd === 'credits') {
  15. if(!mention) {
  16. return message.channel.send(`**${em} | \`${credits.get(message.author.id, 'credits')}\` Credits • \`${credits.get(message.author.id, 'messages')}\` Messages**`);
  17. } else {
  18. if(!args[2]) {
  19. if(credits.get(mention.id) === undefined) credits.ensure(mention.id, { credits: 0, messages: 1, xp: 0, lastdaily: null });
  20. message.channel.send(`**${em} | \`${credits.get(mention.id, 'credits')}\` Credits • \`${credits.get(mention.id, 'messages')}\` Messages**`);
  21. } else {
  22. let num = args[2];
  23. if(mention.id === message.author.id) return message.channel.send(`**${em} | لا يمكنك تحويل كردت لنفسك**`);
  24. if(isNaN(num)) return message.channel.send(`**${no} | يجب على الرقم ان يكون صحيحا**`);
  25. if(num < 1) return message.channel.send(`**${no} | يجب ان يكون الرقم بالموجب**`);
  26. let random = getRandom(1000,9999);
  27. let m = message.channel.send(`**${em} | \`${random}\` اكتب الرقم التالي للأستمرار**`);
  28. let c = message.channel.awaitMessages(r => r.author.id === message.author.id, {max:1,time:60000,errors:['time']});
  29. if(c.first().content === random) {
  30. if(credits.get(mention.id) === undefined) credits.ensure(mention.id, { credits: 0, messages: 1, xp: 0, lastdaily: null });
  31. let user = credits.get(mention.id);
  32. let author = credits.get(message.author.id);
  33. credits.set(mention.id, ( user.credits + num ), 'credits');
  34. credits.set(message.author.id, ( author - num ), 'credits');
  35. message.channel.send(`**${em} | تم تحويل \`${num}\` الى ${mention}**`);
  36. }
  37. }
  38. }
  39. } else if(cmd === 'daily') {
  40. let day = 86400000;
  41. if(Date.now() - credits.get(message.author.id, 'lastdaily') > day) return message.channel.send(`**${em} | \`${pretty( day - credits.get(message.author.id, 'lastdaily') , {verbose: true})}\` تبقى**`);
  42. let r = getRandom(125,450);
  43. let author = credits.get(message.author.id);
  44. credits.set(message.author.id, ( author.credits + r ), 'credits');
  45. message.channel.send(`**${em} | لقد اخذت \`${r}\` من الكردت اليوم**`);
  46. credits.set(message.author.id, ( Date.now() ), 'lastdaily')
  47. } else if(cmd === "copy") {
  48. let sql = require('sql');
  49. sql.open(`./database/userData.sqlite`);
  50. sql.get(`SELECT * FROM scores WHERE userId ="${message.author.id}"`).then(row => {
  51. if(!row) return;
  52. if(row) {
  53. console.log(row);
  54. }
  55. });
  56. } else if(cmd === "clear") {
  57. credit.deleteAll();
  58. message.channel.send("Cleared All Credits using `Enmap`");
  59. }
  60. });
Add Comment
Please, Sign In to add comment