Add actor and scene enums (#8)

This commit is contained in:
Rozelette 2020-08-06 17:06:38 -05:00 committed by GitHub
parent e80336d4a8
commit f37da749f6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 866 additions and 57 deletions

View File

@ -3127,4 +3127,814 @@ typedef struct {
/* 0x14 */ Gfx* monoDl;
} VisMono; // size = 0x18
typedef enum {
/* 0x000 */ ACTOR_PLAYER,
/* 0x001 */ ACTOR_EN_TEST,
/* 0x002 */ ACTOR_EN_GIRLA,
/* 0x003 */ ACTOR_EN_PART,
/* 0x004 */ ACTOR_EN_LIGHT,
/* 0x005 */ ACTOR_EN_DOOR,
/* 0x006 */ ACTOR_EN_BOX,
/* 0x007 */ ACTOR_EN_PAMETFROG,
/* 0x008 */ ACTOR_EN_OKUTA,
/* 0x009 */ ACTOR_EN_BOM,
/* 0x00A */ ACTOR_EN_WALLMAS,
/* 0x00B */ ACTOR_EN_DODONGO,
/* 0x00C */ ACTOR_EN_FIREFLY,
/* 0x00D */ ACTOR_EN_HORSE,
/* 0x00E */ ACTOR_EN_ITEM00,
/* 0x00F */ ACTOR_EN_ARROW,
/* 0x010 */ ACTOR_EN_ELF,
/* 0x011 */ ACTOR_EN_NIW,
/* 0x012 */ ACTOR_EN_TITE,
/* 0x013 */ ACTOR_UNSET_13,
/* 0x014 */ ACTOR_EN_PEEHAT,
/* 0x015 */ ACTOR_EN_BUTTE,
/* 0x016 */ ACTOR_EN_INSECT,
/* 0x017 */ ACTOR_EN_FISH,
/* 0x018 */ ACTOR_EN_HOLL,
/* 0x019 */ ACTOR_EN_DINOFOS,
/* 0x01A */ ACTOR_EN_HATA,
/* 0x01B */ ACTOR_EN_ZL1,
/* 0x01C */ ACTOR_EN_VIEWER,
/* 0x01D */ ACTOR_EN_BUBBLE,
/* 0x01E */ ACTOR_DOOR_SHUTTER,
/* 0x01F */ ACTOR_UNSET_1F,
/* 0x020 */ ACTOR_EN_BOOM,
/* 0x021 */ ACTOR_EN_TORCH2,
/* 0x022 */ ACTOR_EN_MINIFROG,
/* 0x023 */ ACTOR_UNSET_23,
/* 0x024 */ ACTOR_EN_ST,
/* 0x025 */ ACTOR_UNSET_25,
/* 0x026 */ ACTOR_EN_A_OBJ,
/* 0x027 */ ACTOR_OBJ_WTURN,
/* 0x028 */ ACTOR_EN_RIVER_SOUND,
/* 0x029 */ ACTOR_UNSET_29,
/* 0x02A */ ACTOR_EN_OSSAN,
/* 0x02B */ ACTOR_UNSET_2B,
/* 0x02C */ ACTOR_UNSET_2C,
/* 0x02D */ ACTOR_EN_FAMOS,
/* 0x02E */ ACTOR_UNSET_2E,
/* 0x02F */ ACTOR_EN_BOMBF,
/* 0x030 */ ACTOR_UNSET_30,
/* 0x031 */ ACTOR_UNSET_31,
/* 0x032 */ ACTOR_EN_AM,
/* 0x033 */ ACTOR_EN_DEKUBABA,
/* 0x034 */ ACTOR_EN_M_FIRE1,
/* 0x035 */ ACTOR_EN_M_THUNDER,
/* 0x036 */ ACTOR_BG_BREAKWALL,
/* 0x037 */ ACTOR_UNSET_37,
/* 0x038 */ ACTOR_DOOR_WARP1,
/* 0x039 */ ACTOR_OBJ_SYOKUDAI,
/* 0x03A */ ACTOR_ITEM_B_HEART,
/* 0x03B */ ACTOR_EN_DEKUNUTS,
/* 0x03C */ ACTOR_EN_BBFALL,
/* 0x03D */ ACTOR_ARMS_HOOK,
/* 0x03E */ ACTOR_EN_BB,
/* 0x03F */ ACTOR_BG_KEIKOKU_SPR,
/* 0x040 */ ACTOR_UNSET_40,
/* 0x041 */ ACTOR_EN_WOOD02,
/* 0x042 */ ACTOR_UNSET_42,
/* 0x043 */ ACTOR_EN_DEATH,
/* 0x044 */ ACTOR_EN_MINIDEATH,
/* 0x045 */ ACTOR_UNSET_45,
/* 0x046 */ ACTOR_UNSET_46,
/* 0x047 */ ACTOR_EN_VM,
/* 0x048 */ ACTOR_DEMO_EFFECT,
/* 0x049 */ ACTOR_DEMO_KANKYO,
/* 0x04A */ ACTOR_EN_FLOORMAS,
/* 0x04B */ ACTOR_UNSET_4B,
/* 0x04C */ ACTOR_EN_RD,
/* 0x04D */ ACTOR_BG_F40_FLIFT,
/* 0x04E */ ACTOR_UNSET_4E,
/* 0x04F */ ACTOR_OBJ_MURE,
/* 0x050 */ ACTOR_EN_SW,
/* 0x051 */ ACTOR_OBJECT_KANKYO,
/* 0x052 */ ACTOR_UNSET_52,
/* 0x053 */ ACTOR_UNSET_53,
/* 0x054 */ ACTOR_EN_HORSE_LINK_CHILD,
/* 0x055 */ ACTOR_DOOR_ANA,
/* 0x056 */ ACTOR_UNSET_56,
/* 0x057 */ ACTOR_UNSET_57,
/* 0x058 */ ACTOR_UNSET_58,
/* 0x059 */ ACTOR_UNSET_59,
/* 0x05A */ ACTOR_UNSET_5A,
/* 0x05B */ ACTOR_EN_ENCOUNT1,
/* 0x05C */ ACTOR_DEMO_TRE_LGT,
/* 0x05D */ ACTOR_UNSET_5D,
/* 0x05E */ ACTOR_UNSET_5E,
/* 0x05F */ ACTOR_EN_ENCOUNT2,
/* 0x060 */ ACTOR_EN_FIRE_ROCK,
/* 0x061 */ ACTOR_BG_CTOWER_ROT,
/* 0x062 */ ACTOR_MIR_RAY,
/* 0x063 */ ACTOR_UNSET_63,
/* 0x064 */ ACTOR_EN_SB,
/* 0x065 */ ACTOR_EN_BIGSLIME,
/* 0x066 */ ACTOR_EN_KAREBABA,
/* 0x067 */ ACTOR_EN_IN,
/* 0x068 */ ACTOR_UNSET_68,
/* 0x069 */ ACTOR_EN_RU,
/* 0x06A */ ACTOR_EN_BOM_CHU,
/* 0x06B */ ACTOR_EN_HORSE_GAME_CHECK,
/* 0x06C */ ACTOR_EN_RR,
/* 0x06D */ ACTOR_UNSET_6D,
/* 0x06E */ ACTOR_UNSET_6E,
/* 0x06F */ ACTOR_UNSET_6F,
/* 0x070 */ ACTOR_UNSET_70,
/* 0x071 */ ACTOR_UNSET_71,
/* 0x072 */ ACTOR_UNSET_72,
/* 0x073 */ ACTOR_EN_FR,
/* 0x074 */ ACTOR_UNSET_74,
/* 0x075 */ ACTOR_UNSET_75,
/* 0x076 */ ACTOR_UNSET_76,
/* 0x077 */ ACTOR_UNSET_77,
/* 0x078 */ ACTOR_UNSET_78,
/* 0x079 */ ACTOR_UNSET_79,
/* 0x07A */ ACTOR_OBJ_OSHIHIKI,
/* 0x07B */ ACTOR_EFF_DUST,
/* 0x07C */ ACTOR_BG_UMAJUMP,
/* 0x07D */ ACTOR_ARROW_FIRE,
/* 0x07E */ ACTOR_ARROW_ICE,
/* 0x07F */ ACTOR_ARROW_LIGHT,
/* 0x080 */ ACTOR_ITEM_ETCETERA,
/* 0x081 */ ACTOR_OBJ_KIBAKO,
/* 0x082 */ ACTOR_OBJ_TSUBO,
/* 0x083 */ ACTOR_UNSET_83,
/* 0x084 */ ACTOR_EN_IK,
/* 0x085 */ ACTOR_UNSET_85,
/* 0x086 */ ACTOR_UNSET_86,
/* 0x087 */ ACTOR_UNSET_87,
/* 0x088 */ ACTOR_UNSET_88,
/* 0x089 */ ACTOR_DEMO_SHD,
/* 0x08A */ ACTOR_EN_DNS,
/* 0x08B */ ACTOR_ELF_MSG,
/* 0x08C */ ACTOR_EN_HONOTRAP,
/* 0x08D */ ACTOR_EN_TUBO_TRAP,
/* 0x08E */ ACTOR_OBJ_ICE_POLY,
/* 0x08F */ ACTOR_EN_FZ,
/* 0x090 */ ACTOR_EN_KUSA,
/* 0x091 */ ACTOR_OBJ_BEAN,
/* 0x092 */ ACTOR_OBJ_BOMBIWA,
/* 0x093 */ ACTOR_OBJ_SWITCH,
/* 0x094 */ ACTOR_UNSET_94,
/* 0x095 */ ACTOR_OBJ_LIFT,
/* 0x096 */ ACTOR_OBJ_HSBLOCK,
/* 0x097 */ ACTOR_EN_OKARINA_TAG,
/* 0x098 */ ACTOR_UNSET_98,
/* 0x099 */ ACTOR_EN_GOROIWA,
/* 0x09A */ ACTOR_UNSET_9A,
/* 0x09B */ ACTOR_UNSET_9B,
/* 0x09C */ ACTOR_EN_DAIKU,
/* 0x09D */ ACTOR_EN_NWC,
/* 0x09E */ ACTOR_ITEM_INBOX,
/* 0x09F */ ACTOR_EN_GE1,
/* 0x0A0 */ ACTOR_OBJ_BLOCKSTOP,
/* 0x0A1 */ ACTOR_EN_SDA,
/* 0x0A2 */ ACTOR_EN_CLEAR_TAG,
/* 0x0A3 */ ACTOR_UNSET_A3,
/* 0x0A4 */ ACTOR_EN_GM,
/* 0x0A5 */ ACTOR_EN_MS,
/* 0x0A6 */ ACTOR_EN_HS,
/* 0x0A7 */ ACTOR_BG_INGATE,
/* 0x0A8 */ ACTOR_EN_KANBAN,
/* 0x0A9 */ ACTOR_UNSET_A9,
/* 0x0AA */ ACTOR_EN_ATTACK_NIW,
/* 0x0AB */ ACTOR_UNSET_AB,
/* 0x0AC */ ACTOR_UNSET_AC,
/* 0x0AD */ ACTOR_UNSET_AD,
/* 0x0AE */ ACTOR_EN_MK,
/* 0x0AF */ ACTOR_EN_OWL,
/* 0x0B0 */ ACTOR_EN_ISHI,
/* 0x0B1 */ ACTOR_OBJ_HANA,
/* 0x0B2 */ ACTOR_OBJ_LIGHTSWITCH,
/* 0x0B3 */ ACTOR_OBJ_MURE2,
/* 0x0B4 */ ACTOR_UNSET_B4,
/* 0x0B5 */ ACTOR_EN_FU,
/* 0x0B6 */ ACTOR_UNSET_B6,
/* 0x0B7 */ ACTOR_UNSET_B7,
/* 0x0B8 */ ACTOR_EN_STREAM,
/* 0x0B9 */ ACTOR_EN_MM,
/* 0x0BA */ ACTOR_UNSET_BA,
/* 0x0BB */ ACTOR_UNSET_BB,
/* 0x0BC */ ACTOR_EN_WEATHER_TAG,
/* 0x0BD */ ACTOR_EN_ANI,
/* 0x0BE */ ACTOR_UNSET_BE,
/* 0x0BF */ ACTOR_EN_JS,
/* 0x0C0 */ ACTOR_UNSET_C0,
/* 0x0C1 */ ACTOR_UNSET_C1,
/* 0x0C2 */ ACTOR_UNSET_C2,
/* 0x0C3 */ ACTOR_UNSET_C3,
/* 0x0C4 */ ACTOR_EN_OKARINA_EFFECT,
/* 0x0C5 */ ACTOR_EN_MAG,
/* 0x0C6 */ ACTOR_ELF_MSG2,
/* 0x0C7 */ ACTOR_BG_F40_SWLIFT,
/* 0x0C8 */ ACTOR_UNSET_C8,
/* 0x0C9 */ ACTOR_UNSET_C9,
/* 0x0CA */ ACTOR_EN_KAKASI,
/* 0x0CB */ ACTOR_OBJ_MAKEOSHIHIKI,
/* 0x0CC */ ACTOR_OCEFF_SPOT,
/* 0x0CD */ ACTOR_UNSET_CD,
/* 0x0CE */ ACTOR_EN_TORCH,
/* 0x0CF */ ACTOR_UNSET_CF,
/* 0x0D0 */ ACTOR_SHOT_SUN,
/* 0x0D1 */ ACTOR_UNSET_D1,
/* 0x0D2 */ ACTOR_UNSET_D2,
/* 0x0D3 */ ACTOR_OBJ_ROOMTIMER,
/* 0x0D4 */ ACTOR_EN_SSH,
/* 0x0D5 */ ACTOR_UNSET_D5,
/* 0x0D6 */ ACTOR_OCEFF_WIPE,
/* 0x0D7 */ ACTOR_OCEFF_STORM,
/* 0x0D8 */ ACTOR_OBJ_DEMO,
/* 0x0D9 */ ACTOR_EN_MINISLIME,
/* 0x0DA */ ACTOR_EN_NUTSBALL,
/* 0x0DB */ ACTOR_UNSET_DB,
/* 0x0DC */ ACTOR_UNSET_DC,
/* 0x0DD */ ACTOR_UNSET_DD,
/* 0x0DE */ ACTOR_UNSET_DE,
/* 0x0DF */ ACTOR_OCEFF_WIPE2,
/* 0x0E0 */ ACTOR_OCEFF_WIPE3,
/* 0x0E1 */ ACTOR_UNSET_E1,
/* 0x0E2 */ ACTOR_EN_DG,
/* 0x0E3 */ ACTOR_EN_SI,
/* 0x0E4 */ ACTOR_OBJ_COMB,
/* 0x0E5 */ ACTOR_OBJ_KIBAKO2,
/* 0x0E6 */ ACTOR_UNSET_E6,
/* 0x0E7 */ ACTOR_EN_HS2,
/* 0x0E8 */ ACTOR_OBJ_MURE3,
/* 0x0E9 */ ACTOR_EN_TG,
/* 0x0EA */ ACTOR_UNSET_EA,
/* 0x0EB */ ACTOR_UNSET_EB,
/* 0x0EC */ ACTOR_EN_WF,
/* 0x0ED */ ACTOR_EN_SKB,
/* 0x0EE */ ACTOR_UNSET_EE,
/* 0x0EF */ ACTOR_EN_GS,
/* 0x0F0 */ ACTOR_OBJ_SOUND,
/* 0x0F1 */ ACTOR_EN_CROW,
/* 0x0F2 */ ACTOR_UNSET_F2,
/* 0x0F3 */ ACTOR_EN_COW,
/* 0x0F4 */ ACTOR_UNSET_F4,
/* 0x0F5 */ ACTOR_UNSET_F5,
/* 0x0F6 */ ACTOR_OCEFF_WIPE4,
/* 0x0F7 */ ACTOR_UNSET_F7,
/* 0x0F8 */ ACTOR_EN_ZO,
/* 0x0F9 */ ACTOR_OBJ_MAKEKINSUTA,
/* 0x0FA */ ACTOR_EN_GE3,
/* 0x0FB */ ACTOR_UNSET_FB,
/* 0x0FC */ ACTOR_OBJ_HAMISHI,
/* 0x0FD */ ACTOR_EN_ZL4,
/* 0x0FE */ ACTOR_EN_MM2,
/* 0x0FF */ ACTOR_UNSET_FF,
/* 0x100 */ ACTOR_DOOR_SPIRAL,
/* 0x101 */ ACTOR_UNSET_101,
/* 0x102 */ ACTOR_OBJ_PZLBLOCK,
/* 0x103 */ ACTOR_OBJ_TOGE,
/* 0x104 */ ACTOR_UNSET_104,
/* 0x105 */ ACTOR_OBJ_ARMOS,
/* 0x106 */ ACTOR_OBJ_BOYO,
/* 0x107 */ ACTOR_UNSET_107,
/* 0x108 */ ACTOR_UNSET_108,
/* 0x109 */ ACTOR_EN_GRASSHOPPER,
/* 0x10A */ ACTOR_UNSET_10A,
/* 0x10B */ ACTOR_OBJ_GRASS,
/* 0x10C */ ACTOR_OBJ_GRASS_CARRY,
/* 0x10D */ ACTOR_OBJ_GRASS_UNIT,
/* 0x10E */ ACTOR_UNSET_10E,
/* 0x10F */ ACTOR_UNSET_10F,
/* 0x110 */ ACTOR_BG_FIRE_WALL,
/* 0x111 */ ACTOR_EN_BU,
/* 0x112 */ ACTOR_EN_ENCOUNT3,
/* 0x113 */ ACTOR_EN_JSO,
/* 0x114 */ ACTOR_OBJ_CHIKUWA,
/* 0x115 */ ACTOR_EN_KNIGHT,
/* 0x116 */ ACTOR_EN_WARP_TAG,
/* 0x117 */ ACTOR_EN_AOB_01,
/* 0x118 */ ACTOR_EN_BOJ_01,
/* 0x119 */ ACTOR_EN_BOJ_02,
/* 0x11A */ ACTOR_EN_BOJ_03,
/* 0x11B */ ACTOR_EN_ENCOUNT4,
/* 0x11C */ ACTOR_EN_BOM_BOWL_MAN,
/* 0x11D */ ACTOR_EN_SYATEKI_MAN,
/* 0x11E */ ACTOR_UNSET_11E,
/* 0x11F */ ACTOR_BG_ICICLE,
/* 0x120 */ ACTOR_EN_SYATEKI_CROW,
/* 0x121 */ ACTOR_EN_BOJ_04,
/* 0x122 */ ACTOR_EN_CNE_01,
/* 0x123 */ ACTOR_EN_BBA_01,
/* 0x124 */ ACTOR_EN_BJI_01,
/* 0x125 */ ACTOR_BG_SPDWEB,
/* 0x126 */ ACTOR_UNSET_126,
/* 0x127 */ ACTOR_UNSET_127,
/* 0x128 */ ACTOR_EN_MT_TAG,
/* 0x129 */ ACTOR_BOSS_01,
/* 0x12A */ ACTOR_BOSS_02,
/* 0x12B */ ACTOR_BOSS_03,
/* 0x12C */ ACTOR_BOSS_04,
/* 0x12D */ ACTOR_BOSS_05,
/* 0x12E */ ACTOR_BOSS_06,
/* 0x12F */ ACTOR_BOSS_07,
/* 0x130 */ ACTOR_BG_DY_YOSEIZO,
/* 0x131 */ ACTOR_UNSET_131,
/* 0x132 */ ACTOR_EN_BOJ_05,
/* 0x133 */ ACTOR_UNSET_133,
/* 0x134 */ ACTOR_UNSET_134,
/* 0x135 */ ACTOR_EN_SOB1,
/* 0x136 */ ACTOR_UNSET_136,
/* 0x137 */ ACTOR_UNSET_137,
/* 0x138 */ ACTOR_EN_GO,
/* 0x139 */ ACTOR_UNSET_139,
/* 0x13A */ ACTOR_EN_RAF,
/* 0x13B */ ACTOR_OBJ_FUNEN,
/* 0x13C */ ACTOR_OBJ_RAILLIFT,
/* 0x13D */ ACTOR_BG_NUMA_HANA,
/* 0x13E */ ACTOR_OBJ_FLOWERPOT,
/* 0x13F */ ACTOR_OBJ_SPINYROLL,
/* 0x140 */ ACTOR_DM_HINA,
/* 0x141 */ ACTOR_EN_SYATEKI_WF,
/* 0x142 */ ACTOR_OBJ_SKATEBLOCK,
/* 0x143 */ ACTOR_OBJ_ICEBLOCK,
/* 0x144 */ ACTOR_EN_BIGPAMET,
/* 0x145 */ ACTOR_EN_SYATEKI_DEKUNUTS,
/* 0x146 */ ACTOR_ELF_MSG3,
/* 0x147 */ ACTOR_EN_FG,
/* 0x148 */ ACTOR_DM_RAVINE,
/* 0x149 */ ACTOR_DM_SA,
/* 0x14A */ ACTOR_EN_SLIME,
/* 0x14B */ ACTOR_EN_PR,
/* 0x14C */ ACTOR_OBJ_TOUDAI,
/* 0x14D */ ACTOR_OBJ_ENTOTU,
/* 0x14E */ ACTOR_OBJ_BELL,
/* 0x14F */ ACTOR_EN_SYATEKI_OKUTA,
/* 0x150 */ ACTOR_UNSET_150,
/* 0x151 */ ACTOR_OBJ_SHUTTER,
/* 0x152 */ ACTOR_DM_ZL,
/* 0x153 */ ACTOR_EN_ELFGRP,
/* 0x154 */ ACTOR_DM_TSG,
/* 0x155 */ ACTOR_EN_BAGUO,
/* 0x156 */ ACTOR_OBJ_VSPINYROLL,
/* 0x157 */ ACTOR_OBJ_SMORK,
/* 0x158 */ ACTOR_EN_TEST2,
/* 0x159 */ ACTOR_EN_TEST3,
/* 0x15A */ ACTOR_EN_TEST4,
/* 0x15B */ ACTOR_EN_BAT,
/* 0x15C */ ACTOR_EN_SEKIHI,
/* 0x15D */ ACTOR_EN_WIZ,
/* 0x15E */ ACTOR_EN_WIZ_BROCK,
/* 0x15F */ ACTOR_EN_WIZ_FIRE,
/* 0x160 */ ACTOR_EFF_CHANGE,
/* 0x161 */ ACTOR_DM_STATUE,
/* 0x162 */ ACTOR_OBJ_FIRESHIELD,
/* 0x163 */ ACTOR_BG_LADDER,
/* 0x164 */ ACTOR_EN_MKK,
/* 0x165 */ ACTOR_DEMO_GETITEM,
/* 0x166 */ ACTOR_UNSET_166,
/* 0x167 */ ACTOR_EN_DNB,
/* 0x168 */ ACTOR_EN_DNH,
/* 0x169 */ ACTOR_EN_DNK,
/* 0x16A */ ACTOR_EN_DNQ,
/* 0x16B */ ACTOR_UNSET_16B,
/* 0x16C */ ACTOR_BG_KEIKOKU_SAKU,
/* 0x16D */ ACTOR_OBJ_HUGEBOMBIWA,
/* 0x16E */ ACTOR_EN_FIREFLY2,
/* 0x16F */ ACTOR_EN_RAT,
/* 0x170 */ ACTOR_EN_WATER_EFFECT,
/* 0x171 */ ACTOR_EN_KUSA2,
/* 0x172 */ ACTOR_BG_SPOUT_FIRE,
/* 0x173 */ ACTOR_UNSET_173,
/* 0x174 */ ACTOR_BG_DBLUE_MOVEBG,
/* 0x175 */ ACTOR_EN_DY_EXTRA,
/* 0x176 */ ACTOR_EN_BAL,
/* 0x177 */ ACTOR_EN_GINKO_MAN,
/* 0x178 */ ACTOR_EN_WARP_UZU,
/* 0x179 */ ACTOR_OBJ_DRIFTICE,
/* 0x17A */ ACTOR_EN_LOOK_NUTS,
/* 0x17B */ ACTOR_EN_MUSHI2,
/* 0x17C */ ACTOR_EN_FALL,
/* 0x17D */ ACTOR_EN_MM3,
/* 0x17E */ ACTOR_BG_CRACE_MOVEBG,
/* 0x17F */ ACTOR_EN_DNO,
/* 0x180 */ ACTOR_EN_PR2,
/* 0x181 */ ACTOR_EN_PRZ,
/* 0x182 */ ACTOR_EN_JSO2,
/* 0x183 */ ACTOR_OBJ_ETCETERA,
/* 0x184 */ ACTOR_EN_EGOL,
/* 0x185 */ ACTOR_OBJ_MINE,
/* 0x186 */ ACTOR_OBJ_PURIFY,
/* 0x187 */ ACTOR_EN_TRU,
/* 0x188 */ ACTOR_EN_TRT,
/* 0x189 */ ACTOR_UNSET_189,
/* 0x18A */ ACTOR_UNSET_18A,
/* 0x18B */ ACTOR_EN_TEST5,
/* 0x18C */ ACTOR_EN_TEST6,
/* 0x18D */ ACTOR_EN_AZ,
/* 0x18E */ ACTOR_EN_ESTONE,
/* 0x18F */ ACTOR_BG_HAKUGIN_POST,
/* 0x190 */ ACTOR_DM_OPSTAGE,
/* 0x191 */ ACTOR_DM_STK,
/* 0x192 */ ACTOR_DM_CHAR00,
/* 0x193 */ ACTOR_DM_CHAR01,
/* 0x194 */ ACTOR_DM_CHAR02,
/* 0x195 */ ACTOR_DM_CHAR03,
/* 0x196 */ ACTOR_DM_CHAR04,
/* 0x197 */ ACTOR_DM_CHAR05,
/* 0x198 */ ACTOR_DM_CHAR06,
/* 0x199 */ ACTOR_DM_CHAR07,
/* 0x19A */ ACTOR_DM_CHAR08,
/* 0x19B */ ACTOR_DM_CHAR09,
/* 0x19C */ ACTOR_OBJ_TOKEIDAI,
/* 0x19D */ ACTOR_UNSET_19D,
/* 0x19E */ ACTOR_EN_MNK,
/* 0x19F */ ACTOR_EN_EGBLOCK,
/* 0x1A0 */ ACTOR_EN_GUARD_NUTS,
/* 0x1A1 */ ACTOR_BG_HAKUGIN_BOMBWALL,
/* 0x1A2 */ ACTOR_OBJ_TOKEI_TOBIRA,
/* 0x1A3 */ ACTOR_BG_HAKUGIN_ELVPOLE,
/* 0x1A4 */ ACTOR_EN_MA4,
/* 0x1A5 */ ACTOR_EN_TWIG,
/* 0x1A6 */ ACTOR_EN_PO_FUSEN,
/* 0x1A7 */ ACTOR_EN_DOOR_ETC,
/* 0x1A8 */ ACTOR_EN_BIGOKUTA,
/* 0x1A9 */ ACTOR_BG_ICEFLOE,
/* 0x1AA */ ACTOR_OBJ_OCARINALIFT,
/* 0x1AB */ ACTOR_EN_TIME_TAG,
/* 0x1AC */ ACTOR_BG_OPEN_SHUTTER,
/* 0x1AD */ ACTOR_BG_OPEN_SPOT,
/* 0x1AE */ ACTOR_BG_FU_KAITEN,
/* 0x1AF */ ACTOR_OBJ_AQUA,
/* 0x1B0 */ ACTOR_EN_ELFORG,
/* 0x1B1 */ ACTOR_EN_ELFBUB,
/* 0x1B2 */ ACTOR_UNSET_1B2,
/* 0x1B3 */ ACTOR_EN_FU_MATO,
/* 0x1B4 */ ACTOR_EN_FU_KAGO,
/* 0x1B5 */ ACTOR_EN_OSN,
/* 0x1B6 */ ACTOR_BG_CTOWER_GEAR,
/* 0x1B7 */ ACTOR_EN_TRT2,
/* 0x1B8 */ ACTOR_OBJ_TOKEI_STEP,
/* 0x1B9 */ ACTOR_BG_LOTUS,
/* 0x1BA */ ACTOR_EN_KAME,
/* 0x1BB */ ACTOR_OBJ_TAKARAYA_WALL,
/* 0x1BC */ ACTOR_BG_FU_MIZU,
/* 0x1BD */ ACTOR_EN_SELLNUTS,
/* 0x1BE */ ACTOR_BG_DKJAIL_IVY,
/* 0x1BF */ ACTOR_UNSET_1BF,
/* 0x1C0 */ ACTOR_OBJ_VISIBLOCK,
/* 0x1C1 */ ACTOR_EN_TAKARAYA,
/* 0x1C2 */ ACTOR_EN_TSN,
/* 0x1C3 */ ACTOR_EN_DS2N,
/* 0x1C4 */ ACTOR_EN_FSN,
/* 0x1C5 */ ACTOR_EN_SHN,
/* 0x1C6 */ ACTOR_UNSET_1C6,
/* 0x1C7 */ ACTOR_EN_STOP_HEISHI,
/* 0x1C8 */ ACTOR_OBJ_BIGICICLE,
/* 0x1C9 */ ACTOR_EN_LIFT_NUTS,
/* 0x1CA */ ACTOR_EN_TK,
/* 0x1CB */ ACTOR_UNSET_1CB,
/* 0x1CC */ ACTOR_BG_MARKET_STEP,
/* 0x1CD */ ACTOR_OBJ_LUPYGAMELIFT,
/* 0x1CE */ ACTOR_EN_TEST7,
/* 0x1CF */ ACTOR_OBJ_LIGHTBLOCK,
/* 0x1D0 */ ACTOR_MIR_RAY2,
/* 0x1D1 */ ACTOR_EN_WDHAND,
/* 0x1D2 */ ACTOR_EN_GAMELUPY,
/* 0x1D3 */ ACTOR_BG_DANPEI_MOVEBG,
/* 0x1D4 */ ACTOR_EN_SNOWWD,
/* 0x1D5 */ ACTOR_EN_PM,
/* 0x1D6 */ ACTOR_EN_GAKUFU,
/* 0x1D7 */ ACTOR_ELF_MSG4,
/* 0x1D8 */ ACTOR_ELF_MSG5,
/* 0x1D9 */ ACTOR_EN_COL_MAN,
/* 0x1DA */ ACTOR_EN_TALK_GIBUD,
/* 0x1DB */ ACTOR_EN_GIANT,
/* 0x1DC */ ACTOR_OBJ_SNOWBALL,
/* 0x1DD */ ACTOR_BOSS_HAKUGIN,
/* 0x1DE */ ACTOR_EN_GB2,
/* 0x1DF */ ACTOR_EN_ONPUMAN,
/* 0x1E0 */ ACTOR_BG_TOBIRA01,
/* 0x1E1 */ ACTOR_EN_TAG_OBJ,
/* 0x1E2 */ ACTOR_OBJ_DHOUSE,
/* 0x1E3 */ ACTOR_OBJ_HAKAISI,
/* 0x1E4 */ ACTOR_BG_HAKUGIN_SWITCH,
/* 0x1E5 */ ACTOR_UNSET_1E5,
/* 0x1E6 */ ACTOR_EN_SNOWMAN,
/* 0x1E7 */ ACTOR_TG_SW,
/* 0x1E8 */ ACTOR_EN_PO_SISTERS,
/* 0x1E9 */ ACTOR_EN_PP,
/* 0x1EA */ ACTOR_EN_HAKUROCK,
/* 0x1EB */ ACTOR_EN_HANABI,
/* 0x1EC */ ACTOR_OBJ_DOWSING,
/* 0x1ED */ ACTOR_OBJ_WIND,
/* 0x1EE */ ACTOR_EN_RACEDOG,
/* 0x1EF */ ACTOR_EN_KENDO_JS,
/* 0x1F0 */ ACTOR_BG_BOTIHASIRA,
/* 0x1F1 */ ACTOR_EN_FISH2,
/* 0x1F2 */ ACTOR_EN_PST,
/* 0x1F3 */ ACTOR_EN_POH,
/* 0x1F4 */ ACTOR_OBJ_SPIDERTENT,
/* 0x1F5 */ ACTOR_EN_ZORAEGG,
/* 0x1F6 */ ACTOR_EN_KBT,
/* 0x1F7 */ ACTOR_EN_GG,
/* 0x1F8 */ ACTOR_EN_MARUTA,
/* 0x1F9 */ ACTOR_OBJ_SNOWBALL2,
/* 0x1FA */ ACTOR_EN_GG2,
/* 0x1FB */ ACTOR_OBJ_GHAKA,
/* 0x1FC */ ACTOR_EN_DNP,
/* 0x1FD */ ACTOR_EN_DAI,
/* 0x1FE */ ACTOR_BG_GORON_OYU,
/* 0x1FF */ ACTOR_EN_KGY,
/* 0x200 */ ACTOR_EN_INVADEPOH,
/* 0x201 */ ACTOR_EN_GK,
/* 0x202 */ ACTOR_EN_AN,
/* 0x203 */ ACTOR_UNSET_203,
/* 0x204 */ ACTOR_EN_BEE,
/* 0x205 */ ACTOR_EN_OT,
/* 0x206 */ ACTOR_EN_DRAGON,
/* 0x207 */ ACTOR_OBJ_DORA,
/* 0x208 */ ACTOR_EN_BIGPO,
/* 0x209 */ ACTOR_OBJ_KENDO_KANBAN,
/* 0x20A */ ACTOR_OBJ_HARIKO,
/* 0x20B */ ACTOR_EN_STH,
/* 0x20C */ ACTOR_BG_SINKAI_KABE,
/* 0x20D */ ACTOR_BG_HAKA_CURTAIN,
/* 0x20E */ ACTOR_BG_KIN2_BOMBWALL,
/* 0x20F */ ACTOR_BG_KIN2_FENCE,
/* 0x210 */ ACTOR_BG_KIN2_PICTURE,
/* 0x211 */ ACTOR_BG_KIN2_SHELF,
/* 0x212 */ ACTOR_EN_RAIL_SKB,
/* 0x213 */ ACTOR_EN_JG,
/* 0x214 */ ACTOR_EN_TRU_MT,
/* 0x215 */ ACTOR_OBJ_UM,
/* 0x216 */ ACTOR_EN_NEO_REEBA,
/* 0x217 */ ACTOR_BG_MBAR_CHAIR,
/* 0x218 */ ACTOR_BG_IKANA_BLOCK,
/* 0x219 */ ACTOR_BG_IKANA_MIRROR,
/* 0x21A */ ACTOR_BG_IKANA_ROTARYROOM,
/* 0x21B */ ACTOR_BG_DBLUE_BALANCE,
/* 0x21C */ ACTOR_BG_DBLUE_WATERFALL,
/* 0x21D */ ACTOR_EN_KAIZOKU,
/* 0x21E */ ACTOR_EN_GE2,
/* 0x21F */ ACTOR_EN_MA_YTS,
/* 0x220 */ ACTOR_EN_MA_YTO,
/* 0x221 */ ACTOR_OBJ_TOKEI_TURRET,
/* 0x222 */ ACTOR_BG_DBLUE_ELEVATOR,
/* 0x223 */ ACTOR_OBJ_WARPSTONE,
/* 0x224 */ ACTOR_EN_ZOG,
/* 0x225 */ ACTOR_OBJ_ROTLIFT,
/* 0x226 */ ACTOR_OBJ_JG_GAKKI,
/* 0x227 */ ACTOR_BG_INIBS_MOVEBG,
/* 0x228 */ ACTOR_EN_ZOT,
/* 0x229 */ ACTOR_OBJ_TREE,
/* 0x22A */ ACTOR_OBJ_Y2LIFT,
/* 0x22B */ ACTOR_OBJ_Y2SHUTTER,
/* 0x22C */ ACTOR_OBJ_BOAT,
/* 0x22D */ ACTOR_OBJ_TARU,
/* 0x22E */ ACTOR_OBJ_HUNSUI,
/* 0x22F */ ACTOR_EN_JC_MATO,
/* 0x230 */ ACTOR_MIR_RAY3,
/* 0x231 */ ACTOR_EN_ZOB,
/* 0x232 */ ACTOR_ELF_MSG6,
/* 0x233 */ ACTOR_OBJ_NOZOKI,
/* 0x234 */ ACTOR_EN_TOTO,
/* 0x235 */ ACTOR_EN_RAILGIBUD,
/* 0x236 */ ACTOR_EN_BABA,
/* 0x237 */ ACTOR_EN_SUTTARI,
/* 0x238 */ ACTOR_EN_ZOD,
/* 0x239 */ ACTOR_EN_KUJIYA,
/* 0x23A */ ACTOR_EN_GEG,
/* 0x23B */ ACTOR_OBJ_KINOKO,
/* 0x23C */ ACTOR_OBJ_YASI,
/* 0x23D */ ACTOR_EN_TANRON1,
/* 0x23E */ ACTOR_EN_TANRON2,
/* 0x23F */ ACTOR_EN_TANRON3,
/* 0x240 */ ACTOR_OBJ_CHAN,
/* 0x241 */ ACTOR_EN_ZOS,
/* 0x242 */ ACTOR_EN_S_GORO,
/* 0x243 */ ACTOR_EN_NB,
/* 0x244 */ ACTOR_EN_JA,
/* 0x245 */ ACTOR_BG_F40_BLOCK,
/* 0x246 */ ACTOR_BG_F40_SWITCH,
/* 0x247 */ ACTOR_EN_PO_COMPOSER,
/* 0x248 */ ACTOR_EN_GURUGURU,
/* 0x249 */ ACTOR_OCEFF_WIPE5,
/* 0x24A */ ACTOR_EN_STONE_HEISHI,
/* 0x24B */ ACTOR_OCEFF_WIPE6,
/* 0x24C */ ACTOR_EN_SCOPENUTS,
/* 0x24D */ ACTOR_EN_SCOPECROW,
/* 0x24E */ ACTOR_OCEFF_WIPE7,
/* 0x24F */ ACTOR_EFF_KAMEJIMA_WAVE,
/* 0x250 */ ACTOR_EN_HG,
/* 0x251 */ ACTOR_EN_HGO,
/* 0x252 */ ACTOR_EN_ZOV,
/* 0x253 */ ACTOR_EN_AH,
/* 0x254 */ ACTOR_OBJ_HGDOOR,
/* 0x255 */ ACTOR_BG_IKANA_BOMBWALL,
/* 0x256 */ ACTOR_BG_IKANA_RAY,
/* 0x257 */ ACTOR_BG_IKANA_SHUTTER,
/* 0x258 */ ACTOR_BG_HAKA_BOMBWALL,
/* 0x259 */ ACTOR_BG_HAKA_TOMB,
/* 0x25A */ ACTOR_EN_SC_RUPPE,
/* 0x25B */ ACTOR_BG_IKNV_DOUKUTU,
/* 0x25C */ ACTOR_BG_IKNV_OBJ,
/* 0x25D */ ACTOR_EN_PAMERA,
/* 0x25E */ ACTOR_OBJ_HSSTUMP,
/* 0x25F */ ACTOR_EN_HIDDEN_NUTS,
/* 0x260 */ ACTOR_EN_ZOW,
/* 0x261 */ ACTOR_EN_TALK,
/* 0x262 */ ACTOR_EN_AL,
/* 0x263 */ ACTOR_EN_TAB,
/* 0x264 */ ACTOR_EN_NIMOTSU,
/* 0x265 */ ACTOR_EN_HIT_TAG,
/* 0x266 */ ACTOR_EN_RUPPECROW,
/* 0x267 */ ACTOR_EN_TANRON4,
/* 0x268 */ ACTOR_EN_TANRON5,
/* 0x269 */ ACTOR_EN_TANRON6,
/* 0x26A */ ACTOR_EN_DAIKU2,
/* 0x26B */ ACTOR_EN_MUTO,
/* 0x26C */ ACTOR_EN_BAISEN,
/* 0x26D */ ACTOR_EN_HEISHI,
/* 0x26E */ ACTOR_EN_DEMO_HEISHI,
/* 0x26F */ ACTOR_EN_DT,
/* 0x270 */ ACTOR_EN_CHA,
/* 0x271 */ ACTOR_OBJ_DINNER,
/* 0x272 */ ACTOR_EFF_LASTDAY,
/* 0x273 */ ACTOR_BG_IKANA_DHARMA,
/* 0x274 */ ACTOR_EN_AKINDONUTS,
/* 0x275 */ ACTOR_EFF_STK,
/* 0x276 */ ACTOR_EN_IG,
/* 0x277 */ ACTOR_EN_RG,
/* 0x278 */ ACTOR_EN_OSK,
/* 0x279 */ ACTOR_EN_STH2,
/* 0x27A */ ACTOR_EN_YB,
/* 0x27B */ ACTOR_EN_RZ,
/* 0x27C */ ACTOR_EN_SCOPECOIN,
/* 0x27D */ ACTOR_EN_BJT,
/* 0x27E */ ACTOR_EN_BOMJIMA,
/* 0x27F */ ACTOR_EN_BOMJIMB,
/* 0x280 */ ACTOR_EN_BOMBERS,
/* 0x281 */ ACTOR_EN_BOMBERS2,
/* 0x282 */ ACTOR_EN_BOMBAL,
/* 0x283 */ ACTOR_OBJ_MOON_STONE,
/* 0x284 */ ACTOR_OBJ_MU_PICT,
/* 0x285 */ ACTOR_BG_IKNINSIDE,
/* 0x286 */ ACTOR_EFF_ZORABAND,
/* 0x287 */ ACTOR_OBJ_KEPN_KOYA,
/* 0x288 */ ACTOR_OBJ_USIYANE,
/* 0x289 */ ACTOR_EN_NNH,
/* 0x28A */ ACTOR_OBJ_KZSAKU,
/* 0x28B */ ACTOR_OBJ_MILK_BIN,
/* 0x28C */ ACTOR_EN_KITAN,
/* 0x28D */ ACTOR_BG_ASTR_BOMBWALL,
/* 0x28E */ ACTOR_BG_IKNIN_SUSCEIL,
/* 0x28F */ ACTOR_EN_BSB,
/* 0x290 */ ACTOR_EN_RECEPGIRL,
/* 0x291 */ ACTOR_EN_THIEFBIRD,
/* 0x292 */ ACTOR_EN_JGAME_TSN,
/* 0x293 */ ACTOR_OBJ_JGAME_LIGHT,
/* 0x294 */ ACTOR_OBJ_YADO,
/* 0x295 */ ACTOR_DEMO_SYOTEN,
/* 0x296 */ ACTOR_DEMO_MOONEND,
/* 0x297 */ ACTOR_BG_LBFSHOT,
/* 0x298 */ ACTOR_BG_LAST_BWALL,
/* 0x299 */ ACTOR_EN_AND,
/* 0x29A */ ACTOR_EN_INVADEPOH_DEMO,
/* 0x29B */ ACTOR_OBJ_DANPEILIFT,
/* 0x29C */ ACTOR_EN_FALL2,
/* 0x29D */ ACTOR_DM_AL,
/* 0x29E */ ACTOR_DM_AN,
/* 0x29F */ ACTOR_DM_AH,
/* 0x2A0 */ ACTOR_DM_NB,
/* 0x2A1 */ ACTOR_EN_DRS,
/* 0x2A2 */ ACTOR_EN_ENDING_HERO,
/* 0x2A3 */ ACTOR_DM_BAL,
/* 0x2A4 */ ACTOR_EN_PAPER,
/* 0x2A5 */ ACTOR_EN_HINT_SKB,
/* 0x2A6 */ ACTOR_DM_TAG,
/* 0x2A7 */ ACTOR_EN_BH,
/* 0x2A8 */ ACTOR_EN_ENDING_HERO2,
/* 0x2A9 */ ACTOR_EN_ENDING_HERO3,
/* 0x2AA */ ACTOR_EN_ENDING_HERO4,
/* 0x2AB */ ACTOR_EN_ENDING_HERO5,
/* 0x2AC */ ACTOR_EN_ENDING_HERO6,
/* 0x2AD */ ACTOR_DM_GM,
/* 0x2AE */ ACTOR_OBJ_SWPRIZE,
/* 0x2AF */ ACTOR_EN_INVISIBLE_RUPPE,
/* 0x2B0 */ ACTOR_OBJ_ENDING,
/* 0x2B1 */ ACTOR_EN_RSN,
/* 0x2B2 */ ACTOR_ID_MAX // originally "ACTOR_DLF_MAX"
} ActorID;
typedef enum {
/* 0x00 */ SCENE_20SICHITAI2,
/* 0x01 */ SCENE_UNSET_1,
/* 0x02 */ SCENE_UNSET_2,
/* 0x03 */ SCENE_UNSET_3,
/* 0x04 */ SCENE_UNSET_4,
/* 0x05 */ SCENE_UNSET_5,
/* 0x06 */ SCENE_UNSET_6,
/* 0x07 */ SCENE_KAKUSIANA,
/* 0x08 */ SCENE_SPOT00,
/* 0x09 */ SCENE_UNSET_9,
/* 0x0A */ SCENE_WITCH_SHOP,
/* 0x0B */ SCENE_LAST_BS,
/* 0x0C */ SCENE_HAKASHITA,
/* 0x0D */ SCENE_AYASHIISHOP,
/* 0x0E */ SCENE_UNSET_E,
/* 0x0F */ SCENE_UNSET_F,
/* 0x10 */ SCENE_OMOYA,
/* 0x11 */ SCENE_BOWLING,
/* 0x12 */ SCENE_SONCHONOIE,
/* 0x13 */ SCENE_IKANA,
/* 0x14 */ SCENE_KAIZOKU,
/* 0x15 */ SCENE_MILK_BAR,
/* 0x16 */ SCENE_INISIE_N,
/* 0x17 */ SCENE_TAKARAYA,
/* 0x18 */ SCENE_INISIE_R,
/* 0x19 */ SCENE_OKUJOU,
/* 0x1A */ SCENE_OPENINGDAN,
/* 0x1B */ SCENE_MITURIN,
/* 0x1C */ SCENE_13HUBUKINOMITI,
/* 0x1D */ SCENE_CASTLE,
/* 0x1E */ SCENE_DEKUTES,
/* 0x1F */ SCENE_MITURIN_BS,
/* 0x20 */ SCENE_SYATEKI_MIZU,
/* 0x21 */ SCENE_HAKUGIN,
/* 0x22 */ SCENE_ROMANYMAE,
/* 0x23 */ SCENE_PIRATE,
/* 0x24 */ SCENE_SYATEKI_MORI,
/* 0x25 */ SCENE_SINKAI,
/* 0x26 */ SCENE_YOUSEI_IZUMI,
/* 0x27 */ SCENE_KINSTA1,
/* 0x28 */ SCENE_KINDAN2,
/* 0x29 */ SCENE_TENMON_DAI,
/* 0x2A */ SCENE_LAST_DEKU,
/* 0x2B */ SCENE_22DEKUCITY,
/* 0x2C */ SCENE_KAJIYA,
/* 0x2D */ SCENE_00KEIKOKU,
/* 0x2E */ SCENE_POSTHOUSE,
/* 0x2F */ SCENE_LABO,
/* 0x30 */ SCENE_DANPEI2TEST,
/* 0x31 */ SCENE_UNSET_31,
/* 0x32 */ SCENE_16GORON_HOUSE,
/* 0x33 */ SCENE_33ZORACITY,
/* 0x34 */ SCENE_8ITEMSHOP,
/* 0x35 */ SCENE_F01,
/* 0x36 */ SCENE_INISIE_BS,
/* 0x37 */ SCENE_30GYOSON,
/* 0x38 */ SCENE_31MISAKI,
/* 0x39 */ SCENE_TAKARAKUJI,
/* 0x3A */ SCENE_UNSET_3A,
/* 0x3B */ SCENE_TORIDE,
/* 0x3C */ SCENE_FISHERMAN,
/* 0x3D */ SCENE_GORONSHOP,
/* 0x3E */ SCENE_DEKU_KING,
/* 0x3F */ SCENE_LAST_GORON,
/* 0x40 */ SCENE_24KEMONOMITI,
/* 0x41 */ SCENE_F01_B,
/* 0x42 */ SCENE_F01C,
/* 0x43 */ SCENE_BOTI,
/* 0x44 */ SCENE_HAKUGIN_BS,
/* 0x45 */ SCENE_20SICHITAI,
/* 0x46 */ SCENE_21MITURINMAE,
/* 0x47 */ SCENE_LAST_ZORA,
/* 0x48 */ SCENE_11GORONNOSATO2,
/* 0x49 */ SCENE_SEA,
/* 0x4A */ SCENE_35TAKI,
/* 0x4B */ SCENE_REDEAD,
/* 0x4C */ SCENE_BANDROOM,
/* 0x4D */ SCENE_11GORONNOSATO,
/* 0x4E */ SCENE_GORON_HAKA,
/* 0x4F */ SCENE_SECOM,
/* 0x50 */ SCENE_10YUKIYAMANOMURA,
/* 0x51 */ SCENE_TOUGITES,
/* 0x52 */ SCENE_DANPEI,
/* 0x53 */ SCENE_IKANAMAE,
/* 0x54 */ SCENE_DOUJOU,
/* 0x55 */ SCENE_MUSICHOUSE,
/* 0x56 */ SCENE_IKNINSIDE,
/* 0x57 */ SCENE_MAP_SHOP,
/* 0x58 */ SCENE_F40,
/* 0x59 */ SCENE_F41,
/* 0x5A */ SCENE_10YUKIYAMANOMURA2,
/* 0x5B */ SCENE_14YUKIDAMANOMITI,
/* 0x5C */ SCENE_12HAKUGINMAE,
/* 0x5D */ SCENE_17SETUGEN,
/* 0x5E */ SCENE_17SETUGEN2,
/* 0x5F */ SCENE_SEA_BS,
/* 0x60 */ SCENE_RANDOM,
/* 0x61 */ SCENE_YADOYA,
/* 0x62 */ SCENE_KONPEKI_ENT,
/* 0x63 */ SCENE_INSIDETOWER,
/* 0x64 */ SCENE_26SARUNOMORI,
/* 0x65 */ SCENE_LOST_WOODS,
/* 0x66 */ SCENE_LAST_LINK,
/* 0x67 */ SCENE_SOUGEN,
/* 0x68 */ SCENE_BOMYA,
/* 0x69 */ SCENE_KYOJINNOMA,
/* 0x6A */ SCENE_KOEPONARACE,
/* 0x6B */ SCENE_GORONRACE,
/* 0x6C */ SCENE_TOWN,
/* 0x6D */ SCENE_ICHIBA,
/* 0x6E */ SCENE_BACKTOWN,
/* 0x6F */ SCENE_CLOCKTOWER,
/* 0x70 */ SCENE_ALLEY
} SceneID;
#endif

View File

@ -438,7 +438,7 @@ extern UNK_TYPE1 D_801AEFA8; // D_801AEFA8
extern UNK_TYPE1 D_801AEFB8; // D_801AEFB8
extern UNK_TYPE1 D_801AEFBC; // D_801AEFBC
extern UNK_TYPE1 D_801AEFC0; // D_801AEFC0
extern ActorOverlay actorOverlayTable[690]; // D_801AEFD0
extern ActorOverlay actorOverlayTable[ACTOR_ID_MAX]; // D_801AEFD0
extern UNK_TYPE4 D_801B4610; // D_801B4610
extern u32 D_801B4620[32]; // D_801B4620
extern u16 D_801B46A0[16]; // D_801B46A0

View File

@ -2,7 +2,7 @@
#include <global.h>
ActorInit bgFuKaitenInitData = {
0x01AE,
ACTOR_BG_FU_KAITEN,
1,
0,
0x30,

View File

@ -2,7 +2,7 @@
#include <global.h>
ActorInit bgIkanaRayInitData = {
0x0256,
ACTOR_BG_IKANA_RAY,
6,
0,
0,

View File

@ -40,7 +40,7 @@ s32 func_800BFA78(s32 a0, s32 a1) {
}
void func_800BFAE8(void) {
D_801B4610 = 690;
D_801B4610 = ACTOR_ID_MAX;
func_800819F0(&D_801ED930, (u32)func_800BF9A0, 0, 0);
func_80081BCC(&D_801ED940, (u32)func_800BFA78, 0);
}

View File

@ -14,7 +14,7 @@ void EffectSS_Init(GlobalContext* ctxt, s32 numEntries) {
EffectSS_ResetEntry(iter);
}
for (i = 0, iter2 = particleOverlayTable; i != 0x27; i++) {
for (i = 0, iter2 = particleOverlayTable; i != EFFECT_SS2_TYPE_LAST_LABEL; i++) {
(iter2++)->loadedRamAddr = 0;
}
}
@ -35,7 +35,7 @@ void EffectSS_Clear(GlobalContext* ctxt) {
}
// Free memory from loaded particle overlays
for (i = 0, iter2 = particleOverlayTable; i != 0x27; i++) {
for (i = 0, iter2 = particleOverlayTable; i != EFFECT_SS2_TYPE_LAST_LABEL; i++) {
addr = (void*)iter2->loadedRamAddr;
if (addr != NULL) {
zelda_free(addr);
@ -63,7 +63,7 @@ void EffectSS_Delete(LoadedParticleEntry* a0) {
void EffectSS_ResetEntry(LoadedParticleEntry* particle) {
u32 i;
particle->type = 0x27;
particle->type = EFFECT_SS2_TYPE_LAST_LABEL;
particle->acceleration.z = 0;
particle->acceleration.y = 0;
particle->acceleration.x = 0;

View File

@ -116,7 +116,7 @@ s32 Room_HandleLoadCallbacks(GlobalContext* ctxt, RoomContext* roomCtxt) {
func_80123140(ctxt, (ActorPlayer*)ctxt->actorCtx.actorList[2].first);
Actor_SpawnTransitionActors(ctxt, &ctxt->actorCtx);
if (((ctxt->sceneNum != 0x13) || (roomCtxt->currRoom.num != 1)) && (ctxt->sceneNum != 0x56)) {
if (((ctxt->sceneNum != SCENE_IKANA) || (roomCtxt->currRoom.num != 1)) && (ctxt->sceneNum != SCENE_IKNINSIDE)) {
ctxt->kankyoContext.unkC3 = 0xff;
ctxt->kankyoContext.unkE0 = 0;
}

View File

@ -1,7 +1,7 @@
#include <ultra64.h>
#include <global.h>
/*
/*
TODO:
There are a few issues left with this file, but many rely on larger structural project changes.
I am avoiding these in the mean time in order to not break the Ghidra project structures.
@ -12,26 +12,26 @@ The .data, .bss, and .rodata sections are not migrated to this file yet.
s32 Scene_LoadObject(SceneContext* sceneCtxt, s16 id) {
u32 size;
sceneCtxt->objects[sceneCtxt->objectCount].id = id;
size = objectFileTable[id].vromEnd - objectFileTable[id].vromStart;
if (sceneCtxt) {}
if (size) {
DmaMgr_SendRequest0(sceneCtxt->objects[sceneCtxt->objectCount].vramAddr, objectFileTable[id].vromStart, size);
}
// TODO: This 0x22 is OBJECT_EXCHANGE_BANK_MAX - 1 in OOT
if (sceneCtxt->objectCount < 0x22) {
sceneCtxt->objects[sceneCtxt->objectCount + 1].vramAddr =
sceneCtxt->objects[sceneCtxt->objectCount + 1].vramAddr =
// UB to cast pointer to u32
(void*)ALIGN16((u32)sceneCtxt->objects[sceneCtxt->objectCount].vramAddr + size);
}
sceneCtxt->objectCount++;
sceneCtxt->spawnedObjectCount = sceneCtxt->objectCount;
return sceneCtxt->objectCount - 1;
}
@ -40,26 +40,25 @@ void Scene_Init(GlobalContext* ctxt, SceneContext* sceneCtxt) {
u32 unused;
u32 spaceSize;
s32 i;
// TODO: Needs scene enums!
if (global->sceneNum == 0x6F || global->sceneNum == 0x6C || global->sceneNum == 0x6E || global->sceneNum == 0x6D) {
if (global->sceneNum == SCENE_CLOCKTOWER || global->sceneNum == SCENE_TOWN || global->sceneNum == SCENE_BACKTOWN || global->sceneNum == SCENE_ICHIBA) {
spaceSize = 1566720;
} else if (global->sceneNum == 0x15) {
} else if (global->sceneNum == SCENE_MILK_BAR) {
spaceSize = 1617920;
} else if (global->sceneNum == 0x2D) {
} else if (global->sceneNum == SCENE_00KEIKOKU) {
spaceSize = 1505280;
} else {
spaceSize = 1413120;
}
sceneCtxt->objectCount = 0;
sceneCtxt->spawnedObjectCount = 0;
sceneCtxt->mainKeepIndex = 0;
sceneCtxt->keepObjectId = 0;
// TODO: 0x23 is OBJECT_EXCHANGE_BANK_MAX in OOT
// TODO: 0x23 is OBJECT_EXCHANGE_BANK_MAX in OOT
for (i = 0; i < 0x23; i++) sceneCtxt->objects[i].id = 0;
sceneCtxt->objectVramStart = sceneCtxt->objects[0].vramAddr = GameStateHeap_AllocFromEnd(&ctxt->state.heap, spaceSize);
// UB to cast sceneCtxt->objectVramStart to s32
sceneCtxt->objectVramEnd = (void*)((u32)sceneCtxt->objectVramStart + spaceSize);
@ -74,7 +73,7 @@ void Scene_ReloadUnloadedObjects(SceneContext* sceneCtxt) {
SceneObject* status;
ObjectFileTableEntry* objectFile;
u32 size;
status = &sceneCtxt->objects[0];
for (i = 0; i < sceneCtxt->objectCount; i++) {
if (status->id < 0) {
@ -82,7 +81,7 @@ void Scene_ReloadUnloadedObjects(SceneContext* sceneCtxt) {
if (status->dmaReq.vromStart == 0) {
objectFile = &objectFileTable[id];
size = objectFile->vromEnd - objectFile->vromStart;
if (size == 0) {
status->id = 0;
} else {
@ -124,11 +123,11 @@ void Scene_DmaAllObjects(SceneContext* sceneCtxt) {
for (i = 0; i < sceneCtxt->objectCount; i++) {
id = sceneCtxt->objects[i].id;
vromSize = objectFileTable[id].vromEnd - objectFileTable[id].vromStart;
if (vromSize == 0) {
continue;
}
DmaMgr_SendRequest0(sceneCtxt->objects[i].vramAddr, objectFileTable[id].vromStart, vromSize);
}
}
@ -137,10 +136,10 @@ void* func_8012F73C(SceneContext* sceneCtxt, s32 iParm2, s16 id) {
u32 addr;
u32 vromSize;
ObjectFileTableEntry* fileTableEntry;
sceneCtxt->objects[iParm2].id = -id;
sceneCtxt->objects[iParm2].dmaReq.vromStart = 0;
fileTableEntry = &objectFileTable[id];
vromSize = fileTableEntry->vromEnd - fileTableEntry->vromStart;
// TODO: UB to cast void to u32
@ -157,7 +156,7 @@ void Scene_HeaderCommand00(GlobalContext* ctxt, SceneCmd* entry) {
void* objectVramAddr;
s16 temp16;
u8 unk20;
ctxt->linkActorEntry = (ActorEntry*)Lib_PtrSegToVirt(entry->spawnList.segment) +
ctxt->setupEntranceList[ctxt->curSpawn].spawn;
if ( (ctxt->linkActorEntry->params & 0x0F00) >> 8 == 0x0C ||
@ -229,10 +228,10 @@ void Scene_HeaderCommand06(GlobalContext* ctxt, SceneCmd* entry) {
// Scene Command 0x07: Special Files
void Scene_HeaderCommand07(GlobalContext* ctxt, SceneCmd* entry) {
if (entry->specialFiles.keepObjectId != 0) {
ctxt->sceneContext.keepObjectId = Scene_LoadObject(&ctxt->sceneContext,
ctxt->sceneContext.keepObjectId = Scene_LoadObject(&ctxt->sceneContext,
entry->specialFiles.keepObjectId);
// TODO: Segment number enum?
gRspSegmentPhysAddrs[5] =
gRspSegmentPhysAddrs[5] =
PHYSICAL_TO_VIRTUAL(ctxt->sceneContext.objects[ctxt->sceneContext.keepObjectId].vramAddr);
}
@ -264,7 +263,7 @@ void Scene_HeaderCommand0B(GlobalContext *ctxt, SceneCmd *entry) {
SceneObject* status2;
s16* objectEntry;
void* nextPtr;
objectEntry = (s16*)Lib_PtrSegToVirt(entry->objectList.segment);
k = 0;
i = ctxt->sceneContext.spawnedObjectCount;
@ -280,10 +279,10 @@ void Scene_HeaderCommand0B(GlobalContext *ctxt, SceneCmd *entry) {
}
ctxt->sceneContext.objectCount = i;
func_800BA6FC(ctxt, &ctxt->actorCtx);
continue;
}
i++;
k++;
objectEntry++;
@ -292,7 +291,7 @@ void Scene_HeaderCommand0B(GlobalContext *ctxt, SceneCmd *entry) {
while (k < entry->objectList.num) {
nextPtr = func_8012F73C(&ctxt->sceneContext, i, *objectEntry);
// TODO: This 0x22 is OBJECT_EXCHANGE_BANK_MAX - 1 in OOT
if (i < 0x22) {
firstObject[i + 1].vramAddr = nextPtr;
@ -301,7 +300,7 @@ void Scene_HeaderCommand0B(GlobalContext *ctxt, SceneCmd *entry) {
k++;
objectEntry++;
}
ctxt->sceneContext.objectCount = i;
}
@ -343,12 +342,12 @@ void Scene_HeaderCommand0F(GlobalContext* ctxt, SceneCmd* entry) {
s32 func_8012FF10(GlobalContext* ctxt, s32 fileIndex) {
u32 vromStart = D_801C2660[fileIndex].vromStart;
u32 fileSize = D_801C2660[fileIndex].vromEnd - vromStart;
if (fileSize) {
ctxt->roomContext.unk74 = GameStateHeap_AllocFromEnd(&ctxt->state.heap, fileSize);
return DmaMgr_SendRequest0(ctxt->roomContext.unk74, vromStart, fileSize);
}
// UB: Undefined behaviour to not have a return statement here, but it breaks matching to add one.
}
@ -369,39 +368,39 @@ void Scene_HeaderCommand12(GlobalContext* ctxt, SceneCmd* entry) {
// Scene Command 0x10: Time Settings
void Scene_HeaderCommand10(GlobalContext *ctxt, SceneCmd *entry) {
u32 dayTime;
if (entry->timeSettings.hour != 0xFF && entry->timeSettings.min != 0xFF) {
gSaveContext.extra.environmentTime = gSaveContext.perm.time =
gSaveContext.extra.environmentTime = gSaveContext.perm.time =
(u16)(((entry->timeSettings.hour + (entry->timeSettings.min / 60.0f)) * 60.0f) / 0.021972656f);
}
if (entry->timeSettings.unk6 != 0xFF) {
ctxt->kankyoContext.unk2 = entry->timeSettings.unk6;
} else {
ctxt->kankyoContext.unk2 = 0;
}
if (gSaveContext.perm.inv.items[0] == 0xFF) {
if (ctxt->kankyoContext.unk2 != 0) {
ctxt->kankyoContext.unk2 = 5;
}
}
if (gSaveContext.extra.unk2b8 == 0) {
// TODO: Needs REG macro
gStaticContext->data[0x0F] = ctxt->kankyoContext.unk2;
}
dayTime = gSaveContext.perm.time;
ctxt->kankyoContext.unk4 = -(Math_Sins(dayTime - 0x8000) * 120.0f) * 25.0f;
dayTime = gSaveContext.perm.time;
ctxt->kankyoContext.unk8 = (Math_Coss(dayTime - 0x8000) * 120.0f) * 25.0f;
dayTime = gSaveContext.perm.time;
ctxt->kankyoContext.unkC = (Math_Coss(dayTime - 0x8000) * 20.0f) * 25.0f;
if (ctxt->kankyoContext.unk2 == 0 && gSaveContext.perm.cutscene < 0xFFF0) {
gSaveContext.extra.environmentTime = gSaveContext.perm.time;
if (gSaveContext.extra.environmentTime >= 0x2AAA && gSaveContext.extra.environmentTime < 0x4555) {
gSaveContext.extra.environmentTime = 0x3555;
} else if (gSaveContext.extra.environmentTime >= 0x4555 && gSaveContext.extra.environmentTime < 0x5555) {
@ -417,7 +416,7 @@ void Scene_HeaderCommand10(GlobalContext *ctxt, SceneCmd *entry) {
// Scene Command 0x05: Wind Settings
void Scene_HeaderCommand05(GlobalContext* ctxt, SceneCmd* entry) {
s8 temp1 = entry->windSettings.west;
s8 temp2 = entry->windSettings.vertical;
s8 temp2 = entry->windSettings.vertical;
s8 temp3 = entry->windSettings.south;
ctxt->kankyoContext.windWest = temp1;
ctxt->kankyoContext.windVertical = temp2;
@ -494,27 +493,27 @@ void Scene_HeaderCommand1E(GlobalContext* ctxt, SceneCmd* entry) {
void Scene_HeaderCommand19(GlobalContext *ctxt, SceneCmd *entry) {
s16 j;
s16 i;
j = 0;
i = 0;
while (1) {
if (scenesPerMapArea[i].scenes[j] == 0xFFFF) {
i++;
j=0;
// 0x0B is sizeof(scenesPerMapArea) / sizeof(SceneIdList) ... but does not match calculated
if (i == 0x0B) {
break;
}
}
if (ctxt->sceneNum == scenesPerMapArea[i].scenes[j]) {
break;
}
j++;
}
// 0x0B is sizeof(scenesPerMapArea) / sizeof(SceneIdList) ... but does not match calculated
if (i < 0x0B) {
// This bitwise OR could be a macro, but all sane looking versions break matching.
@ -536,7 +535,7 @@ s32 Scene_ProcessHeader(GlobalContext* ctxt, SceneCmd* header) {
while (1) {
cmdCode = header->base.code;
if (cmdCode == 0x14) {
break;
}

View File

@ -435,7 +435,7 @@
0x801AEFB8:("D_801AEFB8","UNK_TYPE1","",0x1),
0x801AEFBC:("D_801AEFBC","UNK_TYPE1","",0x1),
0x801AEFC0:("D_801AEFC0","UNK_TYPE1","",0x1),
0x801AEFD0:("actorOverlayTable","ActorOverlay","[690]",0x5640),
0x801AEFD0:("actorOverlayTable","ActorOverlay","[ACTOR_ID_MAX]",0x5640),
0x801B4610:("D_801B4610","UNK_TYPE4","",0x4),
0x801B4620:("D_801B4620","u32","[32]",0x80),
0x801B46A0:("D_801B46A0","u16","[16]",0x20),