summaryrefslogtreecommitdiff
path: root/src/net/eathena
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/eathena')
-rw-r--r--src/net/eathena/chathandler.cpp7
-rw-r--r--src/net/eathena/chathandler.h2
2 files changed, 9 insertions, 0 deletions
diff --git a/src/net/eathena/chathandler.cpp b/src/net/eathena/chathandler.cpp
index b10224c4a..ac626fd71 100644
--- a/src/net/eathena/chathandler.cpp
+++ b/src/net/eathena/chathandler.cpp
@@ -517,4 +517,11 @@ void ChatHandler::processChatLeave(Net::MessageIn &msg)
msg.readUInt8("flag"); // 0 - left, 1 - kicked
}
+void ChatHandler::joinChannel(const std::string &channel)
+{
+ // to join channel need use gm commands or send something.
+ // here we sending invisible message.
+ channelMessage(channel, "\302\202G");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/chathandler.h b/src/net/eathena/chathandler.h
index 82abae9a1..418250eb1 100644
--- a/src/net/eathena/chathandler.h
+++ b/src/net/eathena/chathandler.h
@@ -51,6 +51,8 @@ class ChatHandler final : public MessageHandler, public Ea::ChatHandler
void channelMessage(const std::string &restrict channel,
const std::string &restrict text) override final;
+ void joinChannel(const std::string &channel) override final;
+
void who() const override final;
void sendRaw(const std::string &args) const override final;