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,261 @@
#include <stdio.h>
#include <stdlib.h>
#include <memory.h>
#include "NFNet.h"
#include "NFIOBuffer.h"
namespace NaveNet {
NFIOBuffer::NFIOBuffer() : m_iHead(0), m_iTail(0), m_iBufSize(0), m_cBuf(0), m_iBuffered(0)
{
}
NFIOBuffer::~NFIOBuffer()
{
DeleteIOBuf();
}
VOID NFIOBuffer::InitIOBuf()
{
m_iHead = m_iTail = 0;
m_iBuffered = 0;
if(m_cBuf)
memset(m_cBuf, 0, sizeof(m_cBuf));
}
VOID NFIOBuffer::NewIOBuf(INT BufSize)
{
if(BufSize <= 0)
BufSize = IOBUF_DEF_SIZE;
m_cBuf = new CHAR[BufSize];
if(m_cBuf == NULL)
{
// throw "NFIOBuffer::NewIOBuf : Memory allocation failure!";
return;
}
m_iBufSize = BufSize;
InitIOBuf();
}
VOID NFIOBuffer::DeleteIOBuf()
{
if(m_cBuf)
{
delete []m_cBuf;
m_cBuf = NULL;
}
m_iBufSize = 0;
m_iHead = m_iTail = 0;
m_iBuffered = 0;
}
// Size <20><>ŭ Buffer<65><72> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
INT NFIOBuffer::Append(const CHAR* Buffer, INT Size)
{
// <20><><EFBFBD><EFBFBD><EFBFBD>÷ο<20>ȴ<EFBFBD>.
if(m_iBuffered + Size >= m_iBufSize)
{
// throw "NFIOBuffer::Append : Buffer overflow";
return -1;
}
INT aSize = 0;
INT Added = 0;
// <20><><EFBFBD><EFBFBD> Size<7A><65> <20>߰<EFBFBD><DFB0>Ҷ<EFBFBD><D2B6><EFBFBD><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD>Ѵ<EFBFBD>.
while(Size > 0)
{
if(Size > m_iBufSize-m_iTail)
aSize = m_iBufSize-m_iTail;
else aSize = Size;
if(aSize)
{
memcpy(m_cBuf+m_iTail, Buffer, aSize);
Added += aSize;
Size -= aSize;
Buffer += aSize;
m_iTail += aSize;
if(m_iTail >= m_iBufSize)
m_iTail -= m_iBufSize;
}
}
CalcBuffered();
return Added;
}
// Size<7A><65>ŭ <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20>о<EFBFBD> Buffer<65><72> <20><><EFBFBD><EFBFBD>.
INT NFIOBuffer::GetData(CHAR* Buffer, INT Size)
{
// <20><><EFBFBD>ִ<EFBFBD> <20><><EFBFBD><EFBFBD>Ÿ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ִ<EFBFBD> <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20>а<EFBFBD> <20>Ѵ<EFBFBD>.
if(GetBufferUsed() < Size)
Size = GetBufferUsed();
if(Size <= 0)
return 0;
// <20>߷<EFBFBD><DFB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. ó<><C3B3><EFBFBD>Ѵ<EFBFBD>.
if(m_iHead+Size >= m_iBufSize)
{
// <20><><EFBFBD><20><><EFBFBD><EFBFBD> <20><><EFBFBD>װ<EFBFBD> <20>ִ<EFBFBD>.
INT Size1 = m_iBufSize - m_iHead;
memcpy(Buffer, m_cBuf+m_iHead, Size1);
memcpy(Buffer+Size1, m_cBuf, Size-Size1);
}
else // <20><><EFBFBD>߷<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
{
memcpy(Buffer, m_cBuf+m_iHead, Size);
}
m_iHead += Size;
if(m_iHead >= m_iBufSize)
m_iHead -= m_iBufSize;
CalcBuffered();
return Size;
}
INT NFIOBuffer::CheckData(INT Size)
{
// <20><><EFBFBD>ִ<EFBFBD> <20><><EFBFBD><EFBFBD>Ÿ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ִ<EFBFBD> <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20>а<EFBFBD> <20>Ѵ<EFBFBD>.
if(GetBufferUsed() < Size)
Size = GetBufferUsed();
if(Size <= 0)
return 0;
m_iHead += Size;
if(m_iHead >= m_iBufSize)
m_iHead -= m_iBufSize;
CalcBuffered();
return Size;
}
VOID NFIOBuffer::CalcBuffered()
{
if(m_iHead > m_iTail)
m_iBuffered = m_iBufSize - m_iHead + m_iTail;
else
m_iBuffered = m_iTail-m_iHead;
}
NFPacketIOBuffer::NFPacketIOBuffer() : m_iLockHead(0)
{
// <20>ʱ<EFBFBD>ȭ.
NFIOBuffer::NFIOBuffer();
}
NFPacketIOBuffer::~NFPacketIOBuffer()
{
DeleteIOBuf();
}
VOID NFPacketIOBuffer::Lock()
{
m_iLockHead = GetHead();
}
VOID NFPacketIOBuffer::UnLock()
{
SetHead(m_iLockHead);
}
BOOL NFPacketIOBuffer::CheckPacket()
{
PACKETHEADER header;
INT HeaderSize = sizeof(PACKETHEADER);
// Header
if(GetBufferUsed() < HeaderSize)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ƴ϶<C6B4> <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20><><EFBFBD>°Ŵ<C2B0>.
// throw "NFPacketIOBuffer::GetPacket : IOBuffer Used Memory < P_SIZE";
return FALSE;
}
if(HeaderSize != GetData((CHAR*)&header, HeaderSize))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ <20>Ѵ<EFBFBD>.
// throw "NFPacketIOBuffer::GetPacket : Packet Header Size != P_SIZE";
return FALSE;
}
INT PacketSize = header.Size-HeaderSize;
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>µ<EFBFBD> <20><><EFBFBD>۰<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EEB0AC><EFBFBD><EFBFBD> Ȯ<><C8AE><EFBFBD>Ѵ<EFBFBD>.
if(GetBufferUsed() < PacketSize)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ <20>Ѵ<EFBFBD>.
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ƴ϶<C6B4> <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20><><EFBFBD>°Ŵ<C2B0>.
// throw "NFPacketIOBuffer::GetPacket : IOBuffer Used Memory < PacketLen";
return FALSE;
}
INT GetSize = CheckData(PacketSize);
if(GetSize != PacketSize)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ <20>Ѵ<EFBFBD>.
// throw "NFPacketIOBuffer::GetPacket : Packet Data Read Faild, PacketSize != GetSize";
return FALSE;
}
return TRUE;
}
INT NFPacketIOBuffer::GetPacket(NFPacket* Packet)
{
INT OldHead = GetHead();
INT HeaderSize = HEADERSIZE;
// Header
if(GetBufferUsed() < HeaderSize)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ƴ϶<C6B4> <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20><><EFBFBD>°Ŵ<C2B0>.
// throw "NFPacketIOBuffer::GetPacket : IOBuffer Used Memory < P_SIZE";
return -1;
}
if(HeaderSize != GetData((CHAR*)&Packet->m_Header, HeaderSize))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ <20>Ѵ<EFBFBD>.
SetHead(OldHead);
// throw "NFPacketIOBuffer::GetPacket : Packet Header Size != P_SIZE";
return -2;
}
INT PacketSize = Packet->m_Header.Size-HeaderSize;
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>µ<EFBFBD> <20><><EFBFBD>۰<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EEB0AC><EFBFBD><EFBFBD> Ȯ<><C8AE><EFBFBD>Ѵ<EFBFBD>.
if(GetBufferUsed() < PacketSize)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ <20>Ѵ<EFBFBD>.
SetHead(OldHead);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ƴ϶<C6B4> <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20><><EFBFBD>°Ŵ<C2B0>.
// throw "NFPacketIOBuffer::GetPacket : IOBuffer Used Memory < PacketLen";
return -3;
}
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ÿ<EFBFBD><C5B8> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD>ȵƴ<C8B5>.
INT GetSize = GetData(Packet->m_Packet, PacketSize);
if(GetSize != PacketSize)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʱ<EFBFBD>ȭ <20>Ѵ<EFBFBD>.
SetHead(OldHead);
// throw "NFPacketIOBuffer::GetPacket : Packet Data Read Faild, PacketSize != GetSize";
return -4;
}
// <20><>Ŷ<EFBFBD><C5B6> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>о<EFBFBD><D0BE><EFBFBD><E9BFB4>.
return 1;
}
}