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:
2025-11-29 20:17:20 +09:00
parent 5d3cd64a25
commit dd97ddec92
11602 changed files with 1446576 additions and 0 deletions

View File

@@ -0,0 +1,130 @@
///////////////////////////////////////////////////////////////////////////////////////////////
//
// ClientSocket Class
//
// Last Update : 2003-01-10
//
///////////////////////////////////////////////////////////////////////////////////////////////
#ifndef _GAMA_CLIENT_SOCKET_H_
#define _GAMA_CLIENT_SOCKET_H_
#include <winsock2.h>
#include <windows.h>
#include <Network/Packet/PacketCommand.h>
#include <DB/DBDefine.h>
#include <vector>
#include <bitset>
namespace ClientNet
{
// forward decl.
class CNetworkMsgBlock;
class CClientEventHandler;
class CClientEventHandlerMgr;
};
class ClientSocket
{
protected:
ClientSocket();
virtual ~ClientSocket();
static ClientSocket* s_pInstance;
public:
static ClientSocket* CreateInstance();
static void DestroyInstance() { if(s_pInstance) { delete s_pInstance; s_pInstance = 0; } };
static ClientSocket* Instance() { return s_pInstance; };
enum Const
{
MAX_CHAT_SERVER_ADDR = 16,
MAX_GAME_GUARD_CRYPT_HEADER_SIZE = 32
};
enum ConnectPort
{
DEFAULT_AUTH_TCP_PORT = 10110,
DEFAULT_CLIENT_UDP_PORT = 20002
};
enum HandlerType
{
AuthEventHandler = 0,
GameEventHandler = 1,
MAX_HANDLER = 2
};
enum AddressType
{
PublicAddr = 0,
PrivateAddr = 1,
MoveZoneAddr = 2,
MAX_ADDRESS = 3
};
// ------------------------------------------------------------------------------------------------
// <20><>Ʈ<EFBFBD><C6AE>ũ <20><><EFBFBD><EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD>
// by Hades Kang
void SetStatusFlag(unsigned long dwStatusFlag);
unsigned long GetStatusFlag();
static bool IsNSFlagChecked(unsigned char ucCmdFlag); //<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7>װ<EFBFBD> üũ<C3BC>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
static bool IsNSFlagChainChecked(unsigned char ucCmdFlag); //<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD> ü<><C3BC><EFBFBD><EFBFBD> üũ<C3BC>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
static void SetNSFlagOn(unsigned char ucCmdFlag); //<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7>׸<EFBFBD> Ȱ<><C8B0>ȭ <20><>Ŵ - Send <20>ÿ<EFBFBD> <20><><EFBFBD><EFBFBD>
static void SetNSFlagOff(unsigned char ucCmdFlag); //<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7>׿<EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20>͵<EFBFBD><CDB5><EFBFBD> <20><>Ȱ<EFBFBD><C8B0>ȭ <20><>Ŵ - Receive <20>ÿ<EFBFBD> <20><><EFBFBD><EFBFBD>
static int CheckFlag( int* arrFlag ); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// ------------------------------------------------------------------------------------------------
// Management Address
SOCKADDR_IN& GetAddress(AddressType eAddrType) { return m_Address[eAddrType]; }
const char* GetAddressString(AddressType eAddrType) { return inet_ntoa(m_Address[eAddrType].sin_addr); }
unsigned short GetAddressPort(AddressType eAddrType) { return ntohs(m_Address[eAddrType].sin_port); }
void SetAddress(AddressType eAddrType, SOCKADDR_IN& Address) { m_Address[eAddrType] = Address; }
void SetAddress(AddressType eAddrType, const char* szAddress, unsigned port);
void ClearAddress(AddressType eAddrType) { memset(m_Address + eAddrType, 0, sizeof(SOCKADDR_IN)); }
ClientNet::CClientEventHandler& GetHandler(HandlerType eHandlerType)
{ return (0 == m_lpEventHandler[eHandlerType]) ? *m_lpNullEventHandler : *m_lpEventHandler[eHandlerType]; }
void SetHandler(ClientNet::CClientEventHandler* lpHandler, HandlerType eHandlerType);
void ResetHandler(ClientNet::CClientEventHandler* lpHandler, HandlerType eHandlerType);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϰų<CFB0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ּҿ<D6BC> <20><><EFBFBD>ε<EFBFBD><CEB5><EFBFBD> <20>Ѵ<EFBFBD>.
bool Open(const char* address, unsigned short usport,
ClientNet::CClientEventHandler* lpEventHandler);
// <20><><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE>ִ<EFBFBD><D6B4><EFBFBD> <20><><EFBFBD>θ<EFBFBD> <20><><EFBFBD>ɴ<EFBFBD>.
bool IsConnected(HandlerType eHandlerType);
// MAX_SESSION<4F><4E> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>´<EFBFBD>.
void Disconnect(HandlerType eHandlerType);
// <20><><EFBFBD><EFBFBD> <20><> <20><>Ŷ<EFBFBD><C5B6> ó<><C3B3><EFBFBD>Ѵ<EFBFBD>.
void HandleEvents(DWORD dwProcessPerCall);
private:
void InitNSCheckList(); // Network Status <20><><EFBFBD><EFBFBD> Check List <20>ʱ<EFBFBD>ȭ ( Send, Receive )
void InitSendCheckList();
void InitReceiveCheckList();
SOCKADDR_IN m_Address[MAX_ADDRESS + 1];
ClientNet::CClientEventHandler* m_lpEventHandler[MAX_HANDLER + 1];
ClientNet::CClientEventHandler* m_lpNullEventHandler;
ClientNet::CClientEventHandlerMgr* m_lpEventHandlerMgr;
unsigned long m_dwStatusFlag;
std::vector<unsigned char> m_SendCheckList[CmdFinalPacketNum]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> üũ <20>ؾ<EFBFBD><D8BE>ϴ<EFBFBD> Ŀ<>ǵ<EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ ( <20>ϳ<EFBFBD><CFB3><EFBFBD><EFBFBD><EFBFBD> true <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʴ´<CAB4>! )
std::vector<unsigned char> m_ReceiveCheckList[CmdFinalPacketNum]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> üũ <20>ؾ<EFBFBD><D8BE>ϴ<EFBFBD> Ŀ<>ǵ<EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ ( <20><><EFBFBD><EFBFBD> false<73><65> ó<><C3B3><EFBFBD>Ѵ<EFBFBD>. )
std::bitset<CmdFinalPacketNum> m_bStatusFlag;
};
#endif