Useful Eventchkinf flag renames (#2807)

* Rename EVENTCHKINF 40, 45, 80, C7

* Rename EVENTCHKINF 40, 45, 80, C7 w format

* updated save.h comment for accuracy

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Applied 'Zelda' to 'Zeldas' & 'Pulled' to 'Obtained' adjustments

* EVENTCHKINF_INDEX_OBTAINED_ZELDA_LETTER -> EVENTCHKINF_INDEX_OBTAINED_ZELDAS_LETTER

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
This commit is contained in:
Olvivi
2026-08-30 02:22:27 -06:00
committed by GitHub
parent 63e2ae59ec
commit 6809439703
25 changed files with 93 additions and 80 deletions
+5 -5
View File
@@ -576,13 +576,13 @@ typedef enum LinkAge {
#define EVENTCHKINF_DEFEATED_NABOORU_KNUCKLE 0x3C
// EVENTCHKINF 0x40
#define EVENTCHKINF_INDEX_40 EVENTCHKINF_INDEX(EVENTCHKINF_40)
#define EVENTCHKINF_40 0x40
#define EVENTCHKINF_INDEX_OBTAINED_ZELDAS_LETTER EVENTCHKINF_INDEX(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)
#define EVENTCHKINF_OBTAINED_ZELDAS_LETTER 0x40
#define EVENTCHKINF_41 0x41
#define EVENTCHKINF_42 0x42
#define EVENTCHKINF_43 0x43
#define EVENTCHKINF_45 0x45
#define EVENTCHKINF_OBTAINED_MASTER_SWORD 0x45
#define EVENTCHKINF_48 0x48
#define EVENTCHKINF_49 0x49
#define EVENTCHKINF_4A 0x4A
@@ -621,7 +621,7 @@ typedef enum LinkAge {
#define EVENTCHKINF_BEGAN_BARINADE_BATTLE 0x76
#define EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE 0x77
#define EVENTCHKINF_BEGAN_GANONDORF_BATTLE 0x78
#define EVENTCHKINF_80 0x80
#define EVENTCHKINF_ZELDA_FLED_CASTLE 0x80
#define EVENTCHKINF_82 0x82
#define EVENTCHKINF_PAID_BACK_KEATON_MASK 0x8C
#define EVENTCHKINF_PAID_BACK_SKULL_MASK 0x8D
@@ -697,7 +697,7 @@ typedef enum LinkAge {
#define EVENTCHKINF_C4 0xC4
#define EVENTCHKINF_C5 0xC5
#define EVENTCHKINF_C6 0xC6
#define EVENTCHKINF_C7 0xC7
#define EVENTCHKINF_GERUDO_CAUGHT_TOWER_FALL 0xC7 // This flag is mainly used for when first caught by the Gerudo, but Zelda will later purge it for use in the Tower collapse sequence.
#define EVENTCHKINF_C8 0xC8
#define EVENTCHKINF_C9 0xC9
+1 -1
View File
@@ -5266,7 +5266,7 @@ u32 func_80035BFC(PlayState* play, s16 arg1) {
} else {
retTextId = 0x2010;
}
} else if (Flags_GetEventChkInf(EVENTCHKINF_40)) {
} else if (Flags_GetEventChkInf(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
retTextId = 0x200F;
} else {
retTextId = 0x200E;
+5 -5
View File
@@ -134,7 +134,7 @@ EntranceCutscene sEntranceCutsceneTable[] = {
{ 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_GERUDOS_FORTRESS_17, 0, EVENTCHKINF_GERUDO_CAUGHT_TOWER_FALL, gGerudoFortressFirstCaptureCs },
{ ENTR_DEATH_MOUNTAIN_CRATER_1, 2, EVENTCHKINF_B9, gDeathMountainCraterIntroCs },
{ ENTR_KOKIRI_FOREST_12, 2, EVENTCHKINF_C6, gKokiriForestDekuSproutPart3Cs },
};
@@ -672,8 +672,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_OBTAINED_MASTER_SWORD)) {
SET_EVENTCHKINF(EVENTCHKINF_OBTAINED_MASTER_SWORD);
play->nextEntranceIndex = ENTR_CUTSCENE_MAP_0;
play->transitionTrigger = TRANS_TRIGGER_START;
gSaveContext.save.cutsceneIndex = CS_INDEX_3;
@@ -2443,9 +2443,9 @@ void Cutscene_HandleConditionalTriggers(PlayState* play) {
Flags_SetEventChkInf(EVENTCHKINF_C4);
gSaveContext.save.entranceIndex = ENTR_TEMPLE_OF_TIME_0;
gSaveContext.save.cutsceneIndex = CS_INDEX_8;
} else if (!Flags_GetEventChkInf(EVENTCHKINF_C7) &&
} else if (!Flags_GetEventChkInf(EVENTCHKINF_GERUDO_CAUGHT_TOWER_FALL) &&
(gEntranceTable[((void)0, gSaveContext.save.entranceIndex)].sceneId == SCENE_GANON_BOSS)) {
Flags_SetEventChkInf(EVENTCHKINF_C7);
Flags_SetEventChkInf(EVENTCHKINF_GERUDO_CAUGHT_TOWER_FALL);
gSaveContext.save.entranceIndex = ENTR_GANON_BOSS_0;
gSaveContext.save.cutsceneIndex = CS_INDEX_0;
}
+5 -5
View File
@@ -389,7 +389,7 @@ void Sram_InitDebugSave(void) {
EVENTCHKINF_MASK(EVENTCHKINF_SARIA_WAS_TOLD_ABOUT_MIDO) | EVENTCHKINF_MASK(EVENTCHKINF_04) |
EVENTCHKINF_MASK(EVENTCHKINF_05) | EVENTCHKINF_MASK(EVENTCHKINF_09) | EVENTCHKINF_MASK(EVENTCHKINF_0C);
SET_EVENTCHKINF(EVENTCHKINF_80);
SET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_CASTLE);
SET_EVENTCHKINF(EVENTCHKINF_C4);
if (LINK_AGE_IN_YEARS == YEARS_CHILD) {
@@ -562,10 +562,10 @@ 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)) {
i = gSaveContext.save.info.eventChkInf[EVENTCHKINF_INDEX_40];
i &= ~EVENTCHKINF_MASK(EVENTCHKINF_40);
gSaveContext.save.info.eventChkInf[EVENTCHKINF_INDEX_40] = i;
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER) && !CHECK_QUEST_ITEM(QUEST_SONG_LULLABY)) {
i = gSaveContext.save.info.eventChkInf[EVENTCHKINF_INDEX_OBTAINED_ZELDAS_LETTER];
i &= ~EVENTCHKINF_MASK(EVENTCHKINF_OBTAINED_ZELDAS_LETTER);
gSaveContext.save.info.eventChkInf[EVENTCHKINF_INDEX_OBTAINED_ZELDAS_LETTER] = i;
INV_CONTENT(ITEM_ZELDAS_LETTER) = ITEM_CHICKEN;
+3 -3
View File
@@ -6,16 +6,16 @@ QuestHintCmd gOverworldNaviQuestHints[] = {
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_09, 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_MAGIC(CHECK, false, 0x48),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_GAVE_LETTER_TO_KING_ZORA, false, 0x49),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_37, false, 0x4A),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_80, false, 0x4B),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_ZELDA_FLED_CASTLE, false, 0x4B),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_43, false, 0x4C),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_45, false, 0x4D),
QUEST_HINT_FLAG(CHECK, EVENTCHKINF_OBTAINED_MASTER_SWORD, 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),
@@ -54,7 +54,8 @@ 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_76) || GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_MASTER_SWORD)) &&
(play->sceneId == SCENE_KAKARIKO_VILLAGE)) {
thisx->world.pos.x = -89.0f;
thisx->world.pos.z = -1375.0f;
}
@@ -92,7 +92,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_CASTLE)) {
this->dyna.actor.shape.rot.x = -0x4000;
}
}
@@ -152,7 +152,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_CASTLE)) {
return;
}
@@ -220,13 +220,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_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);
SET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_CASTLE);
Flags_SetEventChkInf(EVENTCHKINF_82);
this->actionFunc = BgSpot00Hanebasi_DoNothing;
Player_SetCsActionWithHaltedActors(play, &player->actor, PLAYER_CSACTION_8);
+3 -3
View File
@@ -921,7 +921,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;
@@ -942,7 +942,7 @@ void func_80986C30(DemoIm* this, PlayState* play) {
}
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;
@@ -966,7 +966,7 @@ void func_80986D40(DemoIm* this, PlayState* play) {
}
#endif
if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_CASTLE)) {
Actor_Kill(&this->actor);
} else if (!GET_EVENTCHKINF(EVENTCHKINF_59)) {
this->action = 23;
+1 -1
View File
@@ -244,7 +244,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_GERUDO_CAUGHT_TOWER_FALL)) { // Caught previously
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_18;
} else {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_17;
+2 -2
View File
@@ -255,7 +255,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_GERUDO_CAUGHT_TOWER_FALL)) {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_18;
} else {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_17;
@@ -281,7 +281,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_GERUDO_CAUGHT_TOWER_FALL)) {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_18;
} else {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_17;
@@ -1597,7 +1597,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_GERUDO_CAUGHT_TOWER_FALL)) {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_18;
} else {
play->nextEntranceIndex = ENTR_GERUDOS_FORTRESS_17;
@@ -136,13 +136,15 @@ 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_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_CASTLE)) {
this->actionFunc = EnHeishi1_SetupWaitNight;
} else {
Actor_Kill(&this->actor);
@@ -146,12 +146,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_CASTLE)) {
this->actor.textId = 0x5065;
this->actionFunc = func_80A56B40;
return;
}
if (GET_EVENTCHKINF(EVENTCHKINF_45)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_MASTER_SWORD)) {
this->actor.textId = 0x5068;
this->actionFunc = func_80A56B40;
return;
@@ -229,14 +229,14 @@ 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_OBTAINED_MASTER_SWORD)) {
PRINTF(VT_FGCOL(YELLOW) T(" ☆☆☆☆☆ マスターソード祝入手! ☆☆☆☆☆ \n",
" ☆☆☆☆☆ Congratulations on obtaining the Master Sword! ☆☆☆☆☆ \n") VT_RST);
Actor_Kill(&this->actor);
return;
}
this->unk_284 = 0;
if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_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,
+22 -13
View File
@@ -639,7 +639,7 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
}
case ENHY_TYPE_WOMAN_3:
if (GET_EVENTCHKINF(EVENTCHKINF_80)) {
if (GET_EVENTCHKINF(EVENTCHKINF_ZELDA_FLED_CASTLE)) {
return GET_INFTABLE(INFTABLE_C1) ? 0x7017 : 0x7045;
} else {
return GET_INFTABLE(INFTABLE_C0) ? 0x7017 : 0x7016;
@@ -650,7 +650,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_CASTLE)) {
return GET_INFTABLE(INFTABLE_C3) ? 0x701A : 0x7047;
} else if (GET_EVENTCHKINF(EVENTCHKINF_TALON_RETURNED_FROM_CASTLE)) {
return 0x701A;
@@ -663,17 +663,20 @@ 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_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_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_CASTLE) ? 0x704A
: (GET_INFTABLE(INFTABLE_C6) ? 0x7022 : 0x7021);
case ENHY_TYPE_OLD_MAN:
if (play->sceneId == SCENE_KAKARIKO_CENTER_GUEST_HOUSE) {
@@ -681,11 +684,12 @@ 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_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_CASTLE)) {
return GET_INFTABLE(INFTABLE_C9) ? 0x701E : 0x7048;
} else {
return GET_INFTABLE(INFTABLE_C8) ? 0x701E : 0x701D;
@@ -697,7 +701,8 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
} 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_CASTLE) ? 0x7049
: (GET_INFTABLE(INFTABLE_CA) ? 0x7020 : 0x701F);
}
case ENHY_TYPE_MAN_2_MUSTACHE_BLUE_SHIRT:
@@ -707,9 +712,11 @@ u16 EnHy_GetTextId(PlayState* play, Actor* thisx) {
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_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_CASTLE) ? 0x7046
: (GET_INFTABLE(INFTABLE_CD) ? 0x7019 : 0x7018);
#endif
}
@@ -721,7 +728,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_CASTLE) ? 0x7044 : 0x7015;
}
case ENHY_TYPE_MAN_1_BOWL_CUT_PURPLE_SHIRT:
@@ -751,7 +758,8 @@ 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_CASTLE) ? 0x505F
: (GET_INFTABLE(INFTABLE_163) ? 0x505E : 0x505D);
} else {
return (this->talonEventChkInf & EVENTCHKINF_MASK(EVENTCHKINF_TALON_RETURNED_FROM_KAKARIKO))
? 0x5062
@@ -1116,7 +1124,8 @@ 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_CASTLE) &&
!GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_MASTER_SWORD)) {
return false;
} else {
return true;
+10 -10
View File
@@ -323,7 +323,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)) {
@@ -331,7 +331,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)) {
@@ -339,7 +339,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)) {
@@ -350,12 +350,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)) {
@@ -366,7 +366,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)) {
@@ -377,7 +377,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)) {
@@ -388,7 +388,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)) {
@@ -625,7 +625,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)) {
@@ -1118,7 +1118,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;
}
+3 -3
View File
@@ -450,7 +450,7 @@ u16 EnMd_GetTextIdMidosHouse(PlayState* play, EnMd* this) {
this->messageEntry = 0;
this->messageState = TEXT_STATE_NONE;
if (GET_EVENTCHKINF(EVENTCHKINF_40)) {
if (GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
return 0x1028;
}
@@ -538,13 +538,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_1C) && !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_1C) || GET_EVENTCHKINF(EVENTCHKINF_OBTAINED_ZELDAS_LETTER)) {
if (!LINK_IS_ADULT) {
return 1;
}
@@ -160,7 +160,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_CASTLE) && (this->unk_27A == 0)) {
this->actor.textId = 0x70EA;
}
switch (Player_GetMask(play)) {
+3 -3
View File
@@ -179,7 +179,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);
@@ -201,7 +201,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_39) || !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);
@@ -459,7 +459,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);
+2 -2
View File
@@ -422,10 +422,10 @@ SariaType EnSa_GetType(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 SARIA_TYPE_STANDING;
}
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) ? SARIA_TYPE_MEADOW_PLAYING : SARIA_TYPE_MEADOW_WAITING;
}
if (play->sceneId == SCENE_KOKIRI_FOREST && !CHECK_QUEST_ITEM(QUEST_KOKIRI_EMERALD)) {
+2 -2
View File
@@ -115,7 +115,7 @@ void EnZl1_Init(Actor* thisx, PlayState* play) {
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;
@@ -562,7 +562,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;
+1 -1
View File
@@ -2633,7 +2633,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_GERUDO_CAUGHT_TOWER_FALL);
func_80B56F10(this, play);
gSaveContext.healthAccumulator = 320;
Magic_Fill(play);
+2 -2
View File
@@ -391,7 +391,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 {
@@ -1212,7 +1212,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;
@@ -66,7 +66,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_CASTLE) || GET_EVENTCHKINF(EVENTCHKINF_43)) {
Actor_Kill(thisx);
return;
}
@@ -91,7 +91,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);
}
}
@@ -3945,13 +3945,13 @@ void KaleidoScope_Update(PlayState* play) {
if (GET_EVENTCHKINF(EVENTCHKINF_09)) {
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_OBTAINED_MASTER_SWORD)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_MARKET] = WORLD_MAP_POINT_STATE_SHOW;
}
if (INV_CONTENT(ITEM_ARROW_LIGHT) == ITEM_ARROW_LIGHT) {
@@ -3962,7 +3962,7 @@ void KaleidoScope_Update(PlayState* play) {
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)) {
@@ -3984,7 +3984,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_OBTAINED_MASTER_SWORD)) {
pauseCtx->worldMapPoints[WORLD_MAP_POINT_KAKARIKO_VILLAGE] = WORLD_MAP_POINT_STATE_HIGHLIGHT;
}
if (INV_CONTENT(ITEM_HOOKSHOT) == ITEM_HOOKSHOT) {