|
- #ifndef GAME_MATCH_SINK_HEAD_FILE
- #define GAME_MATCH_SINK_HEAD_FILE
-
- #pragma once
-
- //引入文件
- #include "MatchServiceHead.h"
-
- //////////////////////////////////////////////////////////////////////////
-
- //桌子钩子类
- class CTableFrameHook : public ITableFrameHook, public ITableUserAction
- {
- //友元定义
- friend class CGameServiceManager;
-
- //接口变量
- public:
- ITableFrame * m_pITableFrame; //框架接口
-
- //事件接口
- protected:
- IMatchEventSink * m_pMatchEventSink; //比赛事件
-
- //配置变量
- protected:
- const tagGameServiceOption * m_pGameServiceOption; //配置参数
-
- //属性变量
- protected:
- static const WORD m_wPlayerCount; //游戏人数
-
- //函数定义
- public:
- //构造函数
- CTableFrameHook();
- //析构函数
- virtual ~CTableFrameHook();
-
- //基础接口
- public:
- //释放对象
- virtual VOID Release() { delete this; }
- //接口查询
- virtual void * QueryInterface(const IID & Guid, DWORD dwQueryVer);
-
- //管理接口
- public:
- //设置桌子事件接口
- virtual bool SetMatchEventSink(IUnknownEx * pIUnknownEx);
- //初始化
- virtual bool InitTableFrameHook(IUnknownEx * pIUnknownEx);
-
- //游戏事件
- public:
- //游戏开始
- virtual bool OnEventGameStart(ITableFrame *pITableFrame, WORD wChairCount);
- //游戏结束
- virtual bool OnEventGameEnd(ITableFrame *pITableFrame, WORD wChairID, IServerUserItem * pIServerUserItem, BYTE cbReason);
-
- //用户动作
- public:
- //用户断线
- virtual bool OnActionUserOffLine(WORD wChairID, IServerUserItem * pIServerUserItem) { return true; }
- //用户重入
- virtual bool OnActionUserConnect(WORD wChairID, IServerUserItem * pIServerUserItem) { return true; }
- //用户坐下
- virtual bool OnActionUserSitDown(WORD wChairID, IServerUserItem * pIServerUserItem, bool bLookonUser);
- //用户起来
- virtual bool OnActionUserStandUp(WORD wChairID, IServerUserItem * pIServerUserItem, bool bLookonUser);
- //用户同意
- virtual bool OnActionUserOnReady(WORD wChairID, IServerUserItem * pIServerUserItem, VOID * pData, WORD wDataSize);
- };
-
- //////////////////////////////////////////////////////////////////////////
-
- #endif
|