summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/net/eathena/packets.h2
-rw-r--r--src/net/eathena/protocol.h1
-rw-r--r--src/net/eathena/skillhandler.cpp12
-rw-r--r--src/net/eathena/skillhandler.h2
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