From 6eb5d96b568de3632ba755ff7e794a59083d1f62 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 29 Mar 2015 12:43:42 +0300 Subject: eathena: add packet CMSG_SET_CHAT_ROOM_OWNER 0x00e0. --- src/net/chathandler.h | 2 ++ src/net/eathena/chathandler.cpp | 7 +++++++ src/net/eathena/chathandler.h | 2 ++ src/net/eathena/protocol.h | 1 + src/net/tmwa/chathandler.cpp | 4 ++++ src/net/tmwa/chathandler.h | 2 ++ 6 files changed, 18 insertions(+) (limited to 'src') diff --git a/src/net/chathandler.h b/src/net/chathandler.h index 404ee6ab5..2452aecb1 100644 --- a/src/net/chathandler.h +++ b/src/net/chathandler.h @@ -90,6 +90,8 @@ class ChatHandler notfinal const bool isPublic, const std::string &password, const std::string &title) const = 0; + + virtual void setChatRoomOwner(const std::string &nick) const = 0; }; } // namespace Net diff --git a/src/net/eathena/chathandler.cpp b/src/net/eathena/chathandler.cpp index ad30750a5..3fb487a3a 100644 --- a/src/net/eathena/chathandler.cpp +++ b/src/net/eathena/chathandler.cpp @@ -958,4 +958,11 @@ void ChatHandler::setChatRoomOptions(const int limit, outMsg.writeString(title, sz, "title"); } +void ChatHandler::setChatRoomOwner(const std::string &nick) const +{ + createOutPacket(CMSG_SET_CHAT_ROOM_OWNER); + outMsg.writeInt32(0, "role (unused)"); + outMsg.writeString(nick, 24, "nick"); +} + } // namespace EAthena diff --git a/src/net/eathena/chathandler.h b/src/net/eathena/chathandler.h index 89fc7f43c..87599fd20 100644 --- a/src/net/eathena/chathandler.h +++ b/src/net/eathena/chathandler.h @@ -94,6 +94,8 @@ class ChatHandler final : public MessageHandler, public Ea::ChatHandler const std::string &password, const std::string &title) const override final; + void setChatRoomOwner(const std::string &nick) const override final; + protected: static std::string extractChannelFromMessage(std::string &chatMsg); diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index d1b37bdbf..e95a5716e 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -495,6 +495,7 @@ #define CMSG_CREAYE_CHAT_ROOM 0x00d5 #define CMSG_LEAVE_CHAT_ROOM 0x00e3 #define CMSG_SET_CHAT_ROOM_OPTIONS 0x00de +#define CMSG_SET_CHAT_ROOM_OWNER 0x00e0 #define CMSG_SKILL_LEVELUP_REQUEST 0x0112 #define CMSG_STAT_UPDATE_REQUEST 0x00bb diff --git a/src/net/tmwa/chathandler.cpp b/src/net/tmwa/chathandler.cpp index 086426901..f54d2cac0 100644 --- a/src/net/tmwa/chathandler.cpp +++ b/src/net/tmwa/chathandler.cpp @@ -699,4 +699,8 @@ void ChatHandler::setChatRoomOptions(const int limit A_UNUSED, { } +void ChatHandler::setChatRoomOwner(const std::string &nick A_UNUSED) const +{ +} + } // namespace TmwAthena diff --git a/src/net/tmwa/chathandler.h b/src/net/tmwa/chathandler.h index ab90f71d3..dee315352 100644 --- a/src/net/tmwa/chathandler.h +++ b/src/net/tmwa/chathandler.h @@ -92,6 +92,8 @@ class ChatHandler final : public MessageHandler, public Ea::ChatHandler const std::string &password, const std::string &title) const override final; + void setChatRoomOwner(const std::string &nick) const override final; + protected: static void processChat(Net::MessageIn &msg); -- cgit v1.2.3-70-g09d2