summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-08-22 17:18:06 +0300
committerAndrei Karas <akaras@inbox.ru>2015-08-22 17:21:00 +0300
commit4873453c6b49c8181cb4ad65393fcf2da4b6e02a (patch)
tree38f05a1420b12255994ef59a022d060a7fe32552
parent448eabff4c29f31cfb74468857dcbf91a0c43df4 (diff)
downloadmv-4873453c6b49c8181cb4ad65393fcf2da4b6e02a.tar.gz
mv-4873453c6b49c8181cb4ad65393fcf2da4b6e02a.tar.bz2
mv-4873453c6b49c8181cb4ad65393fcf2da4b6e02a.tar.xz
mv-4873453c6b49c8181cb4ad65393fcf2da4b6e02a.zip
Show skill effects with packet SMSG_SKILL_NO_DAMAGE.
-rw-r--r--src/net/ea/beinghandler.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/net/ea/beinghandler.cpp b/src/net/ea/beinghandler.cpp
index 2c2c65652..85e04efbc 100644
--- a/src/net/ea/beinghandler.cpp
+++ b/src/net/ea/beinghandler.cpp
@@ -394,12 +394,16 @@ void BeingHandler::processPlayerMoveToAttack(Net::MessageIn &msg)
void BeingHandler::processSkillNoDamage(Net::MessageIn &msg)
{
- UNIMPLIMENTEDPACKET;
- msg.readInt16("skill id");
- msg.readInt16("heal");
- msg.readInt32("dst id");
- msg.readInt32("src id");
- msg.readUInt8("fail");
+ const int id = msg.readInt16("skill id");
+ const int heal = msg.readInt16("heal");
+ Being *const dstBeing = actorManager->findBeing(
+ msg.readBeingId("dst being id"));
+ Being *const srcBeing = actorManager->findBeing(
+ msg.readBeingId("src being id"));
+ const int flag = msg.readUInt8("fail");
+
+ if (srcBeing)
+ srcBeing->handleSkill(dstBeing, heal, id, 1);
}
void BeingHandler::processPvpMapMode(Net::MessageIn &msg)