Add !nickname command
This commit is contained in:
parent
52c2bfa0b2
commit
2d2145eda3
1 changed files with 28 additions and 5 deletions
|
@ -1,5 +1,5 @@
|
||||||
import { Plugin, decorators as d, reply } from "knub";
|
import { decorators as d } from "knub";
|
||||||
import { Channel, EmbedOptions, Message, TextChannel, User, VoiceChannel } from "eris";
|
import { Channel, EmbedOptions, Member, Message, TextChannel, User, VoiceChannel } from "eris";
|
||||||
import { embedPadding, errorMessage, noop, stripObjectToScalars, successMessage, trimLines } from "../utils";
|
import { embedPadding, errorMessage, noop, stripObjectToScalars, successMessage, trimLines } from "../utils";
|
||||||
import { GuildLogs } from "../data/GuildLogs";
|
import { GuildLogs } from "../data/GuildLogs";
|
||||||
import { LogType } from "../data/LogType";
|
import { LogType } from "../data/LogType";
|
||||||
|
@ -10,6 +10,7 @@ import { CaseTypes } from "../data/CaseTypes";
|
||||||
import { SavedMessage } from "../data/entities/SavedMessage";
|
import { SavedMessage } from "../data/entities/SavedMessage";
|
||||||
import { GuildSavedMessages } from "../data/GuildSavedMessages";
|
import { GuildSavedMessages } from "../data/GuildSavedMessages";
|
||||||
import { GuildArchives } from "../data/GuildArchives";
|
import { GuildArchives } from "../data/GuildArchives";
|
||||||
|
import { ZeppelinPlugin } from "./ZeppelinPlugin";
|
||||||
|
|
||||||
const MAX_SEARCH_RESULTS = 15;
|
const MAX_SEARCH_RESULTS = 15;
|
||||||
const MAX_CLEAN_COUNT = 50;
|
const MAX_CLEAN_COUNT = 50;
|
||||||
|
@ -17,7 +18,7 @@ const CLEAN_COMMAND_DELETE_DELAY = 5000;
|
||||||
|
|
||||||
const activeReloads: Map<string, TextChannel> = new Map();
|
const activeReloads: Map<string, TextChannel> = new Map();
|
||||||
|
|
||||||
export class UtilityPlugin extends Plugin {
|
export class UtilityPlugin extends ZeppelinPlugin {
|
||||||
protected logs: GuildLogs;
|
protected logs: GuildLogs;
|
||||||
protected cases: GuildCases;
|
protected cases: GuildCases;
|
||||||
protected savedMessages: GuildSavedMessages;
|
protected savedMessages: GuildSavedMessages;
|
||||||
|
@ -32,7 +33,8 @@ export class UtilityPlugin extends Plugin {
|
||||||
clean: false,
|
clean: false,
|
||||||
info: false,
|
info: false,
|
||||||
server: false,
|
server: false,
|
||||||
reload_guild: false
|
reload_guild: false,
|
||||||
|
nickname: false
|
||||||
},
|
},
|
||||||
overrides: [
|
overrides: [
|
||||||
{
|
{
|
||||||
|
@ -44,7 +46,8 @@ export class UtilityPlugin extends Plugin {
|
||||||
clean: true,
|
clean: true,
|
||||||
info: true,
|
info: true,
|
||||||
server: true,
|
server: true,
|
||||||
reload_guild: true
|
reload_guild: true,
|
||||||
|
nickname: true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -298,6 +301,26 @@ export class UtilityPlugin extends Plugin {
|
||||||
msg.channel.createMessage({ embed });
|
msg.channel.createMessage({ embed });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@d.command("nickname", "<target:member> <nickname:string>")
|
||||||
|
@d.permission("nickname")
|
||||||
|
async nicknameCmd(msg: Message, args: { target: Member; nickname: string }) {
|
||||||
|
if (!this.canActOn(msg.member, args.target)) {
|
||||||
|
msg.channel.createMessage(errorMessage("Cannot change nickname: insufficient permissions"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
await args.target.edit({
|
||||||
|
nick: args.nickname
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
msg.channel.createMessage(errorMessage("Failed to change nickname"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
msg.channel.createMessage(successMessage(`Changed nickname of <@!${args.target.id}> to ${args.nickname}`));
|
||||||
|
}
|
||||||
|
|
||||||
@d.command("server")
|
@d.command("server")
|
||||||
@d.permission("server")
|
@d.permission("server")
|
||||||
async serverCmd(msg: Message) {
|
async serverCmd(msg: Message) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue