Files
wnmj/Servers/服务器组件/私人场服务/PrivateTableInfo.h

119 lines
3.1 KiB
C
Raw Normal View History

2026-02-13 14:34:15 +08:00
#ifndef PRIVATE_TABLE_INFO_FILE
#define PRIVATE_TABLE_INFO_FILE
#pragma once
//<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
#include "CTableFramePrivate.h"
#include "PrivateServiceHead.h"
///////////////////////////////////////////////////////////////////////////////////////////
enum RoomType
{
Type_Private,
Type_Public,
};
enum emPlayCount
{
Jiang_1, //1<><31>
Jiang_2 //2<><32>
};
enum ePrivateTableCommonRule
{
ePrivateTableCommonRule_CardAA = 1, //<2F><><EFBFBD><EFBFBD>AA;
ePrivateTableCommonRule_auto = 1 << 29, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
ePrivateTableCommonRule_DaiKaiFang = 1 << 30, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
ePrivateTableCommonRule_NOSameIPAddr= 1 << 31, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬIP<49><50>ַ;
};
enum ePrivateRoomScoreType
{
ePrivateRoomScoreType_Default = 1, //Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
ePrivateRoomScoreType_SetOneTime = 1 << 1, //<2F><><EFBFBD>뷿<EFBFBD><EBB7BF>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>;
ePrivateRoomScoreType_EveryTime = 1 << 2, //ÿ<>ֿ<EFBFBD>ʼʱ<CABC><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>;
};
//<2F><>ʱ<EFBFBD><CAB1>
class PrivateTableInfo
{
public:
PrivateTableInfo();
~PrivateTableInfo();
void restValue();
void restAgainValue();
void newRandChild();
WORD getChairCout();
void setRoomNum(DWORD RoomNum);
void writeSocre(tagScoreInfo ScoreInfoArray[], WORD wScoreCount,DataStream& daUserDefine);
bool IsCardAARule();
bool IsAutoUserCountRule();
bool IsAllAutoUserOK();
bool IsEveryTimeRoomScoreType();
bool IsSetOneTimeRoomScoreType();
bool IsCanJoinTable(IServerUserItem * pIServerUserItem, CString& refStrMsg);
bool IsDismissRoom();
bool IsOffLineUser();
//<2F><><EFBFBD>ÿ<EFBFBD>ʼģʽ;
BYTE GetStartMode();
ITableFrame* pITableFrame;
DWORD dwCreaterUserID; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DWORD dwUnionCode; // <20><><EFBFBD><EFBFBD>ID
DWORD dwUnionConsumerID; // <20><><EFBFBD>ļ<EFBFBD>¼ID
DWORD m_dwDaikaiIndex; // <20><><EFBFBD><EFBFBD>ID;
DWORD dwRoomNum; // <20><><EFBFBD><EFBFBD>ID
DWORD dwPlayCout; // Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DWORD dwPlayCost; // <20><><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD>
BYTE cbUnionGoldOpen; // <20>Ƿ<EFBFBD><C7B7>ǻ<EFBFBD><C7BB><EFBFBD>ģʽ
SCORE lScoreMultiple; // <20><><EFBFBD><EFBFBD>
SCORE lGameGold; // Ӷ<><D3B6>
SCORE lCreateScore; // <20><><EFBFBD><EFBFBD><EFBFBD>߻<EFBFBD><DFBB><EFBFBD>
bool bStart; // <20>Ƿ<EFBFBD><C7B7><EFBFBD>ʼ
bool bInEnd; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
float fAgainPastTime; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><C2B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
float fCreateTime; // <20><><EFBFBD><EFBFBD><E4B4B4>ʱ<EFBFBD><CAB1>
float fOfflineTimes[MAX_CHAIR]; // <20><><EFBFBD>Ҷ<EFBFBD><D2B6><EFBFBD>ʱ<EFBFBD><CAB1>;
bool bAutoStart[MAX_CHAIR]; // <20><><EFBFBD>ɳ<EFBFBD><C9B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>Կ<EFBFBD>ʼ;
std::string kHttpChannel;
BYTE cbRoomType; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ˽<>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
DWORD dwStartPlayCout; // ʵ<>ʴ<EFBFBD><CAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DWORD dwFinishPlayCout; // ͳ<>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD>ׯ<EFBFBD><D7AF>ʵ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>в<EFBFBD>ͳ<EFBFBD><CDB3>)
BYTE bPlayCoutIdex; //<2F><><EFBFBD>Ҿ<EFBFBD><D2BE><EFBFBD>
BYTE bGameTypeIdex; //<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>
DWORD dwGameRuleIdex; //<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD><><C4AC>0x0001λ<31><CEBB><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>AA,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>Ϊ0);
BYTE cbEnterRoomScoreType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
SCORE lInitEnterRoomScore; //<2F><><EFBFBD>뷿<EFBFBD><EBB7BF>ʱ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>;
BYTE cbBaseScore; //<2F>׷<EFBFBD>;
SCORE lPlayerWinLose[MAX_CHAIR]; // <20>ܻ<EFBFBD><DCBB><EFBFBD>
SCORE lScoreInfoArray[MAX_CHAIR]; // <20><><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD>
float fDismissPastTime;
//bool m_isDismiss; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>Խ<EFBFBD>ɢ;
float fGameStartTime; // <20><>Ϸ<EFBFBD><CFB7>ʼʱ<CABC><CAB1>
std::vector<DWORD> kDismissChairID;
std::vector<DWORD> kNotAgreeChairID;
tagPrivateRandTotalRecord kTotalRecord;
CMD_GR_Private_ReadyInfo mReadyInfo; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EBBFAA><CABC><EFBFBD><EFBFBD>;
};
#endif