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,239 @@
// Network.h: interface for the CNetwork class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_NETWORK_H__5F5E9AA4_BFC5_40A0_8FCB_58D2BF51EEB0__INCLUDED_)
#define AFX_NETWORK_H__5F5E9AA4_BFC5_40A0_8FCB_58D2BF51EEB0__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "Network\ClientSocket\ClientSocket.h"
#include "ItemInstance.h"
#include <vector.h>
#include <list>
enum NetworkState
{
NS_NOWAITING = 0,
NS_CONNECTGAMESERVER,
NS_SERVERMOVE,
NS_CHARLOGIN,
NS_CHARSELECT,
NS_USERLOGIN,
NS_UPDATEADDRESS,
NS_CREATECHAR,
NS_DELETECHAR,
NS_TAKEITEM,
NS_TRADEITEM,
NS_RESPAWN,
NS_UPGRADECLASS,
NS_USEITEM,
NS_SKILLERASE,
NS_TAKEGOLD,
NS_CASTOBJECT,
NS_CONNECTAUTHSERVER,
NS_SKILLUNLOCK,
NS_ZONEMOVE,
NS_RESPAWNSELECT,
NS_STALLREGISTERITEM,
};
enum NetworkError
{
NE_NOERROR = 0,
NE_VERSION,
NE_USERID,
NE_USERPW,
NE_LOGINSERVER, //Ŀ<><C4BF><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
NE_AGENTSERVER,
NE_LOGINCHRINFO,
NE_SELECTCHR,
NE_CHRCREATE,
NE_CHRDELETE,
NE_CHRMOVE,
NE_CHRSELECT,
NE_CHRSHAPE,
NE_CHRATT,
NE_LOGOUT,
NE_CHAT,
NE_DEAD,
NE_RESP,
NE_LEVELUP,
NE_TRADE,
NE_MOTION,
NE_TAKEOUT,
NE_TAKEIN,
NE_ALREADY, //<2F>̹<EFBFBD> <20><><EFBFBD>ӵǾ<D3B5><C7BE><EFBFBD><EFBFBD><EFBFBD>,
NE_DBCONNECTION,
NE_UNIDENTYUSER,
NE_USERDATA,
NE_LOCATION,
NE_DBFAIL
};
using namespace std;
const unsigned int BUFFERSIZE = 10000;
class CNetwork
{
private:
char m_aryBuffer[BUFFERSIZE];
char m_cNetworkPacketCommand;
BOOL ParseUserLogin(char *aryBuffer);
BOOL ParseCharSelect(char *aryBuffer);
BOOL ParseCharLogin(char *aryBuffer);
BOOL ParseCharCreate(char *aryBuffer);
BOOL ParseCharDelete(char *aryBuffer);
BOOL ParseCharUpdateAddress(char *aryBuffer);
BOOL ParseCharMove(char *aryBuffer);
BOOL ParseCharCellLogin(char *aryBuffer);
BOOL ParseCharCellLogout(char *aryBuffer);
BOOL ParseCharAddressInfo(char *aryBuffer);
BOOL ParseCharChat(char *aryBuffer);
BOOL ParseMonMove(char *aryBuffer);
BOOL ParseCharAttack(char *aryBuffer);
BOOL ParseCharRespawn(char *aryBuffer);
BOOL ParseCharAttackInfo(char *aryBuffer);
BOOL ParseGameCellInfo(char *aryBuffer);
BOOL ParseCharPullDown(char *aryBuffer);
BOOL ParseCharPullDownInfo(char *aryBuffer); // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD> <20><><EFBFBD><EFBFBD>.
BOOL ParseCharPickUp(char *aryBuffer);
BOOL ParseCharPickUpInfo(char *aryBuffer); // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD> <20><><EFBFBD><EFBFBD>.
BOOL ParseCharAttacked(char *aryBuffer);
BOOL ParseCharTakeItem(char *aryBuffer);
BOOL ParseCharSwapItem(char *aryBuffer);
BOOL ParseCharTradeItem(char *aryBuffer);
BOOL ParseCharShapeInfo(char *aryBuffer);
BOOL ParseCharPartyCmd(char *aryBuffer);
BOOL ParseCharPartyInfo(char *aryBuffer);
BOOL ParseCharUseItem(char *aryBuffer);
BOOL ParseCharSkillLock(char *aryBuffer);
BOOL ParseCharSkillErase(char *aryBuffer);
BOOL ParseCharSkillCreate(char *aryBuffer);
BOOL ParseCharRepairItem(char *aryBuffer);
BOOL ParseCharInstallSocket(char *aryBuffer);
BOOL ParseCharSplitItem(char *aryBuffer);
BOOL ParseCharUpgradeItem(char *aryBuffer);
BOOL ParseCharAward(char *aryBuffer);
BOOL ParseCharLevelUp(char *aryBuffer);
BOOL ParseCharLevelUpInfo(char *aryBuffer);
BOOL ParseCharIncreasePoint(char *aryBuffer);
BOOL ParseCharHPRegen(char *aryBuffer);
BOOL ParseCharBindPos(char *aryBuffer);
BOOL ParseCharQuickSlotMove(char *aryBuffer);
BOOL ParseCharPartyMemInfo(char *aryBuffer);
BOOL ParseCharClassUpgrade(char *aryBuffer);
BOOL ParseCellBroadCasting(char *aryBuffer);
BOOL ParseCharCastObjectInfo(char *aryBuffer);
BOOL ParseCharPartyCmdInfo(char *aryBuffer);
BOOL ParseCharRequireInfo(char *aryBuffer);
BOOL ParseCharWhisper(char *aryBuffer);
BOOL ParseCharExchangeCmd(char *aryBuffer);
BOOL ParseCharExchangeItem(char *aryBuffer);
BOOL ParseCharTakeGold(char *aryBuffer);
BOOL ParseCharDuelCmd(char *aryBuffer);
BOOL ParseCharFameInfo(char *aryBuffer);
BOOL ParseCharPartyFind(char *aryBuffer);
BOOL ParseCharSpellInfo(char *aryBuffer);
BOOL ParseControlOption(char *aryBuffer);
BOOL ParseCharSkillUnLock(char *aryBuffer);
BOOL ParseServerZone(char *aryBuffer);
BOOL ParseCharMoveZone(char *aryBuffer);
BOOL ParseDepositUpdate(char *aryBuffer);
BOOL ParseDeposit(char *aryBuffer);
BOOL ParseCharStallOpen(char *aryBuffer);
BOOL ParseCharStallEnter(char *aryBuffer);
BOOL ParseCharStallRegisterItem(char *aryBuffer);
BOOL ParseCharStallItemInfo(char *aryBuffer);
BOOL ParseCharTeamBattleInfo(char *aryBuffer);
BOOL ParseCharEliteBonus(char *aryBuffer);
BOOL ParseCharStartQuest(char *aryBuffer);
BOOL ParseCharOperateTrigger(char *aryBuffer);
BOOL ParseCharDisappearItme(char *aryBuffer);
BOOL ParseCharFriendDB(char *aryBuffer);
BOOL ParseCharFriendAck(char *aryBuffer);
BOOL ParseCharFriendRegistered(char *aryBuffer);
BOOL ParseCharQuestInfo(char *aryBuffer);
BOOL ParseCharEndQuest(char *aryBuffer);
BOOL ParseCharPeaceMode(char *aryBuffer);
BOOL ParseCharAuthorizePanel(char *aryBuffer);
void ProcessError(void);
public:
void SetChant(CItemInstance *lpChantSkill);
static ClientSocket *m_pSocket;
BOOL m_bLoginSuccess;
BOOL m_bUpdateAddressPacket;
BOOL m_bCompleteDeposit;
BOOL m_bCharLoginSuccess;
static NetworkState m_nsNetworkStateforCastObject;
static NetworkState m_nsNetworkState;
static unsigned long m_dwNetworkError;
static long m_lShoutCounter;
static long m_lFameInfoCounter;
static long m_lPartyFindCounter;
static long m_lPartyCmdCounter;
static long m_lSetSkillCounter;
long m_lUDPPacketTotalByte, m_lUDPPAcketPerSecond, m_lUDPPacketOldByte;
long m_lTCPPacketTotalByte, m_lTCPPAcketPerSecond, m_lTCPPacketOldByte;
list<unsigned long> m_lstSendShape;
list<unsigned long> m_lstRecvShape;
CNetwork();
~CNetwork();
BOOL Create(HWND hWnd);
BOOL ConnectToGameServer(char *strServerIP);
BOOL ConnectToAuthServer(char *strServerIP);
BOOL Login(void);
BOOL CharSelect(unsigned long dwChrID);
void PacketProcess(LPARAM lParam, BOOL bUDP);
void PacketProcess(BOOL bUDP);
static void SetState(NetworkState nsState) { m_nsNetworkState = nsState; }
static NetworkState GetState(void) { return m_nsNetworkState; }
static void SetError(unsigned long dwError) { m_dwNetworkError = dwError; }
static unsigned long GetError(void) { return m_dwNetworkError; }
static bool IsExistToList(unsigned short List_In, unsigned long CharID_In);
static bool CharAddressRequireInfo(unsigned long SenderID_In, unsigned long CharID_In);
static BOOL SendDeleteChar(unsigned long dwSlot, unsigned long dwUID);
static BOOL SendCreateChar(unsigned long dwSlot, CHAR_CREATE &pCreateChar);
static BOOL SendChatMessage(const char *strName, const char *strMessage, unsigned long dwCommand);
static BOOL SendMovingPacket(unsigned long dwUpperAni, unsigned long dwLowerAni, float fDir, vector3 &vecMove);
static BOOL SendMoveUpdatePacket(float fDir, vector3 &vecPosition);
static BOOL SendCharAttack(vector3 &vecPos, float fDir, unsigned short wType, unsigned char cSkillLock, unsigned char cSkillLevel, unsigned char cAtCount, unsigned short wDefenserNum, unsigned long dwDefenser[10]);
static BOOL SendCharRespawn(unsigned long dwChrID);
static BOOL SendFieldObjectPickUp(unsigned long dwFieldID, Item::ItemPos &pItemIndex);
static BOOL SendTakeItem(CItemInstance *lpTakeItem, Item::ItemPos *lpTakeIndex, unsigned char cNum);
static BOOL SendSplitItem(CItemInstance *lpTakeItem, Item::ItemPos *lpTakeIndex, unsigned char cNum);
static BOOL SendSwapItem(CItemInstance *lpSrcItem, Item::ItemPos *lpSrcIndex, CItemInstance *lpDstItem);
static BOOL SendFieldObjectPullDown(unsigned long dwNum, Item::ItemPos &pItemIndex);
static BOOL SendTradeItem(unsigned long dwNPCID, unsigned short wTypeID, unsigned long dwNum, Item::ItemPos &pSrcPos, Item::ItemPos &pDstPos);
static BOOL SendCharShape(unsigned long dwChrID = 0xFFFFFFFF);
static BOOL SendQuickSlotMove(CItemInstance *lpTakeItem, unsigned char cPos, unsigned char cIndex, unsigned char cNum = 1);
static BOOL SendCharSwitchHand(void);
static BOOL SendMyInfoforParty(void);
static BOOL SendFameInfo(unsigned short wCmd);
static long SendPartyFind(void);
static long SendPartyCmd(unsigned long dwReferenceID, unsigned short wCmd);
static void SendChant(CItemInstance *lpChantSkill);
static BOOL SendExchangeCmd(unsigned long dwSendID, unsigned short wCmd);
static void SendClientLog(unsigned short wCmd, char *strString, char *strString2 = NULL);
static BOOL SendStallEnter(unsigned long dwStallChrID);
static BOOL SendStallLeave(void);
};
#endif // !defined(AFX_NETWORK_H__5F5E9AA4_BFC5_40A0_8FCB_58D2BF51EEB0__INCLUDED_)