diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-09-05 23:11:41 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-09-06 01:18:58 +0300 |
commit | e0d490b2313976562135f91bf7e723825871b3d4 (patch) | |
tree | 90cda4f906fdc2ebe622bd62f0536787418da9b7 /src | |
parent | c7c2c069010ca30352e25fa8e5010d556192835b (diff) | |
download | manaplus-e0d490b2313976562135f91bf7e723825871b3d4.tar.gz manaplus-e0d490b2313976562135f91bf7e723825871b3d4.tar.bz2 manaplus-e0d490b2313976562135f91bf7e723825871b3d4.tar.xz manaplus-e0d490b2313976562135f91bf7e723825871b3d4.zip |
eathena: fix reading packet SMSG_BEING_MOVE2 0x0086.
Diffstat (limited to 'src')
-rw-r--r-- | src/net/eathena/beinghandler.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/net/eathena/beinghandler.cpp b/src/net/eathena/beinghandler.cpp index bdfeb813a..d87455c81 100644 --- a/src/net/eathena/beinghandler.cpp +++ b/src/net/eathena/beinghandler.cpp @@ -926,6 +926,11 @@ void BeingHandler::processBeingMove2(Net::MessageIn &msg) const */ Being *const dstBeing = actorManager->findBeing(msg.readInt32("being id")); + uint16_t srcX, srcY, dstX, dstY; + msg.readCoordinatePair(srcX, srcY, dstX, dstY, "move path"); + msg.readUInt8("(sx<<4) | (sy&0x0f)"); + msg.readInt32("tick"); + /* * This packet doesn't have enough info to actually * create a new being, so if the being isn't found, @@ -938,10 +943,6 @@ void BeingHandler::processBeingMove2(Net::MessageIn &msg) const return; } - uint16_t srcX, srcY, dstX, dstY; - msg.readCoordinatePair(srcX, srcY, dstX, dstY, "move path"); - msg.readInt32("tick"); - dstBeing->setAction(BeingAction::STAND, 0); dstBeing->setTileCoords(srcX, srcY); dstBeing->setDestination(dstX, dstY); |