diff options
| author | Henny022p <info@henny022.de> | 2022-02-03 05:44:50 +0100 |
|---|---|---|
| committer | Henny022p <info@henny022.de> | 2022-02-03 05:52:50 +0100 |
| commit | bbc3a8841596de1fc7f034953df9c844ec805033 (patch) | |
| tree | 2b3a624ea1f67bd1b83d3aa25b75cfe7c2f672bf /include | |
| parent | 67d369c53becab9c5efbe5d3daba0373ef1b4106 (diff) | |
CreateRandomDrop and droptables
Diffstat (limited to 'include')
| -rw-r--r-- | include/droptables.h | 34 | ||||
| -rw-r--r-- | include/functions.h | 2 | ||||
| -rw-r--r-- | include/item.h | 6 | ||||
| -rw-r--r-- | include/player.h | 3 |
4 files changed, 43 insertions, 2 deletions
diff --git a/include/droptables.h b/include/droptables.h new file mode 100644 index 00000000..481923e6 --- /dev/null +++ b/include/droptables.h @@ -0,0 +1,34 @@ +#ifndef TMC_DROPTABLES_H +#define TMC_DROPTABLES_H + +typedef union { + struct { + s16 none; + s16 rupee1; + s16 rupee5; + s16 rupee20; + s16 hearts; + s16 fairy; + s16 bombs; + s16 arrows; + s16 mysteriousShells; + s16 kinstoneGreen; + s16 kinstoneBlue; + s16 kinstoneRed; + s16 none2; + s16 none3; + s16 none4; + s16 none5; + } s; + s16 a[16]; +} Droptable; +static_assert(sizeof(Droptable) == 0x20); + +extern const Droptable gUnk_0800137C[]; +extern const Droptable gUnk_0800143C[]; +extern const Droptable gUnk_080015BC[]; +extern const Droptable gUnk_0800161C[]; +extern const Droptable gUnk_0800191C[]; +extern const Droptable gUnk_08001A1C[]; + +#endif // TMC_DROPTABLES_H diff --git a/include/functions.h b/include/functions.h index b0dfbee0..171e6c90 100644 --- a/include/functions.h +++ b/include/functions.h @@ -168,7 +168,7 @@ extern void sub_080044AE(Entity*, u32, u32); extern void sub_0801AF18(u8*, u32, u32); extern void sub_0807B9B8(s32, s32, s32); extern void sub_08000148(u32, u32, u32); -extern void sub_0805457C(Entity*, s32); +extern void CreateRandomItemDrop(Entity*, s32); extern Entity* sub_080A2A3C(Entity*, u32, u32, u32); extern void sub_0806FCF4(Entity*, s32, s32, s32); extern u32 sub_080041DC(Entity*, u32, u32); diff --git a/include/item.h b/include/item.h index e7460936..20516e0f 100644 --- a/include/item.h +++ b/include/item.h @@ -143,6 +143,12 @@ typedef enum { ITEM_SKILL_FAST_SPIN, ITEM_SKILL_FAST_SPLIT, ITEM_SKILL_LONG_SPIN, + + // these are not actually item ids but special values used by item drops for example + ITEM_KINSTONE_GREEN = 0xfc, + ITEM_KINSTONE_BLUE, + ITEM_KINSTONE_RED, + ITEM_ENEMY_BEETLE } Item; #endif diff --git a/include/player.h b/include/player.h index 568d614f..68086a81 100644 --- a/include/player.h +++ b/include/player.h @@ -255,7 +255,8 @@ typedef struct { /*0x0c*/ u8 itemButtons[2]; /*0x0e*/ u8 bottles[4]; /*0x12*/ u8 effect; - /*0x13*/ u8 filler3[5]; + /*0x13*/ u8 hasAllFigurines; + /*0x14*/ u8 filler3[4]; /*0x18*/ u16 rupees; /*0x1a*/ u16 field_0x1a; /*0x1c*/ u16 charmTimer; |
