Alex King 05f09b56e6
[Commands] Cleanup #petname Command (#3829)
# Notes
- Cleanup messages and logic.
2024-01-06 23:08:24 -06:00

46 lines
858 B
C++
Executable File

#include "../client.h"
void command_petname(Client *c, const Seperator *sep)
{
Mob *t = nullptr;
if (c->GetTarget()) {
t = c->GetTarget();
}
if (!t) {
c->Message(Chat::White, "You must target your pet to use this command.");
return;
}
if (!t->IsPet()) {
c->Message(Chat::White, "You must target your pet to use this command.");
return;
}
if (t->GetOwnerID() != c->GetID()) {
c->Message(Chat::White, "You must target your pet to use this command.");
return;
}
if (sep->arg[1]) {
const std::string& old_name = t->GetCleanName();
const std::string& new_name = sep->arg[1];
t->TempName(new_name.c_str());
c->Message(
Chat::White,
fmt::format(
"Renamed your pet from {} to {}.",
old_name,
new_name
).c_str()
);
return;
}
t->TempName();
c->Message(Chat::White, "Restored the original name.");
}