Make Smith deletion on S+Q dependent of a new flag

This commit is contained in:
codemann8
2021-10-22 00:21:22 -05:00
parent 7819e80051
commit 4e67ebd959
2 changed files with 21 additions and 6 deletions

View File

@@ -18,6 +18,14 @@ DoWorldFix:
LDA #$00
.noMirror
STA $7EF3CA ; set flag to light world
LDA.l SmithDeleteOnSave : BEQ .transform
LDA $7EF3CC
CMP #$07 : BEQ .clear ; clear frog
CMP #$08 : BEQ .clear ; clear dwarf - consider flute implications
BRA .done
.clear
LDA.b #$00 : STA $7EF3CC : BRA .done ; clear follower
.transform
LDA $7EF3CC : CMP #$07 : BNE .done : INC : STA $7EF3CC ; convert frog to dwarf
.done
RTL
@@ -52,12 +60,15 @@ DoWorldFix_Inverted:
.noMirror
.aga1Alive
LDA #$40 : STA $7EF3CA ; set flag to dark world
LDA $7EF3CC
CMP #$07 : BEQ .clear ; clear frog
CMP #$08 : BEQ .clear ; clear dwarf - consider flute implications
BRA .done
.clear
LDA.b #$00 : STA $7EF3CC ; clear follower
LDA.l SmithDeleteOnSave : BEQ .transform
LDA $7EF3CC
CMP #$07 : BEQ .clear ; clear frog
CMP #$08 : BEQ .clear ; clear dwarf - consider flute implications
BRA .done
.clear
LDA.b #$00 : STA $7EF3CC : BRA .done ; clear follower
.transform
LDA $7EF3CC : CMP #$07 : BNE .done : INC : STA $7EF3CC ; convert frog to dwarf
.done
RTL
;--------------------------------------------------------------------------------

View File

@@ -259,6 +259,10 @@ CrystalPendantFlags_2:
;Pendant: $00
;Crystal: $40
;--------------------------------------------------------------------------------
org $30805D ; PC 0x18005D
SmithDeleteOnSave:
db #$00 ; #$00 = Off (default) - #$01 = On (frog/smith gets deleted on S+Q)
;--------------------------------------------------------------------------------
org $30805E ; PC 0x18005E - Number of crystals required to enter GT
NumberOfCrystalsRequiredForTower:
db #$07 ; #$07 = 7 Crystals