From: Keith F. <ven...@us...> - 2002-03-09 17:20:16
|
Update of /cvsroot/planeshift/planeshift/src/common/net In directory usw-pr-cvs1:/tmp/cvs-serv31755 Modified Files: messages.h messages.cpp Log Message: /who command and other updates. Index: messages.h =================================================================== RCS file: /cvsroot/planeshift/planeshift/src/common/net/messages.h,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** messages.h 4 Mar 2002 00:21:40 -0000 1.18 --- messages.h 9 Mar 2002 17:20:13 -0000 1.19 *************** *** 18,21 **** --- 18,22 ---- #define MSGTYPEPOSUPDATE PS_MSGID('P','O','S','U') #define MSGTYPEGUILDCMD PS_MSGID('G','L','D','C') + #define MSGTYPEUSERCMD PS_MSGID('U','S','R','C') #define MSGTYPESYSTEM PS_MSGID('S','Y','S','M') *************** *** 145,148 **** --- 146,158 ---- }; + class psSystemMessage : public psMessageCracker + { + public: + csString msgline; + + psSystemMessage(int clientnum,const char *fmt, ... ); + psSystemMessage(const MsgEntry *message); + }; + class psGuildCmdMessage : public psMessageCracker { *************** *** 157,167 **** }; ! class psSystemMessage : public psMessageCracker { public: ! csString msgline; ! psSystemMessage(int clientnum,const char *fmt, ... ); ! psSystemMessage(const MsgEntry *message); }; --- 167,181 ---- }; ! ! class psUserCmdMessage : public psMessageCracker { public: ! bool valid; ! csString command,player,filter; ! int level; ! ! psUserCmdMessage(const char *cmd); ! psUserCmdMessage(const MsgEntry *message); }; Index: messages.cpp =================================================================== RCS file: /cvsroot/planeshift/planeshift/src/common/net/messages.cpp,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** messages.cpp 4 Mar 2002 01:10:02 -0000 1.15 --- messages.cpp 9 Mar 2002 17:20:13 -0000 1.16 *************** *** 316,317 **** --- 316,352 ---- + psUserCmdMessage::psUserCmdMessage(const char *cmd) + { + int size = strlen(cmd)+1; + + msg = new MsgEntry(size); + + msg->data->version = 0x0001; + msg->data->type = MSGTYPEUSERCMD; + msg->clientnum = 0; + msg->priority = PRIORITY_HIGH; + + strcpy(msg->data->data,cmd); + } + + psUserCmdMessage::psUserCmdMessage(const MsgEntry *message) + { + valid = false; + level = 0; + + csString cmd(message->data->data); + + command = GetWordNumber(cmd,1); + + if (command == "/who" || command == "/buddylist") + { + filter = GetWordNumber(cmd,2); + valid = true; + } + else if (command == "/buddy" || command == "/notbuddy") + { + player = GetWordNumber(cmd,2); + valid = true; + } + } + |