summaryrefslogtreecommitdiff
path: root/commands
diff options
context:
space:
mode:
authorschneefux <schneefux+commit@schneefux.xyz>2017-05-11 21:18:24 +0200
committerschneefux <schneefux+commit@schneefux.xyz>2017-05-11 21:18:31 +0200
commitf37c547a11b1102c8639219c532711b56a40103d (patch)
treef1ffaea417084a22436a5430c9a4b2ed0fc023e9 /commands
parent01a0f341cd19247c9b3d47bf62edefcb0c1545bc (diff)
downloaddiscordbot-f37c547a11b1102c8639219c532711b56a40103d.tar.gz
discordbot-f37c547a11b1102c8639219c532711b56a40103d.zip
add vgmember command
Diffstat (limited to 'commands')
-rw-r--r--commands/vainsocial/guild_member.js47
1 files changed, 47 insertions, 0 deletions
diff --git a/commands/vainsocial/guild_member.js b/commands/vainsocial/guild_member.js
new file mode 100644
index 0000000..2a1bf27
--- /dev/null
+++ b/commands/vainsocial/guild_member.js
@@ -0,0 +1,47 @@
+#!/usr/bin/node
+/* jshint esnext:true */
+"use strict";
+
+const Commando = require("discord.js-commando"),
+ oneLine = require("common-tags").oneLine,
+ Promise = require("bluebird"),
+ api = require("../../api"),
+ util = require("../../util"),
+ GuildMemberView = require("../../views/guild_member");
+
+module.exports = class ViewGuildMemberCommand extends Commando.Command {
+ constructor(client) {
+ super(client, {
+ name: "vainsocial-guildmember",
+ aliases: ["vguild-member", "vgm"],
+ group: "vainsocial-guild",
+ memberName: "vainsocial-guildmember",
+ description: "View a Guild member in detail.",
+ examples: ["vgm StormCallerSr"],
+ args: [ {
+ key: "name",
+ label: "name",
+ prompt: "Please specify a Guild member's name.",
+ type: "string",
+ min: 2,
+ default: "?"
+ } ]
+ });
+ }
+ async run(msg, args) {
+ util.trackAction(msg, "vainsocial-guild-member");
+ const guildMemberView = new GuildMemberView(msg);
+ try {
+ const guild = await api.getGuild(msg.author.id);
+ const member = guild.members.filter((m) => m.player.name == args.name)[0];
+ if (member == undefined)
+ throw { err: { error: "Player is not in the Guild." } };
+ const player = await api.getPlayer(member.player.name);
+ const matches = await api.getMatches(player.name);
+ await guildMemberView.respond(member, player, matches);
+ } catch (err) {
+ console.error(err);
+ return await guildMemberView.error(err.error.err);
+ }
+ }
+};