summaryrefslogtreecommitdiff
path: root/src/net/eathena
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/eathena')
-rw-r--r--src/net/eathena/partyhandler.cpp29
-rw-r--r--src/net/eathena/partyhandler.h2
2 files changed, 31 insertions, 0 deletions
diff --git a/src/net/eathena/partyhandler.cpp b/src/net/eathena/partyhandler.cpp
index 3828156a5..c53654c57 100644
--- a/src/net/eathena/partyhandler.cpp
+++ b/src/net/eathena/partyhandler.cpp
@@ -402,4 +402,33 @@ void PartyHandler::processPartyMessage(Net::MessageIn &msg) const
}
}
+void PartyHandler::processPartyInviteResponse(Net::MessageIn &msg) const
+{
+ if (!Ea::partyTab)
+ return;
+
+ const std::string nick = msg.readString(24);
+
+ switch (msg.readUInt8())
+ {
+ case 0:
+ NotifyManager::notify(NotifyTypes::PARTY_INVITE_ALREADY_MEMBER,
+ nick);
+ break;
+ case 1:
+ NotifyManager::notify(NotifyTypes::PARTY_INVITE_REFUSED, nick);
+ break;
+ case 2:
+ NotifyManager::notify(NotifyTypes::PARTY_INVITE_DONE, nick);
+ break;
+ case 3:
+ NotifyManager::notify(NotifyTypes::PARTY_INVITE_PARTY_FULL,
+ nick);
+ break;
+ default:
+ NotifyManager::notify(NotifyTypes::PARTY_INVITE_ERROR, nick);
+ break;
+ }
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/partyhandler.h b/src/net/eathena/partyhandler.h
index 5db8a505e..100656e83 100644
--- a/src/net/eathena/partyhandler.h
+++ b/src/net/eathena/partyhandler.h
@@ -71,6 +71,8 @@ class PartyHandler final : public MessageHandler, public Ea::PartyHandler
void processPartyInfo(Net::MessageIn &msg) const;
void processPartyMessage(Net::MessageIn &msg) const;
+
+ void processPartyInviteResponse(Net::MessageIn &msg) const;
};
} // namespace EAthena