Finish pseudoflute
This commit is contained in:
@@ -248,8 +248,12 @@ DrawPlayerFileShared:
|
||||
|
||||
; Flute
|
||||
LDA.l InventoryTrackingSRAM : AND.w #$0003 : BEQ +
|
||||
LDA.l $7003C2 : AND.w #$00FF : CMP.w #$00FF : BNE .pseudo
|
||||
%fs_drawItem(7,16,FileSelectItems_flute)
|
||||
BRA ++
|
||||
.pseudo
|
||||
%fs_drawItem(7,16,FileSelectItems_flute_green)
|
||||
BRA ++
|
||||
+
|
||||
%fs_drawItemGray(7,16,FileSelectItems_flute)
|
||||
++
|
||||
@@ -539,6 +543,8 @@ FileSelectItems:
|
||||
dw #$0264|!FS_COLOR_BROWN, #$0265|!FS_COLOR_BROWN, #$0274|!FS_COLOR_BROWN, #$0275|!FS_COLOR_BROWN
|
||||
.flute
|
||||
dw #$0266|!FS_COLOR_BLUE, #$0267|!FS_COLOR_BLUE, #$0276|!FS_COLOR_BLUE, #$0277|!FS_COLOR_BLUE
|
||||
.flute_green
|
||||
dw #$0266|!FS_COLOR_GREEN, #$0267|!FS_COLOR_GREEN, #$0276|!FS_COLOR_GREEN, #$0277|!FS_COLOR_GREEN
|
||||
.book
|
||||
dw #$026A|!FS_COLOR_GREEN, #$026B|!FS_COLOR_GREEN, #$027A|!FS_COLOR_GREEN, #$027B|!FS_COLOR_GREEN
|
||||
.redcane
|
||||
|
||||
11
hooks.asm
11
hooks.asm
@@ -2807,3 +2807,14 @@ org $82A9A1 ; bank_02.asm@7655 (STA.b $8A : STA.w $040A)
|
||||
JSL CheckTransitionOverworld
|
||||
NOP
|
||||
;--------------------------------------------------------------------------------
|
||||
org $8DF741
|
||||
dw $3CD4, $3CD5, $3CE4, $3CE5
|
||||
;--------------------------------------------------------------------------------
|
||||
org $8DE58E ; bank_0D.asm@15401 (AND.w #$00FF : STA.b $02)
|
||||
JSL DrawFluteIcon
|
||||
NOP
|
||||
;--------------------------------------------------------------------------------
|
||||
org $8DFB63 ; bank_0D.asm@18092 (LDA.l $7EF33F, X : AND.w #$00FF)
|
||||
JSL CheckFluteInHUD
|
||||
NOP #3
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
@@ -188,10 +188,12 @@ ItemBehavior:
|
||||
BRA .store_inventory_tracking
|
||||
|
||||
.flute_inactive
|
||||
LDA.b #$FF : STA.l FluteBitfield
|
||||
LDA.l InventoryTracking : ORA.b #$02
|
||||
BRA .store_inventory_tracking
|
||||
|
||||
.flute_active
|
||||
LDA.b #$FF : STA.l FluteBitfield
|
||||
LDA.l InventoryTracking : ORA.b #$01
|
||||
BRA .store_inventory_tracking
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
SelectFirstFluteSpot:
|
||||
LDA.l FluteBitfield
|
||||
BNE .try_next
|
||||
BNE +
|
||||
RTL
|
||||
+ LDA.b #$07
|
||||
STA.w $1AF0
|
||||
.try_next
|
||||
LDA.w $1AF0
|
||||
INC A
|
||||
@@ -110,3 +112,39 @@ CheckTransitionOverworld:
|
||||
STA.b $8A
|
||||
STA.w $040A ; what we wrote over
|
||||
JML MaybeMarkFluteSpotVisited
|
||||
|
||||
DrawFluteIcon:
|
||||
AND.w #$00FF
|
||||
CMP.w #$0002
|
||||
BCC .write
|
||||
LDA.l FluteBitfield
|
||||
AND.w #$00FF
|
||||
CMP.w #$00FF
|
||||
BNE .pseudo
|
||||
.real
|
||||
LDA.w #$0003
|
||||
BRA .write
|
||||
.pseudo
|
||||
LDA.w #$0002
|
||||
.write
|
||||
STA.b $02
|
||||
RTL
|
||||
|
||||
CheckFluteInHUD:
|
||||
LDA.l $7EF33F, X
|
||||
AND.w #$00FF ; what we wrote over
|
||||
CPX.w #$000D
|
||||
BNE .done
|
||||
CMP.w #$0002
|
||||
BCC .done
|
||||
LDA.l FluteBitfield
|
||||
AND.w #$00FF
|
||||
CMP.w #$00FF
|
||||
BNE .pseudo
|
||||
.real
|
||||
LDA.w #$0003
|
||||
BRA .done
|
||||
.pseudo
|
||||
LDA.w #$0002
|
||||
.done
|
||||
RTL
|
||||
|
||||
Reference in New Issue
Block a user