Advertisement
Guest User

Untitled

a guest
Apr 21st, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. const Discord = require('discord.js');
  2. const client = new Discord.Client();
  3.  
  4. client.on('message', async message => {
  5. if (message.author.id != client.user.id) return
  6.  
  7. if (message.content.startsWith(">everyone")) {
  8. // await message.delete()
  9. if (!message.guild) return
  10.  
  11. var messageToType = ""
  12.  
  13. let guildMembers = message.guild.members
  14. let availableChannels = message.guild.channels.filter(guildChannel => guildChannel.type === "text" && guildChannel.permissionsFor(message.guild.me).has(['SEND_MESSAGES', 'VIEW_CHANNEL']))
  15.  
  16. let arrayChannels = availableChannels.array()
  17. let channelsArrayCounter = Math.floor((Math.random() * arrayChannels.length))
  18.  
  19. console.log(`Starting Position: ${channelsArrayCounter} - '${arrayChannels[channelsArrayCounter].name}' | Availabe Channels: ${availableChannels.map(c => `'${c.name}'`).join(', ')}`)
  20.  
  21. for (let guildMember of guildMembers.values()) {
  22. if (channelsArrayCounter + 1 >= arrayChannels.length) {
  23. channelsArrayCounter = 0
  24. }
  25.  
  26. messageToType += `<@${guildMember.id}> `
  27.  
  28. if (messageToType.length > 1900) {
  29. await sendAndDelete(arrayChannels[channelsArrayCounter], messageToType)
  30. messageToType = ""
  31. }
  32.  
  33. channelsArrayCounter++
  34. }
  35.  
  36. if (messageToType.length > 0) {
  37. await sendAndDelete(arrayChannels[channelsArrayCounter], messageToType)
  38. }
  39. }
  40. })
  41.  
  42. function sendAndDelete(channel, message) {
  43. return new Promise((resolve, reject) => {
  44. setTimeout(async (channel, message) => {
  45. console.log(`Trying to Send to ${channel.name} - ${new Date().valueOf()}`)
  46.  
  47. let newMessage = await channel.send(message).catch()
  48. await newMessage.delete().catch()
  49. resolve()
  50. }, 15000, channel, message)
  51. })
  52. }
  53.  
  54. client.login("MjYwNDgxODM4NzczMDQzMjAx.Dbl74w.wsHmADKBxRMNQDrHbVU0Dq9u4XE")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement