Hall of Fame sram labels and related constants.

This commit is contained in:
yenatch 2014-06-14 14:24:35 -07:00
parent 53ae0e93fa
commit 81bbab85ac
7 changed files with 77 additions and 63 deletions

View file

@ -10,5 +10,11 @@ D_DOWN EQU %10000000
MAX_LEVEL EQU 100
NUM_MOVES EQU 4
PARTY_LENGTH EQU 6
MONS_PER_BOX EQU 20
NUM_BOXES EQU 12
HOF_MON EQU $10
HOF_TEAM EQU PARTY_LENGTH * HOF_MON
NUM_HOF_TEAMS EQU 50

View file

@ -148,4 +148,6 @@ DEX_DRATINI EQU 147
DEX_DRAGONAIR EQU 148
DEX_DRAGONITE EQU 149
DEX_MEWTWO EQU 150
DEX_MEW EQU 151
DEX_MEW EQU 151
NUM_POKEMON EQU 151

View file

@ -1,7 +1,7 @@
AnimateHallOfFame: ; 701a0 (1c:41a0)
call Func_70423
call ClearScreen
ld c, $64
ld c, 100
call DelayFrames
call LoadFontTilePatterns
call LoadTextBoxTilePatterns
@ -14,8 +14,8 @@ AnimateHallOfFame: ; 701a0 (1c:41a0)
ld hl, rLCDC ; $ff40
set 3, [hl]
xor a
ld hl, wcc5b
ld bc, $60
ld hl, wHallOfFame
ld bc, HOF_TEAM
call FillMemory
xor a
ld [wcfcb], a
@ -49,7 +49,7 @@ AnimateHallOfFame: ; 701a0 (1c:41a0)
ld a, c
ld [wTrainerEngageDistance], a
ld hl, wPartyMon1Level ; wPartyMon1Level
ld bc, $2c
ld bc, wPartyMon2 - wPartyMon1
call AddNTimes
ld a, [hl]
ld [wTrainerFacingDirection], a
@ -66,7 +66,7 @@ AnimateHallOfFame: ; 701a0 (1c:41a0)
ld hl, Coord
ld de, HallOfFameText
call PlaceString
ld c, $b4
ld c, 180
call DelayFrames
call GBFadeOut2
pop bc
@ -75,11 +75,11 @@ AnimateHallOfFame: ; 701a0 (1c:41a0)
.asm_70241
ld a, c
inc a
ld hl, wcc5b
ld bc, $10
ld hl, wHallOfFame
ld bc, HOF_MON
call AddNTimes
ld [hl], $ff
call Func_73b0d
call SaveHallOfFameTeams
xor a
ld [wWhichTrade], a ; wWhichTrade
inc a
@ -283,8 +283,8 @@ DexRatingText: ; 703ff (1c:43ff)
db "@"
Func_70404: ; 70404 (1c:4404)
ld hl, wcc5b
ld bc, $10
ld hl, wHallOfFame
ld bc, HOF_MON
ld a, [wTrainerEngageDistance]
call AddNTimes
ld a, [wWhichTrade] ; wWhichTrade

View file

@ -16,9 +16,9 @@ PKMNLeaguePC: ; 0x7657e
ld [wcd42], a
ld a, [wd5a2]
ld b, a
cp a, $33
cp NUM_HOF_TEAMS + 1
jr c, .first
ld b, $32
ld b, NUM_HOF_TEAMS
sub b
ld [wcd42], a
.first
@ -27,7 +27,7 @@ PKMNLeaguePC: ; 0x7657e
push bc
ld a, [wTrainerScreenX]
ld [wWhichTrade], a
callba Func_73b3f
callba LoadHallOfFameTeams
call Func_765e5
pop bc
jr c, .second
@ -49,28 +49,28 @@ PKMNLeaguePC: ; 0x7657e
jp GBPalNormal
Func_765e5: ; 765e5 (1d:65e5)
ld c, 6
.third
ld c, PARTY_LENGTH
.loop
push bc
call Func_76610
call WaitForTextScrollButtonPress
ld a, [hJoyHeld]
bit 1, a
jr nz, .fifth
ld hl, wcc6b
ld de, wcc5b
ld bc, $0050
jr nz, .exit
ld hl, wHallOfFame + HOF_MON
ld de, wHallOfFame
ld bc, HOF_TEAM - HOF_MON
call CopyData
pop bc
ld a, [wcc5b]
cp a, $FF
jr z, .fourth
ld a, [wHallOfFame + 0]
cp $ff
jr z, .done
dec c
jr nz, .third
.fourth
jr nz, .loop
.done
and a
ret
.fifth
.exit
pop bc
scf
ret
@ -78,7 +78,7 @@ Func_765e5: ; 765e5 (1d:65e5)
Func_76610: ; 76610 (1d:6610)
call GBPalWhiteOutWithDelay3
call ClearScreen
ld hl, wcc5b
ld hl, wHallOfFame
ld a, [hli]
ld [wWhichTrade], a
ld [wcf91], a

View file

@ -628,38 +628,40 @@ SAVCheckRandomID: ;$7ad1
ld [$0000],a
ret
Func_73b0d: ; 73b0d (1c:7b0d)
SaveHallOfFameTeams: ; 73b0d (1c:7b0d)
ld a, [wd5a2]
dec a
cp $32
cp NUM_HOF_TEAMS
jr nc, .asm_73b28
ld hl, $a598
ld bc, $60
ld hl, sHallOfFame
ld bc, HOF_TEAM
call AddNTimes
ld e, l
ld d, h
ld hl, wcc5b
ld bc, $60
jr CopyToSRAM0
.asm_73b28
ld hl, $a5f8
ld de, $a598
ld bc, $1260
call CopyToSRAM0
ld hl, wcc5b
ld de, $b7f8
ld bc, $60
jr CopyToSRAM0
ld bc, HOF_TEAM
jr HallOfFame_Copy
Func_73b3f: ; 73b3f (1c:7b3f)
ld hl, $a598
ld bc, $60
.asm_73b28
ld hl, sHallOfFame + HOF_TEAM
ld de, sHallOfFame
ld bc, HOF_TEAM * (NUM_HOF_TEAMS - 1)
call HallOfFame_Copy
ld hl, wcc5b
ld de, sHallOfFame + HOF_TEAM * (NUM_HOF_TEAMS - 1)
ld bc, HOF_TEAM
jr HallOfFame_Copy
LoadHallOfFameTeams: ; 73b3f (1c:7b3f)
ld hl, sHallOfFame
ld bc, HOF_TEAM
ld a, [wWhichTrade] ; wWhichTrade
call AddNTimes
ld de, wcc5b
ld bc, $60
ld bc, HOF_TEAM
; fallthrough
CopyToSRAM0: ; 73b51 (1c:7b51)
HallOfFame_Copy: ; 73b51 (1c:7b51)
ld a, $a
ld [$0], a
ld a, $1

View file

@ -284,7 +284,7 @@ LoadFrontSpriteByMonIndex:: ; 1389 (0:1389)
and a
pop hl
jr z, .invalidDexNumber ; dex #0 invalid
cp 151 + 1
cp NUM_POKEMON + 1
jr c, .validDexNumber ; dex >#151 invalid
.invalidDexNumber
ld a, RHYDON ; $1

View file

@ -287,10 +287,13 @@ wTrainerHeaderFlagBit:: ; cc55
wcc57:: ds 1
wcc58:: ds 3
wHallOfFame:: ; cc5b
wcc5b:: ds 1
wcc5c:: ds 1
wcc5d:: ds 1
wcc5e:: ds 13
wcc6b:: ds 14
wcc79:: ds 30
wcc97:: ds 10
@ -1066,7 +1069,7 @@ wPlayerName:: ; d158
ds 11
wPartyCount:: ds 1 ; d163
wPartySpecies:: ds 6 ; d164
wPartySpecies:: ds PARTY_LENGTH ; d164
wPartyEnd:: ds 1 ; d16a
wPartyMons::
@ -1077,16 +1080,16 @@ wPartyMon4:: party_struct wPartyMon4 ; d1ef
wPartyMon5:: party_struct wPartyMon5 ; d21b
wPartyMon6:: party_struct wPartyMon6 ; d247
wPartyMonOT:: ds 11 * 6 ; d273
wPartyMonNicks:: ds 11 * 6 ; d2b5
wPartyMonOT:: ds 11 * PARTY_LENGTH ; d273
wPartyMonNicks:: ds 11 * PARTY_LENGTH ; d2b5
wPokedexOwned:: ; d2f7
flag_array 151
flag_array NUM_POKEMON
wPokedexOwnedEnd::
wPokedexSeen:: ; d30a
flag_array 151
flag_array NUM_POKEMON
wPokedexSeenEnd::
@ -1744,7 +1747,7 @@ W_GRASSMONS:: ; d888
wEnemyPartyCount:: ds 1 ; d89c
wEnemyPartyMons:: ds 6 + 1 ; d89d
wEnemyPartyMons:: ds PARTY_LENGTH + 1 ; d89d
wEnemyMons:: ; d8a4
wEnemyMon1:: party_struct wEnemyMon1
@ -1754,8 +1757,8 @@ wEnemyMon4:: party_struct wEnemyMon4
wEnemyMon5:: party_struct wEnemyMon5
wEnemyMon6:: party_struct wEnemyMon6
wEnemyMonOT:: ds 11 * 6 ; d9ac
wEnemyMonNicks:: ds 11 * 6 ; d9ee
wEnemyMonOT:: ds 11 * PARTY_LENGTH ; d9ac
wEnemyMonNicks:: ds 11 * PARTY_LENGTH ; d9ee
W_TRAINERHEADERPTR:: ; da30
@ -1815,12 +1818,13 @@ wStack:: ; dfff
ds -$100
SECTION "Sprite Buffers", SRAM
SECTION "Sprite Buffers", SRAM, BANK[0]
S_SPRITEBUFFER0:: ; a000
ds SPRITEBUFFERSIZE
S_SPRITEBUFFER1:: ; a188
ds SPRITEBUFFERSIZE
S_SPRITEBUFFER2:: ; a310
ds SPRITEBUFFERSIZE
S_SPRITEBUFFER0:: ds SPRITEBUFFERSIZE ; a000
S_SPRITEBUFFER1:: ds SPRITEBUFFERSIZE ; a188
S_SPRITEBUFFER2:: ds SPRITEBUFFERSIZE ; a310
ds $100
sHallOfFame:: ds HOF_TEAM * NUM_HOF_TEAMS ; a598