summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-03-12 14:52:12 +0300
committerAndrei Karas <akaras@inbox.ru>2015-03-12 14:53:23 +0300
commitc4ffef0103507c8f514d1a395b630e21b9b9541b (patch)
treebc4af40a984d9b7982428a863778fead484aa29c
parent43fb66a1610aeca72dab2527da95abdadb826697 (diff)
downloadmv-c4ffef0103507c8f514d1a395b630e21b9b9541b.tar.gz
mv-c4ffef0103507c8f514d1a395b630e21b9b9541b.tar.bz2
mv-c4ffef0103507c8f514d1a395b630e21b9b9541b.tar.xz
mv-c4ffef0103507c8f514d1a395b630e21b9b9541b.zip
eathena: add partial support for packet SMSG_PK_RANKS_LIST 0x0238.
-rw-r--r--src/net/eathena/beinghandler.cpp15
-rw-r--r--src/net/eathena/beinghandler.h2
-rw-r--r--src/net/eathena/packets.h2
-rw-r--r--src/net/eathena/protocol.h1
4 files changed, 19 insertions, 1 deletions
diff --git a/src/net/eathena/beinghandler.cpp b/src/net/eathena/beinghandler.cpp
index ef22b4178..4082d85ef 100644
--- a/src/net/eathena/beinghandler.cpp
+++ b/src/net/eathena/beinghandler.cpp
@@ -129,6 +129,7 @@ BeingHandler::BeingHandler(const bool enableSync) :
SMSG_BLACKSMITH_RANKS_LIST,
SMSG_ALCHEMIST_RANKS_LIST,
SMSG_TAEKWON_RANKS_LIST,
+ SMSG_PK_RANKS_LIST,
0
};
handledMessages = _messages;
@@ -373,6 +374,10 @@ void BeingHandler::handleMessage(Net::MessageIn &msg)
processTaekwonRanksList(msg);
break;
+ case SMSG_PK_RANKS_LIST:
+ processPkRanksList(msg);
+ break;
+
default:
break;
}
@@ -1370,6 +1375,16 @@ void BeingHandler::processTaekwonRanksList(Net::MessageIn &msg)
msg.readInt32("points");
}
+void BeingHandler::processPkRanksList(Net::MessageIn &msg)
+{
+ UNIMPLIMENTEDPACKET;
+ // +++ here need window with rank tables.
+ for (int f = 0; f < 10; f ++)
+ msg.readString(24, "name");
+ for (int f = 0; f < 10; f ++)
+ msg.readInt32("points");
+}
+
void BeingHandler::processBeingChangeDirection(Net::MessageIn &msg)
{
BLOCK_START("BeingHandler::processBeingChangeDirection")
diff --git a/src/net/eathena/beinghandler.h b/src/net/eathena/beinghandler.h
index cecf35090..6a32a1d3c 100644
--- a/src/net/eathena/beinghandler.h
+++ b/src/net/eathena/beinghandler.h
@@ -146,6 +146,8 @@ class BeingHandler final : public MessageHandler, public Ea::BeingHandler
static void processAlchemistRanksList(Net::MessageIn &msg);
static void processTaekwonRanksList(Net::MessageIn &msg);
+
+ static void processPkRanksList(Net::MessageIn &msg);
};
} // namespace EAthena
diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h
index b8ea08ec2..3eee3ab46 100644
--- a/src/net/eathena/packets.h
+++ b/src/net/eathena/packets.h
@@ -86,7 +86,7 @@ int16_t packet_lengths[] =
26, -1, 0, 0, 18, 26, 11, 34, 0, 36, 10, 19, 10, 0, 32, 0,
22, -1, 16, 0, 42, 6, 6, 0, 0, 282, 282, 10, 10, 0, 0, 0,
-1, -1, 0, 8, 10, 0, 282, 0, 0, 15, 0, 0, 0, 19, 71, 5,
- 12, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 12, 0, 0, 0, 0, -1, 0, 0, 282, 0, 0, 0, 0, 0, 0, 0,
// #0x0240
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3, 0, -1, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 4, 0, 6,
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index c3ba7710b..85cb66bcd 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -284,6 +284,7 @@
#define SMSG_BLACKSMITH_RANKS_LIST 0x0219
#define SMSG_ALCHEMIST_RANKS_LIST 0x021a
#define SMSG_TAEKWON_RANKS_LIST 0x0226
+#define SMSG_PK_RANKS_LIST 0x0238
#define SMSG_MONSTER_HP 0x0977
#define SMSG_MONSTER_INFO 0x018c
#define SMSG_PLAYER_HP 0x080e