1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-08-08 15:30:14 +00:00

Decompile Player (#387)

* Setup player decomp

* Decompile z_player.c and z_player_lib.c

* Decompile remaining z_player.c functions

* Various player improvements

* Player progress (some non matchings and .data migrated)

* Player progress (reposition data and fix some non matchings)

* Cleanup, improve and document parts of z_player_lib.c/z_player.c

* Fix player renames in z_en_st.c

* Fix missing open/close disps in z_player.c

* Minor player fixes

* Address player comments
This commit is contained in:
Roman971 2020-09-19 03:45:39 +02:00 committed by GitHub
parent b29c268f37
commit 14191307e9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
686 changed files with 16334 additions and 39630 deletions

View file

@ -238,12 +238,17 @@ typedef enum {
/* 0x99 */ ITEM_STICK_UPGRADE_30,
/* 0x9A */ ITEM_NUT_UPGRADE_30,
/* 0x9B */ ITEM_NUT_UPGRADE_40,
/* 0xFC */ ITEM_LAST_USED = 0xFC,
/* 0xFE */ ITEM_NONE_FE = 0xFE,
/* 0xFF */ ITEM_NONE = 0xFF
} ItemID;
#define ITEM_TRADE_CHILD ITEM_WEIRD_EGG
#define ITEM_TRADE_ADULT ITEM_POCKET_EGG
// Get Item result may vary depending on context (chest/shop/scrub/drop)
typedef enum {
/* 0x00 */ GI_INVALID, // Link picks up chest and it sends him flying upwards
/* 0x00 */ GI_NONE,
/* 0x01 */ GI_BOMBS_5,
/* 0x02 */ GI_NUTS_5,
/* 0x03 */ GI_BOMBCHUS_10,
@ -278,7 +283,7 @@ typedef enum {
/* 0x20 */ GI_ODD_POTION,
/* 0x21 */ GI_SAW,
/* 0x22 */ GI_SWORD_BROKEN,
/* 0x23 */ GI_PERSCRIPTION,
/* 0x23 */ GI_PRESCRIPTION,
/* 0x24 */ GI_FROG,
/* 0x25 */ GI_EYEDROPS,
/* 0x26 */ GI_CLAIM_CHECK,
@ -368,9 +373,42 @@ typedef enum {
/* 0x7A */ GI_NUT_UPGRADE_40,
/* 0x7B */ GI_BULLET_BAG_50,
/* 0x7C */ GI_ICE_TRAP, // freezes link when opened from a chest
/* 0x7D */ GI_TEXT_0 // no model appears over Link, shows text id 0 (pocket egg)
/* 0x7D */ GI_TEXT_0, // no model appears over Link, shows text id 0 (pocket egg)
/* 0x7E */ GI_MAX
} GetItemID;
#define ITEM_TRADE_ADULT ITEM_POCKET_EGG
typedef enum {
/* 0x00 */ EXCH_ITEM_NONE,
/* 0x01 */ EXCH_ITEM_LETTER_ZELDA,
/* 0x02 */ EXCH_ITEM_WEIRD_EGG,
/* 0x03 */ EXCH_ITEM_CHICKEN,
/* 0x04 */ EXCH_ITEM_BEAN,
/* 0x05 */ EXCH_ITEM_POCKET_EGG,
/* 0x06 */ EXCH_ITEM_POCKET_CUCCO,
/* 0x07 */ EXCH_ITEM_COJIRO,
/* 0x08 */ EXCH_ITEM_ODD_MUSHROOM,
/* 0x09 */ EXCH_ITEM_ODD_POTION,
/* 0x0A */ EXCH_ITEM_SAW,
/* 0x0B */ EXCH_ITEM_SWORD_BROKEN,
/* 0x0C */ EXCH_ITEM_PRESCRIPTION,
/* 0x0D */ EXCH_ITEM_FROG,
/* 0x0E */ EXCH_ITEM_EYEDROPS,
/* 0x0F */ EXCH_ITEM_CLAIM_CHECK,
/* 0x10 */ EXCH_ITEM_MASK_SKULL,
/* 0x11 */ EXCH_ITEM_MASK_SPOOKY,
/* 0x12 */ EXCH_ITEM_MASK_KEATON,
/* 0x13 */ EXCH_ITEM_MASK_BUNNY,
/* 0x14 */ EXCH_ITEM_MASK_TRUTH,
/* 0x15 */ EXCH_ITEM_MASK_GORON,
/* 0x16 */ EXCH_ITEM_MASK_ZORA,
/* 0x17 */ EXCH_ITEM_MASK_GERUDO,
/* 0x18 */ EXCH_ITEM_FISH,
/* 0x19 */ EXCH_ITEM_BLUE_FIRE,
/* 0x1A */ EXCH_ITEM_BUG,
/* 0x1B */ EXCH_ITEM_POE,
/* 0x1C */ EXCH_ITEM_BIG_POE,
/* 0x1D */ EXCH_ITEM_LETTER_RUTO,
/* 0x1E */ EXCH_ITEM_MAX
} ExchangeItemID;
#endif