37 lines
1.2 KiB
C++
37 lines
1.2 KiB
C++
#include "../Common.hpp"
|
|
#include <dpp/dispatcher.h>
|
|
#include <dpp/dpp.h>
|
|
#include <dpp/guild.h>
|
|
#include <dpp/snowflake.h>
|
|
#include <dpp/user.h>
|
|
|
|
#define DPP_AVATAR_GET_ARGS 1024, dpp::i_png, true
|
|
|
|
// event.command.get_guild() to get guild
|
|
|
|
void commandPing(const dpp::slashcommand_t &event, dpp::cluster &bot) {
|
|
event.reply("Pong");
|
|
}
|
|
void commandAbout(const dpp::slashcommand_t &event, dpp::cluster &bot) {
|
|
event.reply(COMMAND_ABOUT_RESPONSE);
|
|
}
|
|
|
|
void commandGetPFP(const dpp::slashcommand_t &event, dpp::cluster &bot) {
|
|
dpp::snowflake userID = std::get<dpp::snowflake>(event.get_parameter("user"));
|
|
dpp::guild_member member = event.command.get_resolved_member(userID);
|
|
if (member.user_id == 0) {
|
|
event.reply(COMMAND_GET_PFP_FAIL_NOT_A_MEMBER(userID.str()));
|
|
return;
|
|
}
|
|
|
|
std::string memberUrl = member.get_avatar_url(DPP_AVATAR_GET_ARGS),
|
|
discordUrl =
|
|
member.get_user()->get_avatar_url(DPP_AVATAR_GET_ARGS);
|
|
if (memberUrl.empty()) {
|
|
event.reply(COMMAND_GET_PFP_RETURN_ONLY_PFP(userID.str(), discordUrl));
|
|
} else {
|
|
event.reply(COMMAND_GET_PFP_RETURN_SERVER_AND_DISCORD_PFP(
|
|
userID.str(), discordUrl, memberUrl));
|
|
}
|
|
}
|