mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-08 00:44:42 +00:00
Restructure event flags in z64save.h (1/?) (#2380)
* Simplify most event flags * EVENTINF_HORSES_INDEX -> EVENTINF_INDEX_HORSES * Add missing index numbers * pr suggestions * Clean up INGO_RACE flags
This commit is contained in:
parent
471fe51c82
commit
ee4b3474a5
18 changed files with 166 additions and 164 deletions
|
@ -299,7 +299,7 @@ u8 Inventory_DeleteEquipment(PlayState* play, s16 equipment) {
|
|||
|
||||
if (equipment == EQUIP_TYPE_SWORD) {
|
||||
gSaveContext.save.info.equips.buttonItems[0] = ITEM_NONE;
|
||||
gSaveContext.save.info.infTable[INFTABLE_1DX_INDEX] = 1;
|
||||
gSaveContext.save.info.infTable[INFTABLE_INDEX_1DX] = 1;
|
||||
}
|
||||
|
||||
Player_SetEquipmentData(play, player);
|
||||
|
|
|
@ -496,7 +496,7 @@ void Minimap_Draw(PlayState* play) {
|
|||
(LINK_AGE_IN_YEARS != YEARS_ADULT)) {
|
||||
if ((gMapData->owEntranceFlag[sEntranceIconMapIndex] == 0xFFFF) ||
|
||||
((gMapData->owEntranceFlag[sEntranceIconMapIndex] != 0xFFFF) &&
|
||||
(gSaveContext.save.info.infTable[INFTABLE_1AX_INDEX] &
|
||||
(gSaveContext.save.info.infTable[INFTABLE_INDEX_1AX] &
|
||||
gBitFlags[gMapData->owEntranceFlag[mapIndex]]))) {
|
||||
|
||||
gDPLoadTextureBlock(OVERLAY_DISP++, gMapDungeonEntranceIconTex, G_IM_FMT_RGBA, G_IM_SIZ_16b,
|
||||
|
@ -513,7 +513,7 @@ void Minimap_Draw(PlayState* play) {
|
|||
}
|
||||
|
||||
if ((play->sceneId == SCENE_ZORAS_FOUNTAIN) &&
|
||||
(gSaveContext.save.info.infTable[INFTABLE_1AX_INDEX] & gBitFlags[INFTABLE_1A9_SHIFT])) {
|
||||
(gSaveContext.save.info.infTable[INFTABLE_INDEX_1AX] & gBitFlags[INFTABLE_1A9_SHIFT])) {
|
||||
gDPLoadTextureBlock(OVERLAY_DISP++, gMapDungeonEntranceIconTex, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8,
|
||||
8, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK,
|
||||
G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
|
|
|
@ -852,7 +852,7 @@ void func_80083108(PlayState* play) {
|
|||
(gSaveContext.save.info.equips.buttonItems[0] == ITEM_BOMBCHU) ||
|
||||
(gSaveContext.save.info.equips.buttonItems[0] == ITEM_NONE)) {
|
||||
if ((gSaveContext.save.info.equips.buttonItems[0] != ITEM_NONE) ||
|
||||
(gSaveContext.save.info.infTable[INFTABLE_1DX_INDEX] == 0)) {
|
||||
(gSaveContext.save.info.infTable[INFTABLE_INDEX_1DX] == 0)) {
|
||||
gSaveContext.save.info.equips.buttonItems[0] = gSaveContext.buttonStatus[0];
|
||||
sp28 = true;
|
||||
|
||||
|
@ -876,7 +876,7 @@ void func_80083108(PlayState* play) {
|
|||
(gSaveContext.save.info.equips.buttonItems[0] == ITEM_BOMBCHU) ||
|
||||
(gSaveContext.save.info.equips.buttonItems[0] == ITEM_NONE)) {
|
||||
if ((gSaveContext.save.info.equips.buttonItems[0] != ITEM_NONE) ||
|
||||
(gSaveContext.save.info.infTable[INFTABLE_1DX_INDEX] == 0)) {
|
||||
(gSaveContext.save.info.infTable[INFTABLE_INDEX_1DX] == 0)) {
|
||||
gSaveContext.save.info.equips.buttonItems[0] = gSaveContext.buttonStatus[0];
|
||||
sp28 = true;
|
||||
|
||||
|
@ -1346,7 +1346,7 @@ void func_80084BF4(PlayState* play, u16 flag) {
|
|||
}
|
||||
} else if (gSaveContext.save.info.equips.buttonItems[0] == ITEM_NONE) {
|
||||
if ((gSaveContext.save.info.equips.buttonItems[0] != ITEM_NONE) ||
|
||||
(gSaveContext.save.info.infTable[INFTABLE_1DX_INDEX] == 0)) {
|
||||
(gSaveContext.save.info.infTable[INFTABLE_INDEX_1DX] == 0)) {
|
||||
gSaveContext.save.info.equips.buttonItems[0] = gSaveContext.buttonStatus[0];
|
||||
Interface_LoadItemIcon1(play, 0);
|
||||
}
|
||||
|
@ -3545,11 +3545,11 @@ void Interface_Draw(PlayState* play) {
|
|||
for (svar1 = 0; svar1 < ARRAY_COUNT(gSpoilingItems); svar1++) {
|
||||
if (INV_CONTENT(ITEM_TRADE_ADULT) == gSpoilingItems[svar1]) {
|
||||
#if OOT_VERSION >= NTSC_1_1
|
||||
gSaveContext.eventInf[EVENTINF_HORSES_INDEX] &=
|
||||
(u16) ~(EVENTINF_INGO_RACE_STATE_MASK | EVENTINF_INGO_RACE_HORSETYPE_MASK |
|
||||
EVENTINF_INGO_RACE_LOST_ONCE_MASK | EVENTINF_INGO_RACE_SECOND_RACE_MASK |
|
||||
EVENTINF_INGO_RACE_0F_MASK);
|
||||
PRINTF("EVENT_INF=%x\n", gSaveContext.eventInf[EVENTINF_HORSES_INDEX]);
|
||||
gSaveContext.eventInf[EVENTINF_INDEX_HORSES] &=
|
||||
(u16) ~(EVENTINF_INGO_RACE_STATE_MASK | EVENTINF_MASK(EVENTINF_INGO_RACE_HORSETYPE) |
|
||||
EVENTINF_MASK(EVENTINF_INGO_RACE_LOST_ONCE) |
|
||||
EVENTINF_MASK(EVENTINF_INGO_RACE_SECOND_RACE) | EVENTINF_MASK(EVENTINF_INGO_RACE_0F));
|
||||
PRINTF("EVENT_INF=%x\n", gSaveContext.eventInf[EVENTINF_INDEX_HORSES]);
|
||||
#endif
|
||||
play->nextEntranceIndex = spoilingItemEntrances[svar1];
|
||||
INV_CONTENT(gSpoilingItemReverts[svar1]) = gSpoilingItemReverts[svar1];
|
||||
|
|
|
@ -162,7 +162,7 @@ void Sram_InitNewSave(void) {
|
|||
gSaveContext.save.info.horseData.pos.z = 5497;
|
||||
gSaveContext.save.info.horseData.angle = -0x6AD9;
|
||||
gSaveContext.save.info.playerData.magicLevel = 0;
|
||||
gSaveContext.save.info.infTable[INFTABLE_1DX_INDEX] = 1;
|
||||
gSaveContext.save.info.infTable[INFTABLE_INDEX_1DX] = 1;
|
||||
gSaveContext.save.info.sceneFlags[SCENE_WATER_TEMPLE].swch = 0x40000000;
|
||||
}
|
||||
|
||||
|
@ -325,8 +325,15 @@ void Sram_InitDebugSave(void) {
|
|||
gSaveContext.save.info.horseData.pos.y = 72;
|
||||
gSaveContext.save.info.horseData.pos.z = 5497;
|
||||
gSaveContext.save.info.horseData.angle = -0x6AD9;
|
||||
gSaveContext.save.info.infTable[0] |= 0x5009;
|
||||
gSaveContext.save.info.eventChkInf[0] |= 0x123F;
|
||||
gSaveContext.save.info.infTable[INFTABLE_INDEX_0] |= INFTABLE_MASK(INFTABLE_00) | INFTABLE_MASK(INFTABLE_03) |
|
||||
INFTABLE_MASK(INFTABLE_0C) | INFTABLE_MASK(INFTABLE_0E);
|
||||
|
||||
gSaveContext.save.info.eventChkInf[EVENTCHKINF_INDEX_0] |=
|
||||
EVENTCHKINF_MASK(EVENTCHKINF_00_UNUSED) | EVENTCHKINF_MASK(EVENTCHKINF_01_UNUSED) |
|
||||
EVENTCHKINF_MASK(EVENTCHKINF_MIDO_DENIED_DEKU_TREE_ACCESS) | EVENTCHKINF_MASK(EVENTCHKINF_03) |
|
||||
EVENTCHKINF_MASK(EVENTCHKINF_04) | EVENTCHKINF_MASK(EVENTCHKINF_05) | EVENTCHKINF_MASK(EVENTCHKINF_09) |
|
||||
EVENTCHKINF_MASK(EVENTCHKINF_0C);
|
||||
|
||||
SET_EVENTCHKINF(EVENTCHKINF_80);
|
||||
SET_EVENTCHKINF(EVENTCHKINF_C4);
|
||||
|
||||
|
@ -498,8 +505,8 @@ 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_40_INDEX] & ~EVENTCHKINF_40_MASK;
|
||||
gSaveContext.save.info.eventChkInf[EVENTCHKINF_40_INDEX] = i;
|
||||
i = gSaveContext.save.info.eventChkInf[EVENTCHKINF_INDEX_40] & ~EVENTCHKINF_MASK(EVENTCHKINF_40);
|
||||
gSaveContext.save.info.eventChkInf[EVENTCHKINF_INDEX_40] = i;
|
||||
|
||||
INV_CONTENT(ITEM_ZELDAS_LETTER) = ITEM_CHICKEN;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue