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:
169
GameTools/NeoRylClient/ItemNodeHdr.h
Normal file
169
GameTools/NeoRylClient/ItemNodeHdr.h
Normal file
@@ -0,0 +1,169 @@
|
||||
#ifndef _ITEMNODE_H
|
||||
#define _ITEMNODE_H
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
// item kind structure
|
||||
typedef union _ItemKind {
|
||||
struct {
|
||||
unsigned char m_cSort; // sort of item
|
||||
unsigned char m_cClass; // class of item
|
||||
} IClass;
|
||||
unsigned short m_wIKind;
|
||||
|
||||
operator unsigned short()
|
||||
{
|
||||
return m_wIKind;
|
||||
}
|
||||
operator=(unsigned short In)
|
||||
{
|
||||
m_wIKind=In;
|
||||
}
|
||||
bool operator<(const _ItemKind& rOp) const
|
||||
{
|
||||
return (m_wIKind < rOp.m_wIKind);
|
||||
}
|
||||
|
||||
} ItemKind, *LPItemKind;
|
||||
|
||||
const unsigned int ItemKindSize = sizeof(ItemKind);
|
||||
|
||||
|
||||
typedef struct _IEnchant {
|
||||
// unsigned short m_wIEnchantFlag;
|
||||
// unsigned short m_wIEnchantValue;
|
||||
|
||||
unsigned char m_cIEnchant[4];
|
||||
} IEnchant, *LPIEnchant;
|
||||
|
||||
const unsigned int IEnchantSize = sizeof(IEnchant);
|
||||
|
||||
|
||||
|
||||
// item id structure
|
||||
typedef union _ItemID {
|
||||
struct {
|
||||
union {
|
||||
struct {
|
||||
unsigned char m_cCurDur; // durability or number of item
|
||||
unsigned char m_cMaxDur; // durability or number of item
|
||||
} ItemDur;
|
||||
unsigned short m_wSkill;
|
||||
} DurOrSkill;
|
||||
|
||||
IEnchant m_Enchant; // use for upgrade
|
||||
|
||||
ItemKind m_Kind; // kind of item
|
||||
} IDSlip;
|
||||
|
||||
__int64 m_dlItemID;
|
||||
|
||||
operator __int64()
|
||||
{
|
||||
return m_dlItemID;
|
||||
}
|
||||
operator=(__int64 in)
|
||||
{
|
||||
m_dlItemID=in;
|
||||
}
|
||||
} ItemID, *LPItemID;
|
||||
|
||||
const int ItemIDSize = sizeof(ItemID);
|
||||
|
||||
|
||||
|
||||
// item size
|
||||
typedef struct _ItemSize ItemSize, *LPItemSize;
|
||||
struct _ItemSize {
|
||||
unsigned char SizeX : 4; // use for upgrade
|
||||
unsigned char SizeY : 4; // remained for last user
|
||||
|
||||
};
|
||||
|
||||
const int ItemSizeSize = sizeof(ItemSize);
|
||||
|
||||
|
||||
typedef enum _Race { Race_NONE, Race_HUMAN } Race;
|
||||
typedef enum _Feature { Feature_NORMAL, Feature_MAGIC, Feature_SPECIAL } Feature;
|
||||
|
||||
|
||||
/*//
|
||||
typedef enum _AbSort { AS_NONE, AS_STR, AS_DEX, AS_CON, AS_INT, AS_LEV,
|
||||
AS_SK, AS_CLS, AS_BR, AS_HP, AS_MP } AbSort;
|
||||
typedef struct _AbValue AbValue, *LPAbValue;
|
||||
struct _AbValue {
|
||||
unsigned short m_wAb;
|
||||
unsigned short m_wValue;
|
||||
|
||||
};
|
||||
|
||||
const int AbValueSize = sizeof(AbValue);
|
||||
|
||||
|
||||
typedef struct _AbModify {
|
||||
AbValue m_ReqAb[4]; // required ability
|
||||
AbValue m_AddAb[4]; // added ability
|
||||
AbValue m_ENAb; // elemental nature
|
||||
|
||||
} AbModify, *LPAbModify;
|
||||
//*/
|
||||
|
||||
typedef struct _ItemNode2 ItemNode2, *LPItemNode2;
|
||||
struct _ItemNode2 {
|
||||
char *m_pItem; // pointer of start line
|
||||
|
||||
__int64 m_dlID; // id of item (8 byte)
|
||||
|
||||
char m_Name[32]; // name of this item
|
||||
|
||||
DWORD m_dwValue; // value of item
|
||||
|
||||
ItemSize m_ItemSize;
|
||||
|
||||
int m_nRestrictStr; // restrict ability
|
||||
int m_nRestrictDex;
|
||||
int m_nRestrictCon;
|
||||
int m_nRestrictInt;
|
||||
int m_nRestrictWis;
|
||||
|
||||
unsigned short m_wRestrictS; // restrict skill
|
||||
unsigned short m_wRestrictSLev; // restrict skill level
|
||||
|
||||
unsigned short m_wRestrictC; // restrict class
|
||||
unsigned short m_wRestrictCLev; // restrict character level
|
||||
|
||||
unsigned short m_wAssignedS; // assigned skill
|
||||
unsigned short m_wAssignedSLev; // assigned skill level
|
||||
|
||||
Race m_Race; // race limit of item user
|
||||
Feature m_Feature; // feature of item
|
||||
|
||||
// float m_fDamage;
|
||||
// float m_fDamageLimit; // damage limit
|
||||
|
||||
// float m_fDefense;
|
||||
// float m_fDefenseLimit;
|
||||
|
||||
|
||||
|
||||
float m_fDamage; // damage
|
||||
float m_fDamageL; // damage limit
|
||||
|
||||
float m_fDefense; // defense
|
||||
float m_fDefenseL; // defense limit
|
||||
float m_fBR;
|
||||
/*
|
||||
int m_nAPL;
|
||||
int m_nAPH;
|
||||
|
||||
int m_nBR; // item blocking rate
|
||||
float m_fDf;
|
||||
*/
|
||||
|
||||
char m_pObject[32]; // pointer of object
|
||||
|
||||
};
|
||||
const int ItemNode2Size = sizeof(ItemNode2);
|
||||
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user