[Commands] Add #show aa_points Command (#3695)

# Notes
- Adds a command to view a player's current, spent, and total AA Points.
This commit is contained in:
Alex King 2023-11-18 19:23:35 -05:00 committed by GitHub
parent 42b41d973c
commit 838ffbd8c7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 40 additions and 0 deletions

View File

@ -120,6 +120,7 @@ public:
{.parent_command = "set", .sub_command = "title_suffix", .access_level = AccountStatus::QuestTroupe, .top_level_aliases = "titlesuffix"},
{.parent_command = "set", .sub_command = "weather", .access_level = AccountStatus::QuestTroupe, .top_level_aliases = "weather"},
{.parent_command = "set", .sub_command = "zone", .access_level = AccountStatus::QuestTroupe, .top_level_aliases = "zclip|zcolor|zheader|zonelock|zsafecoords|zsky|zunderworld"},
{.parent_command = "show", .sub_command = "aa_points", .access_level = AccountStatus::QuestTroupe, .top_level_aliases = "showaapoints|showaapts"},
{.parent_command = "show", .sub_command = "aggro", .access_level = AccountStatus::QuestTroupe, .top_level_aliases = "aggro"},
{.parent_command = "show", .sub_command = "buffs", .access_level = AccountStatus::QuestTroupe, .top_level_aliases = "showbuffs"},
{.parent_command = "show", .sub_command = "buried_corpse_count", .access_level = AccountStatus::QuestTroupe, .top_level_aliases = "getplayerburiedcorpsecount"},

View File

@ -1,4 +1,5 @@
#include "../client.h"
#include "show/aa_points.cpp"
#include "show/aggro.cpp"
#include "show/buffs.cpp"
#include "show/buried_corpse_count.cpp"
@ -55,6 +56,7 @@ void command_show(Client *c, const Seperator *sep)
};
std::vector<Cmd> commands = {
Cmd{.cmd = "aa_points", .u = "aa_points", .fn = ShowAAPoints, .a = {"#showaapoints", "#showaapts"}},
Cmd{.cmd = "aggro", .u = "aggro [Distance] [-v] (-v is verbose Faction Information)", .fn = ShowAggro, .a = {"#aggro"}},
Cmd{.cmd = "buffs", .u = "buffs", .fn = ShowBuffs, .a = {"#showbuffs"}},
Cmd{.cmd = "buried_corpse_count", .u = "buried_corpse_count", .fn = ShowBuriedCorpseCount, .a = {"#getplayerburiedcorpsecount"}},

View File

@ -0,0 +1,37 @@
#include "../../client.h"
#include "../../dialogue_window.h"
void ShowAAPoints(Client *c, const Seperator *sep)
{
Client *t = c;
if (c->GetTarget() && c->GetTarget()->IsClient()) {
t = c->GetTarget()->CastToClient();
}
const int aa_points = t->GetAAPoints();
const int spent_aa_points = t->GetSpentAA();
const int total_aa_points = (aa_points + spent_aa_points);
if (!total_aa_points) {
c->Message(
Chat::White,
fmt::format(
"{} {} no AA Points.",
c->GetTargetDescription(t, TargetDescriptionType::UCYou),
c == t ? "have" : "has"
).c_str()
);
return;
}
c->Message(
Chat::White,
fmt::format(
"AA Points for {} | Current: {} Spent: {} Total: {}",
c->GetTargetDescription(t, TargetDescriptionType::UCSelf),
Strings::Commify(aa_points),
Strings::Commify(spent_aa_points),
Strings::Commify(total_aa_points)
).c_str()
);
}