诸暨麻将添加redis
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

77 regels
2.2 KiB

  1. #ifndef GAME_MATCH_SINK_HEAD_FILE
  2. #define GAME_MATCH_SINK_HEAD_FILE
  3. #pragma once
  4. //引入文件
  5. #include "MatchServiceHead.h"
  6. //////////////////////////////////////////////////////////////////////////
  7. //桌子钩子类
  8. class CTableFrameHook : public ITableFrameHook, public ITableUserAction
  9. {
  10. //友元定义
  11. friend class CGameServiceManager;
  12. //接口变量
  13. public:
  14. ITableFrame * m_pITableFrame; //框架接口
  15. //事件接口
  16. protected:
  17. IMatchEventSink * m_pMatchEventSink; //比赛事件
  18. //配置变量
  19. protected:
  20. const tagGameServiceOption * m_pGameServiceOption; //配置参数
  21. //属性变量
  22. protected:
  23. static const WORD m_wPlayerCount; //游戏人数
  24. //函数定义
  25. public:
  26. //构造函数
  27. CTableFrameHook();
  28. //析构函数
  29. virtual ~CTableFrameHook();
  30. //基础接口
  31. public:
  32. //释放对象
  33. virtual VOID Release() { delete this; }
  34. //接口查询
  35. virtual void * QueryInterface(const IID & Guid, DWORD dwQueryVer);
  36. //管理接口
  37. public:
  38. //设置桌子事件接口
  39. virtual bool SetMatchEventSink(IUnknownEx * pIUnknownEx);
  40. //初始化
  41. virtual bool InitTableFrameHook(IUnknownEx * pIUnknownEx);
  42. //游戏事件
  43. public:
  44. //游戏开始
  45. virtual bool OnEventGameStart(ITableFrame *pITableFrame, WORD wChairCount);
  46. //游戏结束
  47. virtual bool OnEventGameEnd(ITableFrame *pITableFrame, WORD wChairID, IServerUserItem * pIServerUserItem, BYTE cbReason);
  48. //用户动作
  49. public:
  50. //用户断线
  51. virtual bool OnActionUserOffLine(WORD wChairID, IServerUserItem * pIServerUserItem) { return true; }
  52. //用户重入
  53. virtual bool OnActionUserConnect(WORD wChairID, IServerUserItem * pIServerUserItem) { return true; }
  54. //用户坐下
  55. virtual bool OnActionUserSitDown(WORD wChairID, IServerUserItem * pIServerUserItem, bool bLookonUser);
  56. //用户起来
  57. virtual bool OnActionUserStandUp(WORD wChairID, IServerUserItem * pIServerUserItem, bool bLookonUser);
  58. //用户同意
  59. virtual bool OnActionUserOnReady(WORD wChairID, IServerUserItem * pIServerUserItem, VOID * pData, WORD wDataSize);
  60. };
  61. //////////////////////////////////////////////////////////////////////////
  62. #endif