diff --git a/doorrando/overrides.asm b/doorrando/overrides.asm index ee9c4c2..9ccf5e1 100644 --- a/doorrando/overrides.asm +++ b/doorrando/overrides.asm @@ -123,7 +123,7 @@ RainPrevention: PHA LDA ProgressIndicator : AND #$00FF : CMP #$0002 : !BGE .done ; only in rain states (0 or 1) LDA.l ProgressFlags : AND #$0004 : BNE .done ; zelda's been rescued - LDA.l BlockSanctuaryDoorInRain : BEQ .done ;flagged + LDA.l BlockSanctuaryDoorInRain : BEQ + ;flagged LDA $A0 : CMP #$0012 : BNE + ;we're in the sanctuary LDA.l FollowerIndicator : AND #$00FF : CMP #$0001 : BEQ .done ; zelda is following LDA $00 : AND #$00FF : CMP #$00A1 : BNE .done ; position is a1 @@ -165,4 +165,3 @@ BigKeyDoorCheck: LDA.l DRFlags : AND #$0400 : BNE + ; skip if the flag is set - bk doors can be double-sided PLA : PEA.w RoomDraw_OneSidedShutters_South_onesided_shutter_or_big_key_door-1 + LDA.w #$0000 : RTL - diff --git a/goalitem.asm b/goalitem.asm index 3eafaea..aeb9f05 100644 --- a/goalitem.asm +++ b/goalitem.asm @@ -46,6 +46,7 @@ CheckGanonVulnerability: dw .crystals_and_bosses dw .bosses_only dw .all_dungeons_no_agahnim + dw .completionist ; 00 = always vulnerable .vulnerable @@ -99,6 +100,15 @@ CheckGanonVulnerability: .bosses_only JMP CheckForCrystalBossesDefeated +; 0a = Check Item counter +.completionist + REP #$20 + LDA.l TotalItemCounter : CMP.l MaxItemCounter + SEP #$20 + BCC .fail +BRA .all_dungeons + + ;-------------------------------------------------------------------------------- GetRequiredCrystalsForTower: BEQ + : JSL.l BreakTowerSeal_ExecuteSparkles : + ; thing we wrote over diff --git a/keydrop/standing_items.asm b/keydrop/standing_items.asm index 82b6591..505dee9 100644 --- a/keydrop/standing_items.asm +++ b/keydrop/standing_items.asm @@ -599,6 +599,7 @@ CheckIfPotIsSpecial: RTL SetTheSceneFix: + STZ.b $6C JSL InitializeMirrorHDMA JSL LoadCommonSprites_long RTL diff --git a/tables.asm b/tables.asm index e89760e..0ad13f9 100644 --- a/tables.asm +++ b/tables.asm @@ -1909,4 +1909,7 @@ db $08, $08, $06, $06, $02, $0A, $0E, $08, $08, $08, $06, $08, $0C, $1B, $00, $0 ;-------------------------------------------------------------------------------- ; 0x187010 - 187FFF (unused) ;-------------------------------------------------------------------------------- +org $30F010 +MaxItemCounter: +dw $00D8 ; 216 default