diff --git a/Source/inv.h b/Source/inv.h index b7f95e14d..d363233ad 100644 --- a/Source/inv.h +++ b/Source/inv.h @@ -6,6 +6,8 @@ #ifndef __INV_H__ #define __INV_H__ +#include "items.h" + DEVILUTION_BEGIN_NAMESPACE #ifdef __cplusplus diff --git a/Source/items.h b/Source/items.h index 5f27665a5..52f8bf31d 100644 --- a/Source/items.h +++ b/Source/items.h @@ -12,6 +12,82 @@ DEVILUTION_BEGIN_NAMESPACE extern "C" { #endif +typedef struct ItemStruct { + int _iSeed; + WORD _iCreateInfo; + int _itype; + int _ix; + int _iy; + BOOL _iAnimFlag; + unsigned char *_iAnimData; // PSX name -> ItemFrame + int _iAnimLen; // Number of frames in current animation + int _iAnimFrame; // Current frame of animation. + int _iAnimWidth; + int _iAnimWidth2; // width 2? + BOOL _iDelFlag; // set when item is flagged for deletion, deprecated in 1.02 + char _iSelFlag; + BOOL _iPostDraw; + BOOL _iIdentified; + char _iMagical; + char _iName[64]; + char _iIName[64]; + char _iLoc; + // item_class enum + char _iClass; + int _iCurs; + int _ivalue; + int _iIvalue; + int _iMinDam; + int _iMaxDam; + int _iAC; + // item_special_effect + int _iFlags; + // item_misc_id + int _iMiscId; + // spell_id + int _iSpell; + int _iCharges; + int _iMaxCharges; + int _iDurability; + int _iMaxDur; + int _iPLDam; + int _iPLToHit; + int _iPLAC; + int _iPLStr; + int _iPLMag; + int _iPLDex; + int _iPLVit; + int _iPLFR; + int _iPLLR; + int _iPLMR; + int _iPLMana; + int _iPLHP; + int _iPLDamMod; + int _iPLGetHit; + int _iPLLight; + char _iSplLvlAdd; + char _iRequest; + int _iUid; + int _iFMinDam; + int _iFMaxDam; + int _iLMinDam; + int _iLMaxDam; + int _iPLEnAc; + char _iPrePower; + char _iSufPower; + int _iVAdd1; + int _iVMult1; + int _iVAdd2; + int _iVMult2; + char _iMinStr; + unsigned char _iMinMag; + char _iMinDex; + BOOL _iStatFlag; + int IDidx; + int offs016C; // _oldlight or _iInvalid + int _iDamAcFlags; +} ItemStruct; + typedef struct CornerStoneStruct { int x; int y; diff --git a/structs.h b/structs.h index 7c2e8548d..bc5364a87 100644 --- a/structs.h +++ b/structs.h @@ -87,82 +87,6 @@ typedef struct ItemGetRecordStruct { unsigned int dwTimestamp; } ItemGetRecordStruct; -typedef struct ItemStruct { - int _iSeed; - WORD _iCreateInfo; - int _itype; - int _ix; - int _iy; - BOOL _iAnimFlag; - unsigned char *_iAnimData; // PSX name -> ItemFrame - int _iAnimLen; // Number of frames in current animation - int _iAnimFrame; // Current frame of animation. - int _iAnimWidth; - int _iAnimWidth2; // width 2? - BOOL _iDelFlag; // set when item is flagged for deletion, deprecated in 1.02 - char _iSelFlag; - BOOL _iPostDraw; - BOOL _iIdentified; - char _iMagical; - char _iName[64]; - char _iIName[64]; - char _iLoc; - // item_class enum - char _iClass; - int _iCurs; - int _ivalue; - int _iIvalue; - int _iMinDam; - int _iMaxDam; - int _iAC; - // item_special_effect - int _iFlags; - // item_misc_id - int _iMiscId; - // spell_id - int _iSpell; - int _iCharges; - int _iMaxCharges; - int _iDurability; - int _iMaxDur; - int _iPLDam; - int _iPLToHit; - int _iPLAC; - int _iPLStr; - int _iPLMag; - int _iPLDex; - int _iPLVit; - int _iPLFR; - int _iPLLR; - int _iPLMR; - int _iPLMana; - int _iPLHP; - int _iPLDamMod; - int _iPLGetHit; - int _iPLLight; - char _iSplLvlAdd; - char _iRequest; - int _iUid; - int _iFMinDam; - int _iFMaxDam; - int _iLMinDam; - int _iLMaxDam; - int _iPLEnAc; - char _iPrePower; - char _iSufPower; - int _iVAdd1; - int _iVMult1; - int _iVAdd2; - int _iVMult2; - char _iMinStr; - unsigned char _iMinMag; - char _iMinDex; - BOOL _iStatFlag; - int IDidx; - int offs016C; // _oldlight or _iInvalid - int _iDamAcFlags; -} ItemStruct; - ////////////////////////////////////////////////// // player //////////////////////////////////////////////////