Alex King 218ef80f96
[Commands] Cleanup #picklock Command (#3046)
* [Commands] Cleanup #picklock Command

# Notes
- Cleanup messages and logic.

* Update picklock.cpp
2023-03-05 22:34:05 -05:00

30 lines
728 B
C++
Executable File

#include "../client.h"
void command_picklock(Client *c, const Seperator *sep)
{
if (!c->GetTarget() || !c->GetTarget()->IsNPC()) {
c->Message(Chat::White, "You must target an NPC to use this command.");
return;
}
auto t = c->GetTarget()->CastToNPC();
if (c->HasSkill(EQ::skills::SkillPickLock)) {
if (DistanceSquaredNoZ(c->GetPosition(), t->GetPosition()) > RuleI(Adventure, LDoNTrapDistanceUse)) {
c->Message(
Chat::White,
fmt::format(
"{} is too far away.",
c->GetTargetDescription(t)
).c_str()
);
return;
}
c->HandleLDoNPickLock(t, c->GetSkill(EQ::skills::SkillPickLock), LDoNTypeMechanical);
} else {
c->Message(Chat::White, "You do not have the Pick Lock skill.");
}
}