Advertisement
Guest User

Untitled

a guest
Jul 18th, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.10 KB | None | 0 0
  1. const Discord = require('discord.js');
  2. const hero = new Discord.Client();
  3. const prefix = "-";
  4. const category = "601489681477140501";
  5. const devs = ["312930769406394368", ""];
  6. let mtickets = true;
  7. let tchannels = [];
  8. let current = 0;
  9.  
  10. hero.login(process.env.BOT_TOKEN);
  11.  
  12. const blacklist = JSON.parse(fs.readFileSync('./blacklist.json' , 'utf8'));
  13.  
  14. hero.on("message", message => {
  15. let mention = message.mentions.users.first();
  16. if(message.content.startsWith(prefix + "addblacklist")) {
  17. if(!mention) return message.channel.send("Please Mention The User")
  18. if(blacklist[message.guild.id] === undefined) blacklist[message.guild.id] = {
  19. blacklisted: []
  20. };
  21. blacklist[message.guild.id].blacklisted.push(mention.id);
  22. save()
  23. message.channel.send("Member Added To The Blacklist ")
  24. }
  25. if(message.content.startsWith(prefix + "removeblacklist")) {
  26. if(!mention) return message.channel.send("Please Mention The User")
  27. if(blacklist[message.guild.id] === undefined) blacklist[message.guild.id] = {
  28. blacklisted: []
  29. };
  30. if(!blacklist[message.guild.id].includes(mention.id)) return message.channel.send("This User Is Not In The Blacklist")
  31. blacklist[message.guild.id].blacklisted = blacklist[message.guild.id].blacklisted.filter(x=> x !== mention.id);
  32. message.channel.send("Member Removed From The Blacklist ")
  33. save()
  34. }
  35. })
  36.  
  37. function save() {
  38. fs.writeFileSync("./blacklist.json", JSON.stringify(blacklist, null, 4));
  39. console.log("saved")
  40. }
  41.  
  42.  
  43. hero.on('ready',async () => console.log(` - " ${hero.user.username} " , Tickety is ready to work.`));
  44. hero.on('message',async message => {
  45. const emojis = { true: `${hero.guilds.find(r => r.id === '582426603955552268').emojis.find(e => e.name === 'true')}`, false: `${hero.guilds.find(r => r.id === '582426603955552268').emojis.find(e => e.name === 'false')}`, stf: `${hero.guilds.find(r => r.id === '582426603955552268').emojis.find(e => e.name === 'stf')}` };
  46. if(message.author.bot || message.channel.type === 'dm') return;
  47. let args = message.content.split(" ");
  48. let author = message.author.id;
  49. if(args[0].toLowerCase() === `${prefix}help`) {
  50. let embed = new Discord.RichEmbed()
  51. .setAuthor(message.author.username, message.author.avatarURL)
  52. .setThumbnail(message.author.avatarURL)
  53. .setColor("#36393e")
  54. .addField(`❯ لعمل تكت, \`${prefix}new\``, `» Syntax: \`${prefix}new [Reason]\`\n» Description: **لعمل روم فقط يظهر لك ولأدارة السيرفر.**`)
  55. .addField(`❯ قائمة الأوامر, \`${prefix}help\``, `» Syntax: \`${prefix}help\`\n» Description: **يظهر لك جميع اوامر البوت.**`)
  56. .addField(`❯ لإيقاف الأعضاء من عمل تكتات, \`${prefix}mtickets\``, `» Syntax: \`${prefix}mtickets [Disable/Enable]\`\n» Description: **لجعل جميع اعضاء السيرفر غير قادرون على عمل تكت.**`)
  57. .addField(`❯ لأقفال جميع التكتات المفتوحة, \`${prefix}deletetickets\``, `» Syntax: \`${prefix}deletetickets\`\n» Description: **لمسح جميع رومات التكتات المفتوحة في السيرفر**`)
  58. .addField(`❯ ل اعادة تسمية التكت, \`${prefix}rename\``, `» Syntax: \`${prefix}rename\`\n» Description: **ل اعادة تسمية التكت**`)
  59. .addField(`❯ لقفل التكت المفتوح, \`${prefix}close\``, `» Syntax: \`${prefix}close\`\n» Description: **لأقفال تكت.**\n\n للمزيد من المعلومات تواصل مع احد ادارة سيرفر فارتنيز.`)
  60. await message.channel.send(`${emojis.stf}, **هذه قائمة بجميع اوامر البوت.**`);
  61. await message.channel.send(embed);
  62. } else if(args[0].toLowerCase() === `${prefix}new`) {
  63. if(blacklist[message.guild.id].blacklisted.includes(message.author.id)) return message.channel.send("You Cant Use This Command Becouse You Are In The Blacklist !")
  64.  
  65. if(blacklist[message.guild.id] === undefined) blacklist[message.guild.id] = {
  66. blacklisted: []
  67. };
  68.  
  69. if(mtickets === false) return message.channel.send(`${emojis.false}, **تم ايقاف هذه الخاصية من قبل احد ادارة السيرفر**`);
  70. if(!message.guild.me.hasPermission("MANAGE_CHANNELS")) return message.channel.send(`${emojis.false}, **البوت لا يملك صلاحيات لصنع الروم**`);
  71. console.log(current);
  72. let openReason = "";
  73. current++;
  74. message.guild.createChannel(`vrticktes-${current}`, 'text').then(c => {
  75. tchannels.push(c.id);
  76. c.setParent(category);
  77. message.channel.send(`${emojis.true}, **تم عمل التكت.**`);
  78. c.overwritePermissions(message.guild.id, {
  79. READ_MESSAGES: false,
  80. SEND_MESSAGES: false
  81. });
  82. c.overwritePermissions(message.author.id, {
  83. READ_MESSAGES: true,
  84. SEND_MESSAGES: true
  85. });
  86.  
  87. if(args[1]) openReason = `\nسبب فتح التكت , " **${args.slice(1).join(" ")}** "`;
  88. let embed = new Discord.RichEmbed()
  89. .setAuthor(message.author.username, message.author.avatarURL)
  90. .setColor("#36393e")
  91. .setDescription(`**انتظر قليلا الى حين رد الادارة عليك**${openReason}`);
  92. c.send(`${message.author}`);
  93. c.send(embed);
  94. });
  95. } else if(args[0].toLowerCase() === `${prefix}mtickets`) {
  96. if(!message.member.hasPermission("MANAGE_GUILD")) return message.channel.send(`${emojis.false}, **أنت لست من ادارة السيرفر لتنفيذ هذا الأمر.**`);
  97. if(args[1] && args[1].toLowerCase() === "enable") {
  98. mtickets = true;
  99. message.channel.send(`${emojis.true}, **تم تفعيل التكتات , الاَن يمكن لأعضاء السيرفر استخدام امر انشاء التكت**`);
  100. } else if(args[1] && args[1].toLowerCase() === "disable") {
  101. mtickets = false;
  102. message.channel.send(`${emojis.false}, **تم اغلاق نظام التكتات , الاَن لا يمكن لأي عضو استخدام هذا الأمر**`);
  103. } else if(!args[1]) {
  104. if(mtickets === true) {
  105. mtickets = false;
  106. message.channel.send(`${emojis.false}, **تم اغلاق نظام التكتات , الاَن لا يمكن لأي عضو استخدام هذا الأمر**`);
  107. } else if(mtickets === false) {
  108. mtickets = true;
  109. message.channel.send(`${emojis.true}, **تم تفعيل التكتات , الاَن يمكن لأعضاء السيرفر استخدام امر انشاء التكت**`);
  110. }
  111. }
  112. } else if(args[0].toLowerCase() === `${prefix}close`) {
  113. if(!message.member.hasPermission("MANAGE_GUILD")) return message.channel.send(`${emojis.false}, **أنت لست من ادارة السيرفر لتنفيذ هذا الأمر.**`);
  114. if(!message.channel.name.startsWith('vrticktes-') && !tchannels.includes(message.channel.id)) return message.channel.send(`${emojis.false}, **هذا الروم ليس من رومات التكت.**`);
  115.  
  116. message.channel.send(`${emojis.true}, **سيتم اغلاق الروم في 3 ثواني من الاَن.**`);
  117. tchannels.splice( tchannels.indexOf(message.channel.id), 1 );
  118. setTimeout(() => message.channel.delete(), 3000);
  119. } else if(args[0].toLowerCase() === `${prefix}restart`) {
  120. if(!devs.includes(message.author.id)) return message.channel.send(`${emojis.false}, **أنت لست من ادارة السيرفر لأستخدام هذا الأمر.**`);
  121. message.channel.send(`${emojis.true}, **جارى اعادة تشغيل البوت.**`);
  122. hero.destroy();
  123. hero.login(process.env.BOT_TOKEN);
  124. } else if(args[0].toLowerCase() === `${prefix}deletetickets`) {
  125. let iq = 0;
  126. for(let q = 0; q < tchannels.length; q++) {
  127. let c = message.guild.channels.get(tchannels[q]);
  128. if(c) {
  129. c.delete();
  130. tchannels.splice( tchannels[q], 1 );
  131. iq++;
  132. }
  133. if(q === tchannels.length - 1 || q === tchannels.lengh + 1) {
  134. message.channel.send(`${emojis.true}, **تم مسح \`${iq}\` من التكتات.**`);
  135. }
  136. }
  137. }
  138. });
  139. hero.on("message", message => {
  140. if(message.author.bot) return;
  141. if(message.content.startsWith(prefix + "rename")) {
  142. const emoji = hero.emojis.get("598489425168564224");
  143. let args = message.content.split(" ").slice(1)
  144. if(!args) return message.channel.send("Please Type The New Name Of This Channel")
  145. let ch = message.guild.channels.find("name", message.channel.name)
  146.  
  147. ch.edit({ name: `${args}` }).then(() => {
  148. message.channel.send(`**${args} تم تغير أسم التكت بنجاح الى **, ${emoji}`)
  149. })
  150. }
  151. if(message.content.startsWith(prefix + "resetcounter")) {
  152. current = 0
  153. message.channel.send("The Tickets Counter Has Been Reset")
  154. }
  155. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement