Advertisement
Guest User

SuperSonicBot

a guest
Sep 26th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.64 KB | None | 0 0
  1. const Discord = require("discord.js");
  2. const YTDL = require("ytdl-core");
  3. var fs = require("fs");
  4. var profanities = require("profanities");
  5. var bot = new Discord.Client();
  6.  
  7. bot.on("message", message => {
  8.  
  9. // Variables
  10. var sender = message.author;
  11. var msg = message.content.toUpperCase();
  12. });
  13.  
  14. const TOKEN = "THIS IS WHERE MY TOKEN GOES";
  15. const PREFIX = "/";
  16.  
  17. function generateHex() {
  18. return "#" + Math.floor(Math.random() * 16777215).toString(16);
  19. }
  20.  
  21. function play(connection, message) {
  22. var server = servers[message.guild.id];
  23.  
  24. server.dispatcher = connection.playStream(YTDL(server.queue[0], {filter: "audioonly"}));
  25.  
  26. server.queue.shift();
  27.  
  28. server.dispatcher.on("end", function() {
  29. if (server.queue[0]) play(connection, message);
  30. else connection.disconnect();
  31. });
  32. }
  33.  
  34. var fortunes = [
  35. "Yes",
  36. "No",
  37. "Mabye",
  38. "hehe"
  39. ];
  40.  
  41. // Help
  42. var commandsList = fs.readFileSync('Storage/commands.txt', 'utf8');
  43. // End
  44.  
  45. // Profanity
  46. for (x = 0; x < profanities.length; x++) {
  47. if (msg.content.toUpperCase() == profanities[x].toUpperCase()) {
  48. message.channel.send("Hey! Don\'t say that!") // Tells the user that they can't say that.
  49. message.delete(); // Deletes the message
  50. return;
  51. }
  52. }
  53.  
  54. var servers = {};
  55.  
  56. bot.on("ready", function(){
  57. console.log("Let's Rock And Roll!");
  58. });
  59.  
  60. bot.on("guildMemberAdd", function(member) {
  61. member.guild.channels.find("name", "welcome").sendMessage(member.toString() + " Welcome!");
  62.  
  63. member.addRole(member.guild.roles.find("name", "Clones"));
  64. });
  65.  
  66. // Commands
  67.  
  68. bot.on("message", function(message){
  69. if (message.author.equals(bot.user)) return;
  70.  
  71. if (!message.content.startsWith(PREFIX)) return;
  72.  
  73. var args = message.content.substring(PREFIX.length).split(" ");
  74.  
  75. switch (args[0].toLowerCase()) {
  76. case "ping":
  77. message.channel.send("Pong");
  78. break;
  79. case "info":
  80. message.channel.send("Hi i'm Super Sonic! A bot created by Shadow Rift!");
  81. break;
  82. case "pong":
  83. message.channel.send("Ping")
  84. break;
  85. case "8ball":
  86. if (args[1]) message.channel.send(fortunes[Math.floor(Math.random() * fortunes.length)]);
  87. else message.channel.send("Sorry I can't read your fortune :(");
  88. break;
  89. case "embed":
  90. var embed = new Discord.RichEmbed()
  91. .addField("Bye", "Kill Me")
  92. .setColor(0x00F6FF)
  93. .setThumbnail(message.author.avatarURL)
  94. message.channel.sendEmbed(embed);
  95. break;
  96. case "noticeme":
  97. message.channel.send(message.author.toString() + " Noticed!");
  98. break;
  99. case "removerole":
  100. message.member.removeRole(message.member.guild.roles.find("name", "User"));
  101. break;
  102. case "deleterole":
  103. message.member.guild.roles.find("name", "User").delete();
  104. break;
  105. case "pang":
  106. message.channel.send("Dang")
  107. break;
  108. case "fart":
  109. message.channel.send("Phfft")
  110. break;
  111. case "leave":
  112. message.channel.send("No")
  113. break;
  114. case "play":
  115. if (!args[1]) {
  116. message.channel.send("Please provide a link");
  117. return;
  118. }
  119.  
  120. if (!message.member.voiceChannel) {
  121. message.channel.send("You must be in a voice channel");
  122. return;
  123. }
  124.  
  125. if(!servers[message.guild.id]) servers[message.guild.id] = {
  126. queue: []
  127. };
  128.  
  129. var server = servers[message.guild.id];
  130.  
  131. server.queue.push(args[1]);
  132.  
  133. if (!message.guild.voiceConnection) message.member.voiceChannel.join().then(function(connection) {
  134. play(connection, message);
  135. });
  136. break;
  137. case "skip":
  138. var server = servers[message.guild.id];
  139.  
  140. if (server.dispatcher) server.dispatcher.end();
  141. break;
  142. case "stop":
  143. var server = servers[message.guild.id];
  144.  
  145. if (message.guild.voiceConnection) message.guild.voiceConnection.disconnect();
  146. break;
  147.  
  148. // Help Command
  149. case "help":
  150. message.channel.send(commandsList)
  151. break;
  152. case "hi":
  153. message.channel.send("Hello!")
  154. break;
  155. default:
  156. message.channel.send("Invalid Command");
  157. }
  158. });
  159.  
  160. bot.login(TOKEN);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement