Merged in DR v1.2.0.16

This commit is contained in:
codemann8
2023-04-14 15:30:35 -05:00
3 changed files with 53 additions and 1 deletions

View File

@@ -0,0 +1,51 @@
pushpc
org $9E9463
JSL CheckKholdShellCoordinates
BCC Sprite_A3_KholdstareShell_link_not_close
BRA Sprite_A3_KholdstareShell_link_close
NOP #13
Sprite_A3_KholdstareShell_link_close = $9E9478
Sprite_A3_KholdstareShell_link_not_close = $9E9480
pullpc
CheckKholdShellCoordinates:
LDA.w $0D30, X
XBA
LDA.w $0D10, X ; full 16 bit X coordinate of sprite
REP #$21
SBC.w #$0020
CMP.b $22
BCS .not_colliding
ADC.w #$0040
CMP.b $22
BCC .not_colliding
SEP #$20
LDA.w $0D20, X
XBA
LDA.w $0D00, X ; full 16 bit Y coordinate of sprite
REP #$21
SBC.w #$001F ; could go to 27 and let link squeeze in at Lanmo 2 (please adjust the following one)
CMP.b $20
BCS .not_colliding
ADC.w #$0037
CMP.b $20
BCC .not_colliding
SEP #$20 ; collision detected
SEC
RTL
.not_colliding
SEP #$30
CLC
RTL

View File

@@ -58,6 +58,7 @@ incsrc math.asm
incsrc hudadditions.asm
incsrc dr_lobby.asm
incsrc entrance_fixes.asm
incsrc bugfix/kholdstare_shell_collision.asm
warnpc $A79C00
incsrc doortables.asm

View File

@@ -307,7 +307,7 @@ RTS
ClearSpriteData:
STZ.b $02 : STZ.b $03 ; what we overrode
.shared
.shared:
PHX
LDA #$00 : LDX #$00
.loop