fix deku mask poof/bubble crash
This commit is contained in:
@@ -29,30 +29,26 @@ print "End of Masks/deku_mask.asm ", pc
|
|||||||
|
|
||||||
; =========================================================
|
; =========================================================
|
||||||
|
|
||||||
; Indicates somaria platform status.
|
org $07A64B ; formerly Quake
|
||||||
; 0x00 - Not on platform
|
|
||||||
; 0x01 - On platform
|
|
||||||
; 0x02 - On platform and moving
|
|
||||||
SOMPLAT = $7E02F5
|
|
||||||
|
|
||||||
org $07A64B ; formerly Quake
|
|
||||||
LinkItem_DekuMask:
|
LinkItem_DekuMask:
|
||||||
{
|
{
|
||||||
|
; Don't use magic unless deku form
|
||||||
LDA.w $02B2 : CMP.b #$01 : BNE .continue
|
LDA.w $02B2 : CMP.b #$01 : BNE .continue
|
||||||
JSR Link_CheckNewY_ButtonPress : BCC .continue
|
; Don't shoot while transform is active
|
||||||
LDA $3A : AND.b #$BF : STA $3A
|
LDA.w $0C4E : BNE .continue
|
||||||
LDX.b #$02
|
JSR Link_CheckNewY_ButtonPress : BCC .continue
|
||||||
JSR LinkItem_EvaluateMagicCost : BCC .return
|
LDA $3A : AND.b #$BF : STA $3A
|
||||||
JSL DekuLink_ShootBubbleOrStartHover
|
LDX.b #$02
|
||||||
RTS
|
JSR LinkItem_EvaluateMagicCost : BCC .return
|
||||||
|
JSL DekuLink_ShootBubbleOrStartHover
|
||||||
|
RTS
|
||||||
|
|
||||||
.continue
|
.continue
|
||||||
LDA.b #$01
|
; Don't transform while shooting
|
||||||
JSL Link_TransformMask : BCC .return
|
LDA.w $0C52 : CMP.b #$0E : BEQ .return
|
||||||
LDA.b #$01 : STA.w SOMPLAT
|
LDA.b #$01
|
||||||
RTS
|
JSL Link_TransformMask
|
||||||
.return
|
.return
|
||||||
STZ.w SOMPLAT
|
|
||||||
RTS
|
RTS
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -843,7 +843,7 @@ AncillaAdd_MagicBubbleShot:
|
|||||||
.no_refund_magic
|
.no_refund_magic
|
||||||
BRL .exit_a
|
BRL .exit_a
|
||||||
.free_slot
|
.free_slot
|
||||||
INY ; Increment ancilla slot, due to 0x1E
|
INY #4 ; Increment ancilla slot, due to 0x1E
|
||||||
PHB
|
PHB
|
||||||
PHK
|
PHK
|
||||||
PLB
|
PLB
|
||||||
@@ -1166,8 +1166,7 @@ MagicBubbleShot_Halted:
|
|||||||
+
|
+
|
||||||
|
|
||||||
LDY.b #$00
|
LDY.b #$00
|
||||||
LDA.w AnciTimerA, X
|
LDA.w AnciTimerA, X : BEQ MagicBubbleShot_Dissipate
|
||||||
BEQ MagicBubbleShot_Dissipate
|
|
||||||
|
|
||||||
LSR A
|
LSR A
|
||||||
LSR A
|
LSR A
|
||||||
@@ -1204,8 +1203,7 @@ MagicBubbleShot_Halted:
|
|||||||
|
|
||||||
LDA.b $00 : STA.b ($90), Y
|
LDA.b $00 : STA.b ($90), Y
|
||||||
|
|
||||||
CLC
|
CLC : ADC.b #$08
|
||||||
ADC.b #$08
|
|
||||||
LDY.b #$04 : STA.b ($90), Y
|
LDY.b #$04 : STA.b ($90), Y
|
||||||
|
|
||||||
LDA.b $01 : CLC : ADC.b #$FD
|
LDA.b $01 : CLC : ADC.b #$FD
|
||||||
@@ -1213,6 +1211,7 @@ MagicBubbleShot_Halted:
|
|||||||
|
|
||||||
LDY.b #$05 : STA.b ($90), Y
|
LDY.b #$05 : STA.b ($90), Y
|
||||||
|
|
||||||
|
; Character
|
||||||
LDA.b #$A4 : LDY.b #$02 : STA.b ($90), Y
|
LDA.b #$A4 : LDY.b #$02 : STA.b ($90), Y
|
||||||
|
|
||||||
INC A
|
INC A
|
||||||
|
|||||||
Reference in New Issue
Block a user