summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-09-01 23:22:22 +0300
committerAndrei Karas <akaras@inbox.ru>2014-09-06 01:18:55 +0300
commitd4fc48e1130b7bbfb0d09820ff53142cd4efb68c (patch)
tree5cb1c3af320add5469ef682d23e0cc3c5c613ce3
parenta65ebfceea7e708adef3dd62a01c25b52800e572 (diff)
downloadmanaverse-d4fc48e1130b7bbfb0d09820ff53142cd4efb68c.tar.gz
manaverse-d4fc48e1130b7bbfb0d09820ff53142cd4efb68c.tar.bz2
manaverse-d4fc48e1130b7bbfb0d09820ff53142cd4efb68c.tar.xz
manaverse-d4fc48e1130b7bbfb0d09820ff53142cd4efb68c.zip
eathena: fix packet parsing SMSG_PLAYER_SKILLS 0x010f.
-rw-r--r--src/net/eathena/skillhandler.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/net/eathena/skillhandler.cpp b/src/net/eathena/skillhandler.cpp
index 673bcd136..afb766ac8 100644
--- a/src/net/eathena/skillhandler.cpp
+++ b/src/net/eathena/skillhandler.cpp
@@ -106,14 +106,13 @@ void SkillHandler::processPlayerSkills(Net::MessageIn &msg)
for (int k = 0; k < skillCount; k++)
{
- const int skillId = msg.readInt16();
- msg.readInt16(); // target type
- msg.skip(2); // skill pool flags
- const int level = msg.readInt16();
- msg.readInt16(); // sp
- const int range = msg.readInt16();
- msg.skip(24); // 0 unused
- const int up = msg.readUInt8();
+ const int skillId = msg.readInt16("skill id");
+ msg.readInt32("inf"); // what is it?
+ const int level = msg.readInt16("skill level");
+ msg.readInt16("sp");
+ const int range = msg.readInt16("range");
+ msg.readString(24, "skill name");
+ const int up = msg.readUInt8("up flag");
const int oldLevel = PlayerInfo::getSkillLevel(skillId);
if (oldLevel && oldLevel != level)
updateSkill = skillId;