1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-12 10:54:44 +00:00

Name numerous event info flags

This commit is contained in:
JordanLongstaff 2024-11-14 10:14:21 -05:00
parent 8ce69c3ac9
commit 770147bc8b
97 changed files with 723 additions and 716 deletions

View file

@ -464,80 +464,82 @@ typedef enum LinkAge {
* SaveContext.eventChkInf
*/
#define EVENTCHKINF_02 0x02
#define EVENTCHKINF_03 0x03
#define EVENTCHKINF_04 0x04
#define EVENTCHKINF_05 0x05
#define EVENTCHKINF_07 0x07
#define EVENTCHKINF_09 0x09
#define EVENTCHKINF_0A 0x0A
#define EVENTCHKINF_FIRST_SPOKE_TO_MIDO 0x02
#define EVENTCHKINF_COMPLAINED_ABOUT_MIDO 0x03
#define EVENTCHKINF_SHOWED_MIDO_SWORD_SHIELD 0x04
#define EVENTCHKINF_DEKU_TREE_OPENED_MOUTH 0x05
#define EVENTCHKINF_OBTAINED_KOKIRI_EMERALD_DEKU_TREE_DEAD 0x07
#define EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP 0x09
#define EVENTCHKINF_PLAYED_SARIAS_SONG_FOR_MIDO_AS_ADULT 0x0A
#define EVENTCHKINF_0B 0x0B
#define EVENTCHKINF_0C 0x0C
#define EVENTCHKINF_0F 0x0F
#define EVENTCHKINF_MET_DEKU_TREE 0x0C
#define EVENTCHKINF_SPOKE_TO_MIDO_ABOUT_SARIA 0x0F
#define EVENTCHKINF_TALKED_TO_MALON_FIRST_TIME 0x10
#define EVENTCHKINF_11 0x11
#define EVENTCHKINF_SPOKE_TO_INGO_AT_RANCH_BEFORE_TALON_RETURNS 0x11
#define EVENTCHKINF_RECEIVED_WEIRD_EGG 0x12
#define EVENTCHKINF_TALON_WOKEN_IN_CASTLE 0x13
#define EVENTCHKINF_TALON_RETURNED_FROM_CASTLE 0x14
#define EVENTCHKINF_TALKED_TO_CHILD_MALON_AT_RANCH 0x15
#define EVENTCHKINF_CAN_LEARN_EPONAS_SONG 0x16
#define EVENTCHKINF_EPONA_OBTAINED 0x18
#define EVENTCHKINF_1B 0x1B
#define EVENTCHKINF_1C 0x1C
#define EVENTCHKINF_1D 0x1D
#define EVENTCHKINF_OBTAINED_KOKIRI_EMERALD 0x19
#define EVENTCHKINF_RENTED_HORSE_FROM_INGO 0x1B
#define EVENTCHKINF_SPOKE_TO_MIDO_AFTER_DEKU_TREES_DEATH 0x1C
#define EVENTCHKINF_DESTROYED_ROYAL_FAMILY_TOMB 0x1D
#define EVENTCHKINF_HORSE_RACE_COW_UNLOCK 0x1E
#define EVENTCHKINF_20 0x20
#define EVENTCHKINF_21 0x21
#define EVENTCHKINF_22 0x22
#define EVENTCHKINF_23 0x23
#define EVENTCHKINF_25 0x25
#define EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE 0x23
#define EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP 0x25
#define EVENTCHKINF_2A 0x2A
#define EVENTCHKINF_2B 0x2B
#define EVENTCHKINF_2C 0x2C
#define EVENTCHKINF_2D 0x2D
#define EVENTCHKINF_2F 0x2F
#define EVENTCHKINF_30 0x30
#define EVENTCHKINF_31 0x31
#define EVENTCHKINF_DEATH_MOUNTAIN_ERUPTED 0x2F
#define EVENTCHKINF_SPOKE_TO_A_ZORA 0x30
#define EVENTCHKINF_OBTAINED_RUTOS_LETTER 0x31
#define EVENTCHKINF_32 0x32
#define EVENTCHKINF_33 0x33
#define EVENTCHKINF_37 0x37
#define EVENTCHKINF_38 0x38
#define EVENTCHKINF_39 0x39
#define EVENTCHKINF_3A 0x3A
#define EVENTCHKINF_3B 0x3B
#define EVENTCHKINF_3C 0x3C
#define EVENTCHKINF_KING_ZORA_MOVED 0x33
#define EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP 0x37
#define EVENTCHKINF_OBTAINED_SILVER_SCALE 0x38
#define EVENTCHKINF_OPENED_ZORAS_DOMAIN 0x39
#define EVENTCHKINF_OFFERED_FISH_TO_JABU_JABU 0x3A
#define EVENTCHKINF_BEGAN_NABOORU_BATTLE 0x3B
#define EVENTCHKINF_FINISHED_NABOORU_BATTLE 0x3C
// 0x40
#define EVENTCHKINF_40_INDEX 4
#define EVENTCHKINF_40_SHIFT 0
#define EVENTCHKINF_40_MASK (1 << EVENTCHKINF_40_SHIFT)
#define EVENTCHKINF_40 ((EVENTCHKINF_40_INDEX << 4) | EVENTCHKINF_40_SHIFT)
#define EVENTCHKINF_OBTAINED_ZELDAS_LETTER ((EVENTCHKINF_40_INDEX << 4) | EVENTCHKINF_40_SHIFT)
#define EVENTCHKINF_41 0x41
#define EVENTCHKINF_42 0x42
#define EVENTCHKINF_43 0x43
#define EVENTCHKINF_45 0x45
#define EVENTCHKINF_48 0x48
#define EVENTCHKINF_49 0x49
#define EVENTCHKINF_4A 0x4A
#define EVENTCHKINF_4B 0x4B
#define EVENTCHKINF_OBTAINED_OCARINA_OF_TIME 0x43
#define EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL 0x45
#define EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP 0x48
#define EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP 0x49
#define EVENTCHKINF_USED_WATER_TEMPLE_BLUE_WARP 0x4A
#define EVENTCHKINF_OPENED_DOOR_OF_TIME 0x4B
#define EVENTCHKINF_4C 0x4C
#define EVENTCHKINF_4D 0x4D
#define EVENTCHKINF_4E 0x4E
#define EVENTCHKINF_RAINBOW_BRIDGE_BUILT 0x4D
#define EVENTCHKINF_CAUGHT_BY_CASTLE_GUARDS 0x4E
#define EVENTCHKINF_WATCHED_SHEIK_AFTER_MASTER_SWORD_CS 0x4F // Cutscene in Temple of Time as adult after pulling the Master Sword for the first time
#define EVENTCHKINF_50 0x50
#define EVENTCHKINF_51 0x51
#define EVENTCHKINF_52 0x52
#define EVENTCHKINF_54 0x54
#define EVENTCHKINF_55 0x55
#define EVENTCHKINF_59 0x59
#define EVENTCHKINF_5A 0x5A
#define EVENTCHKINF_5B 0x5B
#define EVENTCHKINF_LEARNED_MINUET_OF_FOREST 0x50
#define EVENTCHKINF_LEARNED_BOLERO_OF_FIRE 0x51
#define EVENTCHKINF_LEARNED_SERENADE_OF_WATER 0x52
#define EVENTCHKINF_LEARNED_NOCTURNE_OF_SHADOW 0x54
#define EVENTCHKINF_LEARNED_PRELUDE_OF_LIGHT 0x55
#define EVENTCHKINF_LEARNED_SARIAS_SONG 0x57
#define EVENTCHKINF_LEARNED_ZELDAS_LULLABY 0x59
#define EVENTCHKINF_LEARNED_SUNS_SONG 0x5A
#define EVENTCHKINF_LEARNED_SONG_OF_STORMS 0x5B
#define EVENTCHKINF_5C 0x5C
#define EVENTCHKINF_65 0x65
#define EVENTCHKINF_67 0x67
#define EVENTCHKINF_68 0x68
#define EVENTCHKINF_69 0x69
#define EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL 0x65
#define EVENTCHKINF_DRAINED_WELL_IN_KAKARIKO 0x67
#define EVENTCHKINF_PLAYED_HORSEBACK_ARCHERY 0x68
#define EVENTCHKINF_RAISED_LAKE_HYLIA_WATER 0x69
#define EVENTCHKINF_TALON_WOKEN_IN_KAKARIKO 0x6A
// 0x6B
@ -547,22 +549,22 @@ typedef enum LinkAge {
#define EVENTCHKINF_TALON_RETURNED_FROM_KAKARIKO ((EVENTCHKINF_TALON_RETURNED_FROM_KAKARIKO_INDEX << 4) | EVENTCHKINF_TALON_RETURNED_FROM_KAKARIKO_SHIFT)
#define EVENTCHKINF_6E 0x6E
#define EVENTCHKINF_6F 0x6F
#define EVENTCHKINF_70 0x70
#define EVENTCHKINF_71 0x71
#define EVENTCHKINF_72 0x72
#define EVENTCHKINF_73 0x73
#define EVENTCHKINF_74 0x74
#define EVENTCHKINF_75 0x75
#define EVENTCHKINF_76 0x76
#define EVENTCHKINF_77 0x77
#define EVENTCHKINF_78 0x78
#define EVENTCHKINF_80 0x80
#define EVENTCHKINF_82 0x82
#define EVENTCHKINF_8C 0x8C
#define EVENTCHKINF_8D 0x8D
#define EVENTCHKINF_8E 0x8E
#define EVENTCHKINF_8F 0x8F
#define EVENTCHKINF_SPOKE_TO_KAEPORA_BY_LOST_WOODS 0x6F
#define EVENTCHKINF_BEGAN_GOHMA_BATTLE 0x70
#define EVENTCHKINF_BEGAN_KING_DODONGO_BATTLE 0x71
#define EVENTCHKINF_BEGAN_PHANTOM_GANON_BATTLE 0x72
#define EVENTCHKINF_BEGAN_VOLVAGIA_BATTLE 0x73
#define EVENTCHKINF_BEGAN_MORPHA_BATTLE 0x74
#define EVENTCHKINF_BEGAN_TWINROVA_BATTLE 0x75
#define EVENTCHKINF_BEGAN_BARINA_BATTLE 0x76
#define EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE 0x77
#define EVENTCHKINF_BEGAN_GANONDORF_BATTLE 0x78
#define EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE 0x80
#define EVENTCHKINF_DRAWBRIDGE_OPENED_AFTER_ZELDA_FLED 0x82
#define EVENTCHKINF_PAID_BACK_KEATON_MASK_FEE 0x8C
#define EVENTCHKINF_PAID_BACK_SKULL_MASK_FEE 0x8D
#define EVENTCHKINF_PAID_BACK_SPOOKY_MASK_FEE 0x8E
#define EVENTCHKINF_PAID_BACK_BUNNY_HOOD_FEE 0x8F
// 0x90-0x93
// carpenters freed from the gerudo
@ -578,47 +580,47 @@ typedef enum LinkAge {
#define GET_EVENTCHKINF_CARPENTERS_FREE_ALL() \
CHECK_FLAG_ALL(gSaveContext.save.info.eventChkInf[EVENTCHKINF_CARPENTERS_FREE_INDEX], EVENTCHKINF_CARPENTERS_FREE_MASK_ALL)
#define EVENTCHKINF_94 0x94
#define EVENTCHKINF_95 0x95
#define EVENTCHKINF_96 0x96
#define EVENTCHKINF_9C 0x9C
#define EVENTCHKINF_A0 0xA0
#define EVENTCHKINF_A1 0xA1
#define EVENTCHKINF_A3 0xA3
#define EVENTCHKINF_A4 0xA4
#define EVENTCHKINF_A5 0xA5
#define EVENTCHKINF_A6 0xA6
#define EVENTCHKINF_A7 0xA7
#define EVENTCHKINF_A8 0xA8
#define EVENTCHKINF_A9 0xA9
#define EVENTCHKINF_AA 0xAA
#define EVENTCHKINF_AC 0xAC
#define EVENTCHKINF_AD 0xAD
#define EVENTCHKINF_B0 0xB0
#define EVENTCHKINF_B1 0xB1
#define EVENTCHKINF_B2 0xB2
#define EVENTCHKINF_B3 0xB3
#define EVENTCHKINF_B4 0xB4
#define EVENTCHKINF_B5 0xB5
#define EVENTCHKINF_B6 0xB6
#define EVENTCHKINF_B7 0xB7
#define EVENTCHKINF_B8 0xB8
#define EVENTCHKINF_B9 0xB9
#define EVENTCHKINF_BA 0xBA
#define EVENTCHKINF_BB 0xBB
#define EVENTCHKINF_BC 0xBC
#define EVENTCHKINF_BD 0xBD
#define EVENTCHKINF_BE 0xBE
#define EVENTCHKINF_BF 0xBF
#define EVENTCHKINF_C0 0xC0
#define EVENTCHKINF_C1 0xC1
#define EVENTCHKINF_C3 0xC3
#define EVENTCHKINF_C4 0xC4
#define EVENTCHKINF_C5 0xC5
#define EVENTCHKINF_C6 0xC6
#define EVENTCHKINF_C7 0xC7
#define EVENTCHKINF_C8 0xC8
#define EVENTCHKINF_C9 0xC9
#define EVENTCHKINF_SPOKE_TO_NABOORU_IN_SPIRIT_TEMPLE 0x94
#define EVENTCHKINF_NABOORU_CAPTURED_BY_TWINROVA 0x95
#define EVENTCHKINF_SPOKE_TO_CURSED_MAN_IN_SKULL_HOUSE 0x96
#define EVENTCHKINF_PLAYED_SONG_FOR_SCARECROW_AS_ADULT 0x9C
#define EVENTCHKINF_ENTERED_HYRULE_FIELD 0xA0
#define EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_TRAIL 0xA1
#define EVENTCHKINF_ENTERED_KAKARIKO_VILLAGE 0xA3
#define EVENTCHKINF_ENTERED_ZORAS_DOMAIN 0xA4
#define EVENTCHKINF_ENTERED_HYRULE_CASTLE 0xA5
#define EVENTCHKINF_ENTERED_GORON_CITY 0xA6
#define EVENTCHKINF_ENTERED_TEMPLE_OF_TIME 0xA7
#define EVENTCHKINF_ENTERED_DEKU_TREE 0xA8
#define EVENTCHKINF_LEARNED_SONG_OF_TIME 0xA9
#define EVENTCHKINF_BONGO_BONGO_ESCAPED_FROM_WELL 0xAA
#define EVENTCHKINF_LEARNED_REQUIEM_OF_SPIRIT 0xAC
#define EVENTCHKINF_COMPLETED_SPIRIT_TRIAL 0xAD
#define EVENTCHKINF_ENTERED_DODONGOS_CAVERN 0xB0
#define EVENTCHKINF_ENTERED_LAKE_HYLIA 0xB1
#define EVENTCHKINF_ENTERED_GERUDO_VALLEY 0xB2
#define EVENTCHKINF_ENTERED_GERUDOS_FORTRESS 0xB3
#define EVENTCHKINF_ENTERED_LON_LON_RANCH 0xB4
#define EVENTCHKINF_ENTERED_JABU_JABUS_BELLY 0xB5
#define EVENTCHKINF_ENTERED_GRAVEYARD 0xB6
#define EVENTCHKINF_ENTERED_ZORAS_FOUNTAIN 0xB7
#define EVENTCHKINF_ENTERED_DESERT_COLOSSUS 0xB8
#define EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_CRATER 0xB9
#define EVENTCHKINF_ENTERED_GANONS_CASTLE_EXTERIOR 0xBA
#define EVENTCHKINF_COMPLETED_FOREST_TRIAL 0xBB
#define EVENTCHKINF_COMPLETED_WATER_TRIAL 0xBC
#define EVENTCHKINF_COMPLETED_SHADOW_TRIAL 0xBD
#define EVENTCHKINF_COMPLETED_FIRE_TRIAL 0xBE
#define EVENTCHKINF_COMPLETED_LIGHT_TRIAL 0xBF
#define EVENTCHKINF_NABOORU_ORDERED_TO_FIGHT_BY_TWINROVA 0xC0
#define EVENTCHKINF_SPOKE_TO_SARIA_ON_BRIDGE 0xC1
#define EVENTCHKINF_DISPELLED_GANONS_TOWER_BARRIER 0xC3
#define EVENTCHKINF_RETURNED_TO_TEMPLE_OF_TIME_WITH_ALL_MEDALLIONS 0xC4
#define EVENTCHKINF_SHEIK_SPAWNED_AT_MASTER_SWORD_PEDESTAL 0xC5
#define EVENTCHKINF_SPOKE_TO_DEKU_TREE_SPROUT 0xC6
#define EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO 0xC7
#define EVENTCHKINF_OBTAINED_SPIRIT_MEDALLION 0xC8
#define EVENTCHKINF_TIME_TRAVELED_TO_ADULT 0xC9
// 0xD0-0xD6
#define EVENTCHKINF_SONGS_FOR_FROGS_INDEX 13
@ -645,12 +647,17 @@ typedef enum LinkAge {
#define EVENTCHKINF_SONGS_FOR_FROGS_STORMS ((EVENTCHKINF_SONGS_FOR_FROGS_INDEX << 4) | EVENTCHKINF_SONGS_FOR_FROGS_STORMS_SHIFT)
// 0xDA-0xDE
#define EVENTCHKINF_DA_DB_DC_DD_DE_INDEX 13
#define EVENTCHKINF_DA_MASK (1 << 10)
#define EVENTCHKINF_DB_MASK (1 << 11)
#define EVENTCHKINF_DC_MASK (1 << 12)
#define EVENTCHKINF_DD_MASK (1 << 13)
#define EVENTCHKINF_DE_MASK (1 << 14)
#define EVENTCHKINF_SKULLTULA_REWARD_INDEX 13
#define EVENTCHKINF_SKULLTULA_REWARD_10_SHIFT 10
#define EVENTCHKINF_SKULLTULA_REWARD_20_SHIFT 11
#define EVENTCHKINF_SKULLTULA_REWARD_30_SHIFT 12
#define EVENTCHKINF_SKULLTULA_REWARD_40_SHIFT 13
#define EVENTCHKINF_SKULLTULA_REWARD_50_SHIFT 14
#define EVENTCHKINF_SKULLTULA_REWARD_10_MASK (1 << EVENTCHKINF_SKULLTULA_REWARD_10_SHIFT)
#define EVENTCHKINF_SKULLTULA_REWARD_20_MASK (1 << EVENTCHKINF_SKULLTULA_REWARD_20_SHIFT)
#define EVENTCHKINF_SKULLTULA_REWARD_30_MASK (1 << EVENTCHKINF_SKULLTULA_REWARD_30_SHIFT)
#define EVENTCHKINF_SKULLTULA_REWARD_40_MASK (1 << EVENTCHKINF_SKULLTULA_REWARD_40_SHIFT)
#define EVENTCHKINF_SKULLTULA_REWARD_50_MASK (1 << EVENTCHKINF_SKULLTULA_REWARD_50_SHIFT)
#define GET_EVENTCHKINF(flag) (gSaveContext.save.info.eventChkInf[(flag) >> 4] & (1 << ((flag) & 0xF)))
@ -699,8 +706,8 @@ typedef enum LinkAge {
#define ITEMGETINF_1B 0x1B
#define ITEMGETINF_1C 0x1C
#define ITEMGETINF_1D 0x1D
#define ITEMGETINF_1E 0x1E
#define ITEMGETINF_1F 0x1F
#define ITEMGETINF_OBTAINED_STICK_UPGRADE_FROM_STAGE 0x1E
#define ITEMGETINF_OBTAINED_NUT_UPGRADE_FROM_STAGE 0x1F
#define ITEMGETINF_23 0x23
#define ITEMGETINF_24 0x24
#define ITEMGETINF_25 0x25
@ -725,7 +732,7 @@ typedef enum LinkAge {
* SaveContext.infTable
*/
#define INFTABLE_00 0x00
#define INFTABLE_GREETED_BY_SARIA 0x00
#define INFTABLE_01 0x01
#define INFTABLE_03 0x03
#define INFTABLE_05 0x05
@ -754,8 +761,8 @@ typedef enum LinkAge {
#define INFTABLE_6A 0x6A
#define INFTABLE_6C 0x6C
#define INFTABLE_71 0x71
#define INFTABLE_76 0x76
#define INFTABLE_77 0x77
#define INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD 0x76
#define INFTABLE_GATE_GUARD_PUT_ON_KEATON_MASK 0x77
#define INFTABLE_TALKED_TO_TALON_IN_RANCH_HOUSE 0x7E
#define INFTABLE_TALKED_TO_MALON_FIRST_TIME 0x84
#define INFTABLE_TOLD_EPONA_IS_SCARED 0x85
@ -765,13 +772,13 @@ typedef enum LinkAge {
#define INFTABLE_8E 0x8E
#define INFTABLE_94 0x94
#define INFTABLE_97 0x97
#define INFTABLE_9A 0x9A
#define INFTABLE_SPOKE_TO_INGO_ONCE_AS_ADULT 0x9A
#define INFTABLE_A2 0xA2
#define INFTABLE_AB 0xAB
#define INFTABLE_B0 0xB0
#define INFTABLE_B1 0xB1
#define INFTABLE_B4 0xB4
#define INFTABLE_B6 0xB6
#define INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET 0xB6
#define INFTABLE_B7 0xB7
#define INFTABLE_B8 0xB8
#define INFTABLE_B9 0xB9
@ -797,34 +804,34 @@ typedef enum LinkAge {
#define INFTABLE_D6 0xD6
#define INFTABLE_D8 0xD8
#define INFTABLE_D9 0xD9
#define INFTABLE_E0 0xE0
#define INFTABLE_E3 0xE3
#define INFTABLE_E6 0xE6
#define INFTABLE_EB 0xEB
#define INFTABLE_F0 0xF0
#define INFTABLE_F4 0xF4
#define INFTABLE_F8 0xF8
#define INFTABLE_SPOKE_TO_DODONGOS_CAVERN_ENTRANCE_GORON 0xE0
#define INFTABLE_SPOKE_TO_GC_STAIRWELL_GORON 0xE3
#define INFTABLE_SPOKE_TO_LOST_WOODS_SHORTCUT_GORON 0xE6
#define INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON 0xEB
#define INFTABLE_SPOKE_TO_GC_ENTRANCE_GORON 0xF0
#define INFTABLE_SPOKE_TO_GC_ISLAND_GORON 0xF4
#define INFTABLE_SPOKE_TO_DARUNIA_DOOR_GORON 0xF8
#define INFTABLE_FC 0xFC
#define INFTABLE_109 0x109
#define INFTABLE_GORON_CITY_DOORS_UNLOCKED 0x109
#define INFTABLE_10A 0x10A
#define INFTABLE_10B 0x10B
#define INFTABLE_10C 0x10C
#define INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_DRAGON 0x10B
#define INFTABLE_STOPPED_GORON_LINKS_ROLLING 0x10C
#define INFTABLE_10D 0x10D
#define INFTABLE_10E 0x10E
#define INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_GORONS 0x10E
#define INFTABLE_10F 0x10F
#define INFTABLE_113 0x113
#define INFTABLE_11A 0x11A
#define INFTABLE_11E 0x11E
#define INFTABLE_SPOKE_TO_DARUNIA_IN_FIRE_TEMPLE 0x11A
#define INFTABLE_ACQUIRED_BOMB_BAG_UPGRADE_FROM_HOT_RODDER_GORON 0x11E
#define INFTABLE_124 0x124
#define INFTABLE_129 0x129
#define INFTABLE_12A 0x12A
#define INFTABLE_138 0x138
#define INFTABLE_139 0x139
#define INFTABLE_140 0x140
#define INFTABLE_141 0x141
#define INFTABLE_142 0x142
#define INFTABLE_RUTO_IN_JJ_MEET_RUTO 0x141
#define INFTABLE_RUTO_IN_JJ_TALK_FIRST_TIME 0x142
#define INFTABLE_143 0x143
#define INFTABLE_144 0x144
#define INFTABLE_RUTO_IN_JJ_WANTS_TO_BE_TOSSED_TO_SAPPHIRE 0x144
#define INFTABLE_145 0x145
#define INFTABLE_146 0x146
#define INFTABLE_147 0x147
@ -847,7 +854,7 @@ typedef enum LinkAge {
#define INFTABLE_191 0x191
#define INFTABLE_HAS_DEKU_STICK_UPGRADE 0x192
#define INFTABLE_HAS_DEKU_NUT_UPGRADE 0x193
#define INFTABLE_195 0x195
#define INFTABLE_SPOKE_TO_KAEPORA_IN_LAKE_HYLIA 0x195
#define INFTABLE_196 0x196
#define INFTABLE_197 0x197
#define INFTABLE_198 0x198

View file

@ -4742,21 +4742,21 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
switch (arg1) {
case 0:
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
if (Flags_GetInfTable(INFTABLE_05)) {
retTextId = 0x1048;
} else {
retTextId = 0x1047;
}
} else {
if (Flags_GetEventChkInf(EVENTCHKINF_02)) {
if (Flags_GetEventChkInf(EVENTCHKINF_FIRST_SPOKE_TO_MIDO)) {
if (Flags_GetInfTable(INFTABLE_03)) {
retTextId = 0x1032;
} else {
retTextId = 0x1031;
}
} else {
if (Flags_GetInfTable(INFTABLE_00)) {
if (Flags_GetInfTable(INFTABLE_GREETED_BY_SARIA)) {
if (Flags_GetInfTable(INFTABLE_01)) {
retTextId = 0x1003;
} else {
@ -4770,14 +4770,14 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 1:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
if (Flags_GetInfTable(INFTABLE_10)) {
retTextId = 0x1046;
} else {
retTextId = 0x1045;
}
} else {
if (Flags_GetEventChkInf(EVENTCHKINF_03)) {
if (Flags_GetEventChkInf(EVENTCHKINF_COMPLAINED_ABOUT_MIDO)) {
if (Flags_GetInfTable(INFTABLE_0E)) {
retTextId = 0x1034;
} else {
@ -4817,7 +4817,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 2:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x1042;
} else {
retTextId = 0x1004;
@ -4834,7 +4834,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 3:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x1043;
} else {
if (Flags_GetInfTable(INFTABLE_1E)) {
@ -4853,7 +4853,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 4:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x1042;
} else {
retTextId = 0x1007;
@ -4870,7 +4870,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 5:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x1044;
} else if (Flags_GetInfTable(INFTABLE_22)) {
retTextId = 0x1009;
@ -4887,7 +4887,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 6:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x1042;
} else if (Flags_GetInfTable(INFTABLE_24)) {
retTextId = 0x100B;
@ -4904,7 +4904,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 7:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x1043;
} else if (Flags_GetInfTable(INFTABLE_26)) {
retTextId = 0x100D;
@ -4921,7 +4921,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 8:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x1043;
} else if (Flags_GetInfTable(INFTABLE_28)) {
retTextId = 0x1019;
@ -4940,7 +4940,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 9:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x1049;
} else {
retTextId = 0x1035;
@ -4955,7 +4955,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 10:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x104A;
} else {
retTextId = 0x1038;
@ -4972,7 +4972,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 11:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x104B;
} else {
retTextId = 0x103C;
@ -4987,7 +4987,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 12:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x104C;
} else {
retTextId = 0x103D;
@ -5002,7 +5002,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 13:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_09)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
retTextId = 0x104D;
} else {
retTextId = 0x103E;
@ -5039,8 +5039,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 17:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
if (Flags_GetInfTable(INFTABLE_6C)) {
retTextId = 0x7008;
} else {
@ -5054,8 +5054,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
retTextId = 0x702D;
break;
case 18:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x7006;
} else {
if (Flags_GetEventChkInf(EVENTCHKINF_RECEIVED_WEIRD_EGG)) {
@ -5074,28 +5074,28 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
if (Flags_GetEventChkInf(EVENTCHKINF_42)) {
retTextId = 0x2012;
} else if (Flags_GetEventChkInf(EVENTCHKINF_41)) {
if (Flags_GetInfTable(INFTABLE_76)) {
if (Flags_GetInfTable(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD)) {
retTextId = 0x2011;
} else {
retTextId = 0x2010;
}
} else if (Flags_GetEventChkInf(EVENTCHKINF_40)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
retTextId = 0x200F;
} else {
retTextId = 0x200E;
}
break;
case 24:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x7044;
} else {
retTextId = 0x7015;
}
break;
case 25:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x7045;
} else {
Flags_GetInfTable(INFTABLE_C2);
@ -5103,8 +5103,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 26:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x7046;
} else {
Flags_GetInfTable(INFTABLE_C2);
@ -5112,12 +5112,12 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 27:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x7047;
} else if (Flags_GetEventChkInf(EVENTCHKINF_TALON_RETURNED_FROM_CASTLE)) {
retTextId = 0x701A;
} else if (Flags_GetEventChkInf(EVENTCHKINF_11)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_INGO_AT_RANCH_BEFORE_TALON_RETURNS)) {
if (Flags_GetInfTable(INFTABLE_C6)) {
retTextId = 0x701C;
} else {
@ -5128,8 +5128,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 28:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x7048;
} else {
Flags_GetInfTable(INFTABLE_CA);
@ -5137,8 +5137,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 29:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x7049;
} else {
Flags_GetInfTable(INFTABLE_CC);
@ -5146,8 +5146,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 30:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x704A;
} else {
Flags_GetInfTable(INFTABLE_CE);
@ -5155,8 +5155,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 31:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x704B;
} else {
Flags_GetInfTable(INFTABLE_D0);
@ -5164,8 +5164,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 32:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x704C;
} else {
Flags_GetInfTable(INFTABLE_D2);
@ -5173,8 +5173,8 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 33:
if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x704D;
} else {
Flags_GetInfTable(INFTABLE_D4);
@ -5197,11 +5197,11 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 38:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_25)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
retTextId = 0x3027;
} else if (Flags_GetEventChkInf(EVENTCHKINF_23)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE)) {
retTextId = 0x3021;
} else if (Flags_GetInfTable(INFTABLE_E0)) {
} else if (Flags_GetInfTable(INFTABLE_SPOKE_TO_DODONGOS_CAVERN_ENTRANCE_GORON)) {
retTextId = 0x302A;
} else {
retTextId = 0x3008;
@ -5216,9 +5216,9 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 39:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_25)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
retTextId = 0x3027;
} else if (Flags_GetEventChkInf(EVENTCHKINF_23)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE)) {
retTextId = 0x3026;
} else {
retTextId = 0x3009;
@ -5233,11 +5233,11 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 40:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_25)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
retTextId = 0x3027;
} else if (Flags_GetEventChkInf(EVENTCHKINF_23)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE)) {
retTextId = 0x3026;
} else if (Flags_GetInfTable(INFTABLE_EB)) {
} else if (Flags_GetInfTable(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON)) {
retTextId = 0x302B;
} else {
retTextId = 0x300A;
@ -5252,9 +5252,9 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 41:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_25)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
retTextId = 0x3027;
} else if (Flags_GetInfTable(INFTABLE_F0)) {
} else if (Flags_GetInfTable(INFTABLE_SPOKE_TO_GC_ENTRANCE_GORON)) {
retTextId = 0x3015;
} else {
retTextId = 0x3014;
@ -5269,9 +5269,9 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 42:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_25)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
retTextId = 0x3027;
} else if (Flags_GetInfTable(INFTABLE_F4)) {
} else if (Flags_GetInfTable(INFTABLE_SPOKE_TO_GC_ISLAND_GORON)) {
retTextId = 0x3017;
} else {
retTextId = 0x3016;
@ -5286,9 +5286,9 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 43:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_25)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
retTextId = 0x3027;
} else if (Flags_GetInfTable(INFTABLE_F8)) {
} else if (Flags_GetInfTable(INFTABLE_SPOKE_TO_DARUNIA_DOOR_GORON)) {
retTextId = 0x3019;
} else {
retTextId = 0x3018;
@ -5302,7 +5302,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 48:
if (Flags_GetEventChkInf(EVENTCHKINF_25)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
retTextId = 0x3029;
} else if (Flags_GetEventChkInf(EVENTCHKINF_20) && Flags_GetEventChkInf(EVENTCHKINF_21)) {
retTextId = 0x301B;
@ -5311,18 +5311,18 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 49:
if (Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x402D;
} else if (Flags_GetEventChkInf(EVENTCHKINF_30)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
retTextId = 0x4007;
} else {
retTextId = 0x4006;
}
break;
case 50:
if (Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x402E;
} else if (Flags_GetEventChkInf(EVENTCHKINF_30)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
if (Flags_GetInfTable(INFTABLE_124)) {
retTextId = 0x4009;
} else {
@ -5333,44 +5333,44 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
}
break;
case 51:
if (Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x402D;
} else if (Flags_GetEventChkInf(EVENTCHKINF_31)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_OBTAINED_RUTOS_LETTER)) {
if (Flags_GetInfTable(INFTABLE_12A)) {
retTextId = 0x400B;
} else {
retTextId = 0x402F;
}
} else if (Flags_GetEventChkInf(EVENTCHKINF_30)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
retTextId = 0x400A;
} else {
retTextId = 0x4006;
}
break;
case 52:
if (Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x402E;
} else if (Flags_GetEventChkInf(EVENTCHKINF_30)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
retTextId = 0x400C;
} else {
retTextId = 0x4006;
}
break;
case 53:
if (Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x402D;
} else if (Flags_GetEventChkInf(EVENTCHKINF_33)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_KING_ZORA_MOVED)) {
retTextId = 0x4010;
} else if (Flags_GetEventChkInf(EVENTCHKINF_30)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
retTextId = 0x400F;
} else {
retTextId = 0x4006;
}
break;
case 54:
if (Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x402E;
} else if (Flags_GetEventChkInf(EVENTCHKINF_30)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
retTextId = 0x4011;
} else {
retTextId = 0x4006;
@ -5378,9 +5378,9 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
break;
case 55:
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_37)) {
if (Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
retTextId = 0x402B;
} else if (Flags_GetEventChkInf(EVENTCHKINF_31)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_OBTAINED_RUTOS_LETTER)) {
if (Flags_GetInfTable(INFTABLE_138)) {
retTextId = 0x401C;
} else {
@ -5430,7 +5430,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
!Flags_GetEventChkInf(EVENTCHKINF_TALON_RETURNED_FROM_CASTLE)) {
retTextId = 0x2044;
} else if (Flags_GetEventChkInf(EVENTCHKINF_TALKED_TO_MALON_FIRST_TIME)) {
if (Flags_GetEventChkInf(EVENTCHKINF_11)) {
if (Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_INGO_AT_RANCH_BEFORE_TALON_RETURNS)) {
retTextId = 0x2043;
} else {
retTextId = 0x2042;
@ -5452,7 +5452,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
if (!Flags_GetEventChkInf(EVENTCHKINF_EPONA_OBTAINED)) {
if (!IS_DAY) {
retTextId = 0x204E;
} else if (Flags_GetInfTable(INFTABLE_9A)) {
} else if (Flags_GetInfTable(INFTABLE_SPOKE_TO_INGO_ONCE_AS_ADULT)) {
retTextId = 0x2031;
} else {
retTextId = 0x2030;
@ -5476,13 +5476,13 @@ void func_80036E50(u16 textId, s16 arg1) {
case 0:
switch (textId) {
case 0x1001:
Flags_SetInfTable(INFTABLE_00);
Flags_SetInfTable(INFTABLE_GREETED_BY_SARIA);
return;
case 0x1002:
Flags_SetInfTable(INFTABLE_01);
return;
case 0x1031:
Flags_SetEventChkInf(EVENTCHKINF_03);
Flags_SetEventChkInf(EVENTCHKINF_COMPLAINED_ABOUT_MIDO);
Flags_SetInfTable(INFTABLE_03);
return;
case 0x1047:
@ -5493,13 +5493,13 @@ void func_80036E50(u16 textId, s16 arg1) {
case 1:
switch (textId) {
case 0x102F:
Flags_SetEventChkInf(EVENTCHKINF_02);
Flags_SetEventChkInf(EVENTCHKINF_FIRST_SPOKE_TO_MIDO);
Flags_SetInfTable(INFTABLE_0C);
return;
case 0x1033:
Audio_PlaySfxGeneral(NA_SE_SY_CORRECT_CHIME, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
Flags_SetEventChkInf(EVENTCHKINF_04);
Flags_SetEventChkInf(EVENTCHKINF_SHOWED_MIDO_SWORD_SHIELD);
Flags_SetInfTable(INFTABLE_0E);
return;
case 0x1045:
@ -5509,7 +5509,7 @@ void func_80036E50(u16 textId, s16 arg1) {
Flags_SetInfTable(INFTABLE_15);
return;
case 0x1067:
Flags_SetEventChkInf(EVENTCHKINF_0A);
Flags_SetEventChkInf(EVENTCHKINF_PLAYED_SARIAS_SONG_FOR_MIDO_AS_ADULT);
Flags_SetInfTable(INFTABLE_17);
return;
case 0x1070:
@ -5591,7 +5591,7 @@ void func_80036E50(u16 textId, s16 arg1) {
case 20:
case 21:
if (textId == 0x2010) {
Flags_SetInfTable(INFTABLE_76);
Flags_SetInfTable(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD);
}
return;
case 25:
@ -5646,28 +5646,28 @@ void func_80036E50(u16 textId, s16 arg1) {
return;
case 38:
if (textId == 0x3008) {
Flags_SetInfTable(INFTABLE_E0);
Flags_SetInfTable(INFTABLE_SPOKE_TO_DODONGOS_CAVERN_ENTRANCE_GORON);
}
return;
case 40:
if (textId == 0x300B) {
Flags_SetInfTable(INFTABLE_EB);
Flags_SetInfTable(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON);
}
return;
case 41:
if (textId == 0x3014) {
Flags_SetInfTable(INFTABLE_F0);
Flags_SetInfTable(INFTABLE_SPOKE_TO_GC_ENTRANCE_GORON);
}
return;
case 42:
if (textId == 0x3016) {
Flags_SetInfTable(INFTABLE_F4);
Flags_SetInfTable(INFTABLE_SPOKE_TO_GC_ISLAND_GORON);
}
return;
case 43:
if (textId == 0x3018) {
Flags_SetEventChkInf(EVENTCHKINF_20);
Flags_SetInfTable(INFTABLE_F8);
Flags_SetInfTable(INFTABLE_SPOKE_TO_DARUNIA_DOOR_GORON);
}
return;
case 48:
@ -5681,12 +5681,12 @@ void func_80036E50(u16 textId, s16 arg1) {
case 53:
case 54:
if (textId == 0x4006) {
Flags_SetEventChkInf(EVENTCHKINF_30);
Flags_SetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA);
}
return;
case 50:
if (textId == 0x4006) {
Flags_SetEventChkInf(EVENTCHKINF_30);
Flags_SetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA);
}
if (textId == 0x4008) {
Flags_SetInfTable(INFTABLE_124);
@ -5694,7 +5694,7 @@ void func_80036E50(u16 textId, s16 arg1) {
return;
case 51:
if (textId == 0x4006) {
Flags_SetEventChkInf(EVENTCHKINF_30);
Flags_SetEventChkInf(EVENTCHKINF_SPOKE_TO_A_ZORA);
}
if (textId == 0x400A) {
Flags_SetEventChkInf(EVENTCHKINF_32);
@ -5705,7 +5705,7 @@ void func_80036E50(u16 textId, s16 arg1) {
return;
case 55:
if (textId == 0x401B) {
Flags_SetEventChkInf(EVENTCHKINF_33);
Flags_SetEventChkInf(EVENTCHKINF_KING_ZORA_MOVED);
Flags_SetInfTable(INFTABLE_138);
}
return;
@ -5842,7 +5842,7 @@ s32 func_800374E0(PlayState* play, Actor* actor, u16 textId) {
if (msgCtx->choiceIndex == 1) {
func_80035B18(play, actor, 0x2032);
}
Flags_SetInfTable(INFTABLE_9A);
Flags_SetInfTable(INFTABLE_SPOKE_TO_INGO_ONCE_AS_ADULT);
ret = 0;
break;
case 0x2036:

View file

@ -78,40 +78,40 @@ typedef struct EntranceCutscene {
} EntranceCutscene; // size = 0x8
EntranceCutscene sEntranceCutsceneTable[] = {
{ ENTR_HYRULE_FIELD_3, 2, EVENTCHKINF_A0, gHyruleFieldIntroCs },
{ ENTR_DEATH_MOUNTAIN_TRAIL_0, 2, EVENTCHKINF_A1, gDMTIntroCs },
{ ENTR_KAKARIKO_VILLAGE_0, 2, EVENTCHKINF_A3, gKakarikoVillageIntroCs },
{ ENTR_ZORAS_DOMAIN_0, 2, EVENTCHKINF_A4, gZorasDomainIntroCs },
{ ENTR_HYRULE_CASTLE_0, 1, EVENTCHKINF_A5, gHyruleCastleIntroCs },
{ ENTR_GORON_CITY_0, 2, EVENTCHKINF_A6, gGoronCityIntroCs },
{ ENTR_TEMPLE_OF_TIME_0, 2, EVENTCHKINF_A7, gTempleOfTimeIntroCs },
{ ENTR_DEKU_TREE_0, 2, EVENTCHKINF_A8, gDekuTreeIntroCs },
{ ENTR_HYRULE_FIELD_3, 2, EVENTCHKINF_ENTERED_HYRULE_FIELD, gHyruleFieldIntroCs },
{ ENTR_DEATH_MOUNTAIN_TRAIL_0, 2, EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_TRAIL, gDMTIntroCs },
{ ENTR_KAKARIKO_VILLAGE_0, 2, EVENTCHKINF_ENTERED_KAKARIKO_VILLAGE, gKakarikoVillageIntroCs },
{ ENTR_ZORAS_DOMAIN_0, 2, EVENTCHKINF_ENTERED_ZORAS_DOMAIN, gZorasDomainIntroCs },
{ ENTR_HYRULE_CASTLE_0, 1, EVENTCHKINF_ENTERED_HYRULE_CASTLE, gHyruleCastleIntroCs },
{ ENTR_GORON_CITY_0, 2, EVENTCHKINF_ENTERED_GORON_CITY, gGoronCityIntroCs },
{ ENTR_TEMPLE_OF_TIME_0, 2, EVENTCHKINF_ENTERED_TEMPLE_OF_TIME, gTempleOfTimeIntroCs },
{ ENTR_DEKU_TREE_0, 2, EVENTCHKINF_ENTERED_DEKU_TREE, gDekuTreeIntroCs },
{ ENTR_HYRULE_FIELD_11, 0, EVENTCHKINF_EPONA_OBTAINED, gHyruleFieldSouthEponaJumpCs },
{ ENTR_HYRULE_FIELD_13, 0, EVENTCHKINF_EPONA_OBTAINED, gHyruleFieldEastEponaJumpCs },
{ ENTR_HYRULE_FIELD_12, 0, EVENTCHKINF_EPONA_OBTAINED, gHyruleFieldWestEponaJumpCs },
{ ENTR_HYRULE_FIELD_15, 0, EVENTCHKINF_EPONA_OBTAINED, gHyruleFieldGateEponaJumpCs },
{ ENTR_HYRULE_FIELD_16, 1, EVENTCHKINF_A9, gHyruleFieldGetOoTCs },
{ ENTR_LAKE_HYLIA_0, 2, EVENTCHKINF_B1, gLakeHyliaIntroCs },
{ ENTR_GERUDO_VALLEY_0, 2, EVENTCHKINF_B2, gGerudoValleyIntroCs },
{ ENTR_GERUDOS_FORTRESS_0, 2, EVENTCHKINF_B3, gGerudoFortressIntroCs },
{ ENTR_LON_LON_RANCH_0, 2, EVENTCHKINF_B4, gLonLonRanchIntroCs },
{ ENTR_JABU_JABU_0, 2, EVENTCHKINF_B5, gJabuJabuIntroCs },
{ ENTR_GRAVEYARD_0, 2, EVENTCHKINF_B6, gGraveyardIntroCs },
{ ENTR_ZORAS_FOUNTAIN_2, 2, EVENTCHKINF_B7, gZorasFountainIntroCs },
{ ENTR_DESERT_COLOSSUS_0, 2, EVENTCHKINF_B8, gDesertColossusIntroCs },
{ ENTR_DEATH_MOUNTAIN_CRATER_0, 2, EVENTCHKINF_B9, gDeathMountainCraterIntroCs },
{ ENTR_HYRULE_CASTLE_0, 0, EVENTCHKINF_BA, gGanonsCastleIntroCs },
{ ENTR_ROYAL_FAMILYS_TOMB_1, 2, EVENTCHKINF_5A, gSunSongGraveSunSongTeachPart2Cs },
{ ENTR_INSIDE_GANONS_CASTLE_2, 2, EVENTCHKINF_BB, gForestBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_3, 2, EVENTCHKINF_BC, gWaterBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_4, 2, EVENTCHKINF_BD, gShadowBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_5, 2, EVENTCHKINF_BE, gFireBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_6, 2, EVENTCHKINF_BF, gLightBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_7, 2, EVENTCHKINF_AD, gSpiritBarrierCs },
{ ENTR_SPIRIT_TEMPLE_BOSS_0, 0, EVENTCHKINF_C0, gSpiritBossNabooruKnuckleIntroCs },
{ ENTR_GERUDOS_FORTRESS_17, 0, EVENTCHKINF_C7, gGerudoFortressFirstCaptureCs },
{ ENTR_DEATH_MOUNTAIN_CRATER_1, 2, EVENTCHKINF_B9, gDeathMountainCraterIntroCs },
{ ENTR_KOKIRI_FOREST_12, 2, EVENTCHKINF_C6, gKokiriForestDekuSproutCs },
{ ENTR_HYRULE_FIELD_16, 1, EVENTCHKINF_LEARNED_SONG_OF_TIME, gHyruleFieldGetOoTCs },
{ ENTR_LAKE_HYLIA_0, 2, EVENTCHKINF_ENTERED_LAKE_HYLIA, gLakeHyliaIntroCs },
{ ENTR_GERUDO_VALLEY_0, 2, EVENTCHKINF_ENTERED_GERUDO_VALLEY, gGerudoValleyIntroCs },
{ ENTR_GERUDOS_FORTRESS_0, 2, EVENTCHKINF_ENTERED_GERUDOS_FORTRESS, gGerudoFortressIntroCs },
{ ENTR_LON_LON_RANCH_0, 2, EVENTCHKINF_ENTERED_LON_LON_RANCH, gLonLonRanchIntroCs },
{ ENTR_JABU_JABU_0, 2, EVENTCHKINF_ENTERED_JABU_JABUS_BELLY, gJabuJabuIntroCs },
{ ENTR_GRAVEYARD_0, 2, EVENTCHKINF_ENTERED_GRAVEYARD, gGraveyardIntroCs },
{ ENTR_ZORAS_FOUNTAIN_2, 2, EVENTCHKINF_ENTERED_ZORAS_FOUNTAIN, gZorasFountainIntroCs },
{ ENTR_DESERT_COLOSSUS_0, 2, EVENTCHKINF_ENTERED_DESERT_COLOSSUS, gDesertColossusIntroCs },
{ ENTR_DEATH_MOUNTAIN_CRATER_0, 2, EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_CRATER, gDeathMountainCraterIntroCs },
{ ENTR_HYRULE_CASTLE_0, 0, EVENTCHKINF_ENTERED_GANONS_CASTLE_EXTERIOR, gGanonsCastleIntroCs },
{ ENTR_ROYAL_FAMILYS_TOMB_1, 2, EVENTCHKINF_LEARNED_SUNS_SONG, gSunSongGraveSunSongTeachPart2Cs },
{ ENTR_INSIDE_GANONS_CASTLE_2, 2, EVENTCHKINF_COMPLETED_FOREST_TRIAL, gForestBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_3, 2, EVENTCHKINF_COMPLETED_WATER_TRIAL, gWaterBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_4, 2, EVENTCHKINF_COMPLETED_SHADOW_TRIAL, gShadowBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_5, 2, EVENTCHKINF_COMPLETED_FIRE_TRIAL, gFireBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_6, 2, EVENTCHKINF_COMPLETED_LIGHT_TRIAL, gLightBarrierCs },
{ ENTR_INSIDE_GANONS_CASTLE_7, 2, EVENTCHKINF_COMPLETED_SPIRIT_TRIAL, gSpiritBarrierCs },
{ ENTR_SPIRIT_TEMPLE_BOSS_0, 0, EVENTCHKINF_NABOORU_ORDERED_TO_FIGHT_BY_TWINROVA, gSpiritBossNabooruKnuckleIntroCs },
{ ENTR_GERUDOS_FORTRESS_17, 0, EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO, gGerudoFortressFirstCaptureCs },
{ ENTR_DEATH_MOUNTAIN_CRATER_1, 2, EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_CRATER, gDeathMountainCraterIntroCs },
{ ENTR_KOKIRI_FOREST_12, 2, EVENTCHKINF_SPOKE_TO_DEKU_TREE_SPROUT, gKokiriForestDekuSproutCs },
};
void* sCutscenesUnknownList[] = {
@ -397,15 +397,15 @@ void CutsceneCmd_Misc(PlayState* play, CutsceneContext* csCtx, CsCmdMisc* cmd) {
break;
case CS_MISC_SET_FLAG_FAST_WINDMILL:
SET_EVENTCHKINF(EVENTCHKINF_65);
SET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL);
break;
case CS_MISC_SET_FLAG_WELL_DRAINED:
SET_EVENTCHKINF(EVENTCHKINF_67);
SET_EVENTCHKINF(EVENTCHKINF_DRAINED_WELL_IN_KAKARIKO);
break;
case CS_MISC_SET_FLAG_LAKE_HYLIA_RESTORED:
SET_EVENTCHKINF(EVENTCHKINF_69);
SET_EVENTCHKINF(EVENTCHKINF_RAISED_LAKE_HYLIA_WATER);
break;
case CS_MISC_VISMONO_BLACK_AND_WHITE:
@ -647,8 +647,8 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti
gSaveContext.save.info.fw.set = 0;
gSaveContext.respawn[RESPAWN_MODE_TOP].data = 0;
if (!GET_EVENTCHKINF(EVENTCHKINF_45)) {
SET_EVENTCHKINF(EVENTCHKINF_45);
if (!GET_EVENTCHKINF(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL)) {
SET_EVENTCHKINF(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL);
play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0;
play->transitionTrigger = TRANS_TRIGGER_START;
gSaveContext.save.cutsceneIndex = 0xFFF3;
@ -912,7 +912,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti
case CS_DEST_KAKARIKO_VILLAGE_NOCTURNE_PART_2:
Item_Give(play, ITEM_SONG_NOCTURNE);
SET_EVENTCHKINF(EVENTCHKINF_54);
SET_EVENTCHKINF(EVENTCHKINF_LEARNED_NOCTURNE_OF_SHADOW);
play->nextEntranceIndex = ENTR_KAKARIKO_VILLAGE_0;
play->transitionTrigger = TRANS_TRIGGER_START;
gSaveContext.save.cutsceneIndex = 0xFFF1;
@ -1181,8 +1181,8 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti
// all 3 are restored. This cutscene destination sends the player to the correct blue warp destination,
// unless all 3 dungeons have been cleared. In that case, the destination is the Temple of Time which
// plays a cutscene where the door opens.
if (GET_EVENTCHKINF(EVENTCHKINF_48) && GET_EVENTCHKINF(EVENTCHKINF_49) &&
GET_EVENTCHKINF(EVENTCHKINF_4A)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP) && GET_EVENTCHKINF(EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP) &&
GET_EVENTCHKINF(EVENTCHKINF_USED_WATER_TEMPLE_BLUE_WARP)) {
play->nextEntranceIndex = ENTR_TEMPLE_OF_TIME_0;
play->transitionTrigger = TRANS_TRIGGER_START;
gSaveContext.save.cutsceneIndex = 0xFFF3;
@ -1218,7 +1218,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti
gSaveContext.save.cutsceneIndex = 0xFFF1;
play->transitionType = TRANS_TYPE_FADE_WHITE_FAST;
} else {
SET_EVENTCHKINF(EVENTCHKINF_C8);
SET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SPIRIT_MEDALLION);
play->nextEntranceIndex = ENTR_DESERT_COLOSSUS_8;
play->transitionTrigger = TRANS_TRIGGER_START;
play->transitionType = TRANS_TYPE_FADE_WHITE;
@ -1359,9 +1359,9 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti
break;
case CS_DEST_GANONS_CASTLE_DISPEL_BARRIER_CONDITONAL:
if (Flags_GetEventChkInf(EVENTCHKINF_BB) && Flags_GetEventChkInf(EVENTCHKINF_BC) &&
Flags_GetEventChkInf(EVENTCHKINF_BD) && Flags_GetEventChkInf(EVENTCHKINF_BE) &&
Flags_GetEventChkInf(EVENTCHKINF_BF) && Flags_GetEventChkInf(EVENTCHKINF_AD)) {
if (Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_FOREST_TRIAL) && Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_WATER_TRIAL) &&
Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_SHADOW_TRIAL) && Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_FIRE_TRIAL) &&
Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_LIGHT_TRIAL) && Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_SPIRIT_TRIAL)) {
play->csCtx.script = SEGMENTED_TO_VIRTUAL(gTowerBarrierCs);
play->csCtx.curFrame = 0;
gSaveContext.cutsceneTrigger = 1;
@ -1387,7 +1387,7 @@ void CutsceneCmd_Destination(PlayState* play, CutsceneContext* csCtx, CsCmdDesti
break;
case CS_DEST_FROM_RAURU_FINAL_MESSAGE_CONDITIONAL:
if (GET_EVENTCHKINF(EVENTCHKINF_C8)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SPIRIT_MEDALLION)) {
play->nextEntranceIndex = ENTR_GRAVEYARD_8;
play->transitionTrigger = TRANS_TRIGGER_START;
play->transitionType = TRANS_TYPE_FADE_WHITE;
@ -2394,29 +2394,29 @@ void Cutscene_HandleConditionalTriggers(PlayState* play) {
if ((gSaveContext.gameMode == GAMEMODE_NORMAL) && (gSaveContext.respawnFlag <= 0) &&
(gSaveContext.save.cutsceneIndex < 0xFFF0)) {
if ((gSaveContext.save.entranceIndex == ENTR_DESERT_COLOSSUS_1) && !Flags_GetEventChkInf(EVENTCHKINF_AC)) {
Flags_SetEventChkInf(EVENTCHKINF_AC);
if ((gSaveContext.save.entranceIndex == ENTR_DESERT_COLOSSUS_1) && !Flags_GetEventChkInf(EVENTCHKINF_LEARNED_REQUIEM_OF_SPIRIT)) {
Flags_SetEventChkInf(EVENTCHKINF_LEARNED_REQUIEM_OF_SPIRIT);
gSaveContext.save.entranceIndex = ENTR_DESERT_COLOSSUS_0;
gSaveContext.save.cutsceneIndex = 0xFFF0;
} else if ((gSaveContext.save.entranceIndex == ENTR_KAKARIKO_VILLAGE_0) && LINK_IS_ADULT &&
GET_EVENTCHKINF(EVENTCHKINF_48) && GET_EVENTCHKINF(EVENTCHKINF_49) &&
GET_EVENTCHKINF(EVENTCHKINF_4A) && !Flags_GetEventChkInf(EVENTCHKINF_AA)) {
Flags_SetEventChkInf(EVENTCHKINF_AA);
GET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP) && GET_EVENTCHKINF(EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP) &&
GET_EVENTCHKINF(EVENTCHKINF_USED_WATER_TEMPLE_BLUE_WARP) && !Flags_GetEventChkInf(EVENTCHKINF_BONGO_BONGO_ESCAPED_FROM_WELL)) {
Flags_SetEventChkInf(EVENTCHKINF_BONGO_BONGO_ESCAPED_FROM_WELL);
gSaveContext.save.cutsceneIndex = 0xFFF0;
} else if ((gSaveContext.save.entranceIndex == ENTR_LOST_WOODS_9) && !Flags_GetEventChkInf(EVENTCHKINF_C1)) {
Flags_SetEventChkInf(EVENTCHKINF_C1);
} else if ((gSaveContext.save.entranceIndex == ENTR_LOST_WOODS_9) && !Flags_GetEventChkInf(EVENTCHKINF_SPOKE_TO_SARIA_ON_BRIDGE)) {
Flags_SetEventChkInf(EVENTCHKINF_SPOKE_TO_SARIA_ON_BRIDGE);
Item_Give(play, ITEM_OCARINA_FAIRY);
gSaveContext.save.entranceIndex = ENTR_LOST_WOODS_0;
gSaveContext.save.cutsceneIndex = 0xFFF0;
} else if (CHECK_QUEST_ITEM(QUEST_MEDALLION_SPIRIT) && CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW) &&
LINK_IS_ADULT && !Flags_GetEventChkInf(EVENTCHKINF_C4) &&
LINK_IS_ADULT && !Flags_GetEventChkInf(EVENTCHKINF_RETURNED_TO_TEMPLE_OF_TIME_WITH_ALL_MEDALLIONS) &&
(gEntranceTable[((void)0, gSaveContext.save.entranceIndex)].sceneId == SCENE_TEMPLE_OF_TIME)) {
Flags_SetEventChkInf(EVENTCHKINF_C4);
Flags_SetEventChkInf(EVENTCHKINF_RETURNED_TO_TEMPLE_OF_TIME_WITH_ALL_MEDALLIONS);
gSaveContext.save.entranceIndex = ENTR_TEMPLE_OF_TIME_0;
gSaveContext.save.cutsceneIndex = 0xFFF8;
} else if (!Flags_GetEventChkInf(EVENTCHKINF_C7) &&
} else if (!Flags_GetEventChkInf(EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO) &&
(gEntranceTable[((void)0, gSaveContext.save.entranceIndex)].sceneId == SCENE_GANON_BOSS)) {
Flags_SetEventChkInf(EVENTCHKINF_C7);
Flags_SetEventChkInf(EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO);
gSaveContext.save.entranceIndex = ENTR_GANON_BOSS_0;
gSaveContext.save.cutsceneIndex = 0xFFF0;
}

View file

@ -3,12 +3,12 @@
QuestHintCmd sChildSariaQuestHints[] = {
QUEST_HINT_STRENGTH_UPG(SKIP, 0, false, 3),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_37, false, 0x61),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP, false, 0x61),
QUEST_HINT_END(0x64),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_25, false, 0x62),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_37, false, 0x63),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_43, false, 0x65),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP, false, 0x62),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP, false, 0x63),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_OBTAINED_OCARINA_OF_TIME, false, 0x65),
QUEST_HINT_MEDALLION(CHECK, ITEM_MEDALLION_FOREST, false, 0x66),
QUEST_HINT_MEDALLION(CHECK, ITEM_MEDALLION_FIRE, false, 0x66),
QUEST_HINT_MEDALLION(CHECK, ITEM_MEDALLION_WATER, false, 0x66),

View file

@ -2627,23 +2627,23 @@ void Environment_WarpSongLeave(PlayState* play) {
switch (play->nextEntranceIndex) {
case ENTR_DEATH_MOUNTAIN_CRATER_0:
Flags_SetEventChkInf(EVENTCHKINF_B9);
Flags_SetEventChkInf(EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_CRATER);
break;
case ENTR_LAKE_HYLIA_0:
Flags_SetEventChkInf(EVENTCHKINF_B1);
Flags_SetEventChkInf(EVENTCHKINF_ENTERED_LAKE_HYLIA);
break;
case ENTR_DESERT_COLOSSUS_0:
Flags_SetEventChkInf(EVENTCHKINF_B8);
Flags_SetEventChkInf(EVENTCHKINF_ENTERED_DESERT_COLOSSUS);
break;
case ENTR_GRAVEYARD_0:
Flags_SetEventChkInf(EVENTCHKINF_B6);
Flags_SetEventChkInf(EVENTCHKINF_ENTERED_GRAVEYARD);
break;
case ENTR_TEMPLE_OF_TIME_0:
Flags_SetEventChkInf(EVENTCHKINF_A7);
Flags_SetEventChkInf(EVENTCHKINF_ENTERED_TEMPLE_OF_TIME);
break;
case ENTR_SACRED_FOREST_MEADOW_0:

View file

@ -2501,7 +2501,7 @@ void Message_OpenText(PlayState* play, u16 textId) {
textId += (gSaveContext.save.info.inventory.questItems & 0xF0000000 & 0xF0000000) >> QUEST_HEART_PIECE_COUNT;
} else if (msgCtx->textId == 0xC && CHECK_OWNED_EQUIP(EQUIP_TYPE_SWORD, EQUIP_INV_SWORD_BIGGORON)) {
textId = 0xB; // Traded Giant's Knife for Biggoron Sword
} else if (msgCtx->textId == 0xB4 && GET_EVENTCHKINF(EVENTCHKINF_96)) {
} else if (msgCtx->textId == 0xB4 && GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_CURSED_MAN_IN_SKULL_HOUSE)) {
textId = 0xB5; // Destroyed Gold Skulltula
}
// Ocarina Staff + Dialog

View file

@ -1828,7 +1828,7 @@ u8 Item_Give(PlayState* play, u8 item) {
}
} else if ((item >= ITEM_WEIRD_EGG) && (item <= ITEM_CLAIM_CHECK)) {
if (item == ITEM_POACHERS_SAW) {
SET_ITEMGETINF(ITEMGETINF_1F);
SET_ITEMGETINF(ITEMGETINF_OBTAINED_NUT_UPGRADE_FROM_STAGE);
}
temp = INV_CONTENT(item);

View file

@ -373,7 +373,7 @@ void Play_Init(GameState* thisx) {
}
} else if ((gEntranceTable[((void)0, gSaveContext.save.entranceIndex)].sceneId == SCENE_KOKIRI_FOREST) &&
LINK_IS_ADULT && !IS_CUTSCENE_LAYER) {
gSaveContext.sceneLayer = GET_EVENTCHKINF(EVENTCHKINF_48) ? 3 : 2;
gSaveContext.sceneLayer = GET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP) ? 3 : 2;
}
Play_SpawnScene(

View file

@ -1192,9 +1192,9 @@ void Scene_DrawConfigKokiriForest(PlayState* play) {
spA0 = play->roomCtx.drawParams[0] + 500;
} else if (
#if OOT_VERSION < PAL_1_0
!IS_CUTSCENE_LAYER && GET_EVENTCHKINF(EVENTCHKINF_07)
!IS_CUTSCENE_LAYER && GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_KOKIRI_EMERALD_DEKU_TREE_DEAD)
#else
(!IS_CUTSCENE_LAYER || LINK_IS_ADULT) && GET_EVENTCHKINF(EVENTCHKINF_07)
(!IS_CUTSCENE_LAYER || LINK_IS_ADULT) && GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_KOKIRI_EMERALD_DEKU_TREE_DEAD)
#endif
) {
spA0 = 2150;
@ -1223,7 +1223,7 @@ void Scene_DrawConfigLakeHylia(PlayState* play) {
OPEN_DISPS(play->state.gfxCtx, "../z_scene_table.c", 7058);
if (IS_CUTSCENE_LAYER || (LINK_IS_ADULT && !GET_EVENTCHKINF(EVENTCHKINF_69))) {
if (IS_CUTSCENE_LAYER || (LINK_IS_ADULT && !GET_EVENTCHKINF(EVENTCHKINF_RAISED_LAKE_HYLIA_WATER))) {
play->roomCtx.drawParams[0] = 87;
}

View file

@ -327,8 +327,8 @@ void Sram_InitDebugSave(void) {
gSaveContext.save.info.horseData.angle = -0x6AD9;
gSaveContext.save.info.infTable[0] |= 0x5009;
gSaveContext.save.info.eventChkInf[0] |= 0x123F;
SET_EVENTCHKINF(EVENTCHKINF_80);
SET_EVENTCHKINF(EVENTCHKINF_C4);
SET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE);
SET_EVENTCHKINF(EVENTCHKINF_RETURNED_TO_TEMPLE_OF_TIME_WITH_ALL_MEDALLIONS);
if (LINK_AGE_IN_YEARS == YEARS_CHILD) {
gSaveContext.save.info.equips.buttonItems[0] = ITEM_SWORD_KOKIRI;
@ -497,7 +497,7 @@ void Sram_OpenSave(SramContext* sramCtx) {
}
// if zelda cutscene has been watched but lullaby was not obtained, restore cutscene and take away letter
if (GET_EVENTCHKINF(EVENTCHKINF_40) && !CHECK_QUEST_ITEM(QUEST_SONG_LULLABY)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER) && !CHECK_QUEST_ITEM(QUEST_SONG_LULLABY)) {
i = gSaveContext.save.info.eventChkInf[EVENTCHKINF_40_INDEX] & ~EVENTCHKINF_40_MASK;
gSaveContext.save.info.eventChkInf[EVENTCHKINF_40_INDEX] = i;

View file

@ -2,32 +2,32 @@
#include "z64quest_hint_commands.h"
QuestHintCmd gOverworldNaviQuestHints[] = {
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_05, false, 0x40),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_09, false, 0x41),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_DEKU_TREE_OPENED_MOUTH, false, 0x40),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP, false, 0x41),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_RECEIVED_WEIRD_EGG, false, 0x42),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_TALON_RETURNED_FROM_CASTLE, false, 0x43),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_40, false, 0x44),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_OBTAINED_ZELDAS_LETTER, false, 0x44),
QUEST_HINT_SONG(CHECK, ITEM_SONG_SARIA, false, 0x45),
QUEST_HINT_STRENGTH_UPG(CHECK, 0, true, 0x46),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_25, false, 0x47),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP, false, 0x47),
QUEST_HINT_MAGIC(CHECK, false, 0x48),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_33, false, 0x49),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_37, false, 0x4A),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_80, false, 0x4B),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_43, false, 0x4C),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_45, false, 0x4D),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_KING_ZORA_MOVED, false, 0x49),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP, false, 0x4A),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE, false, 0x4B),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_OBTAINED_OCARINA_OF_TIME, false, 0x4C),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL, false, 0x4D),
QUEST_HINT_ITEM(CHECK, ITEM_HOOKSHOT, ITEM_NONE, true, 0x4E),
QUEST_HINT_MEDALLION(CHECK, ITEM_MEDALLION_FOREST, false, 0x50),
QUEST_HINT_MEDALLION(CHECK, ITEM_MEDALLION_FIRE, false, 0x51),
QUEST_HINT_BOOTS(CHECK, ITEM_BOOTS_IRON, false, 0x52),
QUEST_HINT_MEDALLION(CHECK, ITEM_MEDALLION_WATER, false, 0x53),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_AA, false, 0x54),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_BONGO_BONGO_ESCAPED_FROM_WELL, false, 0x54),
QUEST_HINT_ITEM(CHECK, ITEM_LENS_OF_TRUTH, ITEM_NONE, true, 0x55),
QUEST_HINT_MEDALLION(CHECK, ITEM_MEDALLION_SHADOW, false, 0x57),
QUEST_HINT_SONG(CHECK, ITEM_SONG_REQUIEM, false, 0x58),
QUEST_HINT_STRENGTH_UPG(CHECK, 1, true, 0x56),
QUEST_HINT_MEDALLION(CHECK, ITEM_MEDALLION_SPIRIT, false, 0x5A),
QUEST_HINT_ITEM(CHECK, ITEM_ARROW_LIGHT, ITEM_NONE, true, 0x5B),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_C3, false, 0x5C),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_DISPELLED_GANONS_TOWER_BARRIER, false, 0x5C),
QUEST_HINT_END(0x5F),
};

View file

@ -248,8 +248,8 @@ void BgBreakwall_Wait(BgBreakwall* this, PlayState* play) {
Actor_PlaySfx(&this->dyna.actor, NA_SE_EV_WALL_BROKEN);
}
if ((wallType == BWALL_DC_ENTRANCE) && !Flags_GetEventChkInf(EVENTCHKINF_B0)) {
Flags_SetEventChkInf(EVENTCHKINF_B0);
if ((wallType == BWALL_DC_ENTRANCE) && !Flags_GetEventChkInf(EVENTCHKINF_ENTERED_DODONGOS_CAVERN)) {
Flags_SetEventChkInf(EVENTCHKINF_ENTERED_DODONGOS_CAVERN);
Cutscene_SetScript(play, gDcOpeningCs);
gSaveContext.cutsceneTrigger = 1;
Audio_PlaySfxGeneral(NA_SE_SY_CORRECT_CHIME, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,

View file

@ -182,7 +182,7 @@ void BgDodoago_WaitExplosives(BgDodoago* this, PlayState* play) {
sFirstExplosiveFlag = true;
sTimer = 50;
}
} else if (Flags_GetEventChkInf(EVENTCHKINF_B0)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_ENTERED_DODONGOS_CAVERN)) {
Collider_UpdateCylinder(&this->dyna.actor, &this->colliderMain);
Collider_UpdateCylinder(&this->dyna.actor, &this->colliderLeft);
Collider_UpdateCylinder(&this->dyna.actor, &this->colliderRight);
@ -312,7 +312,7 @@ void BgDodoago_Update(Actor* thisx, PlayState* play) {
void BgDodoago_Draw(Actor* thisx, PlayState* play) {
OPEN_DISPS(play->state.gfxCtx, "../z_bg_dodoago.c", 672);
if (Flags_GetEventChkInf(EVENTCHKINF_B0)) {
if (Flags_GetEventChkInf(EVENTCHKINF_ENTERED_DODONGOS_CAVERN)) {
Gfx_SetupDL_25Opa(play->state.gfxCtx);
MATRIX_FINALIZE_AND_LOAD(POLY_OPA_DISP++, play->state.gfxCtx, "../z_bg_dodoago.c", 677);
gSPDisplayList(POLY_OPA_DISP++, gDodongoLowerJawDL);

View file

@ -43,7 +43,7 @@ void BgGateShutter_Init(Actor* thisx, PlayState* play) {
this->somePos.x = thisx->world.pos.x;
this->somePos.y = thisx->world.pos.y;
this->somePos.z = thisx->world.pos.z;
if ((GET_INFTABLE(INFTABLE_76) || GET_EVENTCHKINF(EVENTCHKINF_45)) && (play->sceneId == SCENE_KAKARIKO_VILLAGE)) {
if ((GET_INFTABLE(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD) || GET_EVENTCHKINF(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL)) && (play->sceneId == SCENE_KAKARIKO_VILLAGE)) {
thisx->world.pos.x = -89.0f;
thisx->world.pos.z = -1375.0f;
}
@ -62,7 +62,7 @@ void BgGateShutter_Destroy(Actor* thisx, PlayState* play) {
}
void func_8087828C(BgGateShutter* this, PlayState* play) {
if (this->openingState == 1 && !GET_INFTABLE(INFTABLE_76)) {
if (this->openingState == 1 && !GET_INFTABLE(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD)) {
this->unk_178 = 2;
this->actionFunc = func_80878300;
} else if (this->openingState == 2) {

View file

@ -49,7 +49,7 @@ void BgGjyoBridge_Init(Actor* thisx, PlayState* play) {
this->dyna.bgId = DynaPoly_SetBgActor(play, &play->colCtx.dyna, thisx, colHeader);
if (GET_EVENTCHKINF(EVENTCHKINF_4D)) {
if (GET_EVENTCHKINF(EVENTCHKINF_RAINBOW_BRIDGE_BUILT)) {
this->actionFunc = func_808787A4;
} else {
this->dyna.actor.draw = NULL;
@ -85,7 +85,7 @@ void BgGjyoBridge_SpawnBridge(BgGjyoBridge* this, PlayState* play) {
(play->csCtx.actorCues[2]->id == 2)) {
this->dyna.actor.draw = BgGjyoBridge_Draw;
DynaPoly_EnableCollision(play, &play->colCtx.dyna, this->dyna.bgId);
SET_EVENTCHKINF(EVENTCHKINF_4D);
SET_EVENTCHKINF(EVENTCHKINF_RAINBOW_BRIDGE_BUILT);
}
}

View file

@ -55,7 +55,7 @@ void BgRelayObjects_Init(Actor* thisx, PlayState* play) {
DynaPolyActor_Init(&this->dyna, DYNA_TRANSFORM_POS | DYNA_TRANSFORM_ROT_Y);
if (thisx->params == WINDMILL_ROTATING_GEAR) {
CollisionHeader_GetVirtual(&gWindmillRotatingPlatformCol, &colHeader);
if (GET_EVENTCHKINF(EVENTCHKINF_65)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL)) {
thisx->world.rot.y = 0x400;
} else {
thisx->world.rot.y = 0x80;
@ -109,7 +109,7 @@ void BgRelayObjects_Destroy(Actor* thisx, PlayState* play) {
DynaPoly_DeleteBgActor(play, &play->colCtx.dyna, this->dyna.bgId);
if ((this->dyna.actor.params == WINDMILL_ROTATING_GEAR) && (gSaveContext.save.cutsceneIndex < 0xFFF0)) {
CLEAR_EVENTCHKINF(EVENTCHKINF_65);
CLEAR_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL);
}
}
@ -180,9 +180,9 @@ void func_808A932C(BgRelayObjects* this, PlayState* play) {
void func_808A939C(BgRelayObjects* this, PlayState* play) {
if (CutsceneFlags_Get(play, 5)) {
SET_EVENTCHKINF(EVENTCHKINF_65);
SET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL);
}
if (GET_EVENTCHKINF(EVENTCHKINF_65)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL)) {
Math_ScaledStepToS(&this->dyna.actor.world.rot.y, 0x400, 8);
} else {
Math_ScaledStepToS(&this->dyna.actor.world.rot.y, 0x80, 8);

View file

@ -78,7 +78,7 @@ void BgSpot00Hanebasi_Init(Actor* thisx, PlayState* play) {
if (gSaveContext.sceneLayer != 6) {
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && CHECK_QUEST_ITEM(QUEST_GORON_RUBY) &&
CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE) && !GET_EVENTCHKINF(EVENTCHKINF_80)) {
CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE) && !GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
this->dyna.actor.shape.rot.x = -0x4000;
}
}
@ -138,7 +138,7 @@ void BgSpot00Hanebasi_DrawbridgeWait(BgSpot00Hanebasi* this, PlayState* play) {
BgSpot00Hanebasi* child = (BgSpot00Hanebasi*)this->dyna.actor.child;
if (!IS_CUTSCENE_LAYER && CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && CHECK_QUEST_ITEM(QUEST_GORON_RUBY) &&
CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE) && !GET_EVENTCHKINF(EVENTCHKINF_80)) {
CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE) && !GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
return;
}
@ -206,14 +206,14 @@ void BgSpot00Hanebasi_Update(Actor* thisx, PlayState* play) {
if (this->dyna.actor.params == DT_DRAWBRIDGE) {
if (play->sceneId == SCENE_HYRULE_FIELD) {
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && CHECK_QUEST_ITEM(QUEST_GORON_RUBY) &&
CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE) && !GET_EVENTCHKINF(EVENTCHKINF_80) && LINK_IS_CHILD) {
CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE) && !GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) && LINK_IS_CHILD) {
player = GET_PLAYER(play);
if ((player->actor.world.pos.x > -450.0f) && (player->actor.world.pos.x < 450.0f) &&
(player->actor.world.pos.z > 1080.0f) && (player->actor.world.pos.z < 1700.0f) &&
(!(Play_InCsMode(play)))) {
SET_EVENTCHKINF(EVENTCHKINF_80);
Flags_SetEventChkInf(EVENTCHKINF_82);
SET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE);
Flags_SetEventChkInf(EVENTCHKINF_DRAWBRIDGE_OPENED_AFTER_ZELDA_FLED);
this->actionFunc = BgSpot00Hanebasi_DoNothing;
Player_SetCsActionWithHaltedActors(play, &player->actor, PLAYER_CSACTION_8);
play->nextEntranceIndex = ENTR_HYRULE_FIELD_0;

View file

@ -47,7 +47,7 @@ void BgSpot01Fusya_Init(Actor* thisx, PlayState* play) {
this->unk_158 = 100.0f;
this->unk_15C = 0.5f;
if (!IS_CUTSCENE_LAYER) {
CLEAR_EVENTCHKINF(EVENTCHKINF_65);
CLEAR_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL);
}
BgSpot01Fusya_SetupAction(this, func_808AAA50);
}
@ -59,7 +59,7 @@ void func_808AAA50(BgSpot01Fusya* this, PlayState* play) {
f32 temp;
Actor* thisx = &this->actor;
if (GET_EVENTCHKINF(EVENTCHKINF_65)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL)) {
this->unk_158 = 1800.0f;
}
thisx->shape.rot.z += this->unk_154;

View file

@ -302,7 +302,7 @@ void BgSpot01Idohashira_Init(Actor* thisx, PlayState* play) {
this->dyna.bgId = DynaPoly_SetBgActor(play, &play->colCtx.dyna, &this->dyna.actor, colHeader);
if (!IS_CUTSCENE_LAYER) {
if (GET_EVENTCHKINF(EVENTCHKINF_54) && LINK_IS_ADULT) {
if (GET_EVENTCHKINF(EVENTCHKINF_LEARNED_NOCTURNE_OF_SHADOW) && LINK_IS_ADULT) {
Actor_Kill(&this->dyna.actor);
} else {
this->action = 0;

View file

@ -36,7 +36,7 @@ void BgSpot01Idomizu_Init(Actor* thisx, PlayState* play) {
BgSpot01Idomizu* this = (BgSpot01Idomizu*)thisx;
Actor_ProcessInitChain(&this->actor, sInitChain);
if (GET_EVENTCHKINF(EVENTCHKINF_67) || LINK_AGE_IN_YEARS == YEARS_ADULT) {
if (GET_EVENTCHKINF(EVENTCHKINF_DRAINED_WELL_IN_KAKARIKO) || LINK_AGE_IN_YEARS == YEARS_ADULT) {
this->waterHeight = -550.0f;
} else {
this->waterHeight = 52.0f;
@ -49,7 +49,7 @@ void BgSpot01Idomizu_Destroy(Actor* thisx, PlayState* play) {
}
void func_808ABB84(BgSpot01Idomizu* this, PlayState* play) {
if (GET_EVENTCHKINF(EVENTCHKINF_67)) {
if (GET_EVENTCHKINF(EVENTCHKINF_DRAINED_WELL_IN_KAKARIKO)) {
this->waterHeight = -550.0f;
}
play->colCtx.colHeader->waterBoxes[0].ySurface = this->actor.world.pos.y;

View file

@ -87,7 +87,7 @@ void BgSpot02Objects_Init(Actor* thisx, PlayState* play) {
this->dyna.bgId = DynaPoly_SetBgActor(play, &play->colCtx.dyna, thisx, colHeader);
if ((GET_EVENTCHKINF(EVENTCHKINF_1D) && (play->sceneId == SCENE_GRAVEYARD) && (thisx->params == 2)) ||
if ((GET_EVENTCHKINF(EVENTCHKINF_DESTROYED_ROYAL_FAMILY_TOMB) && (play->sceneId == SCENE_GRAVEYARD) && (thisx->params == 2)) ||
(LINK_IS_ADULT && (thisx->params == 1))) {
Actor_Kill(thisx);
}
@ -99,7 +99,7 @@ void BgSpot02Objects_Init(Actor* thisx, PlayState* play) {
this->actionFunc = func_808ACC34;
thisx->draw = func_808ACCB8;
if (GET_EVENTCHKINF(EVENTCHKINF_1D)) {
if (GET_EVENTCHKINF(EVENTCHKINF_DESTROYED_ROYAL_FAMILY_TOMB)) {
Actor_Kill(thisx);
}
break;
@ -130,7 +130,7 @@ void func_808AC908(BgSpot02Objects* this, PlayState* play) {
if (play->csCtx.state != CS_STATE_IDLE) {
if (play->csCtx.actorCues[3] != NULL && play->csCtx.actorCues[3]->id == 2) {
Actor_PlaySfx(&this->dyna.actor, NA_SE_EV_GRAVE_EXPLOSION);
SET_EVENTCHKINF(EVENTCHKINF_1D);
SET_EVENTCHKINF(EVENTCHKINF_DESTROYED_ROYAL_FAMILY_TOMB);
this->timer = 25;
pos.x = (Math_SinS(this->dyna.actor.shape.rot.y) * 50.0f) + this->dyna.actor.world.pos.x;
pos.y = this->dyna.actor.world.pos.y + 30.0f;

View file

@ -124,7 +124,7 @@ void BgSpot06Objects_Init(Actor* thisx, PlayState* play) {
Collider_SetJntSph(play, &this->collider, thisx, &sJntSphInit, this->colliderItem);
if (LINK_IS_ADULT && Flags_GetSwitch(play, this->switchFlag)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_69)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_RAISED_LAKE_HYLIA_WATER)) {
thisx->home.pos.y = thisx->world.pos.y = WATER_LEVEL_LOWERED;
} else {
thisx->home.pos.y = thisx->world.pos.y = WATER_LEVEL_RAISED;
@ -150,7 +150,7 @@ void BgSpot06Objects_Init(Actor* thisx, PlayState* play) {
Actor_ProcessInitChain(thisx, sInitChainWaterPlane);
thisx->flags = ACTOR_FLAG_4 | ACTOR_FLAG_5;
if (LINK_IS_ADULT && !GET_EVENTCHKINF(EVENTCHKINF_69)) {
if (LINK_IS_ADULT && !GET_EVENTCHKINF(EVENTCHKINF_RAISED_LAKE_HYLIA_WATER)) {
if (!IS_CUTSCENE_LAYER) {
this->lakeHyliaWaterLevel = -681.0f;
play->colCtx.colHeader->waterBoxes[LHWB_GERUDO_VALLEY_RIVER_LOWER].ySurface =
@ -482,7 +482,7 @@ void BgSpot06Objects_Draw(Actor* thisx, PlayState* play) {
* cleared.
*/
void BgSpot06Objects_WaterPlaneCutsceneWait(BgSpot06Objects* this, PlayState* play) {
if (GET_EVENTCHKINF(EVENTCHKINF_69)) {
if (GET_EVENTCHKINF(EVENTCHKINF_RAISED_LAKE_HYLIA_WATER)) {
this->actionFunc = BgSpot06Objects_WaterPlaneCutsceneRise;
}
}

View file

@ -446,7 +446,7 @@ void func_808B5950(BgSpot16Bombstone* this, PlayState* play) {
OnePointCutscene_Init(play, 4180, 50, NULL, CAM_ID_MAIN);
Flags_SetSwitch(play, this->switchFlag);
SET_EVENTCHKINF(EVENTCHKINF_23);
SET_EVENTCHKINF(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE);
func_808B5A78(this);
} else {

View file

@ -70,7 +70,7 @@ void BgSpot16Doughnut_Init(Actor* thisx, PlayState* play) {
break;
}
PRINTF(VT_FGCOL(CYAN) "%f" VT_RST "\n", this->actor.scale.x);
if (!LINK_IS_ADULT || GET_EVENTCHKINF(EVENTCHKINF_2F)) {
if (!LINK_IS_ADULT || GET_EVENTCHKINF(EVENTCHKINF_DEATH_MOUNTAIN_ERUPTED)) {
this->fireFlag &= ~1;
} else {
this->fireFlag |= 1;

View file

@ -47,7 +47,7 @@ void BgSpot18Shutter_Init(Actor* thisx, PlayState* play) {
if (param == 0) {
if (LINK_AGE_IN_YEARS == YEARS_ADULT) {
if (GET_INFTABLE(INFTABLE_109)) {
if (GET_INFTABLE(INFTABLE_GORON_CITY_DOORS_UNLOCKED)) {
this->actionFunc = func_808B95AC;
this->dyna.actor.world.pos.y += 180.0f;
} else {
@ -62,7 +62,7 @@ void BgSpot18Shutter_Init(Actor* thisx, PlayState* play) {
}
}
} else {
if (GET_INFTABLE(INFTABLE_109)) {
if (GET_INFTABLE(INFTABLE_GORON_CITY_DOORS_UNLOCKED)) {
this->dyna.actor.world.pos.x += 125.0f * Math_CosS(this->dyna.actor.world.rot.y);
this->dyna.actor.world.pos.z -= 125.0f * Math_SinS(this->dyna.actor.world.rot.y);
this->actionFunc = func_808B95AC;
@ -93,7 +93,7 @@ void func_808B95B8(BgSpot18Shutter* this, PlayState* play) {
}
void func_808B9618(BgSpot18Shutter* this, PlayState* play) {
if (GET_INFTABLE(INFTABLE_109)) {
if (GET_INFTABLE(INFTABLE_GORON_CITY_DOORS_UNLOCKED)) {
Actor_SetFocus(&this->dyna.actor, 70.0f);
if (PARAMS_GET_U(this->dyna.actor.params, 8, 1) == 0) {
this->actionFunc = func_808B9698;

View file

@ -46,7 +46,7 @@ void BgTokiHikari_Init(Actor* thisx, PlayState* play) {
this->actionFunc = BgTokiHikari_DoNothing;
break;
case 1:
if (!GET_EVENTCHKINF(EVENTCHKINF_4B)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OPENED_DOOR_OF_TIME)) {
this->actionFunc = func_808BA204;
this->unk_14C = 0.0f;
} else {

View file

@ -99,7 +99,7 @@ void func_808BAF40(BgTokiSwd* this, PlayState* play) {
play->csCtx.script = D_808BBD90;
gSaveContext.cutsceneTrigger = 1;
}
if (!LINK_IS_ADULT || GET_EVENTCHKINF(EVENTCHKINF_55)) {
if (!LINK_IS_ADULT || GET_EVENTCHKINF(EVENTCHKINF_LEARNED_PRELUDE_OF_LIGHT)) {
if (Actor_HasParent(&this->actor, play)) {
if (!LINK_IS_ADULT) {
Item_Give(play, ITEM_SWORD_MASTER);

View file

@ -139,9 +139,9 @@ void func_808BC864(BgTreemouth* this, PlayState* play) {
}
void func_808BC8B8(BgTreemouth* this, PlayState* play) {
if (!Flags_GetEventChkInf(EVENTCHKINF_05) || LINK_IS_ADULT) {
if (!Flags_GetEventChkInf(EVENTCHKINF_DEKU_TREE_OPENED_MOUTH) || LINK_IS_ADULT) {
if (!LINK_IS_ADULT) {
if (Flags_GetEventChkInf(EVENTCHKINF_0C)) {
if (Flags_GetEventChkInf(EVENTCHKINF_MET_DEKU_TREE)) {
if (Actor_IsFacingAndNearPlayer(&this->dyna.actor, 1658.0f, 0x7530)) {
this->dyna.actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
if (this->dyna.actor.isLockedOn) {
@ -152,7 +152,7 @@ void func_808BC8B8(BgTreemouth* this, PlayState* play) {
}
}
} else if (Actor_IsFacingAndNearPlayer(&this->dyna.actor, 1658.0f, 0x4E20)) {
Flags_SetEventChkInf(EVENTCHKINF_0C);
Flags_SetEventChkInf(EVENTCHKINF_MET_DEKU_TREE);
play->csCtx.script = D_808BCE20;
gSaveContext.cutsceneTrigger = 1;
BgTreemouth_SetupAction(this, func_808BC9EC);
@ -187,7 +187,7 @@ void func_808BC9EC(BgTreemouth* this, PlayState* play) {
if (play->msgCtx.choiceIndex == 0) {
play->csCtx.script = D_808BD520;
Flags_SetEventChkInf(EVENTCHKINF_05);
Flags_SetEventChkInf(EVENTCHKINF_DEKU_TREE_OPENED_MOUTH);
BgTreemouth_SetupAction(this, func_808BCAF0);
} else {
play->csCtx.script = D_808BD790;
@ -242,7 +242,7 @@ void BgTreemouth_Draw(Actor* thisx, PlayState* play) {
if (!IS_CUTSCENE_LAYER || LINK_IS_ADULT)
#endif
{
if (GET_EVENTCHKINF(EVENTCHKINF_07)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_KOKIRI_EMERALD_DEKU_TREE_DEAD)) {
alpha = 2150;
}
} else { // needed to match

View file

@ -333,7 +333,7 @@ void BossDodongo_IntroCutscene(BossDodongo* this, PlayState* play) {
this->subCamAt.z = player->actor.world.pos.z;
}
if (GET_EVENTCHKINF(EVENTCHKINF_71)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_KING_DODONGO_BATTLE)) {
if (this->unk_198 == 100) {
this->actor.world.pos.x = -1114.0f;
this->actor.world.pos.z = -2804.0f;
@ -374,7 +374,7 @@ void BossDodongo_IntroCutscene(BossDodongo* this, PlayState* play) {
case 4:
Math_SmoothStepToF(&this->unk_20C, 0.0f, 1.0f, 0.01f, 0.0f);
if (GET_EVENTCHKINF(EVENTCHKINF_71)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_KING_DODONGO_BATTLE)) {
phi_f0 = -50.0f;
} else {
phi_f0 = 0.0f;
@ -402,7 +402,7 @@ void BossDodongo_IntroCutscene(BossDodongo* this, PlayState* play) {
}
if (this->unk_198 == 0x5A) {
if (!GET_EVENTCHKINF(EVENTCHKINF_71)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_BEGAN_KING_DODONGO_BATTLE)) {
TitleCard_InitBossName(play, &play->actorCtx.titleCtx,
SEGMENTED_TO_VIRTUAL(gKingDodongoTitleCardTex), 160, 180, 128, 40);
}
@ -421,7 +421,7 @@ void BossDodongo_IntroCutscene(BossDodongo* this, PlayState* play) {
this->unk_1DA = 50;
this->unk_1BC = 0;
player->actor.shape.rot.y = -0x4002;
SET_EVENTCHKINF(EVENTCHKINF_71);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_KING_DODONGO_BATTLE);
}
break;
}

View file

@ -337,7 +337,7 @@ void BossFd_Fly(BossFd* this, PlayState* play) {
this->timers[0] = 0;
this->subCamVelFactor = 0.0f;
this->subCamAccel = 0.0f;
if (GET_EVENTCHKINF(EVENTCHKINF_73)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_VOLVAGIA_BATTLE)) {
this->introState = BFD_CS_EMERGE;
this->subCamEyeNext.x = player2->actor.world.pos.x + 100.0f + 300.0f - 600.0f;
this->subCamEyeNext.y = player2->actor.world.pos.y + 100.0f - 50.0f;
@ -459,7 +459,7 @@ void BossFd_Fly(BossFd* this, PlayState* play) {
PRINTF("WAY_SPD X = %f\n", this->subCamAtVel.x);
PRINTF("WAY_SPD Y = %f\n", this->subCamAtVel.y);
PRINTF("WAY_SPD Z = %f\n", this->subCamAtVel.z);
if ((this->timers[3] > 190) && !GET_EVENTCHKINF(EVENTCHKINF_73)) {
if ((this->timers[3] > 190) && !GET_EVENTCHKINF(EVENTCHKINF_BEGAN_VOLVAGIA_BATTLE)) {
Audio_PlaySfxGeneral(NA_SE_EN_DODO_K_ROLL - SFX_FLAG, &this->actor.projectedPos, 4,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
}
@ -486,7 +486,7 @@ void BossFd_Fly(BossFd* this, PlayState* play) {
if (this->timers[3] == 160) {
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, 0, NA_BGM_FIRE_BOSS);
}
if ((this->timers[3] == 130) && !GET_EVENTCHKINF(EVENTCHKINF_73)) {
if ((this->timers[3] == 130) && !GET_EVENTCHKINF(EVENTCHKINF_BEGAN_VOLVAGIA_BATTLE)) {
TitleCard_InitBossName(play, &play->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(gVolvagiaTitleCardTex),
160, 180, 128, 40);
}
@ -539,7 +539,7 @@ void BossFd_Fly(BossFd* this, PlayState* play) {
Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_7);
this->actionFunc = BossFd_Wait;
this->handoffSignal = FD2_SIGNAL_GROUND;
SET_EVENTCHKINF(EVENTCHKINF_73);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_VOLVAGIA_BATTLE);
}
break;
}

View file

@ -578,7 +578,7 @@ void BossGanon_IntroCutscene(BossGanon* this, PlayState* play) {
Play_ChangeCameraStatus(play, this->csCamIndex, CAM_STAT_ACTIVE);
this->csCamFov = 60.0f;
if (GET_EVENTCHKINF(EVENTCHKINF_78)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_GANONDORF_BATTLE)) {
// watched cutscene already, skip most of it
this->csState = 17;
this->csTimer = 0;
@ -1096,12 +1096,12 @@ void BossGanon_IntroCutscene(BossGanon* this, PlayState* play) {
gSegments[6] =
VIRTUAL_TO_PHYSICAL(play->objectCtx.slots[Object_GetSlot(&play->objectCtx, OBJECT_GANON)].segment);
if (!GET_EVENTCHKINF(EVENTCHKINF_78)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_BEGAN_GANONDORF_BATTLE)) {
TitleCard_InitBossName(play, &play->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(gGanondorfTitleCardTex),
160, 180, 128, 40);
}
SET_EVENTCHKINF(EVENTCHKINF_78);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_GANONDORF_BATTLE);
}
if (this->csTimer >= 20) {

View file

@ -682,7 +682,7 @@ void BossGoma_Encounter(BossGoma* this, PlayState* play) {
// entrance of the boss room
if (fabsf(player->actor.world.pos.x - 150.0f) < 60.0f &&
fabsf(player->actor.world.pos.z - 350.0f) < 60.0f) {
if (GET_EVENTCHKINF(EVENTCHKINF_70)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_GOHMA_BATTLE)) {
BossGoma_SetupEncounterState4(this, play);
Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_DOOR_SHUTTER, 164.72f, -480.0f,
397.68002f, 0, -0x705C, 0, DOORSHUTTER_PARAMS(SHUTTER_GOHMA_BLOCK, 0));
@ -920,13 +920,13 @@ void BossGoma_Encounter(BossGoma* this, PlayState* play) {
if (Animation_OnFrame(&this->skelanime, 40.0f)) {
Actor_PlaySfx(&this->actor, NA_SE_EN_GOMA_CRY1);
if (!GET_EVENTCHKINF(EVENTCHKINF_70)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_BEGAN_GOHMA_BATTLE)) {
TitleCard_InitBossName(play, &play->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(gGohmaTitleCardTex),
160, 180, 128, 40);
}
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, 0, NA_BGM_BOSS);
SET_EVENTCHKINF(EVENTCHKINF_70);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_GOHMA_BATTLE);
}
if (Animation_OnFrame(&this->skelanime, this->currentAnimFrameCount)) {

View file

@ -362,7 +362,7 @@ void BossMo_Init(Actor* thisx, PlayState* play2) {
MO_WATER_LEVEL(play) = -500;
return;
}
if (GET_EVENTCHKINF(EVENTCHKINF_74)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_MORPHA_BATTLE)) {
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, 0, NA_BGM_BOSS);
this->tentMaxAngle = 5.0f;
this->timers[0] = 50;
@ -1432,7 +1432,7 @@ void BossMo_IntroCs(BossMo* this, PlayState* play) {
if (this->timers[2] == 130) {
TitleCard_InitBossName(play, &play->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(gMorphaTitleCardTex), 160,
180, 128, 40);
SET_EVENTCHKINF(EVENTCHKINF_74);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_MORPHA_BATTLE);
}
break;
case MO_INTRO_FINISH:

View file

@ -381,7 +381,7 @@ void BossSst_HeadSetupIntro(BossSst* this, PlayState* play) {
Play_ChangeCameraStatus(play, CAM_ID_MAIN, CAM_STAT_WAIT);
Play_ChangeCameraStatus(play, sSubCamId, CAM_STAT_ACTIVE);
Math_Vec3f_Copy(&sSubCamAt, &player->actor.world.pos);
if (GET_EVENTCHKINF(EVENTCHKINF_77)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE)) {
sSubCamEye.z = ROOM_CENTER_Z - 100.0f;
}
@ -417,7 +417,7 @@ void BossSst_HeadIntro(BossSst* this, PlayState* play) {
Play_ChangeCameraStatus(play, sSubCamId, CAM_STAT_WAIT);
Play_ChangeCameraStatus(play, CAM_ID_MAIN, CAM_STAT_ACTIVE);
Play_ClearCamera(play, sSubCamId);
SET_EVENTCHKINF(EVENTCHKINF_77);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE);
BossSst_HeadSetupNeutral(this);
this->colliderJntSph.base.ocFlags1 |= OC1_ON;
sHands[LEFT]->colliderJntSph.base.ocFlags1 |= OC1_ON;
@ -440,7 +440,7 @@ void BossSst_HeadIntro(BossSst* this, PlayState* play) {
this->ready = true;
Rumble_Request(this->actor.xyzDistToPlayerSq, 255, 20, 150);
Actor_PlaySfx(&sFloor->dyna.actor, NA_SE_EN_SHADEST_TAIKO_HIGH);
} else if (GET_EVENTCHKINF(EVENTCHKINF_77)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE)) {
//! @bug This condition assumes that the second bounce on the ground will occur before frame 545 on the
//! timer. However, it is possible to delay Player's descent to the ground by, for example, jumpslashing
//! on the last possible frame before the cutscene takes control. This delays Player's fall to the
@ -573,7 +573,7 @@ void BossSst_HeadIntro(BossSst* this, PlayState* play) {
}
if (this->timer <= 198) {
revealStateTimer = 198 - this->timer;
if (GET_EVENTCHKINF(EVENTCHKINF_77) && (revealStateTimer <= 44)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE) && (revealStateTimer <= 44)) {
sSubCamAt.x += 492.0f * 0.01f;
sSubCamAt.y += 200.0f * 0.01f;
sSubCamEye.x -= 80.0f * 0.01f;
@ -602,7 +602,7 @@ void BossSst_HeadIntro(BossSst* this, PlayState* play) {
sSubCamEye.y += 125.0f * 0.01f;
sSubCamEye.z -= 350.0f * 0.01f;
} else if (revealStateTimer == 85) {
if (!GET_EVENTCHKINF(EVENTCHKINF_77)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE)) {
TitleCard_InitBossName(play, &play->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(gBongoTitleCardTex),
160, 180, 128, 40);
}

View file

@ -513,7 +513,7 @@ void BossTw_Init(Actor* thisx, PlayState* play2) {
this->actor.naviEnemyId = NAVI_ENEMY_TWINROVA_KOTAKE;
SkelAnime_InitFlex(play, &this->skelAnime, &gTwinrovaKotakeSkel, &gTwinrovaKotakeKoumeFlyAnim, NULL, NULL, 0);
if (GET_EVENTCHKINF(EVENTCHKINF_75)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_TWINROVA_BATTLE)) {
// began twinrova battle
BossTw_SetupFlyTo(this, play);
this->actor.world.pos.x = -600.0f;
@ -531,7 +531,7 @@ void BossTw_Init(Actor* thisx, PlayState* play2) {
this->actor.naviEnemyId = NAVI_ENEMY_TWINROVA_KOUME;
SkelAnime_InitFlex(play, &this->skelAnime, &gTwinrovaKoumeSkel, &gTwinrovaKotakeKoumeFlyAnim, NULL, NULL, 0);
if (GET_EVENTCHKINF(EVENTCHKINF_75)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_TWINROVA_BATTLE)) {
// began twinrova battle
BossTw_SetupFlyTo(this, play);
this->actor.world.pos.x = 600.0f;
@ -553,7 +553,7 @@ void BossTw_Init(Actor* thisx, PlayState* play2) {
SkelAnime_InitFlex(play, &this->skelAnime, &gTwinrovaSkel, &gTwinrovaTPoseAnim, NULL, NULL, 0);
Animation_MorphToLoop(&this->skelAnime, &gTwinrovaTPoseAnim, -3.0f);
if (GET_EVENTCHKINF(EVENTCHKINF_75)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_TWINROVA_BATTLE)) {
// began twinrova battle
BossTw_SetupWait(this, play);
} else {
@ -2217,7 +2217,7 @@ void BossTw_TwinrovaIntroCS(BossTw* this, PlayState* play) {
play->envCtx.lightBlend = 0.0f;
TitleCard_InitBossName(play, &play->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(gTwinrovaTitleCardTex), 160,
180, 128, 40);
SET_EVENTCHKINF(EVENTCHKINF_75);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_TWINROVA_BATTLE);
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, 0, NA_BGM_BOSS);
}

View file

@ -627,7 +627,7 @@ void BossVa_Init(Actor* thisx, PlayState* play2) {
BOSSVA_DOOR);
if (Flags_GetClear(play, play->roomCtx.curRoom.num)) {
warpId = ACTOR_EN_RU1;
if (GET_EVENTCHKINF(EVENTCHKINF_37)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
warpId = ACTOR_DOOR_WARP1;
}
Actor_Spawn(&play->actorCtx, play, warpId, this->actor.world.pos.x, this->actor.world.pos.y,
@ -640,7 +640,7 @@ void BossVa_Init(Actor* thisx, PlayState* play2) {
} else {
this->actor.colChkInfo.damageTable = sDamageTable;
sPhase2Timer = 0xFFFF;
if (GET_EVENTCHKINF(EVENTCHKINF_76)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_BARINA_BATTLE)) {
sCsState = INTRO_CALL_BARI;
sDoorState = 100;
Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_1);
@ -975,7 +975,7 @@ void BossVa_BodyIntro(BossVa* this, PlayState* play) {
sSubCamAtNext.y = 140.0f;
sSubCamAtNext.z = -200.0f;
if (!GET_EVENTCHKINF(EVENTCHKINF_76)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_BEGAN_BARINA_BATTLE)) {
TitleCard_InitBossName(play, &play->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(gBarinadeTitleCardTex),
160, 180, 128, 40);
}
@ -1017,7 +1017,7 @@ void BossVa_BodyIntro(BossVa* this, PlayState* play) {
Play_ChangeCameraStatus(play, CAM_ID_MAIN, CAM_STAT_ACTIVE);
Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_7);
sCsState++;
SET_EVENTCHKINF(EVENTCHKINF_76);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_BARINA_BATTLE);
player->actor.shape.rot.y = player->actor.world.rot.y = this->actor.yawTowardsPlayer + 0x8000;
}
break;

View file

@ -679,7 +679,7 @@ void DemoEffect_InitTimeWarp(DemoEffect* this, PlayState* play) {
Actor_SetScale(&this->actor, 84 * 0.001f);
}
} else if (gSaveContext.sceneLayer == 5 || gSaveContext.sceneLayer == 4 ||
(gSaveContext.save.entranceIndex == ENTR_TEMPLE_OF_TIME_4 && !GET_EVENTCHKINF(EVENTCHKINF_C9))) {
(gSaveContext.save.entranceIndex == ENTR_TEMPLE_OF_TIME_4 && !GET_EVENTCHKINF(EVENTCHKINF_TIME_TRAVELED_TO_ADULT))) {
SkelCurve_SetAnim(&this->skelCurve, &gTimeWarpAnim, 1.0f, 59.0f, 59.0f, 0.0f);
SkelCurve_Update(play, &this->skelCurve);
this->updateFunc = DemoEffect_UpdateTimeWarpReturnFromChamberOfSages;
@ -743,7 +743,7 @@ void DemoEffect_UpdateTimeWarpReturnFromChamberOfSages(DemoEffect* this, PlaySta
if (this->timeWarp.shrinkTimer > 250) {
if (gSaveContext.save.entranceIndex == ENTR_TEMPLE_OF_TIME_4) {
SET_EVENTCHKINF(EVENTCHKINF_C9);
SET_EVENTCHKINF(EVENTCHKINF_TIME_TRAVELED_TO_ADULT);
}
Actor_Kill(&this->actor);
@ -1541,8 +1541,8 @@ void DemoEffect_UpdateJewelChild(DemoEffect* this, PlayState* play) {
if (play->csCtx.state && play->csCtx.actorCues[this->cueChannel]) {
switch (play->csCtx.actorCues[this->cueChannel]->id) {
case 3:
if (GET_EVENTCHKINF(EVENTCHKINF_4B)) {
SET_EVENTCHKINF(EVENTCHKINF_4B);
if (GET_EVENTCHKINF(EVENTCHKINF_OPENED_DOOR_OF_TIME)) {
SET_EVENTCHKINF(EVENTCHKINF_OPENED_DOOR_OF_TIME);
}
DemoEffect_MoveJewelActivateDoorOfTime(this, play);
if ((play->gameplayFrames & 1) == 0) {
@ -1575,7 +1575,7 @@ void DemoEffect_UpdateJewelChild(DemoEffect* this, PlayState* play) {
}
if (gSaveContext.save.entranceIndex == ENTR_TEMPLE_OF_TIME_0) {
if (!GET_EVENTCHKINF(EVENTCHKINF_4B)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OPENED_DOOR_OF_TIME)) {
hasCue = (play->csCtx.state != CS_STATE_IDLE) && (play->csCtx.actorCues[this->cueChannel] != NULL);
if (!hasCue) {

View file

@ -898,7 +898,7 @@ void func_80986BE4(DemoIm* this, s32 arg1) {
}
void func_80986BF8(DemoIm* this, PlayState* play) {
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
this->action = 24;
this->drawConfig = 1;
this->unk_280 = 1;
@ -912,14 +912,14 @@ void func_80986C30(DemoIm* this, PlayState* play) {
play->csCtx.script = SEGMENTED_TO_VIRTUAL(gZeldasCourtyardLullabyCs);
gSaveContext.cutsceneTrigger = 1;
SET_EVENTCHKINF(EVENTCHKINF_59);
SET_EVENTCHKINF(EVENTCHKINF_LEARNED_ZELDAS_LULLABY);
Item_Give(play, ITEM_SONG_LULLABY);
func_80985F54(this);
}
}
void func_80986CC8(DemoIm* this) {
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
this->action = 26;
this->drawConfig = 1;
this->unk_280 = 1;
@ -943,9 +943,9 @@ void func_80986D40(DemoIm* this, PlayState* play) {
}
#endif
if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
Actor_Kill(&this->actor);
} else if (!GET_EVENTCHKINF(EVENTCHKINF_59)) {
} else if (!GET_EVENTCHKINF(EVENTCHKINF_LEARNED_ZELDAS_LULLABY)) {
this->action = 23;
} else {
this->action = 20;

View file

@ -237,7 +237,7 @@ void DemoKankyo_Init(Actor* thisx, PlayState* play) {
case DEMOKANKYO_DOOR_OF_TIME:
this->actor.scale.x = this->actor.scale.y = this->actor.scale.z = 1.0f;
this->unk_150[0].unk_18 = 0.0f;
if (!GET_EVENTCHKINF(EVENTCHKINF_4B)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OPENED_DOOR_OF_TIME)) {
Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_DOOR_TOKI, this->actor.world.pos.x,
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, 0x0000);
} else {
@ -424,7 +424,7 @@ void DemoKankyo_UpdateDoorOfTime(DemoKankyo* this, PlayState* play) {
this->unk_150[0].unk_18 += 1.0f;
if (this->unk_150[0].unk_18 >= 102.0f) {
Actor_PlaySfx(&this->actor, NA_SE_EV_STONEDOOR_STOP);
SET_EVENTCHKINF(EVENTCHKINF_4B);
SET_EVENTCHKINF(EVENTCHKINF_OPENED_DOOR_OF_TIME);
Actor_Kill(this->actor.child);
DemoKankyo_SetupAction(this, DemoKankyo_KillDoorOfTimeCollision);
}

View file

@ -64,7 +64,7 @@ static u8 sEnergyColors[] = {
s32 DemoKekkai_CheckEventFlag(s32 params) {
static s32 eventFlags[] = {
EVENTCHKINF_C3, EVENTCHKINF_BC, EVENTCHKINF_BF, EVENTCHKINF_BE, EVENTCHKINF_BD, EVENTCHKINF_AD, EVENTCHKINF_BB,
EVENTCHKINF_DISPELLED_GANONS_TOWER_BARRIER, EVENTCHKINF_COMPLETED_WATER_TRIAL, EVENTCHKINF_COMPLETED_LIGHT_TRIAL, EVENTCHKINF_COMPLETED_FIRE_TRIAL, EVENTCHKINF_COMPLETED_SHADOW_TRIAL, EVENTCHKINF_COMPLETED_SPIRIT_TRIAL, EVENTCHKINF_COMPLETED_FOREST_TRIAL,
};
if ((params < KEKKAI_TOWER) || (params > KEKKAI_FOREST)) {
@ -169,7 +169,7 @@ void DemoKekkai_TowerBarrier(DemoKekkai* this, PlayState* play) {
} else {
this->timer++;
if (this->timer > 100) {
Flags_SetEventChkInf(EVENTCHKINF_C3);
Flags_SetEventChkInf(EVENTCHKINF_DISPELLED_GANONS_TOWER_BARRIER);
Actor_Kill(&this->actor);
return;
} else if (this->timer > 40) {

View file

@ -878,7 +878,7 @@ void DoorShutter_GohmaBlockFall(DoorShutter* this, PlayState* play) {
Actor_UpdateBgCheckInfo(play, &this->dyna.actor, 0.0f, 0.0f, 0.0f, UPDBGCHECKINFO_FLAG_2);
if (this->dyna.actor.bgCheckFlags & BGCHECKFLAG_GROUND) {
DoorShutter_SetupAction(this, DoorShutter_GohmaBlockBounce);
if (!GET_EVENTCHKINF(EVENTCHKINF_70)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_BEGAN_GOHMA_BATTLE)) {
BossGoma* parent = (BossGoma*)this->dyna.actor.parent;
this->isActive = 10;

View file

@ -49,7 +49,7 @@ void DoorToki_Destroy(Actor* thisx, PlayState* play) {
void DoorToki_Update(Actor* thisx, PlayState* play) {
DoorToki* this = (DoorToki*)thisx;
if (GET_EVENTCHKINF(EVENTCHKINF_4B)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OPENED_DOOR_OF_TIME)) {
DynaPoly_DisableCollision(play, &play->colCtx.dyna, this->dyna.bgId);
} else {
DynaPoly_EnableCollision(play, &play->colCtx.dyna, this->dyna.bgId);

View file

@ -493,8 +493,8 @@ void DoorWarp1_ChildWarpOut(DoorWarp1* this, PlayState* play) {
PRINTF("\n\n\nじかんがきたからおーしまい fade_direction=[%d]", play->transitionTrigger, TRANS_TRIGGER_START);
if (play->sceneId == SCENE_DODONGOS_CAVERN_BOSS) {
if (!Flags_GetEventChkInf(EVENTCHKINF_25)) {
Flags_SetEventChkInf(EVENTCHKINF_25);
if (!Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
Flags_SetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP);
Item_Give(play, ITEM_GORON_RUBY);
play->nextEntranceIndex = ENTR_DEATH_MOUNTAIN_TRAIL_0;
gSaveContext.nextCutsceneIndex = 0xFFF1;
@ -503,9 +503,9 @@ void DoorWarp1_ChildWarpOut(DoorWarp1* this, PlayState* play) {
gSaveContext.nextCutsceneIndex = 0;
}
} else if (play->sceneId == SCENE_DEKU_TREE_BOSS) {
if (!Flags_GetEventChkInf(EVENTCHKINF_07)) {
Flags_SetEventChkInf(EVENTCHKINF_07);
Flags_SetEventChkInf(EVENTCHKINF_09);
if (!Flags_GetEventChkInf(EVENTCHKINF_OBTAINED_KOKIRI_EMERALD_DEKU_TREE_DEAD)) {
Flags_SetEventChkInf(EVENTCHKINF_OBTAINED_KOKIRI_EMERALD_DEKU_TREE_DEAD);
Flags_SetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP);
Item_Give(play, ITEM_KOKIRI_EMERALD);
play->nextEntranceIndex = ENTR_KOKIRI_FOREST_0;
gSaveContext.nextCutsceneIndex = 0xFFF1;
@ -601,7 +601,7 @@ void DoorWarp1_RutoWarpOut(DoorWarp1* this, PlayState* play) {
this->warpTimer++;
if (this->warpTimer > sWarpTimerTarget && gSaveContext.nextCutsceneIndex == 0xFFEF) {
SET_EVENTCHKINF(EVENTCHKINF_37);
SET_EVENTCHKINF(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP);
Item_Give(play, ITEM_ZORA_SAPPHIRE);
play->nextEntranceIndex = ENTR_ZORAS_FOUNTAIN_0;
gSaveContext.nextCutsceneIndex = 0xFFF0;
@ -702,8 +702,8 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) {
if (this->warpTimer > sWarpTimerTarget && gSaveContext.nextCutsceneIndex == 0xFFEF) {
if (play->sceneId == SCENE_FOREST_TEMPLE_BOSS) {
if (!GET_EVENTCHKINF(EVENTCHKINF_48)) {
SET_EVENTCHKINF(EVENTCHKINF_48);
if (!GET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP)) {
SET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP);
Item_Give(play, ITEM_MEDALLION_FOREST);
play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0;
gSaveContext.nextCutsceneIndex = 0;
@ -717,8 +717,8 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) {
gSaveContext.nextCutsceneIndex = 0;
}
} else if (play->sceneId == SCENE_FIRE_TEMPLE_BOSS) {
if (!GET_EVENTCHKINF(EVENTCHKINF_49)) {
SET_EVENTCHKINF(EVENTCHKINF_49);
if (!GET_EVENTCHKINF(EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP)) {
SET_EVENTCHKINF(EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP);
Item_Give(play, ITEM_MEDALLION_FIRE);
play->nextEntranceIndex = ENTR_KAKARIKO_VILLAGE_0;
gSaveContext.nextCutsceneIndex = 0xFFF3;
@ -731,8 +731,8 @@ void DoorWarp1_AdultWarpOut(DoorWarp1* this, PlayState* play) {
gSaveContext.nextCutsceneIndex = 0;
}
} else if (play->sceneId == SCENE_WATER_TEMPLE_BOSS) {
if (!GET_EVENTCHKINF(EVENTCHKINF_4A)) {
SET_EVENTCHKINF(EVENTCHKINF_4A);
if (!GET_EVENTCHKINF(EVENTCHKINF_USED_WATER_TEMPLE_BLUE_WARP)) {
SET_EVENTCHKINF(EVENTCHKINF_USED_WATER_TEMPLE_BLUE_WARP);
Item_Give(play, ITEM_MEDALLION_WATER);
play->nextEntranceIndex = ENTR_CHAMBER_OF_THE_SAGES_0;
gSaveContext.nextCutsceneIndex = 0;

View file

@ -79,7 +79,7 @@ void EfcErupc_UpdateAction(EfcErupc* this, PlayState* play) {
case 2:
if (this->unk_14E == 0) {
Audio_PlayCutsceneEffectsSequence(SEQ_CS_EFFECTS_LAVA_ERUPT);
SET_EVENTCHKINF(EVENTCHKINF_2F);
SET_EVENTCHKINF(EVENTCHKINF_DEATH_MOUNTAIN_ERUPTED);
}
this->unk_14E++;
break;

View file

@ -187,7 +187,7 @@ void func_809B07F8(EnAni* this, PlayState* play) {
EnAni_SetText(this, play, 0x5055);
}
} else if (yawDiff > -0x3E8 && yawDiff < 0x36B0 && this->actor.xzDistToPlayer < 350.0f) {
if (!GET_EVENTCHKINF(EVENTCHKINF_2F)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_DEATH_MOUNTAIN_ERUPTED)) {
textId = 0x5052;
} else {
textId = GET_ITEMGETINF(ITEMGETINF_15) ? 0x5054 : 0x5053;

View file

@ -133,7 +133,7 @@ void EnBomBowlMan_BlinkAwake(EnBomBowlMan* this, PlayState* play) {
this->dialogState = TEXT_STATE_EVENT;
// Check for beaten Dodongo's Cavern
if (GET_EVENTCHKINF(EVENTCHKINF_25) || BREG(2)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) || BREG(2)) {
this->actor.textId = 0xBF;
} else {
this->actor.textId = 0x7058;
@ -163,7 +163,7 @@ void EnBomBowlMan_CheckBeatenDC(EnBomBowlMan* this, PlayState* play) {
this->blinkTimer = (s16)Rand_ZeroFloat(60.0f) + 20;
// Check for beaten Dodongo's Cavern
if (!(GET_EVENTCHKINF(EVENTCHKINF_25) || BREG(2))) {
if (!(GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) || BREG(2))) {
this->actionFunc = EnBomBowlMan_WaitNotBeatenDC;
} else {
this->actor.textId = 0x18;

View file

@ -142,14 +142,14 @@ s32 EnDivingGame_HasMinigameFinished(EnDivingGame* this, PlayState* play) {
} else {
rupeesNeeded = 5;
if (GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
rupeesNeeded = 10;
}
if (this->grabbedRupeesCounter >= rupeesNeeded) {
// Won.
gSaveContext.timerState = TIMER_STATE_OFF;
this->allRupeesThrown = this->state = this->phase = this->unk_2A2 = this->grabbedRupeesCounter = 0;
if (!GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
this->actor.textId = 0x4055;
} else {
this->actor.textId = 0x405D;
@ -162,7 +162,7 @@ s32 EnDivingGame_HasMinigameFinished(EnDivingGame* this, PlayState* play) {
func_800F5B58();
Audio_PlayFanfare(NA_BGM_SMALL_ITEM_GET);
Player_SetCsActionWithHaltedActors(play, NULL, PLAYER_CSACTION_8);
if (!GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
this->actionFunc = func_809EE96C;
} else {
this->actionFunc = func_809EE048;
@ -208,7 +208,7 @@ void EnDivingGame_Talk(EnDivingGame* this, PlayState* play) {
switch (this->state) {
case ENDIVINGGAME_STATE_NOTPLAYING:
this->unk_292 = TEXT_STATE_CHOICE;
if (!GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
this->actor.textId = 0x4053;
this->phase = ENDIVINGGAME_PHASE_1;
} else {
@ -250,7 +250,7 @@ void EnDivingGame_HandlePlayChoice(EnDivingGame* this, PlayState* play) {
this->allRupeesThrown = this->state = this->phase = this->unk_2A2 = this->grabbedRupeesCounter = 0;
break;
}
if (!GET_EVENTCHKINF(EVENTCHKINF_38) || this->actor.textId == 0x85 || this->actor.textId == 0x2D) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE) || this->actor.textId == 0x85 || this->actor.textId == 0x2D) {
Message_ContinueTextbox(play, this->actor.textId);
this->unk_292 = TEXT_STATE_EVENT;
this->actionFunc = func_809EE048;
@ -309,7 +309,7 @@ void EnDivingGame_SetupRupeeThrow(EnDivingGame* this, PlayState* play) {
this->subCamEyeNext.x = -280.0f;
this->subCamEyeNext.y = -20.0f;
this->subCamEyeNext.z = -240.0f;
if (!GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
this->rupeesLeftToThrow = 5;
} else {
this->rupeesLeftToThrow = 10;
@ -359,7 +359,7 @@ void EnDivingGame_RupeeThrow(EnDivingGame* this, PlayState* play) {
this->spawnRuppyTimer = 5;
EnDivingGame_SpawnRuppy(this, play);
this->rupeesLeftToThrow--;
if (!GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
this->unk_296 = 30;
} else {
this->unk_296 = 5;
@ -419,7 +419,7 @@ void func_809EE800(EnDivingGame* this, PlayState* play) {
SkelAnime_Update(&this->skelAnime);
if (this->unk_292 == Message_GetState(&play->msgCtx) && Message_ShouldAdvance(play)) {
Message_CloseTextbox(play);
if (!GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
Interface_SetTimer(50 + BREG(2));
} else {
Interface_SetTimer(50 + BREG(2));
@ -482,7 +482,7 @@ void func_809EEAF8(EnDivingGame* this, PlayState* play) {
// "Successful completion"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n" VT_RST);
this->allRupeesThrown = this->state = this->phase = this->unk_2A2 = this->grabbedRupeesCounter = 0;
SET_EVENTCHKINF(EVENTCHKINF_38);
SET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE);
this->actionFunc = func_809EDCB0;
}
}

View file

@ -156,7 +156,7 @@ void EnDntDemo_Judge(EnDntDemo* this, PlayState* play) {
delay = 0;
switch (Player_GetMask(play)) {
case PLAYER_MASK_SKULL:
if (!GET_ITEMGETINF(ITEMGETINF_1E)) {
if (!GET_ITEMGETINF(ITEMGETINF_OBTAINED_STICK_UPGRADE_FROM_STAGE)) {
reaction = DNT_SIGNAL_CELEBRATE;
this->prize = DNT_PRIZE_STICK;
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, 0, NA_BGM_SARIA_THEME);
@ -164,7 +164,7 @@ void EnDntDemo_Judge(EnDntDemo* this, PlayState* play) {
}
FALLTHROUGH;
case PLAYER_MASK_TRUTH:
if (!GET_ITEMGETINF(ITEMGETINF_1F) && (Player_GetMask(play) != PLAYER_MASK_SKULL)) {
if (!GET_ITEMGETINF(ITEMGETINF_OBTAINED_NUT_UPGRADE_FROM_STAGE) && (Player_GetMask(play) != PLAYER_MASK_SKULL)) {
Audio_PlaySfxGeneral(NA_SE_SY_TRE_BOX_APPEAR, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
this->prize = DNT_PRIZE_NUTS;

View file

@ -282,7 +282,7 @@ void EnDntJiji_GivePrize(EnDntJiji* this, PlayState* play) {
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
SET_ITEMGETINF(ITEMGETINF_1F);
SET_ITEMGETINF(ITEMGETINF_OBTAINED_NUT_UPGRADE_FROM_STAGE);
} else {
// "stick"
PRINTF("\n");
@ -291,7 +291,7 @@ void EnDntJiji_GivePrize(EnDntJiji* this, PlayState* play) {
PRINTF("\n");
PRINTF("\n");
PRINTF("\n");
SET_ITEMGETINF(ITEMGETINF_1E);
SET_ITEMGETINF(ITEMGETINF_OBTAINED_STICK_UPGRADE_FROM_STAGE);
}
this->actor.textId = 0;
if ((this->stage != NULL) && (this->stage->actor.update != NULL)) {

View file

@ -154,7 +154,7 @@ s16 EnDu_UpdateTalkState(PlayState* play, Actor* actor) {
s32 func_809FDDB4(EnDu* this, PlayState* play) {
if (play->sceneId == SCENE_GORON_CITY && LINK_IS_CHILD) {
return 1;
} else if (play->sceneId == SCENE_FIRE_TEMPLE && !GET_INFTABLE(INFTABLE_11A) && LINK_IS_ADULT) {
} else if (play->sceneId == SCENE_FIRE_TEMPLE && !GET_INFTABLE(INFTABLE_SPOKE_TO_DARUNIA_IN_FIRE_TEMPLE) && LINK_IS_ADULT) {
return 1;
}
return 0;
@ -411,7 +411,7 @@ void func_809FE798(EnDu* this, PlayState* play) {
}
} else {
Actor_Kill(&this->actor);
SET_INFTABLE(INFTABLE_11A);
SET_INFTABLE(INFTABLE_SPOKE_TO_DARUNIA_IN_FIRE_TEMPLE);
}
}

View file

@ -47,7 +47,7 @@ void EnEncount2_Init(Actor* thisx, PlayState* play) {
// "☆☆☆☆☆ Death Mountain Encount2 set ☆☆☆☆☆"
PRINTF(VT_FGCOL(GREEN) "☆☆☆☆☆ デスマウンテンエンカウント2セットされました ☆☆☆☆☆ %d\n" VT_RST,
this->actor.params);
if (LINK_IS_ADULT && GET_EVENTCHKINF(EVENTCHKINF_49)) { // flag for having used fire temple blue warp
if (LINK_IS_ADULT && GET_EVENTCHKINF(EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP)) { // flag for having used fire temple blue warp
Actor_Kill(thisx);
}
} else {

View file

@ -60,7 +60,7 @@ void EnExRuppy_Init(Actor* thisx, PlayState* play) {
this->actor.gravity = 0.0f;
// If you haven't won the diving game before, you will always get 5 rupees
if (!GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
this->rupeeValue = 5;
this->colorIdx = 1;
} else {
@ -232,7 +232,7 @@ void EnExRuppy_EnterWater(EnExRuppy* this, PlayState* play) {
this->actor.world.pos.x = ((Rand_ZeroOne() - 0.5f) * 300.0f) + -260.0f;
this->actor.world.pos.y = ((Rand_ZeroOne() - 0.5f) * 200.0f) + 370.0f;
temp_f2 = this->unk_15A * -50.0f;
if (!GET_EVENTCHKINF(EVENTCHKINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_SILVER_SCALE)) {
temp_f2 += -500.0f;
this->actor.world.pos.z = ((Rand_ZeroOne() - 0.5f) * 80.0f) + temp_f2;
} else {

View file

@ -134,7 +134,7 @@ void EnFu_WaitChild(EnFu* this, PlayState* play) {
u16 textId = MaskReaction_GetTextId(play, MASK_REACTION_SET_WINDMILL_MAN);
if (textId == 0) {
textId = GET_EVENTCHKINF(EVENTCHKINF_67) ? 0x5033 : 0x5032;
textId = GET_EVENTCHKINF(EVENTCHKINF_DRAINED_WELL_IN_KAKARIKO) ? 0x5033 : 0x5032;
}
// if ACTOR_FLAG_TALK is set and textId is 0x5033, change animation
@ -150,7 +150,7 @@ void EnFu_WaitChild(EnFu* this, PlayState* play) {
void func_80A1DB60(EnFu* this, PlayState* play) {
if (play->csCtx.state == CS_STATE_IDLE) {
this->actionFunc = EnFu_WaitAdult;
SET_EVENTCHKINF(EVENTCHKINF_5B);
SET_EVENTCHKINF(EVENTCHKINF_LEARNED_SONG_OF_STORMS);
play->msgCtx.ocarinaMode = OCARINA_MODE_04;
}
}
@ -176,7 +176,7 @@ void func_80A1DBD4(EnFu* this, PlayState* play) {
gSaveContext.cutsceneTrigger = 1;
Item_Give(play, ITEM_SONG_STORMS);
play->msgCtx.ocarinaMode = OCARINA_MODE_00;
SET_EVENTCHKINF(EVENTCHKINF_65);
SET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_OF_STORMS_IN_WINDMILL);
} else if (play->msgCtx.ocarinaMode == OCARINA_MODE_02) {
player->stateFlags2 &= ~PLAYER_STATE2_24;
this->actionFunc = EnFu_WaitAdult;
@ -215,7 +215,7 @@ void EnFu_WaitAdult(EnFu* this, PlayState* play) {
Player* player = GET_PLAYER(play);
yawDiff = this->actor.yawTowardsPlayer - this->actor.shape.rot.y;
if (GET_EVENTCHKINF(EVENTCHKINF_5B)) {
if (GET_EVENTCHKINF(EVENTCHKINF_LEARNED_SONG_OF_STORMS)) {
func_80A1D94C(this, play, 0x508E, func_80A1DBA0);
} else if (player->stateFlags2 & PLAYER_STATE2_24) {
this->actor.textId = 0x5035;

View file

@ -141,7 +141,7 @@ static Vec3f sBottlesPositions[] = {
};
void func_80A2F180(EnGb* this) {
if (GET_INFTABLE(INFTABLE_B6)) {
if (GET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET)) {
this->textId = 0x70F5;
} else {
this->textId = 0x70F4;
@ -305,8 +305,8 @@ void func_80A2F83C(EnGb* this, PlayState* play) {
void func_80A2F94C(EnGb* this, PlayState* play) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_DONE && Message_ShouldAdvance(play)) {
if (!GET_INFTABLE(INFTABLE_B6)) {
SET_INFTABLE(INFTABLE_B6);
if (!GET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET)) {
SET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET);
}
func_80A2F180(this);
this->actionFunc = func_80A2F83C;
@ -315,8 +315,8 @@ void func_80A2F94C(EnGb* this, PlayState* play) {
void func_80A2F9C0(EnGb* this, PlayState* play) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_DONE && Message_ShouldAdvance(play)) {
if (!GET_INFTABLE(INFTABLE_B6)) {
SET_INFTABLE(INFTABLE_B6);
if (!GET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET)) {
SET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET);
}
func_80A2F180(this);
Player_UpdateBottleHeld(play, GET_PLAYER(play), ITEM_BOTTLE_EMPTY, PLAYER_IA_BOTTLE);
@ -327,8 +327,8 @@ void func_80A2F9C0(EnGb* this, PlayState* play) {
void func_80A2FA50(EnGb* this, PlayState* play) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_DONE && Message_ShouldAdvance(play)) {
if (!GET_INFTABLE(INFTABLE_B6)) {
SET_INFTABLE(INFTABLE_B6);
if (!GET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET)) {
SET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET);
}
func_80A2F180(this);
Player_UpdateBottleHeld(play, GET_PLAYER(play), ITEM_BOTTLE_EMPTY, PLAYER_IA_BOTTLE);

View file

@ -228,7 +228,7 @@ void EnGe1_KickPlayer(EnGe1* this, PlayState* play) {
if ((INV_CONTENT(ITEM_HOOKSHOT) == ITEM_NONE) || (INV_CONTENT(ITEM_LONGSHOT) == ITEM_NONE)) {
play->nextEntranceIndex = ENTR_GERUDO_VALLEY_1;
} else if (GET_EVENTCHKINF(EVENTCHKINF_C7)) { // Caught previously
} else if (GET_EVENTCHKINF(EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO)) { // Caught previously
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_18;
} else {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_17;
@ -581,7 +581,7 @@ void EnGe1_BeginGame_Archery(EnGe1* this, PlayState* play) {
play->transitionType = TRANS_TYPE_CIRCLE(TCA_STARBURST, TCC_BLACK, TCS_FAST);
play->transitionTrigger = TRANS_TRIGGER_START;
SET_EVENTINF(EVENTINF_HORSES_08);
SET_EVENTCHKINF(EVENTCHKINF_68);
SET_EVENTCHKINF(EVENTCHKINF_PLAYED_HORSEBACK_ARCHERY);
if (!(player->stateFlags1 & PLAYER_STATE1_23)) {
Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_1);
@ -668,7 +668,7 @@ void EnGe1_Wait_Archery(EnGe1* this, PlayState* play) {
if (!(player->stateFlags1 & PLAYER_STATE1_23)) {
EnGe1_SetTalkAction(this, play, 0x603F, 100.0f, EnGe1_TalkNoHorse_Archery);
} else {
if (GET_EVENTCHKINF(EVENTCHKINF_68)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PLAYED_HORSEBACK_ARCHERY)) {
if (GET_INFTABLE(INFTABLE_190)) {
textId = 0x6042;
} else {

View file

@ -242,7 +242,7 @@ void EnGe2_CaptureClose(EnGe2* this, PlayState* play) {
if ((INV_CONTENT(ITEM_HOOKSHOT) == ITEM_NONE) || (INV_CONTENT(ITEM_LONGSHOT) == ITEM_NONE)) {
play->nextEntranceIndex = ENTR_GERUDO_VALLEY_1;
} else if (GET_EVENTCHKINF(EVENTCHKINF_C7)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO)) {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_18;
} else {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_17;
@ -268,7 +268,7 @@ void EnGe2_CaptureCharge(EnGe2* this, PlayState* play) {
if ((INV_CONTENT(ITEM_HOOKSHOT) == ITEM_NONE) || (INV_CONTENT(ITEM_LONGSHOT) == ITEM_NONE)) {
play->nextEntranceIndex = ENTR_GERUDO_VALLEY_1;
} else if (GET_EVENTCHKINF(EVENTCHKINF_C7)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO)) {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_18;
} else {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_17;

View file

@ -1579,7 +1579,7 @@ void EnGeldB_Draw(Actor* thisx, PlayState* play) {
if (this->timer == 0) {
if ((INV_CONTENT(ITEM_HOOKSHOT) == ITEM_NONE) || (INV_CONTENT(ITEM_LONGSHOT) == ITEM_NONE)) {
play->nextEntranceIndex = ENTR_GERUDO_VALLEY_1;
} else if (GET_EVENTCHKINF(EVENTCHKINF_C7)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO)) {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_18;
} else {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_17;

View file

@ -845,7 +845,7 @@ void EnGirlA_ItemGive_BottledItem(PlayState* play, EnGirlA* this) {
void EnGirlA_BuyEvent_ShieldDiscount(PlayState* play, EnGirlA* this) {
if (this->actor.params == SI_HYLIAN_SHIELD) {
if (GET_INFTABLE(INFTABLE_76)) {
if (GET_INFTABLE(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD)) {
Rupees_ChangeBy(-(this->basePrice - sShieldDiscounts[(s32)Rand_ZeroFloat(7.9f)]));
return;
}

View file

@ -116,13 +116,13 @@ u16 EnGo_GetTextID(PlayState* play, Actor* thisx) {
return 0x3041;
}
} else if (CHECK_OWNED_EQUIP(EQUIP_TYPE_TUNIC, EQUIP_INV_TUNIC_GORON) || GET_INFTABLE(INFTABLE_10D)) {
if (GET_INFTABLE(INFTABLE_10E)) {
if (GET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_GORONS)) {
return 0x3038;
} else {
return 0x3037;
}
} else {
if (GET_INFTABLE(INFTABLE_109)) {
if (GET_INFTABLE(INFTABLE_GORON_CITY_DOORS_UNLOCKED)) {
if (GET_INFTABLE(INFTABLE_10A)) {
return 0x3033;
} else {
@ -141,9 +141,9 @@ u16 EnGo_GetTextID(PlayState* play, Actor* thisx) {
case 0x20:
if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else if (GET_EVENTCHKINF(EVENTCHKINF_23)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE)) {
return 0x3021;
} else if (GET_INFTABLE(INFTABLE_E0)) {
} else if (GET_INFTABLE(INFTABLE_SPOKE_TO_DODONGOS_CAVERN_ENTRANCE_GORON)) {
return 0x302A;
} else {
return 0x3008;
@ -151,7 +151,7 @@ u16 EnGo_GetTextID(PlayState* play, Actor* thisx) {
case 0x30:
if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else if (GET_EVENTCHKINF(EVENTCHKINF_23)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE)) {
return 0x3026;
} else {
return 0x3009;
@ -159,7 +159,7 @@ u16 EnGo_GetTextID(PlayState* play, Actor* thisx) {
case 0x40:
if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else if (GET_EVENTCHKINF(EVENTCHKINF_23)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE)) {
return 0x3026;
} else {
return 0x300A;
@ -167,7 +167,7 @@ u16 EnGo_GetTextID(PlayState* play, Actor* thisx) {
case 0x50:
if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else if (GET_INFTABLE(INFTABLE_F0)) {
} else if (GET_INFTABLE(INFTABLE_SPOKE_TO_GC_ENTRANCE_GORON)) {
return 0x3015;
} else {
return 0x3014;
@ -175,7 +175,7 @@ u16 EnGo_GetTextID(PlayState* play, Actor* thisx) {
case 0x60:
if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else if (GET_INFTABLE(INFTABLE_F4)) {
} else if (GET_INFTABLE(INFTABLE_SPOKE_TO_GC_ISLAND_GORON)) {
return 0x3017;
} else {
return 0x3016;
@ -183,7 +183,7 @@ u16 EnGo_GetTextID(PlayState* play, Actor* thisx) {
case 0x70:
if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else if (GET_INFTABLE(INFTABLE_F8)) {
} else if (GET_INFTABLE(INFTABLE_SPOKE_TO_DARUNIA_DOOR_GORON)) {
return 0x3019;
} else {
return 0x3018;
@ -204,23 +204,23 @@ s16 EnGo_UpdateTalkState(PlayState* play, Actor* thisx) {
case TEXT_STATE_CLOSING:
switch (thisx->textId) {
case 0x3008:
SET_INFTABLE(INFTABLE_E0);
SET_INFTABLE(INFTABLE_SPOKE_TO_DODONGOS_CAVERN_ENTRANCE_GORON);
talkState = NPC_TALK_STATE_IDLE;
break;
case 0x300B:
SET_INFTABLE(INFTABLE_EB);
SET_INFTABLE(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON);
talkState = NPC_TALK_STATE_IDLE;
break;
case 0x3014:
SET_INFTABLE(INFTABLE_F0);
SET_INFTABLE(INFTABLE_SPOKE_TO_GC_ENTRANCE_GORON);
talkState = NPC_TALK_STATE_IDLE;
break;
case 0x3016:
SET_INFTABLE(INFTABLE_F4);
SET_INFTABLE(INFTABLE_SPOKE_TO_GC_ISLAND_GORON);
talkState = NPC_TALK_STATE_IDLE;
break;
case 0x3018:
SET_INFTABLE(INFTABLE_F8);
SET_INFTABLE(INFTABLE_SPOKE_TO_DARUNIA_DOOR_GORON);
talkState = NPC_TALK_STATE_IDLE;
break;
case 0x3036:
@ -229,7 +229,7 @@ s16 EnGo_UpdateTalkState(PlayState* play, Actor* thisx) {
talkState = NPC_TALK_STATE_ACTION;
break;
case 0x3037:
SET_INFTABLE(INFTABLE_10E);
SET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_GORONS);
talkState = NPC_TALK_STATE_IDLE;
break;
case 0x3041:
@ -258,7 +258,7 @@ s16 EnGo_UpdateTalkState(PlayState* play, Actor* thisx) {
switch (thisx->textId) {
case 0x300A:
if (play->msgCtx.choiceIndex == 0) {
if (CUR_UPG_VALUE(UPG_STRENGTH) != 0 || GET_INFTABLE(INFTABLE_EB)) {
if (CUR_UPG_VALUE(UPG_STRENGTH) != 0 || GET_INFTABLE(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON)) {
thisx->textId = 0x300B;
} else {
thisx->textId = 0x300C;
@ -271,12 +271,12 @@ s16 EnGo_UpdateTalkState(PlayState* play, Actor* thisx) {
break;
case 0x3034:
if (play->msgCtx.choiceIndex == 0) {
if (GET_INFTABLE(INFTABLE_10B)) {
if (GET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_DRAGON)) {
thisx->textId = 0x3033;
} else {
thisx->textId = 0x3035;
}
} else if (GET_INFTABLE(INFTABLE_10B)) {
} else if (GET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_DRAGON)) {
thisx->textId = 0x3036;
} else {
thisx->textId = 0x3033;
@ -302,7 +302,7 @@ s16 EnGo_UpdateTalkState(PlayState* play, Actor* thisx) {
if (Message_ShouldAdvance(play)) {
switch (thisx->textId) {
case 0x3035:
SET_INFTABLE(INFTABLE_10B);
SET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_DRAGON);
FALLTHROUGH;
case 0x3032:
case 0x3033:
@ -666,7 +666,7 @@ void EnGo_Init(Actor* thisx, PlayState* play) {
EnGo_SetupAction(this, EnGo_FireGenericActionFunc);
break;
case 0x40:
if (GET_INFTABLE(INFTABLE_EB)) {
if (GET_INFTABLE(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON)) {
EnGo_SetMovedPos(this, play);
}
Actor_SetScale(&this->actor, 0.015f);
@ -754,7 +754,7 @@ void EnGo_GoronLinkRolling(EnGo* this, PlayState* play) {
(this->unk_218 == 0)) {
this->actor.speed = 0.0f;
EnGo_SetupAction(this, func_80A4008C);
SET_INFTABLE(INFTABLE_109);
SET_INFTABLE(INFTABLE_GORON_CITY_DOORS_UNLOCKED);
}
this->actor.shape.rot = this->actor.world.rot;
@ -851,7 +851,7 @@ void func_80A405CC(EnGo* this, PlayState* play) {
this->skelAnime.curFrame = lastFrame;
this->skelAnime.playSpeed = 0.0f;
this->unk_212 = Rand_S16Offset(30, 30);
if ((PARAMS_GET_NOSHIFT(this->actor.params, 4, 4) == 0x40) && !GET_INFTABLE(INFTABLE_EB)) {
if ((PARAMS_GET_NOSHIFT(this->actor.params, 4, 4) == 0x40) && !GET_INFTABLE(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON)) {
EnGo_SetupAction(this, func_80A40B1C);
} else {
EnGo_SetupAction(this, EnGo_BiggoronActionFunc);
@ -941,7 +941,7 @@ void func_80A40A54(EnGo* this, PlayState* play) {
}
void func_80A40B1C(EnGo* this, PlayState* play) {
if (GET_INFTABLE(INFTABLE_EB)) {
if (GET_INFTABLE(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON)) {
EnGo_ChangeAnim(this, ENGO_ANIM_3);
EnGo_SetupAction(this, func_80A40A54);
} else {

View file

@ -10,28 +10,28 @@
/*
FLAGS
EVENTCHKINF_23 - DC entrance boulder blown up as child
EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE - DC entrance boulder blown up as child
InfTable
INFTABLE_B4
INFTABLE_E0 - Talked to DMT Goron at DC entrance (Before DC is opened as child)
INFTABLE_E3 - Talked to GC Goron in bottom level stairwell
INFTABLE_E6 - Talked to GC Goron at LW entrance (Before LW shortcut is opened)
INFTABLE_EB - Talked to DMT Goron at Bomb Flower with goron bracelet
INFTABLE_F0 - Talked to Goron at GC Entrance (Before goron ruby is obtained)
INFTABLE_F4 - Talked to Goron at GC Island (Before goron ruby is obtained)
INFTABLE_F8 - (not on cloud modding) Talked to GC Goron outside Darunias door (after opening door,
INFTABLE_SPOKE_TO_DODONGOS_CAVERN_ENTRANCE_GORON - Talked to DMT Goron at DC entrance (Before DC is opened as child)
INFTABLE_SPOKE_TO_GC_STAIRWELL_GORON - Talked to GC Goron in bottom level stairwell
INFTABLE_SPOKE_TO_LOST_WOODS_SHORTCUT_GORON - Talked to GC Goron at LW entrance (Before LW shortcut is opened)
INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON - Talked to DMT Goron at Bomb Flower with goron bracelet
INFTABLE_SPOKE_TO_GC_ENTRANCE_GORON - Talked to Goron at GC Entrance (Before goron ruby is obtained)
INFTABLE_SPOKE_TO_GC_ISLAND_GORON - Talked to Goron at GC Island (Before goron ruby is obtained)
INFTABLE_SPOKE_TO_DARUNIA_DOOR_GORON - (not on cloud modding) Talked to GC Goron outside Darunias door (after opening door,
before getting goron bracelet)
INFTABLE_109 - Obtained Fire Tunic from Goron Link
INFTABLE_GORON_CITY_DOORS_UNLOCKED - Obtained Fire Tunic from Goron Link
INFTABLE_10A - (not on cloud modding)
INFTABLE_10B - Spoke to Goron Link About Volvagia
INFTABLE_10C - Stopped Goron Link's Rolling
INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_DRAGON - Spoke to Goron Link about Volvagia
INFTABLE_STOPPED_GORON_LINKS_ROLLING - Stopped Goron Link's Rolling
INFTABLE_10D - EnGo Exclusive
INFTABLE_10E - Spoke to Goron Link
INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_GORONS - Spoke to Goron Link about the missing Gorons
INFTABLE_10F - (not on cloud modding)
INFTABLE_11E - Bomb bag upgrade obtained from rolling Goron
INFTABLE_ACQUIRED_BOMB_BAG_UPGRADE_FROM_HOT_RODDER_GORON - Bomb bag upgrade obtained from rolling Goron
Gorons only move when this->interactInfo.talkState == NPC_TALK_STATE_IDLE
*/
@ -310,7 +310,7 @@ u16 EnGo2_GoronFireGenericGetTextId(EnGo2* this) {
}
u16 EnGo2_GetTextIdGoronCityRollingBig(PlayState* play, EnGo2* this) {
if (GET_INFTABLE(INFTABLE_11E)) {
if (GET_INFTABLE(INFTABLE_ACQUIRED_BOMB_BAG_UPGRADE_FROM_HOT_RODDER_GORON)) {
return 0x3013;
} else if (CUR_CAPACITY(UPG_BOMB_BAG) >= 20 && this->waypoint > 7 && this->waypoint < 12) {
return 0x3012;
@ -332,7 +332,7 @@ s16 EnGo2_UpdateTalkStateGoronCityRollingBig(PlayState* play, EnGo2* this) {
bombBagUpgrade = CUR_CAPACITY(UPG_BOMB_BAG) == 30 ? GI_BOMB_BAG_40 : GI_BOMB_BAG_30;
EnGo2_GetItem(this, play, bombBagUpgrade);
Message_CloseTextbox(play);
SET_INFTABLE(INFTABLE_11E);
SET_INFTABLE(INFTABLE_ACQUIRED_BOMB_BAG_UPGRADE_FROM_HOT_RODDER_GORON);
return NPC_TALK_STATE_ACTION;
} else {
return NPC_TALK_STATE_ACTION;
@ -352,8 +352,8 @@ u16 EnGo2_GetTextIdGoronDmtBombFlower(PlayState* play, EnGo2* this) {
s16 EnGo2_UpdateTalkStateGoronDmtBombFlower(PlayState* play, EnGo2* this) {
switch (Message_GetState(&play->msgCtx)) {
case TEXT_STATE_CLOSING:
if ((this->actor.textId == 0x300B) && !GET_INFTABLE(INFTABLE_EB)) {
SET_INFTABLE(INFTABLE_EB);
if ((this->actor.textId == 0x300B) && !GET_INFTABLE(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON)) {
SET_INFTABLE(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON);
return NPC_TALK_STATE_ACTION;
} else {
return NPC_TALK_STATE_IDLE;
@ -381,7 +381,7 @@ u16 EnGo2_GetTextIdGoronDmtRollingSmall(PlayState* play, EnGo2* this) {
if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else {
return GET_EVENTCHKINF(EVENTCHKINF_23) ? 0x3026 : 0x3009;
return GET_EVENTCHKINF(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE) ? 0x3026 : 0x3009;
}
}
@ -399,14 +399,14 @@ u16 EnGo2_GetTextIdGoronDmtDcEntrance(PlayState* play, EnGo2* this) {
} else if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else {
return GET_EVENTCHKINF(EVENTCHKINF_23) ? 0x3021 : GET_INFTABLE(INFTABLE_E0) ? 0x302A : 0x3008;
return GET_EVENTCHKINF(EVENTCHKINF_BOMBED_DODONGOS_CAVERN_ENTRANCE) ? 0x3021 : GET_INFTABLE(INFTABLE_SPOKE_TO_DODONGOS_CAVERN_ENTRANCE_GORON) ? 0x302A : 0x3008;
}
}
s16 EnGo2_UpdateTalkStateGoronDmtDcEntrance(PlayState* play, EnGo2* this) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_CLOSING) {
if (this->actor.textId == 0x3008) {
SET_INFTABLE(INFTABLE_E0);
SET_INFTABLE(INFTABLE_SPOKE_TO_DODONGOS_CAVERN_ENTRANCE_GORON);
}
return NPC_TALK_STATE_IDLE;
} else {
@ -420,14 +420,14 @@ u16 EnGo2_GetTextIdGoronCityEntrance(PlayState* play, EnGo2* this) {
} else if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3027;
} else {
return GET_INFTABLE(INFTABLE_F0) ? 0x3015 : 0x3014;
return GET_INFTABLE(INFTABLE_SPOKE_TO_GC_ENTRANCE_GORON) ? 0x3015 : 0x3014;
}
}
s16 EnGo2_UpdateTalkStateGoronCityEntrance(PlayState* play, EnGo2* this) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_CLOSING) {
if (this->actor.textId == 0x3014) {
SET_INFTABLE(INFTABLE_F0);
SET_INFTABLE(INFTABLE_SPOKE_TO_GC_ENTRANCE_GORON);
}
return NPC_TALK_STATE_IDLE;
} else {
@ -441,14 +441,14 @@ u16 EnGo2_GetTextIdGoronCityIsland(PlayState* play, EnGo2* this) {
} else if (CHECK_QUEST_ITEM(QUEST_GORON_RUBY)) {
return 0x3067;
} else {
return GET_INFTABLE(INFTABLE_F4) ? 0x3017 : 0x3016;
return GET_INFTABLE(INFTABLE_SPOKE_TO_GC_ISLAND_GORON) ? 0x3017 : 0x3016;
}
}
s16 EnGo2_UpdateTalkStateGoronCityIsland(PlayState* play, EnGo2* this) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_CLOSING) {
if (this->actor.textId == 0x3016) {
SET_INFTABLE(INFTABLE_F4);
SET_INFTABLE(INFTABLE_SPOKE_TO_GC_ISLAND_GORON);
}
return NPC_TALK_STATE_IDLE;
} else {
@ -464,7 +464,7 @@ u16 EnGo2_GetTextIdGoronCityLowestFloor(PlayState* play, EnGo2* this) {
} else {
return CUR_UPG_VALUE(UPG_STRENGTH) != 0 ? 0x302C
: !Flags_GetSwitch(play, 0x1B) ? 0x3017
: GET_INFTABLE(INFTABLE_F8) ? 0x3019
: GET_INFTABLE(INFTABLE_SPOKE_TO_DARUNIA_DOOR_GORON) ? 0x3019
: 0x3018;
}
}
@ -472,7 +472,7 @@ u16 EnGo2_GetTextIdGoronCityLowestFloor(PlayState* play, EnGo2* this) {
s16 EnGo2_UpdateTalkStateGoronCityLowestFloor(PlayState* play, EnGo2* this) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_CLOSING) {
if (this->actor.textId == 0x3018) {
SET_INFTABLE(INFTABLE_F8);
SET_INFTABLE(INFTABLE_SPOKE_TO_DARUNIA_DOOR_GORON);
}
return NPC_TALK_STATE_IDLE;
} else {
@ -484,8 +484,8 @@ u16 EnGo2_GetTextIdGoronCityLink(PlayState* play, EnGo2* this) {
if (CHECK_QUEST_ITEM(QUEST_MEDALLION_FIRE)) {
return GET_INFTABLE(INFTABLE_10F) ? 0x3042 : 0x3041;
} else if (CHECK_OWNED_EQUIP(EQUIP_TYPE_TUNIC, EQUIP_INV_TUNIC_GORON)) {
return GET_INFTABLE(INFTABLE_10E) ? 0x3038 : 0x3037;
} else if (GET_INFTABLE(INFTABLE_10C)) {
return GET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_GORONS) ? 0x3038 : 0x3037;
} else if (GET_INFTABLE(INFTABLE_STOPPED_GORON_LINKS_ROLLING)) {
this->unk_20C = 0;
this->dialogState = TEXT_STATE_NONE;
return GET_INFTABLE(INFTABLE_10A) ? 0x3033 : 0x3032;
@ -503,7 +503,7 @@ s16 EnGo2_UpdateTalkStateGoronCityLink(PlayState* play, EnGo2* this) {
this->actionFunc = EnGo2_SetupGetItem;
return NPC_TALK_STATE_ACTION;
case 0x3037:
SET_INFTABLE(INFTABLE_10E);
SET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_GORONS);
FALLTHROUGH;
default:
return NPC_TALK_STATE_IDLE;
@ -512,12 +512,12 @@ s16 EnGo2_UpdateTalkStateGoronCityLink(PlayState* play, EnGo2* this) {
if (Message_ShouldAdvance(play)) {
if (this->actor.textId == 0x3034) {
if (play->msgCtx.choiceIndex == 0) {
this->actor.textId = GET_INFTABLE(INFTABLE_10B) ? 0x3033 : 0x3035;
this->actor.textId = GET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_DRAGON) ? 0x3033 : 0x3035;
if (this->actor.textId == 0x3035) {
Audio_StopSfxById(NA_SE_EN_GOLON_CRY);
}
} else {
this->actor.textId = GET_INFTABLE(INFTABLE_10B) ? 0x3036 : 0x3033;
this->actor.textId = GET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_DRAGON) ? 0x3036 : 0x3033;
if (this->actor.textId == 0x3036) {
Audio_StopSfxById(NA_SE_EN_GOLON_CRY);
}
@ -533,7 +533,7 @@ s16 EnGo2_UpdateTalkStateGoronCityLink(PlayState* play, EnGo2* this) {
if (Message_ShouldAdvance(play)) {
switch (this->actor.textId) {
case 0x3035:
SET_INFTABLE(INFTABLE_10B);
SET_INFTABLE(INFTABLE_SPOKE_TO_GORON_LINK_ABOUT_DRAGON);
FALLTHROUGH;
case 0x3032:
case 0x3033:
@ -662,13 +662,13 @@ s16 EnGo2_UpdateTalkStateGoronFireGeneric(PlayState* play, EnGo2* this) {
}
u16 EnGo2_GetTextIdGoronCityStairwell(PlayState* play, EnGo2* this) {
return !LINK_IS_ADULT ? GET_INFTABLE(INFTABLE_E3) ? 0x3022 : 0x300E : 0x3043;
return !LINK_IS_ADULT ? GET_INFTABLE(INFTABLE_SPOKE_TO_GC_STAIRWELL_GORON) ? 0x3022 : 0x300E : 0x3043;
}
s16 EnGo2_UpdateTalkStateGoronCityStairwell(PlayState* play, EnGo2* this) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_CLOSING) {
if (this->actor.textId == 0x300E) {
SET_INFTABLE(INFTABLE_E3);
SET_INFTABLE(INFTABLE_SPOKE_TO_GC_STAIRWELL_GORON);
}
return NPC_TALK_STATE_IDLE;
} else {
@ -694,7 +694,7 @@ u16 EnGo2_GetTextIdGoronCityLostWoods(PlayState* play, EnGo2* this) {
if (Flags_GetSwitch(play, 0x1C)) {
return 0x302F;
} else {
return GET_INFTABLE(INFTABLE_E6) ? 0x3025 : 0x3024;
return GET_INFTABLE(INFTABLE_SPOKE_TO_LOST_WOODS_SHORTCUT_GORON) ? 0x3025 : 0x3024;
}
} else {
return 0x3043;
@ -704,7 +704,7 @@ u16 EnGo2_GetTextIdGoronCityLostWoods(PlayState* play, EnGo2* this) {
s16 EnGo2_UpdateTalkStateGoronCityLostWoods(PlayState* play, EnGo2* this) {
if (Message_GetState(&play->msgCtx) == TEXT_STATE_CLOSING) {
if (this->actor.textId == 0x3024) {
SET_INFTABLE(INFTABLE_E6);
SET_INFTABLE(INFTABLE_SPOKE_TO_LOST_WOODS_SHORTCUT_GORON);
}
return NPC_TALK_STATE_IDLE;
} else {
@ -1345,7 +1345,7 @@ void EnGo2_SetupRolling(EnGo2* this, PlayState* play) {
if (PARAMS_GET_S(this->actor.params, 0, 5) == GORON_CITY_ROLLING_BIG ||
PARAMS_GET_S(this->actor.params, 0, 5) == GORON_CITY_LINK) {
this->collider.elem.acElemFlags = ACELEM_ON;
this->actor.speed = GET_INFTABLE(INFTABLE_11E) ? 6.0f : 3.6000001f;
this->actor.speed = GET_INFTABLE(INFTABLE_ACQUIRED_BOMB_BAG_UPGRADE_FROM_HOT_RODDER_GORON) ? 6.0f : 3.6000001f;
} else {
this->actor.speed = 6.0f;
}
@ -1571,7 +1571,7 @@ void EnGo2_Init(Actor* thisx, PlayState* play) {
EnGo2_GetItemAnimation(this, play);
break;
case GORON_CITY_LINK:
if (GET_INFTABLE(INFTABLE_109)) {
if (GET_INFTABLE(INFTABLE_GORON_CITY_DOORS_UNLOCKED)) {
Path_CopyLastPoint(this->path, &this->actor.world.pos);
this->actor.home.pos = this->actor.world.pos;
if (!CHECK_QUEST_ITEM(QUEST_MEDALLION_FIRE) &&
@ -1582,7 +1582,7 @@ void EnGo2_Init(Actor* thisx, PlayState* play) {
}
} else {
#if OOT_VERSION >= PAL_1_1
CLEAR_INFTABLE(INFTABLE_10C);
CLEAR_INFTABLE(INFTABLE_STOPPED_GORON_LINKS_ROLLING);
#endif
this->collider.dim.height = (D_80A4816C[PARAMS_GET_S(this->actor.params, 0, 5)].height * 0.6f);
EnGo2_SetupRolling(this, play);
@ -1614,7 +1614,7 @@ void EnGo2_Init(Actor* thisx, PlayState* play) {
this->actionFunc = EnGo2_CurledUp;
break;
case GORON_DMT_BOMB_FLOWER:
if (GET_INFTABLE(INFTABLE_EB)) {
if (GET_INFTABLE(INFTABLE_SPOKE_TO_DMT_BOMB_FLOWER_GORON)) {
Path_CopyLastPoint(this->path, &this->actor.world.pos);
this->actor.home.pos = this->actor.world.pos;
}
@ -1813,7 +1813,7 @@ void EnGo2_SetGetItem(EnGo2* this, PlayState* play) {
EnGo2_GetItemAnimation(this, play);
return;
case GI_TUNIC_GORON:
SET_INFTABLE(INFTABLE_109);
SET_INFTABLE(INFTABLE_GORON_CITY_DOORS_UNLOCKED);
EnGo2_GetItemAnimation(this, play);
return;
case GI_SWORD_BIGGORON:
@ -1897,7 +1897,7 @@ void EnGo2_GoronLinkStopRolling(EnGo2* this, PlayState* play) {
if (Message_GetState(&play->msgCtx) != TEXT_STATE_CLOSING) {
player->actor.freezeTimer = 10;
} else {
SET_INFTABLE(INFTABLE_10C);
SET_INFTABLE(INFTABLE_STOPPED_GORON_LINKS_ROLLING);
this->trackingMode = NPC_TRACKING_NONE;
this->unk_211 = false;
this->isAwake = false;

View file

@ -52,7 +52,7 @@ static InitChainEntry sInitChain[] = {
void EnGuest_Init(Actor* thisx, PlayState* play) {
EnGuest* this = (EnGuest*)thisx;
if (GET_INFTABLE(INFTABLE_76)) {
if (GET_INFTABLE(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD)) {
Actor_Kill(&this->actor);
} else {
this->osAnimeObjectSlot = Object_GetSlot(&play->objectCtx, OBJECT_OS_ANIME);

View file

@ -111,13 +111,13 @@ void EnHeishi1_Init(Actor* thisx, PlayState* play2) {
}
if (this->type != 5) {
if (((gSaveContext.save.dayTime < CLOCK_TIME(17, 18) - 1) || IS_DAY) && !GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (((gSaveContext.save.dayTime < CLOCK_TIME(17, 18) - 1) || IS_DAY) && !GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
this->actionFunc = EnHeishi1_SetupWalk;
} else {
Actor_Kill(&this->actor);
}
} else {
if ((gSaveContext.save.dayTime > CLOCK_TIME(17, 18) - 1) || !IS_DAY || GET_EVENTCHKINF(EVENTCHKINF_80)) {
if ((gSaveContext.save.dayTime > CLOCK_TIME(17, 18) - 1) || !IS_DAY || GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
this->actionFunc = EnHeishi1_SetupWaitNight;
} else {
Actor_Kill(&this->actor);
@ -346,7 +346,7 @@ void EnHeishi1_Kick(EnHeishi1* this, PlayState* play) {
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_EVENT) && Message_ShouldAdvance(play)) {
Message_CloseTextbox(play);
if (!this->loadStarted) {
SET_EVENTCHKINF(EVENTCHKINF_4E);
SET_EVENTCHKINF(EVENTCHKINF_CAUGHT_BY_CASTLE_GUARDS);
play->nextEntranceIndex = ENTR_HYRULE_CASTLE_3;
play->transitionTrigger = TRANS_TRIGGER_START;
this->loadStarted = true;

View file

@ -189,7 +189,7 @@ void func_80A53278(EnHeishi2* this, PlayState* play) {
this->unk_30B = 1;
this->unk_300 = TEXT_STATE_DONE;
this->actionFunc = func_80A5475C;
} else if (GET_EVENTCHKINF(EVENTCHKINF_09) && GET_EVENTCHKINF(EVENTCHKINF_25) && GET_EVENTCHKINF(EVENTCHKINF_37)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) && GET_EVENTCHKINF(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
// "Get all spiritual stones!"
PRINTF(VT_FGCOL(GREEN) " ☆☆☆☆☆ 全部の精霊石GET ☆☆☆☆☆ \n" VT_RST);
this->unk_300 = TEXT_STATE_DONE;
@ -351,8 +351,8 @@ void func_80A5399C(EnHeishi2* this, PlayState* play) {
this->unk_30B = 0;
var = 0;
if (GET_INFTABLE(INFTABLE_76)) {
if (!GET_INFTABLE(INFTABLE_77)) {
if (GET_INFTABLE(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD)) {
if (!GET_INFTABLE(INFTABLE_GATE_GUARD_PUT_ON_KEATON_MASK)) {
if (Player_GetMask(play) == PLAYER_MASK_KEATON) {
if (this->unk_309 == 0) {
this->actor.textId = 0x200A;
@ -526,7 +526,7 @@ void func_80A53F30(EnHeishi2* this, PlayState* play) {
void func_80A54038(EnHeishi2* this, PlayState* play) {
SkelAnime_Update(&this->skelAnime);
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_EVENT) && Message_ShouldAdvance(play)) {
SET_INFTABLE(INFTABLE_76);
SET_INFTABLE(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD);
Message_CloseTextbox(play);
Player_SetCsActionWithHaltedActors(play, NULL, PLAYER_CSACTION_7);
this->actionFunc = func_80A53908;
@ -541,7 +541,7 @@ void func_80A540C0(EnHeishi2* this, PlayState* play) {
this->actor.textId = 0x2020;
Message_ContinueTextbox(play, this->actor.textId);
Player_UnsetMask(play);
SET_INFTABLE(INFTABLE_77);
SET_INFTABLE(INFTABLE_GATE_GUARD_PUT_ON_KEATON_MASK);
SET_ITEMGETINF(ITEMGETINF_38);
Item_Give(play, ITEM_SOLD_OUT);
if (this->unk_30A != 0) {
@ -848,7 +848,7 @@ void EnHeishi2_Draw(Actor* thisx, PlayState* play2) {
SkelAnime_DrawOpa(play, this->skelAnime.skeleton, this->skelAnime.jointTable, EnHeishi2_OverrideLimbDraw,
EnHeishi2_PostLimbDraw, this);
if ((this->type == 5) && GET_INFTABLE(INFTABLE_77)) {
if ((this->type == 5) && GET_INFTABLE(INFTABLE_GATE_GUARD_PUT_ON_KEATON_MASK)) {
linkChildObjectSlot = Object_GetSlot(&play->objectCtx, OBJECT_LINK_CHILD);
if (linkChildObjectSlot >= 0) {
Mtx* mtx;

View file

@ -208,7 +208,7 @@ void func_80A55D00(EnHeishi3* this, PlayState* play) {
SkelAnime_Update(&this->skelAnime);
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_EVENT) && Message_ShouldAdvance(play) &&
(this->respawnFlag == 0)) {
SET_EVENTCHKINF(EVENTCHKINF_4E);
SET_EVENTCHKINF(EVENTCHKINF_CAUGHT_BY_CASTLE_GUARDS);
play->nextEntranceIndex = ENTR_HYRULE_CASTLE_4;
play->transitionTrigger = TRANS_TRIGGER_START;
this->respawnFlag = 1;

View file

@ -130,12 +130,12 @@ void func_80A563BC(EnHeishi4* this, PlayState* play) {
this->unk_2B4 = 1;
this->actionFunc = func_80A56B40;
} else {
if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
this->actor.textId = 0x5065;
this->actionFunc = func_80A56B40;
return;
}
if (GET_EVENTCHKINF(EVENTCHKINF_45)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL)) {
this->actor.textId = 0x5068;
this->actionFunc = func_80A56B40;
return;
@ -213,13 +213,13 @@ void func_80A56614(EnHeishi4* this, PlayState* play) {
void func_80A5673C(EnHeishi4* this, PlayState* play) {
f32 frames;
if (GET_EVENTCHKINF(EVENTCHKINF_45)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL)) {
PRINTF(VT_FGCOL(YELLOW) " ☆☆☆☆☆ マスターソード祝入手! ☆☆☆☆☆ \n" VT_RST);
Actor_Kill(&this->actor);
return;
}
this->unk_284 = 0;
if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
if (!GET_INFTABLE(INFTABLE_6C)) {
frames = Animation_GetLastFrame(&gEnHeishiDyingGuardAnim_00C444);
Animation_Change(&this->skelAnime, &gEnHeishiDyingGuardAnim_00C444, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP,

View file

@ -624,7 +624,7 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
}
case ENHY_TYPE_WOMAN_3:
if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
return GET_INFTABLE(INFTABLE_C1) ? 0x7017 : 0x7045;
} else {
return GET_INFTABLE(INFTABLE_C0) ? 0x7017 : 0x7016;
@ -635,7 +635,7 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
return 0x5086;
} else if (play->sceneId == SCENE_KAKARIKO_VILLAGE) {
return 0x5085;
} else if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
return GET_INFTABLE(INFTABLE_C3) ? 0x701A : 0x7047;
} else if (GET_EVENTCHKINF(EVENTCHKINF_TALON_RETURNED_FROM_CASTLE)) {
return 0x701A;
@ -648,17 +648,17 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
}
case ENHY_TYPE_MAN_2_BALD:
return GET_EVENTCHKINF(EVENTCHKINF_80) ? (GET_INFTABLE(INFTABLE_C4) ? 0x7001 : 0x70EB) : 0x7001;
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? (GET_INFTABLE(INFTABLE_C4) ? 0x7001 : 0x70EB) : 0x7001;
case ENHY_TYPE_MAN_1_SHAVED_BLACK_SHIRT:
return GET_EVENTCHKINF(EVENTCHKINF_80) ? 0x704B : (GET_INFTABLE(INFTABLE_C5) ? 0x7024 : 0x7023);
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? 0x704B : (GET_INFTABLE(INFTABLE_C5) ? 0x7024 : 0x7023);
case ENHY_TYPE_BEGGAR:
player->exchangeItemId = EXCH_ITEM_BOTTLE_BLUE_FIRE;
return 0x700C;
case ENHY_TYPE_OLD_WOMAN:
return GET_EVENTCHKINF(EVENTCHKINF_80) ? 0x704A : (GET_INFTABLE(INFTABLE_C6) ? 0x7022 : 0x7021);
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? 0x704A : (GET_INFTABLE(INFTABLE_C6) ? 0x7022 : 0x7021);
case ENHY_TYPE_OLD_MAN:
if (play->sceneId == SCENE_KAKARIKO_CENTER_GUEST_HOUSE) {
@ -666,11 +666,11 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
} else if (play->sceneId == SCENE_KAKARIKO_VILLAGE) {
return 0x5087;
} else {
return GET_EVENTCHKINF(EVENTCHKINF_80) ? 0x704D : (GET_INFTABLE(INFTABLE_C7) ? 0x7028 : 0x7027);
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? 0x704D : (GET_INFTABLE(INFTABLE_C7) ? 0x7028 : 0x7027);
}
case ENHY_TYPE_YOUNG_WOMAN_BROWN_HAIR:
if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE)) {
return GET_INFTABLE(INFTABLE_C9) ? 0x701E : 0x7048;
} else {
return GET_INFTABLE(INFTABLE_C8) ? 0x701E : 0x701D;
@ -678,23 +678,23 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
case ENHY_TYPE_MAN_2_MUSTACHE_RED_SHIRT:
if (play->sceneId == SCENE_KAKARIKO_CENTER_GUEST_HOUSE) {
return GET_EVENTCHKINF(EVENTCHKINF_AA) ? 0x5082 : 0x5081;
return GET_EVENTCHKINF(EVENTCHKINF_BONGO_BONGO_ESCAPED_FROM_WELL) ? 0x5082 : 0x5081;
} else if (play->sceneId == SCENE_KAKARIKO_VILLAGE) {
return CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW) ? 0x5080 : 0x507F;
} else {
return GET_EVENTCHKINF(EVENTCHKINF_80) ? 0x7049 : (GET_INFTABLE(INFTABLE_CA) ? 0x7020 : 0x701F);
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? 0x7049 : (GET_INFTABLE(INFTABLE_CA) ? 0x7020 : 0x701F);
}
case ENHY_TYPE_MAN_2_MUSTACHE_BLUE_SHIRT:
if (play->sceneId == SCENE_IMPAS_HOUSE) {
return GET_EVENTCHKINF(EVENTCHKINF_AA) ? 0x507E : 0x507D;
return GET_EVENTCHKINF(EVENTCHKINF_BONGO_BONGO_ESCAPED_FROM_WELL) ? 0x507E : 0x507D;
} else if (play->sceneId == SCENE_KAKARIKO_VILLAGE) {
return CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW) ? 0x507C : 0x507B;
} else {
#if OOT_VERSION < NTSC_1_1
return GET_EVENTCHKINF(EVENTCHKINF_80) ? 0x7046 : (GET_INFTABLE(INFTABLE_CB) ? 0x7019 : 0x7018);
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? 0x7046 : (GET_INFTABLE(INFTABLE_CB) ? 0x7019 : 0x7018);
#else
return GET_EVENTCHKINF(EVENTCHKINF_80) ? 0x7046 : (GET_INFTABLE(INFTABLE_CD) ? 0x7019 : 0x7018);
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? 0x7046 : (GET_INFTABLE(INFTABLE_CD) ? 0x7019 : 0x7018);
#endif
}
@ -706,7 +706,7 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
if (play->sceneId == SCENE_KAKARIKO_VILLAGE) {
return !IS_DAY ? 0x5084 : 0x5083;
} else {
return GET_EVENTCHKINF(EVENTCHKINF_80) ? 0x7044 : 0x7015;
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? 0x7044 : 0x7015;
}
case ENHY_TYPE_MAN_1_BOWL_CUT_PURPLE_SHIRT:
@ -736,7 +736,7 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
case ENHY_TYPE_WOMAN_2:
if (!LINK_IS_ADULT) {
return GET_EVENTCHKINF(EVENTCHKINF_80) ? 0x505F : (GET_INFTABLE(INFTABLE_163) ? 0x505E : 0x505D);
return GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) ? 0x505F : (GET_INFTABLE(INFTABLE_163) ? 0x505E : 0x505D);
} else {
return (this->talonEventChkInf & EVENTCHKINF_TALON_RETURNED_FROM_KAKARIKO_MASK)
? 0x5062
@ -1103,7 +1103,7 @@ s32 EnHy_ShouldSpawn(EnHy* this, PlayState* play) {
return true;
} else if (IS_NIGHT) {
return false;
} else if (GET_EVENTCHKINF(EVENTCHKINF_80) && !GET_EVENTCHKINF(EVENTCHKINF_45)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) && !GET_EVENTCHKINF(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL)) {
return false;
} else {
return true;

View file

@ -1497,7 +1497,7 @@ void EnIk_DrawCutscene(Actor* thisx, PlayState* play) {
void EnIk_CsInit(EnIk* this, PlayState* play) {
if (this->actor.params == IK_TYPE_NABOORU) {
if (!GET_EVENTCHKINF(EVENTCHKINF_3B)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_BEGAN_NABOORU_BATTLE)) {
this->actor.update = EnIk_UpdateCutscene;
this->actor.draw = EnIk_DrawCutscene;
Actor_SetScale(&this->actor, 0.01f);
@ -1514,7 +1514,7 @@ void EnIk_ChangeToEnemy(EnIk* this, PlayState* play) {
this->actor.update = EnIk_UpdateEnemy;
this->actor.draw = EnIk_DrawEnemy;
this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE;
SET_EVENTCHKINF(EVENTCHKINF_3B);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_NABOORU_BATTLE);
Actor_SetScale(&this->actor, 0.012f);
EnIk_SetupIdle(this);
}
@ -1528,7 +1528,7 @@ void EnIk_StartDefeatCutscene(Actor* thisx, PlayState* play) {
Cutscene_SetScript(play, gSpiritBossNabooruKnuckleDefeatCs);
gSaveContext.cutsceneTrigger = 1;
Actor_SetScale(&this->actor, 0.01f);
SET_EVENTCHKINF(EVENTCHKINF_3C);
SET_EVENTCHKINF(EVENTCHKINF_FINISHED_NABOORU_BATTLE);
EnIk_SetupCsAction3(this, play);
}
}
@ -1537,7 +1537,7 @@ void EnIk_Init(Actor* thisx, PlayState* play) {
EnIk* this = (EnIk*)thisx;
s32 upperParams = IK_GET_UPPER_PARAMS(&this->actor);
if (((IK_GET_ARMOR_TYPE(&this->actor) == IK_TYPE_NABOORU) && GET_EVENTCHKINF(EVENTCHKINF_3C)) ||
if (((IK_GET_ARMOR_TYPE(&this->actor) == IK_TYPE_NABOORU) && GET_EVENTCHKINF(EVENTCHKINF_FINISHED_NABOORU_BATTLE)) ||
(upperParams != 0 && Flags_GetSwitch(play, upperParams >> 8))) {
Actor_Kill(&this->actor);
} else {

View file

@ -144,7 +144,7 @@ u16 EnIn_GetTextIdAdult(PlayState* play) {
case EVENTINF_HORSES_STATE_1:
if (!(player->stateFlags1 & PLAYER_STATE1_23)) {
return 0x2036;
} else if (GET_EVENTCHKINF(EVENTCHKINF_1B)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_RENTED_HORSE_FROM_INGO)) {
if (GET_INFTABLE(INFTABLE_A2)) {
return 0x2036;
} else {
@ -168,7 +168,7 @@ u16 EnIn_GetTextIdAdult(PlayState* play) {
return 0x205B;
case EVENTINF_HORSES_STATE_2:
default:
if (GET_INFTABLE(INFTABLE_9A)) {
if (GET_INFTABLE(INFTABLE_SPOKE_TO_INGO_ONCE_AS_ADULT)) {
return 0x2031;
} else {
return 0x2030;
@ -200,7 +200,7 @@ s16 EnIn_UpdateTalkStateOnClosing(PlayState* play, Actor* thisx) {
talkState = NPC_TALK_STATE_ACTION;
break;
case 0x203F:
SET_EVENTCHKINF(EVENTCHKINF_11);
SET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_INGO_AT_RANCH_BEFORE_TALON_RETURNS);
SET_INFTABLE(INFTABLE_94);
break;
}
@ -222,7 +222,7 @@ s16 EnIn_UpdateTalkStateOnChoice(PlayState* play, Actor* thisx) {
this->actor.textId = 0x2034;
}
Message_ContinueTextbox(play, this->actor.textId);
SET_INFTABLE(INFTABLE_9A);
SET_INFTABLE(INFTABLE_SPOKE_TO_INGO_ONCE_AS_ADULT);
break;
case 0x2034:
if (play->msgCtx.choiceIndex == 1) {
@ -655,7 +655,7 @@ void func_80A7A568(EnIn* this, PlayState* play) {
s32 phi_a2;
s32 transitionType;
if (!GET_EVENTCHKINF(EVENTCHKINF_1B) && (player->stateFlags1 & PLAYER_STATE1_23)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_RENTED_HORSE_FROM_INGO) && (player->stateFlags1 & PLAYER_STATE1_23)) {
SET_INFTABLE(INFTABLE_AB);
}
if (gSaveContext.timerState == TIMER_STATE_STOP) {
@ -679,9 +679,9 @@ void func_80A7A568(EnIn* this, PlayState* play) {
} else {
Audio_PlaySfxGeneral(NA_SE_SY_FOUND, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale,
&gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb);
if (!GET_EVENTCHKINF(EVENTCHKINF_1B)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_RENTED_HORSE_FROM_INGO)) {
if (GET_INFTABLE(INFTABLE_AB)) {
SET_EVENTCHKINF(EVENTCHKINF_1B);
SET_EVENTCHKINF(EVENTCHKINF_RENTED_HORSE_FROM_INGO);
SET_INFTABLE(INFTABLE_AB);
}
}
@ -898,8 +898,8 @@ void func_80A7B024(EnIn* this, PlayState* play) {
return;
}
if (!GET_EVENTCHKINF(EVENTCHKINF_1B) && GET_INFTABLE(INFTABLE_AB)) {
SET_EVENTCHKINF(EVENTCHKINF_1B);
if (!GET_EVENTCHKINF(EVENTCHKINF_RENTED_HORSE_FROM_INGO) && GET_INFTABLE(INFTABLE_AB)) {
SET_EVENTCHKINF(EVENTCHKINF_RENTED_HORSE_FROM_INGO);
SET_INFTABLE(INFTABLE_AB);
}

View file

@ -96,7 +96,7 @@ void EnJj_Init(Actor* thisx, PlayState* play2) {
this->extraBlinkCounter = 0;
this->extraBlinkTotal = 0;
if (GET_EVENTCHKINF(EVENTCHKINF_3A)) { // Fish given
if (GET_EVENTCHKINF(EVENTCHKINF_OFFERED_FISH_TO_JABU_JABU)) { // Fish given
EnJj_SetupAction(this, EnJj_WaitToOpenMouth);
} else {
EnJj_SetupAction(this, EnJj_WaitForFish);
@ -218,7 +218,7 @@ void EnJj_BeginCutscene(EnJj* this, PlayState* play) {
gSaveContext.cutsceneTrigger = 1;
DynaPoly_DisableCollision(play, &play->colCtx.dyna, bodyCollisionActor->bgId);
Camera_SetFinishedFlag(GET_ACTIVE_CAM(play));
SET_EVENTCHKINF(EVENTCHKINF_3A);
SET_EVENTCHKINF(EVENTCHKINF_OFFERED_FISH_TO_JABU_JABU);
Sfx_PlaySfxCentered(NA_SE_SY_CORRECT_CHIME);
}
}

View file

@ -137,7 +137,7 @@ void func_80A90264(EnKakasi2* this, PlayState* play) {
this->actionFunc = func_80A904D8;
} else if ((this->actor.xzDistToPlayer < this->maxSpawnDistance.x) &&
(fabsf(player->actor.world.pos.y - this->actor.world.pos.y) < this->maxSpawnDistance.y) &&
GET_EVENTCHKINF(EVENTCHKINF_9C)) {
GET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_FOR_SCARECROW_AS_ADULT)) {
this->unk_194 = 0;
if (play->msgCtx.ocarinaMode == OCARINA_MODE_0B) {

View file

@ -386,8 +386,8 @@ void func_80A91A90(EnKakasi3* this, PlayState* play) {
if (this->dialogState == Message_GetState(&play->msgCtx) && Message_ShouldAdvance(play)) {
if (this->unk_195) {
if (!GET_EVENTCHKINF(EVENTCHKINF_9C)) {
SET_EVENTCHKINF(EVENTCHKINF_9C);
if (!GET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_FOR_SCARECROW_AS_ADULT)) {
SET_EVENTCHKINF(EVENTCHKINF_PLAYED_SONG_FOR_SCARECROW_AS_ADULT);
}
}
if (play->cameraPtrs[this->subCamId] == NULL) {

View file

@ -309,7 +309,7 @@ u16 EnKo_GetTextIdChild(PlayState* play, Actor* thisx) {
EnKo* this = (EnKo*)thisx;
switch (ENKO_TYPE) {
case ENKO_TYPE_CHILD_FADO:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x10DA;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
@ -317,7 +317,7 @@ u16 EnKo_GetTextIdChild(PlayState* play, Actor* thisx) {
}
return GET_INFTABLE(INFTABLE_B7) ? 0x10D8 : 0x10D7;
case ENKO_TYPE_CHILD_0:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x1025;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
@ -325,7 +325,7 @@ u16 EnKo_GetTextIdChild(PlayState* play, Actor* thisx) {
}
return 0x1004;
case ENKO_TYPE_CHILD_1:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x1023;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
@ -336,12 +336,12 @@ u16 EnKo_GetTextIdChild(PlayState* play, Actor* thisx) {
}
return 0x1005;
case ENKO_TYPE_CHILD_2:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x1022;
}
return 0x1007;
case ENKO_TYPE_CHILD_3:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x1021;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
@ -352,7 +352,7 @@ u16 EnKo_GetTextIdChild(PlayState* play, Actor* thisx) {
}
return 0x1008;
case ENKO_TYPE_CHILD_4:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x1097;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
@ -363,7 +363,7 @@ u16 EnKo_GetTextIdChild(PlayState* play, Actor* thisx) {
}
return 0x100A;
case ENKO_TYPE_CHILD_5:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x10B0;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
@ -374,7 +374,7 @@ u16 EnKo_GetTextIdChild(PlayState* play, Actor* thisx) {
}
return 0x100C;
case ENKO_TYPE_CHILD_6:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x10B5;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
@ -587,7 +587,7 @@ s16 EnKo_UpdateTalkState(PlayState* play, Actor* thisx) {
break;
case 0x10B7:
#if OOT_VERSION < NTSC_1_1
SET_INFTABLE(INFTABLE_B6);
SET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET);
#else
SET_INFTABLE(INFTABLE_BC);
#endif
@ -612,7 +612,7 @@ s32 EnKo_GetForestQuestState(EnKo* this) {
if (!LINK_IS_ADULT) {
// Obtained Zelda's Letter
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return ENKO_FQS_CHILD_SARIA;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
@ -982,7 +982,7 @@ void func_80A9877C(EnKo* this, PlayState* play) {
if (func_8002F368(play) == EXCH_ITEM_ODD_POTION) {
#if OOT_VERSION < NTSC_1_1
this->actor.textId = GET_INFTABLE(INFTABLE_B6) ? 0x10B8 : 0x10B7;
this->actor.textId = GET_INFTABLE(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET) ? 0x10B8 : 0x10B7;
#else
this->actor.textId = GET_INFTABLE(INFTABLE_BC) ? 0x10B8 : 0x10B7;
#endif
@ -1094,7 +1094,7 @@ s32 EnKo_GetForestQuestState2(EnKo* this) {
return CHECK_QUEST_ITEM(QUEST_MEDALLION_FOREST) ? ENKO_FQS_ADULT_SAVED : ENKO_FQS_ADULT_ENEMY;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
return GET_EVENTCHKINF(EVENTCHKINF_40) ? ENKO_FQS_CHILD_SARIA : ENKO_FQS_CHILD_STONE;
return GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER) ? ENKO_FQS_CHILD_SARIA : ENKO_FQS_CHILD_STONE;
}
return ENKO_FQS_CHILD_START;
}

View file

@ -74,7 +74,7 @@ u16 EnKz_GetTextIdChild(PlayState* play, EnKz* this) {
if (CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE)) {
return 0x402B;
} else if (GET_EVENTCHKINF(EVENTCHKINF_33)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_KING_ZORA_MOVED)) {
return 0x401C;
} else {
player->exchangeItemId = EXCH_ITEM_BOTTLE_RUTOS_LETTER;
@ -291,7 +291,7 @@ void func_80A9CB18(EnKz* this, PlayState* play) {
if (EnKz_UpdateTalking(play, &this->actor, &this->interactInfo.talkState, 340.0f, EnKz_GetTextId,
EnKz_UpdateTalkState)) {
if ((this->actor.textId == 0x401A) && !GET_EVENTCHKINF(EVENTCHKINF_33)) {
if ((this->actor.textId == 0x401A) && !GET_EVENTCHKINF(EVENTCHKINF_KING_ZORA_MOVED)) {
if (func_8002F368(play) == EXCH_ITEM_BOTTLE_RUTOS_LETTER) {
this->actor.textId = 0x401B;
this->sfxPlayed = false;
@ -389,7 +389,7 @@ void EnKz_Init(Actor* thisx, PlayState* play) {
this->interactInfo.talkState = NPC_TALK_STATE_IDLE;
Animation_ChangeByInfo(&this->skelanime, sAnimationInfo, ENKZ_ANIM_0);
if (GET_EVENTCHKINF(EVENTCHKINF_33)) {
if (GET_EVENTCHKINF(EVENTCHKINF_KING_ZORA_MOVED)) {
EnKz_SetMovedPos(this, play);
}
@ -455,7 +455,7 @@ void EnKz_Mweep(EnKz* this, PlayState* play) {
Animation_ChangeByInfo(&this->skelanime, sAnimationInfo, ENKZ_ANIM_1);
Inventory_ReplaceItem(play, ITEM_BOTTLE_RUTOS_LETTER, ITEM_BOTTLE_EMPTY);
EnKz_SetMovedPos(this, play);
SET_EVENTCHKINF(EVENTCHKINF_33);
SET_EVENTCHKINF(EVENTCHKINF_KING_ZORA_MOVED);
this->actor.speed = 0.0;
this->actionFunc = EnKz_StopMweep;
}

View file

@ -398,7 +398,7 @@ u16 EnMd_GetTextIdKokiriForest(PlayState* play, EnMd* this) {
return 0x1045;
}
if (GET_EVENTCHKINF(EVENTCHKINF_04)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SHOWED_MIDO_SWORD_SHIELD)) {
return 0x1034;
}
@ -418,7 +418,7 @@ u16 EnMd_GetTextIdMidosHouse(PlayState* play, EnMd* this) {
this->unk_208 = 0;
this->unk_209 = TEXT_STATE_NONE;
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x1028;
}
@ -429,14 +429,14 @@ u16 EnMd_GetTextIdLostWoods(PlayState* play, EnMd* this) {
this->unk_208 = 0;
this->unk_209 = TEXT_STATE_NONE;
if (GET_EVENTCHKINF(EVENTCHKINF_48)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP)) {
if (GET_INFTABLE(INFTABLE_19)) {
return 0x1071;
}
return 0x1070;
}
if (GET_EVENTCHKINF(EVENTCHKINF_0A)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PLAYED_SARIAS_SONG_FOR_MIDO_AS_ADULT)) {
return 0x1068;
}
@ -477,10 +477,10 @@ s16 EnMd_UpdateTalkState(PlayState* play, Actor* thisx) {
case TEXT_STATE_CLOSING:
switch (this->actor.textId) {
case 0x1028:
SET_EVENTCHKINF(EVENTCHKINF_0F);
SET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_ABOUT_SARIA);
break;
case 0x102F:
SET_EVENTCHKINF(EVENTCHKINF_02);
SET_EVENTCHKINF(EVENTCHKINF_FIRST_SPOKE_TO_MIDO);
SET_INFTABLE(INFTABLE_0C);
break;
case 0x1060:
@ -506,13 +506,13 @@ s16 EnMd_UpdateTalkState(PlayState* play, Actor* thisx) {
u8 EnMd_ShouldSpawn(EnMd* this, PlayState* play) {
if (play->sceneId == SCENE_KOKIRI_FOREST) {
if (!GET_EVENTCHKINF(EVENTCHKINF_1C) && !GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_AFTER_DEKU_TREES_DEATH) && !GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 1;
}
}
if (play->sceneId == SCENE_MIDOS_HOUSE) {
if (GET_EVENTCHKINF(EVENTCHKINF_1C) || GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_AFTER_DEKU_TREES_DEATH) || GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
if (!LINK_IS_ADULT) {
return 1;
}
@ -638,7 +638,7 @@ void func_80AAB5A4(EnMd* this, PlayState* play) {
f32 temp;
if (play->sceneId != SCENE_MIDOS_HOUSE) {
temp = (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && !GET_EVENTCHKINF(EVENTCHKINF_1C) &&
temp = (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && !GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_AFTER_DEKU_TREES_DEATH) &&
(play->sceneId == SCENE_KOKIRI_FOREST))
? 100.0f
: 400.0f;
@ -672,10 +672,10 @@ void EnMd_Init(Actor* thisx, PlayState* play) {
Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_ELF, this->actor.world.pos.x,
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, FAIRY_KOKIRI);
if (((play->sceneId == SCENE_KOKIRI_FOREST) && !GET_EVENTCHKINF(EVENTCHKINF_04)) ||
((play->sceneId == SCENE_KOKIRI_FOREST) && GET_EVENTCHKINF(EVENTCHKINF_04) &&
if (((play->sceneId == SCENE_KOKIRI_FOREST) && !GET_EVENTCHKINF(EVENTCHKINF_SHOWED_MIDO_SWORD_SHIELD)) ||
((play->sceneId == SCENE_KOKIRI_FOREST) && GET_EVENTCHKINF(EVENTCHKINF_SHOWED_MIDO_SWORD_SHIELD) &&
CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) ||
((play->sceneId == SCENE_LOST_WOODS) && !GET_EVENTCHKINF(EVENTCHKINF_0A))) {
((play->sceneId == SCENE_LOST_WOODS) && !GET_EVENTCHKINF(EVENTCHKINF_PLAYED_SARIAS_SONG_FOR_MIDO_AS_ADULT))) {
this->actor.home.pos = this->actor.world.pos;
this->actionFunc = func_80AAB948;
return;
@ -735,16 +735,16 @@ void func_80AAB948(EnMd* this, PlayState* play) {
}
if (this->interactInfo.talkState == NPC_TALK_STATE_ACTION) {
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && !GET_EVENTCHKINF(EVENTCHKINF_1C) &&
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && !GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_AFTER_DEKU_TREES_DEATH) &&
(play->sceneId == SCENE_KOKIRI_FOREST)) {
play->msgCtx.msgMode = MSGMODE_PAUSED;
}
if (play->sceneId == SCENE_KOKIRI_FOREST) {
SET_EVENTCHKINF(EVENTCHKINF_04);
SET_EVENTCHKINF(EVENTCHKINF_SHOWED_MIDO_SWORD_SHIELD);
}
if (play->sceneId == SCENE_LOST_WOODS) {
SET_EVENTCHKINF(EVENTCHKINF_0A);
SET_EVENTCHKINF(EVENTCHKINF_PLAYED_SARIAS_SONG_FOR_MIDO_AS_ADULT);
}
func_80AAA92C(this, 3);
@ -803,10 +803,10 @@ void func_80AABD0C(EnMd* this, PlayState* play) {
return;
}
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && !GET_EVENTCHKINF(EVENTCHKINF_1C) &&
if (CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD) && !GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_AFTER_DEKU_TREES_DEATH) &&
(play->sceneId == SCENE_KOKIRI_FOREST)) {
Message_CloseTextbox(play);
SET_EVENTCHKINF(EVENTCHKINF_1C);
SET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_AFTER_DEKU_TREES_DEATH);
Actor_Kill(&this->actor);
return;
}

View file

@ -581,7 +581,7 @@ void EnNb_InitKidnap(EnNb* this, PlayState* play) {
EnNb_SetCurrentAnim(this, &gNabooruTrappedInVortexPushingGroundAnim, 0, 0.0f, 0);
this->action = NB_KIDNAPPED;
this->actor.shape.shadowAlpha = 0;
SET_EVENTCHKINF(EVENTCHKINF_95);
SET_EVENTCHKINF(EVENTCHKINF_NABOORU_CAPTURED_BY_TWINROVA);
}
void EnNb_PlayCrySFX(EnNb* this, PlayState* play) {
@ -1121,11 +1121,11 @@ void EnNb_LookUp(EnNb* this, PlayState* play) {
}
void EnNb_CrawlspaceSpawnCheck(EnNb* this, PlayState* play) {
if (!GET_EVENTCHKINF(EVENTCHKINF_95) && LINK_IS_CHILD) {
if (!GET_EVENTCHKINF(EVENTCHKINF_NABOORU_CAPTURED_BY_TWINROVA) && LINK_IS_CHILD) {
EnNb_UpdatePath(this, play);
// looking into crawlspace
if (!GET_EVENTCHKINF(EVENTCHKINF_94)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_NABOORU_IN_SPIRIT_TEMPLE)) {
EnNb_SetCurrentAnim(this, &gNabooruKneeingAtCrawlspaceAnim, 0, 0.0f, 0);
this->action = NB_CROUCH_CRAWLSPACE;
this->drawMode = NB_DRAW_DEFAULT;
@ -1239,7 +1239,7 @@ void func_80AB3838(EnNb* this, PlayState* play) {
void EnNb_SetupPathMovement(EnNb* this, PlayState* play) {
EnNb_SetCurrentAnim(this, &gNabooruStandingToWalkingTransitionAnim, 2, -8.0f, 0);
SET_EVENTCHKINF(EVENTCHKINF_94);
SET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_NABOORU_IN_SPIRIT_TEMPLE);
this->action = NB_IN_PATH;
this->actor.flags &= ~(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_FRIENDLY);
}

View file

@ -139,7 +139,7 @@ void EnNiwGirl_Talk(EnNiwGirl* this, PlayState* play) {
-10.0f);
this->actor.flags |= ACTOR_FLAG_ATTENTION_ENABLED;
this->actor.textId = 0x7000;
if (GET_EVENTCHKINF(EVENTCHKINF_80) && (this->unk_27A == 0)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) && (this->unk_27A == 0)) {
this->actor.textId = 0x70EA;
}
switch (Player_GetMask(play)) {

View file

@ -195,8 +195,8 @@ void func_80ABF28C(EnOkarinaTag* this, PlayState* play) {
if ((this->ocarinaSong != 6) || (gSaveContext.save.info.scarecrowSpawnSongSet)) {
if ((this->switchFlag >= 0) && Flags_GetSwitch(play, this->switchFlag)) {
this->actor.flags &= ~ACTOR_FLAG_ATTENTION_ENABLED;
} else if (((this->type != 4) || !GET_EVENTCHKINF(EVENTCHKINF_4B)) &&
((this->type != 6) || !GET_EVENTCHKINF(EVENTCHKINF_1D)) &&
} else if (((this->type != 4) || !GET_EVENTCHKINF(EVENTCHKINF_OPENED_DOOR_OF_TIME)) &&
((this->type != 6) || !GET_EVENTCHKINF(EVENTCHKINF_DESTROYED_ROYAL_FAMILY_TOMB)) &&
(this->actor.xzDistToPlayer < (90.0f + this->interactRange)) &&
(fabsf(player->actor.world.pos.y - this->actor.world.pos.y) < 80.0f)) {
if (player->stateFlags2 & PLAYER_STATE2_24) {
@ -244,7 +244,7 @@ void func_80ABF4C8(EnOkarinaTag* this, PlayState* play) {
switch (this->type) {
case 1:
Flags_SetSwitch(play, this->switchFlag);
SET_EVENTCHKINF(EVENTCHKINF_39);
SET_EVENTCHKINF(EVENTCHKINF_OPENED_ZORAS_DOMAIN);
break;
case 2:
play->csCtx.script = D_80ABF9D0;
@ -261,7 +261,7 @@ void func_80ABF4C8(EnOkarinaTag* this, PlayState* play) {
play->csCtx.script = LINK_IS_ADULT ? SEGMENTED_TO_VIRTUAL(spot02_scene_Cs_003C80)
: SEGMENTED_TO_VIRTUAL(spot02_scene_Cs_005020);
gSaveContext.cutsceneTrigger = 1;
SET_EVENTCHKINF(EVENTCHKINF_1D);
SET_EVENTCHKINF(EVENTCHKINF_DESTROYED_ROYAL_FAMILY_TOMB);
Sfx_PlaySfxCentered(NA_SE_SY_CORRECT_CHIME);
break;
default:

View file

@ -523,7 +523,7 @@ void EnOssan_TalkZoraShopkeeper(PlayState* play) {
// Goron City, Goron
void EnOssan_TalkGoronShopkeeper(PlayState* play) {
if (LINK_AGE_IN_YEARS == YEARS_CHILD) {
if (GET_EVENTCHKINF(EVENTCHKINF_25)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
Message_ContinueTextbox(play, 0x3028);
} else if (CUR_UPG_VALUE(UPG_STRENGTH) != 0) {
Message_ContinueTextbox(play, 0x302D);
@ -601,7 +601,7 @@ void EnOssan_Init(Actor* thisx, PlayState* play) {
}
// If you've given Zelda's Letter to the Kakariko Guard
if (this->actor.params == OSSAN_TYPE_MASK && !GET_INFTABLE(INFTABLE_76)) {
if (this->actor.params == OSSAN_TYPE_MASK && !GET_INFTABLE(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD)) {
Actor_Kill(&this->actor);
return;
}
@ -612,7 +612,7 @@ void EnOssan_Init(Actor* thisx, PlayState* play) {
}
// Completed Dodongo's Cavern
if (this->actor.params == OSSAN_TYPE_BOMBCHUS && !GET_EVENTCHKINF(EVENTCHKINF_25)) {
if (this->actor.params == OSSAN_TYPE_BOMBCHUS && !GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
Actor_Kill(&this->actor);
return;
}
@ -877,18 +877,18 @@ void EnOssan_TryPaybackMask(EnOssan* this, PlayState* play) {
Rupees_ChangeBy(-price);
if (this->happyMaskShopState == OSSAN_HAPPY_STATE_REQUEST_PAYMENT_BUNNY_HOOD) {
SET_EVENTCHKINF(EVENTCHKINF_8F);
SET_EVENTCHKINF(EVENTCHKINF_PAID_BACK_BUNNY_HOOD_FEE);
Message_ContinueTextbox(play, 0x70A9);
this->happyMaskShopState = OSSAN_HAPPY_STATE_ALL_MASKS_SOLD;
return;
}
if (this->happyMaskShopState == OSSAN_HAPPY_STATE_REQUEST_PAYMENT_KEATON_MASK) {
SET_EVENTCHKINF(EVENTCHKINF_8C);
SET_EVENTCHKINF(EVENTCHKINF_PAID_BACK_KEATON_MASK_FEE);
} else if (this->happyMaskShopState == OSSAN_HAPPY_STATE_REQUEST_PAYMENT_SPOOKY_MASK) {
SET_EVENTCHKINF(EVENTCHKINF_8E);
SET_EVENTCHKINF(EVENTCHKINF_PAID_BACK_SPOOKY_MASK_FEE);
} else if (this->happyMaskShopState == OSSAN_HAPPY_STATE_REQUEST_PAYMENT_SKULL_MASK) {
SET_EVENTCHKINF(EVENTCHKINF_8D);
SET_EVENTCHKINF(EVENTCHKINF_PAID_BACK_SKULL_MASK_FEE);
}
Message_ContinueTextbox(play, 0x70A7);
@ -1361,7 +1361,7 @@ void EnOssan_HandleCanBuyItem(PlayState* play, EnOssan* this) {
switch (selectedItem->canBuyFunc(play, selectedItem)) {
case CANBUY_RESULT_SUCCESS_FANFARE:
if (selectedItem->actor.params == SI_HYLIAN_SHIELD && GET_INFTABLE(INFTABLE_76)) {
if (selectedItem->actor.params == SI_HYLIAN_SHIELD && GET_INFTABLE(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD)) {
EnOssan_SetStateGiveDiscountDialog(play, this);
} else {
EnOssan_GiveItemWithFanfare(play, this);
@ -1474,7 +1474,7 @@ void EnOssan_HandleCanBuyBombs(PlayState* play, EnOssan* this) {
void EnOssan_BuyGoronCityBombs(PlayState* play, EnOssan* this) {
if (LINK_AGE_IN_YEARS == YEARS_CHILD) {
if (!GET_EVENTCHKINF(EVENTCHKINF_25)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
if (GET_INFTABLE(INFTABLE_FC)) {
EnOssan_SetStateCantGetItem(play, this, 0x302E);
} else {
@ -2059,7 +2059,7 @@ u16 EnOssan_SetupHelloDialog(EnOssan* this) {
if (this->actor.params == OSSAN_TYPE_MASK) {
if (INV_CONTENT(ITEM_TRADE_CHILD) == ITEM_SOLD_OUT) {
if (GET_ITEMGETINF(ITEMGETINF_3B)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_8F)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_PAID_BACK_BUNNY_HOOD_FEE)) {
// Pay back Bunny Hood
this->happyMaskShopState = OSSAN_HAPPY_STATE_REQUEST_PAYMENT_BUNNY_HOOD;
return 0x70C6;
@ -2068,7 +2068,7 @@ u16 EnOssan_SetupHelloDialog(EnOssan* this) {
}
}
if (GET_ITEMGETINF(ITEMGETINF_3A)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_8E)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_PAID_BACK_SPOOKY_MASK_FEE)) {
// Pay back Spooky Mask
this->happyMaskShopState = OSSAN_HAPPY_STATE_REQUEST_PAYMENT_SPOOKY_MASK;
return 0x70C5;
@ -2077,7 +2077,7 @@ u16 EnOssan_SetupHelloDialog(EnOssan* this) {
}
}
if (GET_ITEMGETINF(ITEMGETINF_39)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_8D)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_PAID_BACK_SKULL_MASK_FEE)) {
// Pay back Skull Mask
this->happyMaskShopState = OSSAN_HAPPY_STATE_REQUEST_PAYMENT_SKULL_MASK;
return 0x70C4;
@ -2086,7 +2086,7 @@ u16 EnOssan_SetupHelloDialog(EnOssan* this) {
}
}
if (GET_ITEMGETINF(ITEMGETINF_38)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_8C)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_PAID_BACK_KEATON_MASK_FEE)) {
// Pay back Keaton Mask
this->happyMaskShopState = OSSAN_HAPPY_STATE_REQUEST_PAYMENT_KEATON_MASK;
return 0x70A5;

View file

@ -158,7 +158,7 @@ void EnOwl_Init(Actor* thisx, PlayState* play) {
this->actionFunc = EnOwl_WaitHyruleCastle;
break;
case OWL_KAKARIKO:
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
// has zelda's letter
PRINTF(T("フクロウ退避\n", "Owl evacuation\n"));
Actor_Kill(&this->actor);
@ -168,7 +168,7 @@ void EnOwl_Init(Actor* thisx, PlayState* play) {
this->actionFunc = EnOwl_WaitKakariko;
break;
case OWL_HYLIA_GERUDO:
if (GET_EVENTCHKINF(EVENTCHKINF_43)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_OCARINA_OF_TIME)) {
// has ocarina of time
PRINTF(T("フクロウ退避\n", "Owl evacuation\n"));
Actor_Kill(&this->actor);
@ -180,7 +180,7 @@ void EnOwl_Init(Actor* thisx, PlayState* play) {
this->actionFunc = EnOwl_WaitLakeHylia;
break;
case OWL_ZORA_RIVER:
if (GET_EVENTCHKINF(EVENTCHKINF_39) || !GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OPENED_ZORAS_DOMAIN) || !GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
// opened zora's domain or has zelda's letter
PRINTF(T("フクロウ退避\n", "Owl evacuation\n"));
Actor_Kill(&this->actor);
@ -385,7 +385,7 @@ void EnOwl_WaitOutsideKokiri(EnOwl* this, PlayState* play) {
this->actionFunc = EnOwl_ConfirmKokiriMessage;
// spoke to owl by lost woods
SET_EVENTCHKINF(EVENTCHKINF_6F);
SET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_KAEPORA_BY_LOST_WOODS);
}
}
@ -438,7 +438,7 @@ void func_80ACAB88(EnOwl* this, PlayState* play) {
switch (play->msgCtx.choiceIndex) {
case OWL_REPEAT:
// obtained zelda's letter
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
Message_ContinueTextbox(play, 0x206D);
} else {
Message_ContinueTextbox(play, 0x206C);
@ -587,12 +587,12 @@ void func_80ACB148(EnOwl* this, PlayState* play) {
}
void EnOwl_WaitHyliaShortcut(EnOwl* this, PlayState* play) {
u16 textId = GET_INFTABLE(INFTABLE_195) ? 0x4004 : 0x4003;
u16 textId = GET_INFTABLE(INFTABLE_SPOKE_TO_KAEPORA_IN_LAKE_HYLIA) ? 0x4004 : 0x4003;
// Spoke to Owl in Lake Hylia
EnOwl_LookAtLink(this, play);
if (func_80ACA558(this, play, textId)) {
SET_INFTABLE(INFTABLE_195);
SET_INFTABLE(INFTABLE_SPOKE_TO_KAEPORA_IN_LAKE_HYLIA);
Audio_PlayFanfare(NA_BGM_OWL);
this->actionFunc = func_80ACB148;
}

View file

@ -763,7 +763,7 @@ void func_80AEC2C0(EnRu1* this, PlayState* play) {
}
void func_80AEC320(EnRu1* this, PlayState* play) {
if (!GET_INFTABLE(INFTABLE_141)) {
if (!GET_INFTABLE(INFTABLE_RUTO_IN_JJ_MEET_RUTO)) {
func_80AEB264(this, &gRutoChildWait2Anim, 0, 0, 0);
this->action = 7;
EnRu1_SetMouthIndex(this, 1);
@ -925,7 +925,7 @@ void func_80AECA18(EnRu1* this) {
void func_80AECA44(EnRu1* this, PlayState* play) {
if (func_80AEAFA0(play, 5, 3)) {
SET_INFTABLE(INFTABLE_141);
SET_INFTABLE(INFTABLE_RUTO_IN_JJ_MEET_RUTO);
this->action = 14;
}
}
@ -1174,7 +1174,7 @@ void func_80AED414(EnRu1* this, PlayState* play) {
}
void func_80AED44C(EnRu1* this, PlayState* play) {
if (GET_INFTABLE(INFTABLE_141) && !GET_INFTABLE(INFTABLE_145) && !GET_INFTABLE(INFTABLE_140) &&
if (GET_INFTABLE(INFTABLE_RUTO_IN_JJ_MEET_RUTO) && !GET_INFTABLE(INFTABLE_145) && !GET_INFTABLE(INFTABLE_140) &&
!GET_INFTABLE(INFTABLE_147)) {
if (!func_80AEB020(this, play)) {
s8 actorRoom;
@ -1510,7 +1510,7 @@ s32 func_80AEE264(EnRu1* this, PlayState* play) {
if (GET_INFTABLE(INFTABLE_143)) {
this->actor.textId = 0x404E;
Actor_OfferTalkNearColChkInfoCylinder(&this->actor, play);
} else if (GET_INFTABLE(INFTABLE_142)) {
} else if (GET_INFTABLE(INFTABLE_RUTO_IN_JJ_TALK_FIRST_TIME)) {
this->actor.textId = 0x404D;
Actor_OfferTalkNearColChkInfoCylinder(&this->actor, play);
} else {
@ -1608,7 +1608,7 @@ void func_80AEE628(EnRu1* this, PlayState* play) {
if (EnRu1_IsCsStateIdle(play)) {
Animation_Change(&this->skelAnime, &gRutoChildSittingAnim, 1.0f, 0,
Animation_GetLastFrame(&gRutoChildSittingAnim), ANIMMODE_LOOP, -8.0f);
SET_INFTABLE(INFTABLE_144);
SET_INFTABLE(INFTABLE_RUTO_IN_JJ_WANTS_TO_BE_TOSSED_TO_SAPPHIRE);
this->action = 31;
}
this->roomNum3 = curRoomNum;
@ -1618,7 +1618,7 @@ s32 func_80AEE6D0(EnRu1* this, PlayState* play) {
s32 pad;
s8 curRoomNum = play->roomCtx.curRoom.num;
if (!GET_INFTABLE(INFTABLE_144) && (func_80AEB124(play) != NULL)) {
if (!GET_INFTABLE(INFTABLE_RUTO_IN_JJ_WANTS_TO_BE_TOSSED_TO_SAPPHIRE) && (func_80AEB124(play) != NULL)) {
if (!Player_InCsMode(play)) {
Animation_Change(&this->skelAnime, &gRutoChildSeesSapphireAnim, 1.0f, 0,
Animation_GetLastFrame(&gRutoChildSquirmAnim), ANIMMODE_LOOP, -8.0f);
@ -1832,7 +1832,7 @@ void func_80AEF080(EnRu1* this) {
}
s32 func_80AEF0BC(EnRu1* this, PlayState* play) {
if (GET_INFTABLE(INFTABLE_142)) {
if (GET_INFTABLE(INFTABLE_RUTO_IN_JJ_TALK_FIRST_TIME)) {
f32 frameCount = Animation_GetLastFrame(&gRutoChildSitAnim);
Animation_Change(&this->skelAnime, &gRutoChildSitAnim, 1.0f, 0, frameCount, ANIMMODE_ONCE, -8.0f);
@ -1853,7 +1853,7 @@ void func_80AEF170(EnRu1* this, PlayState* play, s32 cond) {
void func_80AEF188(EnRu1* this, PlayState* play) {
if (func_80AEB174(play) && !func_80AEF0BC(this, play)) {
Message_CloseTextbox(play);
SET_INFTABLE(INFTABLE_142);
SET_INFTABLE(INFTABLE_RUTO_IN_JJ_TALK_FIRST_TIME);
this->action = 24;
}
}
@ -2153,7 +2153,7 @@ void func_80AEFCE8(EnRu1* this, PlayState* play) {
}
void func_80AEFD38(EnRu1* this, PlayState* play) {
if (GET_EVENTCHKINF(EVENTCHKINF_37) && LINK_IS_CHILD) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP) && LINK_IS_CHILD) {
func_80AEB264(this, &gRutoChildWait2Anim, 0, 0, 0);
this->actor.flags &= ~ACTOR_FLAG_4;
this->action = 44;
@ -2216,7 +2216,7 @@ void func_80AEFF40(EnRu1* this, PlayState* play) {
void func_80AEFF94(EnRu1* this, PlayState* play) {
s8 actorRoom;
if (GET_INFTABLE(INFTABLE_141) && GET_INFTABLE(INFTABLE_140) && !GET_INFTABLE(INFTABLE_145) &&
if (GET_INFTABLE(INFTABLE_RUTO_IN_JJ_MEET_RUTO) && GET_INFTABLE(INFTABLE_140) && !GET_INFTABLE(INFTABLE_145) &&
(!(func_80AEB020(this, play)))) {
func_80AEB264(this, &gRutoChildWait2Anim, 0, 0, 0);
actorRoom = this->actor.room;

View file

@ -155,7 +155,7 @@ u16 EnSa_GetTextId(PlayState* play, Actor* thisx) {
return 0x1047;
}
}
if (GET_EVENTCHKINF(EVENTCHKINF_02)) {
if (GET_EVENTCHKINF(EVENTCHKINF_FIRST_SPOKE_TO_MIDO)) {
this->unk_208 = 0;
this->unk_209 = TEXT_STATE_NONE;
if (GET_INFTABLE(INFTABLE_03)) {
@ -164,7 +164,7 @@ u16 EnSa_GetTextId(PlayState* play, Actor* thisx) {
return 0x1031;
}
}
if (GET_INFTABLE(INFTABLE_00)) {
if (GET_INFTABLE(INFTABLE_GREETED_BY_SARIA)) {
this->unk_208 = 0;
this->unk_209 = TEXT_STATE_NONE;
if (GET_INFTABLE(INFTABLE_01)) {
@ -188,7 +188,7 @@ s16 EnSa_UpdateTalkState(PlayState* play, Actor* thisx) {
talkState = NPC_TALK_STATE_IDLE;
break;
case 0x1031:
SET_EVENTCHKINF(EVENTCHKINF_03);
SET_EVENTCHKINF(EVENTCHKINF_COMPLAINED_ABOUT_MIDO);
SET_INFTABLE(INFTABLE_03);
talkState = NPC_TALK_STATE_IDLE;
break;
@ -388,14 +388,14 @@ s32 func_80AF5DFC(EnSa* this, PlayState* play) {
}
}
if (play->sceneId == SCENE_SARIAS_HOUSE && !LINK_IS_ADULT &&
INV_CONTENT(ITEM_OCARINA_FAIRY) == ITEM_OCARINA_FAIRY && !GET_EVENTCHKINF(EVENTCHKINF_40)) {
INV_CONTENT(ITEM_OCARINA_FAIRY) == ITEM_OCARINA_FAIRY && !GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 1;
}
if (play->sceneId == SCENE_SACRED_FOREST_MEADOW && GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (play->sceneId == SCENE_SACRED_FOREST_MEADOW && GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return CHECK_QUEST_ITEM(QUEST_SONG_SARIA) ? 2 : 5;
}
if (play->sceneId == SCENE_KOKIRI_FOREST && !CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
if (GET_INFTABLE(INFTABLE_00)) {
if (GET_INFTABLE(INFTABLE_GREETED_BY_SARIA)) {
return 1;
}
return 4;
@ -718,7 +718,7 @@ void func_80AF6B20(EnSa* this, PlayState* play) {
this->actor.world.pos = this->actor.home.pos;
this->actor.world.rot = this->unk_21A;
this->mouthIndex = 0;
SET_INFTABLE(INFTABLE_00);
SET_INFTABLE(INFTABLE_GREETED_BY_SARIA);
}
this->actionFunc = func_80AF6448;

View file

@ -669,7 +669,7 @@ void EnSsh_Idle(EnSsh* this, PlayState* play) {
if (Actor_TalkOfferAccepted(&this->actor, play)) {
this->actionFunc = EnSsh_Talk;
if (this->actor.params == ENSSH_FATHER) {
SET_EVENTCHKINF(EVENTCHKINF_96);
SET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_CURSED_MAN_IN_SKULL_HOUSE);
}
if ((this->actor.textId == 0x26) || (this->actor.textId == 0x27)) {
SET_INFTABLE(INFTABLE_196);

View file

@ -74,7 +74,7 @@ static EnSthActionFunc sRewardObtainedWaitActions[6] = {
};
static u16 sEventFlags[6] = {
0, EVENTCHKINF_DA_MASK, EVENTCHKINF_DB_MASK, EVENTCHKINF_DC_MASK, EVENTCHKINF_DD_MASK, EVENTCHKINF_DE_MASK,
0, EVENTCHKINF_SKULLTULA_REWARD_10_MASK, EVENTCHKINF_SKULLTULA_REWARD_20_MASK, EVENTCHKINF_SKULLTULA_REWARD_30_MASK, EVENTCHKINF_SKULLTULA_REWARD_40_MASK, EVENTCHKINF_SKULLTULA_REWARD_50_MASK,
};
static s16 sGetItemIds[6] = {
@ -156,7 +156,7 @@ void EnSth_SetupAfterObjectLoaded(EnSth* this, PlayState* play) {
this->eventFlag = sEventFlags[this->actor.params];
params = &this->actor.params;
if (gSaveContext.save.info.eventChkInf[EVENTCHKINF_DA_DB_DC_DD_DE_INDEX] & this->eventFlag) {
if (gSaveContext.save.info.eventChkInf[EVENTCHKINF_SKULLTULA_REWARD_INDEX] & this->eventFlag) {
EnSth_SetupAction(this, sRewardObtainedWaitActions[*params]);
} else {
EnSth_SetupAction(this, EnSth_RewardUnobtainedWait);
@ -256,7 +256,7 @@ void EnSth_GiveReward(EnSth* this, PlayState* play) {
if (Actor_HasParent(&this->actor, play)) {
this->actor.parent = NULL;
EnSth_SetupAction(this, EnSth_RewardObtainedTalk);
gSaveContext.save.info.eventChkInf[EVENTCHKINF_DA_DB_DC_DD_DE_INDEX] |= this->eventFlag;
gSaveContext.save.info.eventChkInf[EVENTCHKINF_SKULLTULA_REWARD_INDEX] |= this->eventFlag;
} else {
EnSth_GivePlayerItem(this, play);
}

View file

@ -77,7 +77,7 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
// "☆☆☆☆☆ Yukigafuru You won't come (._.) ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ ゆきがふるー あなたはこないー (._.) ☆☆☆☆☆ \n" VT_RST);
if (GET_EVENTCHKINF(EVENTCHKINF_4A)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_WATER_TEMPLE_BLUE_WARP)) {
Actor_Kill(&this->actor);
}
EnWeatherTag_SetupAction(this, EnWeatherTag_DisabledCloudySnow);
@ -87,7 +87,7 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
// "☆☆☆☆☆ Wow wa wa na wa saa ki ha (^o^) ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ わわわわー なーがーさーきーはー (^o^) ☆☆☆☆☆ \n" VT_RST);
if (GET_EVENTCHKINF(EVENTCHKINF_4A)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_WATER_TEMPLE_BLUE_WARP)) {
Actor_Kill(&this->actor);
}
EnWeatherTag_SetupAction(this, EnWeatherTag_DisabledRainLakeHylia);
@ -96,7 +96,7 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
PRINTF("\n\n");
// "☆☆☆☆☆ Cloudy (._.) Ah Melancholy ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ くもり (._.) あーあ 憂鬱 ☆☆☆☆☆ \n" VT_RST);
if (GET_EVENTCHKINF(EVENTCHKINF_49)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP)) {
Actor_Kill(&this->actor);
}
EnWeatherTag_SetupAction(this, EnWeatherTag_DisabledCloudyDeathMountain);
@ -106,8 +106,8 @@ void EnWeatherTag_Init(Actor* thisx, PlayState* play) {
// "☆☆☆☆☆ Cloudy Rain Thunder (;O;) Uo Melancholy ☆☆☆☆☆"
PRINTF(VT_FGCOL(YELLOW) "☆☆☆☆☆ くもり雨雷 (;O;) うおお 憂鬱 ☆☆☆☆☆ \n" VT_RST);
if (!GET_EVENTCHKINF(EVENTCHKINF_48) || !GET_EVENTCHKINF(EVENTCHKINF_49) ||
!GET_EVENTCHKINF(EVENTCHKINF_4A) || CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP) || !GET_EVENTCHKINF(EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP) ||
!GET_EVENTCHKINF(EVENTCHKINF_USED_WATER_TEMPLE_BLUE_WARP) || CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW)) {
Actor_Kill(&this->actor);
}
EnWeatherTag_SetupAction(this, EnWeatherTag_DisabledCloudyRainThunderKakariko);

View file

@ -105,7 +105,7 @@ void func_80B391CC(EnWonderTalk* this, PlayState* play) {
// "Attention coordinates"
PRINTF(VT_FGCOL(MAGENTA) "☆☆☆☆☆ 注目座標\t \t☆☆☆☆☆ %f\n" VT_RST, 0.0f);
this->unk_15C = 120.0f;
if (GET_EVENTCHKINF(EVENTCHKINF_1D)) {
if (GET_EVENTCHKINF(EVENTCHKINF_DESTROYED_ROYAL_FAMILY_TOMB)) {
Actor_Kill(&this->actor);
}
break;
@ -133,7 +133,7 @@ void func_80B3943C(EnWonderTalk* this, PlayState* play) {
s16 yawDiffTemp;
this->unk_15A++;
if (this->unk_150 == 4 && GET_EVENTCHKINF(EVENTCHKINF_1D)) {
if (this->unk_150 == 4 && GET_EVENTCHKINF(EVENTCHKINF_DESTROYED_ROYAL_FAMILY_TOMB)) {
Actor_Kill(&this->actor);
return;
}

View file

@ -284,7 +284,7 @@ void func_80B3C9EC(EnXc* this) {
void func_80B3CA38(EnXc* this, PlayState* play) {
// If Player is adult but hasn't learned Minuet of Forest
if (!GET_EVENTCHKINF(EVENTCHKINF_50) && LINK_IS_ADULT) {
if (!GET_EVENTCHKINF(EVENTCHKINF_LEARNED_MINUET_OF_FOREST) && LINK_IS_ADULT) {
s32 pad;
this->action = SHEIK_ACTION_INIT;
@ -307,7 +307,7 @@ s32 EnXc_MinuetCS(EnXc* this, PlayState* play) {
play->csCtx.script = SEGMENTED_TO_VIRTUAL(gMinuetCs);
gSaveContext.cutsceneTrigger = 1;
SET_EVENTCHKINF(EVENTCHKINF_50);
SET_EVENTCHKINF(EVENTCHKINF_LEARNED_MINUET_OF_FOREST);
Item_Give(play, ITEM_SONG_MINUET);
return true;
}
@ -319,7 +319,7 @@ s32 EnXc_MinuetCS(EnXc* this, PlayState* play) {
void func_80B3CB58(EnXc* this, PlayState* play) {
// If hasn't learned Bolero and Player is Adult
if (!GET_EVENTCHKINF(EVENTCHKINF_51) && LINK_IS_ADULT) {
if (!GET_EVENTCHKINF(EVENTCHKINF_LEARNED_BOLERO_OF_FIRE) && LINK_IS_ADULT) {
s32 pad;
this->action = SHEIK_ACTION_INIT;
@ -342,7 +342,7 @@ s32 EnXc_BoleroCS(EnXc* this, PlayState* play) {
play->csCtx.script = SEGMENTED_TO_VIRTUAL(gDeathMountainCraterBoleroCs);
gSaveContext.cutsceneTrigger = 1;
SET_EVENTCHKINF(EVENTCHKINF_51);
SET_EVENTCHKINF(EVENTCHKINF_LEARNED_BOLERO_OF_FIRE);
Item_Give(play, ITEM_SONG_BOLERO);
return true;
}
@ -352,7 +352,7 @@ s32 EnXc_BoleroCS(EnXc* this, PlayState* play) {
}
void EnXc_SetupSerenadeAction(EnXc* this, PlayState* play) {
if (!(CHECK_OWNED_EQUIP(EQUIP_TYPE_BOOTS, EQUIP_INV_BOOTS_IRON) && OOT_DEBUG) && !GET_EVENTCHKINF(EVENTCHKINF_52) &&
if (!(CHECK_OWNED_EQUIP(EQUIP_TYPE_BOOTS, EQUIP_INV_BOOTS_IRON) && OOT_DEBUG) && !GET_EVENTCHKINF(EVENTCHKINF_LEARNED_SERENADE_OF_WATER) &&
LINK_IS_ADULT) {
s32 pad;
@ -369,13 +369,13 @@ s32 EnXc_SerenadeCS(EnXc* this, PlayState* play) {
Player* player = GET_PLAYER(play);
s32 stateFlags = player->stateFlags1;
if (CHECK_OWNED_EQUIP(EQUIP_TYPE_BOOTS, EQUIP_INV_BOOTS_IRON) && !GET_EVENTCHKINF(EVENTCHKINF_52) &&
if (CHECK_OWNED_EQUIP(EQUIP_TYPE_BOOTS, EQUIP_INV_BOOTS_IRON) && !GET_EVENTCHKINF(EVENTCHKINF_LEARNED_SERENADE_OF_WATER) &&
!(stateFlags & PLAYER_STATE1_29) && !Play_InCsMode(play)) {
s32 pad;
Cutscene_SetScript(play, gIceCavernSerenadeCs);
gSaveContext.cutsceneTrigger = 1;
SET_EVENTCHKINF(EVENTCHKINF_52); // Learned Serenade of Water Flag
SET_EVENTCHKINF(EVENTCHKINF_LEARNED_SERENADE_OF_WATER); // Learned Serenade of Water Flag
Item_Give(play, ITEM_SONG_SERENADE);
PRINTF("ブーツを取った!!!!!!!!!!!!!!!!!!\n");
return true;
@ -2182,18 +2182,18 @@ void EnXc_DrawSquintingEyes(Actor* thisx, PlayState* play) {
void EnXc_InitTempleOfTime(EnXc* this, PlayState* play) {
if (LINK_IS_ADULT) {
if (!GET_EVENTCHKINF(EVENTCHKINF_C5)) {
SET_EVENTCHKINF(EVENTCHKINF_C5);
if (!GET_EVENTCHKINF(EVENTCHKINF_SHEIK_SPAWNED_AT_MASTER_SWORD_PEDESTAL)) {
SET_EVENTCHKINF(EVENTCHKINF_SHEIK_SPAWNED_AT_MASTER_SWORD_PEDESTAL);
play->csCtx.script = SEGMENTED_TO_VIRTUAL(gTempleOfTimeFirstAdultCs);
gSaveContext.cutsceneTrigger = 1;
func_80B3EBF0(this, play);
} else if (!GET_EVENTCHKINF(EVENTCHKINF_55) && GET_EVENTCHKINF(EVENTCHKINF_48)) {
SET_EVENTCHKINF(EVENTCHKINF_55);
} else if (!GET_EVENTCHKINF(EVENTCHKINF_LEARNED_PRELUDE_OF_LIGHT) && GET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP)) {
SET_EVENTCHKINF(EVENTCHKINF_LEARNED_PRELUDE_OF_LIGHT);
Item_Give(play, ITEM_SONG_PRELUDE);
play->csCtx.script = SEGMENTED_TO_VIRTUAL(gTempleOfTimePreludeCs);
gSaveContext.cutsceneTrigger = 1;
this->action = SHEIK_ACTION_30;
} else if (!GET_EVENTCHKINF(EVENTCHKINF_55)) {
} else if (!GET_EVENTCHKINF(EVENTCHKINF_LEARNED_PRELUDE_OF_LIGHT)) {
func_80B3C9EC(this);
} else {
Actor_Kill(&this->actor);

View file

@ -92,16 +92,16 @@ void EnZl1_Init(Actor* thisx, PlayState* play) {
Animation_Change(&this->skelAnime, &gChildZelda1Anim_00438, 1.0f, 0.0f, frameCount, ANIMMODE_LOOP, 0.0f);
this->unk_1E6 = 0;
this->actionFunc = func_80B4BC78;
} else if (Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25) &&
Flags_GetEventChkInf(EVENTCHKINF_37)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP) &&
Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
Actor_Kill(&this->actor);
} else if ((Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_25)) ||
(Flags_GetEventChkInf(EVENTCHKINF_09) && Flags_GetEventChkInf(EVENTCHKINF_37))) {
} else if ((Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) ||
(Flags_GetEventChkInf(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP) && Flags_GetEventChkInf(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP))) {
frameCount = Animation_GetLastFrame(&gChildZelda1Anim_00438);
Animation_Change(&this->skelAnime, &gChildZelda1Anim_00438, 1.0f, 0.0f, frameCount, ANIMMODE_LOOP, 0.0f);
this->actor.textId = 0x703D;
this->actionFunc = func_80B4AF18;
} else if (Flags_GetEventChkInf(EVENTCHKINF_40)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
frameCount = Animation_GetLastFrame(&gChildZelda1Anim_00438);
Animation_Change(&this->skelAnime, &gChildZelda1Anim_00438, 1.0f, 0.0f, frameCount, ANIMMODE_LOOP, 0.0f);
this->actor.textId = 0x703C;
@ -548,7 +548,7 @@ void func_80B4BF2C(EnZl1* this, PlayState* play) {
if ((Message_GetState(msgCtx) == TEXT_STATE_DONE) && Message_ShouldAdvance(play)) {
this->actor.textId = 0x703C;
Message_ContinueTextbox(play, this->actor.textId);
Flags_SetEventChkInf(EVENTCHKINF_40);
Flags_SetEventChkInf(EVENTCHKINF_OBTAINED_ZELDAS_LETTER);
this->unk_1E2 = 6;
}
break;

View file

@ -2605,7 +2605,7 @@ void func_80B59AD0(EnZl3* this, PlayState* play) {
Interface_SetSubTimer(180);
func_80B54EA4(this, play);
func_80B53614(this, play);
CLEAR_EVENTCHKINF(EVENTCHKINF_C7);
CLEAR_EVENTCHKINF(EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO);
func_80B56F10(this, play);
gSaveContext.healthAccumulator = 320;
Magic_Fill(play);

View file

@ -374,7 +374,7 @@ void EnZl4_Init(Actor* thisx, PlayState* play) {
if (IS_CUTSCENE_LAYER) {
Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ZL4_ANIM_0);
this->actionFunc = EnZl4_TheEnd;
} else if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
} else if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
Animation_ChangeByInfo(&this->skelAnime, sAnimationInfo, ZL4_ANIM_0);
this->actionFunc = EnZl4_Idle;
} else {
@ -1195,7 +1195,7 @@ void EnZl4_Cutscene(EnZl4* this, PlayState* play) {
if (EnZl4_CsMakePlan(this, play)) {
Player_SetCsActionWithHaltedActors(play, &this->actor, PLAYER_CSACTION_7);
gSaveContext.prevHudVisibilityMode = HUD_VISIBILITY_ALL;
SET_EVENTCHKINF(EVENTCHKINF_40);
SET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER);
this->actionFunc = EnZl4_Idle;
}
break;

View file

@ -362,7 +362,7 @@ u16 EnZo_GetTextId(PlayState* play, Actor* thisx) {
switch (PARAMS_GET_U(thisx->params, 0, 6)) {
case 8:
if (GET_EVENTCHKINF(EVENTCHKINF_30)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
return 0x402A;
}
break;
@ -377,7 +377,7 @@ u16 EnZo_GetTextId(PlayState* play, Actor* thisx) {
if (CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE)) {
return 0x402D;
}
if (GET_EVENTCHKINF(EVENTCHKINF_30)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
return 0x4007;
}
break;
@ -387,7 +387,7 @@ u16 EnZo_GetTextId(PlayState* play, Actor* thisx) {
return 0x402E;
}
if (GET_EVENTCHKINF(EVENTCHKINF_30)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
return GET_INFTABLE(INFTABLE_124) ? 0x4009 : 0x4008;
}
break;
@ -396,10 +396,10 @@ u16 EnZo_GetTextId(PlayState* play, Actor* thisx) {
if (CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE)) {
return 0x402D;
}
if (GET_EVENTCHKINF(EVENTCHKINF_31)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_RUTOS_LETTER)) {
return GET_INFTABLE(INFTABLE_129) ? 0x400B : 0x402F;
}
if (GET_EVENTCHKINF(EVENTCHKINF_30)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
return 0x400A;
}
break;
@ -408,7 +408,7 @@ u16 EnZo_GetTextId(PlayState* play, Actor* thisx) {
if (CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE)) {
return 0x402E;
}
if (GET_EVENTCHKINF(EVENTCHKINF_30)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
return 0x400C;
}
break;
@ -418,10 +418,10 @@ u16 EnZo_GetTextId(PlayState* play, Actor* thisx) {
return 0x402D;
}
if (GET_EVENTCHKINF(EVENTCHKINF_33)) {
if (GET_EVENTCHKINF(EVENTCHKINF_KING_ZORA_MOVED)) {
return 0x4010;
}
if (GET_EVENTCHKINF(EVENTCHKINF_30)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
return 0x400F;
}
break;
@ -430,7 +430,7 @@ u16 EnZo_GetTextId(PlayState* play, Actor* thisx) {
if (CHECK_QUEST_ITEM(QUEST_ZORA_SAPPHIRE)) {
return 0x402E;
}
if (GET_EVENTCHKINF(EVENTCHKINF_30)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_A_ZORA)) {
return 0x4011;
}
break;
@ -461,7 +461,7 @@ s16 EnZo_UpdateTalkState(PlayState* play, Actor* thisx) {
SET_INFTABLE(INFTABLE_129);
break;
}
SET_EVENTCHKINF(EVENTCHKINF_30);
SET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_A_ZORA);
return NPC_TALK_STATE_IDLE;
case TEXT_STATE_CHOICE:

View file

@ -128,13 +128,13 @@ void EnfHG_Intro(EnfHG* this, PlayState* play) {
if ((fabsf(player->actor.world.pos.x - (GND_BOSSROOM_CENTER_X + 0.0f)) < 100.0f) &&
(fabsf(player->actor.world.pos.z - (GND_BOSSROOM_CENTER_Z + 315.0f)) < 100.0f)) {
this->cutsceneState = INTRO_START;
if (GET_EVENTCHKINF(EVENTCHKINF_72)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_PHANTOM_GANON_BATTLE)) {
this->timers[0] = 57;
}
}
break;
case INTRO_START:
if (GET_EVENTCHKINF(EVENTCHKINF_72)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BEGAN_PHANTOM_GANON_BATTLE)) {
if (this->timers[0] == 55) {
Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_DOOR_SHUTTER,
GND_BOSSROOM_CENTER_X + 0.0f, GND_BOSSROOM_CENTER_Y - 97.0f,
@ -159,7 +159,7 @@ void EnfHG_Intro(EnfHG* this, PlayState* play) {
this->timers[0] = 60;
this->actor.world.pos.y = GND_BOSSROOM_CENTER_Y - 7.0f;
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1);
SET_EVENTCHKINF(EVENTCHKINF_72);
SET_EVENTCHKINF(EVENTCHKINF_BEGAN_PHANTOM_GANON_BATTLE);
Flags_SetSwitch(play, 0x23);
FALLTHROUGH;
case INTRO_FENCE:

View file

@ -115,7 +115,7 @@ void ItemEtcetera_Init(Actor* thisx, PlayState* play) {
case ITEM_ETC_LETTER:
Actor_SetScale(&this->actor, 0.5f);
this->futureActionFunc = func_80B858B4;
if (GET_EVENTCHKINF(EVENTCHKINF_31)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_RUTOS_LETTER)) {
Actor_Kill(&this->actor);
}
break;
@ -153,7 +153,7 @@ void ItemEtcetera_WaitForObject(ItemEtcetera* this, PlayState* play) {
void func_80B85824(ItemEtcetera* this, PlayState* play) {
if (Actor_HasParent(&this->actor, play)) {
if (PARAMS_GET_U(this->actor.params, 0, 8) == 1) {
SET_EVENTCHKINF(EVENTCHKINF_31);
SET_EVENTCHKINF(EVENTCHKINF_OBTAINED_RUTOS_LETTER);
Flags_SetSwitch(play, 0xB);
}
Actor_Kill(&this->actor);
@ -165,7 +165,7 @@ void func_80B85824(ItemEtcetera* this, PlayState* play) {
void func_80B858B4(ItemEtcetera* this, PlayState* play) {
if (Actor_HasParent(&this->actor, play)) {
if (PARAMS_GET_U(this->actor.params, 0, 8) == 1) {
SET_EVENTCHKINF(EVENTCHKINF_31);
SET_EVENTCHKINF(EVENTCHKINF_OBTAINED_RUTOS_LETTER);
Flags_SetSwitch(play, 0xB);
}
Actor_Kill(&this->actor);

View file

@ -57,7 +57,7 @@ void ItemOcarina_Init(Actor* thisx, PlayState* play) {
break;
case 3:
ItemOcarina_SetupAction(this, ItemOcarina_WaitInWater);
if (!GET_EVENTCHKINF(EVENTCHKINF_80) || GET_EVENTCHKINF(EVENTCHKINF_43)) {
if (!GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_HYRULE_CASTLE) || GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_OCARINA_OF_TIME)) {
Actor_Kill(thisx);
return;
}
@ -175,7 +175,7 @@ void ItemOcarina_StartSoTCutscene(ItemOcarina* this, PlayState* play) {
void ItemOcarina_WaitInWater(ItemOcarina* this, PlayState* play) {
if (Actor_HasParent(&this->actor, play)) {
SET_EVENTCHKINF(EVENTCHKINF_43);
SET_EVENTCHKINF(EVENTCHKINF_OBTAINED_OCARINA_OF_TIME);
Flags_SetSwitch(play, 3);
this->actionFunc = ItemOcarina_StartSoTCutscene;
this->actor.draw = NULL;

View file

@ -86,7 +86,7 @@ void ObjHana_Init(Actor* thisx, PlayState* play) {
CollisionCheck_SetInfo(&this->actor.colChkInfo, NULL, &sColChkInfoInit);
}
if (type == 2 && GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (type == 2 && GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
Actor_Kill(&this->actor);
}
}

View file

@ -112,22 +112,22 @@ void ObjectKankyo_Init(Actor* thisx, PlayState* play) {
}
// Check which beams are disabled
if (Flags_GetEventChkInf(EVENTCHKINF_BB)) {
if (Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_FOREST_TRIAL)) {
this->effects[0].size = 0.0f;
}
if (Flags_GetEventChkInf(EVENTCHKINF_BC)) {
if (Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_WATER_TRIAL)) {
this->effects[1].size = 0.0f;
}
if (Flags_GetEventChkInf(EVENTCHKINF_BD)) {
if (Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_SHADOW_TRIAL)) {
this->effects[2].size = 0.0f;
}
if (Flags_GetEventChkInf(EVENTCHKINF_BE)) {
if (Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_FIRE_TRIAL)) {
this->effects[3].size = 0.0f;
}
if (Flags_GetEventChkInf(EVENTCHKINF_BF)) {
if (Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_LIGHT_TRIAL)) {
this->effects[4].size = 0.0f;
}
if (Flags_GetEventChkInf(EVENTCHKINF_AD)) {
if (Flags_GetEventChkInf(EVENTCHKINF_COMPLETED_SPIRIT_TRIAL)) {
this->effects[5].size = 0.0f;
}

View file

@ -10726,11 +10726,11 @@ void Player_Init(Actor* thisx, PlayState* play2) {
if (!IS_CUTSCENE_LAYER &&
(gEntranceTable[((void)0, gSaveContext.save.entranceIndex) + ((void)0, gSaveContext.sceneLayer)].field &
ENTRANCE_INFO_DISPLAY_TITLE_CARD_FLAG) &&
((play->sceneId != SCENE_DODONGOS_CAVERN) || GET_EVENTCHKINF(EVENTCHKINF_B0)) &&
((play->sceneId != SCENE_DODONGOS_CAVERN) || GET_EVENTCHKINF(EVENTCHKINF_ENTERED_DODONGOS_CAVERN)) &&
#if OOT_VERSION < PAL_1_0
((play->sceneId != SCENE_BOMBCHU_BOWLING_ALLEY) || GET_EVENTCHKINF(EVENTCHKINF_25))
((play->sceneId != SCENE_BOMBCHU_BOWLING_ALLEY) || GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP))
#else
((play->sceneId != SCENE_BOMBCHU_SHOP) || GET_EVENTCHKINF(EVENTCHKINF_25))
((play->sceneId != SCENE_BOMBCHU_SHOP) || GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP))
#endif
) {
TitleCard_InitPlaceName(play, &play->actorCtx.titleCtx, this->giObjectSegment, 160, 120, 144, 24, 20);

View file

@ -3797,7 +3797,7 @@ void KaleidoScope_Update(PlayState* play) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_GERUDOS_FORTRESS] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_B2)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ENTERED_GERUDO_VALLEY)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_GERUDO_VALLEY] = WORLD_MAP_POINT_STATE_SHOW;
}
if (INV_CONTENT(ITEM_LONGSHOT) == ITEM_LONGSHOT) {
@ -3817,7 +3817,7 @@ void KaleidoScope_Update(PlayState* play) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_LAKE_HYLIA] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_09)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_LON_LON_RANCH] = WORLD_MAP_POINT_STATE_SHOW;
}
if (INV_CONTENT(ITEM_OCARINA_FAIRY) != ITEM_NONE) {
@ -3833,36 +3833,36 @@ void KaleidoScope_Update(PlayState* play) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_LON_LON_RANCH] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_09)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_MARKET] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_MARKET] = WORLD_MAP_POINT_STATE_SHOW;
}
if (INV_CONTENT(ITEM_OCARINA_OF_TIME) == ITEM_OCARINA_OF_TIME) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_MARKET] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_45)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_MARKET] = WORLD_MAP_POINT_STATE_SHOW;
}
if (INV_CONTENT(ITEM_ARROW_LIGHT) == ITEM_ARROW_LIGHT) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_MARKET] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_09)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_HYRULE_FIELD] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_DEATH_MOUNTAIN] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_25)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_DEATH_MOUNTAIN] = WORLD_MAP_POINT_STATE_SHOW;
}
if (INV_CONTENT(ITEM_HOOKSHOT) == ITEM_HOOKSHOT) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_DEATH_MOUNTAIN] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_49)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_FIRE_TEMPLE_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_DEATH_MOUNTAIN] = WORLD_MAP_POINT_STATE_SHOW;
}
@ -3875,7 +3875,7 @@ void KaleidoScope_Update(PlayState* play) {
if (CHECK_QUEST_ITEM(QUEST_SONG_SUN)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KAKARIKO_VILLAGE] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_45)) {
if (GET_EVENTCHKINF(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KAKARIKO_VILLAGE] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (INV_CONTENT(ITEM_HOOKSHOT) == ITEM_HOOKSHOT) {
@ -3884,10 +3884,10 @@ void KaleidoScope_Update(PlayState* play) {
if (CHECK_QUEST_ITEM(QUEST_SONG_STORMS)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KAKARIKO_VILLAGE] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_67)) {
if (GET_EVENTCHKINF(EVENTCHKINF_DRAINED_WELL_IN_KAKARIKO)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KAKARIKO_VILLAGE] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_AA)) {
if (GET_EVENTCHKINF(EVENTCHKINF_BONGO_BONGO_ESCAPED_FROM_WELL)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KAKARIKO_VILLAGE] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (CHECK_QUEST_ITEM(QUEST_MEDALLION_SHADOW)) {
@ -3897,7 +3897,7 @@ void KaleidoScope_Update(PlayState* play) {
if (gBitFlags[WORLD_MAP_AREA_LOST_WOODS] & gSaveContext.save.info.worldMapAreaData) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_LOST_WOODS] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_0F)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_ABOUT_SARIA)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_LOST_WOODS] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (CHECK_QUEST_ITEM(QUEST_SONG_SARIA)) {
@ -3906,28 +3906,28 @@ void KaleidoScope_Update(PlayState* play) {
if (INV_CONTENT(ITEM_HOOKSHOT) == ITEM_HOOKSHOT) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_LOST_WOODS] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_48)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_FOREST_TEMPLE_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_LOST_WOODS] = WORLD_MAP_POINT_STATE_SHOW;
}
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KOKIRI_FOREST] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
if (GET_EVENTCHKINF(EVENTCHKINF_09)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_DEKU_TREE_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KOKIRI_FOREST] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_6E)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KOKIRI_FOREST] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_0F)) {
if (GET_EVENTCHKINF(EVENTCHKINF_SPOKE_TO_MIDO_ABOUT_SARIA)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KOKIRI_FOREST] = WORLD_MAP_POINT_STATE_SHOW;
}
if (CHECK_QUEST_ITEM(QUEST_SONG_LULLABY)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_ZORAS_DOMAIN] = WORLD_MAP_POINT_STATE_SHOW;
}
if (GET_EVENTCHKINF(EVENTCHKINF_25)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_DODONGOS_CAVERN_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_ZORAS_DOMAIN] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (GET_EVENTCHKINF(EVENTCHKINF_37)) {
if (GET_EVENTCHKINF(EVENTCHKINF_USED_JABU_JABUS_BELLY_BLUE_WARP)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_ZORAS_DOMAIN] = WORLD_MAP_POINT_STATE_SHOW;
}
if (INV_CONTENT(ITEM_HOOKSHOT) == ITEM_HOOKSHOT) {