diff --git a/src/game/Level3.cpp b/src/game/Level3.cpp index 87f092a60..c184ec5ea 100644 --- a/src/game/Level3.cpp +++ b/src/game/Level3.cpp @@ -5315,9 +5315,11 @@ bool ChatHandler::HandleBanListIPCommand(const char* args) bool ChatHandler::HandleRespawnCommand(const char* /*args*/) { - Unit* target = getSelectedUnit(); + Player* pl = m_session->GetPlayer(); - if(target) + // accept only explictly selected target (not implicitly self targeting case) + Unit* target = getSelectedUnit(); + if(pl->GetSelection() && target) { if(target->GetTypeId()!=TYPEID_UNIT) { @@ -5331,8 +5333,6 @@ bool ChatHandler::HandleRespawnCommand(const char* /*args*/) return true; } - Player* pl = m_session->GetPlayer(); - CellPair p(MaNGOS::ComputeCellPair(pl->GetPositionX(), pl->GetPositionY())); Cell cell(p); cell.data.Part.reserved = ALL_DISTRICT;