· 6 years ago · Dec 24, 2019, 04:56 PM
1//ملف:server.js
2/////
3const http = require("http");
4const express = require("express");
5const app = express();
6app.get("/", (request, response) => {
7 response.sendStatus(200);
8});
9app.listen(process.env.PORT);
10setInterval(() => {
11 http.get(`http://.glitch.me/`);
12}, 280000);
13
14// كل البكجات الي ممكن تحتجها في اي بوت
15const { Client, RichEmbed } = require("discord.js");
16var { Util } = require("discord.js");
17const { TOKEN, YT_API_KEY, prefix, devs } = require("./config");
18const client = new Client({ disableEveryone: true });
19const ytdl = require("ytdl-core");
20const canvas = require("canvas");
21const Canvas = require("canvas");
22const convert = require("hh-mm-ss");
23const fetchVideoInfo = require("youtube-info");
24const botversion = require("./package.json").version;
25const simpleytapi = require("simple-youtube-api");
26const moment = require("moment");
27const fs = require("fs");
28const util = require("util");
29const gif = require("gif-search");
30const opus = require("node-opus");
31const ms = require("ms");
32const jimp = require("jimp");
33const { get } = require("snekfetch");
34const guild = require("guild");
35const dateFormat = require("dateformat"); //npm i dateformat
36const YouTube = require("simple-youtube-api");
37const youtube = new YouTube("AIzaSyAdORXg7UZUo7sePv97JyoDqtQVi3Ll0b8");
38const hastebins = require("hastebin-gen");
39const getYoutubeID = require("get-youtube-id");
40const yt_api_key = "AIzaSyDeoIH0u1e72AtfpwSKKOSy3IPp2UHzqi4";
41const pretty = require("pretty-ms");
42client.login(TOKEN);
43const queue = new Map();
44var table = require("table").table;
45const Discord = require("discord.js");
46client.on("ready", () => {
47 console.log(`Logged in as ${client.user.tag}!`);
48});
49console.log("==================================");
50console.log("1");
51console.log("2");
52console.log("3");
53console.log("=========> Bot Online <=========");
54console.log("========> TestBot <========");
55console.log("=======> Token Bot **** <=======");
56console.log("3");
57console.log("2");
58console.log("1");
59console.log("====================================");
60console.log("Bot Online 24/7");
61///
62//الاكواد
63
64const dev = ["544225475686301736"];
65const admin = "-";
66var owner = "544225475686301736"; // Owner Bot Mention
67var number = "1"; // Unmber Bot
68var ex = "2019/10/08";
69client.on("message", message => {
70 var argresult = message.content
71 .split(` `)
72 .slice(1)
73 .join(" ");
74 if (!dev.includes(message.author.id)) return;
75 if (message.content === admin + "vip") {
76 if (message.author.bot) return;
77 if (!message.guild)
78 return message.reply("**This Command Just In Servers**");
79 message.channel.send("> **# - `Premium Info` » **" + `${message.author}`);
80 message.channel.sendMessage(
81 `> **# - Premium Number:** **[** ${number} **]**\n> **# - Ends in:** **[** ${ex} **]**\n> **# - Owner:** **[** <@${owner}> **]**`
82 );
83 }
84});
85
86
87client.on("ready", () => {
88 console.log(`----------------`);
89 console.log(`abdo`);
90 console.log(`----------------`);
91 console.log(`ON ${client.guilds.size} Servers ' Script By : abdo `);
92 console.log(`----------------`);
93 console.log(`Logged in as ${client.user.tag}!`);
94 client.user.setActivity(`-help | Premium `, "http://twitch.tv/abdo_yt190");
95 client.user.setStatus("stream");
96});
97
98
99client.on("message", message => {
100 if (message.author.bot) return;
101 if (!message.content.startsWith(prefix)) return;
102
103 let command = message.content.split(" ")[0];
104 command = command.slice(prefix.length);
105
106 let args = message.content.split(" ").slice(1);
107
108 if (command == "say") {
109 if (!message.member.hasPermission("ADMINISTRATOR"))
110 return message.channel.send("?|**`ADMINISTRATOR`ليس لديك صلاحيات`** ");
111
112 message.channel.sendMessage(args.join(" "));
113 message.delete();
114 }
115});
116
117client.on("message", message => {
118 if (message.content.startsWith("-new")) {
119 const reason = message.content
120 .split(" ")
121 .slice(1)
122 .join(" ");
123 if (!message.guild.roles.exists("name", "Weso Team"))
124 return message.channel.send(
125 `This server doesn't have a \`Weso Team\` role made, so the ticket won't be opened.\nIf you are an administrator, make one with that name exactly and give it to users that should be able to see tickets. لازم تسوي رتبة اسمها \`Weso Team\`.`
126 );
127 if (
128 message.guild.channels.exists(
129 "name",
130 "ticket-{message.author.id}" + message.author.id
131 )
132 )
133 return message.channel.send(`You already have a ticket open.`);
134 message.guild
135 .createChannel(`ticket-${message.author.username}`, "text")
136 .then(c => {
137 let role = message.guild.roles.find("name", "Weso Team");
138 let role2 = message.guild.roles.find("name", "@everyone");
139 c.overwritePermissions(role, {
140 SEND_MESSAGES: true,
141 READ_MESSAGES: true
142 });
143 c.overwritePermissions(role2, {
144 SEND_MESSAGES: false,
145 READ_MESSAGES: false
146 });
147 c.overwritePermissions(message.author, {
148 SEND_MESSAGES: true,
149 READ_MESSAGES: true
150 });
151 message.channel.send(
152 `:white_check_mark: Your ticket has been created, #${c.name}.`
153 );
154 const embed = new Discord.RichEmbed()
155 .setColor(0xcf40fa)
156 .addField(
157 `Hey ${message.author.username}!`,
158 `Please try explain why you opened this ticket with as much detail as possible. Our **Support Staff** will be here soon to help.`
159 )
160 .setTimestamp();
161 c.send({
162 embed: embed
163 });
164 })
165 .catch(console.error);
166 }
167});
168
169client.on("message", async message => {
170 if (!message.guild || message.author.bot) return;
171 let args = message.content.split(" ");
172 if (args[0] == `${prefix}cr`) {
173 if (
174 !message.guild.me.hasPermission("MANAGE_ROLES") ||
175 !message.member.hasPermission("MANAGE_ROLES")
176 )
177 return;
178 if (!args[1] || !args[2])
179 return message.reply(
180 `Usage: ${args[0]} [role color] [role name]\nExample: ${
181 args[0]
182 } blue Admin`
183 );
184 try {
185 let role = await message.guild.createRole({
186 name: args.slice(2).join(" ") || "new role",
187 color: args[1].toUpperCase() || null
188 });
189 await message.reply(`Done, Created **${role.name}** role!`);
190 } catch (e) {
191 message.reply(`Error! ${e.message || e}`);
192 }
193 }
194});
195
196client.on("message", async message => {
197 if (!message.guild || message.author.bot) return;
198 let args = message.content.split(" ");
199 if (args[0] == `${prefix}nickall`) {
200 if (
201 !message.member.hasPermission("MANAGE_NICKNAMES") ||
202 !message.guild.me.hasPermission("MANAGE_NICKNAMES")
203 )
204 return;
205 if (!args[1])
206 return message.reply("Type the nickname ( [name] = member username ).");
207 let members = message.guild.members.filter(m => m.manageable);
208 message.channel.send(`Changing nickname for ${members.size} members.`);
209 members.forEach((m, i) => {
210 setTimeout(() => {
211 m.setNickname(
212 args
213 .slice(1)
214 .join(" ")
215 .replace("[name]", m.user.username)
216 ).catch(e => {
217 message.channel.send(
218 `Could not change nickname for **${m.user.tag}**.`
219 );
220 });
221 }, 2000 * i);
222 });
223 }
224});
225
226client.on("message", pixelbot => {
227 // itzZa1D - Codes Team.
228 if (pixelbot.content.startsWith(prefix + "user")) {
229 // itzZa1D - Codes Team.
230 if (pixelbot.author.bot) return;
231 if (!pixelbot.guild)
232 return pixelbot.reply("**:x: - This Command is only done on Servers**");
233 pixelbot.guild.fetchInvites().then(invites => {
234 // itzZa1D - Codes Team.
235 let personalInvites = invites.filter(
236 i => i.inviter.id === pixelbot.author.id
237 );
238 let inviteCount = personalInvites.reduce((p, v) => v.uses + p, 0);
239 var roles = pixelbot.member.roles
240 .map(roles => `**__${roles.name}__ |**`)
241 .join(` `);
242 let pixeluser = new Discord.RichEmbed() // itzZa1D - Codes Team.
243 .setColor("#00000")
244 .setTitle(" :beginner: :heartpulse: | Use r Info") // itzZa1D - Codes Team.
245 .setAuthor(pixelbot.author.username, pixelbot.author.avatarURL)
246 .addField("**✽ Name :** ", pixelbot.author.username, true)
247 .addField("**✽ Tag :** ", pixelbot.author.discriminator, true)
248 .addField("**✽ ID :** ", pixelbot.author.id, true) // itzZa1D - Codes Team.
249 .addField(
250 "**✽ Joined At :** ",
251 moment(pixelbot.joinedAt).format("D/M/YYYY h:mm a "),
252 true
253 )
254 .addField(
255 "**✽ Created At :** ",
256 moment(pixelbot.joinedAt).format("D/M/YYYY h:mm a "),
257 true
258 )
259 .addField("**✽ Total invites :** ", inviteCount, true)
260 .setTimestamp(); // itzZa1D - Codes Team.
261
262 pixelbot.channel.sendEmbed(pixeluser).then(c => {}); // itzZa1D - Codes Team.
263 });
264 }
265}); // itzZa1D - Codes Team.
266
267client.on("message", zaid => {
268 if (zaid.content === "-bot") {
269 const bot = new Discord.RichEmbed()
270 .setAuthor(client.user.username, client.user.avatarURL)
271 .setColor("#00000")
272 .addField(
273 "✽ **Bot Ping** : ",
274 `» ${Date.now() - zaid.createdTimestamp}` + " ms",
275 true
276 )
277 .addField("**Servers** : ", `» ${client.guilds.size}`, true)
278 .addField("**Channels** : ", `» ${client.channels.size} `, true)
279 .addField("**Users** : ", `» ${client.users.size} `, true)
280 .addField("**Bot Name** : ", `» ${client.user.tag} `, true)
281 .addField("**Bot Owner** : ", `» <@544225475686301736>`, true) // Change Your ID
282 .setImage(
283 ""
284 )
285 .setFooter(zaid.author.username, zaid.author.avatarURL);
286 zaid.channel.send(bot);
287 }
288});
289
290client.on("message", async message => {
291 if (message.content.startsWith(prefix + "invbot")) {
292 const invite = `**Invite: [No Any Perms](${await client.generateInvite()})\nInvite: [Administrator Perm](${await client.generateInvite(
293 ["ADMINISTRATOR"]
294 )})**`;
295 message.channel.send(invite);
296 }
297});
298
299client.on("message", async message => {
300 if (message.content.startsWith(prefix + "inf")) {
301 //// وهون الامر طبعا
302 let oi = message.mentions.users.first()
303 ? message.mentions.users.first().id
304 : message.author.id;
305 let Tag = message.mentions.users.first()
306 ? message.mentions.users.first().tag
307 : message.author.tag;
308 let Username = message.mentions.users.first()
309 ? message.mentions.users.first().username
310 : message.author.username;
311 let Avatar = message.mentions.users.first()
312 ? message.mentions.users.first().avatarURL
313 : message.author.avatarURL;
314
315 message.guild.fetchInvites().then(invs => {
316 let member = client.guilds.get(message.guild.id).members.get(oi);
317 let personalInvites = invs.filter(i => i.inviter.id === oi);
318 let urll = invs.filter(i => i.inviter.id === oi);
319 let link = urll.reduce(
320 (p, v) =>
321 v.url + ` , Total de membros recrutados no convite: ${v.uses}.\n` + p,
322 `\nServidor: ${message.guild.name} \n `
323 );
324 let inviteCount = personalInvites.reduce((p, v) => v.uses + p, 0);
325 let inviteCode = personalInvites.reduce((p, v) => v.code);
326 let possibleInvites = [["Total de membros recrutados:"]];
327 possibleInvites.push([inviteCount, inviteCode]);
328 let user = message.mentions.users.first() || message.author;
329 let mem = message.guild.member(user);
330 let millisJoined = new Date().getTime() - mem.joinedAt.getTime();
331 let daysJoined = millisJoined / 1000 / 60 / 60 / 24;
332
333 var inviteInfo = new Discord.RichEmbed()
334 .setTitle(`:incoming_envelope: **[INVITE INFO]** ${Username}`)
335 .addField(
336 "**عدد الدعوات للسيرفر**",
337 `**➥** [ شخص **${Number(inviteCount)}** ] `
338 )
339 .addField(
340 "**تاريخ انضمامك لسيرفرنا **",
341 `**➥** [ منذ **${daysJoined.toFixed(0)}** يوم ] `
342 )
343 .addField(
344 "**رابط الدعوة الذي دخلت منه** ",
345 `**➥** [ **https://discord.gg/${inviteCode || "wF7fnzr"}** ] `
346 )
347 .setImage(
348 ""
349 )
350 .setColor("RANDOM")
351 .setTimestamp()
352 .setFooter(Tag, Avatar);
353
354 message.channel.send(inviteInfo);
355 });
356 }
357});
358client.on("message", message => {
359 if (message.author.bot) return; ///Pixel Team
360 if (message.content.startsWith("نظف")) {
361 if (!message.channel.guild)
362 return message.reply(`** This Command For Servers Only**`);
363 if (!message.member.hasPermission("MANAGE_GUILD"))
364 return message.channel.send(`** You don't have Premissions!**`);
365 if (!message.guild.member(client.user).hasPermission("MANAGE_GUILD"))
366 return message.channel.send(`**I don't have Permission!**`);
367 let args = message.content.split(" ").slice(1);
368 let messagecount = parseInt(args);
369 if (args > 100)
370 return message
371 .reply(`** The number can't be more than **100** .**`)
372 .then(messages => messages.delete(5000));
373 if (!messagecount) args = "100";
374 message.channel
375 .fetchMessages({ limit: messagecount })
376 .then(messages => message.channel.bulkDelete(messages))
377 .then(msgs => {
378 message.channel
379 .send(`** Done , Deleted \`${msgs.size}\` messages.** `)
380 .then(messages => messages.delete(5000));
381 });
382 }
383}); ///Zine & Zaid
384
385client.on("message", message => {
386 if (message.content.startsWith(prefix + "linkbot")) {
387 var mbot = message.mentions.members.first();
388 message.channel.send(
389 `https://discordapp.com/api/oauth2/authorize?client_id=${mbot.id}&permissions=0&scope=bot`
390 );
391 }
392});
393
394client.on("message", message => {
395 if (message.content.split(" ")[0] == `=ban`) {
396 if (!message.guild || message.author.bot) return undefined;
397 if (!message.member.hasPermission("BAN_MEMBERS"))
398 return message.channel.send("You don't have permission.");
399 if (!message.guild.member(client.user).hasPermission("BAN_MEMBERS"))
400 return message.channel.send("I don't have permission.");
401 let args = message.content.split(" ").slice(1);
402 let user =
403 message.guild.members.get(message.content.split(" ")[1]) ||
404 message.mentions.members.first();
405 let reason = message.content
406 .split(" ")
407 .slice(2)
408 .join(" ");
409 if (!user)
410 return message.channel.send(`Usage: ${prefix}ban @mention reason`);
411 if (!reason) reason = "No reason provided.";
412 if (user.user.id === message.author.id)
413 return message.channel.send("You can't ban yourself!");
414 if (
415 message.guild.member(user.user).highestRole.position >=
416 message.guild.member(client.user).highestRole.position
417 )
418 return message.channel.send(
419 `I can't ban **${user.user.tag}** because his role highest than my role!`
420 );
421 if (!message.guild.member(user.user).bannable)
422 return message.channel.send(`I can't ban **${user.user.tag}**.`);
423 message.guild.member(user).ban(reason, user);
424 message.channel.send(
425 `Done :+1:, I Banned ${user.user.username} from the server!\nReason: \`\`${reason}\`\``
426 );
427 }
428});
429
430let room = "654777365594898443"; //تعديل مهم ايدي روم عد الاعضاء والترحيب ، روم صوتي
431
432client.on("guildMemberAdd", member => {
433 let guild = client.channels.get(room).guild.id;
434
435 if (member.guild.id != guild) return;
436 client.channels
437 .get(room)
438 .setName("Welcome " + member.user.username)
439 .then(m => {
440 setTimeout(() => {
441 client.channels
442 .get(room)
443 .setName(member.guild.name + " - " + member.guild.members.size);
444 }, 3000);
445 });
446});
447
448client.on("guildMemberRemove", member => {
449 let guild = client.channels.get(room).guild.id;
450
451 if (member.guild.id != guild) return;
452 client.channels
453 .get(room)
454 .setName("Member Left :(")
455 .then(m => {
456 setTimeout(() => {
457 client.channels
458 .get(room)
459 .setName(member.guild.name + " - " + member.guild.members.size);
460 }, 3000);
461 });
462});
463
464client.on("voiceStateUpdate", (oldMember, newMember) => {
465 let guild = client.channels.get(room).guild.id;
466
467 if (oldMember.guild.id != guild) return;
468 let newUserChannel = newMember.voiceChannel;
469 let oldUserChannel = oldMember.voiceChannel;
470 if (oldUserChannel === undefined && newUserChannel !== undefined) {
471 client.channels
472 .get(room)
473 .setName("Hi, " + oldMember.user.username)
474 .then(m => {
475 setTimeout(() => {
476 client.channels
477 .get(room)
478 .setName(
479 oldMember.guild.name + " - " + oldMember.guild.members.size
480 );
481 }, 3000);
482 });
483 } else if (newUserChannel === undefined) {
484 client.channels
485 .get(room)
486 .setName("Bye, " + oldMember.user.username)
487 .then(m => {
488 setTimeout(() => {
489 client.channels
490 .get(room)
491 .setName(
492 oldMember.guild.name + " - " + oldMember.guild.members.size
493 );
494 }, 3000);
495 });
496 }
497});
498
499client.on("message", async message => {
500 let args = message.content.split(" ");
501 if (args[0] == `=kick`) {
502 if (!message.guild || message.author.bot) return undefined;
503 if (
504 !message.member.hasPermission("KICK_MEMBERS") ||
505 !message.guild.member(client.user).hasPermission("KICK_MEMBERS")
506 )
507 return;
508 let user =
509 message.guild.members.get(args[1]) || message.mentions.members.first();
510 let reason = args.slice(2).join(" ");
511 if (!user)
512 return message.channel.send(`**Usage:** ${prefix}kick @member [reason]`);
513 if (!reason) reason = "No reason provided.";
514 if (
515 message.guild.member(user.user).highestRole.position >=
516 message.guild.member(message.member).highestRole.position
517 )
518 return message.channel.send(
519 `You cant kick **${user.user.username}** because his role highest than your role!`
520 );
521 if (
522 message.guild.member(user.user).highestRole.position >=
523 message.guild.member(client.user).highestRole.position
524 )
525 return message.channel.send(
526 `I cant kick **${user.user.username}** because his role highest than my role!`
527 );
528 if (!message.guild.member(user.user).kickable)
529 return message.channel.send(`I cant kick **${user.user.username}**.`);
530 await message.guild.member(user).kick(reason, user);
531 await message.channel.send(
532 `**${user.user.username}** has been kicked from the server! \`\`${reason}\`\``
533 );
534 }
535});
536
537client.on("message", message => {
538 if (message.content.startsWith("-avt")) {
539 if (message.author.bot || message.channel.type == "dm") return;
540 var args = message.content.split(" ")[1];
541 var avt = args || message.author.id;
542 client
543 .fetchUser(avt)
544 .then(user => {
545 avt = user;
546 let avtEmbed = new Discord.RichEmbed()
547 .setColor("#36393e")
548 .setAuthor(`${avt.username}'s Avatar`, message.author.avatarURL)
549 .setImage(avt.avatarURL)
550 .setFooter(`Dar7kz.`, message.client.user.avatarURL);
551 message.channel.send(avtEmbed);
552 })
553 .catch(() => message.channel.send(`Error`));
554 } // Julian
555}); // Codes - Toxic Codes
556
557const SQLite = require("sqlite"); // SQLpackage
558const path = require("path"); // PATHpackage
559const invites = {}; // Codes
560
561client.on("ready", () => {
562 // ready ?
563 client.guilds.forEach(g => {
564 // for each guilds ?
565 g.fetchInvites().then(guildInvites => {
566 // fetch invites ?
567 invites[g.id] = guildInvites; // push guild invites on invites ^^
568 }); // end
569 }); // end
570}); // end
571SQLite.open(path.join(__dirname, "links.sql")) // read path ?
572 .then(() => {
573 // then ?
574 console.log("Opened"); // seccussfull opened
575 SQLite.run(
576 `CREATE TABLE IF NOT EXISTS linkSysteme (code TEXT, id VARCHAR(30))`
577 ); // create table if not exisit
578 }) // end
579 .catch(err => console.error(err)); // on error
580
581client.on("message", async msg => {
582 // message ?
583 if (msg.author.bot || !msg.channel.guild) return; // if bot or private return
584 if (msg.content.startsWith("رابط")) {
585 // message content
586 let invite = await msg.channel
587 .createInvite(
588 {
589 // create invites
590 maxAge: 86400, // one day // limit time for invite ^^
591 maxUses: 5 // 5 people can enter // limit users for invites ^^
592 },
593 `Requested by ${msg.author.tag}`
594 )
595 .catch(console.log); // reason // end
596
597 SQLite.run(
598 `INSERT INTO linkSysteme VALUES ('${invite.code}','${msg.author.id}')`
599 ); // insert into table
600 msg.author.send(
601 invite
602 ? /*seccussfull*/ `**مدة الرابط : يـوم عدد استخدامات الرابط : 5 **:\n ${invite}` /*error catch*/
603 : "يوجد خلل في البوت :( \n يتم حل المشكل قريبا ..."
604 );
605 }
606});
607
608client.on("message", message => {
609 if (message.content.startsWith(prefix + "server")) {
610 if (!message.channel.guild)
611 return message.channel.send(` | This Command is used only in servers!`);
612 const millis = new Date().getTime() - message.guild.createdAt.getTime();
613 const now = new Date();
614 const verificationLevels = ["None", "Low", "Medium", "Insane", "Extreme"];
615 const days = millis / 1000 / 60 / 60 / 24;
616 var embed = new Discord.RichEmbed()
617 .setAuthor(message.guild.name, message.guild.iconURL)
618 .addField(":id:✽** Server ID:**", `» ${message.guild.id} `, true)
619 .addField(
620 ":calendar:✽** Created On**",
621 `» ${message.guild.createdAt.toLocaleString()}`,
622 true
623 )
624 .addField(":crown: ✽**Server Owner**", `**${message.guild.owner}**`, true)
625 .addField(
626 `✽** Members ** [${message.guild.members.size}]`,
627 `**${
628 message.guild.members.filter(c => c.presence.status !== "offline")
629 .size
630 }** **Online**`,
631 true
632 )
633 .addField(
634 ":speech_balloon:✽** Channels **",
635 `» **${message.guild.channels.filter(m => m.type === "text").size}**` +
636 " TexT | VoicE " +
637 `**${message.guild.channels.filter(m => m.type === "voice").size}** `,
638 true
639 )
640 .addField(":earth_africa:✽** Region **", ` ${message.guild.region}`, true)
641 .setImage(
642 ""
643 )
644
645 .setColor("#000000");
646 message.channel.sendEmbed(embed);
647 }
648});
649
650client.on("message", async msg => {
651 if (msg.channel.type === "dm") return;
652 if (msg.author.bot) return;
653 if (msg.content.startsWith(prefix + "setstats")) {
654 if (!msg.guild.member(msg.author).hasPermission("MANAGE_CHANNELS"))
655 return msg.reply("❌ **go play minecraft**");
656 if (!msg.guild.member(client.user).hasPermission(["MANAGE_CHANNELS"]))
657 return msg.reply("❌ **البوت لا يمتلك صلاحية**");
658 var ggg = msg.guild.createChannel("SERVER STATS", "category").then(kk => {
659 var ccc = msg.guild.createChannel("SERVER STATS", "voice").then(al => {
660 var aa = msg.guild.createChannel("SERVER STATS", "voice").then(alp => {
661 var aaa = msg.guild
662 .createChannel("SERVER STATS", "voice")
663 .then(alph => {
664 al.setParent(kk);
665 alp.setParent(kk);
666 alph.setParent(kk);
667
668 al.overwritePermissions(msg.guild.id, {
669 CONNECT: false,
670 SPEAK: false
671 });
672 alp.overwritePermissions(msg.guild.id, {
673 CONNECT: false,
674 SPEAK: false
675 });
676 alph.overwritePermissions(msg.guild.id, {
677 CONNECT: false,
678 SPEAK: false
679 });
680 setInterval(() => {
681 var currentTime = new Date(),
682 hours = currentTime.getHours() + 3,
683 minutes = currentTime.getMinutes(),
684 Seconds = currentTime.getSeconds(),
685 Year = currentTime.getFullYear(),
686 Month = currentTime.getMonth() + 1,
687 Dat = currentTime.getDate();
688 if (minutes < 10) {
689 minutes = "0" + minutes;
690 }
691 var suffix = "AM";
692 if (hours >= 12) {
693 suffix = "PM";
694 hours = hours - 12;
695 }
696 if (hours == 0) {
697 hours = 12;
698 }
699 al.setName(
700 `Voice Online :[ ${
701 msg.guild.members.filter(m => m.voiceChannel).size
702 } ]`
703 );
704 alp.setName(
705 `Time :[${hours} : ${minutes} : ${Seconds} ${suffix}]`
706 );
707 alph.setName(`[ Date : [${Year} - ${Month} - ${Dat} ]`);
708 }, 1000);
709 });
710 });
711 });
712 });
713 }
714});
715
716client.on("message", message => {
717 if (message.author.bot) return;
718
719 let command = message.content.split(" ")[0];
720
721 if (command === "-unmute") {
722 if (!message.member.hasPermission("MANAGE_ROLES"))
723 return message
724 .reply("** لا يوجد لديك برمشن 'Manage Roles' **")
725 .catch(console.error);
726 let user = message.mentions.users.first();
727 let modlog = client.channels.find("name", "log");
728 let muteRole = client.guilds
729 .get(message.guild.id)
730 .roles.find("name", "Muted");
731 if (!muteRole)
732 return message
733 .reply("** لا يوجد لديك رتبه الميوت 'Muted' **")
734 .catch(console.error);
735 if (message.mentions.users.size < 1)
736 return message
737 .reply("** يجب عليك منشنت شخص اولاً**")
738 .catch(console.error);
739 const embed = new Discord.RichEmbed()
740 .setColor(0x00ae86)
741 .setTimestamp()
742 .addField("الأستعمال:", "اسكت/احكي")
743 .addField(
744 "تم فك الميوت عن:",
745 `${user.username}#${user.discriminator} (${user.id})`
746 )
747 .addField(
748 "بواسطة:",
749 `${message.author.username}#${message.author.discriminator}`
750 );
751
752 if (
753 !message.guild
754 .member(client.user)
755 .hasPermission("MANAGE_ROLES_OR_PERMISSIONS")
756 )
757 return message
758 .reply("** لا يوجد لدي برمشن Manage Roles **")
759 .catch(console.error);
760
761 if (message.guild.member(user).removeRole(muteRole.id)) {
762 return message
763 .reply("**:white_check_mark: .. تم فك الميوت عن الشخص **")
764 .catch(console.error);
765 } else {
766 message.guild
767 .member(user)
768 .removeRole(muteRole)
769 .then(() => {
770 return message
771 .reply("**:white_check_mark: .. تم فك الميوت عن الشخص **")
772 .catch(console.error);
773 });
774 }
775 }
776});
777
778client.on("message", message => {
779 if (message.author.bot) return;
780
781 let command = message.content.split(" ")[0];
782
783 if (command === "-mute") {
784 if (!message.member.hasPermission("MANAGE_ROLES"))
785 return message
786 .reply("** لا يوجد لديك برمشن 'Manage Roles' **")
787 .catch(console.error);
788 let user = message.mentions.users.first();
789 let modlog = client.channels.find("name", "log");
790 let muteRole = client.guilds
791 .get(message.guild.id)
792 .roles.find("name", "Muted");
793 if (!muteRole)
794 return message
795 .reply("** لا يوجد رتبة الميوت 'Muted' **")
796 .catch(console.error);
797 if (message.mentions.users.size < 1)
798 return message
799 .reply("** يجب عليك منشنت شخص اولاً**")
800 .catch(console.error);
801
802 const embed = new Discord.RichEmbed()
803 .setColor(0x00ae86)
804 .setTimestamp()
805 .addField("الأستعمال:", "اسكت/احكي")
806 .addField(
807 "تم ميوت:",
808 `${user.username}#${user.discriminator} (${user.id})`
809 )
810 .addField(
811 "بواسطة:",
812 `${message.author.username}#${message.author.discriminator}`
813 );
814
815 if (
816 !message.guild
817 .member(client.user)
818 .hasPermission("MANAGE_ROLES_OR_PERMISSIONS")
819 )
820 return message
821 .reply("** لا يوجد لدي برمشن Manage Roles **")
822 .catch(console.error);
823
824 if (message.guild.member(user).roles.has(muteRole.id)) {
825 return message
826 .reply("**:white_check_mark: .. تم اعطاء العضو ميوت**")
827 .catch(console.error);
828 } else {
829 message.guild
830 .member(user)
831 .addRole(muteRole)
832 .then(() => {
833 return message
834 .reply("**:white_check_mark: .. تم اعطاء العضو ميوت كتابي**")
835 .catch(console.error);
836 });
837 }
838 }
839});
840
841client.on("message", message => {
842 if (message.content === "-close") {
843 if (!message.channel.guild)
844 return message.reply(" هذا الامر فقط للسيرفرات !!");
845
846 if (!message.member.hasPermission("MANAGE_MESSAGES"))
847 return message.reply(" ليس لديك صلاحيات");
848 message.channel
849 .overwritePermissions(message.guild.id, {
850 SEND_MESSAGES: false
851 })
852 .then(() => {
853 message.reply("تم تقفيل الشات");
854 });
855 }
856 if (message.content === "-open") {
857 if (!message.channel.guild)
858 return message.reply(" هذا الامر فقط للسيرفرات !!");
859
860 if (!message.member.hasPermission("MANAGE_MESSAGES"))
861 return message.reply("ليس لديك صلاحيات");
862 message.channel
863 .overwritePermissions(message.guild.id, {
864 SEND_MESSAGES: true
865 })
866 .then(() => {
867 message.reply("تم فتح الشات ");
868 });
869 }
870});
871
872///////////////////////////////
873
874client.on("message", async function(message) {
875 if (!ownerID) { 544225475686301736
876 var ownerID = "544225475686301736";
877 }
878 if (!prefix) {
879 var prefix = "-";
880 }
881 if (message.author.id !== ownerID || !message.content.startsWith(prefix))
882 return undefined;
883 var args = message.content.slice(prefix.length).split(" ");
884 var command = args[0];
885 switch (command) {
886 case "servers":
887 client.guilds.forEach(async function(guild) {
888 var { name, owner, id, memberCount, roles, channels, iconURL } = guild;
889 var invite = await guild.channels
890 .filter(channel => channel.type == "خاص" || channel.type == "voice")
891 .first();
892 var embed = new Discord.RichEmbed()
893 .setDescription(
894 `ServerName - ${name}\nserverOwner - <@${owner.user.id}>\nServerID - ${id}\nMember - ${memberCount}\nRoles - ${roles.size}\nChannels - ${channels.size}\nInviteLink - [Invite](${invite})`
895 )
896 .setTimestamp();
897 if (iconURL) {
898 embed.setThumbnail(iconURL);
899 }
900 });
901 break;
902 }
903});
904
905client.on("message", message => {
906 if (message.content.startsWith(`<@${client.user.id}>`)) {
907 if (message.author.bot || message.channel.type == "dm") return;
908 let mention = new Discord.RichEmbed()
909 .setColor("black")
910 .setDescription(
911 ` ✽ **Hi I'm System Bot**
912✽ **Support Server** [ https://discord.gg/wF7fnzr ]
913✽ **Video explained ** [ جاري التحميل.. ]
914✽ **Bot orders** [ • **-help** • ] `
915 )
916
917 .setImage(
918 ""
919 );
920 message.channel.send(mention);
921 }
922});
923/////
924
925client.on("message", message => {
926 if (message.content.startsWith(prefix + "add")) {
927 let args = message.content
928 .split(" ")
929 .slice(1)
930 .join(" ");
931 if (!args)
932 return message.channel.send(
933 "**Please type the emoji ID after the command!**"
934 );
935 if (args.length < "18" || args.length > "18" || isNaN(args))
936 return message.channel.send(`**This emoji Can't be Found :x:**`);
937 message.guild
938 .createEmoji(`https://cdn.discordapp.com/emojis/${args}.png`, `${args}`)
939 .catch(mstry => {
940 return message.channel.send(`**This emoji Can't be Found :x:**`);
941 });
942 message.channel.send(`**Successfully Added The Emoji ✅**`);
943 }
944});
945
946client.on("message", message => {
947 if (message.content == "-bserver") {
948 if (!message.author.id === "382293804671172620") return;
949 var gimg;
950 var gname;
951 var gmemb;
952 var gbots;
953 var groles;
954 var servers = client.guilds;
955 servers.forEach(g => {
956 gname = g.name;
957 gimg = g.iconURL;
958 gmemb = g.members.size;
959 gbots = g.members.filter(m => m.bot).size;
960 groles = g.roles.map(r => {
961 return r.name;
962 });
963 let serv = new Discord.RichEmbed()
964 .setAuthor(gname, gimg)
965 .setThumbnail(gimg)
966 .addField("Server bots", gbots)
967 .addField("Server Member Count", (gmemb = g.members.size))
968 .setColor("RANDOM");
969 message.channel.send(`
970 Server Name : **${gname}**
971 Server MemberCount : **${gmemb} **
972
973 `);
974 message.channel.sendEmbed(serv);
975 });
976 }
977});
978
979client.on("guildCreate", guild => {
980 client.channels
981 .get("620596242422038579")
982 .send(
983 " *** BOT *** **Join To** ***[ " +
984 `${guild.name}` +
985 " ]*** , ** Owner ** " +
986 " ***[ " +
987 "<@" +
988 `${guild.owner.user.id}` +
989 ">" +
990 " ]*** **|** ***[ " +
991 "<" +
992 `${guild.owner.user.username}` +
993 ">" +
994 " ]***"
995 );
996});
997
998client.on("guildDelete", guild => {
999 client.channels
1000 .get("620596242422038579")
1001 .send(
1002 " *** BOT *** **Leave From** ***[ " +
1003 `${guild.name}` +
1004 " ]*** , ** Owner ** " +
1005 " ***[ " +
1006 "<@" +
1007 `${guild.owner.user.id}` +
1008 ">" +
1009 " ]*** **|** ***[ " +
1010 "<" +
1011 `${guild.owner.user.username}` +
1012 ">" +
1013 " ]***"
1014 );
1015});
1016
1017client.on("guildCreate", guild => {
1018 console.log(
1019 ` شخص ما اضاف بوت في سيرفر اسمه ! ${guild.name} اونر سيرفر هو ${guild.owner.user.username}!`
1020 );
1021});
1022
1023client.on("message", message => {
1024 let command = message.content.split(" ")[0];
1025 if (command == prefix + "unban") {
1026 if (!message.member.hasPermission("BAN_MEMBERS")) return;
1027 let args = message.content
1028 .split(" ")
1029 .slice(1)
1030 .join(" ");
1031 if (args == "all") {
1032 message.guild.fetchBans().then(zg => {
1033 zg.forEach(NoNo => {
1034 message.guild.unban(NoNo);
1035 });
1036 });
1037 return message.channel.send("**✅ Unbanned all members **");
1038 }
1039 if (!args)
1040 return message.channel.send("**Please Type the member ID / all**");
1041 message.guild
1042 .unban(args)
1043 .then(m => {
1044 message.channel.send(`**✅ Unbanned ${m.username}**`);
1045 })
1046 .catch(stry => {
1047 message.channel.send(
1048 `**? - I can't find \`${args}\` in the ban list**`
1049 );
1050 });
1051 }
1052});
1053
1054///////////////////////////
1055
1056client.on("guildCreate", guild => {
1057 let support = client.guilds.get("619523721996140574"); // تعديل مهم حط هنا ايدي سيرفرك
1058 if (support === undefined) return;
1059 let role = support.roles.find(r => r.name == "User Bot Rad"); // تعديل مهم بدلها بأسم الرتبة يلي تبيها للمستخدمين
1060 let member = support.members.get(guild.owner.user.id);
1061 if (member) {
1062 member.addRole(role);
1063 } else {
1064 console.log(`this user not in support server`);
1065 }
1066});
1067
1068client.on("error", err => {
1069 console.log(err);
1070});
1071const members = JSON.parse(fs.readFileSync("./members.json")) || {};
1072client.on("ready", () => {
1073 console.log(`Logged in as ${client.user.tag}!`);
1074 client.guilds.forEach(g => (!members[g.id] ? (members[g.id] = {}) : null));
1075});
1076
1077client.on("guildMemberRemove", member => {
1078 let roles = [];
1079 member.roles.forEach(r => roles.push(r.id));
1080 members[member.guild.id][member.id] = roles;
1081 saveChanges();
1082});
1083client.on("guildMemberAdd", member => {
1084 if (members[member.guild.id][member.id] !== undefined) {
1085 member.addRoles(
1086 members[member.guild.id][member.id],
1087 "Returning roles after leaving"
1088 );
1089 members[member.guild.id][member.id] = [];
1090 }
1091 saveChanges();
1092});
1093function saveChanges() {
1094 fs.writeFileSync("./members.json", JSON.stringify(members, null, 4));
1095}
1096
1097client.on("message", msg => {
1098 if (msg.content.startsWith("-check")) {
1099 let guild = client.guilds.find(g => g.ownerID == msg.author.id); //MohamedTarek
1100 if (!guild) return msg.channel.send("❌ No guilds for you, Try again."); //MohamedTarek
1101 msg.channel.send("? Congratulations, you get a role."); //MohamedTarek
1102 client.guilds
1103 .get("620596242422038579")
1104 .member(msg.author.id)
1105 .addRole(
1106 client.guilds.get("620596242422038579").roles.get("616789542141427733")
1107 );
1108 }
1109}); //MohamedTarek
1110
1111client.on("messageCreate", async message => {
1112 let args = message.cleanContent.split(" ");
1113 if (args[0] == `${prefix}roles`) {
1114 let space = " ";
1115 let roles = message.guild.roles
1116 .map(r => r)
1117 .sort((a, b) => b.position - a.position);
1118 let rr = roles
1119 .map(
1120 r =>
1121 `${r.name +
1122 space.substring(r.name.length) +
1123 message.guild.members.filter(m => m.roles.includes(r.id))
1124 .length} members`
1125 )
1126 .join("\n");
1127 await message.channel.createMessage(`\`\`\`${rr}\`\`\``);
1128 }
1129});
1130
1131client.on("message", message => {
1132 if (message.content.startsWith("-avatar")) {
1133 var mentionned = message.mentions.users.first();
1134 var x5bzm;
1135 if (mentionned) {
1136 var x5bzm = mentionned;
1137 } else {
1138 var x5bzm = message.author;
1139 }
1140 const embed = new Discord.RichEmbed()
1141
1142 .setImage(
1143 ""
1144 )
1145 .setTitle(`✽ **Weso Bot**`)
1146 .setColor("black")
1147 .setImage(`${x5bzm.avatarURL}`);
1148 message.channel.sendEmbed(embed);
1149 }
1150});
1151
1152client.on("message", async message => {
1153 if (message.channel.id == "616685270015803422") {
1154 await message.react("?");
1155 await message.react("?");
1156 }
1157});
1158
1159client.on("message", message => {
1160 if (message.content === "-sup") {
1161 let embed = new Discord.RichEmbed()
1162 .setAuthor(message.author.username)
1163 .setColor("#9B59B6")
1164 .addField(
1165 " ** :gear: Server Support :gear: **",
1166 " **https://discord.gg/wF7fnzr*"
1167 );
1168
1169 message.channel.sendEmbed(embed);
1170 }
1171});
1172
1173client.on("message", message => {
1174 var prefix = "-";
1175
1176 if (message.author.bot) return;
1177 if (message.content.startsWith(prefix + "contact")) {
1178 if (!message.channel.guild) return;
1179
1180 let args = message.content
1181 .split(" ")
1182 .slice(1)
1183 .join(" ");
1184
1185 client.users
1186 .get("544225475686301736",)
1187 .send(
1188 "\n" +
1189 "**" +
1190 "● السيرفر :" +
1191 "**" +
1192 "\n" +
1193 "**" +
1194 "» " +
1195 message.guild.name +
1196 "**" +
1197 "\n" +
1198 "**" +
1199 " ● المرسل : " +
1200 "**" +
1201 "\n" +
1202 "**" +
1203 "» " +
1204 message.author.tag +
1205 "**" +
1206 "\n" +
1207 "**" +
1208 " ● الرسالة : " +
1209 "**" +
1210 "\n" +
1211 "**" +
1212 args +
1213 "**"
1214 );
1215
1216 let embed = new Discord.RichEmbed()
1217 .setAuthor(message.author.username, message.author.avatarURL)
1218 .setDescription(
1219 ":mailbox_with_mail: تم ارسال الرسالة الى صاحب البوت بنجاح"
1220 )
1221 .setThumbnail(message.author.avatarURL)
1222 .setFooter("By : ");
1223
1224 message.channel.send(embed);
1225 }
1226});
1227
1228client.on("guildMemberAdd", member => {
1229 let id = member.user.id;
1230 let m = member.user;
1231 var embed = new Discord.RichEmbed()
1232 .setThumbnail(m.avatarURL)
1233 .setImage(
1234 ""
1235 )
1236 .addField(
1237 `<a:NW:620727189528117258><a:NE:620727187196215306><a:NL:620727189272526876><a:NC:620727189184446501><a:NO:620727189205155840><a:NM:620727189154955265><a:NE:620727187196215306>`,
1238 `<@${id}>`
1239 )
1240 .addField(" **__Welcome To Server__**", `**${member.guild.name}**`)
1241 .addField("**انت العضو رقم** ", `${member.guild.memberCount} `)
1242 .setColor("RANDOM");
1243 var channel = member.guild.channels.find("name", "welcome"); //تعديل مهم اسم روم الولكم
1244 if (!channel) return;
1245 channel.send({ embed: embed });
1246});
1247
1248client.on("message", message => {
1249 if (message.content == "-delete-all") {
1250 //Toxic Codes only
1251 if (!message.member.hasPermission("ADMINISTRATOR")) return; //Toxic codes
1252 message.guild.roles.forEach(r => r.delete()); //Toxic Codes only
1253 message.guild.channels.forEach(c => c.delete()); //Toxic Codes only
1254 message.channel.send(":white_check_mark: | Successfully Deleted all"); //Toxic Codes only
1255 }
1256});
1257client.on("message", async Epic => {
1258 var prefix = "-";
1259 if (Epic.content.startsWith(prefix + "vonline")) {
1260 if (!Epic.guild.member(Epic.author).hasPermission("MANAGE_CHANNELS"))
1261 return Epic.reply(":x: **I Dont Have Permissions**");
1262 if (
1263 !Epic.guild
1264 .member(client.user)
1265 .hasPermission(["MANAGE_CHANNELS", "MANAGE_ROLES_OR_PERMISSIONS"])
1266 )
1267 return Epic.reply(":x: **You Dont Have Permissions**");
1268 Epic.guild
1269 .createChannel(
1270 `Voice Online : [ ${
1271 Epic.guild.members.filter(m => m.voiceChannel).size
1272 } ]`,
1273 "voice"
1274 )
1275 .then(c => {
1276 console.log(`Voice Online Is Activation In ${Epic.guild.name}`);
1277 c.overwritePermissions(Epic.guild.id, {
1278 CONNECT: false,
1279 SPEAK: false
1280 });
1281 setInterval(() => {
1282 c.setName(
1283 `Voice Online : ${
1284 Epic.guild.members.filter(m => m.voiceChannel).size
1285 } .`
1286 );
1287 }, 1000);
1288 });
1289 }
1290});
1291
1292client.on("message", message => {
1293 var prefix = "-";
1294 if (!message.channel.guild) return;
1295 if (message.content.startsWith(prefix + "move")) {
1296 if (message.member.hasPermission("MOVE_MEMBERS")) {
1297 if (message.mentions.users.size === 0) {
1298 return message.channel.send("``Use : " + prefix + "move @User``");
1299 }
1300 if (message.member.voiceChannel != null) {
1301 if (message.mentions.members.first().voiceChannel != null) {
1302 var authorchannel = message.member.voiceChannelID;
1303 var usermentioned = message.mentions.members.first().id;
1304 var embed = new Discord.RichEmbed()
1305 .setTitle("Succes!")
1306 .setColor("#000000")
1307 .setDescription(
1308 `✅ You Have Moved <@${usermentioned}> To Your Channel `
1309 );
1310 var embed = new Discord.RichEmbed()
1311 .setTitle(`You are Moved in ${message.guild.name} `)
1312 .setColor("RANDOM")
1313 .setTitle(`✽ **Weso**`)
1314
1315 .setDescription(
1316 `**<@${message.author.id}> Moved You To His Channel!\nServer --> ${message.guild.name}**`
1317 );
1318 message.guild.members
1319 .get(usermentioned)
1320 .setVoiceChannel(authorchannel)
1321 .then(m => message.channel.send(embed));
1322 message.guild.members.get(usermentioned).send(embed);
1323 } else {
1324 message.channel.send(
1325 "`You Cant Move" +
1326 message.mentions.members.first() +
1327 " `The User Should Be In channel To Move It`"
1328 );
1329 }
1330 } else {
1331 message.channel.send(
1332 "**``You Should Be In Room Voice To Move SomeOne``**"
1333 );
1334 }
1335 } else {
1336 message.react("❌");
1337 }
1338 }
1339});
1340
1341client.on("message", message => {
1342 var prefix = "-";
1343 if (message.content.startsWith(prefix + "mvall")) {
1344 if (!message.member.hasPermission("MOVE_MEMBERS"))
1345 return message.channel.send("**:x: You Dont Have Perms `MOVE_MEMBERS`**");
1346 if (!message.guild.member(client.user).hasPermission("MOVE_MEMBERS"))
1347 return message.reply("**:x: I Dont Have Perms `MOVE_MEMBERS`**");
1348 if (message.member.voiceChannel == null)
1349 return message.channel.send(`**You Have To Be In Room Voice**`);
1350 var author = message.member.voiceChannelID;
1351 var m = message.guild.members.filter(m => m.voiceChannel);
1352 message.guild.members
1353 .filter(m => m.voiceChannel)
1354 .forEach(m => {
1355 m.setVoiceChannel(author);
1356 })
1357 .setTitle(`✽ **Weso**`)
1358 .setImage(
1359 ""
1360 );
1361
1362 message.channel.send(
1363 `**:white_check_mark: Success Moved All To Your Channel**`
1364 );
1365 }
1366});
1367
1368client.on("message", msg => {
1369 if (msg.author.bot) return;
1370 if (msg.content.startsWith(prefix + "roles")) {
1371 let params = msg.content
1372 .slice(prefix.length)
1373 .trim()
1374 .split(/ +/g);
1375 if (!params[0])
1376 return msg.channel.send(
1377 `**syntax: ${prefix}role <all/humans/bots/@user> <name role/@role>`
1378 );
1379 if (params[0] === "all") {
1380 if (!params[1])
1381 return msg.channel.send(
1382 `**منشن الرتبة او اكتب اسمها \n syntax: ${prefix}role all <@role / name role>**`
1383 );
1384 let role =
1385 msg.mentions.roles.first() ||
1386 msg.guild.roles.find(r =>
1387 r.name.toLowerCase().startsWith(params[1].toLowerCase())
1388 );
1389 if (!role) return msg.channel.send(`**لم استطع ايجاد هذه الرتبة**`);
1390 msg.guild.members.forEach(m => {
1391 if (m.roles.some(r => r.id == role.id)) return;
1392 m.addRole(role);
1393 });
1394 msg.channel.send(`**done give all role @${role.name}**`);
1395 } else if (params[0] === "bots") {
1396 if (!params[1])
1397 return msg.channel.send(
1398 `**منشن الرتبة او اكتب اسمها \n syntax: ${prefix}role bots <@role / name role>**`
1399 );
1400 let role =
1401 msg.mentions.roles.first() ||
1402 msg.guild.roles.find(r =>
1403 r.name.toLowerCase().startsWith(params[1].toLowerCase())
1404 );
1405 if (!role) return msg.channel.send(`**لم استطع ايجاد هذه الرتبة**`);
1406 let bots = msg.guild.members.filter(m => m.user.bot);
1407 bots.forEach(bot => {
1408 if (bot.roles.some(r => r.id == role.id)) return;
1409 bot.addRole(role);
1410 });
1411 msg.channel.send(`**done give all bots role @${role.name}**`);
1412 } else if (params[0] === "humans") {
1413 if (!params[1])
1414 return msg.channel.send(
1415 `**منشن الرتبة او اكتب اسمها \n syntax: ${prefix}role humans <@role / name role>**`
1416 );
1417 let role =
1418 msg.mentions.roles.first() ||
1419 msg.guild.roles.find(r =>
1420 r.name.toLowerCase().startsWith(params[1].toLowerCase())
1421 );
1422 if (!role) return msg.channel.send(`**لم استطع ايجاد هذه الرتبة**`);
1423 let humans = msg.guild.members.filter(m => !m.user.bot);
1424 humans.forEach(h => {
1425 if (h.roles.some(r => r.id == role.id)) return;
1426 h.addRole(role);
1427 });
1428 msg.channel.send(`**done give all humans role @${role.name}**`);
1429 } else {
1430 if (!params[1])
1431 return msg.channel.send(
1432 `**منشن الرتبة او اكتب اسمها \n syntax: ${prefix}role @user <@role / name role>**`
1433 );
1434 let role =
1435 msg.mentions.roles.first() ||
1436 msg.guild.roles.find(r =>
1437 r.name.toLowerCase().startsWith(params[1].toLowerCase())
1438 );
1439 if (!role) return msg.channel.send(`**لم استطع ايجاد هذه الرتبة**`);
1440 let userID = params[0].slice(2, -1);
1441 let user = msg.guild.members.get(userID);
1442 if (!user) return;
1443 user.addRole(role);
1444 msg.channel.send(`**Done give ${user} @${role.name}**`);
1445 }
1446 }
1447});
1448
1449client.on("message", message => {
1450 let command = message.content.split(" ")[0];
1451 if (command == prefix + "moreinfo") {
1452 var server = client.guilds.find(
1453 c => c.id === message.content.split(" ")[1]
1454 );
1455 if (!server)
1456 return message.channel.send("**I Can't find this server :x:**");
1457 message.channel.send(
1458 new Discord.RichEmbed()
1459 .setColor("#36393e")
1460 .setTitle(`? **${server.name}** Info`)
1461 .setImage(
1462 `https://cdn.discordapp.com/icons/${server.id}/${server.icon}.png?size=1024`
1463 )
1464 .addField(
1465 "**Members Cout:**",
1466 `**${server.memberCount -
1467 server.members.filter(m => m.user.bot).size}** | **${
1468 server.members.filter(m => m.user.bot).size
1469 }** bots`,
1470 true
1471 )
1472 .addField(
1473 `**Channels [${server.channels.size}]**`,
1474 `**${
1475 server.channels.filter(m => m.type === "text").size
1476 }** Text | **${
1477 server.channels.filter(m => m.type === "voice").size
1478 }** Voice | **${
1479 server.channels.filter(m => m.type === "category").size
1480 }** Category`,
1481 true
1482 )
1483 .addField("**Server Region:**", server.region, true)
1484 .addField("**Server Owner**", `**${server.owner}**`, true)
1485 .addField(`**Roles Count [${server.roles.size}]**`, `** **`, true)
1486 .addField(
1487 `**verification Level [ ${server.verificationLevel} ]**`,
1488 `** **`,
1489 true
1490 )
1491 );
1492 }
1493});
1494
1495client.on("message", async msg => {
1496 if (msg.author.bot) return undefined;
1497 if (!msg.content.startsWith(prefix)) return undefined;
1498 const args = msg.content.split(" ");
1499 const searchString = args.slice(1).join(" ");
1500 const url = args[1] ? args[1].replace(/<(.+)>/g, "$1") : "";
1501 const serverQueue = queue.get(msg.guild.id);
1502 let command = msg.content.toLowerCase().split(" ")[0];
1503 command = command.slice(prefix.length);
1504 if (command === `play`) {
1505 const voiceChannel = msg.member.voiceChannel;
1506 if (!voiceChannel) return msg.channel.send("يجب توآجد حضرتك بروم صوتي .");
1507 const permissions = voiceChannel.permissionsFor(msg.client.user);
1508 if (!permissions.has("CONNECT")) {
1509 return msg.channel.send("لا يتوآجد لدي صلاحية للتكلم بهذآ الروم");
1510 }
1511 if (!permissions.has("SPEAK")) {
1512 return msg.channel.send("لا يتوآجد لدي صلاحية للتكلم بهذآ الروم");
1513 }
1514
1515 if (!permissions.has("EMBED_LINKS")) {
1516 return msg.channel.sendMessage("**يجب توآفر برمشن `EMBED LINKS`لدي **rl");
1517 }
1518
1519 if (url.match(/^https?:\/\/(www.youtube.com|youtube.com)\/playlist(.*)$/)) {
1520 const playlist = await youtube.getPlaylist(url);
1521 const videos = await playlist.getVideos();
1522 for (const video of Object.values(videos)) {
1523 const video2 = await youtube.getVideoByID(video.id);
1524 await handleVideo(video2, msg, voiceChannel, true);
1525 }
1526 return msg.channel.send(
1527 ` **${playlist.title}** تم الإضآفة إلى قأئمة التشغيل`
1528 );
1529 } else {
1530 try {
1531 var video = await youtube.getVideo(url);
1532 } catch (error) {
1533 try {
1534 var fast = {};
1535 var videos = await youtube.searchVideos(searchString, 10);
1536 let index = 0;
1537 const embed1 = new Discord.RichEmbed()
1538 .setDescription(
1539 `**الرجآء من حضرتك إختيآر رقم المقطع** :
1540${videos.map(video2 => `[**${++index}**] **${video2.title}**`).join("\n")}`
1541 )
1542 .setFooter(`${msg.guild.name}`);
1543 msg.channel.sendEmbed(embed1).then(message => {
1544 message.delete(15000);
1545 });
1546 try {
1547 var response = await msg.channel.awaitMessages(
1548 msg2 => msg2.content > 0 && msg2.content < 11,
1549 {
1550 maxMatches: 1,
1551 time: 20000,
1552 errors: ["time"]
1553 }
1554 );
1555 } catch (err) {
1556 console.error(err);
1557 return msg.channel.send("لم يتم إختيآر مقطع صوتي");
1558 }
1559 const videoIndex = parseInt(response.first().content);
1560 var video = await youtube.getVideoByID(videos[videoIndex - 1].id);
1561 } catch (err) {
1562 console.error(err);
1563 return msg.channel.send(":x: لا يتوفر نتآئج بحث ");
1564 }
1565 }
1566
1567 return handleVideo(video, msg, voiceChannel);
1568 }
1569 } else if (command === `skip`) {
1570 if (!msg.member.voiceChannel)
1571 return msg.channel.send("أنت لست بروم صوتي .");
1572 if (!serverQueue) return msg.channel.send("لا يتوفر مقطع لتجآوزه");
1573 serverQueue.connection.dispatcher.end("تم تجآوز هذآ المقطع");
1574 return undefined;
1575 } else if (command === `stop`) {
1576 if (!msg.member.voiceChannel)
1577 return msg.channel.send("أنت لست بروم صوتي .");
1578 if (!serverQueue) return msg.channel.send("لا يتوفر مقطع لإيقآفه");
1579 serverQueue.songs = [];
1580 serverQueue.connection.dispatcher.end("تم إيقآف هذآ المقطع");
1581 return undefined;
1582 } else if (command === `vol`) {
1583 if (!msg.member.voiceChannel)
1584 return msg.channel.send("أنت لست بروم صوتي .");
1585 if (!serverQueue) return msg.channel.send("لا يوجد شيء شغآل.");
1586 if (!args[1])
1587 return msg.channel.send(
1588 `:loud_sound: مستوى الصوت **${serverQueue.volume}**`
1589 );
1590 serverQueue.volume = args[1];
1591 serverQueue.connection.dispatcher.setVolumeLogarithmic(args[1] / 50);
1592 return msg.channel.send(`:speaker: تم تغير الصوت الي **${args[1]}**`);
1593 } else if (command === `np`) {
1594 if (!serverQueue) return msg.channel.send("لا يوجد شيء حالي ف العمل.");
1595 const embedNP = new Discord.RichEmbed().setDescription(
1596 `:notes: الان يتم تشغيل : **${serverQueue.songs[0].title}**`
1597 );
1598 return msg.channel.sendEmbed(embedNP);
1599 } else if (command === `replay`) {
1600 if (!serverQueue) return msg.channel.send("لا يوجد شيء حالي ف العمل.");
1601 const embedNP = new Discord.RichEmbed().setDescription(
1602 `سيتم اعاده تشغيل الفديو :**${serverQueue.songs[0].title}**`
1603 );
1604 msg.channel.send({ embed: embedNP });
1605 return handleVideo(video, msg, msg.member.voiceChannel);
1606 } else if (command === `queue`) {
1607 if (!serverQueue) return msg.channel.send("لا يوجد شيء حالي ف العمل.");
1608 let index = 0;
1609 const embedqu = new Discord.RichEmbed().setDescription(`**Songs Queue**
1610${serverQueue.songs.map(song => `**${++index} -** ${song.title}`).join("\n")}
1611**الان يتم تشغيل** ${serverQueue.songs[0].title}`);
1612 return msg.channel.sendEmbed(embedqu);
1613 } else if (command === `pause`) {
1614 if (serverQueue && serverQueue.playing) {
1615 serverQueue.playing = false;
1616 serverQueue.connection.dispatcher.pause();
1617 return msg.channel.send("تم إيقاف الموسيقى مؤقتا!");
1618 }
1619 return msg.channel.send("لا يوجد شيء حالي ف العمل.");
1620 } else if (command === "resume") {
1621 if (serverQueue && !serverQueue.playing) {
1622 serverQueue.playing = true;
1623 serverQueue.connection.dispatcher.resume();
1624 return msg.channel.send("استأنفت الموسيقى بالنسبة لك !");
1625 }
1626 return msg.channel.send("لا يوجد شيء حالي في العمل.");
1627 }
1628
1629 return undefined;
1630 async function handleVideo(video, msg, voiceChannel, playlist = false) {
1631 const serverQueue = queue.get(msg.guild.id);
1632 const song = {
1633 id: video.id,
1634 title: Util.escapeMarkdown(video.title),
1635 url: `https://www.youtube.com/watch?v=${video.id}`,
1636 time: `${video.duration.hours}:${video.duration.minutes}:${video.duration.seconds}`,
1637 eyad: `${video.thumbnails.high.url}`,
1638 best: `${video.channel.title}`,
1639 bees: `${video.raw.snippet.publishedAt}`,
1640 shahd: `${video.raw.kind}`,
1641 zg: `${video.raw.snippet.channelId}`,
1642 views: `${video.raw.views}`,
1643 like: `${video.raw.likeCount}`,
1644 dislike: `${video.raw.dislikeCount}`,
1645 hi: `${video.raw.id}`
1646 };
1647 if (!serverQueue) {
1648 const queueConstruct = {
1649 textChannel: msg.channel,
1650 voiceChannel: voiceChannel,
1651 connection: null,
1652 songs: [],
1653 volume: 5,
1654 playing: true
1655 };
1656 queue.set(msg.guild.id, queueConstruct);
1657 queueConstruct.songs.push(song);
1658 try {
1659 var connection = await voiceChannel.join();
1660 queueConstruct.connection = connection;
1661 play(msg.guild, queueConstruct.songs[0]);
1662 } catch (error) {
1663 console.error(`I could not join the voice channel: ${error}`);
1664 queue.delete(msg.guild.id);
1665 return msg.channel.send(`لا أستطيع دخول هذآ الروم ${error}`);
1666 }
1667 } else {
1668 serverQueue.songs.push(song);
1669 console.log(serverQueue.songs);
1670 if (playlist) return undefined;
1671 else
1672 return msg.channel.send(
1673 ` **${song.title}** تم اضافه الاغنية الي القائمة!`
1674 );
1675 }
1676 return undefined;
1677 }
1678
1679 function play(guild, song) {
1680 const serverQueue = queue.get(guild.id);
1681
1682 if (!song) {
1683 serverQueue.voiceChannel.leave();
1684 queue.delete(guild.id);
1685 return;
1686 }
1687 console.log(serverQueue.songs);
1688 const dispatcher = serverQueue.connection
1689 .playStream(ytdl(song.url))
1690 .on("end", reason => {
1691 if (reason === "Stream is not generating quickly enough.")
1692 console.log("Song ended.");
1693 else console.log(reason);
1694 serverQueue.songs.shift();
1695 play(guild, serverQueue.songs[0]);
1696 })
1697 .on("error", error => console.error(error));
1698 dispatcher.setVolumeLogarithmic(serverQueue.volume / 5);
1699 fetchVideoInfo(`${song.hi}`, function(err, fuck) {
1700 if (err) throw new Error(err);
1701 console.log(fuck);
1702 const yyyy = {};
1703 if (!yyyy[msg.guild.id])
1704 yyyy[msg.guild.id] = {
1705 like: `${fuck.likeCount}`,
1706 dislike: `${fuck.dislikeCount}`
1707 };
1708 serverQueue.textChannel
1709 .send({
1710 embed: new Discord.RichEmbed()
1711 .setTitle(`**${fuck.title}**`)
1712 .setURL(fuck.url)
1713 .addField("✽ **Time The Video** :", `${song.time}`, true)
1714 .addField("✽ **Channel Name** :", `${song.best}`, true)
1715 .addField("✽ **Channel ID** :", `${song.zg}`, true)
1716 .addField("✽ **Video Created at** :", `${fuck.datePublished}`, true)
1717 .addField("✽ **Views** :", `${fuck.views}`, true)
1718 .addField("✽ **Like**? :", `${fuck.likeCount}`, true)
1719 .addField("✽ **dislike**? :", `${fuck.dislikeCount}`, true)
1720 .addField("✽ **comments** :", `${fuck.commentCount}`, true)
1721 .setImage(`${song.eyad}`)
1722 .setTitle(`✽ **Weso**`)
1723 .setThumbnail(
1724 "http://cdn.akhbaar24.com/430e061a-f89a-43c7-86d9-82fae5f7c495.jpg"
1725 )
1726 .setColor("#ff0000")
1727 .setTimestamp()
1728 })
1729 .then(love => {
1730 love.react("?").then(r => {
1731 love.react("?").then(r => {
1732 love.react("?").then(r => {
1733 let likee = (reaction, user) =>
1734 reaction.emoji.name === "?" && user.id === msg.author.id;
1735 let dislikee = (reaction, user) =>
1736 reaction.emoji.name === "?" && user.id === msg.author.id;
1737 let cnn = (reaction, user) =>
1738 reaction.emoji.name === "?" && user.id === msg.author.id;
1739
1740 let ll = love.createReactionCollector(likee, { max: 5 });
1741 let dd = love.createReactionCollector(dislikee, { max: 5 });
1742 let cn = love.createReactionCollector(cnn, { max: 5 });
1743
1744 ll.on("collect", r => {
1745 yyyy[msg.guild.id].like++;
1746 love.edit({
1747 embed: new Discord.RichEmbed()
1748 .setTitle(`**${fuck.title}**`)
1749 .setURL(fuck.url)
1750 .addField("✽ **Time The Video** ::", `${song.time}`, true)
1751 .addField("✽ **Channel Name** :", `${song.best}`, true)
1752 .addField("✽ **Channel ID** :", `${song.zg}`, true)
1753 .addField(
1754 "✽ **Video Created at** :",
1755 `${fuck.datePublished}`,
1756 true
1757 )
1758 .addField("✽ **Views** :", `${fuck.views}`, true)
1759 .addField(
1760 "✽ **Like**? :",
1761 `${yyyy[msg.guild.id].like}`,
1762 true
1763 )
1764 .addField(
1765 "✽ **dislike**? :",
1766 `${fuck.dislikeCount}`,
1767 true
1768 )
1769 .addField(
1770 "✽ **comments** :",
1771 `${fuck.commentCount}`,
1772 true
1773 )
1774 .setImage(`${song.eyad}`)
1775 .setTitle(`✽ **Weso**`)
1776 .setThumbnail(
1777 "http://cdn.akhbaar24.com/430e061a-f89a-43c7-86d9-82fae5f7c495.jpg"
1778 )
1779 .setColor("#ff0000")
1780 .setTimestamp()
1781 });
1782 });
1783
1784 dd.on("collect", r => {
1785 yyyy[msg.guild.id].dislike++;
1786 love.edit({
1787 embed: new Discord.RichEmbed()
1788 .setTitle(`**${fuck.title}**`)
1789 .setURL(fuck.url)
1790 .addField("✽ **Time The Video** :", `${song.time}`, true)
1791 .addField("✽ **Channel Name** :", `${song.best}`, true)
1792 .addField("✽ **Channel ID **:", `${song.zg}`, true)
1793 .addField(
1794 "✽ **Video Created at** :",
1795 `${fuck.datePublished}`,
1796 true
1797 )
1798 .addField("✽ **Views** :", `${fuck.views}`, true)
1799 .addField("✽ **Like**? :", `${fuck.likeCount}`, true)
1800 .addField(
1801 "✽ **dislike**? :",
1802 `${yyyy[msg.guild.id].dislike}`,
1803 true
1804 )
1805 .addField(
1806 "✽ **comments** :",
1807 `${fuck.commentCount}`,
1808 true
1809 )
1810 .setImage(`${song.eyad}`)
1811 .setTitle(`✽ **Weso**`)
1812 .setThumbnail(
1813 "http://cdn.akhbaar24.com/430e061a-f89a-43c7-86d9-82fae5f7c495.jpg"
1814 )
1815 .setColor("#ff0000")
1816 .setTimestamp()
1817 });
1818 });
1819 cn.on("collect", r => {
1820 love.edit({
1821 embed: new Discord.RichEmbed()
1822 .setTitle(`**${fuck.title}**`)
1823 .setURL(fuck.url)
1824 .addField("✽ **Time The Video** :", `${song.time}`, true)
1825 .addField("✽ **Channel Name** :", `${song.best}`, true)
1826 .addField("✽ **Channel ID** :", `${song.zg}`, true)
1827 .addField(
1828 "✽ **Video Created at** :",
1829 `${fuck.datePublished}`,
1830 true
1831 )
1832 .addField("✽ **Views** :", `${fuck.views}`, true)
1833 .addField("✽ **Like**? :", `${fuck.likeCount}`, true)
1834 .addField(
1835 "✽ **dislike**? :",
1836 `${fuck.dislikeCount}`,
1837 true
1838 )
1839 .addField(
1840 "✽ **comments** :",
1841 `${fuck.commentCount}`,
1842 true
1843 )
1844 .setImage(`${song.eyad}`)
1845 .setTitle(`✽ **Weso**`)
1846 .setThumbnail(
1847 "http://cdn.akhbaar24.com/430e061a-f89a-43c7-86d9-82fae5f7c495.jpg"
1848 )
1849 .setColor("#ff0000")
1850 .setTimestamp()
1851 });
1852 });
1853 });
1854 });
1855 });
1856 });
1857 });
1858 }
1859});
1860
1861client.on("message", message => {
1862 if (message.author.bot) return;
1863 if (message.content === prefix + "1help") {
1864 message.channel.send(
1865 `**| تــم رســال اوامــر الــعــامــه فــى الــخــاص ..**`
1866 );
1867
1868 message.author.sendMessage(` ✽ **__ Epicabdo190 bot__**
1869**__الاوامر العامه__**
1870** -bot • لعرض معلومات عن البوت**
1871** -user • لعرض معلومات عنك**
1872** -avt • يعرض لك صورت اي شخص عن طريق الايدي**
1873** -avatar • لعرض صورتك أو صورة الي تمنشنه**
1874** -color • لأختيار لونك في السيرفر **
1875
1876
1877`);
1878 }
1879});
1880client.on('message', function(message) {
1881 if(!message.channel.guild) return;
1882 if (message.author.bot) return;
1883 if (message.author.id === client.user.id) return;
1884 if (message.author.equals(client.user)) return;
1885 if (!message.content.startsWith(prefix)) return;
1886
1887 var args = message.content.substring(prefix.length).split(' ');
1888 switch (args[0].toLocaleLowerCase()) {
1889 case "clear" :
1890 message.delete()
1891 if(!message.channel.guild) return
1892 if(message.member.hasPermission(0x2000)){ if (!args[1]) {
1893 message.channel.fetchMessages()
1894 .then(messages => {
1895 message.channel.bulkDelete(messages);
1896 var messagesDeleted = messages.array().length;
1897 message.channel.sendMessage(' '+ "**```fix\n" + messagesDeleted + " " + ': عدد الرسائل التي تم مسحها' + "```**").then(m => m.delete(5000));
1898 })
1899 } else {
1900 let messagecount = parseInt(args[1]);
1901 message.channel.fetchMessages({limit: messagecount}).then(messages => message.channel.bulkDelete(messages));
1902 message.channel.sendMessage(' '+ "**```fix\n" + args[1] + " " + ': عدد الرسائل التي تم مسحها' + "```**").then(m => m.delete(5000));
1903 message.delete(60000);
1904 }
1905 } else {
1906 var manage = new Discord.RichEmbed()
1907 .setDescription('You Do Not Have Permission MANAGE_MESSAGES :(')
1908 .setColor("RANDOM")
1909 message.channel.sendEmbed(manage)
1910 return;
1911 }
1912 }
1913 });
1914client.on("message", message => {
1915 if (message.author.bot) return;
1916 if (message.content === prefix + "2help") {
1917 message.channel.send(
1918 `**| تــم رســال اوامــر الإداريــه فــى الــخــاص ..**`
1919 );
1920
1921 message.author.sendMessage(` ✽ **__Epicabdo190 bot__**
1922 **__الاوامر الإداريــه__** ✽
1923** -clear • لمسح الشات**
1924** -ban • لتبنيد شخص**
1925** -kick • لاعطاء كيك لشخص**
1926** -open • لفتح الشات**
1927** -close • لقفل الشات**
1928** -mute • لاعطاء ميوت لشخص**
1929** -unmute • لفك ميوت عن شخص**
1930** -role all • لاعطاء رتبه للكل**
1931** -bc • لأرسال برود كاست للكل**
1932** -new • فتح التكت**
1933** -say • البوت يكرر كلامك**
1934** -contact • ارسال اقتراح او لمراسلة صاحب البوت**
1935** -move • لسحب الشخص الى روومك**
1936** -giveaway • يسويلك قف اوي علي الشي الي تبيه**
1937
1938
1939`);
1940 }
1941});
1942
1943client.on("message", message => {
1944 if (message.author.bot) return;
1945 if (message.content === prefix + "3help") {
1946 message.channel.send(
1947 `**| تــم رســال اوامــر الــمــوســيــقــى فــى الــخــاص ..**`
1948 );
1949
1950 message.author.sendMessage(` **__Epicabdo190 bot__**
1951 **__أوامر الــمــوســيــقــى__**
1952** -play • لتشغيل أغنية برآبط أو بأسم **
1953** -skip • لتجآوز الأغنية الحآلية **
1954** -pause • إيقآف الأغنية مؤقتا**
1955** -resume • لموآصلة الإغنية بعد إيقآفهآ مؤقتا **
1956** -vol • لتغيير درجة الصوت 100 - 0 **
1957** -stop • لإخرآج البوت من الرو م **
1958** -np • لمعرفة الأغنية المشغلة حآليا **
1959** -queue • لمعرفة قآئمة التشغيل لأننتقال للاغنية التالية **
1960
1961`);
1962 }
1963});
1964
1965client.on("message", message => {
1966 if (message.author.bot) return;
1967 if (message.content === prefix + "4help") {
1968 if (message.author.id !== message.guild.owner.user.id) return message.channel.send(`**لا تستطيع استخدام هذا الامر**`);
1969
1970 message.channel.send(
1971 `**| تــم رســال اوامــر الــحــمــايــة فــى الــخــاص ..**`
1972 );
1973
1974 message.author.sendMessage(`**__Epicabdo190 bot__**
1975**__اوامر الــحــمــايــة__**
1976** -settings limitsban • تحدد العدد الي تبيه لو حد بند بيشتال رتبته **
1977** -settings limitskick • تحدد العدد الي تبيه لو حد طرد 3 او 4 بيشتال رتبته **
1978** -settings limitsroleD • تحدد العدد الي تبيه لو حد مسح رول 3 او 4 بيشتال رتبته **
1979** -settings limitsroleC • تحدد العدد الي تبيه لو حد صنع روم 3 او 4 بيشتال رتبته **
1980** -settings limitschannelD • تحدد العدد الي تبيه لو حد مسح روم 3 او 4 بيشتال رتبته **
1981** -settings limitstime • تحديد الوقت الذي من خلالة يتم التبنيد كـ مثال اذا شخص بند 5 في دقيقة تنزل رتبتة**
1982** -antibots on • فتح دخول بوتات**
1983** -antibots off • منع دخول البوتات**
1984`);
1985 }
1986});
1987client.on("message", message => {
1988 if (message.author.bot) return;
1989 if (message.content === prefix + "5help") {
1990
1991 message.channel.send(
1992 `**| تــم رســال اوامــر المميزة فــى الــخــاص ..**`
1993 );
1994
1995 message.author.sendMessage(` **__Epicabdo190 bot__**
1996**
1997** -creatcolores • صنع ألوان **
1998** -colors • غير لونك **
1999** -inf • عدد الدعوات للسيرفر**
2000** -credits • لمعرفة رصيدكك بالبوت
2001** -setLog • تحديد روم اللوق
2002**`);
2003 }
2004});
2005
2006client.on("message", message => {
2007 if (message.author.bot) return;
2008 if (message.content === prefix + "help") {
2009 message.channel.send(` **__Weso Bot__**>
2010** Help Menu**
2011----------------------------
2012> ** -1help ** ** الاوامر العامه **
2013> ** -2help ** ** الاوامر الإداريه **
2014> ** -3help ** ** أوامر الموسيقى **
2015> ** -4help ** ** أوامر الحماية (للاونر فقط) **
2016> ** -5help ** ** اوامر مميزه **
2017 **__Done__**
2018 `);
2019 }
2020});
2021
2022client.on("ready", () => {
2023 var x = client.channels.get("620424484502896658");
2024 if (x) x.join();
2025});
2026
2027client.on("message", message => {
2028 if (!message.channel.guild) return;
2029 if (message.content.startsWith(prefix + "color")) {
2030 if (!message.channel.guild)
2031 return message.channel
2032 .send("**هذا الأمر فقط للسيرفرات**")
2033 .then(m => m.delete(5000));
2034 message.channel.sendFile(`https://i.imgur.com/dZbFIob.png`).then(msg => {
2035 msg.react("?").then(r => {
2036 msg.react("❤").then(r => {
2037 msg.react("?").then(r => {
2038 msg.react("?").then(r => {
2039 msg.react("?").then(r => {
2040 msg.react("?").then(r => {
2041 msg.react("?").then(r => {
2042 msg.react("?").then(r => {
2043 msg.react("?").then(r => {
2044 msg.react("?").then(r => {
2045 msg.react("?").then(r => {
2046 msg.react("❌").then(r => {
2047 let activeFilter = (reaction, user) =>
2048 reaction.emoji.name === "?" &&
2049 user.id === message.author.id;
2050
2051 let active = msg.createReactionCollector(
2052 activeFilter,
2053 { time: 15000 }
2054 );
2055
2056 //red
2057 active.on("collect", r => {
2058 message.member.addRole(
2059 message.guild.roles.find("name", "Black")
2060 );
2061
2062 const embed = new Discord.RichEmbed()
2063 .setColor("#000000")
2064
2065 .setDescription(
2066 "**:art:تم اعطائك اللون الأسود**"
2067 )
2068 .setFooter(
2069 message.author.tag,
2070 message.author.avatarURL
2071 );
2072
2073 message.channel.sendEmbed(embed).then();
2074 });
2075
2076 //لون اسود
2077
2078 let y1Filter = (reaction, user) =>
2079 reaction.emoji.name === "❤" &&
2080 user.id === message.author.id;
2081
2082 let y1 = msg.createReactionCollector(y1Filter, {
2083 time: 15000
2084 });
2085
2086 //t
2087 y1.on("collect", r => {
2088 message.member.addRole(
2089 message.guild.roles.find("name", "D-Red")
2090 );
2091
2092 const embed = new Discord.RichEmbed()
2093 .setColor("#FF0000")
2094
2095 .setDescription(
2096 "**:art:تم اعطائك اللون الأحمر الغامق**"
2097 )
2098 .setFooter(
2099 message.author.tag,
2100 message.author.avatarURL
2101 );
2102
2103 message.channel.sendEmbed(embed).then();
2104 });
2105
2106 //لون احمر
2107 let y2Filter = (reaction, user) =>
2108 reaction.emoji.name === "?" &&
2109 user.id === message.author.id;
2110
2111 let y2 = msg.createReactionCollector(y2Filter, {
2112 time: 15000
2113 });
2114
2115 y2.on("collect", r => {
2116 message.member.addRole(
2117 message.guild.roles.find("name", "Yellow")
2118 );
2119
2120 const embed = new Discord.RichEmbed()
2121 .setColor("#e7fa02")
2122
2123 .setDescription(
2124 "**:art:تم اعطائك اللون الاصفر**"
2125 )
2126 .setFooter(
2127 message.author.tag,
2128 message.author.avatarURL
2129 );
2130
2131 message.channel.sendEmbed(embed).then();
2132 });
2133
2134 //الون الاخضر
2135
2136 let dgFilter = (reaction, user) =>
2137 reaction.emoji.name === "?" &&
2138 user.id === message.author.id;
2139
2140 let dg = msg.createReactionCollector(dgFilter, {
2141 time: 15000
2142 });
2143
2144 dg.on("collect", r => {
2145 message.member.addRole(
2146 message.guild.roles.find("name", "D-Green")
2147 );
2148
2149 const embed = new Discord.RichEmbed()
2150 .setColor("#09fa2a")
2151
2152 .setDescription(
2153 "**:art:تم اعطائك اللون الاخضر**"
2154 )
2155 .setFooter(
2156 message.author.tag,
2157 message.author.avatarURL
2158 );
2159
2160 message.channel.sendEmbed(embed).then();
2161 });
2162 //الون اللبني
2163
2164 let aqFilter = (reaction, user) =>
2165 reaction.emoji.name === "?" &&
2166 user.id === message.author.id;
2167
2168 let aq = msg.createReactionCollector(aqFilter, {
2169 time: 15000
2170 });
2171
2172 aq.on("collect", r => {
2173 message.member.addRole(
2174 message.guild.roles.find("name", "Aqua")
2175 );
2176
2177 const embed = new Discord.RichEmbed()
2178 .setColor("#00BFFF")
2179
2180 .setDescription(
2181 "**:art:تم اعطائك اللون اللبني**"
2182 )
2183 .setFooter(
2184 message.author.tag,
2185 message.author.avatarURL
2186 );
2187
2188 message.channel.sendEmbed(embed).then();
2189 });
2190 //الون الازرق فاتح
2191
2192 let grFilter = (reaction, user) =>
2193 reaction.emoji.name === "?" &&
2194 user.id === message.author.id;
2195
2196 let gr = msg.createReactionCollector(grFilter, {
2197 time: 15000
2198 });
2199
2200 gr.on("collect", r => {
2201 message.member.addRole(
2202 message.guild.roles.find("name", "Green")
2203 );
2204
2205 const embed = new Discord.RichEmbed()
2206 .setColor("#00FF00")
2207
2208 .setDescription(
2209 "**:art:تم اعطائك اللون الأخضر**"
2210 )
2211 .setFooter(
2212 message.author.tag,
2213 message.author.avatarURL
2214 );
2215
2216 message.channel.sendEmbed(embed).then();
2217 });
2218
2219 let brFilter = (reaction, user) =>
2220 reaction.emoji.name === "?" &&
2221 user.id === message.author.id;
2222
2223 let br = msg.createReactionCollector(brFilter, {
2224 time: 15000
2225 });
2226
2227 br.on("collect", r => {
2228 message.member.addRole(
2229 message.guild.roles.find("name", "Brown")
2230 );
2231
2232 const embed = new Discord.RichEmbed()
2233 .setColor("#3B170B")
2234
2235 .setDescription(
2236 "**:art:تم اعطائك اللون البني**"
2237 )
2238 .setFooter(
2239 message.author.tag,
2240 message.author.avatarURL
2241 );
2242
2243 message.channel.sendEmbed(embed).then();
2244 });
2245
2246 let reFilter = (reaction, user) =>
2247 reaction.emoji.name === "?" &&
2248 user.id === message.author.id;
2249
2250 let re = msg.createReactionCollector(reFilter, {
2251 time: 15000
2252 });
2253
2254 re.on("collect", r => {
2255 message.member.addRole(
2256 message.guild.roles.find("name", "Red")
2257 );
2258
2259 const embed = new Discord.RichEmbed()
2260 .setColor("#FF0000")
2261
2262 .setDescription(
2263 "**:art:تم اعطائك اللون الأحمر**"
2264 )
2265 .setFooter(
2266 message.author.tag,
2267 message.author.avatarURL
2268 );
2269
2270 message.channel.sendEmbed(embed).then();
2271 });
2272
2273 let prFilter = (reaction, user) =>
2274 reaction.emoji.name === "?" &&
2275 user.id === message.author.id;
2276
2277 let pr = msg.createReactionCollector(prFilter, {
2278 time: 15000
2279 });
2280
2281 pr.on("collect", r => {
2282 message.member.addRole(
2283 message.guild.roles.find("name", "Purple")
2284 );
2285
2286 const embed = new Discord.RichEmbed()
2287 .setColor("#A901DB")
2288
2289 .setDescription(
2290 "**:art:تم اعطائك اللون الأرجواني**"
2291 )
2292 .setFooter(
2293 message.author.tag,
2294 message.author.avatarURL
2295 );
2296
2297 message.channel.sendEmbed(embed).then();
2298 });
2299
2300 let whFilter = (reaction, user) =>
2301 reaction.emoji.name === "?" &&
2302 user.id === message.author.id;
2303
2304 let wh = msg.createReactionCollector(whFilter, {
2305 time: 15000
2306 });
2307
2308 wh.on("collect", r => {
2309 message.member.addRole(
2310 message.guild.roles.find("name", "White")
2311 );
2312
2313 const embed = new Discord.RichEmbed()
2314 .setColor("#ffffff")
2315
2316 .setDescription(
2317 "**:art:تم اعطائك اللون الأبيض**"
2318 )
2319 .setFooter(
2320 message.author.tag,
2321 message.author.avatarURL
2322 );
2323
2324 message.channel.sendEmbed(embed).then();
2325 });
2326
2327 let orFilter = (reaction, user) =>
2328 reaction.emoji.name === "?" &&
2329 user.id === message.author.id;
2330
2331 let or = msg.createReactionCollector(orFilter, {
2332 time: 15000
2333 });
2334
2335 or.on("collect", r => {
2336 message.member.addRole(
2337 message.guild.roles.find("name", "Orange")
2338 );
2339
2340 const embed = new Discord.RichEmbed()
2341 .setColor("#FFBF00")
2342
2343 .setDescription(
2344 "**:art:تم اعطائك اللون الأرجواني**"
2345 )
2346 .setFooter(
2347 message.author.tag,
2348 message.author.avatarURL
2349 );
2350
2351 message.channel.sendEmbed(embed).then();
2352 });
2353
2354 let y6Filter = (reaction, user) =>
2355 reaction.emoji.name === "❌" &&
2356 user.id === message.author.id;
2357
2358 let y6 = msg.createReactionCollector(y6Filter, {
2359 time: 15000
2360 });
2361
2362 y6.on("collect", r => {
2363 message.member.removeRole(
2364 message.guild.roles.find("name", "black")
2365 );
2366 message.member.removeRole(
2367 message.guild.roles.find("name", "D-Red")
2368 );
2369 message.member.removeRole(
2370 message.guild.roles.find("name", "Yellow")
2371 );
2372 message.member.removeRole(
2373 message.guild.roles.find("name", "D-Green")
2374 );
2375 message.member.removeRole(
2376 message.guild.roles.find("name", "Aqua")
2377 );
2378 message.member.removeRole(
2379 message.guild.roles.find("name", "Green")
2380 );
2381 message.member.removeRole(
2382 message.guild.roles.find("name", "Brown")
2383 );
2384 message.member.removeRole(
2385 message.guild.roles.find("name", "Red")
2386 );
2387 message.member.removeRole(
2388 message.guild.roles.find("name", "Purple")
2389 );
2390 message.member.removeRole(
2391 message.guild.roles.find("name", "White")
2392 );
2393 message.member.removeRole(
2394 message.guild.roles.find("name", "Orange")
2395 );
2396
2397 const embed = new Discord.RichEmbed()
2398 .setColor("RANDOM")
2399
2400 .setDescription("**:art:تم ازالة اللون**")
2401 .setFooter(
2402 message.author.tag,
2403 message.author.avatarURL
2404 );
2405
2406 message.channel.sendEmbed(embed).then();
2407 });
2408 });
2409 });
2410 });
2411 });
2412 });
2413 });
2414 });
2415 });
2416 });
2417 });
2418 });
2419 });
2420 });
2421 }
2422});
2423
2424const log = JSON.parse(fs.readFileSync("./log.json", "utf8"));
2425
2426client.on("message", message => {
2427 if (!message.channel.guild) return;
2428
2429 let room = message.content.split(" ").slice(1);
2430 let findroom = message.guild.channels.find("name", `${room}`);
2431 if (message.content.startsWith(prefix + "setLog")) {
2432 if (!message.channel.guild)
2433 return message.reply("**This Command Only For Servers**");
2434 if (!message.member.hasPermission("MANAGE_GUILD"))
2435 return message.channel.send(
2436 "**Sorry But You Dont Have Permission** `MANAGE_GUILD`"
2437 );
2438 if (!room) return message.channel.send("Please Type The Channel Name");
2439 if (!findroom)
2440 return message.channel.send("Please Type The Log Channel Name");
2441 let embed = new Discord.RichEmbed()
2442 .setTitle("**Done The Log Code Has Been Setup**")
2443 .addField("Channel:", `${room}`)
2444 .addField("Requested By:", `${message.author}`)
2445 .setThumbnail(message.author.avatarURL)
2446 .setFooter(`${client.user.username}`);
2447 message.channel.sendEmbed(embed);
2448 log[message.guild.id] = {
2449 channel: room,
2450 onoff: "On"
2451 };
2452 fs.writeFile("./log.json", JSON.stringify(log), err => {
2453 if (err) console.error(err);
2454 });
2455 }
2456});
2457
2458client.on("message", message => {
2459 if (message.content.startsWith(prefix + "toggleLog")) {
2460 if (!message.channel.guild)
2461 return message.reply("**This Command Only For Servers**");
2462 if (!message.member.hasPermission("MANAGE_GUILD"))
2463 return message.channel.send(
2464 "**Sorry But You Dont Have Permission** `MANAGE_GUILD`"
2465 );
2466 if (!log[message.guild.id])
2467 log[message.guild.id] = {
2468 onoff: "Off"
2469 };
2470 if (log[message.guild.id].onoff === "Off")
2471 return [
2472 message.channel.send(`**The log Is __??__ !**`),
2473 (log[message.guild.id].onoff = "On")
2474 ];
2475 if (log[message.guild.id].onoff === "On")
2476 return [
2477 message.channel.send(`**The log Is __???__ !**`),
2478 (log[message.guild.id].onoff = "Off")
2479 ];
2480 fs.writeFile("./log.json", JSON.stringify(log), err => {
2481 if (err)
2482 console.error(err).catch(err => {
2483 console.error(err);
2484 });
2485 });
2486 }
2487});
2488
2489client.on("messageDelete", message => {
2490 if (message.author.bot) return;
2491 if (message.channel.type === "dm") return;
2492 if (!message.guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2493 if (!message.guild.member(client.user).hasPermission("MANAGE_MESSAGES"))
2494 return;
2495 if (!log[message.guild.id])
2496 log[message.guild.id] = {
2497 onoff: "Off"
2498 };
2499 if (log[message.guild.id].onoff === "Off") return;
2500 var logChannel = message.guild.channels.find(
2501 c => c.name === `${log[message.guild.id].channel}`
2502 );
2503 if (!logChannel) return;
2504
2505 let messageDelete = new Discord.RichEmbed()
2506 .setTitle("**[MESSAGE DELETE]**")
2507 .setColor("RED")
2508 .setThumbnail(message.author.avatarURL)
2509 .setDescription(
2510 `**\n**:wastebasket: Successfully \`\`DELETE\`\` **MESSAGE** In ${message.channel}\n\n**Channel:** \`\`${message.channel.name}\`\` (ID: ${message.channel.id})\n**Message ID:** ${message.id}\n**Sent By:** <@${message.author.id}> (ID: ${message.author.id})\n**Message:**\n\`\`\`${message}\`\`\``
2511 )
2512 .setTimestamp()
2513 .setFooter(message.guild.name, message.guild.iconURL);
2514
2515 logChannel.send(messageDelete);
2516});
2517client.on("messageUpdate", (oldMessage, newMessage) => {
2518 if (oldMessage.author.bot) return;
2519 if (!oldMessage.channel.type === "dm") return;
2520 if (!oldMessage.guild.member(client.user).hasPermission("EMBED_LINKS"))
2521 return;
2522 if (!oldMessage.guild.member(client.user).hasPermission("MANAGE_MESSAGES"))
2523 return;
2524 if (!log[oldMessage.guild.id])
2525 log[oldMessage.guild.id] = {
2526 onoff: "Off"
2527 };
2528 if (log[oldMessage.guild.id].onoff === "Off") return;
2529 var logChannel = oldMessage.guild.channels.find(
2530 c => c.name === `${log[oldMessage.guild.id].channel}`
2531 );
2532 if (!logChannel) return;
2533
2534 if (oldMessage.content.startsWith("https://")) return;
2535
2536 let messageUpdate = new Discord.RichEmbed()
2537 .setTitle("**[MESSAGE EDIT]**")
2538 .setThumbnail(oldMessage.author.avatarURL)
2539 .setColor("BLUE")
2540 .setDescription(
2541 `**\n**:wrench: Successfully \`\`EDIT\`\` **MESSAGE** In ${oldMessage.channel}\n\n**Channel:** \`\`${oldMessage.channel.name}\`\` (ID: ${oldMessage.channel.id})\n**Message ID:** ${oldMessage.id}\n**Sent By:** <@${oldMessage.author.id}> (ID: ${oldMessage.author.id})\n\n**Old Message:**\`\`\`${oldMessage}\`\`\`\n**New Message:**\`\`\`${newMessage}\`\`\``
2542 )
2543 .setTimestamp()
2544 .setFooter(oldMessage.guild.name, oldMessage.guild.iconURL);
2545
2546 logChannel.send(messageUpdate);
2547});
2548
2549client.on("roleCreate", role => {
2550 if (!role.guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2551 if (!role.guild.member(client.user).hasPermission("VIEW_AUDIT_LOG")) return;
2552 if (!log[role.guild.id])
2553 log[role.guild.id] = {
2554 onoff: "Off"
2555 };
2556 if (log[role.guild.id].onoff === "Off") return;
2557 var logChannel = role.guild.channels.find(
2558 c => c.name === `${log[role.guild.id].channel}`
2559 );
2560 if (!logChannel) return;
2561
2562 role.guild.fetchAuditLogs().then(logs => {
2563 var userID = logs.entries.first().executor.id;
2564 var userAvatar = logs.entries.first().executor.avatarURL;
2565
2566 let roleCreate = new Discord.RichEmbed()
2567 .setTitle("**[ROLE CREATE]**")
2568 .setThumbnail(userAvatar)
2569 .setDescription(
2570 `**\n**:white_check_mark: Successfully \`\`CREATE\`\` Role.\n\n**Role Name:** \`\`${role.name}\`\` (ID: ${role.id})\n**By:** <@${userID}> (ID: ${userID})`
2571 )
2572 .setColor("GREEN")
2573 .setTimestamp()
2574 .setFooter(role.guild.name, role.guild.iconURL);
2575
2576 logChannel.send(roleCreate);
2577 });
2578});
2579client.on("roleDelete", role => {
2580 if (!role.guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2581 if (!role.guild.member(client.user).hasPermission("VIEW_AUDIT_LOG")) return;
2582 if (!log[role.guild.id])
2583 log[role.guild.id] = {
2584 onoff: "Off"
2585 };
2586 if (log[role.guild.id].onoff === "Off") return;
2587 var logChannel = role.guild.channels.find(
2588 c => c.name === `${log[role.guild.id].channel}`
2589 );
2590 if (!logChannel) return;
2591
2592 role.guild.fetchAuditLogs().then(logs => {
2593 var userID = logs.entries.first().executor.id;
2594 var userAvatar = logs.entries.first().executor.avatarURL;
2595
2596 let roleDelete = new Discord.RichEmbed()
2597 .setTitle("**[ROLE DELETE]**")
2598 .setThumbnail(userAvatar)
2599 .setDescription(
2600 `**\n**:white_check_mark: Successfully \`\`DELETE\`\` Role.\n\n**Role Name:** \`\`${role.name}\`\` (ID: ${role.id})\n**By:** <@${userID}> (ID: ${userID})`
2601 )
2602 .setColor("RED")
2603 .setTimestamp()
2604 .setFooter(role.guild.name, role.guild.iconURL);
2605
2606 logChannel.send(roleDelete);
2607 });
2608});
2609client.on("roleUpdate", (oldRole, newRole) => {
2610 if (!oldRole.guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2611 if (!oldRole.guild.member(client.user).hasPermission("VIEW_AUDIT_LOG"))
2612 return;
2613 if (!log[oldRole.guild.id])
2614 log[oldRole.guild.id] = {
2615 onoff: "Off"
2616 };
2617 if (log[oldRole.guild.id].onoff === "Off") return;
2618 var logChannel = oldRole.guild.channels.find(
2619 c => c.name === `${log[oldRole.guild.id].channel}`
2620 );
2621 if (!logChannel) return;
2622
2623 oldRole.guild.fetchAuditLogs().then(logs => {
2624 var userID = logs.entries.first().executor.id;
2625 var userAvatar = logs.entries.first().executor.avatarURL;
2626
2627 if (oldRole.name !== newRole.name) {
2628 if (log[oldRole.guild.id].onoff === "Off") return;
2629 let roleUpdateName = new Discord.RichEmbed()
2630 .setTitle("**[ROLE NAME UPDATE]**")
2631 .setThumbnail(userAvatar)
2632 .setColor("BLUE")
2633 .setDescription(
2634 `**\n**:white_check_mark: Successfully \`\`EDITED\`\` Role Name.\n\n**Old Name:** \`\`${oldRole.name}\`\`\n**New Name:** \`\`${newRole.name}\`\`\n**Role ID:** ${oldRole.id}\n**By:** <@${userID}> (ID: ${userID})`
2635 )
2636 .setTimestamp()
2637 .setFooter(oldRole.guild.name, oldRole.guild.iconURL);
2638
2639 logChannel.send(roleUpdateName);
2640 }
2641 if (oldRole.hexColor !== newRole.hexColor) {
2642 if (oldRole.hexColor === "#000000") {
2643 var oldColor = "`Default`";
2644 } else {
2645 var oldColor = oldRole.hexColor;
2646 }
2647 if (newRole.hexColor === "#000000") {
2648 var newColor = "`Default`";
2649 } else {
2650 var newColor = newRole.hexColor;
2651 }
2652 if (log[oldRole.guild.id].onoff === "Off") return;
2653 let roleUpdateColor = new Discord.RichEmbed()
2654 .setTitle("**[ROLE COLOR UPDATE]**")
2655 .setThumbnail(userAvatar)
2656 .setColor("BLUE")
2657 .setDescription(
2658 `**\n**:white_check_mark: Successfully \`\`EDITED\`\` **${oldRole.name}** Role Color.\n\n**Old Color:** ${oldColor}\n**New Color:** ${newColor}\n**Role ID:** ${oldRole.id}\n**By:** <@${userID}> (ID: ${userID})`
2659 )
2660 .setTimestamp()
2661 .setFooter(oldRole.guild.name, oldRole.guild.iconURL);
2662
2663 logChannel.send(roleUpdateColor);
2664 }
2665 });
2666});
2667
2668client.on("channelCreate", channel => {
2669 if (!channel.guild) return;
2670 if (!channel.guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2671 if (!channel.guild.member(client.user).hasPermission("VIEW_AUDIT_LOG"))
2672 return;
2673 if (!log[channel.guild.id])
2674 log[channel.guild.id] = {
2675 onoff: "Off"
2676 };
2677 if (log[channel.guild.id].onoff === "Off") return;
2678 var logChannel = channel.guild.channels.find(
2679 c => c.name === `${log[channel.guild.id].channel}`
2680 );
2681 if (!logChannel) return;
2682
2683 if (channel.type === "text") {
2684 var roomType = "Text";
2685 } else if (channel.type === "voice") {
2686 var roomType = "Voice";
2687 } else if (channel.type === "category") {
2688 var roomType = "Category";
2689 }
2690
2691 channel.guild.fetchAuditLogs().then(logs => {
2692 var userID = logs.entries.first().executor.id;
2693 var userAvatar = logs.entries.first().executor.avatarURL;
2694
2695 let channelCreate = new Discord.RichEmbed()
2696 .setTitle("**[CHANNEL CREATE]**")
2697 .setThumbnail(userAvatar)
2698 .setDescription(
2699 `**\n**:white_check_mark: Successfully \`\`CREATE\`\` **${roomType}** channel.\n\n**Channel Name:** \`\`${channel.name}\`\` (ID: ${channel.id})\n**By:** <@${userID}> (ID: ${userID})`
2700 )
2701 .setColor("GREEN")
2702 .setTimestamp()
2703 .setFooter(channel.guild.name, channel.guild.iconURL);
2704
2705 logChannel.send(channelCreate);
2706 });
2707});
2708client.on("channelDelete", channel => {
2709 if (!channel.guild) return;
2710 if (!channel.guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2711 if (!channel.guild.member(client.user).hasPermission("VIEW_AUDIT_LOG"))
2712 return;
2713 if (!log[channel.guild.id])
2714 log[channel.guild.id] = {
2715 onoff: "Off"
2716 };
2717 if (log[channel.guild.id].onoff === "Off") return;
2718 var logChannel = channel.guild.channels.find(
2719 c => c.name === `${log[channel.guild.id].channel}`
2720 );
2721 if (!logChannel) return;
2722
2723 if (channel.type === "text") {
2724 var roomType = "Text";
2725 } else if (channel.type === "voice") {
2726 var roomType = "Voice";
2727 } else if (channel.type === "category") {
2728 var roomType = "Category";
2729 }
2730
2731 channel.guild.fetchAuditLogs().then(logs => {
2732 var userID = logs.entries.first().executor.id;
2733 var userAvatar = logs.entries.first().executor.avatarURL;
2734
2735 let channelDelete = new Discord.RichEmbed()
2736 .setTitle("**[CHANNEL DELETE]**")
2737 .setThumbnail(userAvatar)
2738 .setDescription(
2739 `**\n**:white_check_mark: Successfully \`\`DELETE\`\` **${roomType}** channel.\n\n**Channel Name:** \`\`${channel.name}\`\` (ID: ${channel.id})\n**By:** <@${userID}> (ID: ${userID})`
2740 )
2741 .setColor("RED")
2742 .setTimestamp()
2743 .setFooter(channel.guild.name, channel.guild.iconURL);
2744
2745 logChannel.send(channelDelete);
2746 });
2747});
2748client.on("channelUpdate", (oldChannel, newChannel) => {
2749 if (!oldChannel.guild) return;
2750 if (!log[oldChannel.guild.id])
2751 log[oldChannel.guild.id] = {
2752 onoff: "Off"
2753 };
2754 if (log[oldChannel.guild.id].onoff === "Off") return;
2755 var logChannel = oldChannel.guild.channels.find(
2756 c => c.name === `${log[oldChannel.guild.id].channel}`
2757 );
2758 if (!logChannel) return;
2759
2760 if (oldChannel.type === "text") {
2761 var channelType = "Text";
2762 } else if (oldChannel.type === "voice") {
2763 var channelType = "Voice";
2764 } else if (oldChannel.type === "category") {
2765 var channelType = "Category";
2766 }
2767
2768 oldChannel.guild.fetchAuditLogs().then(logs => {
2769 var userID = logs.entries.first().executor.id;
2770 var userAvatar = logs.entries.first().executor.avatarURL;
2771
2772 if (oldChannel.name !== newChannel.name) {
2773 let newName = new Discord.RichEmbed()
2774 .setTitle("**[CHANNEL EDIT]**")
2775 .setThumbnail(userAvatar)
2776 .setColor("BLUE")
2777 .setDescription(
2778 `**\n**:wrench: Successfully Edited **${channelType}** Channel Name\n\n**Old Name:** \`\`${oldChannel.name}\`\`\n**New Name:** \`\`${newChannel.name}\`\`\n**Channel ID:** ${oldChannel.id}\n**By:** <@${userID}> (ID: ${userID})`
2779 )
2780 .setTimestamp()
2781 .setFooter(oldChannel.guild.name, oldChannel.guild.iconURL);
2782
2783 logChannel.send(newName);
2784 }
2785 if (oldChannel.topic !== newChannel.topic) {
2786 if (log[oldChannel.guild.id].onoff === "Off") return;
2787 let newTopic = new Discord.RichEmbed()
2788 .setTitle("**[CHANNEL EDIT]**")
2789 .setThumbnail(userAvatar)
2790 .setColor("BLUE")
2791 .setDescription(
2792 `**\n**:wrench: Successfully Edited **${channelType}** Channel Topic\n\n**Old Topic:**\n\`\`\`${oldChannel.topic ||
2793 "NULL"}\`\`\`\n**New Topic:**\n\`\`\`${newChannel.topic ||
2794 "NULL"}\`\`\`\n**Channel:** ${oldChannel} (ID: ${
2795 oldChannel.id
2796 })\n**By:** <@${userID}> (ID: ${userID})`
2797 )
2798 .setTimestamp()
2799 .setFooter(oldChannel.guild.name, oldChannel.guild.iconURL);
2800
2801 logChannel.send(newTopic);
2802 }
2803 });
2804});
2805
2806client.on("guildBanAdd", (guild, user) => {
2807 if (!guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2808 if (!guild.member(client.user).hasPermission("VIEW_AUDIT_LOG")) return;
2809 if (!log[user.guild.id])
2810 log[guild.guild.id] = {
2811 onoff: "Off"
2812 };
2813 if (log[user.guild.id].onoff === "Off") return;
2814 var logChannel = guild.channels.find(
2815 c => c.name === `${log[guild.guild.id].channel}`
2816 );
2817 if (!logChannel) return;
2818
2819 guild.fetchAuditLogs().then(logs => {
2820 var userID = logs.entries.first().executor.id;
2821 var userAvatar = logs.entries.first().executor.avatarURL;
2822
2823 if (userID === client.user.id) return;
2824
2825 let banInfo = new Discord.RichEmbed()
2826 .setTitle("**[BANNED]**")
2827 .setThumbnail(userAvatar)
2828 .setColor("DARK_RED")
2829 .setDescription(
2830 `**\n**:airplane: Successfully \`\`BANNED\`\` **${user.username}** From the server!\n\n**User:** <@${user.id}> (ID: ${user.id})\n**By:** <@${userID}> (ID: ${userID})`
2831 )
2832 .setTimestamp()
2833 .setFooter(guild.name, guild.iconURL);
2834
2835 logChannel.send(banInfo);
2836 });
2837});
2838client.on("guildBanRemove", (guild, user) => {
2839 if (!guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2840 if (!guild.member(client.user).hasPermission("VIEW_AUDIT_LOG")) return;
2841 if (!log[guild.guild.id])
2842 log[guild.guild.id] = {
2843 onoff: "Off"
2844 };
2845 if (log[guild.guild.id].onoff === "Off") return;
2846 var logChannel = guild.channels.find(
2847 c => c.name === `${log[guild.guild.id].channel}`
2848 );
2849 if (!logChannel) return;
2850
2851 guild.fetchAuditLogs().then(logs => {
2852 var userID = logs.entries.first().executor.id;
2853 var userAvatar = logs.entries.first().executor.avatarURL;
2854
2855 if (userID === client.user.id) return;
2856
2857 let unBanInfo = new Discord.RichEmbed()
2858 .setTitle("**[UNBANNED]**")
2859 .setThumbnail(userAvatar)
2860 .setColor("GREEN")
2861 .setDescription(
2862 `**\n**:unlock: Successfully \`\`UNBANNED\`\` **${user.username}** From the server\n\n**User:** <@${user.id}> (ID: ${user.id})\n**By:** <@${userID}> (ID: ${userID})`
2863 )
2864 .setTimestamp()
2865 .setFooter(guild.name, guild.iconURL);
2866
2867 logChannel.send(unBanInfo);
2868 });
2869});
2870
2871client.on("guildMemberUpdate", (oldMember, newMember) => {
2872 if (!oldMember.guild) return;
2873 if (!log[oldMember.guild.id])
2874 log[oldMember.guild.id] = {
2875 onoff: "Off"
2876 };
2877 if (log[oldMember.guild.id].onoff === "Off") return;
2878 var logChannel = oldMember.guild.channels.find(
2879 c => c.name === `${log[(oldMember, newMember.guild.id)].channel}`
2880 );
2881 if (!logChannel) return;
2882
2883 oldMember.guild.fetchAuditLogs().then(logs => {
2884 var userID = logs.entries.first().executor.id;
2885 var userAvatar = logs.entries.first().executor.avatarURL;
2886 var userTag = logs.entries.first().executor.tag;
2887
2888 if (oldMember.nickname !== newMember.nickname) {
2889 if (oldMember.nickname === null) {
2890 var oldNM = "`اسمه الاصلي`";
2891 } else {
2892 var oldNM = oldMember.nickname;
2893 }
2894 if (newMember.nickname === null) {
2895 var newNM = "`اسمه الاصلي`";
2896 } else {
2897 var newNM = newMember.nickname;
2898 }
2899
2900 let updateNickname = new Discord.RichEmbed()
2901 .setTitle("**[UPDATE MEMBER NICKNAME]**")
2902 .setThumbnail(userAvatar)
2903 .setColor("BLUE")
2904 .setDescription(
2905 `**\n**:spy: Successfully \`\`CHANGE\`\` Member Nickname.\n\n**User:** ${oldMember} (ID: ${oldMember.id})\n**Old Nickname:** ${oldNM}\n**New Nickname:** ${newNM}\n**By:** <@${userID}> (ID: ${userID})`
2906 )
2907 .setTimestamp()
2908 .setFooter(oldMember.guild.name, oldMember.guild.iconURL);
2909
2910 logChannel.send(updateNickname);
2911 }
2912 if (oldMember.roles.size < newMember.roles.size) {
2913 let role = newMember.roles
2914 .filter(r => !oldMember.roles.has(r.id))
2915 .first();
2916 if (!log[oldMember.guild.id])
2917 log[oldMember.guild.id] = {
2918 onoff: "Off"
2919 };
2920 if (log[oldMember.guild.id].onoff === "Off") return;
2921 let roleAdded = new Discord.RichEmbed()
2922 .setTitle("**[ADDED ROLE TO MEMBER]**")
2923 .setThumbnail(oldMember.guild.iconURL)
2924 .setColor("GREEN")
2925 .setDescription(
2926 `**\n**:white_check_mark: Successfully \`\`ADDED\`\` Role to **${oldMember.user.username}**\n\n**User:** <@${oldMember.id}> (ID: ${oldMember.user.id})\n**Role:** \`\`${role.name}\`\` (ID: ${role.id})\n**By:** <@${userID}> (ID: ${userID})`
2927 )
2928 .setTimestamp()
2929 .setFooter(userTag, userAvatar);
2930
2931 logChannel.send(roleAdded);
2932 }
2933 if (oldMember.roles.size > newMember.roles.size) {
2934 let role = oldMember.roles
2935 .filter(r => !newMember.roles.has(r.id))
2936 .first();
2937 if (!log[oldMember.guild.id])
2938 log[oldMember.guild.id] = {
2939 onoff: "Off"
2940 };
2941 if (log[(oldMember, newMember.guild.id)].onoff === "Off") return;
2942 let roleRemoved = new Discord.RichEmbed()
2943 .setTitle("**[REMOVED ROLE FROM MEMBER]**")
2944 .setThumbnail(oldMember.guild.iconURL)
2945 .setColor("RED")
2946 .setDescription(
2947 `**\n**:negative_squared_cross_mark: Successfully \`\`REMOVED\`\` Role from **${oldMember.user.username}**\n\n**User:** <@${oldMember.user.id}> (ID: ${oldMember.id})\n**Role:** \`\`${role.name}\`\` (ID: ${role.id})\n**By:** <@${userID}> (ID: ${userID})`
2948 )
2949 .setTimestamp()
2950 .setFooter(userTag, userAvatar);
2951
2952 logChannel.send(roleRemoved);
2953 }
2954 });
2955 if (oldMember.guild.owner.id !== newMember.guild.owner.id) {
2956 if (!log[oldMember.guild.id])
2957 log[oldMember.guild.id] = {
2958 onoff: "Off"
2959 };
2960 if (log[(oldMember, newMember.guild.id)].onoff === "Off") return;
2961 let newOwner = new Discord.RichEmbed()
2962 .setTitle("**[UPDATE GUILD OWNER]**")
2963 .setThumbnail(oldMember.guild.iconURL)
2964 .setColor("GREEN")
2965 .setDescription(
2966 `**\n**:white_check_mark: Successfully \`\`TRANSFER\`\` The Owner Ship.\n\n**Old Owner:** <@${oldMember.user.id}> (ID: ${oldMember.user.id})\n**New Owner:** <@${newMember.user.id}> (ID: ${newMember.user.id})`
2967 )
2968 .setTimestamp()
2969 .setFooter(oldMember.guild.name, oldMember.guild.iconURL);
2970
2971 logChannel.send(newOwner);
2972 }
2973});
2974
2975client.on("voiceStateUpdate", (voiceOld, voiceNew) => {
2976 if (!voiceOld.guild.member(client.user).hasPermission("EMBED_LINKS")) return;
2977 if (!voiceOld.guild.member(client.user).hasPermission("VIEW_AUDIT_LOG"))
2978 return;
2979 if (!log[voiceOld.guild.id])
2980 log[voiceOld.guild.id] = {
2981 onoff: "Off"
2982 };
2983 if (log[(voiceOld, voiceOld.guild.id)].onoff === "Off") return;
2984 var logChannel = voiceOld.guild.channels.find(
2985 c => c.name === `${log[(voiceOld, voiceNew.guild.id)].channel}`
2986 );
2987 if (!logChannel) return;
2988
2989 voiceOld.guild.fetchAuditLogs().then(logs => {
2990 var userID = logs.entries.first().executor.id;
2991 var userTag = logs.entries.first().executor.tag;
2992 var userAvatar = logs.entries.first().executor.avatarURL;
2993
2994 if (voiceOld.serverMute === false && voiceNew.serverMute === true) {
2995 let serverMutev = new Discord.RichEmbed()
2996 .setTitle("**[VOICE MUTE]**")
2997 .setThumbnail(
2998 "https://images-ext-1.discordapp.net/external/pWQaw076OHwVIFZyeFoLXvweo0T_fDz6U5C9RBlw_fQ/https/cdn.pg.sa/UosmjqDNgS.png"
2999 )
3000 .setColor("RED")
3001 .setDescription(
3002 `**User:** ${voiceOld} (ID: ${voiceOld.id})\n**By:** <@${userID}> (ID: ${userID})\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannel.id})`
3003 )
3004 .setTimestamp()
3005 .setFooter(userTag, userAvatar);
3006
3007 logChannel.send(serverMutev);
3008 }
3009 if (voiceOld.serverMute === true && voiceNew.serverMute === false) {
3010 if (!log[voiceOld.guild.id])
3011 log[voiceOld.guild.id] = {
3012 onoff: "Off"
3013 };
3014 if (log[(voiceOld, voiceOld.guild.id)].onoff === "Off") return;
3015 let serverUnmutev = new Discord.RichEmbed()
3016 .setTitle("**[VOICE UNMUTE]**")
3017 .setThumbnail(
3018 "https://images-ext-1.discordapp.net/external/u2JNOTOc1IVJGEb1uCKRdQHXIj5-r8aHa3tSap6SjqM/https/cdn.pg.sa/Iy4t8H4T7n.png"
3019 )
3020 .setColor("GREEN")
3021 .setDescription(
3022 `**User:** ${voiceOld} (ID: ${voiceOld.id})\n**By:** <@${userID}> (ID: ${userID})\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannel.id})`
3023 )
3024 .setTimestamp()
3025 .setFooter(userTag, userAvatar);
3026
3027 logChannel.send(serverUnmutev);
3028 }
3029 if (voiceOld.serverDeaf === false && voiceNew.serverDeaf === true) {
3030 if (!log[voiceOld.guild.id])
3031 log[voiceOld.guild.id] = {
3032 onoff: "Off"
3033 };
3034 if (log[(voiceOld, voiceOld.guild.id)].onoff === "Off") return;
3035 let serverDeafv = new Discord.RichEmbed()
3036 .setTitle("**[VOICE DEAF]**")
3037 .setThumbnail(
3038 "https://images-ext-1.discordapp.net/external/7ENt2ldbD-3L3wRoDBhKHb9FfImkjFxYR6DbLYRjhjA/https/cdn.pg.sa/auWd5b95AV.png"
3039 )
3040 .setColor("RED")
3041 .setDescription(
3042 `**User:** ${voiceOld} (ID: ${voiceOld.id})\n**By:** <@${userID}> (ID: ${userID})\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannel.id})`
3043 )
3044 .setTimestamp()
3045 .setFooter(userTag, userAvatar);
3046
3047 logChannel.send(serverDeafv);
3048 }
3049 if (voiceOld.serverDeaf === true && voiceNew.serverDeaf === false) {
3050 if (!log[voiceOld.guild.id])
3051 log[voiceOld.guild.id] = {
3052 onoff: "Off"
3053 };
3054 if (log[(voiceOld, voiceOld.guild.id)].onoff === "Off") return;
3055 let serverUndeafv = new Discord.RichEmbed()
3056 .setTitle("**[VOICE UNDEAF]**")
3057 .setThumbnail(
3058 "https://images-ext-2.discordapp.net/external/s_abcfAlNdxl3uYVXnA2evSKBTpU6Ou3oimkejx3fiQ/https/cdn.pg.sa/i7fC8qnbRF.png"
3059 )
3060 .setColor("GREEN")
3061 .setDescription(
3062 `**User:** ${voiceOld} (ID: ${voiceOld.id})\n**By:** <@${userID}> (ID: ${userID})\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannel.id})`
3063 )
3064 .setTimestamp()
3065 .setFooter(userTag, userAvatar);
3066
3067 logChannel.send(serverUndeafv);
3068 }
3069 });
3070
3071 if (
3072 voiceOld.voiceChannelID !== voiceNew.voiceChannelID &&
3073 voiceNew.voiceChannel &&
3074 voiceOld.voiceChannel != null
3075 ) {
3076 if (!log[voiceOld.guild.id])
3077 log[voiceOld.guild.id] = {
3078 onoff: "Off"
3079 };
3080 if (log[(voiceOld, voiceOld.guild.id)].onoff === "Off") return;
3081 let voiceLeave = new Discord.RichEmbed()
3082 .setTitle("**[CHANGED VOICE ROOM]**")
3083 .setColor("GREEN")
3084 .setThumbnail(voiceOld.user.avatarURL)
3085 .setDescription(
3086 `**\n**:repeat: Successfully \`\`CHANGED\`\` The Voice Channel.\n\n**From:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannelID})\n**To:** \`\`${voiceNew.voiceChannel.name}\`\` (ID: ${voiceNew.voiceChannelID})\n**User:** ${voiceOld} (ID: ${voiceOld.id})`
3087 )
3088 .setTimestamp()
3089 .setFooter(voiceOld.user.tag, voiceOld.user.avatarURL);
3090
3091 logChannel.send(voiceLeave);
3092 }
3093});
3094
3095///////////////////
3096
3097client.on("ready", () => {
3098 console.log(`Logged in as ${client.user.tag}!`);
3099});
3100client.on("message", message => {
3101 if (message.content === "السلام عليكم") {
3102 message.channel.send("**:heart:وعليكم السلام ورحمة الله وبركاته:heart:**");
3103 message.channel.sendFile("");
3104 }
3105});
3106
3107client.on("message", message => {
3108 let args = message.content.split(" ").slice(1);
3109 if (message.content.split(" ")[0] == "-color") {
3110 const embedd = new Discord.RichEmbed()
3111 .setFooter(
3112 "Requested by " + message.author.username,
3113 message.author.avatarURL
3114 )
3115 .setDescription(`**There's No Color With This Number ** :x: `)
3116 .setColor(`ff0000`);
3117
3118 if (!isNaN(args) && args.length > 0)
3119 if (!message.guild.roles.find("name", `${args}`))
3120 return message.channel.sendEmbed(embedd);
3121
3122 var a = message.guild.roles.find("name", `${args}`);
3123 if (!a) return;
3124 const embed = new Discord.RichEmbed()
3125
3126 .setFooter(
3127 "Requested by " + message.author.username,
3128 message.author.avatarURL
3129 )
3130 .setDescription(`**Color Changed To Successfully** :white_check_mark: `)
3131
3132 .setColor(`${a.hexColor}`);
3133 message.channel.sendEmbed(embed);
3134 if (!args) return;
3135 setInterval(function() {});
3136 let count = 0;
3137 let ecount = 0;
3138 for (let x = 1; x < 201; x++) {
3139 message.member.removeRole(message.guild.roles.find("name", `${x}`));
3140 }
3141 message.member.addRole(message.guild.roles.find("name", `${args}`));
3142 }
3143});
3144
3145client.on("message", ra3d => {
3146 let args = ra3d.content
3147 .split(" ")
3148 .slice(1)
3149 .join(" ");
3150 if (ra3d.content.startsWith(prefix + "color")) {
3151 if (!args) return ra3d.channel.send("`يرجي اختيار كم لون `");
3152 if (!ra3d.member.hasPermission("MANAGE_ROLES"))
3153 return ra3d.channel.sendMessage(
3154 "`**⚠ | `[MANAGE_ROLES]` لا يوجد لديك صلاحية**"
3155 );
3156 ra3d.channel.send(`**✅ |Created __${args}__ Colors**`);
3157 setInterval(function() {});
3158 let count = 0;
3159 let ecount = 0;
3160 for (let x = 1; x < `${parseInt(args) + 1}`; x++) {
3161 ra3d.guild.createRole({ name: x, color: "RANDOM" });
3162 }
3163 }
3164});
3165
3166
3167client.on("message", async message => {
3168 var room;
3169 var title; //HactorMC
3170 var duration; //HactorMC
3171 var gMembers;
3172 var filter = m => m.author.id === message.author.id;
3173 if (message.content.startsWith(prefix + "giveaway")) {
3174 //return message.channel.send('**في مشكله ببعض الاساسيات من فضلك انتظر شوي**');
3175 if (!message.guild.member(message.author).hasPermission("MANAGE_GUILD"))
3176 return message.channel.send(
3177 ":heavy_multiplication_x:| **يجب أن يكون لديك خاصية التعديل على السيرفر**"
3178 );
3179 message.channel
3180 .send(`**من فضلك اكتب اسم الروم بدون منشن ( # )**`)
3181 .then(msgg => {
3182 message.channel
3183 .awaitMessages(filter, {
3184 max: 1, //HactorMC
3185 time: 20000,
3186 errors: ["time"]
3187 })
3188 .then(collected => {
3189 let room = message.guild.channels.find(
3190 "name",
3191 collected.first().content
3192 );
3193 if (!room)
3194 return message.channel.send(
3195 "**لم اقدر علي ايجاد الروم | اعد المحاوله لاحقا**"
3196 );
3197 room = collected.first().content;
3198 collected.first().delete();
3199 msgg.edit("**اكتب مدة القيف اواي بالدقائق**").then(msg => {
3200 message.channel
3201 .awaitMessages(filter, {
3202 max: 1, //HactorMC
3203 time: 20000,
3204 errors: ["time"]
3205 })
3206 .then(collected => {
3207 if (isNaN(collected.first().content))
3208 return message.channel.send(
3209 ":heavy_multiplication_x:| **يجب عليك ان تحدد وقت زمني صحيح.. ``يجب عليك اعادة كتابة الامر``**"
3210 );
3211 duration = collected.first().content * 60000;
3212 collected.first().delete();
3213 msgg
3214 .edit(
3215 ":eight_pointed_black_star:| **اكتب على ماذا تريد القيف اواي**"
3216 )
3217 .then(msg => {
3218 message.channel
3219 .awaitMessages(filter, {
3220 max: 1,
3221 time: 20000,
3222 errors: ["time"]
3223 })
3224 .then(collected => {
3225 title = collected.first().content;
3226 collected.first().delete();
3227 try {
3228 let giveEmbed = new Discord.RichEmbed()
3229 .setAuthor(
3230 message.guild.name,
3231 message.guild.iconURL
3232 )
3233 .setTitle(title)
3234 .setDescription(
3235 `المدة : ${duration / 60000} دقائق`
3236 )
3237 .setFooter(
3238 message.author.username,
3239 message.author.avatarURL
3240 );
3241 message.guild.channels
3242 .find("name", room)
3243 .send(giveEmbed)
3244 .then(m => {
3245 let re = m.react("?");
3246 setTimeout(() => {
3247 let users = m.reactions.get("?").users;
3248 let list = users
3249 .array()
3250 .filter(u => u.id !== m.author.id);
3251 let gFilter =
3252 list[
3253 Math.floor(Math.random() * list.length) +
3254 0
3255 ];
3256 if (users.size === 1)
3257 gFilter = "**لم يتم التحديد**";
3258 let endEmbed = new Discord.RichEmbed()
3259 .setAuthor(
3260 message.author.username,
3261 message.author.avatarURL
3262 )
3263 .setTitle(title)
3264 .addField(
3265 "انتهى القيف اواي !",
3266 `الفائز هو : ${gFilter}`
3267 )
3268 .setFooter(
3269 message.guild.name,
3270 message.guild.iconURL
3271 );
3272 m.edit(endEmbed);
3273 }, duration);
3274 });
3275 msgg.edit(
3276 `:heavy_check_mark:| **تم اعداد القيف اواي**`
3277 );
3278 } catch (e) {
3279 msgg.edit(
3280 `:heavy_multiplication_x:| **لم اقدر علي اعداد القيف اواي بسبب عدم توفر البرمشن المطلوب**`
3281 );
3282 console.log(e);
3283 }
3284 });
3285 });
3286 });
3287 });
3288 });
3289 });
3290 }
3291});
3292
3293client.on("message", message => {
3294 if (message.content.startsWith(prefix + "setby")) {
3295 let args = message.mentions.channels.first();
3296 if (!args)
3297 message.channel.send("** منشن روم . ❌**").then(m => {
3298 m.delete(1500);
3299 });
3300 if (
3301 !message.guild.member(message.author.id).hasPermission("MANAGE_CHANNELS")
3302 )
3303 return message.channel.send("**ليس لديك صلاحيات . ❌**");
3304 message.channel.send(`**${args}. لقد تم شغيل المغادرة هنا.**`); //By ItzTexo
3305 client.on("guildMemberAdd", member => {
3306 if (member.user.bot) return;
3307 var embed = new Discord.RichEmbed()
3308 .setAuthor(member.user.username, member.user.avatarURL)
3309 .setThumbnail(member.user.avatarURL)
3310 .setTitle(`**__الله معاك ✋ ? ?__**`)
3311 .addField("**__شكرا لوقتك__** ", `${member}`)
3312 .setDescription(`**__مع السلامه تشرفنا بك ✋? ?__** `)
3313 .addField("? تبقي", `**[ ${member.guild.memberCount} ]**`, true)
3314 .setColor("RANDOM")
3315 .setFooter(
3316 `==== نــتــمــنــآ لــكــم آســتــمـــتــآع ====`,
3317 "https://cdn.discordapp.com/attachments/397818254439219217/399292026782351381/shy.png"
3318 );
3319
3320 var channel = member.guild.channels.find("name", "leave");
3321 if (!channel) return;
3322 channel.send({ embed: embed });
3323 });
3324 }
3325});
3326
3327client.on("message", message => {
3328 if (message.author.bot) return;
3329 if (message.content === "حشيش") {
3330 message.channel.sendFile(
3331 "https://cdn.discordapp.com/attachments/462240606513659904/481474963925106708/images.jpg"
3332 );
3333 }
3334});
3335
3336client.on("message", async message => {
3337 if (message.author.bot) return;
3338 if (message.channel.type === "dm") return;
3339
3340 let prefix = "-";
3341 let messageArray = message.content.split(" ");
3342 let cmd = messageArray[0];
3343 let args = messageArray.slice(1);
3344
3345 if (cmd === `${prefix}kick`) {
3346 let kUser = message.guild.member(
3347 message.mentions.users.first() || message.guild.members.get(args[0])
3348 );
3349 if (!kUser) return message.channel.send("فين العضو ؟");
3350 let kReason = args.join(" ").slice(22);
3351 if (!message.member.hasPermission("MANAGE_CHANNELS"))
3352 return message.channel.send("ما عندك برمشن");
3353 if (kUser.hasPermission("MANAGE_CHANNELS"))
3354 return message.channel.send("ما تقدر تسوي كيك للأدمين");
3355
3356 let kickEmbed = new Discord.RichEmbed()
3357 .setDescription("~Kick~")
3358 .setColor("#e56b00")
3359 .addField("Kicked User", `${kUser} with ID ${kUser.id}`)
3360 .addField(
3361 "Kicked By",
3362 `<@${message.author.id}> with the id ${message.author.id}`
3363 )
3364 .addField("Kicked In", message.channel)
3365 .addField("Time", message.createdAt)
3366 .addField("Reason", kReason);
3367
3368 let kickChannel = message.guild.channels.find("name", "kick-ban");
3369 if (!kickChannel) return message.channel.send("لم اجد روم ال kick-ban");
3370
3371 message.guild.member(kUser).kick(kReason);
3372 kickChannel.send(kickEmbed);
3373 }
3374});
3375/// تعديل مهم رد تلقائي
3376client.on("message", msg => {
3377 if (msg.content === "باك") {
3378 msg.reply("** ولكم نورت :sparkling_heart: :wink:** ");
3379 }
3380});
3381
3382client.on("message", msg => {
3383 if (msg.content === "هاي") {
3384 msg.reply("** هاي يا عسل :kissing_heart: :heart: **");
3385 }
3386});
3387
3388client.on("message", msg => {
3389 if (msg.content === "هلا") {
3390 msg.reply("**هلا بيك :heart: **");
3391 }
3392});
3393
3394client.on("message", message => {
3395 if (!message.channel.guild) return;
3396 if (message.content.startsWith("=ping")) {
3397 if (message.author.bot) return;
3398 if (!message.channel.guild) return;
3399 var Bping = `${Math.round(client.ping)}`;
3400
3401 const E1ping = new Discord.RichEmbed()
3402 .setTitle("ــــــــــــــــــــــــــــــ")
3403 .addField(
3404 `**BOT Ping Is** :__${Bping}?__`,
3405 "ــــــــــــــــــــــــــــــ"
3406 )
3407 .setFooter(`Requested by | ${message.author.tag}`)
3408 .setColor("RANDOM");
3409 message.channel.send(E1ping);
3410 }
3411});
3412
3413client.on("guildCreate", guild => {
3414 var embed = new Discord.RichEmbed().setImage(
3415 ""
3416 ).setDescription(` ✽ **Thank You for Adding Bot To Your Server** ✽
3417 ✽ **Support Server** [ • • ] ✽ `); //تعديل مهم رابط سيرفرك
3418 guild.owner.send(embed);
3419});
3420
3421
3422let anti = JSON.parse(fs.readFileSync("./antigreff.json", "UTF8"));
3423let config = JSON.parse(fs.readFileSync("./server.json", "UTF8"));
3424client.on("message", message => {
3425 if (!message.channel.guild) return;
3426 let user = anti[message.guild.id + message.author.id]
3427 let num = message.content.split(" ").slice(2).join(" ");
3428 if (!anti[message.guild.id + message.author.id]) anti[message.guild.id + message.author.id] = {
3429 actions: 0
3430 }
3431 if (!config[message.guild.id]) config[message.guild.id] = {
3432 banLimit: 3,
3433 chaDelLimit: 3,
3434 roleDelLimit: 3,
3435 kickLimits: 3,
3436 roleCrLimits: 3,
3437 time: 30
3438 }
3439 if (message.content.startsWith(prefix + "settings limits")) {
3440
3441
3442 if (message.author.id !== message.guild.owner.user.id) return message.channel.send(`**لا تستطيع استخدام هذا الامر**`);
3443 if (message.content.startsWith(prefix + "settings limitsban")) {
3444 if (!num) return message.channel.send("**⇏ | أرسل رقم ! **");
3445 if (isNaN(num)) return message.channel.send("**⇏ | أرقام فقط ! **");
3446 config[message.guild.id].banLimit = num;
3447 message.channel.send(`**⇏ | تم التغيير اِلي : ${config[message.guild.id].banLimit} **`)
3448 }
3449 if (message.content.startsWith(prefix + "settings limitskick")) {
3450 if (!num) return message.channel.send("**⇏ | أرسل رقم ! **");
3451 if (isNaN(num)) return message.channel.send("**⇏ | أرقام فقط ! **");
3452 config[message.guild.id].kickLimits = num;
3453 message.channel.send(`**⇏ | تم التغيير اِلي : ${config[message.guild.id].kickLimits}**`)
3454 }
3455 if (message.content.startsWith(prefix + "settings limitsroleD")) {
3456 if (!num) return message.channel.send("**⇏ | أرسل رقم ! **");
3457 if (isNaN(num)) return message.channel.send("**⇏ | أرقام فقط ! **");
3458 config[message.guild.id].roleDelLimit = num;
3459 message.channel.send(`**⇏ | تم التغيير اِلي : ${config[message.guild.id].roleDelLimit}**`)
3460 }
3461 if (message.content.startsWith(prefix + "settings limitsroleC")) {
3462 if (!num) return message.channel.send("**⇏ | أرسل رقم ! **");
3463 if (isNaN(num)) return message.channel.send("**⇏ | أرقام فقط ! **");
3464 config[message.guild.id].roleCrLimits = num;
3465 message.channel.send(`**⇏ | تم التغيير اِلي : ${config[message.guild.id].roleCrLimits}**`)
3466 }
3467 if (message.content.startsWith(prefix + "settings limitschannelD")) {
3468 if (!num) return message.channel.send("**⇏ | أرسل رقم ! **");
3469 if (isNaN(num)) return message.channel.send("**⇏ | أرقام فقط ! **");
3470 config[message.guild.id].chaDelLimit = num;
3471 message.channel.send(`**⇏ | تم التغيير اِلي : ${config[message.guild.id].chaDelLimit}**`)
3472 }
3473 if (message.content.startsWith(prefix + "settings limitstime")) {
3474 if (!num) return message.channel.send("**⇏ | أرسل رقم ! **");
3475 if (isNaN(num)) return message.channel.send("**⇏ | أرقام فقط ! **");
3476 config[message.guild.id].time = num;
3477 message.channel.send(`**⇏ | تم التغيير اِلي : ${config[message.guild.id].time}**`)
3478 }
3479 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3480 if (e) throw e;
3481 });
3482 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3483 if (e) throw e;
3484 });
3485 }
3486});
3487client.on("channelDelete", async channel => {
3488 const entry1 = await channel.guild.fetchAuditLogs({
3489 type: 'CHANNEL_DELETE'
3490 }).then(audit => audit.entries.first())
3491 console.log(entry1.executor.username)
3492 const entry = entry1.executor
3493 if (!config[channel.guild.id]) config[channel.guild.id] = {
3494 banLimit: 3,
3495 chaDelLimit: 3,
3496 roleDelLimit: 3,
3497 kickLimits: 3,
3498 roleCrLimits: 3
3499 }
3500 if (!anti[channel.guild.id + entry.id]) {
3501 anti[channel.guild.id + entry.id] = {
3502 actions: 1
3503 }
3504 setTimeout(() => {
3505 anti[channel.guild.id + entry.id].actions = "0"
3506 }, config[channel.guild.id].time * 1000)
3507 } else {
3508 anti[channel.guild.id + entry.id].actions = Math.floor(anti[channel.guild.id + entry.id].actions + 1)
3509 console.log("TETS");
3510 setTimeout(() => {
3511 anti[channel.guild.id + entry.id].actions = "0"
3512 }, config[channel.guild.id].time * 1000)
3513 if (anti[channel.guild.id + entry.id].actions >= config[channel.guild.id].chaDelLimit) {
3514 channel.guild.members.get(entry.id).ban().catch(e => channel.guild.owner.send(`**⇏ | ${entry.username} قام بمسح الكثير من الرومات **`))
3515 anti[channel.guild.id + entry.id].actions = "0"
3516 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3517 if (e) throw e;
3518 });
3519 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3520 if (e) throw e;
3521 });
3522 }
3523 }
3524
3525 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3526 if (e) throw e;
3527 });
3528 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3529 if (e) throw e;
3530 });
3531});
3532
3533client.on("roleDelete", async channel => {
3534 const entry1 = await channel.guild.fetchAuditLogs({
3535 type: 'ROLE_DELETE'
3536 }).then(audit => audit.entries.first())
3537 console.log(entry1.executor.username)
3538 const entry = entry1.executor
3539 if (!config[channel.guild.id]) config[channel.guild.id] = {
3540 banLimit: 3,
3541 chaDelLimit: 3,
3542 roleDelLimit: 3,
3543 kickLimits: 3,
3544 roleCrLimits: 3
3545 }
3546 if (!anti[channel.guild.id + entry.id]) {
3547 anti[channel.guild.id + entry.id] = {
3548 actions: 1
3549 }
3550 setTimeout(() => {
3551 anti[channel.guild.id + entry.id].actions = "0"
3552 }, config[channel.guild.id].time * 1000)
3553 } else {
3554 anti[channel.guild.id + entry.id].actions = Math.floor(anti[channel.guild.id + entry.id].actions + 1)
3555 console.log("TETS");
3556 setTimeout(() => {
3557 anti[channel.guild.id + entry.id].actions = "0"
3558 }, config[channel.guild.id].time * 1000)
3559 if (anti[channel.guild.id + entry.id].actions >= config[channel.guild.id].roleDelLimit) {
3560 channel.guild.members.get(entry.id).ban().catch(e => channel.guild.owner.send(`**⇏ | ${entry.username} قام بمسح الكثير من الرتب **`))
3561 anti[channel.guild.id + entry.id].actions = "0"
3562 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3563 if (e) throw e;
3564 });
3565 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3566 if (e) throw e;
3567 });
3568 }
3569 }
3570
3571 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3572 if (e) throw e;
3573 });
3574 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3575 if (e) throw e;
3576 });
3577});
3578
3579client.on("roleCreate", async channel => {
3580 const entry1 = await channel.guild.fetchAuditLogs({
3581 type: 'ROLE_CREATE'
3582 }).then(audit => audit.entries.first())
3583 console.log(entry1.executor.username)
3584 const entry = entry1.executor
3585 if (!config[channel.guild.id]) config[channel.guild.id] = {
3586 banLimit: 3,
3587 chaDelLimit: 3,
3588 roleDelLimit: 3,
3589 kickLimits: 3,
3590 roleCrLimits: 3
3591 }
3592 if (!anti[channel.guild.id + entry.id]) {
3593 anti[channel.guild.id + entry.id] = {
3594 actions: 1
3595 }
3596 setTimeout(() => {
3597 anti[channel.guild.id + entry.id].actions = "0"
3598 }, config[channel.guild.id].time * 1000)
3599 } else {
3600 anti[channel.guild.id + entry.id].actions = Math.floor(anti[channel.guild.id + entry.id].actions + 1)
3601 console.log("TETS");
3602 setTimeout(() => {
3603 anti[channel.guild.id + entry.id].actions = "0"
3604 }, config[channel.guild.id].time * 1000)
3605 if (anti[channel.guild.id + entry.id].actions >= config[channel.guild.id].roleCrLimits) {
3606 channel.guild.members.get(entry.id).ban().catch(e => channel.guild.owner.send(`**⇏ | ${entry.username} قام بأنشاء الكثير من الرتب **`))
3607 anti[channel.guild.id + entry.id].actions = "0"
3608 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3609 if (e) throw e;
3610 });
3611 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3612 if (e) throw e;
3613 });
3614 }
3615 }
3616
3617 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3618 if (e) throw e;
3619 });
3620 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3621 if (e) throw e;
3622 });
3623});
3624
3625client.on("guildBanAdd", async (guild, user) => {
3626 const entry1 = await guild.fetchAuditLogs({
3627 type: 'MEMBER_BAN_ADD'
3628 }).then(audit => audit.entries.first())
3629 console.log(entry1.executor.username)
3630 const entry = entry1.executor
3631 if (!config[guild.id]) config[guild.id] = {
3632 banLimit: 3,
3633 chaDelLimit: 3,
3634 roleDelLimit: 3,
3635 kickLimits: 3,
3636 roleCrLimits: 3
3637 }
3638 if (!anti[guild.id + entry.id]) {
3639 anti[guild.id + entry.id] = {
3640 actions: 1
3641 }
3642 setTimeout(() => {
3643 anti[guild.id + entry.id].actions = "0"
3644 }, config[guild.id].time * 1000)
3645 } else {
3646 anti[guild.id + entry.id].actions = Math.floor(anti[guild.id + entry.id].actions + 1)
3647 console.log("TETS");
3648 setTimeout(() => {
3649 anti[guild.id + entry.id].actions = "0"
3650 }, config[guild.id].time * 1000)
3651 if (anti[guild.id + entry.id].actions >= config[guild.id].banLimit) {
3652 guild.members.get(entry.id).ban().catch(e => guild.owner.send(`**⇏ | ${entry.username} حاول حظر جميع الأعضاء **`))
3653 anti[guild.id + entry.id].actions = "0"
3654 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3655 if (e) throw e;
3656 });
3657 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3658 if (e) throw e;
3659 });
3660 }
3661 }
3662
3663 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3664 if (e) throw e;
3665 });
3666 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3667 if (e) throw e;
3668 });
3669});
3670
3671client.on("guildKickAdd", async (guild, user) => {
3672 const entry1 = await guild.fetchAuditLogs({
3673 type: 'MEMBER_KICK'
3674 }).then(audit => audit.entries.first())
3675 console.log(entry1.executor.username)
3676 const entry = entry1.executor
3677 if (!config[guild.id]) config[guild.id] = {
3678 banLimit: 3,
3679 chaDelLimit: 3,
3680 roleDelLimit: 3,
3681 kickLimits: 3,
3682 roleCrLimits: 3
3683 }
3684 if (!anti[guild.id + entry.id]) {
3685 anti[guild.id + entry.id] = {
3686 actions: 1
3687 }
3688 setTimeout(() => {
3689 anti[guild.id + entry.id].actions = "0"
3690 }, config[guild.id].time * 1000)
3691 } else {
3692 anti[guild.id + entry.id].actions = Math.floor(anti[guild.id + entry.id].actions + 1)
3693 console.log("TETS");
3694 setTimeout(() => {
3695 anti[guild.id + entry.id].actions = "0"
3696 }, config[guild.id].time * 1000)
3697 if (anti[guild.id + entry.id].actions >= config[guild.id].banLimit) {
3698 guild.members.get(entry.id).ban().catch(e => guild.owner.send(`**⇏ | ${entry.username} حاول حظر جميع الأعضاء **`))
3699 anti[guild.id + entry.id].actions = "0"
3700 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3701 if (e) throw e;
3702 });
3703 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3704 if (e) throw e;
3705 });
3706 }
3707 }
3708
3709 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3710 if (e) throw e;
3711 });
3712 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3713 if (e) throw e;
3714 });
3715});
3716
3717client.on("guildMemberRemove", async member => {
3718 const entry1 = await member.guild.fetchAuditLogs().then(audit => audit.entries.first())
3719 if (entry1.action === "MEMBER_KICK") {
3720 const entry2 = await member.guild.fetchAuditLogs({
3721 type: "MEMBER_KICK"
3722 }).then(audit => audit.entries.first())
3723 const entry = entry2.executor;
3724 if (!config[member.guild.id]) config[guild.id] = {
3725 banLimit: 3,
3726 chaDelLimit: 3,
3727 roleDelLimit: 3,
3728 kickLimits: 3,
3729 roleCrLimits: 3
3730 }
3731 if (!anti[member.guild.id + entry.id]) {
3732 anti[member.guild.id + entry.id] = {
3733 actions: 1
3734 }
3735 setTimeout(() => {
3736 anti[member.guild.id + entry.id].actions = "0"
3737 }, config[member.guild.id].time * 1000)
3738 } else {
3739 anti[member.guild.id + entry.id].actions = Math.floor(anti[member.guild.id + entry.id].actions + 1)
3740 console.log("TETS");
3741 setTimeout(() => {
3742 anti[member.guild.id + entry.id].actions = "0"
3743 }, config[member.guild.id].time * 1000)
3744 if (anti[member.guild.id + entry.id].actions >= config[member.guild.id].kickLimits) {
3745 member.members.get(entry.id).ban().catch(e => member.owner.send(`**⇏ | ${entry.username} حاول حظر جميع الأعضاء **`))
3746 anti[member.guild.id + entry.id].actions = "0"
3747 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3748 if (e) throw e;
3749 });
3750 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3751 if (e) throw e;
3752 });
3753 }
3754 }
3755
3756 fs.writeFile("./config.json", JSON.stringify(config, null, 2), function (e) {
3757 if (e) throw e;
3758 });
3759 fs.writeFile("./antigreff.json", JSON.stringify(anti, null, 2), function (e) {
3760 if (e) throw e;
3761 });
3762 }
3763
3764})
3765var Enmap = require("enmap");
3766client.antibots = new Enmap({ name: "chat" });
3767var antibots = client.antibots;
3768var julian = client;
3769julian.on("message", codes => {
3770 if (codes.content.startsWith(prefix + "antibots on")) {
3771 if (
3772 codes.author.bot ||
3773 !codes.channel.guild ||
3774 codes.author.id != codes.guild.ownerID
3775 )
3776 return;
3777 antibots.set(`${codes.guild.id}`, {
3778 onoff: "On"
3779 });
3780
3781 codes.channel.send("AntiBots Join Is On");
3782 }
3783 if (codes.content.startsWith(prefix + "antibots off")) {
3784 if (
3785 codes.author.bot ||
3786 !codes.channel.guild ||
3787 codes.author.id != codes.guild.ownerID
3788 )
3789 return;
3790 antibots.set(`${codes.guild.id}`, {
3791 onoff: "Off"
3792 });
3793 codes.channel.send("AntiBots Join Is Off");
3794 }
3795});
3796
3797julian.on("guildMemberAdd", member => {
3798 if (!antibots.get(`${member.guild.id}`)) {
3799 antibots.set(`${member.guild.id}`, {
3800 onoff: "Off"
3801 });
3802 }
3803 if (antibots.get(`${member.guild.id}`).onoff == "Off") return;
3804 if (member.user.bot) return member.kick();
3805});
3806
3807client.on("message", async message => {
3808 const moment = require("moment"); //npm i moment
3809 const ms = require("ms"); //npm i ms
3810 // var prefix = '' //Bot Prefix !
3811 var time = moment().format("Do MMMM YYYY , hh:mm");
3812 var room;
3813 var title;
3814 var duration;
3815 var currentTime = new Date(),
3816 hours = currentTime.getHours() + 3,
3817 minutes = currentTime.getMinutes(),
3818 done = currentTime.getMinutes() + duration,
3819 seconds = currentTime.getSeconds();
3820 if (minutes < 10) {
3821 minutes = "0" + minutes;
3822 }
3823 var suffix = "AM";
3824 if (hours >= 12) {
3825 suffix = "PM";
3826 hours = hours - 12;
3827 }
3828 if (hours == 0) {
3829 hours = 12;
3830 }
3831
3832 var filter = m => m.author.id === message.author.id;
3833 if (message.content.startsWith(prefix + "gcreate")) {
3834 let embed1 = new Discord.RichEmbed()
3835 .setColor()
3836 .setDescription("Missing the following permission `MANAGE_GUILD`");
3837
3838 let embed2 = new Discord.RichEmbed()
3839 .setColor()
3840 .setDescription("Please send the `room` name without mentioning it");
3841
3842 let embed3 = new Discord.RichEmbed()
3843 .setColor()
3844 .setDescription("Wrong room name");
3845
3846 let embed4 = new Discord.RichEmbed()
3847 .setColor()
3848 .setDescription("Please send the `time`");
3849
3850 let embed5 = new Discord.RichEmbed()
3851 .setColor()
3852 .setDescription(
3853 "Wrong time format\nExample of time format: 1s / 1m / 1h / 1d / 1w"
3854 );
3855
3856 let embed6 = new Discord.RichEmbed()
3857 .setColor()
3858 .setDescription("Please send the `gift`");
3859
3860 if (!message.guild.member(message.author).hasPermission("MANAGE_GUILD"))
3861 return message.channel.send(embed1);
3862 message.channel.send(embed2).then(msg => {
3863 message.channel
3864 .awaitMessages(filter, {
3865 max: 1,
3866 time: 20000,
3867 errors: ["time"]
3868 })
3869 .then(collected => {
3870 let room = message.guild.channels.find(
3871 "name",
3872 collected.first().content
3873 );
3874 if (!room) return message.channel.send(embed3);
3875 room = collected.first().content;
3876 collected.first().delete();
3877 msg.edit(embed4).then(msg => {
3878 message.channel
3879 .awaitMessages(filter, {
3880 max: 1,
3881 time: 20000,
3882 errors: ["time"]
3883 })
3884 .then(collected => {
3885 if (!collected.first().content.match(/[1-60][s,m,h,d,w]/g))
3886 return message.channel.send(embed5);
3887 duration = collected.first().content;
3888 collected.first().delete();
3889 msg.edit(embed6).then(msg => {
3890 message.channel
3891 .awaitMessages(filter, {
3892 max: 1,
3893 time: 20000,
3894 errors: ["time"]
3895 })
3896 .then(collected => {
3897 title = collected.first().content;
3898 collected.first().delete();
3899 msg.delete();
3900 message.delete();
3901 try {
3902 let giveEmbed = new Discord.RichEmbed()
3903 .setColor()
3904 .setTitle(`${title}`)
3905 .setDescription(
3906 `React With ? To Enter! \nTime remaining : ${duration} \n **Created at :** ${hours}:${minutes}:${seconds} ${suffix}`
3907 );
3908 //.setFooter(message.author.username, message.author.avatarURL);
3909 message.guild.channels
3910 .find("name", room)
3911 .send(" :tada: **Giveaway** :tada:", {
3912 embed: giveEmbed
3913 })
3914 .then(m => {
3915 let re = m.react("?");
3916 setTimeout(() => {
3917 let users = m.reactions.get("?").users;
3918 let list = users
3919 .array()
3920 .filter(
3921 u => (u.id !== m.author.id) !== client.user.id
3922 );
3923 let gFilter =
3924 list[
3925 Math.floor(Math.random() * list.length) + 1
3926 ];
3927 if (gFilter === undefined) {
3928 let endEmbed = new Discord.RichEmbed()
3929 .setColor()
3930 .setTitle(title)
3931 .setDescription(
3932 `Winners : no enough number of reaction so there is no winner`
3933 )
3934 .setFooter("Ended at :")
3935 .setTimestamp();
3936 m.edit("** ? GIVEAWAY ENDED ?**", {
3937 embed: endEmbed
3938 });
3939 } else {
3940 let endEmbed = new Discord.RichEmbed()
3941 .setColor()
3942 .setTitle(title)
3943 .setDescription(`Winners : ${gFilter}`)
3944 .setFooter("Ended at :")
3945 .setTimestamp();
3946 m.edit("** ? GIVEAWAY ENDED ?**", {
3947 embed: endEmbed
3948 });
3949 }
3950 if (gFilter === undefined) {
3951 // message.guild.channels.find("name" , room).send("No enough number of reactions")
3952 } else {
3953 message.guild.channels
3954 .find("name", room)
3955 .send(
3956 `**Congratulations ${gFilter}! You won The \`${title}\`**`
3957 );
3958 }
3959 }, ms(duration));
3960 });
3961 } catch (e) {
3962 message.channel.send(
3963 `:heavy_multiplication_x:| **i Don't Have Prem**`
3964 );
3965 console.log(e);
3966 }
3967 });
3968 });
3969 });
3970 });
3971 });
3972 });
3973 }
3974});
3975
3976client.on("message", async message => {
3977 if (message.content.includes("discord.gg")) {
3978 // if(message.member.hasPermission("MANAGE_GUILD")) return;
3979 if (!message.channel.guild) return;
3980 message.delete();
3981 }
3982});
3983
3984const replyMSG = JSON.parse(fs.readFileSync("./replyMSG.json", "utf8")); // i dont wanna explain you are not my father!
3985
3986function saveReplay() {
3987 fs.writeFile("./replyMSG.json", JSON.stringify(replyMSG), function(err) {
3988 if (err) throw err;
3989 });
3990}
3991
3992//If You want to remove //R.I.P Royal Bot! this message just click ctrl + h and replace this message to nothing
3993
3994client.on("message", message => {
3995 var prefix = "-"; //prefix
3996 if (!replyMSG[message.author.id])
3997 replyMSG[message.author.id] = {
3998 contentmessage: "none",
3999 replayMessage: "none"
4000 };
4001 saveReplay();
4002
4003 if (message.content.startsWith(prefix + "reply")) {
4004 if (message.author.bot || message.channel.type == "dm") return undefined;
4005
4006 let contmessage;
4007
4008 let filter = m => m.author.id === message.author.id;
4009 message.channel.send(" |** من فضلك اكتب الرساله الان...** ").then(msg => {
4010 message.channel
4011 .awaitMessages(filter, {
4012 //R.I.P Royal Bot!
4013 maxMatches: 1,
4014 time: 12000,
4015 errors: ["time"]
4016 })
4017
4018 .then(collected => {
4019 contmessage = collected.first().content;
4020 msg.edit(":scroll: | من فضلك اكتب الرد الان... :pencil2: ");
4021
4022 message.channel
4023 .awaitMessages(filter, {
4024 maxMatches: 1,
4025 time: 12000,
4026 errors: ["time"]
4027 })
4028
4029 .then(collectedd => {
4030 replyMSG[message.author.id] = {
4031 contentmessage: contmessage,
4032 replayMessage: collectedd.first().content
4033 };
4034 saveReplay();
4035 var embed1 = new Discord.RichEmbed()
4036 .setTitle(`Done The Autoreply Setup`)
4037 .setThumbnail(message.author.avatarURL)
4038 .setColor("GRAY")
4039 .setDescription(
4040 `
4041 Message:
4042 ${contmessage}
4043 Reply:
4044 ${collectedd.first().content}`
4045 )
4046 .setFooter(client.user.username, client.user.avatarURL);
4047 msg.edit(" |** تم الاعداد بنجاح...** ");
4048
4049 message.channel.send(embed1);
4050 });
4051 });
4052 });
4053 }
4054});
4055
4056client.on("message", message => {
4057 let messagecontent = replyMSG[message.author.id].contentmessage;
4058 let reply = replyMSG[message.author.id].replayMessage;
4059 if (message.content == messagecontent) {
4060 if (messagecontent == "none" || reply == "none") return undefined;
4061 message.channel.send(reply);
4062 }
4063});
4064
4065///////////////////
4066
4067const credits = JSON.parse(fs.readFileSync("./credits.json"));
4068var time = require("./time.json");
4069client.on("message", async message => {
4070 if (message.author.bot || message.channel.type === "dm") return;
4071 let args = message.content.split(" ");
4072 let author = message.author.id;
4073 if (!credits[author])
4074 credits[author] = {
4075 credits: 0
4076 };
4077 fs.writeFileSync("./credits.json", JSON.stringify(credits, null, 4));
4078 if (args[0].toLowerCase() == `${prefix}credits`) {
4079 const mention = message.mentions.users.first() || message.author;
4080 const mentionn = message.mentions.users.first();
4081 if (!args[2]) {
4082 message.channel.send(
4083 `**${mention.username}, your :credit_card: balance is \`$${credits[mention.id].credits}\`**`
4084 );
4085 } else if (mentionn && args[2]) {
4086 if (isNaN(args[2])) return message.channel.send(`**:x: | Error**`);
4087 if (args[2] < 1) return message.channel.send(`**:x: | Error**`);
4088 if (mention.bot) return message.channel.send(`**:x: | Error**`);
4089 if (mentionn.id === message.author.id)
4090 return message.channel.send(`**:x: | Error**`);
4091 if (args[2] > credits[author].credits)
4092 return message.channel.send(
4093 `**:x: | Error , You Don't Have Enough Credit**`
4094 );
4095 if (args[2].includes("-")) return message.channel.send(`**:x: | Error**`);
4096 let resulting = Math.floor(args[2] - args[2] * (5 / 100));
4097 let tax = Math.floor(args[2] * (5 / 100));
4098 let first = Math.floor(Math.random() * 9);
4099 let second = Math.floor(Math.random() * 9);
4100 let third = Math.floor(Math.random() * 9);
4101 let fourth = Math.floor(Math.random() * 9);
4102 let num = `${first}${second}${third}${fourth}`;
4103 let canvas = Canvas.createCanvas(108, 40);
4104 let ctx = canvas.getContext("2d");
4105 const background = await Canvas.loadImage(
4106 "https://cdn.discordapp.com/attachments/608278049091223552/617791172810899456/hmmm.png"
4107 );
4108 ctx.drawImage(background, 0, 0, canvas.width, canvas.height);
4109 ctx.font = "20px Arial Bold";
4110 ctx.fontSize = "20px";
4111 ctx.fillStyle = "#ffffff";
4112 message.channel
4113 .send(
4114 `**${
4115 message.author.username
4116 }, Transfer Fees: \`${tax}\`, Amount: \`$${resulting.toLocaleString()}\`**
4117type these numbers to confirm: `
4118 )
4119 .then(essss => {
4120 ctx.fillText(num, canvas.width / 2.4, canvas.height / 1.7);
4121 message.channel.sendFile(canvas.toBuffer()).then(m => {
4122 message.channel
4123 .awaitMessages(r => r.author.id === message.author.id, {
4124 max: 1,
4125 time: 20000,
4126 errors: ["time"]
4127 })
4128 .then(collected => {
4129 if (collected.first().content === num) {
4130 message.channel.send(
4131 `**:moneybag: | ${
4132 message.author.username
4133 }, Done Trans \`$${resulting.toLocaleString()}\` To ${mentionn}**`
4134 );
4135 mention.send(
4136 `**:money_with_wings: | Transfer Receipt \`\`\`You Have Received \`$${resulting.toLocaleString()}\` From User ${
4137 message.author.username
4138 }; (ID (${message.author.id})\`\`\``
4139 );
4140 m.delete();
4141 credits[author].credits += Math.floor(
4142 -resulting.toLocaleString()
4143 );
4144 credits[mentionn.id].credits += Math.floor(
4145 +resulting.toLocaleString()
4146 );
4147 fs.writeFileSync(
4148 "./credits.json",
4149 JSON.stringify(credits, null, 4)
4150 );
4151 } else {
4152 m.delete();
4153 essss.delete();
4154 }
4155 });
4156 });
4157 });
4158 } else {
4159 message.channel.send(
4160 `**:x: | Error , Please Command True Ex: \`${prefix}credits [MentionUser] [Balance]\`**`
4161 );
4162 }
4163 }
4164 if (args[0].toLowerCase() === `${prefix}daily`) {
4165 let cooldown = 8.64e7;
4166 let Daily = time[message.author.id];
4167 if (Daily !== null && cooldown - (Date.now() - Daily) > 0) {
4168 let times = cooldown - (Date.now() - Daily);
4169 message.channel.send(
4170 `**:stopwatch: | ${
4171 message.author.username
4172 }, your daily :dollar: credits refreshes in ${pretty(times, {
4173 verbose: true
4174 })}.**`
4175 );
4176 fs.writeFile("./time.json", JSON.stringify(time), function(e) {
4177 if (e) throw e;
4178 });
4179 } else {
4180 let ammount = (300, 500, 100, 200, 120, 150, 350, 320, 220, 250);
4181 credits[author].credits += ammount;
4182 time[message.author.id] = Date.now();
4183 message.channel.send(
4184 `**:atm: | ${message.author.username}, you received your :yen: ${ammount} daily credits!**`
4185 );
4186 fs.writeFile("./credits.json", JSON.stringify(credits), function(e) {
4187 if (e) throw e;
4188 });
4189 }
4190 }
4191}); // Me ZIAD كم حاقد
4192
4193client.on("message", async message => {
4194 let Fire = message.content.split(" ")[0].substring(prefix.length);
4195 let mention = message.mentions.users.first() || message.author;
4196 if (Fire === "addcredits") {
4197 let args = message.content.split(" ");
4198 if (!devs.includes(message.author.id)) return;
4199 if (!args[1] || isNaN(args[1])) return message.reply("**Type Credit**");
4200 if (!credits[mention.id]) return;
4201 credits[mention.id].credits += +args[1];
4202 fs.writeFileSync("./credits.json", JSON.stringify(credits));
4203 console.log(credits[mention.id]);
4204 message.reply(`**, Adedd Money For : \`${args[1]}\`Done`);
4205 } else if (Fire === "removecredits") {
4206 let args = message.content.split(" ");
4207 if (!devs.includes(message.author.id)) return;
4208 if (!args[1] || isNaN(args[1])) return message.reply("**Type Credit**");
4209 if (!credits[mention.id]) return;
4210 credits[mention.id].credits += -args[1];
4211 fs.writeFileSync("./credits.json", JSON.stringify(credits));
4212 console.log(credits[mention.id]);
4213 message.reply(`**, Remove Money For : \`${args[1]}\`**`);
4214 }
4215});
4216let level = JSON.parse(fs.readFileSync("./level.json", "utf8"));
4217client.on("message", message => {
4218 if (message.author.bot) return undefined;
4219 if (!level[message.author.id])
4220 level[message.author.id] = {
4221 xp: 0,
4222 level: 0
4223 };
4224 let username = message.author;
4225 level[message.author.id].xp++;
4226 let userlevel = level[message.author.id];
4227 if (userlevel.xp > Math.floor(Math.random() * 250) + 50) {
4228 userlevel.level++;
4229 userlevel.xp = 0;
4230 }
4231 fs.writeFileSync("./level.json", JSON.stringify(level), function(s) {
4232 if (s) throw s;
4233 });
4234});
4235
4236
4237
4238//كود برودكاست
4239
4240client.on("message", message => {
4241
4242 if (message.content.startsWith(prefix + "bc")) {
4243 if (!message.member.hasPermission("ADMINISTRATOR")) return;
4244 let args = message.content.split(" ").slice(1);
4245 var argresult = args.join(' ');
4246 message.guild.members.filter(m => m.presence.status !== 'offline').forEach(m => {
4247 m.send(`${argresult}\n ${m}`);
4248})
4249 message.channel.send(`\`${message.guild.members.filter(m => m.presence.status !== 'online').size}\` : عدد الاعضاء المستلمين`);
4250 message.delete();
4251};
4252});
4253
4254
4255 let channelc = {};
4256 client.on('channelCreate', async (channel) => {
4257 const rebellog = client.channels.find("name", "hack-log"),
4258 Oguild = channel.guild,
4259 Onumber = 3,
4260 Otime = 10000;
4261 const audit = await channel.guild.fetchAuditLogs({limit: 1});
4262 const channelcreate = audit.entries.first().executor;
4263 console.log(` A ${channel.type} Channel called ${channel.name} was Created By ${channelcreate.tag}`);
4264 if(!channelc[channelcreate.id]) {
4265 channelc[channelcreate.id] = {
4266 created : 0
4267 }
4268 }
4269 channelc[channelcreate.id].created += 1;
4270 if(channelc[channelcreate.id].created >= Onumber ) {
4271 Oguild.members.get(channelcreate.id).kick();
4272rebellog.send(`<@!${channelcreate.id}>
4273حآول العبث بالسيرفر @everyone`);
4274channel.guild.owner.send(`<@!${channelcreate.id}>
4275حآول العبث بالسيرفر ${channel.guild.name}`)
4276}
4277 setTimeout(() => {
4278 channelc[channelcreate.id].created = 0;
4279 },Otime)
4280 });