Initial total item count HUD
Initial 100% item collection Ganon vulnerability
This commit is contained in:
17
goalitem.asm
17
goalitem.asm
@@ -39,6 +39,8 @@ CheckGanonVulnerability:
|
|||||||
dw .crystals_and_bosses
|
dw .crystals_and_bosses
|
||||||
dw .bosses_only
|
dw .bosses_only
|
||||||
dw .all_dungeons_no_agahnim
|
dw .all_dungeons_no_agahnim
|
||||||
|
dw .all_items
|
||||||
|
dw .all_items_all_dungeons
|
||||||
|
|
||||||
; 00 = always vulnerable
|
; 00 = always vulnerable
|
||||||
.vulnerable
|
.vulnerable
|
||||||
@@ -92,6 +94,21 @@ CheckGanonVulnerability:
|
|||||||
.bosses_only
|
.bosses_only
|
||||||
JMP CheckForCrystalBossesDefeated
|
JMP CheckForCrystalBossesDefeated
|
||||||
|
|
||||||
|
; 09 = 100% item collection rate
|
||||||
|
.all_items
|
||||||
|
REP #$20
|
||||||
|
LDA.l TotalItemCounter : CMP.l TotalItemCount
|
||||||
|
SEP #$20
|
||||||
|
RTS
|
||||||
|
|
||||||
|
; 0A = 100% item collection rate and all dungeons
|
||||||
|
.all_items_all_dungeons
|
||||||
|
REP #$20
|
||||||
|
LDA.l TotalItemCounter : CMP.l TotalItemCount
|
||||||
|
SEP #$20
|
||||||
|
BCC .fail
|
||||||
|
BRA .all_dungeons
|
||||||
|
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
GetRequiredCrystalsForTower:
|
GetRequiredCrystalsForTower:
|
||||||
BEQ + : JSL.l BreakTowerSeal_ExecuteSparkles : + ; thing we wrote over
|
BEQ + : JSL.l BreakTowerSeal_ExecuteSparkles : + ; thing we wrote over
|
||||||
|
|||||||
32
newhud.asm
32
newhud.asm
@@ -162,6 +162,38 @@ NewDrawHud:
|
|||||||
.doneprize
|
.doneprize
|
||||||
STA.l HUDPrizeIcon
|
STA.l HUDPrizeIcon
|
||||||
|
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
; Draw pendant/crystal icon
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
LDA.l ItemCounterHUD : AND.w #$00FF : BNE + : JMP.w .item_counter_done : +
|
||||||
|
LDA.w #$2830 : STA.l HUDGoalIndicator+8 ; draw slash
|
||||||
|
LDA.l TotalItemCount : CMP.w #1000 : BCC .item_three_digits
|
||||||
|
JSR.w HudHexToDec4Digit
|
||||||
|
LDX.b Scrap04 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+10 ; 1000's digit
|
||||||
|
LDX.b Scrap05 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+12 ; 100's digit
|
||||||
|
LDX.b Scrap06 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+14 ; 10's digit
|
||||||
|
LDX.b Scrap07 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+16 ; 1's digit
|
||||||
|
|
||||||
|
LDA.l TotalItemCounter
|
||||||
|
JSR.w HudHexToDec4Digit
|
||||||
|
LDX.b Scrap04 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+0 ; 1000's digit
|
||||||
|
LDX.b Scrap05 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+2 ; 100's digit
|
||||||
|
LDX.b Scrap06 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+4 ; 10's digit
|
||||||
|
LDX.b Scrap07 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+6 ; 1's digit
|
||||||
|
BRA .item_counter_done
|
||||||
|
.item_three_digits
|
||||||
|
JSR.w HudHexToDec4Digit
|
||||||
|
LDX.b Scrap05 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+10 ; 100's digit
|
||||||
|
LDX.b Scrap06 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+12 ; 10's digit
|
||||||
|
LDX.b Scrap07 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+14 ; 1's digit
|
||||||
|
|
||||||
|
LDA.l TotalItemCounter
|
||||||
|
JSR.w HudHexToDec4Digit
|
||||||
|
LDX.b Scrap05 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+2 ; 100's digit
|
||||||
|
LDX.b Scrap06 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+4 ; 10's digit
|
||||||
|
LDX.b Scrap07 : TXA : ORA.w #$2400 : STA.l HUDGoalIndicator+6 ; 1's digit
|
||||||
|
.item_counter_done
|
||||||
|
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
; Draw Magic Meter
|
; Draw Magic Meter
|
||||||
DrawMagicMeter_mp_tilemap = $0DFE0F
|
DrawMagicMeter_mp_tilemap = $0DFE0F
|
||||||
|
|||||||
11
tables.asm
11
tables.asm
@@ -118,7 +118,9 @@ org $308038 ; PC 0x180038
|
|||||||
LampConeSewers:
|
LampConeSewers:
|
||||||
db #$01 ; #$00 = Off - #$01 = On (default)
|
db #$01 ; #$00 = Off - #$01 = On (default)
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
; 0x180039 (Unused)
|
org $308039 ; PC 0x180039
|
||||||
|
ItemCounterHUD:
|
||||||
|
db $00 ; $00 = Off | $01 = Display TotalItemCounter / TotalItemCount display on HUD
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
org $30803A ; PC 0x18003A-0x18003C
|
org $30803A ; PC 0x18003A-0x18003C
|
||||||
MapHUDMode:
|
MapHUDMode:
|
||||||
@@ -144,6 +146,9 @@ db #$00
|
|||||||
; #$06 = Light Speed
|
; #$06 = Light Speed
|
||||||
; #$07 = Require All Crystals and Crystal Bosses
|
; #$07 = Require All Crystals and Crystal Bosses
|
||||||
; #$08 = Require All Crystal Bosses only
|
; #$08 = Require All Crystal Bosses only
|
||||||
|
; #$09 = Require All Dungeons No Agahnim
|
||||||
|
; #$0A = Require 100% Item Collection
|
||||||
|
; #$0B = Require 100% Item Collection and All Dungeons
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
org $30803F ; PC 0x18003F
|
org $30803F ; PC 0x18003F
|
||||||
HammerableGanon:
|
HammerableGanon:
|
||||||
@@ -928,6 +933,10 @@ org $308195 ; PC 0x180195
|
|||||||
ByrnaCaveSpikeDamage:
|
ByrnaCaveSpikeDamage:
|
||||||
db #$08 ; #$08 = 1 Heart (default) - #$02 = 1/4 Heart
|
db #$08 ; #$08 = 1 Heart (default) - #$02 = 1/4 Heart
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
org $308196 ; PC 0x180196-0x180197
|
||||||
|
TotalItemCount: ; Total item count for HUD. Only counts items that use "item get" animation.
|
||||||
|
dw $00D8 ; 216
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
; 0x180196 - 0x1801FF (unused)
|
; 0x180196 - 0x1801FF (unused)
|
||||||
;================================================================================
|
;================================================================================
|
||||||
org $308200 ; PC 0x180200 - 0x18020B
|
org $308200 ; PC 0x180200 - 0x18020B
|
||||||
|
|||||||
Reference in New Issue
Block a user