Files
mir_server/server/DBServer/GateDBRequestHandler.h

115 lines
3.8 KiB
C
Raw Normal View History

2025-01-09 17:45:40 +08:00
#ifndef GATE_DB_REQUEST_HANDLER_H_
#define GATE_DB_REQUEST_HANDLER_H_
/*
*
*/
class CSQLConnection;
class CDataPacket;
class CDBDataServer;
class ILogicDBRequestHost;
class CGateDBReqestHandler
{
public:
CGateDBReqestHandler();
~CGateDBReqestHandler();
bool Init(CSQLConenction *pConn, CDBDataServer *pMgr);
/*
* Comments:
* Param const int nAccountId: ID
* Param const int nServerId: ID
* Param CDataPacket & packet:
* @Return void:
* @Remark: 1Byte) + 1Byte +
*/
void GetActorList(const unsigned int nAccountId, const int nServerId, CDataPacket &packet);
void GetActorSecondPsw(const unsigned int nAccountId, const int nServerId, CDataPacket &packet);
/*
* Comments:
* Param const int nServerId: ID
* Param const int nRawServerId: ID
* Param const int nAccountId: ID
* Param const int nActorId: ID
* Param const char * szAccount:
* Param LONGLONG nIP: IP地址
* @Return int: 0
* @Remark:
*/
int StartEnterGame(const int nServerId,
const int nRawServerId,
const unsigned int nAccountId,
const unsigned int nActorId,
const char *szAccount,
LONGLONG nIP);
/*
* Comments:
* Param const jxSrvDef::INTERSRVCMD nCmd:
* Param CDataPacketReader & inPacket:
* Param CDataPacket & retPack:
* @Return void:
*/
void OnRecvLoginMsg(const jxSrvDef::INTERSRVCMD nCmd, CDataPacketReader& inPacket,ILogicDBRequestHost * pDataClient);
//创建角色
VOID OnCreateActorResult( INT_PTR nError,unsigned int nActorId,PCREATEACTORDATA pData,ILogicDBRequestHost * pDataClient);
//创建跨服角色
VOID OnCreateCrossServerActorResult( INT_PTR nError,unsigned int nActorId,PCREATEACTORDATA pData,ILogicDBRequestHost * pDataClient);
private:
/*
* Comments: 使
* Param const int nServerId:
* @Return tagActorVocation:
* @Remark:
*/
int QueryLessJobReq(const int nServerId);
//创建角色
void OnCreateActor( CDataPacketReader& inPacket,ILogicDBRequestHost * pDataClient );
//删除角色
void OnDeleteActor( CDataPacketReader& inPacket,ILogicDBRequestHost * pDataClient );
//随机名字
void OnRandName( CDataPacketReader& inPacket,ILogicDBRequestHost * pDataClient );
/*
* Comments:
* Param const int nServerId:
* @Return int: 301
7
* @Remark:
*/
int QueryZyList(const int nServerId);
/*
* Comments: 使
* Param const int nServerId: ID
* @Return tagZhenying:
* @Remark:
*/
tagZhenying QueryZYReq(const int nServerId);
//改名字
void OnChaneActorNameToDb(CDataPacketReader & inPacket,ILogicDBRequestHost * pDataClient);
void OnCheckSecondPsw(CDataPacketReader & inPacket,ILogicDBRequestHost * pDataClient);
void OnCreateSecondPsw(CDataPacketReader & inPacket,ILogicDBRequestHost * pDataClient);
INT_PTR QueryActorCount( INT_PTR nAccountId, INT_PTR nServerIndex );
INT_PTR CreateCrossServerActor( CDataPacketReader& inPacket,ILogicDBRequestHost * pDataClient);
INT_PTR QueryCrossServerActor( CDataPacketReader& inPacket,ILogicDBRequestHost * pDataClient);
private:
CSQLConenction *m_pSQLConnection;
CDBDataServer *m_pDBServer; //是这个指针
};
#endif