Skip to content

Commit

Permalink
[Commands] Cleanup #hideme Command (EQEmu#3043)
Browse files Browse the repository at this point in the history
# Notes
- Cleanup messages and logic.
  • Loading branch information
Kinglykrab authored and nytmyr committed Mar 24, 2023
1 parent 945c335 commit dbcd6fd
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 10 deletions.
2 changes: 1 addition & 1 deletion zone/command.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ int command_init(void)
command_add("heal", "Completely heal your target", AccountStatus::Steward, command_heal) ||
command_add("help", "[Search Criteria] - List available commands and their description, specify partial command as argument to search", AccountStatus::Player, command_help) ||
command_add("heromodel", "[Hero Model] [Slot] - Set your or your target's appearance to a full set of Hero's Forge Armor, if slot is set, sends exact model just to slot.", AccountStatus::GMMgmt, command_heromodel) ||
command_add("hideme", "[on/off] - Hide yourself from spawn lists.", AccountStatus::QuestTroupe, command_hideme) ||
command_add("hideme", "[On|Off] or [0|1] - Hide yourself from players below your status level.", AccountStatus::QuestTroupe, command_hideme) ||
command_add("hotfix", "[hotfix_name] - Reloads shared memory into a hotfix, equiv to load_shared_memory followed by apply_shared_memory", AccountStatus::GMImpossible, command_hotfix) ||
command_add("hp", "Refresh your HP bar from the server.", AccountStatus::Player, command_hp) ||
command_add("incstat", "Increases or Decreases a client's stats permanently.", AccountStatus::GMMgmt, command_incstat) ||
Expand Down
33 changes: 24 additions & 9 deletions zone/gm_commands/hideme.cpp
Original file line number Diff line number Diff line change
@@ -1,16 +1,31 @@
#include "../client.h"
#include "../string_ids.h"

void command_hideme(Client *c, const Seperator *sep)
{
bool state = atobool(sep->arg[1]);

if (sep->arg[1][0] == 0) {
c->Message(Chat::White, "Usage: #hideme [on/off]");
const auto arguments = sep->argnum;
if (!arguments) {
c->Message(Chat::White, "Usage: #hideme [On|Off]");
c->Message(Chat::White, "Usage: #hideme [0|1]");
return;
}
else {
c->SetHideMe(state);
c->MessageString(Chat::Broadcasts, c->GetHideMe() ? NOW_INVISIBLE : NOW_VISIBLE, c->GetName());

auto t = c;
if (c->GetGM() && c->GetTarget() && c->GetTarget()->IsClient()) {
t = c->GetTarget()->CastToClient();
}
}

const auto is_hidden = Strings::ToBool(sep->arg[1]);

t->SetHideMe(is_hidden);

c->Message(
Chat::White,
fmt::format(
"{} {} now {} to players below a status level of {}.",
c->GetTargetDescription(t, TargetDescriptionType::UCYou),
c == t ? "are" : "is",
is_hidden ? "invisible" : "visible",
t->Admin()
).c_str()
);
}

0 comments on commit dbcd6fd

Please sign in to comment.