diff options
author | megamage <none@none> | 2009-01-18 17:58:13 -0600 |
---|---|---|
committer | megamage <none@none> | 2009-01-18 17:58:13 -0600 |
commit | c85c89dc0b0564113e48bfcaf96dc2af55d73bb8 (patch) | |
tree | b75e19414c6a9dc8bfd438f9e0c7a2e42aada9a6 /src/game/debugcmds.cpp | |
parent | 54ed3974138f2f51c3c42c4469f9f1541818f631 (diff) | |
parent | 613217fca7c2959fe3abbe593f4be65beedaeca8 (diff) |
*Merge.
--HG--
branch : trunk
Diffstat (limited to 'src/game/debugcmds.cpp')
-rw-r--r-- | src/game/debugcmds.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/game/debugcmds.cpp b/src/game/debugcmds.cpp index a02a3db1761..0492a85a8f4 100644 --- a/src/game/debugcmds.cpp +++ b/src/game/debugcmds.cpp @@ -133,8 +133,12 @@ bool ChatHandler::HandleBuyErrorCommand(const char* args) bool ChatHandler::HandleSendOpcodeCommand(const char* /*args*/) { Unit *unit = getSelectedUnit(); + Player *player = NULL; if (!unit || (unit->GetTypeId() != TYPEID_PLAYER)) - unit = m_session->GetPlayer(); + player = m_session->GetPlayer(); + else + player = (Player*)unit; + if(!unit) unit = player; std::ifstream ifs("opcode.txt"); if(ifs.bad()) @@ -193,6 +197,14 @@ bool ChatHandler::HandleSendOpcodeCommand(const char* /*args*/) { data.append(unit->GetPackGUID()); } + else if(type == "myguid") + data.append(player->GetPackGUID()); + else if(type == "pos") + { + data << unit->GetPositionX(); + data << unit->GetPositionY(); + data << unit->GetPositionZ(); + } else { sLog.outDebug("Sending opcode: unknown type '%s'", type.c_str()); @@ -202,7 +214,7 @@ bool ChatHandler::HandleSendOpcodeCommand(const char* /*args*/) ifs.close(); sLog.outDebug("Sending opcode %u", data.GetOpcode()); data.hexlike(); - ((Player*)unit)->GetSession()->SendPacket(&data); + player->GetSession()->SendPacket(&data); PSendSysMessage(LANG_COMMAND_OPCODESENT, data.GetOpcode(), unit->GetName()); return true; } |