00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef NET_EA_CHATHANDLER_H
00023 #define NET_EA_CHATHANDLER_H
00024
00025 #include "net/chathandler.h"
00026 #include "net/messagehandler.h"
00027 #include "net/net.h"
00028
00029 namespace EAthena {
00030
00031 class ChatHandler : public MessageHandler, public Net::ChatHandler
00032 {
00033 public:
00034 ChatHandler();
00035
00036 void handleMessage(MessageIn &msg);
00037
00038 void talk(const std::string &text);
00039
00040 void me(const std::string &text);
00041
00042 void privateMessage(const std::string &recipient,
00043 const std::string &text);
00044
00045 void channelList();
00046
00047 void enterChannel(const std::string &channel,
00048 const std::string &password);
00049
00050 void quitChannel(int channelId);
00051
00052 void sendToChannel(int channelId, const std::string &text);
00053
00054 void userList(const std::string &channel);
00055
00056 void setChannelTopic(int channelId, const std::string &text);
00057
00058 void setUserMode(int channelId, const std::string &name, int mode);
00059
00060 void kickUser(int channelId, const std::string &name);
00061
00062 void who();
00063 };
00064
00065 }
00066
00067 #endif // NET_EA_CHATHANDLER_H