more packets using fixed size integers
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -129,9 +129,9 @@ void CClientManager::QUERY_LOGIN_BY_KEY(CPeer * pkPeer, DWORD dwHandle, TPacketG
|
||||
return;
|
||||
}
|
||||
|
||||
if (memcmp(pkLoginData->GetClientKey(), p->adwClientKey, sizeof(DWORD) * 4))
|
||||
if (memcmp(pkLoginData->GetClientKey(), p->adwClientKey, sizeof(uint32_t) * 4))
|
||||
{
|
||||
const DWORD * pdwClientKey = pkLoginData->GetClientKey();
|
||||
const uint32_t * pdwClientKey = pkLoginData->GetClientKey();
|
||||
|
||||
sys_log(0, "LOGIN_BY_KEY client key differ %s %lu %lu %lu %lu, %lu %lu %lu %lu",
|
||||
r.login,
|
||||
|
||||
@@ -40,7 +40,7 @@ class CDBManager : public singleton<CDBManager>
|
||||
|
||||
int Connect(int iSlot, const char * host, int port, const char* dbname, const char* user, const char* pass);
|
||||
|
||||
void ReturnQuery(const char * c_pszQuery, int iType, DWORD dwIdent, void * pvData, int iSlot = SQL_PLAYER);
|
||||
void ReturnQuery(const char * c_pszQuery, int iType, IDENT dwIdent, void * pvData, int iSlot = SQL_PLAYER);
|
||||
void AsyncQuery(const char * c_pszQuery, int iSlot = SQL_PLAYER);
|
||||
SQLMsg * DirectQuery(const char * c_pszQuery, int iSlot = SQL_PLAYER);
|
||||
|
||||
|
||||
@@ -24,12 +24,12 @@ TAccountTable & CLoginData::GetAccountRef()
|
||||
return m_data;
|
||||
}
|
||||
|
||||
void CLoginData::SetClientKey(const DWORD * c_pdwClientKey)
|
||||
void CLoginData::SetClientKey(const uint32_t* c_pdwClientKey)
|
||||
{
|
||||
thecore_memcpy(&m_adwClientKey, c_pdwClientKey, sizeof(DWORD) * 4);
|
||||
thecore_memcpy(&m_adwClientKey, c_pdwClientKey, sizeof(uint32_t) * 4);
|
||||
}
|
||||
|
||||
const DWORD * CLoginData::GetClientKey()
|
||||
const uint32_t * CLoginData::GetClientKey()
|
||||
{
|
||||
return &m_adwClientKey[0];
|
||||
}
|
||||
|
||||
@@ -8,9 +8,9 @@ class CLoginData
|
||||
CLoginData();
|
||||
|
||||
TAccountTable & GetAccountRef();
|
||||
void SetClientKey(const DWORD * c_pdwClientKey);
|
||||
void SetClientKey(const uint32_t * c_pdwClientKey);
|
||||
|
||||
const DWORD * GetClientKey();
|
||||
const uint32_t* GetClientKey();
|
||||
void SetKey(DWORD dwKey);
|
||||
DWORD GetKey();
|
||||
|
||||
@@ -46,7 +46,7 @@ class CLoginData
|
||||
|
||||
private:
|
||||
DWORD m_dwKey;
|
||||
DWORD m_adwClientKey[4];
|
||||
uint32_t m_adwClientKey[4];
|
||||
DWORD m_dwConnectedPeerHandle;
|
||||
DWORD m_dwLogonTime;
|
||||
char m_szIP[MAX_HOST_LENGTH+1];
|
||||
|
||||
@@ -127,7 +127,7 @@ void CPeer::SetP2PPort(WORD wPort)
|
||||
m_wP2PPort = wPort;
|
||||
}
|
||||
|
||||
void CPeer::SetMaps(long * pl)
|
||||
void CPeer::SetMaps(int32_t * pl)
|
||||
{
|
||||
thecore_memcpy(m_alMaps, pl, sizeof(m_alMaps));
|
||||
}
|
||||
|
||||
@@ -52,8 +52,8 @@ class CPeer : public CPeerBase
|
||||
void SetP2PPort(WORD wPort);
|
||||
WORD GetP2PPort() { return m_wP2PPort; }
|
||||
|
||||
void SetMaps(long* pl);
|
||||
long * GetMaps() { return &m_alMaps[0]; }
|
||||
void SetMaps(int32_t* pl);
|
||||
int32_t* GetMaps() { return &m_alMaps[0]; }
|
||||
|
||||
bool SetItemIDRange(TItemIDRangeTable itemRange);
|
||||
bool SetSpareItemIDRange(TItemIDRangeTable itemRange);
|
||||
@@ -68,7 +68,7 @@ class CPeer : public CPeerBase
|
||||
DWORD m_dwUserCount;
|
||||
WORD m_wListenPort; // 게임서버가 클라이언트를 위해 listen 하는 포트
|
||||
WORD m_wP2PPort; // 게임서버가 게임서버 P2P 접속을 위해 listen 하는 포트
|
||||
long m_alMaps[32]; // 어떤 맵을 관장하고 있는가?
|
||||
int32_t m_alMaps[32]; // 어떤 맵을 관장하고 있는가?
|
||||
|
||||
TItemIDRangeTable m_itemRange;
|
||||
TItemIDRangeTable m_itemSpareRange;
|
||||
|
||||
@@ -5239,9 +5239,9 @@ bool CHARACTER::WarpSet(long x, long y, long lPrivateMapIndex)
|
||||
if (!IsPC())
|
||||
return false;
|
||||
|
||||
long lAddr;
|
||||
long lMapIndex;
|
||||
WORD wPort;
|
||||
uint32_t lAddr;
|
||||
int32_t lMapIndex;
|
||||
uint16_t wPort;
|
||||
|
||||
if (!CMapLocation::instance().Get(x, y, lMapIndex, lAddr, wPort))
|
||||
{
|
||||
@@ -5251,9 +5251,9 @@ bool CHARACTER::WarpSet(long x, long y, long lPrivateMapIndex)
|
||||
|
||||
//Send Supplementary Data Block if new map requires security packages in loading this map
|
||||
{
|
||||
long lCurAddr;
|
||||
long lCurMapIndex = 0;
|
||||
WORD wCurPort;
|
||||
uint32_t lCurAddr;
|
||||
int32_t lCurMapIndex = 0;
|
||||
uint16_t wCurPort;
|
||||
|
||||
CMapLocation::instance().Get(GetX(), GetY(), lCurMapIndex, lCurAddr, wCurPort);
|
||||
|
||||
|
||||
@@ -188,7 +188,7 @@ void map_allow_add(int index)
|
||||
s_set_map_allows.insert(index);
|
||||
}
|
||||
|
||||
void map_allow_copy(long * pl, int size)
|
||||
void map_allow_copy(int32_t* pl, int size)
|
||||
{
|
||||
int iCount = 0;
|
||||
std::set<int>::iterator it = s_set_map_allows.begin();
|
||||
|
||||
@@ -40,7 +40,7 @@ extern bool g_bTrafficProfileOn; ///< true 이면 TrafficProfiler 를 켠다.
|
||||
extern BYTE g_bChannel;
|
||||
|
||||
extern bool map_allow_find(int index);
|
||||
extern void map_allow_copy(long * pl, int size);
|
||||
extern void map_allow_copy(int32_t * pl, int size);
|
||||
extern bool no_wander;
|
||||
|
||||
extern int g_iUserLimit;
|
||||
|
||||
@@ -42,11 +42,11 @@ enum
|
||||
|
||||
typedef struct SUseTime
|
||||
{
|
||||
DWORD dwLoginKey;
|
||||
char szLogin[LOGIN_MAX_LEN+1];
|
||||
BYTE bBillType;
|
||||
DWORD dwUseSec;
|
||||
char szIP[MAX_HOST_LENGTH+1];
|
||||
uint32_t dwLoginKey;
|
||||
char szLogin[LOGIN_MAX_LEN+1];
|
||||
uint8_t bBillType;
|
||||
uint32_t dwUseSec;
|
||||
char szIP[MAX_HOST_LENGTH+1];
|
||||
} TUseTime;
|
||||
|
||||
class CQueryInfo
|
||||
|
||||
@@ -72,7 +72,7 @@ bool GetServerLocation(TAccountTable & rTab, BYTE bEmpire)
|
||||
continue;
|
||||
|
||||
bFound = true;
|
||||
long lIndex = 0;
|
||||
int32_t lIndex = 0;
|
||||
|
||||
if (!CMapLocation::instance().Get(rTab.players[i].x,
|
||||
rTab.players[i].y,
|
||||
@@ -219,8 +219,7 @@ void CInputDB::PlayerCreateSuccess(LPDESC d, const char * data)
|
||||
return;
|
||||
}
|
||||
|
||||
long lIndex = 0;
|
||||
|
||||
int32_t lIndex = 0;
|
||||
if (!CMapLocation::instance().Get(pPacketDB->player.x,
|
||||
pPacketDB->player.y,
|
||||
lIndex,
|
||||
|
||||
@@ -1044,13 +1044,13 @@ bool CItem::CreateSocket(BYTE bSlot, BYTE bGold)
|
||||
return true;
|
||||
}
|
||||
|
||||
void CItem::SetSockets(const long * c_al)
|
||||
void CItem::SetSockets(const int32_t* c_al)
|
||||
{
|
||||
thecore_memcpy(m_alSockets, c_al, sizeof(m_alSockets));
|
||||
Save();
|
||||
}
|
||||
|
||||
void CItem::SetSocket(int i, long v, bool bLog)
|
||||
void CItem::SetSocket(int i, int32_t v, bool bLog)
|
||||
{
|
||||
assert(i < ITEM_SOCKET_MAX_NUM);
|
||||
m_alSockets[i] = v;
|
||||
|
||||
@@ -106,11 +106,11 @@ class CItem : public CEntity
|
||||
void ModifyPoints(bool bAdd); // 아이템의 효과를 캐릭터에 부여 한다. bAdd가 false이면 제거함
|
||||
|
||||
bool CreateSocket(BYTE bSlot, BYTE bGold);
|
||||
const long * GetSockets() { return &m_alSockets[0]; }
|
||||
long GetSocket(int i) { return m_alSockets[i]; }
|
||||
const int32_t* GetSockets() { return &m_alSockets[0]; }
|
||||
int32_t GetSocket(int i) { return m_alSockets[i]; }
|
||||
|
||||
void SetSockets(const long * al);
|
||||
void SetSocket(int i, long v, bool bLog = true);
|
||||
void SetSockets(const int32_t * al);
|
||||
void SetSocket(int i, int32_t v, bool bLog = true);
|
||||
|
||||
int GetSocketCount();
|
||||
bool AddSocket();
|
||||
@@ -276,7 +276,7 @@ class CItem : public CEntity
|
||||
|
||||
bool m_bExchanging; ///< 현재 교환중 상태
|
||||
|
||||
long m_alSockets[ITEM_SOCKET_MAX_NUM]; // 아이템 소캣
|
||||
int32_t m_alSockets[ITEM_SOCKET_MAX_NUM]; // 아이템 소캣
|
||||
TPlayerItemAttribute m_aAttr[ITEM_ATTRIBUTE_MAX_NUM];
|
||||
|
||||
LPEVENT m_pkDestroyEvent;
|
||||
|
||||
@@ -1,20 +1,17 @@
|
||||
|
||||
#include "stdafx.h"
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "map_location.h"
|
||||
|
||||
#include "sectree_manager.h"
|
||||
|
||||
CMapLocation g_mapLocations;
|
||||
|
||||
bool CMapLocation::Get(long x, long y, long & lIndex, long & lAddr, WORD & wPort)
|
||||
bool CMapLocation::Get(long x, long y, int32_t& lIndex, uint32_t& lAddr, uint16_t& wPort)
|
||||
{
|
||||
lIndex = SECTREE_MANAGER::instance().GetMapIndex(x, y);
|
||||
|
||||
return Get(lIndex, lAddr, wPort);
|
||||
}
|
||||
|
||||
bool CMapLocation::Get(int iIndex, long & lAddr, WORD & wPort)
|
||||
bool CMapLocation::Get(int32_t iIndex, uint32_t& lAddr, uint16_t& wPort)
|
||||
{
|
||||
if (iIndex == 0)
|
||||
{
|
||||
@@ -40,7 +37,7 @@ bool CMapLocation::Get(int iIndex, long & lAddr, WORD & wPort)
|
||||
return true;
|
||||
}
|
||||
|
||||
void CMapLocation::Insert(long lIndex, const char * c_pszHost, WORD wPort)
|
||||
void CMapLocation::Insert(int32_t lIndex, const char * c_pszHost, uint16_t wPort)
|
||||
{
|
||||
TLocation loc;
|
||||
|
||||
|
||||
@@ -6,13 +6,13 @@ class CMapLocation : public singleton<CMapLocation>
|
||||
public:
|
||||
typedef struct SLocation
|
||||
{
|
||||
long addr;
|
||||
WORD port;
|
||||
uint32_t addr;
|
||||
uint16_t port;
|
||||
} TLocation;
|
||||
|
||||
bool Get(long x, long y, long & lMapIndex, long & lAddr, WORD & wPort);
|
||||
bool Get(int iIndex, long & lAddr, WORD & wPort);
|
||||
void Insert(long lIndex, const char * c_pszHost, WORD wPort);
|
||||
bool Get(long x, long y, int32_t& lMapIndex, uint32_t& lAddr, uint16_t& wPort);
|
||||
bool Get(int32_t iIndex, uint32_t& lAddr, uint16_t& wPort);
|
||||
void Insert(int32_t lIndex, const char * c_pszHost, uint16_t wPort);
|
||||
|
||||
protected:
|
||||
std::map<long, TLocation> m_map_address;
|
||||
|
||||
Reference in New Issue
Block a user