Restore invisible floors when flashing is disabled

Replace Seizure_Safety with FlashingDisabled
This commit is contained in:
cassidy
2021-04-25 16:09:42 -04:00
parent edfecad1b2
commit fe708fd20f
2 changed files with 75 additions and 24 deletions

View File

@@ -10,21 +10,34 @@ FlipGreenPendant:
LDA $0C : STA $0803, X LDA $0C : STA $0803, X
RTL RTL
;================================================================================ ;================================================================================
!EPILEPSY_TIMER = "$7F5041" !WHITEN_TIMER = "$7F5041"
SetEtherFlicker: SetEtherFlicker:
LDA.l Seizure_Safety : BNE + LDA DisableFlashing : BNE +
LDA $031D : CMP.b #$0B : RTL ;LDA $00,X
+ LDA !WHITEN_TIMER : INC : STA !WHITEN_TIMER
LDA !EPILEPSY_TIMER : INC : STA !EPILEPSY_TIMER
LDA.b #$FF : CMP !WHITEN_TIMER : BNE +++
LDA.l Seizure_Safety : CMP !EPILEPSY_TIMER : BNE +++ LDA.b #$00 : STA !WHITEN_TIMER : BRA ++
LDA.b #$00 : STA !EPILEPSY_TIMER : BRA ++
+++ +++
LSR : CMP !EPILEPSY_TIMER : !BLT ++ LSR : CMP !WHITEN_TIMER : !BLT ++
SEP #$02 : RTL LDA $031D : CMP.b #$0B
RTL
++ ++
REP #$02 LDA $031D : CMP.b #$0B
RTL
+ +
;LDA $00
LDA !WHITEN_TIMER : INC : STA !WHITEN_TIMER
LDA.b #$FF : CMP !WHITEN_TIMER : BNE +++
LDA.b #$00 : STA !WHITEN_TIMER : BRA ++
+++
LSR : CMP !WHITEN_TIMER : !BLT ++
LDA $031D : SEP #$02
RTL
++
LDA $031D : REP #$02
RTL RTL
;================================================================================ ;================================================================================
ConditionalLightning: ConditionalLightning:
@@ -41,9 +54,9 @@ ConditionalLightning:
RTL RTL
;================================================================================ ;================================================================================
ConditionalWhitenBg: ConditionalWhitenBg:
REP #$20
LDX.b #$00 LDX.b #$00
LDA DisableFlashing : BNE + LDA.l DisableFlashing
REP #$20 : BNE +
LDA $00,X LDA $00,X
JSR WhitenLoopReal JSR WhitenLoopReal
RTL RTL
@@ -66,10 +79,31 @@ WhitenLoopReal:
LDA $7EC3C0, X : JSL Filter_Majorly_Whiten_Color : STA $7EC5C0, X LDA $7EC3C0, X : JSL Filter_Majorly_Whiten_Color : STA $7EC5C0, X
LDA $7EC3D0, X : JSL Filter_Majorly_Whiten_Color : STA $7EC5D0, X LDA $7EC3D0, X : JSL Filter_Majorly_Whiten_Color : STA $7EC5D0, X
LDA $7EC3E0, X : JSL Filter_Majorly_Whiten_Color : STA $7EC5E0, X LDA $7EC3E0, X : JSL Filter_Majorly_Whiten_Color : STA $7EC5E0, X
LDA $7EC3F0, X : JSL Filter_Majorly_Whiten_Color : STA $7EC5F0, X
INX #2 : CPX.b #$10 : BEQ + INX #2 : CPX.b #$10 : BEQ +
JMP - JMP -
+ +
LDA $7EC3F0 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F0
LDA $7EC3F2 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F2
LDA $7EC3F4 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F4
LDA $10 : CMP.w #$07 : BNE +
LDA $048E
CMP.w #$3C : BEQ ++ ; hookshot cave
CMP.w #$9D : BEQ ++ ; gt right
CMP.w #$9C : BEQ ++ ; gt big room
CMP.w #$A5 : BEQ ++ ; wizzrobes 1
+
LDA $7EC3F6 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F6
LDA $7EC3F8 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F8
BRA +++
++
LDA $7EC3F6 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F6
LDA $7EC3F8 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F8
BRA +++
+++
LDA $7EC3FA : JSL Filter_Majorly_Whiten_Color : STA $7EC5FA
LDA $7EC3FC : JSL Filter_Majorly_Whiten_Color : STA $7EC5FC
LDA $7EC3FE : JSL Filter_Majorly_Whiten_Color : STA $7EC5FE
REP #$10 REP #$10
LDA $7EC540 : TAY LDA $7EC540 : TAY
LDA $7EC300 : BNE + LDA $7EC300 : BNE +
@@ -92,10 +126,31 @@ WhitenLoopDummy:
LDA $7EC3C0, X : JSL Filter_Majorly_Whiten_Color : LDA $7EC5C0, X LDA $7EC3C0, X : JSL Filter_Majorly_Whiten_Color : LDA $7EC5C0, X
LDA $7EC3D0, X : JSL Filter_Majorly_Whiten_Color : LDA $7EC5D0, X LDA $7EC3D0, X : JSL Filter_Majorly_Whiten_Color : LDA $7EC5D0, X
LDA $7EC3E0, X : JSL Filter_Majorly_Whiten_Color : LDA $7EC5E0, X LDA $7EC3E0, X : JSL Filter_Majorly_Whiten_Color : LDA $7EC5E0, X
LDA $7EC3F0, X : JSL Filter_Majorly_Whiten_Color : LDA $7EC5F0, X
INX #2 : CPX.b #$10 : BEQ + INX #2 : CPX.b #$10 : BEQ +
JMP - JMP -
+ +
LDA $7EC3F0 : JSL Filter_Majorly_Whiten_Color : LDA $7EC5F0
LDA $7EC3F2 : JSL Filter_Majorly_Whiten_Color : LDA $7EC5F2
LDA $7EC3F4 : JSL Filter_Majorly_Whiten_Color : LDA $7EC5F4
LDA $10 : CMP.w #$07 : BNE + ; only light invisifloor if we're in dungeon submodule
LDA $048E
CMP.w #$3C : BEQ ++ ; hookshot cave
CMP.w #$9D : BEQ ++ ; gt right
CMP.w #$9C : BEQ ++ ; gt big room
CMP.w #$A5 : BEQ ++ ; wizzrobes 1
+
LDA $7EC3F6 : JSL Filter_Majorly_Whiten_Color : LDA $7EC5F6
LDA $7EC3F8 : JSL Filter_Majorly_Whiten_Color : LDA $7EC5F8
BRA +++
++
LDA $7EC3F6 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F6
LDA $7EC3F8 : JSL Filter_Majorly_Whiten_Color : STA $7EC5F8
BRA +++
+++
LDA $7EC3FA : JSL Filter_Majorly_Whiten_Color : LDA $7EC5FA
LDA $7EC3FC : JSL Filter_Majorly_Whiten_Color : LDA $7EC5FC
LDA $7EC3FE : JSL Filter_Majorly_Whiten_Color : LDA $7EC5FE
REP #$10 REP #$10
LDA $7EC540 : TAY LDA $7EC540 : TAY
LDA $7EC300 : BNE + LDA $7EC300 : BNE +
@@ -146,8 +201,8 @@ ConditionalGTFlash:
RTL RTL
;================================================================================ ;================================================================================
ConditionalRedFlash: ConditionalRedFlash:
REP #$20 LDA.l DisableFlashing
LDA.l DisableFlashing : BNE + REP #$20 : BNE +
LDA $00,X LDA $00,X
LDA.w #$1D59 : STA $7EC5DA LDA.w #$1D59 : STA $7EC5DA
LDA.w #$25FF : STA $7EC5DC LDA.w #$25FF : STA $7EC5DC

View File

@@ -873,8 +873,8 @@ Restrict_Ponds:
db #$01 ; #$00 = Original Behavior - #$01 - Restrict to Bottles (Default) db #$01 ; #$00 = Original Behavior - #$01 - Restrict to Bottles (Default)
;================================================================================ ;================================================================================
org $30817F ; PC 0x18017F org $30817F ; PC 0x18017F
Seizure_Safety: DisableFlashing:
db #$00 ; #$00 = Off (Default) - #$xx = Limit Certain Effects db #$00 ; #$00 = Flashing Enabled (Default) - #$01 = Flashing Disabled
;================================================================================ ;================================================================================
;---- --hb ;---- --hb
;h - Hookshot ;h - Hookshot
@@ -916,11 +916,7 @@ db #$00
RainDeathRefillArrows_Mantle: RainDeathRefillArrows_Mantle:
db #$00 db #$00
;================================================================================ ;================================================================================
org $30818E ; PC 0x18018E ; 0x18018E - 0x18018F (unused)
DisableFlashing:
db $00 ; $00 = Flashing enabled (default) $01 = Flashing disabled
;================================================================================
; 0x18018F (unused)
;================================================================================ ;================================================================================
org $308190 ; PC 0x180190 - 0x180192 org $308190 ; PC 0x180190 - 0x180192
TimerStyle: TimerStyle: