summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-03-10 20:21:27 +0300
committerAndrei Karas <akaras@inbox.ru>2015-03-10 20:21:27 +0300
commit3e3efc374b93e92fd23fd8193df32c9c2d70f00a (patch)
tree1cd6502d7fac44aa14c367ed7bff11fc1ee9dfeb /src
parent6d2d4341e0e1ae538eacb1ab77a15e806597b4ea (diff)
downloadmanaplus-3e3efc374b93e92fd23fd8193df32c9c2d70f00a.tar.gz
manaplus-3e3efc374b93e92fd23fd8193df32c9c2d70f00a.tar.bz2
manaplus-3e3efc374b93e92fd23fd8193df32c9c2d70f00a.tar.xz
manaplus-3e3efc374b93e92fd23fd8193df32c9c2d70f00a.zip
eathena: add partial support for packet SMSG_CHAT_JOIN_FAILED 0x00da.
Diffstat (limited to 'src')
-rw-r--r--src/net/eathena/chathandler.cpp11
-rw-r--r--src/net/eathena/chathandler.h2
-rw-r--r--src/net/eathena/protocol.h1
3 files changed, 14 insertions, 0 deletions
diff --git a/src/net/eathena/chathandler.cpp b/src/net/eathena/chathandler.cpp
index 353d36856..e2aa51ece 100644
--- a/src/net/eathena/chathandler.cpp
+++ b/src/net/eathena/chathandler.cpp
@@ -79,6 +79,7 @@ ChatHandler::ChatHandler() :
SMSG_IGNORE_NICK_ACK,
SMSG_CHAT_CREATE_ACK,
SMSG_CHAT_DESTROY,
+ SMSG_CHAT_JOIN_FAILED,
0
};
handledMessages = _messages;
@@ -171,6 +172,10 @@ void ChatHandler::handleMessage(Net::MessageIn &msg)
processChatDestroy(msg);
break;
+ case SMSG_CHAT_JOIN_FAILED:
+ processChatJoinFailed(msg);
+ break;
+
default:
break;
}
@@ -793,4 +798,10 @@ void ChatHandler::processChatDestroy(Net::MessageIn &msg)
msg.readInt32("chat id");
}
+void ChatHandler::processChatJoinFailed(Net::MessageIn &msg)
+{
+ UNIMPLIMENTEDPACKET;
+ msg.readUInt8("flag");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/chathandler.h b/src/net/eathena/chathandler.h
index dff2c1cda..379f2ba15 100644
--- a/src/net/eathena/chathandler.h
+++ b/src/net/eathena/chathandler.h
@@ -131,6 +131,8 @@ class ChatHandler final : public MessageHandler, public Ea::ChatHandler
static void processChatCreateAck(Net::MessageIn &msg);
static void processChatDestroy(Net::MessageIn &msg);
+
+ static void processChatJoinFailed(Net::MessageIn &msg);
};
} // namespace EAthena
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index ab9de464a..77a27be38 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -261,6 +261,7 @@
#define SMSG_CHAT_CREATE_ACK 0x00d6
#define SMSG_CHAT_DISPLAY 0x00d7
#define SMSG_CHAT_DESTROY 0x00d8
+#define SMSG_CHAT_JOIN_FAILED 0x00da
#define SMSG_CHAT_JOIN_ACK 0x00db
#define SMSG_CHAT_LEAVE 0x00dd
#define SMSG_CHAT_JOIN_CHANNEL 0x0b08