Merge branch '16_bit_collection_rate' of https://github.com/CaitSith2/z3randomizer into InvCountMerge
This commit is contained in:
@@ -8,7 +8,7 @@ DrHudOverride:
|
||||
HudAdditions:
|
||||
{
|
||||
lda.l DRFlags : and #$0008 : beq ++
|
||||
lda $7EF423 : and #$00ff
|
||||
lda $7EF423
|
||||
jsr HudHexToDec4DigitCopy
|
||||
LDX.b $05 : TXA : ORA.w #$2400 : STA !GOAL_DRAW_ADDRESS+10 ; draw 100's digit
|
||||
LDX.b $06 : TXA : ORA.w #$2400 : STA !GOAL_DRAW_ADDRESS+12 ; draw 10's digit
|
||||
|
||||
@@ -340,13 +340,19 @@ AddInventory:
|
||||
|
||||
LDA !MULTIWORLD_RECEIVING_ITEM : CMP #$01 : BEQ ++
|
||||
LDA $7EF355 : BNE + ; Check for Boots
|
||||
REP #$20
|
||||
LDA $7EF432 : INC : STA $7EF432 ; Increment Pre Boots Counter
|
||||
SEP #$20
|
||||
+
|
||||
|
||||
LDA $7EF353 : BNE + ; Check for Mirror
|
||||
LDA $7EF433 : INC : STA $7EF433 ; Increment Pre Mirror Counter
|
||||
REP #$20
|
||||
LDA $7EF468 : INC : STA $7EF468 ; Increment Pre Mirror Counter
|
||||
SEP #$20
|
||||
+
|
||||
REP #$20
|
||||
LDA $7EF423 : INC : STA $7EF423 ; Increment Item Total
|
||||
SEP #$20
|
||||
++
|
||||
|
||||
.itemCounts
|
||||
@@ -409,6 +415,7 @@ AddInventory:
|
||||
BRL .done
|
||||
+ CPY.b #$20 : BNE + ; Crystal
|
||||
JSR .incrementCrystal
|
||||
JSR .setDungeonCompletion
|
||||
BRL .done
|
||||
+ CPY.b #$21 : BNE + ; Bug Net
|
||||
JSR .incrementY
|
||||
@@ -451,6 +458,7 @@ AddInventory:
|
||||
+ CPY.b #$37 : !BLT + ; Items $37 - $39 - Pendants
|
||||
CPY.b #$3A : !BGE +
|
||||
JSR .incrementPendant
|
||||
JSR .setDungeonCompletion
|
||||
BRL .done
|
||||
+ CPY.b #$3A : !BLT + ; Items $3A - $3B - Bow & Silver Arrows
|
||||
CPY.b #$3C : !BGE +
|
||||
@@ -650,7 +658,7 @@ RTS
|
||||
RTS
|
||||
|
||||
.incrementMail
|
||||
LDA $7EF424 : !ADD #$40 : STA $7EF424
|
||||
LDA $7EF46A : !ADD #$40 : STA $7EF46A
|
||||
RTS
|
||||
|
||||
.incrementKeyLong
|
||||
@@ -659,9 +667,9 @@ RTL
|
||||
|
||||
.incrementKey
|
||||
PHA : PHX
|
||||
LDA $7EF424 : INC : AND #$3F : TAX
|
||||
LDA $7EF424 : AND #$C0 : STA $7EF424
|
||||
TXA : ORA $7EF424 : STA $7EF424
|
||||
LDA $7EF46A : INC : AND #$3F : TAX
|
||||
LDA $7EF46A : AND #$C0 : STA $7EF46A
|
||||
TXA : ORA $7EF46A : STA $7EF46A
|
||||
PLX : PLA
|
||||
RTS
|
||||
|
||||
@@ -709,6 +717,33 @@ RTL
|
||||
%BottomHalf($7EF426)
|
||||
+
|
||||
RTS
|
||||
|
||||
.setDungeonCompletion
|
||||
LDA $040C
|
||||
CMP #$FF : BEQ +
|
||||
LSR : AND #$0F : CMP #$08 : !BGE ++
|
||||
JSR .valueShift
|
||||
ORA $7EF46B : STA $7EF46B
|
||||
BRA +
|
||||
++
|
||||
!SUB #$08
|
||||
JSR .valueShift
|
||||
BIT.b #$C0 : BEQ +++ : LDA.b #$C0 : +++ ; Make Hyrule Castle / Sewers Count for Both
|
||||
ORA $7EF46C : STA $7EF46C
|
||||
+
|
||||
RTS
|
||||
|
||||
.valueShift
|
||||
PHX
|
||||
TAX : LDA.b #$01
|
||||
-
|
||||
CPX #$00 : BEQ +
|
||||
ASL
|
||||
DEX
|
||||
BRA -
|
||||
+
|
||||
PLX
|
||||
RTS
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
;================================================================================
|
||||
; Four Digit Rupees
|
||||
;--------------------------------------------------------------------------------
|
||||
Draw4DigitRupees:
|
||||
LDA $1B : AND.w #$00FF : BEQ .outdoors ; skip if outdoors
|
||||
.indoors
|
||||
LDA $A0 : BNE .normal ; skip except for ganon's room
|
||||
;LDA #$246E : STA $7EC712
|
||||
;LDA #$246F : STA $7EC714
|
||||
LDA $7EF423 : AND #$00FF
|
||||
BRA .print
|
||||
.outdoors
|
||||
.normal
|
||||
LDA $7EF362
|
||||
.print
|
||||
JSL.l HexToDec
|
||||
LDA $7F5004 : AND.w #$00FF : ORA.w #$2400 : STA $7EC750
|
||||
LDA $7F5005 : AND.w #$00FF : ORA.w #$2400 : STA $7EC752
|
||||
LDA $7F5006 : AND.w #$00FF : ORA.w #$2400 : STA $7EC754
|
||||
LDA $7F5007 : AND.w #$00FF : ORA.w #$2400 : STA $7EC756
|
||||
RTL
|
||||
;================================================================================
|
||||
44
stats.asm
44
stats.asm
@@ -16,10 +16,6 @@
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF423 - item counter
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF424 mmkkkkkk
|
||||
; m - mail counter
|
||||
; k - small keys
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF425w[2] 1111 2222 3333 4444
|
||||
; 1 - lvl 1 sword bosses
|
||||
; 2 - lvl 2 sword bosses
|
||||
@@ -51,11 +47,9 @@
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF430w[2] - loop frame counter (high)
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF432 - locations before boots
|
||||
; $7EF432w[2] - locations before boots
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF433 - locations before mirror
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF434-7EF439 - free space
|
||||
; $7EF434-7EF439 - FORMER COMPASS COUNTERS. DO NOT REUSE.
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF43A - times mirrored outdoors
|
||||
;--------------------------------------------------------------------------------
|
||||
@@ -114,8 +108,37 @@
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF466w[2] - mirror timestamp (high)
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF468w[2] - locations before mirror
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF46A mmkkkkkk
|
||||
; m - mail counter
|
||||
; k - small keys
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF46Bw[2] - Dungeon prizes collected by dungeon location.
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF46D - 7EF49F - Free space
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4A0 - 7EF4A7 - Service Request
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4A8 - 7EF4AF - Free space
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4B0 - 7EF4BF - Absorbed keys, indexed by 040C >> 1
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4C0 - 7EF4CF - locations checked, indexed by 040C >> 1
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4D0 - 7EF4DA - Multiworld controls
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4DB - 7EF4DF - Free space
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4E0 - 7EF4EF - Collected Keys, indexed by 040C >> 1
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4F0 - Fresh File Marker.
|
||||
;--------------------------------------------------------------------------------
|
||||
; $7EF4F1 - 7EF4FD - Free space
|
||||
;--------------------------------------------------------------------------------
|
||||
; 7EF4FEw[2] - Save Checksum
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
|
||||
;--------------------------------------------------------------------------------
|
||||
!LOCK_STATS = "$7EF443"
|
||||
@@ -324,7 +347,9 @@ RTL
|
||||
DecrementItemCounter:
|
||||
PHA
|
||||
LDA !LOCK_STATS : BNE +
|
||||
REP #$20
|
||||
LDA !ITEM_TOTAL : DEC : STA !ITEM_TOTAL
|
||||
SEP #$20
|
||||
+
|
||||
PLA
|
||||
RTL
|
||||
@@ -385,8 +410,9 @@ IndoorSubtileTransitionCounter:
|
||||
STZ $0642
|
||||
JMP StatTransitionCounter
|
||||
;--------------------------------------------------------------------------------
|
||||
!DUNGEON_PRIZE_COLLECTED = "$7EF46B"
|
||||
!CHEST_COUNTER = "$7EF442"
|
||||
!MAIL_COUNTER = "$7EF424" ; mmkkkkkk
|
||||
!MAIL_COUNTER = "$7EF46A" ; mmkkkkkk
|
||||
!BOSS_KILLS = "$7F5037"
|
||||
!SWORD_KILLS_1 = "$7EF425"
|
||||
!SWORD_KILLS_2 = "$7EF426"
|
||||
|
||||
@@ -16,5 +16,5 @@
|
||||
%AddStat($7EF453, 0, 0, 08, 3, !FAERIE_REVIVALS_X, !FAERIE_REVIVALS_Y)
|
||||
%AddStat($7EF444, 1, 8, 32, 4, !TOTAL_MENU_TIME_X, !TOTAL_MENU_TIME_Y)
|
||||
%AddStat($7F5038, 1, 0, 32, 4, !TOTAL_LAG_TIME_X, !TOTAL_LAG_TIME_Y)
|
||||
%AddStat($7EF423, 0, 0, 08, 3, !COLLECTION_RATE_X, !COLLECTION_RATE_Y)
|
||||
%AddStat($7EF423, 0, 0, 10, 3, !COLLECTION_RATE_X, !COLLECTION_RATE_Y)
|
||||
%AddStat($7EF43E, 1, 0, 32, 4, !TOTAL_TIME_X, !TOTAL_TIME_Y)
|
||||
Reference in New Issue
Block a user