n3k4a

Untitled

May 26th, 2020
236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.27 KB | None | 0 0
  1. /*
  2. requirements : npm i cooldown
  3. */
  4.  
  5. const cooldown = new Set()
  6.  
  7. client.on("message", async message => {
  8. let msgCount = 0;
  9.  
  10. let errorCount = 0;
  11.  
  12. let successCount = 0;
  13. let sent = '📤';
  14. let cant = '❌';
  15. let rcv = '📥';
  16. if(message.author.bot) return;
  17. if(message.channel.type === 'dm') return;
  18. if(!message.content.startsWith(prefix)) return;
  19.  
  20. let args = message.content.slice(prefix.length).trim().split(/ +/g);
  21. let command = args.shift().toLocaleLowerCase()
  22. switch (command) {
  23. case "bc" :
  24. if(!message.member.hasPermission("MANAGE_MESSAGES")) return message.reply("**U don't have `Manage_Messages` permission**")
  25. if(!args[0]) return;
  26.  
  27. var args2 = args.slice(1).join(" ").replace('[sender]', message.author.username).replace('[server]', message.guild.name).replace('[channel]', message.channel.name).replace('[members]', message.guild.members.size).replace('[owner]', message.guild.owner.user.username).replace('[roles]', message.guild.roles.size).replace('[online]', message.guild.members.filter(m=>m.presence.status == 'online').size + message.guild.members.filter(m=>m.presence.status == 'dnd').size + message.guild.members.filter(m=>m.presence.status == 'idle').size).replace('[offline]', message.guild.members.filter(m=>m.presence.status == 'offline').size)
  28. if(args[0] === message.guild.roles.find(r => r.id === args[0]) || message.guild.roles.find(r => r.name.toLowerCase().includes(args[0]))){
  29. if(!args[1]) return;
  30. let getRole = message.guild.roles.find(r => r.id === args[0]) || message.guild.roles.find(r => r.name.toLowerCase().includes(args[0]));
  31. if (cooldown.has(message.author.id)) {
  32. if(message.author.bot) return;
  33. return message.reply("U have to wait 2 Hours for using this cmd again").then(message => {
  34. message.delete(5000)
  35. })
  36. }
  37. cooldown.add(message.author.id);
  38. setTimeout(() => {
  39. cooldown.delete(message.author.id);
  40.  
  41. }, 7200000);
  42.  
  43. let embed = new Discord.RichEmbed()
  44. .setTitle(`**Brodcast Info**`)
  45. .setDescription(`- **${getRole} Memebrs**: `+'`'+`${getRole.members.size}`+'`\n'+
  46. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  47. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  48. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  49. .setFooter(client.user.username, client.user.avatarURL)
  50. message.channel.send(embed).then(msg => {
  51.  
  52. message.guild.members.filter(m => m.roles.find(r => r.name.toLowerCase().includes(args[0])) || m.roles.find(r => r.id === args[0])).forEach(g => {
  53.  
  54. g.send(args2).then(() => { //!Baron#0001
  55.  
  56. successCount++;
  57.  
  58. msgCount++;
  59. let embed = new Discord.RichEmbed()
  60. .setTitle(`**Brodcast Info**`)
  61. .setDescription(`- **${getRole} Memebrs**: `+'`'+`${getRole.members.size}`+'`\n'+
  62. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  63. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  64. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  65. .setFooter(client.user.username, client.user.avatarURL)
  66. msg.edit(embed);
  67.  
  68. }).catch(e => {
  69.  
  70. errorCount++;
  71.  
  72. msgCount++;
  73. let embed = new Discord.RichEmbed()
  74. .setTitle(`**Brodcast Info**`)
  75. .setDescription(`- **${getRole} Memebrs**: `+'`'+`${getRole.members.size}`+'`\n'+
  76. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  77. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  78. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  79. .setFooter(client.user.username, client.user.avatarURL)
  80. msg.edit(embed);
  81.  
  82. });
  83.  
  84. });
  85. }) //!Baron#0001
  86.  
  87.  
  88. }
  89. if(args[0] === 'online'){
  90. if(!args[1]) return;
  91. if (cooldown.has(message.author.id)) {
  92. if(message.author.bot) return;
  93. return message.reply("U have to wait 2 Hours for using this cmd again").then(message => {
  94. message.delete(5000)
  95. })
  96. }
  97. cooldown.add(message.author.id);
  98. setTimeout(() => {
  99. cooldown.delete(message.author.id);
  100.  
  101. }, 7200000);
  102. let embed = new Discord.RichEmbed()
  103. .setTitle(`**Brodcast Info**`)
  104. .setDescription(`- **Online Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'online').size}`+'`\n'+
  105. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  106. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  107. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  108. .setFooter(client.user.username, client.user.avatarURL)
  109. message.channel.send(embed).then(msg => {
  110.  
  111. message.guild.members.filter(m => m.presence.status === 'dnd').forEach(g => {
  112.  
  113. g.send(args2).then(() => {
  114.  
  115. successCount++;
  116.  
  117. msgCount++;
  118. let embed = new Discord.RichEmbed()
  119. .setTitle(`**Brodcast Info**`)
  120. .setDescription(`- **Online Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'online').size}`+'`\n'+
  121. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  122. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  123. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  124. .setFooter(client.user.username, client.user.avatarURL)
  125. msg.edit(embed);
  126.  
  127. }).catch(e => {
  128.  
  129. errorCount++;
  130.  
  131. msgCount++;
  132. let embed = new Discord.RichEmbed()
  133. .setTitle(`**Brodcast Info**`)
  134. .setDescription(`- **Online Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'online').size}`+'`\n'+
  135. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  136. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  137. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  138. .setFooter(client.user.username, client.user.avatarURL)
  139. msg.edit(embed);
  140.  
  141. });
  142.  
  143. });
  144. })
  145. }
  146. if(args[0] === 'dnd'){
  147. if(!args[1]) return;
  148. if (cooldown.has(message.author.id)) {
  149. if(message.author.bot) return;
  150. return message.reply("U have to wait 2 Hours for using this cmd again").then(message => {
  151. message.delete(5000)
  152. })
  153. }
  154. cooldown.add(message.author.id);
  155. setTimeout(() => {
  156. cooldown.delete(message.author.id);
  157.  
  158. }, 7200000);
  159. let embed = new Discord.RichEmbed()
  160. .setTitle(`**Brodcast Info**`)
  161. .setDescription(`- **Dnd Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'dnd').size}`+'`\n'+
  162. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  163. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  164. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  165. .setFooter(client.user.username, client.user.avatarURL)
  166. message.channel.send(embed).then(msg => {
  167.  
  168. message.guild.members.filter(m => m.presence.status === 'dnd').forEach(g => {
  169.  
  170. g.send(args2).then(() => {
  171.  
  172. successCount++;
  173.  
  174. msgCount++;
  175. let embed = new Discord.RichEmbed()
  176. .setTitle(`**Brodcast Info**`)
  177. .setDescription(`- **Dnd Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'dnd').size}`+'`\n'+
  178. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  179. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  180. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  181. .setFooter(client.user.username, client.user.avatarURL)
  182. msg.edit(embed);
  183.  
  184. }).catch(e => {
  185.  
  186. errorCount++;
  187.  
  188. msgCount++;
  189. let embed = new Discord.RichEmbed()
  190. .setTitle(`**Brodcast Info**`)
  191. .setDescription(`- **Dnd Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'dnd').size}`+'`\n'+
  192. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  193. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  194. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  195. .setFooter(client.user.username, client.user.avatarURL)
  196. msg.edit(embed);
  197.  
  198. });
  199.  
  200. }); //!Baron#0001
  201. })
  202. }
  203. if(args[0] === 'idle'){
  204. if(!args[1]) return;
  205. if (cooldown.has(message.author.id)) {
  206. if(message.author.bot) return;
  207. return message.reply("U have to wait 2 Hours for using this cmd again").then(message => {
  208. message.delete(5000)
  209. })
  210. }
  211. cooldown.add(message.author.id);
  212. setTimeout(() => {
  213. cooldown.delete(message.author.id);
  214.  
  215. }, 7200000);
  216. let embed = new Discord.RichEmbed()
  217. .setTitle(`**Brodcast Info**`)
  218. .setDescription(`- **Idle Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'idle').size}`+'`\n'+
  219. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  220. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  221. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  222. .setFooter(client.user.username, client.user.avatarURL)
  223. message.channel.send(embed).then(msg => {
  224.  
  225. message.guild.members.filter(m => m.presence.status === 'idle').forEach(g => {
  226.  
  227. g.send(args2).then(() => {
  228.  
  229. successCount++;
  230.  
  231. msgCount++;
  232. let embed = new Discord.RichEmbed()
  233. .setTitle(`**Brodcast Info**`)
  234. .setDescription(`- **Idle Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'idle').size}`+'`\n'+
  235. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  236. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  237. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  238. .setFooter(client.user.username, client.user.avatarURL)
  239. msg.edit(embed);
  240.  
  241. }).catch(e => {
  242.  
  243. errorCount++;
  244.  
  245. msgCount++;
  246. let embed = new Discord.RichEmbed()
  247. .setTitle(`**Brodcast Info**`)
  248. .setDescription(`- **Idle Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'idle').size}`+'`\n'+
  249. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  250. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  251. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  252. .setFooter(client.user.username, client.user.avatarURL)
  253. msg.edit(embed);
  254.  
  255. });
  256.  
  257. });
  258. })
  259. }
  260. if(args[0] === 'offline'){
  261. if(!args[1]) return;
  262. if (cooldown.has(message.author.id)) {
  263. if(message.author.bot) return;
  264. return message.reply("U have to wait 2 Hours for using this cmd again").then(message => {
  265. message.delete(5000)
  266. })
  267. }
  268. cooldown.add(message.author.id);
  269. setTimeout(() => {
  270. cooldown.delete(message.author.id); //!Baron#0001
  271.  
  272. }, 7200000);
  273. let embed = new Discord.RichEmbed()
  274. .setTitle(`**Brodcast Info**`)
  275. .setDescription(`- **Offline Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'offline').size}`+'`\n'+
  276. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  277. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  278. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  279. .setFooter(client.user.username, client.user.avatarURL)
  280. message.channel.send(embed).then(msg => {
  281.  
  282. message.guild.members.filter(m => m.presence.status === 'offline').forEach(g => {
  283.  
  284. g.send(args2).then(() => {
  285.  
  286. successCount++;
  287.  
  288. msgCount++;
  289. let embed = new Discord.RichEmbed() //!Baron#0001
  290. .setTitle(`**Brodcast Info**`)
  291. .setDescription(`- **Offline Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'offline').size}`+'`\n'+
  292. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  293. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  294. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  295. .setFooter(client.user.username, client.user.avatarURL)
  296. msg.edit(embed);
  297.  
  298. }).catch(e => {
  299.  
  300. errorCount++;
  301.  
  302. msgCount++;
  303. let embed = new Discord.RichEmbed()
  304. .setTitle(`**Brodcast Info**`)
  305. .setDescription(`- **Offline Memebrs**: `+'`'+`${message.guild.members.filter(m=>m.presence.status == 'offline').size}`+'`\n'+
  306. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  307. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  308. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  309. .setFooter(client.user.username, client.user.avatarURL)
  310. msg.edit(embed);
  311.  
  312. });
  313.  
  314. });
  315. })
  316. }
  317. if(args[0] === 'all'){
  318. if(!args[1]) return;
  319. if (cooldown.has(message.author.id)) {
  320. if(message.author.bot) return;
  321. return message.reply("U have to wait 2 Hours for using this cmd again").then(message => {
  322. message.delete(5000)
  323. })
  324. } //!Baron#0001
  325. cooldown.add(message.author.id);
  326. setTimeout(() => {
  327. cooldown.delete(message.author.id);
  328.  
  329. }, 7200000);
  330. let embed = new Discord.RichEmbed()
  331. .setTitle(`**Brodcast Info**`)
  332. .setDescription(`- **All Memebrs**: `+'`'+`${message.guild.memberCount}`+'`\n'+
  333. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  334. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  335. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  336. .setFooter(client.user.username, client.user.avatarURL)
  337. message.channel.send(embed).then(msg => {
  338.  
  339. message.guild.members.forEach(g => {
  340.  
  341. g.send(args2).then(() => {
  342.  
  343. successCount++;
  344.  
  345. msgCount++;
  346. let embed = new Discord.RichEmbed()
  347. .setTitle(`**Brodcast Info**`)
  348. .setDescription(`- **All Memebrs**: `+'`'+`${message.guild.memberCount}`+'`\n'+
  349. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  350. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  351. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  352. .setFooter(client.user.username, client.user.avatarURL)
  353. msg.edit(embed);
  354.  
  355. }).catch(e => {
  356.  
  357. errorCount++;
  358.  
  359. msgCount++;
  360. let embed = new Discord.RichEmbed()
  361. .setTitle(`**Brodcast Info**`)
  362. .setDescription(`- **All Memebrs**: `+'`'+`${message.guild.memberCount}`+'`\n'+
  363. `- Sent messages: `+'`'+`${msgCount}`+'`'+`${sent}\n`+
  364. `- Received messages: `+'`'+`${successCount}`+'`'+`${rcv}\n`+
  365. `- Non-received messages: `+'`'+`${errorCount}`+'`'+`${cant}`)
  366. .setFooter(client.user.username, client.user.avatarURL)
  367. msg.edit(embed);
  368.  
  369. });
  370.  
  371. });//!Baron#0001
  372. })
  373. }
  374. if(args[0] === 'help'){
  375. let space = '⚙️';
  376. let arrow = '📌';
  377. var online = '💚';
  378. var dnd = '❤️';
  379. var idle = '💛';
  380. var offline = '🖤';
  381. let embed = new Discord.RichEmbed()
  382. .setAuthor(message.author.username, message.author.avatarURL)
  383. .setTitle(`**IdiotBot Broadcast Help**`)
  384. .setDescription(`${space}**In fact idiot bot is designed to meet almost all the desires the server owner needs, So we tried to make it as much as possible**\n`+
  385. '**`Commands`**\n'+`${space} `+'**pls bc all <message>**'+` ${arrow} For all members\n`+
  386. `${space} `+'**pls bc online <message>**'+` ${arrow} For specific members with ${online} status\n`+
  387. `${space} `+'**pls bc offline <message>**'+` ${arrow} For specific members with ${offline} status\n`+
  388. `${space} `+'**pls bc idle <message>**'+` ${arrow} For specific members with ${idle} status\n`+
  389. `${space} `+'**pls bc dnd <message>**'+` ${arrow} For specific members with ${dnd} status\n`+
  390. `${space} `+'**pls bc role-name/role-id <message>**'+` ${arrow} For members with specific role\n`)
  391. .addField(`**Replacements**`, `**[sender]\n
  392. [server]\n
  393. [channel]\n
  394. [owner]**`, true)
  395. .addField(`**Replacements**`, `**[members]\n
  396. [roles]\n
  397. [online]\n
  398. [offline]**`, true)
  399. message.channel.send(embed)
  400. }
  401. }
  402. })
Add Comment
Please, Sign In to add comment