diff options
Diffstat (limited to 'src/net/ea')
-rw-r--r-- | src/net/ea/beingrecv.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/net/ea/beingrecv.cpp b/src/net/ea/beingrecv.cpp index f09979e58..cfae77247 100644 --- a/src/net/ea/beingrecv.cpp +++ b/src/net/ea/beingrecv.cpp @@ -23,13 +23,17 @@ #include "net/ea/beingrecv.h" #include "actormanager.h" +#include "configuration.h" #include "game.h" +#include "notifymanager.h" #include "party.h" #include "being/localplayer.h" #include "being/playerrelation.h" #include "being/playerrelations.h" +#include "enums/resources/notifytypes.h" + #include "enums/resources/map/mapitemtype.h" #include "gui/viewport.h" @@ -100,6 +104,40 @@ void BeingRecv::processBeingRemove(Net::MessageIn &msg) { if (socialWindow) socialWindow->updateActiveList(); + const std::string name = dstBeing->getName(); + if (!name.empty() && config.getBoolValue("logPlayerActions")) + { + switch (type) + { + case 0: + break; + case 1: + NotifyManager::notify( + NotifyTypes::BEING_REMOVE_DIED, + name); + break; + case 2: + NotifyManager::notify( + NotifyTypes::BEING_REMOVE_LOGGED_OUT, + name); + break; + case 3: + NotifyManager::notify( + NotifyTypes::BEING_REMOVE_WARPED, + name); + break; + case 4: + NotifyManager::notify( + NotifyTypes::BEING_REMOVE_TRICK_DEAD, + name); + break; + default: + NotifyManager::notify( + NotifyTypes::BEING_REMOVE_UNKNOWN, + name); + break; + } + } } actorManager->destroy(dstBeing); } |