53 lines
1.5 KiB
C
Raw Normal View History

2024-11-25 17:15:44 +08:00
#ifndef GAMESERVER_H
#define GAMESERVER_H
#include <QObject>
#include <QByteArray>
#include <QString>
#include <QStringList>
#include "equipmentLib/tcpequipment.h"
#include "XYComFunc_global.h"
#include "commonStruct.h"
//游戏服务器类,等待游戏连入,进行握手,等待游戏就绪,向游戏发送数据
class XYCOMFUNC_EXPORT GameServer : public TcpEquipment
{
Q_OBJECT
public:
GameServer();
Q_INVOKABLE void sendValue(int value);
Q_INVOKABLE bool IsReady();
Q_INVOKABLE void sendLevel(GameLevel level);
Q_INVOKABLE void sendLevel(int level);
Q_INVOKABLE void sendStart();
Q_INVOKABLE void sendPause();
Q_INVOKABLE void sendContinue();
Q_INVOKABLE void sendStop();
private:
void dealRev(QString strIP,int iPort,QByteArray buffer) override;
void sendStatus(GameStatus status);
signals:
void gameStartReceived(QString strIP,int iPort);
void gameStopReceived(QString strIP,int iPort);
void gameLevelSet(int iLevel);
void gameScoreReceived(int iScore);
public slots:
private:
bool isReady;
const QString readyCheckString="XYYLGameReady";
const QString gameStartString="XYYLGameStart";
const QString gameStopString="XYYLGameStop";
const QString gamePauseString="XYYLGamePause";
const QString gameContinueString="XYYLGameContinue";
const QString gameLevelHard="XYYLLevelHard";
const QString gameLevelMiddle="XYYLLevelMiddle";
const QString gameLevelEasy="XYYLLevelEasy";
const QString gameScore="XYYLGameScore";
};
#endif // GAMESERVER_H