Merge pull request #205 from cassidoxa/v31.2.0-fixes
Fix HUD item icon not refreshing after last bomb spent
This commit is contained in:
@@ -155,7 +155,7 @@ JML.l AllowStartFromExitReturn
|
|||||||
STZ.b SubSubModule
|
STZ.b SubSubModule
|
||||||
STZ.w DeathReloadFlag
|
STZ.w DeathReloadFlag
|
||||||
STZ.w RespawnFlag
|
STZ.w RespawnFlag
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
|
|
||||||
JSL Equipment_SearchForEquippedItemLong
|
JSL Equipment_SearchForEquippedItemLong
|
||||||
JSL HUD_RebuildLong2
|
JSL HUD_RebuildLong2
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ JML.l ReturnFromOnDrawHud
|
|||||||
OnDungeonEntrance:
|
OnDungeonEntrance:
|
||||||
STA.l PegColor ; thing we wrote over
|
STA.l PegColor ; thing we wrote over
|
||||||
JSL MaybeFlagDungeonTotalsEntrance
|
JSL MaybeFlagDungeonTotalsEntrance
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
RTL
|
RTL
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
OnDungeonBossExit:
|
OnDungeonBossExit:
|
||||||
@@ -46,7 +46,7 @@ OnDungeonExit:
|
|||||||
STA.w DungeonID : STZ.w Map16ChangeIndex ; thing we wrote over
|
STA.w DungeonID : STZ.w Map16ChangeIndex ; thing we wrote over
|
||||||
|
|
||||||
PHA : PHP
|
PHA : PHP
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
JSL.l HUD_RebuildLong
|
JSL.l HUD_RebuildLong
|
||||||
JSL.l FloodGateResetInner
|
JSL.l FloodGateResetInner
|
||||||
JSL.l SetSilverBowMode
|
JSL.l SetSilverBowMode
|
||||||
@@ -226,7 +226,7 @@ OnOWTransition:
|
|||||||
PHP
|
PHP
|
||||||
SEP #$20 ; set 8-bit accumulator
|
SEP #$20 ; set 8-bit accumulator
|
||||||
LDA.b #$FF : STA.l RNGLockIn ; clear lock-in
|
LDA.b #$FF : STA.l RNGLockIn ; clear lock-in
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
PLP
|
PLP
|
||||||
RTL
|
RTL
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -1406,8 +1406,8 @@ org $8DFB29 : BRA UpdateHUDBuffer_update_item_check_arrows
|
|||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
org $8DF1AB : JSR.w RebuildHUD_update
|
org $8DF1AB : JSR.w RebuildHUD_update
|
||||||
org $8DDFC8 : JSR.w RebuildHUD_update
|
org $8DDFC8 : JSR.w RebuildHUD_update
|
||||||
org $8DDB88 ; Don't rebuild HUD twice on icon refresh
|
org $8DDB85
|
||||||
NOP #3 ; Not sure why this is here
|
JSR.w RebuildHUD : BRA + : NOP : +
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
org $87A205 : JSL.l RebuildHUD_update_long
|
org $87A205 : JSL.l RebuildHUD_update_long
|
||||||
org $8AEF62 : JSL.l RebuildHUD_update_long
|
org $8AEF62 : JSL.l RebuildHUD_update_long
|
||||||
@@ -1422,6 +1422,7 @@ warnpc $8E8000
|
|||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
org $8DEDE8
|
org $8DEDE8
|
||||||
JSL.l DrawHeartPiecesMenu : BRA DrawEquipment_in_a_dungeon
|
JSL.l DrawHeartPiecesMenu : BRA DrawEquipment_in_a_dungeon
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
|
||||||
;================================================================================
|
;================================================================================
|
||||||
; 300 Rupee NPC
|
; 300 Rupee NPC
|
||||||
|
|||||||
@@ -365,7 +365,7 @@ Link_ReceiveItem_HUDRefresh:
|
|||||||
+
|
+
|
||||||
|
|
||||||
JSL.l HUD_RefreshIconLong ; thing we wrote over
|
JSL.l HUD_RefreshIconLong ; thing we wrote over
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
JSL.l PostItemGet
|
JSL.l PostItemGet
|
||||||
RTL
|
RTL
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
@@ -380,7 +380,7 @@ HandleBombAbsorbtion:
|
|||||||
LDA.b #$04 : STA.w ItemCursor ; set selected item to bombs
|
LDA.b #$04 : STA.w ItemCursor ; set selected item to bombs
|
||||||
LDA.b #$01 : STA.w CurrentYItem ; set selected item to bombs
|
LDA.b #$01 : STA.w CurrentYItem ; set selected item to bombs
|
||||||
JSL.l HUD_RebuildLong
|
JSL.l HUD_RebuildLong
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
+
|
+
|
||||||
RTL
|
RTL
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
|||||||
10
newhud.asm
10
newhud.asm
@@ -65,7 +65,7 @@ NewHUD_DrawArrows:
|
|||||||
;================================================================================
|
;================================================================================
|
||||||
NewHUD_DrawGoal:
|
NewHUD_DrawGoal:
|
||||||
REP #$20
|
REP #$20
|
||||||
LDA.w UpdateHUD : BEQ .no_goal
|
LDA.w UpdateHUDFlag : BEQ .no_goal
|
||||||
LDA.l GoalItemRequirement : BEQ .no_goal
|
LDA.l GoalItemRequirement : BEQ .no_goal
|
||||||
|
|
||||||
LDA.l GoalItemIcon : STA.w HUDGoalIndicator
|
LDA.l GoalItemIcon : STA.w HUDGoalIndicator
|
||||||
@@ -122,7 +122,7 @@ NewHUD_DrawKeys:
|
|||||||
|
|
||||||
;================================================================================
|
;================================================================================
|
||||||
NewHUD_DrawDungeonCounters:
|
NewHUD_DrawDungeonCounters:
|
||||||
LDA.w UpdateHUD : BEQ NewHUD_DrawPrizeIcon
|
LDA.w UpdateHUDFlag : BEQ NewHUD_DrawPrizeIcon
|
||||||
LDA.l CompassMode : ORA.l MapHUDMode : BIT.b #$03 : BEQ NewHUD_DrawPrizeIcon
|
LDA.l CompassMode : ORA.l MapHUDMode : BIT.b #$03 : BEQ NewHUD_DrawPrizeIcon
|
||||||
LDX.b IndoorsFlag : BNE +
|
LDX.b IndoorsFlag : BNE +
|
||||||
JMP.w NewHUD_DrawMagicMeter
|
JMP.w NewHUD_DrawMagicMeter
|
||||||
@@ -147,7 +147,7 @@ NewHUD_DrawPrizeIcon:
|
|||||||
LDA.b GameMode
|
LDA.b GameMode
|
||||||
CMP.b #$12 : BEQ .no_prize
|
CMP.b #$12 : BEQ .no_prize
|
||||||
CMP.b #$0E : BEQ +
|
CMP.b #$0E : BEQ +
|
||||||
LDA.w UpdateHUD : BEQ NewHUD_DrawItemCounter
|
LDA.w UpdateHUDFlag : BEQ NewHUD_DrawItemCounter
|
||||||
+
|
+
|
||||||
LDA.w DungeonID
|
LDA.w DungeonID
|
||||||
CMP.b #$1A : BCS .no_prize
|
CMP.b #$1A : BCS .no_prize
|
||||||
@@ -197,7 +197,7 @@ NewHUD_DrawPrizeIcon:
|
|||||||
;================================================================================
|
;================================================================================
|
||||||
NewHUD_DrawItemCounter:
|
NewHUD_DrawItemCounter:
|
||||||
REP #$20
|
REP #$20
|
||||||
LDA.w UpdateHUD : BEQ NewHUD_DrawMagicMeter
|
LDA.w UpdateHUDFlag : BEQ NewHUD_DrawMagicMeter
|
||||||
LDA.l ItemCounterHUD : AND.w #$00FF : BEQ NewHUD_DrawMagicMeter
|
LDA.l ItemCounterHUD : AND.w #$00FF : BEQ NewHUD_DrawMagicMeter
|
||||||
LDA.w #!SlashTile : STA.w HUDGoalIndicator+$08
|
LDA.w #!SlashTile : STA.w HUDGoalIndicator+$08
|
||||||
LDA.l TotalItemCount : CMP.w #1000 : BCS .item_four_digits
|
LDA.l TotalItemCount : CMP.w #1000 : BCS .item_four_digits
|
||||||
@@ -263,7 +263,7 @@ NewHUD_DrawMagicMeter:
|
|||||||
|
|
||||||
;================================================================================
|
;================================================================================
|
||||||
NewHUD_DoneDrawing:
|
NewHUD_DoneDrawing:
|
||||||
STZ.w UpdateHUD
|
STZ.w UpdateHUDFlag
|
||||||
PLB
|
PLB
|
||||||
RTL
|
RTL
|
||||||
|
|
||||||
|
|||||||
@@ -429,7 +429,7 @@ ItemBehavior:
|
|||||||
.single_arrow
|
.single_arrow
|
||||||
LDA.l ArrowMode : BEQ +
|
LDA.l ArrowMode : BEQ +
|
||||||
LDA.l CurrentArrows : INC : STA.l CurrentArrows ; Should be sole write to this address
|
LDA.l CurrentArrows : INC : STA.l CurrentArrows ; Should be sole write to this address
|
||||||
INC.w UpdateHUD ; in retro/rupee bow mode.
|
INC.w UpdateHUDFlag ; in retro/rupee bow mode.
|
||||||
+
|
+
|
||||||
RTS
|
RTS
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ RTL
|
|||||||
;================================================================================
|
;================================================================================
|
||||||
HUDRebuildIndoorHole:
|
HUDRebuildIndoorHole:
|
||||||
PHA
|
PHA
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
LDA.l GenericKeys : BEQ .normal
|
LDA.l GenericKeys : BEQ .normal
|
||||||
.generic
|
.generic
|
||||||
PLA
|
PLA
|
||||||
@@ -30,7 +30,7 @@ RTL
|
|||||||
RTL
|
RTL
|
||||||
;================================================================================
|
;================================================================================
|
||||||
HUDRebuildIndoor:
|
HUDRebuildIndoor:
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
LDA.l GenericKeys : BEQ .normal
|
LDA.l GenericKeys : BEQ .normal
|
||||||
.generic
|
.generic
|
||||||
LDA.b #$00 : STA.l RoomDarkness
|
LDA.b #$00 : STA.l RoomDarkness
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ QuickSwap:
|
|||||||
|
|
||||||
LDA.l QuickSwapFlag : BEQ .done
|
LDA.l QuickSwapFlag : BEQ .done
|
||||||
LDA.w ItemCursor : BEQ .done ; Skip everything if we don't have any items
|
LDA.w ItemCursor : BEQ .done ; Skip everything if we don't have any items
|
||||||
|
INC.w UpdateHUDFlag
|
||||||
LDY.b #$14
|
LDY.b #$14
|
||||||
PHX
|
PHX
|
||||||
XBA ; restore the stashed value
|
XBA ; restore the stashed value
|
||||||
|
|||||||
2
ram.asm
2
ram.asm
@@ -388,7 +388,7 @@ DelayTimer = $7E1CE9 ;
|
|||||||
;
|
;
|
||||||
TextID = $7E1CF0 ; Message ID and page. Word length.
|
TextID = $7E1CF0 ; Message ID and page. Word length.
|
||||||
;
|
;
|
||||||
UpdateHUD = $7E1E03 ; Flag used to mark HUD updates and avoid heavy code segments.
|
UpdateHUDFlag = $7E1E03 ; Flag used to mark HUD updates and avoid heavy code segments.
|
||||||
;
|
;
|
||||||
ToastBuffer = $7E1E0E ; Multiworld buffer. Word length.
|
ToastBuffer = $7E1E0E ; Multiworld buffer. Word length.
|
||||||
;
|
;
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ LoadBombCount16:
|
|||||||
.infinite
|
.infinite
|
||||||
RTL
|
RTL
|
||||||
StoreBombCount:
|
StoreBombCount:
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
PHA : LDA.l InfiniteBombs : BEQ .finite
|
PHA : LDA.l InfiniteBombs : BEQ .finite
|
||||||
.infinite
|
.infinite
|
||||||
PLA : LDA.b #$01 : RTL
|
PLA : LDA.b #$01 : RTL
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ IncrementSmallKeys:
|
|||||||
JSL.l UpdateKeys
|
JSL.l UpdateKeys
|
||||||
PHY : LDY.b #24 : JSL.l AddInventory : PLY
|
PHY : LDY.b #24 : JSL.l AddInventory : PLY
|
||||||
JSL.l HUD_RebuildLong
|
JSL.l HUD_RebuildLong
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
PLX
|
PLX
|
||||||
RTL
|
RTL
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
@@ -106,7 +106,7 @@ IncrementSmallKeysNoPrimary:
|
|||||||
++
|
++
|
||||||
PLP
|
PLP
|
||||||
+
|
+
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
JSL.l HUD_RebuildLong
|
JSL.l HUD_RebuildLong
|
||||||
PLX
|
PLX
|
||||||
RTL
|
RTL
|
||||||
|
|||||||
@@ -179,7 +179,7 @@ CheckOHKO:
|
|||||||
RTS
|
RTS
|
||||||
.change
|
.change
|
||||||
STA.l OHKOCached
|
STA.l OHKOCached
|
||||||
INC.w UpdateHUD
|
INC.w UpdateHUDFlag
|
||||||
REP #$20
|
REP #$20
|
||||||
SEC
|
SEC
|
||||||
RTS
|
RTS
|
||||||
|
|||||||
@@ -108,7 +108,6 @@ Equipment_SearchForEquippedItemLong = $8DE395
|
|||||||
HUD_RebuildLong = $8DFA78
|
HUD_RebuildLong = $8DFA78
|
||||||
HUD_RebuildIndoor_Palace = $8DFA88
|
HUD_RebuildIndoor_Palace = $8DFA88
|
||||||
HUD_RebuildLong2 = $8DFA88
|
HUD_RebuildLong2 = $8DFA88
|
||||||
RebuildHUD_update = $8DFAA5
|
|
||||||
Messaging_Text = $8EEE10
|
Messaging_Text = $8EEE10
|
||||||
AfterDeathCounterOutput = $8E8FD
|
AfterDeathCounterOutput = $8E8FD
|
||||||
Overworld_TileAttr = $8FFD94
|
Overworld_TileAttr = $8FFD94
|
||||||
@@ -153,12 +152,15 @@ Ancilla29_MilestoneItemReceipt_skip_crystal_sfx = $88CAE5
|
|||||||
Ancilla29_MilestoneItemReceipt_no_sparkle = $88CB2E
|
Ancilla29_MilestoneItemReceipt_no_sparkle = $88CB2E
|
||||||
Ancilla_SetOAM_XY = $88F6F3
|
Ancilla_SetOAM_XY = $88F6F3
|
||||||
Ancilla_AddAncilla = $899CCE
|
Ancilla_AddAncilla = $899CCE
|
||||||
|
UpdateHUD = $8DDFA9
|
||||||
DrawProgressIcons = $8DE9C8
|
DrawProgressIcons = $8DE9C8
|
||||||
ItemMenu_DrawEquippedYItem = $8DEB3A
|
ItemMenu_DrawEquippedYItem = $8DEB3A
|
||||||
ItemMenu_DrawEquippedYItem_exit = $8DECE6
|
ItemMenu_DrawEquippedYItem_exit = $8DECE6
|
||||||
ItemMenu_DrawEquipment_dungeonitems = $8DEDCC
|
ItemMenu_DrawEquipment_dungeonitems = $8DEDCC
|
||||||
DrawEquipment = $8DED29
|
DrawEquipment = $8DED29
|
||||||
DrawEquipment_in_a_dungeon = $8DEDFE
|
DrawEquipment_in_a_dungeon = $8DEDFE
|
||||||
|
RebuildHUD = $8DFA90
|
||||||
|
RebuildHUD_update = $8DFAA5
|
||||||
UpdateHUDBuffer_update_item_check_arrows = $8DFB41
|
UpdateHUDBuffer_update_item_check_arrows = $8DFB41
|
||||||
RenderText_DecompressAndDrawSingle = $8EF4FB
|
RenderText_DecompressAndDrawSingle = $8EF4FB
|
||||||
DecompressFontGFX = $8EF572
|
DecompressFontGFX = $8EF572
|
||||||
|
|||||||
Reference in New Issue
Block a user