#include "StdAfx.h" #include "CTableFramePrivate.h" ////////////////////////////////////////////////////////////////////////// //静态变量 const WORD CTableFramePrivate::m_wPlayerCount=MAX_CHAIR; //游戏人数 ////////////////////////////////////////////////////////////////////////// //构造函数 CTableFramePrivate::CTableFramePrivate() { //组件变量 m_pITableFrame=NULL; m_pGameServiceOption=NULL; m_pPrivateEventSink=NULL; return; } //析构函数 CTableFramePrivate::~CTableFramePrivate(void) { } //接口查询 void * CTableFramePrivate::QueryInterface(const IID & Guid, DWORD dwQueryVer) { QUERYINTERFACE(ITableFramePrivate,Guid,dwQueryVer); QUERYINTERFACE(ITableUserAction,Guid,dwQueryVer); QUERYINTERFACE_IUNKNOWNEX(ITableFramePrivate,Guid,dwQueryVer); return NULL; } // bool CTableFramePrivate::SetPrivateEventSink(IUnknownEx * pIUnknownEx) { m_pPrivateEventSink=QUERY_OBJECT_PTR_INTERFACE(pIUnknownEx,IPrivateEventSink); return true; } //初始化 bool CTableFramePrivate::InitTableFramePrivate(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 CTableFramePrivate::OnEventGameStart(ITableFrame *pITableFrame, WORD wChairCount) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->OnEventGameStart(pITableFrame, wChairCount); } return false; } //游戏结束 bool CTableFramePrivate::OnEventGameEnd(ITableFrame *pITableFrame, WORD wChairID, IServerUserItem * pIServerUserItem, BYTE cbReason ) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->OnEventGameEnd(pITableFrame,wChairID,pIServerUserItem,cbReason); } return false; } //写分 bool CTableFramePrivate::WriteTableScore(ITableFrame* pITableFrame,tagScoreInfo ScoreInfoArray[], WORD wScoreCount,DataStream& kData) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->WriteTableScore(pITableFrame,ScoreInfoArray,wScoreCount,kData); } return false; } bool CTableFramePrivate::AddPrivateAction(ITableFrame* pTbableFrame,DWORD dwChairID, BYTE bActionIdex) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->AddPrivateAction(pTbableFrame,dwChairID,bActionIdex); } return false; } //是不是自由人数 bool CTableFramePrivate::IsAutoUserCountRule(ITableFrame* pTbableFrame, bool bReal) { if (m_pPrivateEventSink != NULL) { return m_pPrivateEventSink->IsAutoUserCountRule(pTbableFrame, bReal); } return false; } bool CTableFramePrivate::addPrivatePlayCout(ITableFrame* pTbableFrame, WORD wCout) { if (m_pPrivateEventSink != NULL) { return m_pPrivateEventSink->addPrivatePlayCout(pTbableFrame, wCout); } return false; } bool CTableFramePrivate::OnActionUserOffLine(WORD wChairID, IServerUserItem * pIServerUserItem) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->OnActionUserOffLine(wChairID,pIServerUserItem); } return false; } //用户坐下 bool CTableFramePrivate::OnActionUserSitDown(WORD wChairID, IServerUserItem * pIServerUserItem, bool bLookonUser) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->OnActionUserSitDown(m_pITableFrame->GetTableID(),wChairID, pIServerUserItem, bLookonUser); } return false; } //用户起来 bool CTableFramePrivate::OnActionUserStandUp(WORD wChairID, IServerUserItem * pIServerUserItem, bool bLookonUser) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->OnActionUserStandUp(m_pITableFrame->GetTableID(),wChairID, pIServerUserItem, bLookonUser); } return false; } //用户同意 bool CTableFramePrivate::OnActionUserOnReady(WORD wChairID, IServerUserItem * pIServerUserItem, VOID * pData, WORD wDataSize) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->OnActionUserOnReady(m_pITableFrame->GetTableID(),wChairID, pIServerUserItem ,pData ,wDataSize); } return false; } //用户开始游戏 bool CTableFramePrivate::OnActionUserOnStart(WORD wChairID, IServerUserItem * pIServerUserItem, VOID * pData, WORD wDataSize) { if (m_pPrivateEventSink != NULL) { return m_pPrivateEventSink->OnActionUserOnStart(m_pITableFrame->GetTableID(), wChairID, pIServerUserItem, pData, wDataSize); } } //用户开始游戏 bool CTableFramePrivate::OnActionUserStartGame(WORD wChairID, IServerUserItem * pIServerUserItem, VOID * pData, WORD wDataSize) { if (m_pPrivateEventSink != NULL) { return m_pPrivateEventSink->OnActionUserStartGame(m_pITableFrame->GetTableID(), wChairID, pIServerUserItem, pData, wDataSize); } } //用户进去游戏 bool CTableFramePrivate::OnEventClientReady(WORD wChairID,IServerUserItem * pIServerUserItem) { if(m_pPrivateEventSink!=NULL) { return m_pPrivateEventSink->OnEventClientReady(wChairID,pIServerUserItem); } return false; } bool CTableFramePrivate::OnEventPrivateRoomInfo(WORD wChairID, IServerUserItem * pIServerUserItem) { if (m_pPrivateEventSink != NULL) { return m_pPrivateEventSink->OnEventPrivateRoomInfo(wChairID, pIServerUserItem); } return false; } //房卡数量判断 bool CTableFramePrivate::OnActionUserFangKaCheck(WORD wChairID, IServerUserItem * pIServerUserItem, SCORE lUserInsure) { if (m_pPrivateEventSink != NULL) { return m_pPrivateEventSink->OnActionUserFangKaCheck(m_pITableFrame->GetTableID(), wChairID, pIServerUserItem, lUserInsure); } return false; } //////////////////////////////////////////////////////////////////////////