71 lines
2.0 KiB
JavaScript
71 lines
2.0 KiB
JavaScript
const { MessageEmbed } = require("discord.js");
|
|
const db = require("quick.db");
|
|
|
|
module.exports = {
|
|
name: "warn",
|
|
category: "moderation",
|
|
usage: "warn <@mention> <reason>",
|
|
description: "Warnen Sie jeden, der sich nicht an die Regeln hält",
|
|
run: async (client, message, args) => {
|
|
if (!message.member.hasPermission("ADMINISTRATOR")) {
|
|
return message.channel.send(
|
|
"Sie sollten Administratorrechte haben, um diesen Befehl zu verwenden!"
|
|
);
|
|
}
|
|
|
|
const user = message.mentions.members.first();
|
|
|
|
if (!user) {
|
|
return message.channel.send(
|
|
"Bitte erwähnen Sie die Person, die Sie warnen möchten - warnen Sie @mention <reaosn>"
|
|
);
|
|
}
|
|
|
|
if (message.mentions.users.first().bot) {
|
|
return message.channel.send("Sie können Bots nicht warnen");
|
|
}
|
|
|
|
if (message.author.id === user.id) {
|
|
return message.channel.send("Sie können sich nicht warnen");
|
|
}
|
|
|
|
if (user.id === message.guild.owner.id) {
|
|
return message.channel.send(
|
|
"Du Idiot, wie kannst du Serverbesitzer warnen -_-"
|
|
);
|
|
}
|
|
|
|
const reason = args.slice(1).join(" ");
|
|
|
|
if (!reason) {
|
|
return message.channel.send(
|
|
"Bitte geben Sie einen Grund für die Warnung an - warn @mention <reason>"
|
|
);
|
|
}
|
|
|
|
let warnings = db.get(`warnings_${message.guild.id}_${user.id}`);
|
|
|
|
if (warnings === null) {
|
|
db.set(`warnings_${message.guild.id}_${user.id}`, 1);
|
|
user.send(
|
|
`Du wurdest in **${message.guild.name}** aus ${reason} gewarnt`
|
|
);
|
|
await message.channel.send(
|
|
`Du hast **${
|
|
message.mentions.users.first().username
|
|
}** für ${reason} gewarnt`
|
|
);
|
|
} else if(warnings !== null) {
|
|
|
|
db.add(`warnings_${message.guild.id}_${user.id}`, 1);
|
|
|
|
user.send(`Du wurdest in **${message.guild.name}** aus ${reason} gewarnt`);
|
|
|
|
await message.channel.send(`Sie haben **${message.mentions.users.first().username}** aus ${reason} gewarnt`);
|
|
|
|
message.delete
|
|
|
|
}
|
|
}
|
|
};
|