Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- client.on("message", async message => {
- const moment = require("moment"); //npm i moment
- const ms = require("ms"); //npm i ms
- // var prefix = '' //Bot Prefix !
- var time = moment().format("Do MMMM YYYY , hh:mm");
- var room;
- var title;
- var duration;
- var currentTime = new Date(),
- hours = currentTime.getHours() + 3,
- minutes = currentTime.getMinutes(),
- done = currentTime.getMinutes() + duration,
- seconds = currentTime.getSeconds();
- if (minutes < 10) {
- minutes = "0" + minutes;
- }
- var suffix = "AM";
- if (hours >= 12) {
- suffix = "PM";
- hours = hours - 12;
- }
- if (hours == 0) {
- hours = 12;
- }
- var filter = m => m.author.id === message.author.id;
- if (message.content.startsWith(prefix + "gcreate")) {
- let embed1 = new Discord.RichEmbed()
- .setColor()
- .setDescription("Missing the following permission `MANAGE_GUILD`");
- let embed2 = new Discord.RichEmbed()
- .setColor()
- .setDescription("Please send the `room` name without mentioning it");
- let embed3 = new Discord.RichEmbed()
- .setColor()
- .setDescription("Wrong room name");
- let embed4 = new Discord.RichEmbed()
- .setColor()
- .setDescription("Please send the `time`");
- let embed5 = new Discord.RichEmbed()
- .setColor()
- .setDescription(
- "Wrong time format\nExample of time format: 1s / 1m / 1h / 1d / 1w"
- );
- let embed6 = new Discord.RichEmbed()
- .setColor()
- .setDescription("Please send the `gift`");
- if (!message.guild.member(message.author).hasPermission("MANAGE_GUILD"))
- return message.channel.send(embed1);
- message.channel.send(embed2).then(msg => {
- message.channel
- .awaitMessages(filter, {
- max: 1,
- time: 20000,
- errors: ["time"]
- })
- .then(collected => {
- let room = message.guild.channels.find(
- "name",
- collected.first().content
- );
- if (!room) return message.channel.send(embed3);
- room = collected.first().content;
- collected.first().delete();
- msg.edit(embed4).then(msg => {
- message.channel
- .awaitMessages(filter, {
- max: 1,
- time: 20000,
- errors: ["time"]
- })
- .then(collected => {
- if (!collected.first().content.match(/[1-60][s,m,h,d,w]/g))
- return message.channel.send(embed5);
- duration = collected.first().content;
- collected.first().delete();
- msg.edit(embed6).then(msg => {
- message.channel
- .awaitMessages(filter, {
- max: 1,
- time: 20000,
- errors: ["time"]
- })
- .then(collected => {
- title = collected.first().content;
- collected.first().delete();
- msg.delete();
- message.delete();
- try {
- let giveEmbed = new Discord.RichEmbed()
- .setColor()
- .setTitle(`${title}`)
- .setDescription(
- `React With ًںژ‰ To Enter! \nTime remaining : ${duration} \n **Created at :** ${hours}:${minutes}:${seconds} ${suffix}`
- );
- //.setFooter(message.author.username, message.author.avatarURL);
- message.guild.channels
- .find("name", room)
- .send(" :tada: **Giveaway** :tada:", {
- embed: giveEmbed
- })
- .then(m => {
- let re = m.react("ًںژ‰");
- setTimeout(() => {
- let users = m.reactions.get("ًںژ‰").users;
- let list = users
- .array()
- .filter(
- u => (u.id !== m.author.id) !== client.user.id
- );
- let gFilter =
- list[
- Math.floor(Math.random() * list.length) + 1
- ];
- if (gFilter === undefined) {
- let endEmbed = new Discord.RichEmbed()
- .setColor()
- .setTitle(title)
- .setDescription(
- `Winners : no enough number of reaction so there is no winner`
- )
- .setFooter("Ended at :")
- .setTimestamp();
- m.edit("** ًںژ‰ GIVEAWAY ENDED ًںژ‰**", {
- embed: endEmbed
- });
- } else {
- let endEmbed = new Discord.RichEmbed()
- .setColor()
- .setTitle(title)
- .setDescription(`Winners : ${gFilter}`)
- .setFooter("Ended at :")
- .setTimestamp();
- m.edit("** ًںژ‰ GIVEAWAY ENDED ًںژ‰**", {
- embed: endEmbed
- });
- }
- if (gFilter === undefined) {
- // message.guild.channels.find("name" , room).send("No enough number of reactions")
- } else {
- message.guild.channels
- .find("name", room)
- .send(
- `**Congratulations ${gFilter}! You won The \`${title}\`**`
- );
- }
- }, ms(duration));
- });
- } catch (e) {
- message.channel.send(
- `:heavy_multiplication_x:| **i Don't Have Prem**`
- );
- console.log(e);
- }
- });
- });
- });
- });
- });
- });
- }
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement