summaryrefslogtreecommitdiff
path: root/src/net
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2013-11-09 13:08:32 +0300
committerAndrei Karas <akaras@inbox.ru>2013-11-09 13:08:32 +0300
commitb14ce2338cecce0d6b01c46a0f9058e4cb514bcf (patch)
tree98fb0f7567a635d73b7e7f9e0c649f95b40a3e71 /src/net
parentf69bb947dc7be4c44b8d1c86dec3a8b1214a80aa (diff)
downloadmv-b14ce2338cecce0d6b01c46a0f9058e4cb514bcf.tar.gz
mv-b14ce2338cecce0d6b01c46a0f9058e4cb514bcf.tar.bz2
mv-b14ce2338cecce0d6b01c46a0f9058e4cb514bcf.tar.xz
mv-b14ce2338cecce0d6b01c46a0f9058e4cb514bcf.zip
fix motd message while changing char or reconnecting to server.
Diffstat (limited to 'src/net')
-rw-r--r--src/net/chathandler.h2
-rw-r--r--src/net/ea/chathandler.cpp6
-rw-r--r--src/net/ea/chathandler.h2
3 files changed, 10 insertions, 0 deletions
diff --git a/src/net/chathandler.h b/src/net/chathandler.h
index 9fe65499c..e91be671c 100644
--- a/src/net/chathandler.h
+++ b/src/net/chathandler.h
@@ -52,6 +52,8 @@ class ChatHandler
virtual void ignoreAll() const = 0;
virtual void unIgnoreAll() const = 0;
+
+ virtual void clear() = 0;
};
} // namespace Net
diff --git a/src/net/ea/chathandler.cpp b/src/net/ea/chathandler.cpp
index 6346f63ff..265f59cb1 100644
--- a/src/net/ea/chathandler.cpp
+++ b/src/net/ea/chathandler.cpp
@@ -53,6 +53,12 @@ ChatHandler::ChatHandler() :
{
}
+void ChatHandler::clear()
+{
+ mShowMotd = config.getBoolValue("showmotd");
+ mSkipping = true;
+}
+
void ChatHandler::me(const std::string &text, const std::string &channel) const
{
// here need string duplication
diff --git a/src/net/ea/chathandler.h b/src/net/ea/chathandler.h
index 5ceccc0c2..49909ad6f 100644
--- a/src/net/ea/chathandler.h
+++ b/src/net/ea/chathandler.h
@@ -55,6 +55,8 @@ class ChatHandler : public Net::ChatHandler
virtual void processIgnoreAllResponse(Net::MessageIn &msg) const;
+ void clear() override final;
+
protected:
typedef std::queue<std::string> WhisperQueue;
WhisperQueue mSentWhispers;