|
- #include "StdAfx.h"
- #include "TableFrameHook.h"
-
-
- //////////////////////////////////////////////////////////////////////////
-
- //静态变量
- const WORD CTableFrameHook::m_wPlayerCount = MAX_CHAIR; //游戏人数
-
- //////////////////////////////////////////////////////////////////////////
-
- //构造函数
- CTableFrameHook::CTableFrameHook()
- {
- //组件变量
- m_pITableFrame = NULL;
- m_pGameServiceOption = NULL;
- m_pMatchEventSink = NULL;
-
- return;
- }
-
- //析构函数
- CTableFrameHook::~CTableFrameHook(void)
- {
- }
-
- //接口查询
- void * CTableFrameHook::QueryInterface(const IID & Guid, DWORD dwQueryVer)
- {
- QUERYINTERFACE(ITableFrameHook, Guid, dwQueryVer);
- QUERYINTERFACE(ITableUserAction, Guid, dwQueryVer);
- QUERYINTERFACE_IUNKNOWNEX(ITableFrameHook, Guid, dwQueryVer);
- return NULL;
- }
-
- //
- bool CTableFrameHook::SetMatchEventSink(IUnknownEx * pIUnknownEx)
- {
- m_pMatchEventSink = QUERY_OBJECT_PTR_INTERFACE(pIUnknownEx, IMatchEventSink);
-
- return true;
- }
-
- //初始化
- bool CTableFrameHook::InitTableFrameHook(IUnknownEx * pIUnknownEx)
- {
- //查询接口
- ASSERT(pIUnknownEx != NULL);
- m_pITableFrame = QUERY_OBJECT_PTR_INTERFACE(pIUnknownEx, ITableFrame);
- if (m_pITableFrame == NULL) return false;
-
- //获取参数
- m_pGameServiceOption = m_pITableFrame->GetGameServiceOption();
- ASSERT(m_pGameServiceOption != NULL);
-
- return true;
- }
-
- //游戏开始
- bool CTableFrameHook::OnEventGameStart(ITableFrame *pITableFrame, WORD wChairCount)
- {
- if (m_pMatchEventSink != NULL)
- {
- return m_pMatchEventSink->OnEventGameStart(pITableFrame, wChairCount);
- }
-
- return false;
- }
-
- //游戏结束
- bool CTableFrameHook::OnEventGameEnd(ITableFrame *pITableFrame, WORD wChairID, IServerUserItem * pIServerUserItem, BYTE cbReason)
- {
- if (m_pMatchEventSink != NULL)
- {
- return m_pMatchEventSink->OnEventGameEnd(pITableFrame, wChairID, pIServerUserItem, cbReason);
- }
-
- return false;
- }
-
- //用户坐下
- bool CTableFrameHook::OnActionUserSitDown(WORD wChairID, IServerUserItem * pIServerUserItem, bool bLookonUser)
- {
- if (m_pMatchEventSink != NULL)
- {
- return m_pMatchEventSink->OnActionUserSitDown(m_pITableFrame->GetTableID(), wChairID, pIServerUserItem, bLookonUser);
- }
-
- return false;
- }
-
- //用户起来
- bool CTableFrameHook::OnActionUserStandUp(WORD wChairID, IServerUserItem * pIServerUserItem, bool bLookonUser)
- {
- if (m_pMatchEventSink != NULL)
- {
- return m_pMatchEventSink->OnActionUserStandUp(m_pITableFrame->GetTableID(), wChairID, pIServerUserItem, bLookonUser);
- }
-
- return false;
- }
-
- //用户同意
- bool CTableFrameHook::OnActionUserOnReady(WORD wChairID, IServerUserItem * pIServerUserItem, VOID * pData, WORD wDataSize)
- {
- if (m_pMatchEventSink != NULL)
- {
- return m_pMatchEventSink->OnActionUserOnReady(m_pITableFrame->GetTableID(), wChairID, pIServerUserItem, pData, wDataSize);
- }
-
- return false;
- }
-
- //////////////////////////////////////////////////////////////////////////
|