diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-12-16 17:16:48 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-12-16 17:16:48 +0300 |
commit | 382e4efcd1a7151a168657b0c731e9e758e7008d (patch) | |
tree | a163892525d7b39a6a299a60809cae266575131a /src/net/tmwa | |
parent | 1f4844a5c4c958fe9ca8767e8f820c923549e0b7 (diff) | |
download | manaplus-382e4efcd1a7151a168657b0c731e9e758e7008d.tar.gz manaplus-382e4efcd1a7151a168657b0c731e9e758e7008d.tar.bz2 manaplus-382e4efcd1a7151a168657b0c731e9e758e7008d.tar.xz manaplus-382e4efcd1a7151a168657b0c731e9e758e7008d.zip |
Move processPartyUpdateHp from ea namespace into tmwa.
Diffstat (limited to 'src/net/tmwa')
-rw-r--r-- | src/net/tmwa/partyhandler.cpp | 23 | ||||
-rw-r--r-- | src/net/tmwa/partyhandler.h | 2 |
2 files changed, 25 insertions, 0 deletions
diff --git a/src/net/tmwa/partyhandler.cpp b/src/net/tmwa/partyhandler.cpp index 3e16fc08a..9cfd8986c 100644 --- a/src/net/tmwa/partyhandler.cpp +++ b/src/net/tmwa/partyhandler.cpp @@ -435,4 +435,27 @@ void PartyHandler::processPartyMove(Net::MessageIn &msg) } } +void PartyHandler::processPartyUpdateHp(Net::MessageIn &msg) +{ + const int id = msg.readInt32("id"); + const int hp = msg.readInt16("hp"); + const int maxhp = msg.readInt16("max hp"); + PartyMember *m = nullptr; + if (Ea::taParty) + m = Ea::taParty->getMember(id); + if (m) + { + m->setHp(hp); + m->setMaxHp(maxhp); + } + + // The server only sends this when the member is in range, so + // lets make sure they get the party hilight. + if (actorManager && Ea::taParty) + { + if (Being *const b = actorManager->findBeing(id)) + b->setParty(Ea::taParty); + } +} + } // namespace TmwAthena diff --git a/src/net/tmwa/partyhandler.h b/src/net/tmwa/partyhandler.h index 34d64aeb5..8493681b1 100644 --- a/src/net/tmwa/partyhandler.h +++ b/src/net/tmwa/partyhandler.h @@ -78,6 +78,8 @@ class PartyHandler final : public MessageHandler, public Ea::PartyHandler static void processPartyInvited(Net::MessageIn &msg); static void processPartyMove(Net::MessageIn &msg); + + static void processPartyUpdateHp(Net::MessageIn &msg); }; } // namespace TmwAthena |