diff options
author | Cleverking2003 <30466983+Cleverking2003@users.noreply.github.com> | 2020-06-23 22:48:39 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-23 22:48:39 +0300 |
commit | 291f2d27d36b5c437c6c1908d5217bb954799402 (patch) | |
tree | f2bd6bfd6823cc83b8c9dcf7608b264482d0f62e /include/itemtool.h | |
parent | d2710751ca6b1c4cc5399ea7206fb8faa00de5fe (diff) | |
parent | 718adb157daf580ff1abba13a192a0da8dc27940 (diff) |
Merge pull request #184 from PikalaxALT/pikalax_work
itemtool; replace extensions for NCGR, NCLR from narcs
Diffstat (limited to 'include/itemtool.h')
-rw-r--r-- | include/itemtool.h | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/include/itemtool.h b/include/itemtool.h index d8419c2b..53140128 100644 --- a/include/itemtool.h +++ b/include/itemtool.h @@ -2,6 +2,7 @@ #define POKEDIAMOND_ITEMTOOL_H #include "global.h" +#include "filesystem.h" #include "constants/items.h" // Berries (nutdata) @@ -21,6 +22,85 @@ struct NutData u8 unkB; }; +struct ItemSlot +{ + u16 id; + u16 quantity; +}; + +struct ItemDataSub +{ + u8 unk0_0:1; + u8 unk0_1:1; + u8 unk0_2:1; + u8 unk0_3:1; + u8 unk0_4:1; + u8 unk0_5:1; + u8 unk0_6:1; + u8 unk0_7:1; + u8 unk1_0:1; + u8 unk1_1:1; + u8 unk1_2:1; + u8 unk1_3:1; + u8 unk1_4:4; + u8 unk2_0:4; + u8 unk2_4:4; + u8 unk3_0:4; + u8 unk3_4:4; + u8 unk4_0:4; + u8 unk4_4:2; + u8 unk4_6:1; + u8 unk4_7:1; + u8 unk5_0:1; + u8 unk5_1:1; + u8 unk5_2:1; + u8 unk5_3:1; + u8 unk5_4:1; + u8 unk5_5:1; + u8 unk5_6:1; + u8 unk5_7:1; + u8 unk6_0:1; + u8 unk6_1:1; + u8 unk6_2:1; + u8 unk6_3:1; + s8 unk7; + s8 unk8; + s8 unk9; + s8 unkA; + s8 unkB; + s8 unkC; + u8 unkD; + u8 unkE; + s8 unkF; + s8 unk10; + s8 unk11; + u8 paddding[4]; +}; + +struct ItemData +{ + u16 price; + u8 holdEffect; + u8 holdEffectParam; + u8 unk4; + u8 unk5; + u8 unk6; + u8 naturalGiftPower; + u16 unk8_0:5; + u16 unk8_5:1; + u16 unk8_6:1; + u16 pocket:4; + u16 unk8_B:5; + u8 unkA; + u8 unkB; + u8 unkC; + u8 padding; + union { + u8 flat; + struct ItemDataSub sub; + } unkE; +}; + NARC * OpenNutsDataNarc(u32 heap_id); struct NutData * ReadNutDataFromNarc(NARC * narc, u32 berry_idx, u32 heap_id); void CloseNutsDataNarc(NARC * narc); @@ -30,4 +110,28 @@ u32 GetNutAttr(struct NutData * nut, u32 attr); struct String * GetNutName(u32 berry_idx, u32 heap_id); struct String * GetNutDesc(u32 berry_idx, u32 heap_id); +void MoveItemSlotInList(struct ItemSlot * itemSlots, u16 from, u16 to); +u16 GetItemIndexMapping(u16 a0, u16 a1); +u16 UpConvertItemId_Gen3to4(u16 a0); +int FUN_0206E708(); +int FUN_0206E70C(); +void * LoadItemDataOrGfx(u16 a0, u16 a1, u32 heap_id); +void GetItemNameIntoString(struct String * dest, u16 item_id, u32 heap_no); +void GetItemDescIntoString(struct String * dest, u16 item_id, u32 heap_no); +u32 GetItemAttr(u16 item, u32 attr, u32 heap_id); +u32 GetItemAttr_PreloadedItemData(struct ItemData * itemData, u32 attr); +u32 GetItemAttrSub(struct ItemDataSub * sub, u32 attr); +u16 TMHMGetMove(u16 a0); +BOOL MoveIsHM(u16 a0); +u8 ItemToTMHMId(u16 a0); +BOOL ItemIdIsMail(u16 a0); +u8 ItemToMailId(u16 item_id); +u16 MailToItemId(u8 i); +BOOL ItemIdIsBerry(u16 item_id); +u8 ItemToBerryId(u16 item_id); +u16 BerryToItemId(u8 a0); +u8 ItemIsBitter(u16 item_id); +struct ItemData * LoadAllItemData(u32 heap_id); +struct ItemData * GetItemDataPtrFromArray(struct ItemData * a0, u16 item_id); + #endif //POKEDIAMOND_ITEMTOOL_H |