54 lines
2.8 KiB
JavaScript
54 lines
2.8 KiB
JavaScript
|
const { MessageEmbed } = require('discord.js');
|
||
|
const db = require('quick.db');
|
||
|
module.exports = {
|
||
|
name: "setnick",
|
||
|
aliases: ["sn", 'nick'],
|
||
|
category: "moderation",
|
||
|
description: "Setzt oder ändert den Spitznamen eines Benutzers",
|
||
|
usage: "[mention | name | nickname | ID] <nickname>",
|
||
|
run: async (bot, message, args) => {
|
||
|
if (!message.member.hasPermission("MANAGE_GUILD")) return message.channel.send("**Du hast keine Berechtigung zum Ändern des Spitznamens! - [MANAGE_GUILD]**");
|
||
|
|
||
|
if (!message.guild.me.hasPermission("CHANGE_NICKNAME")) return message.channel.send("**Ich habe keine Berechtigung, den Spitznamen zu ändern! - [CHANGE_NICKNAME]**");
|
||
|
|
||
|
if (!args[0]) return message.channel.send("**Bitte geben Sie einen Benutzer ein!**")
|
||
|
|
||
|
let member = message.mentions.members.first() || message.guild.members.cache.get(args[0]) || message.guild.members.cache.find(r => r.user.username.toLowerCase() === args[0].toLocaleLowerCase()) || message.guild.members.cache.find(ro => ro.displayName.toLowerCase() === args[0].toLocaleLowerCase()) || message.member;
|
||
|
if (!member) return message.channel.send("**Bitte geben Sie einen Benutzernamen ein!**");
|
||
|
|
||
|
if (member.roles.highest.comparePositionTo(message.guild.me.roles.highest) >= 0) return message.channel.send('**Spitzname dieses Benutzers kann nicht festgelegt oder geändert werden!**')
|
||
|
|
||
|
if (!args[1]) return message.channel.send("**Bitte geben Sie einen Spitznamen ein**");
|
||
|
|
||
|
let nick = args.slice(1).join(' ');
|
||
|
|
||
|
try {
|
||
|
member.setNickname(nick)
|
||
|
const embed = new MessageEmbed()
|
||
|
.setColor("GREEN")
|
||
|
.setDescription(`**Spitzname von ${member.displayName} in ${nick} geändert**`)
|
||
|
message.channel.send(embed)
|
||
|
} catch {
|
||
|
return message.channel.send("**Fehlende Berechtigungen - [CHANGE_NICKNAME]")
|
||
|
}
|
||
|
|
||
|
let channel = db.fetch(`modlog_${message.guild.id}`)
|
||
|
if (!channel) return;
|
||
|
|
||
|
const sembed = new MessageEmbed()
|
||
|
.setAuthor(`${message.guild.name} Modlogs`, message.guild.iconURL())
|
||
|
.setColor("#ff0000")
|
||
|
.setThumbnail(member.user.displayAvatarURL({ dynamic: true }))
|
||
|
.setFooter(message.guild.name, message.guild.iconURL())
|
||
|
.addField("**Moderation**", "setnick")
|
||
|
.addField("**Nick hat sich geändert**", member.user.username)
|
||
|
.addField("**Nick gerändert von**", message.author.username)
|
||
|
.addField("**Nick hat sich geändert zu**", args[1])
|
||
|
.addField("**Datum**", message.createdAt.toLocaleString())
|
||
|
.setTimestamp();
|
||
|
|
||
|
var sChannel = message.guild.channels.cache.get(channel)
|
||
|
if (!sChannel) return;
|
||
|
sChannel.send(sembed)
|
||
|
}
|
||
|
}
|