This repository has been archived by the owner on Dec 1, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathkick.js
66 lines (64 loc) · 2.99 KB
/
kick.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
const Discord = require("discord.js");
const fs = require('fs');
const request = require("request");
const {
inspect
} = require('util');
module.exports.run = async (client, message, args, language) => {
if (!message.member.permissions.has("KICK_MEMBERS")) return message.reply(language.insufficientPermission);
if (!message.mentions.members.size) return message.reply(language.pleaseMentionUser);
if (message.mentions.members.first().user.id == message.author.id) return message.reply(language.cannotKickYourself);
if (message.mentions.members.first().roles.highest.rawPosition >= message.member.roles.highest.rawPosition) return message.reply(language.higherThanYours);
if (message.mentions.members.first().roles.highest.rawPosition >= message.guild.member(client.user).roles.highest.rawPosition) return message.reply(language.higherThanBOT);
if (message.mentions.members.first().user.id == client.user.id) return message.reply(language.cannotKickThisBOT);
if (!message.guild.member(client.user).permissions.has("KICK_MEMBERS")) return message.reply(language.missingKickMembersPermission);
var reason = language.unspecified;
args.splice(0, 1);
if (args[0]) reason = args.join(" ");
message.mentions.members.first().kick(message.author.tag + " - " + reason);
message.channel.send({
embed: {
color: Math.floor(Math.random() * 16777214) + 1,
author: {
name: message.author.tag + language.hasJustKicked + message.mentions.members.first().user.tag,
icon_url: message.author.avatarURL({
format: "png",
dynamic: true,
size: 2048
})
},
description: "**" + language.reason + ":** " + reason,
footer: {
text: language.senderID + message.author.id + language.mentionedMemberID + message.mentions.members.first().user.id,
timestamp: message.timestamp
}
}
});
message.mentions.members.first().user.send({
embed: {
color: Math.floor(Math.random() * 16777214) + 1,
author: {
name: language.kicked.replace("$guild.name", message.guild.name),
icon_url: message.guild.iconURL({
format: "png",
dynamic: true,
size: 2048
})
},
description: language.kickedBy + message.author.toString() + "\n**" + language.reason + ":** " + reason,
footer: {
text: language.senderID + message.author.id + language.mentionedMemberID + message.mentions.members.first().user.id,
timestamp: message.timestamp
}
}
});
}
module.exports.config = {
name: "kick",
description: "Kick someone",
usage: require("../config.json").prefix + "kick @mention (reason)",
accessableby: "Members",
aliases: [],
category: "⚙️ Moderations",
dmAvailable: false
}