summaryrefslogtreecommitdiff
path: root/engine/overworld/variables.asm
diff options
context:
space:
mode:
Diffstat (limited to 'engine/overworld/variables.asm')
-rwxr-xr-xengine/overworld/variables.asm80
1 files changed, 42 insertions, 38 deletions
diff --git a/engine/overworld/variables.asm b/engine/overworld/variables.asm
index 6483232e..6f14c549 100755
--- a/engine/overworld/variables.asm
+++ b/engine/overworld/variables.asm
@@ -34,54 +34,58 @@ _GetVarAction::
ret
.VarActionTable:
- dwb wStringBuffer2, RETVAR_STRBUF2
- dwb wPartyCount, RETVAR_STRBUF2
- dwb .BattleResult, RETVAR_EXECUTE
- dwb wBattleType, RETVAR_ADDR_DE
- dwb wTimeOfDay, RETVAR_STRBUF2
- dwb .CountCaughtMons, RETVAR_EXECUTE
- dwb .CountSeenMons, RETVAR_EXECUTE
- dwb .CountBadges, RETVAR_EXECUTE
- dwb wPlayerState, RETVAR_ADDR_DE
- dwb .PlayerFacing, RETVAR_EXECUTE
- dwb hHours, RETVAR_STRBUF2
- dwb .DayOfWeek, RETVAR_EXECUTE
- dwb wMapGroup, RETVAR_STRBUF2
- dwb wMapNumber, RETVAR_STRBUF2
- dwb .UnownCaught, RETVAR_EXECUTE
- dwb wEnvironment, RETVAR_STRBUF2
- dwb .BoxFreeSpace, RETVAR_EXECUTE
- dwb wBugContestMinsRemaining, RETVAR_STRBUF2
- dwb wXCoord, RETVAR_STRBUF2
- dwb wYCoord, RETVAR_STRBUF2
- dwb wSpecialPhoneCallID, RETVAR_STRBUF2
- dwb NULL, RETVAR_STRBUF2
+; entries correspond to VAR_* constants
+ ; RETVAR_STRBUF2: copy [de] to wStringBuffer2
+ ; RETVAR_ADDR_DE: return address in de
+ ; RETVAR_EXECUTE: call function
+ dwb wStringBuffer2, RETVAR_STRBUF2
+ dwb wPartyCount, RETVAR_STRBUF2
+ dwb .BattleResult, RETVAR_EXECUTE
+ dwb wBattleType, RETVAR_ADDR_DE
+ dwb wTimeOfDay, RETVAR_STRBUF2
+ dwb .CountCaughtMons, RETVAR_EXECUTE
+ dwb .CountSeenMons, RETVAR_EXECUTE
+ dwb .CountBadges, RETVAR_EXECUTE
+ dwb wPlayerState, RETVAR_ADDR_DE
+ dwb .PlayerFacing, RETVAR_EXECUTE
+ dwb hHours, RETVAR_STRBUF2
+ dwb .DayOfWeek, RETVAR_EXECUTE
+ dwb wMapGroup, RETVAR_STRBUF2
+ dwb wMapNumber, RETVAR_STRBUF2
+ dwb .UnownCaught, RETVAR_EXECUTE
+ dwb wEnvironment, RETVAR_STRBUF2
+ dwb .BoxFreeSpace, RETVAR_EXECUTE
+ dwb wBugContestMinsRemaining, RETVAR_STRBUF2
+ dwb wXCoord, RETVAR_STRBUF2
+ dwb wYCoord, RETVAR_STRBUF2
+ dwb wSpecialPhoneCallID, RETVAR_STRBUF2
+ dwb NULL, RETVAR_STRBUF2
-.CountCaughtMons: ; 41cf
+.CountCaughtMons:
; Caught mons.
ld hl, wPokedexCaught
- ld b, $20
+ ld b, wEndPokedexCaught - wPokedexCaught
call CountSetBits
- ld a, [wd151]
+ ld a, [wNumSetBits]
jp .loadstringbuffer2
-.CountSeenMons: ; 41dd
+.CountSeenMons:
; Seen mons.
ld hl, wPokedexSeen
- ld b, $20
+ ld b, wEndPokedexSeen - wPokedexSeen
call CountSetBits
- ld a, [wd151]
+ ld a, [wNumSetBits]
jp .loadstringbuffer2
-.CountBadges: ; 41eb
+.CountBadges:
; Number of owned badges.
ld hl, wBadges
ld b, 2
call CountSetBits
- ld a, [wd151]
+ ld a, [wNumSetBits]
jp .loadstringbuffer2
-.PlayerFacing: ; 41f9
+.PlayerFacing:
; The direction the player is facing.
ld a, [wPlayerDirection]
and $c
@@ -89,18 +93,18 @@ _GetVarAction::
rrca
jp .loadstringbuffer2
-.DayOfWeek: ; 4203
+.DayOfWeek:
; The day of the week.
call GetWeekday
jp .loadstringbuffer2
-.UnownCaught: ; 4209
+.UnownCaught:
; Number of unique Unown caught.
- call CountUnown ; gold: c5ac | silver: c5aa
+ call CountUnown
ld a, b
jp .loadstringbuffer2
-.BoxFreeSpace: ; 4210
+.BoxFreeSpace:
; Remaining slots in the current box.
ld a, BANK(sBoxCount)
call OpenSRAM
@@ -112,8 +116,8 @@ _GetVarAction::
ld a, b
jp .loadstringbuffer2
-.BattleResult: ; 4223
+.BattleResult:
ld a, [wBattleResult]
- and $7f
+ and $ff ^ BATTLERESULT_BITMASK
jp .loadstringbuffer2
-; 422b
+