Fix bottle net fairy catch and release bug

This commit is contained in:
scawful
2024-02-22 21:15:39 -05:00
parent 16457eb84b
commit e134dc5ee2

View File

@@ -14,15 +14,6 @@ PlayerItem_ReleaseBee:
; LinkItem_Bottle ; LinkItem_Bottle
org $07A15B org $07A15B
JSR LinkItem_NewBottle
RTS
; *$3A15B-$3A249 FREE SPACE STILL AVAILABLE
; =============================================================================
; Bank 07 Free Space
; org $07FAAD
pullpc
LinkItem_NewBottle: LinkItem_NewBottle:
{ {
; Check if we have a bottle or not ; Check if we have a bottle or not
@@ -32,6 +23,9 @@ LinkItem_NewBottle:
; Check if the bottle is empty ; Check if the bottle is empty
CMP.b #$03 : BCC .empty_bottle CMP.b #$03 : BCC .empty_bottle
; Confirm we aren't currently catching
LDA $030D : BNE .empty_bottle
; If no, prepare and call the LinkItem_Bottles routine ; If no, prepare and call the LinkItem_Bottles routine
JSR LinkItem_Bottles JSR LinkItem_Bottles
BRA .exit BRA .exit
@@ -44,6 +38,12 @@ LinkItem_NewBottle:
RTS RTS
} }
warnpc $07A249
pullpc
print " LinkItem_NewBugCatchingNet ", pc
; ============================================================================= ; =============================================================================
pose_id: pose_id:
@@ -108,34 +108,6 @@ NetExit:
RTS RTS
} }
; *$3AE65-$3AE87 LOCAL
; Link is picking up an item, handle it.
; Does something more related to how Link's standing / collision with the floor
UnknownRoutine:
{
LDA $AD : CMP.b #$02 : BNE .BRANCH_ALPHA
LDA $0322 : AND.b #$03 : CMP.b #$03 : BNE .BRANCH_ALPHA
STZ $30
STZ $31
STZ $67
STZ $2A
STZ $2B
STZ $6B
.BRANCH_ALPHA:
; Cane of Somaria transit lines?
LDA $02F5 : BEQ .BRANCH_BETA
STZ $67
.BRANCH_BETA:
RTS
}
; ============================================================================= ; =============================================================================
print " LinkItem_Bottles ", pc print " LinkItem_Bottles ", pc
LinkItem_Bottles: LinkItem_Bottles:
@@ -156,16 +128,16 @@ LinkItem_Bottles:
BRL .LinkItem_BeeBottle BRL .LinkItem_BeeBottle
.fairy: .fairy
BRL .LinkItem_FairyBottle BRL .LinkItem_FairyBottle
.LinkItem_RedPotion: .LinkItem_RedPotion
LDA.l $7EF36C : CMP.l $7EF36D : BNE .can_drink_red LDA.l $7EF36C : CMP.l $7EF36D : BNE .can_drink_red
.LinkItem_UselessBottle: .LinkItem_UselessBottle
BRL LinkGoBeep ; BRL $07A955 Investigate BRL LinkGoBeep ; BRL $07A955 Investigate
.can_drink_red: .can_drink_red
LDA.b #$02 : STA.l $7EF35C, X : STZ.w $0301 LDA.b #$02 : STA.l $7EF35C, X : STZ.w $0301
LDA.b #$04 : STA.b $11 LDA.b #$04 : STA.b $11
@@ -177,11 +149,11 @@ LinkItem_Bottles:
RTS RTS
.LinkItem_GreenPotion: .LinkItem_GreenPotion
LDA.l $7EF36E : CMP.b #$80 : BNE .can_drink LDA.l $7EF36E : CMP.b #$80 : BNE .can_drink
BRL LinkGoBeep BRL LinkGoBeep
.can_drink: .can_drink
; Set the bottle empty ; Set the bottle empty
LDA.b #$02 : STA.l $7EF35C, X : STZ.w $0301 LDA.b #$02 : STA.l $7EF35C, X : STZ.w $0301
@@ -196,7 +168,7 @@ LinkItem_Bottles:
JSL $0DFA58 ; RebuildHUD_long JSL $0DFA58 ; RebuildHUD_long
BRA .bottle_exit BRA .bottle_exit
.LinkItem_BluePotion: .LinkItem_BluePotion
LDA $7EF36C : CMP $7EF36D : BNE .useBluePotion LDA $7EF36C : CMP $7EF36D : BNE .useBluePotion
LDA $7EF36E : CMP.b #$80 : BNE .useBluePotion LDA $7EF36E : CMP.b #$80 : BNE .useBluePotion
BRL LinkGoBeep ; BRL $07A955 BRL LinkGoBeep ; BRL $07A955
@@ -215,17 +187,16 @@ LinkItem_Bottles:
JSL $0DFA58 ; RebuildHUD_Long JSL $0DFA58 ; RebuildHUD_Long
BRA .bottle_exit BRA .bottle_exit
.LinkItem_FairyBottle: .LinkItem_FairyBottle
STZ.w $0301 : LDA.b #$02 : STA.l $7EF35C, X STZ.w $0301 : LDA.b #$02 : STA.l $7EF35C, X
JSL PlayerItem_SpawnFaerie : BPL .released JSL PlayerItem_SpawnFaerie : BPL .released
BRL LinkGoBeep ; BRL $07A955 BRL LinkGoBeep ; BRL $07A955
.released: .released
JSL $0DFB91 ; HUD_Update JSL $0DFA58 ; RebuildHUD_Long
; JSL $0DFA58 ; RebuildHUD_Long
BRA .bottle_exit BRA .bottle_exit
.LinkItem_BeeBottle: .LinkItem_BeeBottle
STZ.w $0301 STZ.w $0301
JSL PlayerItem_ReleaseBee : BPL .bee_spawn_success JSL PlayerItem_ReleaseBee : BPL .bee_spawn_success
BRL LinkGoBeep ; BRL $07A955 BRL LinkGoBeep ; BRL $07A955
@@ -234,7 +205,7 @@ LinkItem_Bottles:
LDA.b #$02 : STA.l $7EF35C, X LDA.b #$02 : STA.l $7EF35C, X
JSL $0DFA58 ; RebuildHUD_Long JSL $0DFA58 ; RebuildHUD_Long
.bottle_exit: .bottle_exit
RTS RTS
} }
@@ -243,5 +214,3 @@ LinkGoBeep:
LDA.b #$3C : JSR Player_DoSfx2 LDA.b #$3C : JSR Player_DoSfx2
BRA LinkItem_Bottles_bottle_exit BRA LinkItem_Bottles_bottle_exit
} }
; pushpc