📄 gametable.h
字号:
// GameTable.h: interface for the GameTable class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_GAMETABLE_H__FD9707E2_0DA6_4D85_AD96_B90F05A4AF0A__INCLUDED_)
#define AFX_GAMETABLE_H__FD9707E2_0DA6_4D85_AD96_B90F05A4AF0A__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class Bubble_Server;
class GameTable : public STRUCT_TABLE_INFO
{
friend Bubble_Server;
public:
void on_auto_handle(GamePlayer* ptr_player);
NET_Packet* CreateTableInfoPacket();
void do_handle_player(STRUCT_HANDLE_PLAYER* pSHP);
virtual void on_msg_handle_player(GameUser* ptr_obj, GameUser* ptr_user);
void DoUpdate();
bool CheckWinner();
bool Start();
void BroadcastPacket(NET_Packet* pPacket, ULONG id_except=0);
void on_user_enter_table(ULONG id_user);
GamePlayer* get_player(ULONG id_user);
bool UserEnter(GameUser* pUser, int nChair);
void UserLeave(GameUser* pUser);
bool IsPlaying();// {return is_playing;}
GameTable();
virtual ~GameTable();
protected:
void on_msg_trigger_cards(GameUser* pUser, BYTE* pData);
void _update_player_state(GameUser* ptr_user, GamePlayer* ptr_player);
void do_score(GameUser* ptr_user, int score);
virtual bool on_msg_shoot(GameUser* pUser, STRUCT_SHOOT_DATA* pShoot);
virtual bool on_ui_cmd_ready(GameUser* pUser);
GamePlayer m_player[NUM_CHAIR];
// std::map<ULONG, GamePlayer> m_map_player;
std::set<ULONG> m_set_user;
int m_num_playing;
int m_prize;
DWORD m_time_game;
DWORD m_time_start_game;
};
#endif // !defined(AFX_GAMETABLE_H__FD9707E2_0DA6_4D85_AD96_B90F05A4AF0A__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -