diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-09-17 21:06:09 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-09-17 21:06:09 +0300 |
commit | dbca83014dbb36cd376ec2b7f9ba4be683b5829b (patch) | |
tree | 39030eaa8f198540de170797e654b0eb5d2723f0 | |
parent | 1ca01c7099f1655510a7d8daf215c5d469bfcf33 (diff) | |
download | manaplus-dbca83014dbb36cd376ec2b7f9ba4be683b5829b.tar.gz manaplus-dbca83014dbb36cd376ec2b7f9ba4be683b5829b.tar.bz2 manaplus-dbca83014dbb36cd376ec2b7f9ba4be683b5829b.tar.xz manaplus-dbca83014dbb36cd376ec2b7f9ba4be683b5829b.zip |
eathena: add partial support for packet SMSG_PLAYER_SKILL_COOLDOWN 0x043d.
-rw-r--r-- | src/net/eathena/packets.h | 2 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 1 | ||||
-rw-r--r-- | src/net/eathena/skillhandler.cpp | 12 | ||||
-rw-r--r-- | src/net/eathena/skillhandler.h | 2 |
4 files changed, 16 insertions, 1 deletions
diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h index 3e520a979..f947a91d3 100644 --- a/src/net/eathena/packets.h +++ b/src/net/eathena/packets.h @@ -130,7 +130,7 @@ int16_t packet_lengths[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 25, // #0x0440 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index a7e3b5487..4b860b2ce 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -80,6 +80,7 @@ #define SMSG_PLAYER_SKILLS 0x010f #define SMSG_PLAYER_SKILL_UP 0x010e #define SMSG_PLAYER_HEAL 0x013d +#define SMSG_PLAYER_SKILL_COOLDOWN 0x043d #define SMSG_SKILL_FAILED 0x0110 #define SMSG_SKILL_DAMAGE 0x01de #define SMSG_SKILL_AUTO_CAST 0x0147 diff --git a/src/net/eathena/skillhandler.cpp b/src/net/eathena/skillhandler.cpp index 162448660..da8b94d11 100644 --- a/src/net/eathena/skillhandler.cpp +++ b/src/net/eathena/skillhandler.cpp @@ -45,6 +45,7 @@ SkillHandler::SkillHandler() : SMSG_PLAYER_SKILLS, SMSG_SKILL_FAILED, SMSG_PLAYER_SKILL_UP, + SMSG_PLAYER_SKILL_COOLDOWN, 0 }; handledMessages = _messages; @@ -67,6 +68,10 @@ void SkillHandler::handleMessage(Net::MessageIn &msg) processSkillFailed(msg); break; + case SMSG_PLAYER_SKILL_COOLDOWN: + processSkillCoolDown(msg); + break; + default: break; } @@ -142,4 +147,11 @@ void SkillHandler::processPlayerSkills(Net::MessageIn &msg) skillDialog->playUpdateEffect(updateSkill); } +void SkillHandler::processSkillCoolDown(Net::MessageIn &msg) +{ + // +++ need add cool down bar in skills window and in ministatus? + msg.readInt16("skill id"); + msg.readInt32("duration"); +} + } // namespace EAthena diff --git a/src/net/eathena/skillhandler.h b/src/net/eathena/skillhandler.h index e387387b4..8ea91eb0c 100644 --- a/src/net/eathena/skillhandler.h +++ b/src/net/eathena/skillhandler.h @@ -53,6 +53,8 @@ class SkillHandler final : public MessageHandler, public Ea::SkillHandler protected: void processPlayerSkills(Net::MessageIn &msg); + + void processSkillCoolDown(Net::MessageIn &msg); }; } // namespace EAthena |