diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-06-24 16:14:23 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-06-24 16:14:23 +0300 |
commit | 26c14c26a425f0a4ddad526ebbddf4f3e3ff449d (patch) | |
tree | b85eedcd796a7a137140a844caabc81ab2fd15ff /src/net | |
parent | 8db46ea7b77a193d0b79b38d1eba753a4d3f0748 (diff) | |
download | mv-26c14c26a425f0a4ddad526ebbddf4f3e3ff449d.tar.gz mv-26c14c26a425f0a4ddad526ebbddf4f3e3ff449d.tar.bz2 mv-26c14c26a425f0a4ddad526ebbddf4f3e3ff449d.tar.xz mv-26c14c26a425f0a4ddad526ebbddf4f3e3ff449d.zip |
Add packet CMSG_NAVIGATE_TO
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/eathena/beingrecv.cpp | 15 | ||||
-rw-r--r-- | src/net/eathena/beingrecv.h | 1 | ||||
-rw-r--r-- | src/net/eathena/packetsin.inc | 6 |
3 files changed, 21 insertions, 1 deletions
diff --git a/src/net/eathena/beingrecv.cpp b/src/net/eathena/beingrecv.cpp index 34475af26..a40639457 100644 --- a/src/net/eathena/beingrecv.cpp +++ b/src/net/eathena/beingrecv.cpp @@ -1954,6 +1954,21 @@ void BeingRecv::processSkillDamage(Net::MessageIn &msg) BLOCK_END("BeingRecv::processSkillDamage") } +void BeingRecv::processNavigateTo(Net::MessageIn &msg) +{ + UNIMPLIMENTEDPACKET; + // 0 position + // 1 no position + // 3 monster + msg.readUInt8("navigate type"); + msg.readUInt8("transportation flag"); + msg.readUInt8("hide window"); + msg.readString(16, "map name"); + msg.readInt16("x"); + msg.readInt16("y"); + msg.readInt16("mob id"); +} + void BeingRecv::applyPlayerAction(Net::MessageIn &msg, Being *const being, const uint8_t type) diff --git a/src/net/eathena/beingrecv.h b/src/net/eathena/beingrecv.h index 692ecb441..4e7d63e9f 100644 --- a/src/net/eathena/beingrecv.h +++ b/src/net/eathena/beingrecv.h @@ -108,6 +108,7 @@ namespace EAthena void processSolveCharName(Net::MessageIn &msg); void processGraffiti(Net::MessageIn &msg); void processSkillDamage(Net::MessageIn &msg); + void processNavigateTo(Net::MessageIn &msg); Being *createBeing2(Net::MessageIn &msg, const BeingId id, const int32_t job, diff --git a/src/net/eathena/packetsin.inc b/src/net/eathena/packetsin.inc index 8bd9143cc..621da23c8 100644 --- a/src/net/eathena/packetsin.inc +++ b/src/net/eathena/packetsin.inc @@ -59,7 +59,8 @@ packet(SMSG_PLAYER_HP, 0x0106, 10, &BeingRecv::processBeing packet(SMSG_PET_STATUS, 0x01a2, 35, &PetRecv::processPetStatus, 1); // fake packets for add packet name -packet(SMSG_SELECT_CART, 0x0000, 0, nullptr, 0); +packet(SMSG_SELECT_CART, 0x0000, 0, nullptr, 0); +packet(CMSG_NAVIGATE_TO, 0x0000, 0, nullptr, 0); // login server, unknown version packet(SMSG_LOGIN_DATA, 0x0069, -1, &Ea::LoginRecv::processLoginData, 0); @@ -671,6 +672,9 @@ if (packetVersion >= 20110718) // 20111005 packet(SMSG_SKILL_SNAP, 0x08d2, 10, &BeingRecv::processBeingSlide, 20111005); +// 20111010 +packet(CMSG_NAVIGATE_TO, 0x08e2, 27, &BeingRecv::processNavigateTo, 20111010); + // 20120000 packet(SMSG_LOGIN_ERROR2, 0x083e, 26, &LoginRecv::processLoginError2, 20120000); |