Initial commit: server + serverfiles

This commit is contained in:
Game
2026-08-17 17:31:44 +00:00
commit ff1237686b
17389 changed files with 868929 additions and 0 deletions
+43
View File
@@ -0,0 +1,43 @@
#ifndef __INC_METIN_II_ATTRIBUTE_H__
#define __INC_METIN_II_ATTRIBUTE_H__
enum EDataType
{
D_DWORD,
D_WORD,
D_BYTE
};
//
// 맵 속성들을 처리할 때 사용
//
class CAttribute
{
public:
CAttribute(DWORD width, DWORD height); // dword 타잎으로 모두 0을 채운다.
CAttribute(DWORD * attr, DWORD width, DWORD height); // attr을 읽어서 smart하게 속성을 읽어온다.
~CAttribute();
void Alloc();
int GetDataType();
void * GetDataPtr();
void Set(DWORD x, DWORD y, DWORD attr);
void Remove(DWORD x, DWORD y, DWORD attr);
DWORD Get(DWORD x, DWORD y);
void CopyRow(DWORD y, DWORD * row);
private:
void Initialize(DWORD width, DWORD height);
private:
int dataType;
DWORD defaultAttr;
DWORD width, height;
void * data;
BYTE ** bytePtr;
WORD ** wordPtr;
DWORD ** dwordPtr;
};
#endif
+26
View File
@@ -0,0 +1,26 @@
#ifndef __INC_METIN_II_GRID_H__
#define __INC_METIN_II_GRID_H__
class CGrid
{
public:
CGrid(int w, int h);
CGrid(CGrid * pkGrid, int w, int h);
~CGrid();
void Clear();
int FindBlank(int w, int h);
bool IsEmpty(int iPos, int w, int h);
bool Put(int iPos, int w, int h);
void Get(int iPos, int w, int h);
void Print();
unsigned int GetSize();
protected:
int m_iWidth;
int m_iHeight;
char * m_pGrid;
};
#endif
+46
View File
@@ -0,0 +1,46 @@
#ifndef __INC_METIN_II_SERVER_TARGA_H__
#define __INC_METIN_II_SERVER_TARGA_H__
#pragma pack(1)
struct TGA_HEADER
{
char idLen; // 0
char palType; // 파레트있으면 1, 없음 0
char imgType; // 파레트있으면 1, 없음 2
WORD colorBegin; // 0
WORD colorCount; // 파레트 있으면 256, 없음 0
char palEntrySize; // 파레트 있으면 24, 없음 0
WORD left;
WORD top;
WORD width;
WORD height;
char colorBits;
char desc;
};
#define IMAGEDESC_ORIGIN_MASK 0x30
#define IMAGEDESC_TOPLEFT 0x20
#define IMAGEDESC_BOTLEFT 0x00
#define IMAGEDESC_BOTRIGHT 0x10
#define IMAGEDESC_TOPRIGHT 0x30
#pragma pack()
class CTargaImage
{
public:
CTargaImage();
~CTargaImage();
void Create(int x, int y);
char * GetBasePointer(int line = 0);
bool Save(const char * filename);
protected:
TGA_HEADER m_header;
char * m_pbuf;
int m_x, m_y;
};
#endif