ObjectPlayer.h
上传用户:szopptop
上传日期:2013-04-23
资源大小:1047k
文件大小:3k
源码类别:

模拟服务器

开发平台:

Visual C++

  1. // ORZ:
  2. #include "../def/staticArray.h"
  3. #include "../def/_orzex/syncobj.h"
  4. class CPlayerObject : public CCharObject, public CIntLock, CStaticArray< CPlayerObject >::IArrayData
  5. {
  6. public:
  7. bool m_bEmpty;
  8. int m_nArrIndex;
  9. BOOL m_fIsAlive;
  10. BYTE m_btBright;
  11. BOOL m_fAdminMode;
  12. DWORD m_dwLastCryTime;
  13. CWHList<CCharObject*> m_xSlaveObjList;
  14. public:
  15. void Constructor();
  16. bool IsEmpty();
  17. CPlayerObject();
  18. CPlayerObject(CUserInfo* pUserInfo);
  19. void Initialize();
  20. virtual void Operate();
  21. BOOL DoRideHorse(int nDir, int fRideFlag);
  22. void MakeFeature();
  23. void HasLevelUp(int nPrevLevel);
  24. void WeightChanged();
  25. void RecalcHitSpeed();
  26. void RecalcAbilitys();
  27. void RecalcLevelAbilitys();
  28. void SendBagItems();
  29. void SendMyMagics();
  30. void SendMapName();
  31. void SendNewMap();
  32. void SendAddItem(_LPTUSERITEMRCD lpTItemRcd);
  33. BOOL EatItem(char *pszMakeIndex);
  34. BOOL ReadBook(char *pszMakeIndex);
  35. int GetMagicID(char *pszMakeIndex);
  36. BOOL ServerGetEatItem(int nItemIndex, char *pszMakeIndex);
  37. BOOL PickUp();
  38. void Whisper(char *pszChar, char *pszMsg);
  39. int UpdateItemToDB(_LPTUSERITEMRCD lpMakeItemRcd, int nAction);
  40. BOOL CheckTakeOnItem(WORD wWhere, _LPTUSERITEMRCD lpTItemRcd);
  41. void ServerGetTakeOnGenItem(WORD wWhere, char *pszItemIndex);
  42. void ServerGetTakeOnItem(WORD wWhere, char *pszItemIndex);
  43. void ServerGetTakeOffItem(WORD wWhere, char *pszItemIndex);
  44. void ServerGetButch(CCharObject* pCharObject, int nX, int nY, int nDir);
  45. void ServerGetMagicKeyChange(int nMagicID, int nUseKey);
  46. BYTE DayBright();
  47. int CalcGetExp(int nTagLevel, int nTagHP);
  48. void WinExp(int nExp);
  49. void GainExp(int nExp);
  50. void AddBodyLuck(double fLuck);
  51. BOOL ProcessForUserSaid(char *pszData);
  52. void TrainSkill(_LPTHUMANMAGICRCD lptMagicRcd, int nTrain);
  53. BOOL DoSpell(_LPTHUMANMAGICRCD lptMagicRcd, int TargetX, int TargetY, CCharObject* pTargetObject);
  54. BOOL SpellXY(int nKey, int nTargetX, int nTargetY, int nTargetObj);
  55. BOOL MakeSlave(int nMonRace, int nX, int nY, int nLevel, int nMax, DWORD dwRoyaltySec);
  56. virtual BOOL IsProperTarget(CCharObject* pCharObject);
  57. virtual void Run();
  58. virtual WORD GetThisCharColor();
  59. virtual void GetCharName(char *pszCharName);
  60. // For Administrator
  61. BOOL m_fIsCapture;
  62. FILE *m_hCaptureFile;
  63. protected:
  64. BOOL ProcessForAdminSaid(char *pszMsg);
  65. void CmdRandomSpaceMove(char *pszParam1);
  66. void CmdFreeSpaceMove(char *pszParam1, char *pszParam2, char *pszParam3);
  67. void CmdCallMakeMonster(char *pszParam1, char *pszParam2);
  68. void CmdCallMakeMonsterXY(char *pszParam1, char *pszParam2, char *pszParam3, char *pszParam4);
  69. void CmdMakeItem(char *pszParam1, char *pszParam2);
  70. void CmdDyeingHair(char *pszParam1);
  71. void CmdDyeingWear(char *pszParam1);
  72. void CmdHairStyle(char *pszParam1);
  73. BOOL CmdChangeJob(char *pszParam1);
  74. void CmdMakeFullSkill(char *pszParam1, char *pszParam2);
  75. void CmdSendMonsterLevelInfos();
  76. void CmdChangeItemPrefix(char *pszParam1, char *pszParam2);
  77. void CmdCallMakeSlaveMonster(char *pszParam1, char *pszParam2);
  78. };