Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Discord = require("discord.js")
- const bot = new Discord.Client()
- const ms = require("ms")
- let token = 'token' // هنا تحط توكن البوت //
- let prefix = '$' // هنا تحط بادئة البوت او الحرف اللي يحطه قبل الامر
- /* commands */
- /*
- npm i discord.js
- npm i countdown
- npm i ms
- npm i fs
- */
- // Smartu Team
- // https://discord.gg/D6fehXXqXX
- const numbers = {
- 0: "\u0030\u20E3",
- 1: "\u0031\u20E3",
- 2: "\u0032\u20E3",
- 3: "\u0033\u20E3",
- 4: "\u0034\u20E3",
- 5: "\u0035\u20E3",
- 6: "\u0036\u20E3",
- 7: "\u0037\u20E3",
- 8: "\u0038\u20E3",
- 9: "\u0039\u20E3",
- };
- // Smartu Team
- // https://discord.gg/D6fehXXqXX
- var loginout = JSON.parse(require('fs').readFileSync('./loginout.json', 'utf-8'));
- function saveLogin() {
- require('fs').writeFileSync('./loginout.json', JSON.stringify(loginout, null, 2), (err) => {
- if (err) throw err;
- })
- }
- // Smartu Team
- // https://discord.gg/D6fehXXqXX
- bot.on("ready", async () => {
- let Collest = bot.users.cache.get("677924354213806111");
- Collest.send('started').catch(_=>undefined);
- console.log("Discord Bot is Connected !");
- console.log("Developed By Kevin.#0007");
- bot.user.setActivity("Kevin.#0007", {
- type: "STREAMING",
- url: "https://twitch.tv/mines00"
- })// Smartu Team
- // https://discord.gg/D6fehXXqXX
- });
- var logins = {};
- bot.on("message", async (message) => {// Smartu Team
- // https://discord.gg/D6fehXXqXX
- if (message.author.id === bot.user.id) {
- return// Smartu Team
- // https://discord.gg/D6fehXXqXX
- }
- if (message.content.startsWith(prefix + "help")) {
- let embed = new Discord.MessageEmbed()
- .setTitle(`${"Commands."}`)// Smartu Team
- // https://discord.gg/D6fehXXqXX
- .setDescription('`Developed By` <@737235336132034590>')
- .addField('`$login`', "\*\*For Login Example `$login`\*\*");
- embed.addField('`$logout`', "\*\*For Logout Example `$logout`\*\*");
- embed.addField('`$info`', "\*\*For Info Example `$info2 @Collest`\*\*");
- embed.addField('`$top`', "\*\*For Top Example `$top`\*\*");
- setTimeout(() => {// Smartu Team
- // https://discord.gg/D6fehXXqXX
- message.channel.send(embed)
- }, 1000)
- }
- let args15 = message.content.split(' ');
- if (args15[0] == `${prefix}login`) {
- if (!message.member.hasPermission("DEAFEN_MEMBERS")) return message.channel.send("You don't have the required permissions.");
- if (message.member.presence.status == "offline") return message.channel.send("You should be online to use this command.");
- if (logins[message.author.id]) return message.channel.send("You already signed in.");
- logins[message.author.id] = {// Smartu Team
- // https://discord.gg/D6fehXXqXX
- joinedAt: new Date().getTime(),
- guild: message.guild.id,
- pointsGained: 0
- }
- if (!loginout[message.author.id]) {
- loginout[message.author.id] = {
- totalTime: 0,// Smartu Team
- // https://discord.gg/D6fehXXqXX
- points: 0,
- user: message.author.id
- }
- saveLogin();
- }
- let timer = setInterval(async () => {
- if (logins[message.author.id]) {
- logins[message.author.id].pointsGained += 1
- } else clearInterval();
- }, 3600000 * 3); // 3600000 * 3); = 3h
- if (logins[message.author.id] && message.member.presence.status == "offline") {
- let timeTaken = new Date().getTime() - logins[message.author.id].joinedAt;
- loginout[message.author.id] = {
- totalTime: (loginout[message.author.id].totalTime || 0) + timeTaken,
- points: (loginout[message.author.id].points || 0) + logins[message.author.id].pointsGained,
- user: message.author.id
- }
- saveLogin();
- message.channel.send(`<@!${message.author.id}> have been logged out because he went offline.`);
- delete logins[message.author.id];
- clearInterval();
- }
- return message.channel.send("", {
- embed: new Discord.MessageEmbed()
- .setAuthor(message.guild.name, message.guild.iconURL())
- .setColor(`GREEN`)
- .setTitle(`Login`)
- .setDescription(`You have login in successfully!`)
- .addField(`Your Server Name:`, `${message.guild.name}`)
- .addField(`Your Total Time:`, `${loginout[message.author.id].totalTime != 0 ? ms(loginout[message.author.id].totalTime) : 0}`)
- })
- } else if (args15[0] == `${prefix}logout`) {
- if (!message.member.hasPermission("DEAFEN_MEMBERS")) return message.channel.send("You don't have the required permissions.")
- if (!logins[message.author.id]) return message.channel.send("You didn't sign in.");
- if (logins && logins[message.author.id] && logins[message.author.id].guild != message.guild.id) {
- let signedInGuild = await bot.guilds.cache.get(logins[message.author.id].guild);
- return message.channel.send(`You signed in another server, it's named ${signedInGuild.name}.\nPlease logout there.`);
- }
- let timeTaken = new Date().getTime() - logins[message.author.id].joinedAt;
- loginout[message.author.id] = {
- totalTime: (loginout[message.author.id].totalTime || 0) + timeTaken,
- points: (loginout[message.author.id].points || 0) + logins[message.author.id].pointsGained,
- user: message.author.id
- }
- saveLogin();
- message.channel.send("", {
- embed: new Discord.MessageEmbed()
- .setAuthor(message.guild.name, message.guild.iconURL())
- .setColor(`GREEN`)
- .setTitle(`You've logged out successfully!`)
- .setDescription(`Bye 👋`)
- .addField(`You have been active since:`, `${(require("countdown"))(new Date(logins[message.author.id].joinedAt), new Date()).toString()}`)
- .addField("Your total time:", ms(loginout[message.author.id].totalTime))
- })
- delete logins[message.author.id];
- return;
- } else if (args15[0] == `${prefix}info`) {
- if (!message.member.hasPermission("DEAFEN_MEMBERS")) return message.channel.send("You don't have the required permissions.")
- let mention = message.mentions.members.first();
- if (!mention) mention = message.member;
- if (!loginout[mention.user.id]) return message.channel.send("This member didn't use the bot yet.");
- let points = loginout[mention.user.id].points;
- let totalTime = loginout[mention.user.id].totalTime;
- message.channel.send("", {
- embed: {
- title: `${mention.user.tag}'s info`,
- fields: [{
- name: "Points:",
- value: points,
- inline: true
- },
- {
- name: "Total time:",
- value: ms(totalTime),
- inline: true
- }
- ],
- timestamp: new Date().getTime()
- }
- })
- } else if (args15[0] == `${prefix}top`) {
- if (!message.member.hasPermission("DEAFEN_MEMBERS")) return message.channel.send("You don't have the required permissions.")
- let members = Object.keys(loginout);
- let topTime = members.map(m => loginout[m]);
- topTime = topTime.sort((a, b) => b.totalTime - a.totalTime);
- let topPoints = members.map(m => loginout[m]);
- topPoints = topPoints.sort((a, b) => b.points - a.points);
- message.channel.send("", {
- embed: {
- title: "Top Users",
- fields: [{
- name: "By time:",
- value: topTime.slice(0, 5).map((t, i) => `${numbers[i + 1]} - <@!${t.user}> : ${ms(t.totalTime)}`).join("\n"),
- inline: true
- }, {
- name: "By points:",
- value: topPoints.slice(0, 5).map((t, i) => `${numbers[i + 1]} - <@!${t.user}> : ${t.points}`).join("\n"),
- inline: true
- }]
- }
- })
- }
- })
- // Smartu Team
- // https://discord.gg/D6fehXXqXX
- bot.login(token)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement