1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-11-29 12:04:29 +00:00
oot/include/z64object.h
Tharo 3daeaf2446
Reduce hardcoded sizes for a few data tables (#646)
Co-authored-by: Thar0 <maximilianc64@gmail.com>
2021-01-20 13:15:17 -05:00

412 lines
13 KiB
C

#ifndef _Z64OBJECT_H_
#define _Z64OBJECT_H_
#define OBJECT_EXCHANGE_BANK_MAX 19
typedef enum {
/* 0x0000 */ OBJECT_UNSET_0,
/* 0x0001 */ OBJECT_GAMEPLAY_KEEP,
/* 0x0002 */ OBJECT_GAMEPLAY_FIELD_KEEP,
/* 0x0003 */ OBJECT_GAMEPLAY_DANGEON_KEEP,
/* 0x0004 */ OBJECT_UNSET_4,
/* 0x0005 */ OBJECT_UNSET_5,
/* 0x0006 */ OBJECT_HUMAN,
/* 0x0007 */ OBJECT_OKUTA,
/* 0x0008 */ OBJECT_CROW,
/* 0x0009 */ OBJECT_POH,
/* 0x000A */ OBJECT_DY_OBJ,
/* 0x000B */ OBJECT_WALLMASTER,
/* 0x000C */ OBJECT_DODONGO,
/* 0x000D */ OBJECT_FIREFLY,
/* 0x000E */ OBJECT_BOX,
/* 0x000F */ OBJECT_FIRE,
/* 0x0010 */ OBJECT_UNSET_10,
/* 0x0011 */ OBJECT_UNSET_11,
/* 0x0012 */ OBJECT_BUBBLE,
/* 0x0013 */ OBJECT_NIW,
/* 0x0014 */ OBJECT_LINK_BOY,
/* 0x0015 */ OBJECT_LINK_CHILD,
/* 0x0016 */ OBJECT_TITE,
/* 0x0017 */ OBJECT_REEBA,
/* 0x0018 */ OBJECT_PEEHAT,
/* 0x0019 */ OBJECT_KINGDODONGO,
/* 0x001A */ OBJECT_HORSE,
/* 0x001B */ OBJECT_ZF,
/* 0x001C */ OBJECT_GOMA,
/* 0x001D */ OBJECT_ZL1,
/* 0x001E */ OBJECT_GOL,
/* 0x001F */ OBJECT_DODOJR,
/* 0x0020 */ OBJECT_TORCH2,
/* 0x0021 */ OBJECT_BL,
/* 0x0022 */ OBJECT_TP,
/* 0x0023 */ OBJECT_OA1,
/* 0x0024 */ OBJECT_ST,
/* 0x0025 */ OBJECT_BW,
/* 0x0026 */ OBJECT_EI,
/* 0x0027 */ OBJECT_HORSE_NORMAL,
/* 0x0028 */ OBJECT_OB1,
/* 0x0029 */ OBJECT_O_ANIME,
/* 0x002A */ OBJECT_SPOT04_OBJECTS,
/* 0x002B */ OBJECT_DDAN_OBJECTS,
/* 0x002C */ OBJECT_HIDAN_OBJECTS,
/* 0x002D */ OBJECT_HORSE_GANON,
/* 0x002E */ OBJECT_OA2,
/* 0x002F */ OBJECT_SPOT00_OBJECTS,
/* 0x0030 */ OBJECT_MB,
/* 0x0031 */ OBJECT_BOMBF,
/* 0x0032 */ OBJECT_SK2,
/* 0x0033 */ OBJECT_OE1,
/* 0x0034 */ OBJECT_OE_ANIME,
/* 0x0035 */ OBJECT_OE2,
/* 0x0036 */ OBJECT_YDAN_OBJECTS,
/* 0x0037 */ OBJECT_GND,
/* 0x0038 */ OBJECT_AM,
/* 0x0039 */ OBJECT_DEKUBABA,
/* 0x003A */ OBJECT_UNSET_3A,
/* 0x003B */ OBJECT_OA3,
/* 0x003C */ OBJECT_OA4,
/* 0x003D */ OBJECT_OA5,
/* 0x003E */ OBJECT_OA6,
/* 0x003F */ OBJECT_OA7,
/* 0x0040 */ OBJECT_JJ,
/* 0x0041 */ OBJECT_OA8,
/* 0x0042 */ OBJECT_OA9,
/* 0x0043 */ OBJECT_OB2,
/* 0x0044 */ OBJECT_OB3,
/* 0x0045 */ OBJECT_OB4,
/* 0x0046 */ OBJECT_HORSE_ZELDA,
/* 0x0047 */ OBJECT_OPENING_DEMO1,
/* 0x0048 */ OBJECT_WARP1,
/* 0x0049 */ OBJECT_B_HEART,
/* 0x004A */ OBJECT_DEKUNUTS,
/* 0x004B */ OBJECT_OE3,
/* 0x004C */ OBJECT_OE4,
/* 0x004D */ OBJECT_MENKURI_OBJECTS,
/* 0x004E */ OBJECT_OE5,
/* 0x004F */ OBJECT_OE6,
/* 0x0050 */ OBJECT_OE7,
/* 0x0051 */ OBJECT_OE8,
/* 0x0052 */ OBJECT_OE9,
/* 0x0053 */ OBJECT_OE10,
/* 0x0054 */ OBJECT_OE11,
/* 0x0055 */ OBJECT_OE12,
/* 0x0056 */ OBJECT_VALI,
/* 0x0057 */ OBJECT_OA10,
/* 0x0058 */ OBJECT_OA11,
/* 0x0059 */ OBJECT_MIZU_OBJECTS,
/* 0x005A */ OBJECT_FHG,
/* 0x005B */ OBJECT_OSSAN,
/* 0x005C */ OBJECT_MORI_HINERI1,
/* 0x005D */ OBJECT_BB,
/* 0x005E */ OBJECT_TOKI_OBJECTS,
/* 0x005F */ OBJECT_YUKABYUN,
/* 0x0060 */ OBJECT_ZL2,
/* 0x0061 */ OBJECT_MJIN,
/* 0x0062 */ OBJECT_MJIN_FLASH,
/* 0x0063 */ OBJECT_MJIN_DARK,
/* 0x0064 */ OBJECT_MJIN_FLAME,
/* 0x0065 */ OBJECT_MJIN_ICE,
/* 0x0066 */ OBJECT_MJIN_SOUL,
/* 0x0067 */ OBJECT_MJIN_WIND,
/* 0x0068 */ OBJECT_MJIN_OKA,
/* 0x0069 */ OBJECT_HAKA_OBJECTS,
/* 0x006A */ OBJECT_SPOT06_OBJECTS,
/* 0x006B */ OBJECT_ICE_OBJECTS,
/* 0x006C */ OBJECT_RELAY_OBJECTS,
/* 0x006D */ OBJECT_PO_FIELD,
/* 0x006E */ OBJECT_PO_COMPOSER,
/* 0x006F */ OBJECT_MORI_HINERI1A,
/* 0x0070 */ OBJECT_MORI_HINERI2,
/* 0x0071 */ OBJECT_MORI_HINERI2A,
/* 0x0072 */ OBJECT_MORI_OBJECTS,
/* 0x0073 */ OBJECT_MORI_TEX,
/* 0x0074 */ OBJECT_SPOT08_OBJ,
/* 0x0075 */ OBJECT_WARP2,
/* 0x0076 */ OBJECT_HATA,
/* 0x0077 */ OBJECT_BIRD,
/* 0x0078 */ OBJECT_UNSET_78,
/* 0x0079 */ OBJECT_UNSET_79,
/* 0x007A */ OBJECT_UNSET_7A,
/* 0x007B */ OBJECT_UNSET_7B,
/* 0x007C */ OBJECT_WOOD02,
/* 0x007D */ OBJECT_UNSET_7D,
/* 0x007E */ OBJECT_UNSET_7E,
/* 0x007F */ OBJECT_UNSET_7F,
/* 0x0080 */ OBJECT_UNSET_80,
/* 0x0081 */ OBJECT_LIGHTBOX,
/* 0x0082 */ OBJECT_PU_BOX,
/* 0x0083 */ OBJECT_UNSET_83,
/* 0x0084 */ OBJECT_UNSET_84,
/* 0x0085 */ OBJECT_TRAP,
/* 0x0086 */ OBJECT_VASE,
/* 0x0087 */ OBJECT_IM,
/* 0x0088 */ OBJECT_TA,
/* 0x0089 */ OBJECT_TK,
/* 0x008A */ OBJECT_XC,
/* 0x008B */ OBJECT_VM,
/* 0x008C */ OBJECT_BV,
/* 0x008D */ OBJECT_HAKACH_OBJECTS,
/* 0x008E */ OBJECT_EFC_CRYSTAL_LIGHT,
/* 0x008F */ OBJECT_EFC_FIRE_BALL,
/* 0x0090 */ OBJECT_EFC_FLASH,
/* 0x0091 */ OBJECT_EFC_LGT_SHOWER,
/* 0x0092 */ OBJECT_EFC_STAR_FIELD,
/* 0x0093 */ OBJECT_GOD_LGT,
/* 0x0094 */ OBJECT_LIGHT_RING,
/* 0x0095 */ OBJECT_TRIFORCE_SPOT,
/* 0x0096 */ OBJECT_BDAN_OBJECTS,
/* 0x0097 */ OBJECT_SD,
/* 0x0098 */ OBJECT_RD,
/* 0x0099 */ OBJECT_PO_SISTERS,
/* 0x009A */ OBJECT_HEAVY_OBJECT,
/* 0x009B */ OBJECT_GNDD,
/* 0x009C */ OBJECT_FD,
/* 0x009D */ OBJECT_DU,
/* 0x009E */ OBJECT_FW,
/* 0x009F */ OBJECT_MEDAL,
/* 0x00A0 */ OBJECT_HORSE_LINK_CHILD,
/* 0x00A1 */ OBJECT_SPOT02_OBJECTS,
/* 0x00A2 */ OBJECT_HAKA,
/* 0x00A3 */ OBJECT_RU1,
/* 0x00A4 */ OBJECT_SYOKUDAI,
/* 0x00A5 */ OBJECT_FD2,
/* 0x00A6 */ OBJECT_DH,
/* 0x00A7 */ OBJECT_RL,
/* 0x00A8 */ OBJECT_EFC_TW,
/* 0x00A9 */ OBJECT_DEMO_TRE_LGT,
/* 0x00AA */ OBJECT_GI_KEY,
/* 0x00AB */ OBJECT_MIR_RAY,
/* 0x00AC */ OBJECT_BROB,
/* 0x00AD */ OBJECT_GI_JEWEL,
/* 0x00AE */ OBJECT_SPOT09_OBJ,
/* 0x00AF */ OBJECT_SPOT18_OBJ,
/* 0x00B0 */ OBJECT_BDOOR,
/* 0x00B1 */ OBJECT_SPOT17_OBJ,
/* 0x00B2 */ OBJECT_SHOP_DUNGEN,
/* 0x00B3 */ OBJECT_NB,
/* 0x00B4 */ OBJECT_MO,
/* 0x00B5 */ OBJECT_SB,
/* 0x00B6 */ OBJECT_GI_MELODY,
/* 0x00B7 */ OBJECT_GI_HEART,
/* 0x00B8 */ OBJECT_GI_COMPASS,
/* 0x00B9 */ OBJECT_GI_BOSSKEY,
/* 0x00BA */ OBJECT_GI_MEDAL,
/* 0x00BB */ OBJECT_GI_NUTS,
/* 0x00BC */ OBJECT_SA,
/* 0x00BD */ OBJECT_GI_HEARTS,
/* 0x00BE */ OBJECT_GI_ARROWCASE,
/* 0x00BF */ OBJECT_GI_BOMBPOUCH,
/* 0x00C0 */ OBJECT_IN,
/* 0x00C1 */ OBJECT_TR,
/* 0x00C2 */ OBJECT_SPOT16_OBJ,
/* 0x00C3 */ OBJECT_OE1S,
/* 0x00C4 */ OBJECT_OE4S,
/* 0x00C5 */ OBJECT_OS_ANIME,
/* 0x00C6 */ OBJECT_GI_BOTTLE,
/* 0x00C7 */ OBJECT_GI_STICK,
/* 0x00C8 */ OBJECT_GI_MAP,
/* 0x00C9 */ OBJECT_OF1D_MAP,
/* 0x00CA */ OBJECT_RU2,
/* 0x00CB */ OBJECT_GI_SHIELD_1,
/* 0x00CC */ OBJECT_DEKUJR,
/* 0x00CD */ OBJECT_GI_MAGICPOT,
/* 0x00CE */ OBJECT_GI_BOMB_1,
/* 0x00CF */ OBJECT_OF1S,
/* 0x00D0 */ OBJECT_MA2,
/* 0x00D1 */ OBJECT_GI_PURSE,
/* 0x00D2 */ OBJECT_HNI,
/* 0x00D3 */ OBJECT_TW,
/* 0x00D4 */ OBJECT_RR,
/* 0x00D5 */ OBJECT_BXA,
/* 0x00D6 */ OBJECT_ANUBICE,
/* 0x00D7 */ OBJECT_GI_GERUDO,
/* 0x00D8 */ OBJECT_GI_ARROW,
/* 0x00D9 */ OBJECT_GI_BOMB_2,
/* 0x00DA */ OBJECT_GI_EGG,
/* 0x00DB */ OBJECT_GI_SCALE,
/* 0x00DC */ OBJECT_GI_SHIELD_2,
/* 0x00DD */ OBJECT_GI_HOOKSHOT,
/* 0x00DE */ OBJECT_GI_OCARINA,
/* 0x00DF */ OBJECT_GI_MILK,
/* 0x00E0 */ OBJECT_MA1,
/* 0x00E1 */ OBJECT_GANON,
/* 0x00E2 */ OBJECT_SST,
/* 0x00E3 */ OBJECT_NY_UNUSED,
/* 0x00E4 */ OBJECT_UNSET_E4,
/* 0x00E5 */ OBJECT_NY,
/* 0x00E6 */ OBJECT_FR,
/* 0x00E7 */ OBJECT_GI_PACHINKO,
/* 0x00E8 */ OBJECT_GI_BOOMERANG,
/* 0x00E9 */ OBJECT_GI_BOW,
/* 0x00EA */ OBJECT_GI_GLASSES,
/* 0x00EB */ OBJECT_GI_LIQUID,
/* 0x00EC */ OBJECT_ANI,
/* 0x00ED */ OBJECT_DEMO_6K,
/* 0x00EE */ OBJECT_GI_SHIELD_3,
/* 0x00EF */ OBJECT_GI_LETTER,
/* 0x00F0 */ OBJECT_SPOT15_OBJ,
/* 0x00F1 */ OBJECT_JYA_OBJ,
/* 0x00F2 */ OBJECT_GI_CLOTHES,
/* 0x00F3 */ OBJECT_GI_BEAN,
/* 0x00F4 */ OBJECT_GI_FISH,
/* 0x00F5 */ OBJECT_GI_SAW,
/* 0x00F6 */ OBJECT_GI_HAMMER,
/* 0x00F7 */ OBJECT_GI_GRASS,
/* 0x00F8 */ OBJECT_GI_LONGSWORD,
/* 0x00F9 */ OBJECT_SPOT01_OBJECTS,
/* 0x00FA */ OBJECT_MD_UNUSED,
/* 0x00FB */ OBJECT_MD,
/* 0x00FC */ OBJECT_KM1,
/* 0x00FD */ OBJECT_KW1,
/* 0x00FE */ OBJECT_ZO,
/* 0x00FF */ OBJECT_KZ,
/* 0x0100 */ OBJECT_UMAJUMP,
/* 0x0101 */ OBJECT_MASTERKOKIRI,
/* 0x0102 */ OBJECT_MASTERKOKIRIHEAD,
/* 0x0103 */ OBJECT_MASTERGOLON,
/* 0x0104 */ OBJECT_MASTERZOORA,
/* 0x0105 */ OBJECT_AOB,
/* 0x0106 */ OBJECT_IK,
/* 0x0107 */ OBJECT_AHG,
/* 0x0108 */ OBJECT_CNE,
/* 0x0109 */ OBJECT_GI_NIWATORI,
/* 0x010A */ OBJECT_SKJ,
/* 0x010B */ OBJECT_GI_BOTTLE_LETTER,
/* 0x010C */ OBJECT_BJI,
/* 0x010D */ OBJECT_BBA,
/* 0x010E */ OBJECT_GI_OCARINA_0,
/* 0x010F */ OBJECT_DS,
/* 0x0110 */ OBJECT_ANE,
/* 0x0111 */ OBJECT_BOJ,
/* 0x0112 */ OBJECT_SPOT03_OBJECT,
/* 0x0113 */ OBJECT_SPOT07_OBJECT,
/* 0x0114 */ OBJECT_FZ,
/* 0x0115 */ OBJECT_BOB,
/* 0x0116 */ OBJECT_GE1,
/* 0x0117 */ OBJECT_YABUSAME_POINT,
/* 0x0118 */ OBJECT_GI_BOOTS_2,
/* 0x0119 */ OBJECT_GI_SEED,
/* 0x011A */ OBJECT_GND_MAGIC,
/* 0x011B */ OBJECT_D_ELEVATOR,
/* 0x011C */ OBJECT_D_HSBLOCK,
/* 0x011D */ OBJECT_D_LIFT,
/* 0x011E */ OBJECT_MAMENOKI,
/* 0x011F */ OBJECT_GOROIWA,
/* 0x0120 */ OBJECT_UNSET_120,
/* 0x0121 */ OBJECT_TORYO,
/* 0x0122 */ OBJECT_DAIKU,
/* 0x0123 */ OBJECT_UNSET_123,
/* 0x0124 */ OBJECT_NWC,
/* 0x0125 */ OBJECT_BLKOBJ,
/* 0x0126 */ OBJECT_GM,
/* 0x0127 */ OBJECT_MS,
/* 0x0128 */ OBJECT_HS,
/* 0x0129 */ OBJECT_INGATE,
/* 0x012A */ OBJECT_LIGHTSWITCH,
/* 0x012B */ OBJECT_KUSA,
/* 0x012C */ OBJECT_TSUBO,
/* 0x012D */ OBJECT_GI_GLOVES,
/* 0x012E */ OBJECT_GI_COIN,
/* 0x012F */ OBJECT_KANBAN,
/* 0x0130 */ OBJECT_GJYO_OBJECTS,
/* 0x0131 */ OBJECT_OWL,
/* 0x0132 */ OBJECT_MK,
/* 0x0133 */ OBJECT_FU,
/* 0x0134 */ OBJECT_GI_KI_TAN_MASK,
/* 0x0135 */ OBJECT_GI_REDEAD_MASK,
/* 0x0136 */ OBJECT_GI_SKJ_MASK,
/* 0x0137 */ OBJECT_GI_RABIT_MASK,
/* 0x0138 */ OBJECT_GI_TRUTH_MASK,
/* 0x0139 */ OBJECT_GANON_OBJECTS,
/* 0x013A */ OBJECT_SIOFUKI,
/* 0x013B */ OBJECT_STREAM,
/* 0x013C */ OBJECT_MM,
/* 0x013D */ OBJECT_FA,
/* 0x013E */ OBJECT_OS,
/* 0x013F */ OBJECT_GI_EYE_LOTION,
/* 0x0140 */ OBJECT_GI_POWDER,
/* 0x0141 */ OBJECT_GI_MUSHROOM,
/* 0x0142 */ OBJECT_GI_TICKETSTONE,
/* 0x0143 */ OBJECT_GI_BROKENSWORD,
/* 0x0144 */ OBJECT_JS,
/* 0x0145 */ OBJECT_CS,
/* 0x0146 */ OBJECT_GI_PRESCRIPTION,
/* 0x0147 */ OBJECT_GI_BRACELET,
/* 0x0148 */ OBJECT_GI_SOLDOUT,
/* 0x0149 */ OBJECT_GI_FROG,
/* 0x014A */ OBJECT_MAG,
/* 0x014B */ OBJECT_DOOR_GERUDO,
/* 0x014C */ OBJECT_GT,
/* 0x014D */ OBJECT_EFC_ERUPC,
/* 0x014E */ OBJECT_ZL2_ANIME1,
/* 0x014F */ OBJECT_ZL2_ANIME2,
/* 0x0150 */ OBJECT_GI_GOLONMASK,
/* 0x0151 */ OBJECT_GI_ZORAMASK,
/* 0x0152 */ OBJECT_GI_GERUDOMASK,
/* 0x0153 */ OBJECT_GANON2,
/* 0x0154 */ OBJECT_KA,
/* 0x0155 */ OBJECT_TS,
/* 0x0156 */ OBJECT_ZG,
/* 0x0157 */ OBJECT_GI_HOVERBOOTS,
/* 0x0158 */ OBJECT_GI_M_ARROW,
/* 0x0159 */ OBJECT_DS2,
/* 0x015A */ OBJECT_EC,
/* 0x015B */ OBJECT_FISH,
/* 0x015C */ OBJECT_GI_SUTARU,
/* 0x015D */ OBJECT_GI_GODDESS,
/* 0x015E */ OBJECT_SSH,
/* 0x015F */ OBJECT_BIGOKUTA,
/* 0x0160 */ OBJECT_BG,
/* 0x0161 */ OBJECT_SPOT05_OBJECTS,
/* 0x0162 */ OBJECT_SPOT12_OBJ,
/* 0x0163 */ OBJECT_BOMBIWA,
/* 0x0164 */ OBJECT_HINTNUTS,
/* 0x0165 */ OBJECT_RS,
/* 0x0166 */ OBJECT_SPOT00_BREAK,
/* 0x0167 */ OBJECT_GLA,
/* 0x0168 */ OBJECT_SHOPNUTS,
/* 0x0169 */ OBJECT_GELDB,
/* 0x016A */ OBJECT_GR,
/* 0x016B */ OBJECT_DOG,
/* 0x016C */ OBJECT_JYA_IRON,
/* 0x016D */ OBJECT_JYA_DOOR,
/* 0x016E */ OBJECT_UNSET_16E,
/* 0x016F */ OBJECT_SPOT11_OBJ,
/* 0x0170 */ OBJECT_KIBAKO2,
/* 0x0171 */ OBJECT_DNS,
/* 0x0172 */ OBJECT_DNK,
/* 0x0173 */ OBJECT_GI_FIRE,
/* 0x0174 */ OBJECT_GI_INSECT,
/* 0x0175 */ OBJECT_GI_BUTTERFLY,
/* 0x0176 */ OBJECT_GI_GHOST,
/* 0x0177 */ OBJECT_GI_SOUL,
/* 0x0178 */ OBJECT_BOWL,
/* 0x0179 */ OBJECT_DEMO_KEKKAI,
/* 0x017A */ OBJECT_EFC_DOUGHNUT,
/* 0x017B */ OBJECT_GI_DEKUPOUCH,
/* 0x017C */ OBJECT_GANON_ANIME1,
/* 0x017D */ OBJECT_GANON_ANIME2,
/* 0x017E */ OBJECT_GANON_ANIME3,
/* 0x017F */ OBJECT_GI_RUPY,
/* 0x0180 */ OBJECT_SPOT01_MATOYA,
/* 0x0181 */ OBJECT_SPOT01_MATOYAB,
/* 0x0182 */ OBJECT_MU,
/* 0x0183 */ OBJECT_WF,
/* 0x0184 */ OBJECT_SKB,
/* 0x0185 */ OBJECT_GJ,
/* 0x0186 */ OBJECT_GEFF,
/* 0x0187 */ OBJECT_HAKA_DOOR,
/* 0x0188 */ OBJECT_GS,
/* 0x0189 */ OBJECT_PS,
/* 0x018A */ OBJECT_BWALL,
/* 0x018B */ OBJECT_COW,
/* 0x018C */ OBJECT_COB,
/* 0x018D */ OBJECT_GI_SWORD_1,
/* 0x018E */ OBJECT_DOOR_KILLER,
/* 0x018F */ OBJECT_OUKE_HAKA,
/* 0x0190 */ OBJECT_TIMEBLOCK,
/* 0x0191 */ OBJECT_ZL4,
/* 0x0192 */ OBJECT_ID_MAX
} ObjectID;
#endif