ClientSocket.h
上传用户:cydong117
上传日期:2009-11-10
资源大小:638k
文件大小:3k
源码类别:

模拟服务器

开发平台:

Visual C++

  1. #ifndef _CLIENTSOCKET_H
  2. #define _CLIENTSOCKET_H
  3. #define ID_SOCKCLIENT_EVENT_MSG WM_USER + 1000
  4. #include <assert.h>
  5. class CClientSocket
  6. {
  7. protected:
  8. int m_nCurRecv;
  9. CHAR m_szBuff[8192 * 4]; // For Receive
  10. char m_szEncodeDefMsg[32]; // For Send
  11. char m_szEncodeBody[8192];
  12. char m_szPacket[8192 * 2];
  13. int m_nSync;
  14. _TDEFAULTMESSAGE DefMsg;
  15. public:
  16. CClientSocket();
  17. virtual ~CClientSocket();
  18. SOCKET m_sockClient;
  19. CWHDefProcess* m_pxDefProc;
  20. public:
  21. unsigned long GetINetAddr(CHAR* pszDotAddress);
  22. BOOL InitSocket(HWND hWnd);
  23. BOOL ConnectToServer(HWND hWnd, CHAR* szID, INT nPort);
  24. BOOL CheckSocketError(LPARAM lParam);
  25. BOOL DisconnectToServer();
  26. // VOID SendToServer(CHAR *pszPacket);
  27. VOID SendPacket(_TDEFAULTMESSAGE* lpDefMsg, char *pszData);
  28. // For Login
  29. VOID OnLogin(char *pszID, char *pszPassword);
  30. VOID OnSelectServer(char *pszServerName);
  31. VOID OnChangePassword(char *pszID, char *pszOldPassword, char *pszNewPassword);
  32. VOID OnNewAccount(char *pszNewAccount);
  33. // For Character Select
  34. VOID OnQueryChar();
  35. VOID OnNewChar( char *pszId, int nHair, int nJob, int nSex );
  36. VOID OnDelChar( char *pszCharName );
  37. VOID OnSelChar( char *pszCharName );
  38. // For Game playing
  39. void SendNoticeOK();
  40. void SendNPCMessage(WORD wIdent,DWORD dwNpcId,INT reg,CHAR* szTxt); // MOON
  41. void SendGetDetailItem(DWORD dwNpcId,INT nIndex,CHAR* szItemName); // MOON
  42. void SendBuyItem(DWORD dwNpcId,CHAR* szItemName,CHAR* szItemIndex); // MOON
  43. VOID SendOpenDoor(INT nX, INT nY, INT nIdx);
  44. VOID SendQueryMsg(WORD wIdent);
  45. VOID SendActMsg(WORD wIdent, INT nX, INT nY, INT nDir);
  46. VOID SendHitMsg(WORD wIdent, INT nX, INT nY, INT nDir, WORD wHitStyle);
  47. VOID SendRideMsg(WORD wIdent, INT nDir, BOOL bRide);
  48. VOID SendSpellMsg(INT nMagicID, INT nTargetX, INT nTargetY, INT nTargetID);
  49. VOID SendSay(CHAR *pszSay);
  50. VOID SendRunLogin(CHAR* szLoginID, CHAR* szCharName, INT nCertification, INT VersionNum);
  51. VOID SendTakeOnOffItem(WORD wIdent, BYTE bEquipNum, CHAR* szItemName, INT nItemIdx);
  52. VOID SendQueryName(INT nRecog, INT nX, INT nY);
  53. VOID SendMagicKeyChange(INT nKeyNum, INT nMagicID);
  54. VOID SendItemIndex(WORD wIdent, INT nItemIndex, CHAR* pszItemName);
  55. VOID SendPickUp(INT nX, INT nY);
  56. VOID SendButchAnimal(INT nX, INT nY, INT nDir, INT nActorID);
  57. VOID SendNPCClick(INT nRecog);
  58. void SendCreateGroup(char *pszWho);
  59. void SendGroupMode(BOOL fFlag);
  60. void SendAddGroupMember(char *pszWho);
  61. void SendDelGroupMember(char *pszWho);
  62. void SendGuildHome();
  63. LRESULT OnSocketMessage(WPARAM wParam, LPARAM lParam);
  64. protected:
  65. };
  66. #endif // _CLIENTSOCKET_H