#ifndef __ITEM_H__ #define __ITEM_H__ #include #include "element.h" typedef u8 ItemType; #define ITEM_TYPE_SWORD 1 #define ITEM_TYPE_GREATSWORD 2 #define ITEM_TYPE_THRUSTING_SWORD 3 typedef struct { /* 0x00 */ char* name; /* 0x04 */ ItemType type; /* 0x05 */ Element element; /* 0x06 */ u8 field_0x6; /* 0x07 */ u8 field_0x7; /* 0x08 */ u16 field_0x8; /* 0x0a */ s8 strength; /* 0x0b */ s8 intelligence; /* 0x0c */ s8 agility; /* 0x0d */ s8 dexterity; /* 0x0e */ s8 vitality; /* 0x0f */ s8 mentality; /* 0x10 */ s8 field_0x10; /* 0x11 */ s8 res_strike; /* 0x12 */ s8 res_wind; /* 0x13 */ s8 res_fire; /* 0x14 */ s8 res_earth; /* 0x15 */ s8 res_water; /* 0x16 */ s8 res_holy; /* 0x17 */ u8 res_dark; /* 0x18 */ u8 field_0x18; /* 0x19 */ u8 field_0x19; /* 0x1a */ u8 field_0x1a; /* 0x1b */ u8 field_0x1b; /* 0x1c */ u8 field_0x1c; /* 0x1d */ u8 field_0x1d; /* 0x1e */ u8 field_0x1e; /* 0x1f */ u8 field_0x1f; } ItemData; // size:0x20 extern ItemData ITEM_DATA[]; extern s8 (*FP_ITEM_GET_RESISTANCE[])(u16 index); extern char* item_get_name(u16 index); extern ItemType item_get_type(u16 index); extern Element item_get_element(u16 index); extern u8 item_get_field_0x2(u16 index); extern u16 item_get_field_0x4(u16 index); extern s8 item_get_field_0xc(u16 index); extern s8 item_get_strength(u16 index); extern s8 item_get_vitality(u16 index); extern s8 item_get_intelligence(u16 index); extern s8 item_get_mentality(u16 index); extern s8 item_get_agility(u16 index); extern s8 item_get_dexterity(u16 index); extern s8 item_get_resistance_strike(u16 index); extern s8 item_get_resistance_wind(u16 index); extern s8 item_get_resistance_fire(u16 index); extern s8 item_get_resistance_earth(u16 index); extern s8 item_get_resistance_water(u16 index); extern s8 item_get_resistance_holy(u16 index); extern s8 item_get_resistance_dark(u16 index); extern u32 item_get_field_0x14_b68(u16 index); extern u32 item_get_field_0x14_b46(u16 index); extern u32 item_get_field_0x14_b24(u16 index); extern u32 item_get_field_0x14_b12(u16 index); #endif