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>
697 lines
36 KiB
C++
697 lines
36 KiB
C++
///////////////////////////////////////////////////////////////////////////////////////////////
|
||
//
|
||
// ClientSocket Class
|
||
//
|
||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||
#include "stdafx.h"
|
||
#include "ClientSocket.h"
|
||
|
||
#include <mmsystem.h>
|
||
#include <Network/ClientNetwork/SessionMgr.h>
|
||
#include <Network/ClientNetwork/TCPSession.h>
|
||
#include <Network/ClientNetwork/UDPSession.h>
|
||
#include <Network/ClientNetwork/NullHandler.h>
|
||
#include <Network/ClientNetwork/ClientEventHandler.h>
|
||
|
||
#include <ctime>
|
||
#include "GMMemory.h"
|
||
|
||
// forward decl
|
||
bool GetHostIP(IN_ADDR &Addr, bool AllowVirtual);
|
||
bool IsWrongIP(IN_ADDR &Addr);
|
||
bool GetNATAddress(SOCKET Socket_In, SOCKADDR_IN *Address_Out, bool AllowVirtual);
|
||
|
||
ClientSocket* ClientSocket::s_pInstance = 0;
|
||
|
||
ClientSocket* ClientSocket::CreateInstance()
|
||
{
|
||
if( s_pInstance )
|
||
delete s_pInstance;
|
||
|
||
s_pInstance = new ClientSocket;
|
||
return s_pInstance;
|
||
};
|
||
|
||
ClientSocket::ClientSocket()
|
||
: m_dwStatusFlag(0)
|
||
{
|
||
memset(m_Address, 0, sizeof(SOCKADDR_IN) * (MAX_ADDRESS + 1));
|
||
memset(m_lpEventHandler, 0, sizeof(ClientNet::CClientEventHandler*) * MAX_HANDLER + 1);
|
||
|
||
m_bStatusFlag.reset();
|
||
|
||
m_lpNullEventHandler = &ClientNet::CNullClientEventHandler::GetInstance();
|
||
#include "GMUndefNew.h"
|
||
m_lpEventHandlerMgr = new (std::nothrow) ClientNet::CClientEventHandlerMgr;
|
||
#include "GMRedefNew.h"
|
||
|
||
InitNSCheckList();
|
||
}
|
||
|
||
|
||
ClientSocket::~ClientSocket(void)
|
||
{
|
||
delete m_lpEventHandlerMgr;
|
||
}
|
||
|
||
|
||
bool ClientSocket::Open(const char* address, unsigned short usport,
|
||
ClientNet::CClientEventHandler* lpEventHandler)
|
||
{
|
||
return (0 != lpEventHandler && 0 != m_lpEventHandlerMgr &&
|
||
m_lpEventHandlerMgr->Connect(INET_Addr(address, usport), lpEventHandler));
|
||
}
|
||
|
||
void ClientSocket::SetHandler(ClientNet::CClientEventHandler* lpHandler, HandlerType eHandlerType)
|
||
{
|
||
m_lpEventHandler[eHandlerType] = lpHandler;
|
||
}
|
||
|
||
void ClientSocket::ResetHandler(ClientNet::CClientEventHandler* lpHandler, HandlerType eHandlerType)
|
||
{
|
||
if (lpHandler == m_lpEventHandler[eHandlerType])
|
||
{
|
||
m_lpEventHandler[eHandlerType] = 0;
|
||
}
|
||
}
|
||
|
||
bool ClientSocket::IsConnected(HandlerType eHandlerType)
|
||
{
|
||
return (0 != m_lpEventHandler[eHandlerType]);
|
||
}
|
||
|
||
void ClientSocket::Disconnect(HandlerType eHandlerType)
|
||
{
|
||
if (0 != m_lpEventHandlerMgr)
|
||
{
|
||
if (eHandlerType == MAX_HANDLER)
|
||
{
|
||
for(int idx = 0; idx < MAX_HANDLER; ++idx)
|
||
{
|
||
if(0 != m_lpEventHandler[idx])
|
||
{
|
||
m_lpEventHandlerMgr->Close(m_lpEventHandler[idx]);
|
||
}
|
||
}
|
||
}
|
||
else if(0 != m_lpEventHandler[eHandlerType])
|
||
{
|
||
m_lpEventHandlerMgr->Close(m_lpEventHandler[eHandlerType]);
|
||
}
|
||
}
|
||
}
|
||
|
||
void ClientSocket::SetAddress(AddressType eAddrType, const char* szAddress, unsigned port)
|
||
{
|
||
m_Address[eAddrType] = INET_Addr(szAddress, port).get_addr_in();
|
||
}
|
||
|
||
void ClientSocket::HandleEvents(DWORD dwProcessPerCall)
|
||
{
|
||
if(0 != m_lpEventHandlerMgr)
|
||
{
|
||
m_lpEventHandlerMgr->HandleEvents(dwProcessPerCall);
|
||
}
|
||
}
|
||
|
||
bool GetHostIP(IN_ADDR &Addr, bool AllowVirtual)
|
||
{
|
||
char HostName[256];
|
||
if(!gethostname(HostName, 255))
|
||
{
|
||
PHOSTENT pHost = gethostbyname(HostName);
|
||
if(NULL == pHost)
|
||
{
|
||
return false;
|
||
}
|
||
|
||
int Count = 0;
|
||
for(;pHost->h_addr_list[Count]; ++Count)
|
||
{
|
||
memcpy(&(Addr.S_un.S_addr), pHost->h_addr_list[Count], sizeof(IN_ADDR));
|
||
|
||
if(!AllowVirtual)
|
||
{
|
||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ȯ<><C8AE>
|
||
// 10.0.0.0 ~ 10.255.255.255
|
||
// 172.16.0.0 ~ 172.31.255.255
|
||
// 192.168.0.0 ~ 192.168.255.255
|
||
if((unsigned char)10 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
continue;
|
||
}
|
||
else if((unsigned char)172 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
if(Addr.S_un.S_un_b.s_b2 >= (unsigned char)16 && Addr.S_un.S_un_b.s_b2 <= (unsigned char)31)
|
||
{
|
||
continue;
|
||
}
|
||
}
|
||
else if((unsigned char)192 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
if((unsigned char)168 == Addr.S_un.S_un_b.s_b2)
|
||
{
|
||
continue;
|
||
}
|
||
}
|
||
}
|
||
|
||
// <20>߸<EFBFBD><DFB8><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
// 169.X.X.X <20>ڵ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ҵ<EFBFBD> ( SyGate )
|
||
// 0.X.X.X
|
||
if((unsigned char)169 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
continue;
|
||
}
|
||
else if((unsigned char)0 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
continue;
|
||
}
|
||
|
||
return true;
|
||
}
|
||
|
||
if(0 != Count)
|
||
return true;
|
||
}
|
||
|
||
return false;
|
||
}
|
||
|
||
|
||
bool IsWrongIP(IN_ADDR &Addr)
|
||
{
|
||
if((unsigned char)169 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
if((unsigned char)254 == Addr.S_un.S_un_b.s_b2)
|
||
{
|
||
return true;
|
||
}
|
||
}
|
||
|
||
if((unsigned char)0 == Addr.S_un.S_un_b.s_b1)
|
||
return true;
|
||
|
||
return false;
|
||
}
|
||
|
||
|
||
|
||
bool GetNATAddress(SOCKET Socket_In, SOCKADDR_IN *Address_Out, bool AllowVirtual)
|
||
{
|
||
int AddressSize = sizeof(SOCKADDR_IN);
|
||
if(getsockname(Socket_In, (struct sockaddr *)Address_Out, &AddressSize) != SOCKET_ERROR)
|
||
{
|
||
char HostName[256];
|
||
if(!gethostname(HostName, 255))
|
||
{
|
||
PHOSTENT pHost = gethostbyname(HostName);
|
||
if(NULL == pHost)
|
||
{
|
||
return false;
|
||
}
|
||
|
||
IN_ADDR& Addr = Address_Out->sin_addr;
|
||
int Count = 0;
|
||
for(;pHost->h_addr_list[Count]; ++Count)
|
||
{
|
||
memcpy(&(Addr.S_un.S_addr), pHost->h_addr_list[Count], sizeof(IN_ADDR));
|
||
|
||
if(!AllowVirtual)
|
||
{
|
||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ȯ<><C8AE>
|
||
// 10.0.0.0 ~ 10.255.255.255
|
||
// 172.16.0.0 ~ 172.31.255.255
|
||
// 192.168.0.0 ~ 192.168.255.255
|
||
if((unsigned char)10 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
continue;
|
||
}
|
||
else if((unsigned char)172 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
if(Addr.S_un.S_un_b.s_b2 >= (unsigned char)16 && Addr.S_un.S_un_b.s_b2 <= (unsigned char)31)
|
||
{
|
||
continue;
|
||
}
|
||
}
|
||
else if((unsigned char)192 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
if((unsigned char)168 == Addr.S_un.S_un_b.s_b2)
|
||
{
|
||
continue;
|
||
}
|
||
}
|
||
}
|
||
|
||
// <20>߸<EFBFBD><DFB8><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
// 169.X.X.X <20>ڵ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ҵ<EFBFBD> ( SyGate )
|
||
// 0.X.X.X
|
||
if((unsigned char)169 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
continue;
|
||
}
|
||
else if((unsigned char)0 == Addr.S_un.S_un_b.s_b1)
|
||
{
|
||
continue;
|
||
}
|
||
|
||
return true;
|
||
}
|
||
|
||
if(0 != Count)
|
||
return true;
|
||
}
|
||
|
||
return false;
|
||
}
|
||
|
||
return false;
|
||
}
|
||
|
||
|
||
//by Hades Kang
|
||
|
||
void
|
||
ClientSocket::SetStatusFlag(unsigned long dwStatusFlag)
|
||
{
|
||
m_dwStatusFlag = dwStatusFlag;
|
||
}
|
||
|
||
unsigned long
|
||
ClientSocket::GetStatusFlag()
|
||
{
|
||
return m_dwStatusFlag;
|
||
}
|
||
|
||
|
||
|
||
|
||
bool
|
||
//<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7>װ<EFBFBD> üũ<C3BC>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
ClientSocket::IsNSFlagChecked( unsigned char ucCmdFlag )
|
||
{
|
||
if( s_pInstance )
|
||
return s_pInstance->m_bStatusFlag[ ucCmdFlag ];
|
||
return false;
|
||
}
|
||
|
||
|
||
bool
|
||
//<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD> ü<><C3BC><EFBFBD><EFBFBD> üũ<C3BC>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
ClientSocket::IsNSFlagChainChecked( unsigned char ucCmdFlag )
|
||
{
|
||
if( s_pInstance )
|
||
{
|
||
std::vector<unsigned char>* pCheckList;
|
||
std::vector<unsigned char>::iterator iter;
|
||
pCheckList = &(s_pInstance->m_SendCheckList[ucCmdFlag]);
|
||
for( iter = pCheckList->begin() ; iter != pCheckList->end(); iter++ )
|
||
{
|
||
if( s_pInstance->m_bStatusFlag[ (*iter) ] ) //<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7>װ<EFBFBD> üũ <20>Ǿ<EFBFBD> <20>ִٸ<D6B4>...
|
||
return true;
|
||
}
|
||
}
|
||
return false;
|
||
}
|
||
|
||
|
||
void
|
||
//<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD> Ȱ<><C8B0>ȭ <20><>Ŵ - Send <20>ÿ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
ClientSocket::SetNSFlagOn( unsigned char ucCmdFlag )
|
||
{
|
||
if( ucCmdFlag == CmdCharMove || //üũ<C3BC><C5A9> <20>ʿ<EFBFBD> <20><><EFBFBD><EFBFBD> <20>κе<CEBA>.
|
||
ucCmdFlag == CmdCharUpdateAddress ||
|
||
ucCmdFlag == CmdSysPing ||
|
||
ucCmdFlag == CmdCharAdminCmd )
|
||
return ;
|
||
|
||
|
||
if( s_pInstance )
|
||
s_pInstance->m_bStatusFlag[ ucCmdFlag ] = true;
|
||
}
|
||
|
||
void
|
||
//<2F>ش<EFBFBD> <20>÷<EFBFBD><C3B7><EFBFBD> <20><>Ȱ<EFBFBD><C8B0>ȭ <20><>Ŵ - Receive <20>ÿ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
ClientSocket::SetNSFlagOff( unsigned char ucCmdFlag )
|
||
{
|
||
if( s_pInstance )
|
||
{
|
||
std::vector<unsigned char>* pCheckList;
|
||
std::vector<unsigned char>::iterator iter;
|
||
pCheckList = &(s_pInstance->m_ReceiveCheckList[ucCmdFlag]);
|
||
for( iter = pCheckList->begin() ; iter != pCheckList->end(); iter++ )
|
||
{
|
||
s_pInstance->m_bStatusFlag[ (*iter) ] = false;
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
void
|
||
// Network Status <20><><EFBFBD><EFBFBD> Check List <20>ʱ<EFBFBD>ȭ ( Send, Receive )
|
||
ClientSocket::InitNSCheckList()
|
||
{
|
||
InitSendCheckList();
|
||
InitReceiveCheckList();
|
||
}
|
||
|
||
void
|
||
ClientSocket::InitSendCheckList()
|
||
{
|
||
/*
|
||
m_SendCheckList[ CmdAuthAccount ].push_back( CmdAuthAccount ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdServerGroup ].push_back( CmdServerGroup ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdUserLogin ].push_back( CmdUserLogin ) ; // <20><><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD>
|
||
m_SendCheckList[ CmdUserKill ].push_back( CmdUserKill ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharSelect ].push_back( CmdCharSelect ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharCreate ].push_back( CmdCharCreate ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharDelete ].push_back( CmdCharDelete ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharLogin ].push_back( CmdCharLogin ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD>
|
||
m_SendCheckList[ CmdCharSuicide ].push_back( CmdCharSuicide ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>ڻ<EFBFBD>
|
||
m_SendCheckList[ CmdCharRespawn ].push_back( CmdCharRespawn ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>Ȱ
|
||
//m_SendCheckList[ CmdCharMove ].push_back( CmdCharMove ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>̵<EFBFBD> (P2P)
|
||
m_SendCheckList[ CmdCharMoveUpdate ].push_back( CmdCharMoveUpdate ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>̵<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
||
m_SendCheckList[ CmdCharChat ].push_back( CmdCharChat ) ; // ij<><C4B3><EFBFBD><EFBFBD> ä<><C3A4>
|
||
m_SendCheckList[ CmdCharAttack ].push_back( CmdCharAttack ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharCastObject ].push_back( CmdCharCastObject ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharUseSkill ].push_back( CmdCharUseSkill ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>ų <20><><EFBFBD><EFBFBD>
|
||
*/
|
||
m_SendCheckList[ CmdCharTakeItem ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTakeItem ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTakeItem ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTakeItem ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTakeItem ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharTakeItem ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharTakeItem ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
m_SendCheckList[ CmdCharTakeItem ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
|
||
m_SendCheckList[ CmdCharSwapItem ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSwapItem ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSwapItem ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharSwapItem ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSwapItem ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSwapItem ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharSwapItem ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
m_SendCheckList[ CmdCharSwapItem ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
|
||
m_SendCheckList[ CmdCharRepairItem ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharRepairItem ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharRepairItem ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharRepairItem ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharRepairItem ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharRepairItem ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharRepairItem ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
m_SendCheckList[ CmdCharRepairItem ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
|
||
m_SendCheckList[ CmdCharUseItem ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharUseItem ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharUseItem ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharUseItem ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharUseItem ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharUseItem ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharUseItem ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
m_SendCheckList[ CmdCharUseItem ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
|
||
|
||
m_SendCheckList[ CmdCharTradeItem ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharTradeItem ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTradeItem ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTradeItem ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTradeItem ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTradeItem ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharTradeItem ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
m_SendCheckList[ CmdCharTradeItem ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
|
||
m_SendCheckList[ CmdCharStartQuest ].push_back( CmdCharStartQuest ) ; // <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharEquipShopInfo ].push_back( CmdCharEquipShopInfo ) ; // NPC <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharPullDown ) ;
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharPickUp ) ;
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
|
||
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharPickUp ) ;
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharTradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ŷ<EFBFBD>
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharTakeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharSwapItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharRepairItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharUseItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
|
||
/*
|
||
m_SendCheckList[ CmdCharSkillLock ].push_back( CmdCharSkillLock ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>ų <20><>
|
||
m_SendCheckList[ CmdCharSkillCreate ].push_back( CmdCharSkillCreate ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>ų <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSkillErase ].push_back( CmdCharSkillErase ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>ų <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharClassUpgrade ].push_back( CmdCharClassUpgrade ) ; // ij<><C4B3><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><D7B7>̵<EFBFBD>
|
||
m_SendCheckList[ CmdCharShapeInfo ].push_back( CmdCharShapeInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (P2P)
|
||
m_SendCheckList[ CmdCharIncreasePoint ].push_back( CmdCharIncreasePoint ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>ɷ<EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharBindPosition ].push_back( CmdCharBindPosition ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ε<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharRequireInfo ].push_back( CmdCharRequireInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>ش<EFBFBD> <20><><EFBFBD><EFBFBD> <20><>û
|
||
// m_SendCheckList[ CmdCharUpdateAddress ].push_back( CmdCharUpdateAddress ) ; // ij<><C4B3><EFBFBD><EFBFBD> UDP <20>ּ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
||
m_SendCheckList[ CmdCharPartyCmd ].push_back( CmdCharPartyCmd ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>Ƽ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPartyMemInfo ].push_back( CmdCharPartyMemInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>Ƽ <20>ɹ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (P2P)
|
||
m_SendCheckList[ CmdCharExchangeCmd ].push_back( CmdCharExchangeCmd ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ȯ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdSysConnectAgent ].push_back( CmdSysConnectAgent ) ; // <20>ý<EFBFBD><C3BD><EFBFBD> <20>߰<EFBFBD> <20><><EFBFBD><EFBFBD> (UDP <20>߰<EFBFBD>) # <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdSysPacketTransmit ].push_back( CmdSysPacketTransmit ) ; // <20>ý<EFBFBD><C3BD><EFBFBD> <20><>Ŷ <20><><EFBFBD><EFBFBD> (UDP <20>߰<EFBFBD>) # <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharLogout ].push_back( CmdCharLogout ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>α<EFBFBD> <20>ƿ<EFBFBD>
|
||
m_SendCheckList[ CmdDBGetData ].push_back( CmdDBGetData ) ; // DB <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdDBUpdateData ].push_back( CmdDBUpdateData ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ DB <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdAgentParty ].push_back( CmdAgentParty ) ; // DB <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><>Ƽ
|
||
m_SendCheckList[ CmdSysServerLogin ].push_back( CmdSysServerLogin ) ; // <20>ý<EFBFBD><C3BD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdServerZone ].push_back( CmdServerZone ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdGameCellInfo ].push_back( CmdGameCellInfo ) ; // <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdCharInfo ].push_back( CmdCharInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> # <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharAddressInfo ].push_back( CmdCharAddressInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> UDP <20>ּ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharCellLogin ].push_back( CmdCharCellLogin ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><> <20>α<EFBFBD><CEB1><EFBFBD>
|
||
m_SendCheckList[ CmdCharCellLogout ].push_back( CmdCharCellLogout ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><> <20>αƿ<D7BE>
|
||
m_SendCheckList[ CmdMonMove ].push_back( CmdMonMove ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>̵<EFBFBD>
|
||
m_SendCheckList[ CmdCharAttackInfo ].push_back( CmdCharAttackInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (P2P)
|
||
m_SendCheckList[ CmdCharAttacked ].push_back( CmdCharAttacked ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharAward ].push_back( CmdCharAward ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemInfo ].push_back( CmdCharItemInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPickUp ].push_back( CmdCharPickUp ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPullDown ].push_back( CmdCharPullDown ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPickUpInfo ].push_back( CmdCharPickUpInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharPullDownInfo ].push_back( CmdCharPullDownInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharCastObjectInfo ].push_back( CmdCharCastObjectInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharInstallSocket ].push_back( CmdCharInstallSocket ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ġ
|
||
m_SendCheckList[ CmdCharLevelUp ].push_back( CmdCharLevelUp ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>
|
||
m_SendCheckList[ CmdCharPartyInfo ].push_back( CmdCharPartyInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>Ƽ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharUpgradeItem ].push_back( CmdCharUpgradeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><D7B7>̵<EFBFBD>
|
||
m_SendCheckList[ CmdCharHPRegen ].push_back( CmdCharHPRegen ) ; // ij<><C4B3><EFBFBD><EFBFBD> HP <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharLevelUpInfo ].push_back( CmdCharLevelUpInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSplitItem ].push_back( CmdCharSplitItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD>ø<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20>ִ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ΰ<EFBFBD><CEB0><EFBFBD> <20>ɰ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdUpdateUIDTable ].push_back( CmdUpdateUIDTable ) ; // UID <20><><EFBFBD>̺<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
||
m_SendCheckList[ CmdCharQuickSlotMove ].push_back( CmdCharQuickSlotMove ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>̵<EFBFBD>
|
||
m_SendCheckList[ CmdCharSwitchEQ ].push_back( CmdCharSwitchHand ) ; // <20><> <20>ٲٱ<D9B2>
|
||
m_SendCheckList[ CmdSysMngerRegistry ].push_back( CmdSysMngerRegistry ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdSysMngerRequest ].push_back( CmdSysMngerRequest ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>û
|
||
m_SendCheckList[ CmdSysMngerResponse ].push_back( CmdSysMngerResponse ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharTakeItems ].push_back( CmdCharTakeItems ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdCharTakeGold ].push_back( CmdCharTakeGold ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharExchangeItem ].push_back( CmdCharExchangeItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ȯ
|
||
m_SendCheckList[ CmdCellBroadCasting ].push_back( CmdCellBroadCasting ) ; // <20><> <20><><EFBFBD>ε<EFBFBD> ij<><C4B3><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdSysPatchAddress ].push_back( CmdSysPatchAddress ) ; // <20><>ġ <20>ּ<EFBFBD>
|
||
m_SendCheckList[ CmdCharPartyCmdInfo ].push_back( CmdCharPartyCmdInfo ) ; // <20><>Ƽ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdServerLog ].push_back( CmdServerLog ) ; // <20>α<EFBFBD> <20><><EFBFBD><EFBFBD> (???)
|
||
m_SendCheckList[ CmdCharWhisper ].push_back( CmdCharWhisper ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>ӼӸ<D3BC>
|
||
m_SendCheckList[ CmdSysServerVerUpdate ].push_back( CmdSysServerVerUpdate ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
||
m_SendCheckList[ CmdSysMng ].push_back( CmdSysMng ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, Ŭ<><C5AC><EFBFBD>̾<EFBFBD>Ʈ<EFBFBD><C6AE> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD> <20><>Ŷ (<28>ӽ<EFBFBD>) (???)
|
||
m_SendCheckList[ CmdSysChannelUpdate ].push_back( CmdSysChannelUpdate ) ; // <20><><EFBFBD><EFBFBD> ä<><C3A4> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
||
m_SendCheckList[ CmdCharPartyFind ].push_back( CmdCharPartyFind ) ; // <20><>Ƽ ã<><C3A3>
|
||
m_SendCheckList[ CmdCharPartyMemData ].push_back( CmdCharPartyMemData ) ; // <20><>Ƽ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharControlOption ].push_back( CmdCharControlOption ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharDuelCmd ].push_back( CmdCharDuelCmd ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharFameInfo ].push_back( CmdCharFameInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdLoginServerList ].push_back( CmdLoginServerList ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ #!! <20><>ȣ <20><><EFBFBD><EFBFBD> <20>Ұ<EFBFBD> !!#
|
||
|
||
m_SendCheckList[ CmdCharSpellInfo ].push_back( CmdCharSpellInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> æƮ&<26><>æƮ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSkillUnLock ].push_back( CmdCharSkillUnLock ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><>ų <20><> <20><><EFBFBD><EFBFBD>
|
||
// m_SendCheckList[ CmdSysPing ].push_back( CmdSysPing ) ; // <20><><EFBFBD><EFBFBD> <20><> <20><>Ŷ
|
||
m_SendCheckList[ CmdCharMoveZone ].push_back( CmdCharMoveZone ) ; // <20><> <20>̵<EFBFBD>
|
||
|
||
m_SendCheckList[ CmdAgentZone ].push_back( CmdAgentZone ) ; // <20><> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdDeposit ].push_back( CmdDeposit ) ; // â<><C3A2> ó<><C3B3> <20><>Ŷ (Client <--> GameServer)
|
||
m_SendCheckList[ CmdDepositUpdate ].push_back( CmdDepositUpdate ) ; // â<><C3A2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><>Ŷ (GameServer <--> DBAgent)
|
||
|
||
m_SendCheckList[ CmdCharStallOpen ].push_back( CmdCharStallOpen ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharStallRegisterItem ].push_back( CmdCharStallRegisterItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharStallEnter ].push_back( CmdCharStallEnter ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharStallItemInfo ].push_back( CmdCharStallItemInfo ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
//m_SendCheckList[ CmdCharAdminCmd ].push_back( CmdCharAdminCmd ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharTeamBattleInfo ].push_back( CmdCharTeamBattleInfo ) ; // <20><><EFBFBD><EFBFBD>Ʋ <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdFriendAddRequest ].push_back( CmdFriendAddRequest ) ; // ģ<><C4A3> <20>߰<EFBFBD>
|
||
m_SendCheckList[ CmdFriendRemoveRequest ].push_back( CmdFriendRemoveRequest ) ; // ģ<><C4A3> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdFriendEtcRequest ].push_back( CmdFriendEtcRequest ) ; // ģ<><C4A3> <20><>Ÿ
|
||
m_SendCheckList[ CmdFriendAck ].push_back( CmdFriendAck ) ; // ģ<><C4A3> Ack
|
||
m_SendCheckList[ CmdFriendDB ].push_back( CmdFriendDB ) ; // ģ<><C4A3> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><> ģ<><C4A3> <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>)
|
||
|
||
m_SendCheckList[ CmdEliteBonus ].push_back( CmdEliteBonus ) ; // <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD>ʽ<EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharOperateTrigger ].push_back( CmdCharOperateTrigger ) ; // Ʈ<><C6AE><EFBFBD><EFBFBD> <20>ߵ<EFBFBD>
|
||
m_SendCheckList[ CmdQuestDB ].push_back( CmdQuestDB ) ; // <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD> (DB<44><42> <20><><EFBFBD>̺<EFBFBD>/<2F>ε<EFBFBD>, ij<><C4B3><EFBFBD><EFBFBD> <20>α<EFBFBD><CEB1><EFBFBD>)
|
||
m_SendCheckList[ CmdCharEndQuest ].push_back( CmdCharEndQuest ) ; // <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharDisappearItem ].push_back( CmdCharDisappearItem ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharAuthorizePanel ].push_back( CmdCharAuthorizePanel ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>dz<EFBFBD>
|
||
m_SendCheckList[ CmdCharPeaceMode ].push_back( CmdCharPeaceMode ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdConfigInfoDB ].push_back( CmdConfigInfoDB ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharAutoRouting ].push_back( CmdCharAutoRouting ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdRankingInfo ].push_back( CmdRankingInfo ) ; // <20><>ŷ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharStateRedistribution ].push_back( CmdCharStateRedistribution ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD>й<EFBFBD> (Ŭ<><C5AC><EFBFBD><EFBFBD> ó<><C3B3> <20><><EFBFBD>·<EFBFBD>)
|
||
m_SendCheckList[ CmdBillingTimeoutNotify ].push_back( CmdBillingTimeoutNotify ) ; // <20><><EFBFBD><EFBFBD> Ÿ<>Ӿƿ<D3BE> Notify<66><79><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdAdminToolGetData ].push_back( CmdAdminToolGetData ) ; // <20><EFBFBD><EEBFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> DBAgent<6E><74> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||
m_SendCheckList[ CmdAdminToolSetData ].push_back( CmdAdminToolSetData ) ; // <20><EFBFBD><EEBFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> DBAgent<6E><74> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||
|
||
m_SendCheckList[ CmdEventDropItem ].push_back( CmdEventDropItem ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>̺<EFBFBD>Ʈ
|
||
m_SendCheckList[ CmdCharCancelQuest ].push_back( CmdCharCancelQuest ) ; // <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdBillingTimeCheckNotify ].push_back( CmdBillingTimeCheckNotify ) ; // <20><><EFBFBD><EFBFBD> Ÿ<><C5B8> üũ
|
||
m_SendCheckList[ CmdCharLotteryResult ].push_back( CmdCharLotteryResult ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharSummonCmd ].push_back( CmdCharSummonCmd ) ; // <20><>ȯ<EFBFBD><C8AF> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdChatClientLogin ].push_back( CmdChatClientLogin ) ; // Ŭ<><C5AC><EFBFBD>̾<EFBFBD>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> ä<>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><>
|
||
m_SendCheckList[ CmdChatLogin ].push_back( CmdChatLogin ) ; // <20>߰輭<DFB0><E8BCAD><EFBFBD><EFBFBD> ä<>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD>̾<EFBFBD>Ʈ <20>α<EFBFBD><CEB1><EFBFBD> <20><>.
|
||
m_SendCheckList[ CmdChatLogout ].push_back( CmdChatLogout ) ; // <20>߰輭<DFB0><E8BCAD><EFBFBD><EFBFBD> ä<>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD>̾<EFBFBD>Ʈ <20>αƿ<D7BE> <20><>.
|
||
m_SendCheckList[ CmdChatInfoChanged ].push_back( CmdChatInfoChanged ) ; // <20>߰輭<DFB0><E8BCAD><EFBFBD><EFBFBD> ä<>ü<EFBFBD><C3BC><EFBFBD><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD>̾<EFBFBD>Ʈ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>.
|
||
|
||
m_SendCheckList[ CmdCharSummon ].push_back( CmdCharSummon ) ; // <20><>ȯ
|
||
|
||
m_SendCheckList[ CmdJapanAuthAccount ].push_back( CmdJapanAuthAccount ) ; // <20>Ϻ<EFBFBD><CFBA><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (ID, Password<72><64><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ڵ尡 <20>´<EFBFBD>.)
|
||
|
||
m_SendCheckList[ CmdCharBattleGroundRespawn ].push_back( CmdCharBattleGroundRespawn ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><>Ʋ<EFBFBD><EFBFBD><D7B6><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdCharRespawnWaitQueue ].push_back( CmdCharRespawnWaitQueue ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ť <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (<28><>Ʋ<EFBFBD><EFBFBD><D7B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdStatueInfo ].push_back( CmdStatueInfo ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCameraScript ].push_back( CmdCameraScript ) ; // ī<><EFBFBD> <20><>ũ<EFBFBD><C5A9>Ʈ
|
||
m_SendCheckList[ CmdCharEquipDurability ].push_back( CmdCharEquipDurability ) ; // ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCreateGuild ].push_back( CmdCreateGuild ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildCmd ].push_back( CmdGuildCmd ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildMark ].push_back( CmdGuildMark ) ; // <20><><EFBFBD><EFBFBD> <20><>ũ <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildLevel ].push_back( CmdGuildLevel ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildRelation ].push_back( CmdGuildRelation ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildList ].push_back( CmdGuildList ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ
|
||
m_SendCheckList[ CmdGuildDB ].push_back( CmdGuildDB ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildRight ].push_back( CmdGuildRight ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildMemberList ].push_back( CmdGuildMemberList ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ
|
||
m_SendCheckList[ CmdMyGuildInfo ].push_back( CmdMyGuildInfo ) ; // <20>ڱ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildSafe ].push_back( CmdGuildSafe ) ; // <20><><EFBFBD><EFBFBD> <20>ݰ<EFBFBD>
|
||
m_SendCheckList[ CmdGuildMemberInfoUpdate ].push_back( CmdGuildMemberInfoUpdate ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
||
|
||
m_SendCheckList[ CmdCharStatusRetrain ].push_back( CmdCharStatusRetrain ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͽ<EFBFBD> <20><><EFBFBD>Ʒ<EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ٽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdSysServerLogout ].push_back( CmdSysServerLogout ) ; // <20><><EFBFBD><EFBFBD> <20>αƿ<D7BE>
|
||
|
||
// m_SendCheckList[ CmdCharPartyAddress ].push_back( CmdCharPartyAddress ) ; // <20><>Ƽ<EFBFBD><C6BC> UDP <20>ּ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
// m_SendCheckList[ CmdCharPartyMemAddress ].push_back( CmdCharPartyMemAddress ) ; // <20><>Ƽ<EFBFBD><C6BC> UDP <20>ּ<EFBFBD> <20><><EFBFBD><EFBFBD> (P2P)
|
||
|
||
m_SendCheckList[ CmdBGServerMapList ].push_back( CmdBGServerMapList ) ; // <20><>Ʋ <20><EFBFBD><D7B6><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>(<28><>) <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ <20><>û
|
||
m_SendCheckList[ CmdBGServerResultList ].push_back( CmdBGServerResultList ) ; // <20><>Ʋ <20><EFBFBD><D7B6><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>(<28><>) <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ <20><>û
|
||
m_SendCheckList[ CmdBGServerMoveZone ].push_back( CmdBGServerMoveZone ) ; // <20><>Ʋ <20><EFBFBD><D7B6><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>(<28><>) <20>̵<EFBFBD> (<28><> <20>̵<EFBFBD>)
|
||
m_SendCheckList[ CmdBGServerMileageChange ].push_back( CmdBGServerMileageChange ) ; // <20><>Ʋ <20><EFBFBD><D7B6><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ȯ<><C8AF><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdBGServerCharSlot ].push_back( CmdBGServerCharSlot ) ; // <20><>Ʋ <20><EFBFBD><D7B6><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>û
|
||
|
||
m_SendCheckList[ CmdHanBTNWarning ].push_back( CmdHanBTNWarning ) ; // <20>Ѱ<EFBFBD><D1B0><EFBFBD> <20><><EFBFBD>պ<EFBFBD><D5BA><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><EFBFBD><DEBD><EFBFBD>
|
||
m_SendCheckList[ CmdHanBTNUserKill ].push_back( CmdHanBTNUserKill ) ; // <20>Ѱ<EFBFBD><D1B0><EFBFBD> <20><><EFBFBD>պ<EFBFBD><D5BA><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><EFBFBD><DEBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharRepairAllItem ].push_back( CmdCharRepairAllItem ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCSAuth ].push_back( CmdCSAuth ) ; // <20><><EFBFBD><EFBFBD> <20>ڵ<EFBFBD> (<28><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdCharItemChemical ].push_back( CmdCharItemChemical ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ռ<EFBFBD>
|
||
m_SendCheckList[ CmdItemQtyCheck ].push_back( CmdItemQtyCheck ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildInclination ].push_back( CmdGuildInclination ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdGuildMemberFameUpdate ].push_back( CmdGuildMemberFameUpdate ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
|
||
|
||
m_SendCheckList[ CmdCastleInfo ].push_back( CmdCastleInfo ) ; // <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (DBAgentServer -> GameServer)
|
||
m_SendCheckList[ CmdCampInfo ].push_back( CmdCampInfo ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (DBAgentServer -> GameServer)
|
||
m_SendCheckList[ CmdCreateCastle ].push_back( CmdCreateCastle ) ; // <20><> <20><><EFBFBD><EFBFBD> (GameServer -> Client)
|
||
m_SendCheckList[ CmdCreateCamp ].push_back( CmdCreateCamp ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (Client <- GameServer -> DBAgentServer)
|
||
m_SendCheckList[ CmdCreateSiegeArms ].push_back( CmdCreateSiegeArms ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (Client <- GameServer -> DBAgentServer)
|
||
m_SendCheckList[ CmdCastleCmd ].push_back( CmdCastleCmd ) ; // <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ŷ (Client <-> GameServer <-> DBAgentServer)
|
||
m_SendCheckList[ CmdCampCmd ].push_back( CmdCampCmd ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ŷ (Client <-> GameServer <-> DBAgentServer)
|
||
m_SendCheckList[ CmdSiegeArmsCmd ].push_back( CmdSiegeArmsCmd ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ŷ (Client <-> GameServer <-> DBAgentServer)
|
||
m_SendCheckList[ CmdCastleRight ].push_back( CmdCastleRight ) ; // <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ŷ (Client <-> GameServer <-> DBAgentServer)
|
||
m_SendCheckList[ CmdCampRight ].push_back( CmdCampRight ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ŷ
|
||
m_SendCheckList[ CmdSiegeBroadCast ].push_back( CmdSiegeBroadCast ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD>ε<EFBFBD> ij<><C4B3>Ʈ
|
||
m_SendCheckList[ CmdSiegeTimeInfo ].push_back( CmdSiegeTimeInfo ) ; // <20><><EFBFBD><EFBFBD> <20>ð<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdStealthInfo ].push_back( CmdStealthInfo ) ; // <20><><EFBFBD>ڽ<EFBFBD> <20><><EFBFBD>밡<EFBFBD><EBB0A1> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCellBroadCast2nd ].push_back( CmdCellBroadCast2nd ) ; // <20><> <20><><EFBFBD>ε<EFBFBD>ij<EFBFBD><C4B3>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Ŷ
|
||
|
||
m_SendCheckList[ CmdCharRespawnInfo ].push_back( CmdCharRespawnInfo ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>)
|
||
m_SendCheckList[ CmdCharRespawnAreaInfo ].push_back( CmdCharRespawnAreaInfo ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
|
||
m_SendCheckList[ CmdCharEquipShopInfo ].push_back( CmdCharEquipShopInfo ) ; // NPC <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdSiegeBroadCast2nd ].push_back( CmdSiegeBroadCast2nd ) ; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD>ε<EFBFBD> ij<><C4B3>Ʈ <20>ٸ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
||
m_SendCheckList[ CmdCharItemOptionGraft ].push_back( CmdCharItemOptionGraft ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ɼ<EFBFBD> <20>̽<EFBFBD>
|
||
m_SendCheckList[ CmdCharItemCompensation ].push_back( CmdCharItemCompensation ) ; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǹ<EFBFBD>
|
||
*/
|
||
}
|
||
|
||
void
|
||
ClientSocket::InitReceiveCheckList()
|
||
{
|
||
for (int nIndex = 0; nIndex < CmdFinalPacketNum; ++nIndex)
|
||
{
|
||
m_ReceiveCheckList[nIndex].push_back(nIndex);
|
||
}
|
||
}
|
||
|
||
int
|
||
ClientSocket::CheckFlag( int* arrFlag ) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
{
|
||
int res = 0;
|
||
for( int i = 0; i < CmdFinalPacketNum ; i++ )
|
||
{
|
||
if( s_pInstance->m_bStatusFlag[i] )
|
||
arrFlag[res++] = i;
|
||
}
|
||
return res;
|
||
} |