summaryrefslogtreecommitdiff
path: root/src/net/eathena/skillhandler.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2016-09-12 22:35:00 +0300
committerAndrei Karas <akaras@inbox.ru>2016-09-12 23:30:12 +0300
commitf6f6683177abd0f786b34d3d2bd689d615c899e0 (patch)
treee3931b87a8f9a2f57a6f88c6809991f5e40662db /src/net/eathena/skillhandler.cpp
parent5a94fab3a68ff5769aa6f2889da582a60ce32864 (diff)
downloadmv-f6f6683177abd0f786b34d3d2bd689d615c899e0.tar.gz
mv-f6f6683177abd0f786b34d3d2bd689d615c899e0.tar.bz2
mv-f6f6683177abd0f786b34d3d2bd689d615c899e0.tar.xz
mv-f6f6683177abd0f786b34d3d2bd689d615c899e0.zip
Fix some packet sizes for version 20080827.
Diffstat (limited to 'src/net/eathena/skillhandler.cpp')
-rw-r--r--src/net/eathena/skillhandler.cpp24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/net/eathena/skillhandler.cpp b/src/net/eathena/skillhandler.cpp
index 3a815e5af..3b2af3fd8 100644
--- a/src/net/eathena/skillhandler.cpp
+++ b/src/net/eathena/skillhandler.cpp
@@ -53,10 +53,26 @@ void SkillHandler::usePos(const int id, const int level,
const int x, const int y) const
{
createOutPacket(CMSG_SKILL_USE_POSITION);
- outMsg.writeInt16(CAST_S16(level), "skill level");
- outMsg.writeInt16(CAST_S16(id), "skill id");
- outMsg.writeInt16(CAST_S16(x), "x");
- outMsg.writeInt16(CAST_S16(y), "y");
+ if (packetVersion >= 20080827 && packetVersion < 20101124)
+ {
+ outMsg.writeInt32(0, "unused");
+ outMsg.writeInt32(0, "unused");
+ outMsg.writeInt16(CAST_S16(level), "skill level");
+ outMsg.writeInt16(0, "unused");
+ outMsg.writeInt16(CAST_S16(id), "skill id");
+ outMsg.writeInt16(0, "unused");
+ outMsg.writeInt16(CAST_S16(x), "x");
+ outMsg.writeInt16(0, "unused");
+ outMsg.writeInt8(0, "unused");
+ outMsg.writeInt16(CAST_S16(y), "y");
+ }
+ else
+ {
+ outMsg.writeInt16(CAST_S16(level), "skill level");
+ outMsg.writeInt16(CAST_S16(id), "skill id");
+ outMsg.writeInt16(CAST_S16(x), "x");
+ outMsg.writeInt16(CAST_S16(y), "y");
+ }
}
void SkillHandler::usePos(const int id, const int level,