Add Hammer-On-B mode
This commit is contained in:
@@ -629,6 +629,9 @@ Player_HaltDashAttackLong:
|
|||||||
org $07999D
|
org $07999D
|
||||||
Link_ReceiveItem:
|
Link_ReceiveItem:
|
||||||
|
|
||||||
|
org $079F82
|
||||||
|
Link_UseHammer:
|
||||||
|
|
||||||
org $07A985
|
org $07A985
|
||||||
SetGameModeLikeMirror:
|
SetGameModeLikeMirror:
|
||||||
|
|
||||||
@@ -820,3 +823,7 @@ Sprite_GetEmptyBottleIndex: ; this is totally in sprite_bees.asm
|
|||||||
org $1EF4E7
|
org $1EF4E7
|
||||||
Sprite_PlayerCantPassThrough:
|
Sprite_PlayerCantPassThrough:
|
||||||
;================================================================================
|
;================================================================================
|
||||||
|
|
||||||
|
org $07FFF4
|
||||||
|
Link_UseHammerLong:
|
||||||
|
JSR Link_UseHammer : RTL
|
||||||
|
|||||||
@@ -2936,6 +2936,9 @@ db $B2, $28, $B3, $28, $C2, $28, $C2, $68
|
|||||||
org $079CE6 ; Bank07.asm@4632 (LDA #$80 : TSB $3A)
|
org $079CE6 ; Bank07.asm@4632 (LDA #$80 : TSB $3A)
|
||||||
JSL CheckDetonateBomb
|
JSL CheckDetonateBomb
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
org $079D08 ; bank_07.asm@6068 (INC $3C : LDA $3C : CMP #$09)
|
||||||
|
JSL NoSwingHammerB : NOP #2
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
org $1EDCF8 ; bank_1E.asm@16086 (LDX $0202 : ...)
|
org $1EDCF8 ; bank_1E.asm@16086 (LDX $0202 : ...)
|
||||||
JSL SetBeeType
|
JSL SetBeeType
|
||||||
BRA + : NOP #15 : +
|
BRA + : NOP #15 : +
|
||||||
|
|||||||
@@ -445,6 +445,7 @@ BeeDamageClass:
|
|||||||
db $0B, $0C, $0D, $0E, $0F
|
db $0B, $0C, $0D, $0E, $0F
|
||||||
db $FF, $03, $FF, $FF, $FF
|
db $FF, $03, $FF, $FF, $FF
|
||||||
db $FF, $01, $01, $FF, $FF
|
db $FF, $01, $01, $FF, $FF
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
CheckDetonateBomb:
|
CheckDetonateBomb:
|
||||||
LDA.l SpecialWeapons : CMP.b #$01 : BNE .not_bomb_mode
|
LDA.l SpecialWeapons : CMP.b #$01 : BNE .not_bomb_mode
|
||||||
.detonate_bombs
|
.detonate_bombs
|
||||||
@@ -460,7 +461,14 @@ CheckDetonateBomb:
|
|||||||
BPL .check_ancilla
|
BPL .check_ancilla
|
||||||
BRA .done
|
BRA .done
|
||||||
.not_bomb_mode
|
.not_bomb_mode
|
||||||
LDA.l SpecialWeapons : CMP.b #$06 : BNE .done
|
LDA.l SpecialWeapons : CMP.b #$06 : BEQ .release_bee
|
||||||
|
CMP.b #$07 : BNE .done
|
||||||
|
LDA.l HammerEquipment : BEQ .done
|
||||||
|
LDA.b $3A : ORA.b #$40 : STA.b $3A
|
||||||
|
LDA.b #$04 : STA.w $0304
|
||||||
|
JSL Link_UseHammerLong
|
||||||
|
BRA .done
|
||||||
|
.release_bee
|
||||||
LDX.w $0202
|
LDX.w $0202
|
||||||
LDA.l BeeDamageClass, X : CMP.b #$FF : BEQ .nope
|
LDA.l BeeDamageClass, X : CMP.b #$FF : BEQ .nope
|
||||||
JSL $1EDCC9
|
JSL $1EDCC9
|
||||||
@@ -585,3 +593,13 @@ JSL LookupDamageLevel
|
|||||||
SEP #$10
|
SEP #$10
|
||||||
PLP : PLX
|
PLP : PLX
|
||||||
RTS
|
RTS
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
NoSwingHammerB:
|
||||||
|
LDA.l SpecialWeapons : CMP.b #$07 : BNE .normal
|
||||||
|
LDA.l HammerEquipment : BEQ .normal
|
||||||
|
SEC : RTL
|
||||||
|
.normal ; what we wrote over
|
||||||
|
INC.b $3C
|
||||||
|
LDA.b $3C
|
||||||
|
CMP.b #$09
|
||||||
|
RTL
|
||||||
|
|||||||
@@ -120,6 +120,7 @@ db #$00
|
|||||||
; $04 = Somaria-Only mode
|
; $04 = Somaria-Only mode
|
||||||
; $05 = Canes-Only mode
|
; $05 = Canes-Only mode
|
||||||
; $06 = Bee mode
|
; $06 = Bee mode
|
||||||
|
; $07 = Hammer on B (for use with swordless)
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
org $308030 ; PC 0x180030
|
org $308030 ; PC 0x180030
|
||||||
EnableSRAMTrace:
|
EnableSRAMTrace:
|
||||||
|
|||||||
Reference in New Issue
Block a user