Make the nickname argument optional on nickname command (#199)
This commit is contained in:
parent
5e75ec8efe
commit
e8d1d0fdcc
2 changed files with 19 additions and 8 deletions
|
@ -1,6 +1,7 @@
|
||||||
|
import { Util } from "discord.js";
|
||||||
import { commandTypeHelpers as ct } from "../../../commandTypes";
|
import { commandTypeHelpers as ct } from "../../../commandTypes";
|
||||||
import { canActOn, sendSuccessMessage } from "../../../pluginUtils";
|
|
||||||
import { errorMessage } from "../../../utils";
|
import { errorMessage } from "../../../utils";
|
||||||
|
import { canActOn, sendSuccessMessage } from "../../../pluginUtils";
|
||||||
import { utilityCmd } from "../types";
|
import { utilityCmd } from "../types";
|
||||||
|
|
||||||
export const NicknameCmd = utilityCmd({
|
export const NicknameCmd = utilityCmd({
|
||||||
|
@ -11,10 +12,19 @@ export const NicknameCmd = utilityCmd({
|
||||||
|
|
||||||
signature: {
|
signature: {
|
||||||
member: ct.resolvedMember(),
|
member: ct.resolvedMember(),
|
||||||
nickname: ct.string({ catchAll: true }),
|
nickname: ct.string({ catchAll: true, required: false }),
|
||||||
},
|
},
|
||||||
|
|
||||||
async run({ message: msg, args, pluginData }) {
|
async run({ message: msg, args, pluginData }) {
|
||||||
|
if (!args.nickname) {
|
||||||
|
if (!args.member.nickname) {
|
||||||
|
msg.channel.send(`<@!${args.member.id}> does not have a nickname`);
|
||||||
|
} else {
|
||||||
|
msg.channel.send(`The nickname of <@!${args.member.id}> is **${Util.escapeBold(args.nickname)}**`);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (msg.member.id !== args.member.id && !canActOn(pluginData, msg.member, args.member)) {
|
if (msg.member.id !== args.member.id && !canActOn(pluginData, msg.member, args.member)) {
|
||||||
msg.channel.send(errorMessage("Cannot change nickname: insufficient permissions"));
|
msg.channel.send(errorMessage("Cannot change nickname: insufficient permissions"));
|
||||||
return;
|
return;
|
||||||
|
@ -29,9 +39,7 @@ export const NicknameCmd = utilityCmd({
|
||||||
const oldNickname = args.member.nickname || "<none>";
|
const oldNickname = args.member.nickname || "<none>";
|
||||||
|
|
||||||
try {
|
try {
|
||||||
await args.member.edit({
|
await args.member.setNickname(args.nickname ?? null);
|
||||||
nick: args.nickname,
|
|
||||||
});
|
|
||||||
} catch {
|
} catch {
|
||||||
msg.channel.send(errorMessage("Failed to change nickname"));
|
msg.channel.send(errorMessage("Failed to change nickname"));
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -19,10 +19,13 @@ export const NicknameResetCmd = utilityCmd({
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!args.member.nickname) {
|
||||||
|
msg.channel.send(errorMessage("User does not have a nickname"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
await args.member.edit({
|
await args.member.setNickname(null);
|
||||||
nick: "",
|
|
||||||
});
|
|
||||||
} catch {
|
} catch {
|
||||||
msg.channel.send(errorMessage("Failed to reset nickname"));
|
msg.channel.send(errorMessage("Failed to reset nickname"));
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Add table
Reference in a new issue