Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,118 @@
|
||||
#ifndef _DBAGENT_SERVER_GAME_DISPATCH_H_
|
||||
#define _DBAGENT_SERVER_GAME_DISPATCH_H_
|
||||
|
||||
#include <Network/Dispatch/RylServerDispatch.h>
|
||||
#include <Network/Dispatch/MultiDispatchStorage.h>
|
||||
|
||||
#include <Item/ItemSerialMgr.h>
|
||||
|
||||
// forward decl.
|
||||
struct PktSL;
|
||||
struct PktBase;
|
||||
struct PktUK;
|
||||
struct PktAdmin;
|
||||
|
||||
namespace DBAgent
|
||||
{
|
||||
class CGameDispatch : public CRylServerDispatch
|
||||
{
|
||||
public:
|
||||
|
||||
static CMultiDispatch& GetDispatchTable();
|
||||
|
||||
enum Const
|
||||
{
|
||||
// edith 2008.03.04 CGameDispatch <20><><EFBFBD><EFBFBD>
|
||||
MAX_PACKET_DISPATCH_PER_PULSE = 100,
|
||||
MAX_STREAM_BUFFER_SIZE = 16000
|
||||
};
|
||||
|
||||
CGameDispatch(CSession& Session);
|
||||
virtual ~CGameDispatch();
|
||||
|
||||
virtual void Connected();
|
||||
virtual void Disconnected();
|
||||
virtual bool DispatchPacket(PktBase* lpPktBase);
|
||||
|
||||
void IncCharNum(int nRace);
|
||||
void DecCharNum(int nRace);
|
||||
|
||||
int GetCharNum(int nRace) const; // <20><EFBFBD> <20><> <20>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ѹ<EFBFBD><D1B8><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
int GetCharNum() const; // <20><EFBFBD> <20><> <20>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ѹ<EFBFBD><D1B8><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
|
||||
unsigned long GetServerID() const { return m_dwServerID; }
|
||||
|
||||
private:
|
||||
|
||||
bool ServerLogin(PktBase* lpPktBase);
|
||||
bool ServerLogout(PktBase* lpPktBase);
|
||||
|
||||
bool UserKillAck(PktBase* lpPktBase);
|
||||
bool CharAdminCmd(PktBase* lpPktBase);
|
||||
bool GiveItemToTempInven(PktBase* lpPktBase);
|
||||
bool ChangeName(PktBase* lpPktBase);
|
||||
|
||||
Item::CItemSerialMgr m_GameItemSerialMgr;
|
||||
|
||||
// <20>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD> <20>Ѹ<EFBFBD><D1B8><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD> 1<><31> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD>.
|
||||
// <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ä<><C3A4><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>θ<EFBFBD> <20>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD> <20>ƴ<EFBFBD><C6B4><EFBFBD><EFBFBD><EFBFBD> <20>ľ<EFBFBD><C4BE>ϱ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>̴<EFBFBD>.
|
||||
int m_nHumanNum;
|
||||
int m_nAkhanNum;
|
||||
|
||||
unsigned long m_dwServerID;
|
||||
};
|
||||
|
||||
|
||||
// <20><>ü ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD>̴<EFBFBD>. CMultiDispatch::Process <20><> <20><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
|
||||
class CGetTotalCount
|
||||
{
|
||||
public:
|
||||
|
||||
CGetTotalCount(unsigned short& usHumanCount, unsigned short& usAkhanCount,
|
||||
unsigned char& cChannelCount);
|
||||
bool operator () (unsigned long dwServerID, CPacketDispatch& packetDispatch);
|
||||
|
||||
private:
|
||||
|
||||
unsigned short& m_usHumanCount;
|
||||
unsigned short& m_usAkhanCount;
|
||||
unsigned char& m_cChannelCount;
|
||||
};
|
||||
|
||||
// <20><><EFBFBD><EFBFBD> ij<><C4B3><EFBFBD><EFBFBD> <20><> <20>ۼ<EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD>̴<EFBFBD>. CMultiDispatch::Process <20><> <20><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
|
||||
class CUserPercentageInZone
|
||||
{
|
||||
public:
|
||||
|
||||
CUserPercentageInZone(unsigned short* lpChannelUserNum,
|
||||
unsigned char cZone, unsigned char cChannelNum);
|
||||
bool operator () (unsigned long dwServerID, CPacketDispatch& packetDispatch);
|
||||
|
||||
private:
|
||||
|
||||
int m_nMaxUserNum;
|
||||
unsigned short* m_lpChannelUserNum;
|
||||
unsigned char m_cZone;
|
||||
unsigned char m_cChannelNum;
|
||||
};
|
||||
|
||||
// Ư<><C6AF> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ä<>ο<EFBFBD> <20><>Ŷ<EFBFBD><C5B6> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
class CSendPacketToZone
|
||||
{
|
||||
public:
|
||||
|
||||
CSendPacketToZone(const char* szData, unsigned long dwDataLen,
|
||||
unsigned char cPacketCmd, unsigned char cZone);
|
||||
bool operator () (unsigned long dwServerID, CPacketDispatch& packetDispatch);
|
||||
|
||||
private:
|
||||
|
||||
const char* m_szData;
|
||||
unsigned long m_dwDataLen;
|
||||
unsigned char m_cPacketCmd;
|
||||
unsigned char m_cZone;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user