Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions dungeondrops.asm
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,16 @@
;--------------------------------------------------------------------------------
SpawnDungeonPrize:
PHX : PHB

PHA
; Don't spawn prize in Cave state, Hyrule Castle, Escape, Castle Tower, or Ganon's Tower
LDA.w DungeonID : BMI .skip_prize_drop ; Cave state
CMP.b #$00 : BEQ .skip_prize_drop ; Escape
CMP.b #$02 : BEQ .skip_prize_drop ; Hyrule Castle
CMP.b #$1A : BEQ .skip_prize_drop ; Ganon's Tower
CMP.b #$08 : BEQ .skip_prize_drop ; Agahnim's Tower (Castle Tower)
PLA

STA.w ItemReceiptID
TAX
LDA.b $06,S : STA.b ScrapBuffer72 ; Store current RoomTag index
Expand All @@ -18,6 +28,10 @@ SpawnDungeonPrize:
PLB : PLX
RTL

.skip_prize_drop:
PLA : PLB : PLX
RTL

AddDungeonPrizeAncilla:
LDY.w ItemReceiptID
STZ.w AncillaVelocityY,X
Expand Down
6 changes: 6 additions & 0 deletions heartpieces.asm
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,12 @@ LoadOutdoorValue:
PHP
REP #$20 ; set 16-bit accumulator
LDA.b OverworldIndex
; Rain state fix: In rain state DW, use LW screen ID for item lookup
BIT.w #$0040 : BEQ +
LDA.l ProgressIndicator : AND.w #$00FF : CMP.w #$0002
LDA.b OverworldIndex : BCS ++ : AND.w #$00BF
++
+
CMP.w #$00 : BNE +
LDA.l OWBonkPrizeTable[$00].loot
JMP .done
Expand Down
16 changes: 14 additions & 2 deletions tablets.asm
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,14 @@ RTL
;--------------------------------------------------------------------------------
SetTabletItemFlag:
PHA
LDA.b OverworldIndex : CMP.b #$03 : BEQ .ether ; if we're on the map where ether is, we're the ether tablet
.bombos
; Rain state fix: convert DW screen ID to LW if in rain state
LDA.b OverworldIndex
BIT.b #$40 : BEQ +
LDA.l ProgressIndicator : CMP.b #$02
LDA.b OverworldIndex : BCS ++ : AND.b #$BF
++
+
CMP.b #$03 : BEQ .ether ; if we're on the map where ether is, we're the ether tablet .bombos
JSR ItemSet_BombosTablet : BRA .done
.ether
JSR ItemSet_EtherTablet
Expand Down Expand Up @@ -69,6 +75,12 @@ RTL
IsMedallion:
REP #$20 ; set 16-bit accumulator
LDA.b OverworldIndex
; Rain state fix: In rain state DW, use LW screen ID for tablet lookup
BIT.w #$0040 : BEQ +
LDA.l ProgressIndicator : AND.w #$00FF : CMP.w #$0002
LDA.b OverworldIndex : BCS ++ : AND.w #$00BF
++
+
CMP.w #$03 : BNE + ; Death Mountain
LDA.b LinkPosX : CMP.w #1890 : !BGE ++
SEC
Expand Down