diff options
Diffstat (limited to 'src/net/eathena/skillrecv.cpp')
-rw-r--r-- | src/net/eathena/skillrecv.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/net/eathena/skillrecv.cpp b/src/net/eathena/skillrecv.cpp index 35d36f866..f937deb22 100644 --- a/src/net/eathena/skillrecv.cpp +++ b/src/net/eathena/skillrecv.cpp @@ -182,11 +182,17 @@ void SkillRecv::processSkillCoolDown(Net::MessageIn &msg) void SkillRecv::processSkillCoolDownList(Net::MessageIn &msg) { - const int count = (msg.readInt16("len") - 4) / 10; + int packetLen; + if (msg.getVersion() >= 20120604) + packetLen = 10; + else + packetLen = 6; + const int count = (msg.readInt16("len") - 4) / packetLen; for (int f = 0; f < count; f ++) { const int skillId = msg.readInt16("skill id"); - msg.readInt32("total"); + if (msg.getVersion() >= 20120604) + msg.readInt32("total"); const int duration = msg.readInt32("duration"); if (skillDialog) { |