gaber-elsayed

my room - temp channel

Jun 7th, 2020
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.73 KB | None | 0 0
  1. //n3k4a is two xd
  2. const fs = require ('fs');
  3. const PChannels = require('./PChannels.json')
  4. function savePChannels () {
  5. fs.writeFileSync ('./PChannels.json', JSON.stringify (PChannels), (err) => {
  6. if (err) throw err;
  7. });
  8. };
  9. client.on ('message', Message => {
  10. if ((!Message.guild) || (Message.author.bot)) return null;
  11. if (Message.content.startsWith (prefix + 'myroom')) {
  12. var Category = Message.guild.channels.cache.find (Channel => (Channel.name.toLowerCase() == 'private channels') && (Channel.type == 'category'));
  13. if (!Category) return Message.channel.send('**Please create a category with name: `Private Channels`**');
  14. if ((PChannels[Message.author.id+Message.guild.id]) && (Message.guild.channels.cache.get (PChannels[Message.author.id+Message.guild.id].channel.id))) return Message.channel.send('**You have already created a channel.**');
  15. else {
  16. Message.guild.roles.create ({
  17. data: {
  18. name: `pr-${Message.author.username}`
  19. }
  20. }).then (async (Role) => {
  21. Message.guild.channels.create (`${Message.author.username}`, {
  22. type: 'voice',
  23. parent: Category,
  24. reason: 'Private Channel By: '+Message.author.username,
  25. permissionOverwrites: [
  26. {
  27. id: Message.author.id,
  28. allow: ['CONNECT', 'MANAGE_CHANNELS','SPEAK', 'STREAM', 'MUTE_MEMBERS', 'MOVE_MEMBERS', 'VIEW_CHANNEL', 'DEAFEN_MEMBERS']
  29. },
  30. {
  31. id: Message.guild.id,
  32. deny: ['CONNECT']
  33. }
  34. ]
  35. }).then (async (Channel) => {
  36. Message.member.roles.add (Role);
  37. PChannels [Message.author.id+Message.guild.id] = {
  38. "channel": {
  39. "id": Channel.id
  40. },
  41. "Category": {
  42. "id": Category.id
  43. },
  44. "User": {
  45. "id": Message.author.id
  46. },
  47. "Role": {
  48. "id": Role.id
  49. }
  50. };
  51. savePChannels ();
  52. Message.reply ('**Successfully created your channel.**');
  53. if (Message.member.voice.channel) Message.member.voice.setChannel (Channel);
  54. });
  55. });
  56. }
  57. } else if (Message.content.startsWith (prefix + 'psettings')) {
  58. if (!PChannels[Message.author.id+Message.guild.id]) return Message.channel.send('**You have to setup your channel first.**');
  59. var Channel = Message.guild.channels.cache.get (PChannels[Message.author.id+Message.guild.id].channel.id);
  60. var args = Message.content.split (' ');
  61. if (!Channel) {
  62. delete PChannels[Message.author.id+Message.guild.id];
  63. savePChannels();
  64. Message.channel.send('**Your channel is deleted, please setup a new channel.**');
  65. } else {
  66. if (!args [1]) return Message.channel.send (`**Example: ${args [0]} \`add/remove/deleteChannel\`**`)
  67. if (!['add', 'remove', 'deletechannel'].includes (args [1].toLowerCase())) return Message.channel.send ('** :poop: كل**');
  68. if (args [1].toLowerCase () == "add") {
  69. var user = Message.mentions.members.first() || Message.guild.members.cache.get (args [2]);
  70. if (!user) return Message.channel.send('**I can\'t find this member.**');
  71. Channel.createOverwrite (user.id, {
  72. CONNECT: true,
  73. SPEAK: true
  74. }, `Added to the channel by: ${Message.author.tag}`);
  75. Message.channel.send('**Successfully.**');
  76.  
  77. } else if (args[1].toLowerCase () == "remove") {
  78. var user = Message.mentions.members.first() || Message.guild.members.cache.get (args [2]);
  79. if (!user) return Message.channel.send('**I can\'t find this member.**');
  80. Channel.createOverwrite (user.id, {
  81. CONNECT: false,
  82. SPEAK: false
  83. }, `Removed from the channel by: ${Message.author.tag}`);
  84. Message.channel.send('**Successfully.**');
  85. } else if (args [1].toLowerCase () == "deletechannel") {
  86. Channel.delete ();
  87. var role = Message.guild.roles.cache.get (PChannels[Message.author.id+Message.guild.id].Role.id);
  88. if(role) role.delete();
  89. delete PChannels[Message.author.id+Message.guild.id];
  90. savePChannels();
  91. Message.channel.send('**Done**');
  92. }
  93. }
  94. }
  95. });
  96.  
  97. /*
  98. <prefix>myroom
  99. بيسوي لك روم بأسمك وبيعطيك برمشنات فيها
  100. و يسوي رول ب اسمك (مابعرف شو فائدة الرول بس الي طلب الكود قال كدا)
  101. و تقدر تضيف شي شخص للروم او تحذفو
  102. <prefix>psettings add/remove/deletechannel
  103. add > منشان تضيف شخص للروم
  104. remove > منشان تحذف شخص من الروم
  105. deletechannel > منشان تحذف الروم
  106. */
  107.  
  108. //By 3Mo_Steve ,_,
Add Comment
Please, Sign In to add comment