diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-10-09 16:33:10 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-10-09 16:33:10 +0300 |
commit | 38d50ac6a85f25d5e80eb9024fda5975d9561094 (patch) | |
tree | 5e193ff004b7b9e628fd5aea6004ae5c9b3a9b70 /src/net/eathena | |
parent | 84f1e19691aa83f0bd73d63d08de2a0baa5596bd (diff) | |
download | plus-38d50ac6a85f25d5e80eb9024fda5975d9561094.tar.gz plus-38d50ac6a85f25d5e80eb9024fda5975d9561094.tar.bz2 plus-38d50ac6a85f25d5e80eb9024fda5975d9561094.tar.xz plus-38d50ac6a85f25d5e80eb9024fda5975d9561094.zip |
Move processBeingSelfEffect from ea namespace into eathena and tmwa.
Diffstat (limited to 'src/net/eathena')
-rw-r--r-- | src/net/eathena/beinghandler.cpp | 27 | ||||
-rw-r--r-- | src/net/eathena/beinghandler.h | 2 |
2 files changed, 29 insertions, 0 deletions
diff --git a/src/net/eathena/beinghandler.cpp b/src/net/eathena/beinghandler.cpp index c96f29433..7b3c3fcaf 100644 --- a/src/net/eathena/beinghandler.cpp +++ b/src/net/eathena/beinghandler.cpp @@ -23,6 +23,7 @@ #include "net/eathena/beinghandler.h" #include "actormanager.h" +#include "effectmanager.h" #include "guild.h" #include "guildmanager.h" #include "party.h" @@ -31,6 +32,8 @@ #include "being/mercenaryinfo.h" #include "being/playerinfo.h" +#include "particle/particle.h" + #include "input/keyboardconfig.h" #include "gui/windows/socialwindow.h" @@ -1977,4 +1980,28 @@ void BeingHandler::processBeingStatUpdate1(Net::MessageIn &msg) const dstBeing->setManner(value); } +void BeingHandler::processBeingSelfEffect(Net::MessageIn &msg) const +{ + BLOCK_START("BeingHandler::processBeingSelfEffect") + if (!effectManager || !actorManager) + { + BLOCK_END("BeingHandler::processBeingSelfEffect") + return; + } + + const int id = static_cast<uint32_t>(msg.readInt32("being id")); + Being *const being = actorManager->findBeing(id); + if (!being) + { + BLOCK_END("BeingHandler::processBeingSelfEffect") + return; + } + + const int effectType = msg.readInt32("effect type"); + if (Particle::enabled) + effectManager->trigger(effectType, being); + + BLOCK_END("BeingHandler::processBeingSelfEffect") +} + } // namespace EAthena diff --git a/src/net/eathena/beinghandler.h b/src/net/eathena/beinghandler.h index f0d2abe49..ed7b3586f 100644 --- a/src/net/eathena/beinghandler.h +++ b/src/net/eathena/beinghandler.h @@ -127,6 +127,8 @@ class BeingHandler final : public MessageHandler, public Ea::BeingHandler void processBeingStatUpdate1(Net::MessageIn &msg) const; void processPlaterStatusChange2(Net::MessageIn &msg) const; + + void processBeingSelfEffect(Net::MessageIn &msg) const; }; } // namespace EAthena |