mirror of
https://github.com/pret/pokepinball.git
synced 2026-04-25 07:19:49 -05:00
Included more label names for cursor, scroll bar, and pokemon animation.
This commit is contained in:
parent
1611b456e4
commit
e4aa8bfc47
|
|
@ -42,7 +42,7 @@ LoadPokedexScreen: ; 0x2800e
|
|||
xor a
|
||||
ld [wCurPokedexIndex], a
|
||||
ld [wPokedexOffset], a
|
||||
ld [wd95b], a
|
||||
ld [wPokedexBlinkingCursorAndScrollBarIndicator], a
|
||||
ld [wd95c], a
|
||||
ld [wd960], a
|
||||
ld [wd961], a
|
||||
|
|
@ -50,7 +50,7 @@ LoadPokedexScreen: ; 0x2800e
|
|||
ld a, $1
|
||||
ld [wd862], a
|
||||
call ClearSpriteBuffer
|
||||
call Func_285db
|
||||
call DisplayPokedexScrollBarAndCursor
|
||||
call Func_28931
|
||||
call Func_289c8
|
||||
call Func_28a15
|
||||
|
|
@ -153,7 +153,7 @@ MainPokedexScreen: ; 0x280fe
|
|||
.checkIfBPressed
|
||||
bit BIT_B_BUTTON, a
|
||||
jr z, .asm_2814f
|
||||
call Func_285db
|
||||
call DisplayPokedexScrollBarAndCursor
|
||||
ld a, $4
|
||||
ld [wScreenState], a
|
||||
ret
|
||||
|
|
@ -179,7 +179,7 @@ MainPokedexScreen: ; 0x280fe
|
|||
ld [wd960], a
|
||||
call nz, Func_28add
|
||||
.asm_28174
|
||||
call Func_285db
|
||||
call DisplayPokedexScrollBarAndCursor
|
||||
ret
|
||||
|
||||
MonInfoPokedexScreen: ; 0x28178
|
||||
|
|
@ -203,7 +203,7 @@ MonInfoPokedexScreen: ; 0x28178
|
|||
jr z, .asm_281a2
|
||||
.asm_28196
|
||||
call Func_288a2
|
||||
call Func_285db
|
||||
call DisplayPokedexScrollBarAndCursor
|
||||
ld a, $1
|
||||
ld [wScreenState], a
|
||||
ret
|
||||
|
|
@ -841,14 +841,14 @@ Func_285ca: ; 0x285ca
|
|||
ld a, [wPressedButtonsPersistent]
|
||||
ret
|
||||
|
||||
Func_285db: ; 0x285db
|
||||
DisplayPokedexScrollBarAndCursor: ; 0x285db
|
||||
ld a, [wCurPokedexIndex]
|
||||
ld c, a
|
||||
ld b, $0
|
||||
ld hl, wPokedexFlags
|
||||
add hl, bc
|
||||
bit 1, [hl] ; has pokemon been seen or captured?
|
||||
call nz, Func_287e7
|
||||
call nz, AnimateMonSpriteIfStartIsPressed
|
||||
ld bc, $8c38
|
||||
ld a, SPRITE_DEX_SCROLLBAR_TOPPER_0
|
||||
call LoadSpriteData
|
||||
|
|
@ -859,54 +859,59 @@ Func_285db: ; 0x285db
|
|||
ld a, SPRITE_DEX_SCROLLBAR_TOPPER_2
|
||||
call LoadSpriteData
|
||||
call DrawCornerInfoPokedexScreen
|
||||
; determine where to draw the right hand side scroll bar
|
||||
ld a, [wCurPokedexIndex]
|
||||
ld c, a
|
||||
ld b, $0
|
||||
ld hl, DexScrollBarOffsets
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
add $49
|
||||
add $49 ; y-coordinate shift of scroll bar
|
||||
ld c, a
|
||||
ld b, $90
|
||||
ld a, [wd95b]
|
||||
ld b, $90 ; x-coordinate shift of scroll bar
|
||||
ld a, [wPokedexBlinkingCursorAndScrollBarIndicator]
|
||||
srl a
|
||||
srl a
|
||||
and $3
|
||||
and $3 ; get a number between 0 - 3
|
||||
ld e, a
|
||||
ld d, $0
|
||||
ld hl, DexScrollBarSpriteIds
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
call LoadSpriteData
|
||||
; check if moving the cursor up has caused the window to shift
|
||||
ld a, [wCurPokedexIndex]
|
||||
ld hl, wPokedexOffset
|
||||
sub [hl]
|
||||
jr nc, .asm_2863b
|
||||
jr nc, .windowDoesNotMoveUp
|
||||
dec [hl]
|
||||
ld a, $1
|
||||
ld [wd95d], a
|
||||
ld a, 1
|
||||
ld [wPokedexWindowWasShifted], a
|
||||
xor a
|
||||
jr .asm_28647
|
||||
jr .decideCursorSprite
|
||||
|
||||
.asm_2863b
|
||||
cp $5
|
||||
jr c, .asm_28647
|
||||
ld a, $1
|
||||
ld [wd95d], a
|
||||
.windowDoesNotMoveUp
|
||||
cp 5
|
||||
jr c, .decideCursorSprite
|
||||
; if scrolling down moves the window
|
||||
ld a, 1
|
||||
ld [wPokedexWindowWasShifted], a
|
||||
inc [hl]
|
||||
ld a, $4
|
||||
.asm_28647
|
||||
.decideCursorSprite
|
||||
ld c, a
|
||||
push bc
|
||||
ldh a, [hJoypadState]
|
||||
and a
|
||||
ld a, [wd95b]
|
||||
jr z, .asm_28652
|
||||
ld a, [wPokedexBlinkingCursorAndScrollBarIndicator]
|
||||
jr z, .wasJoyHeld
|
||||
xor a
|
||||
.asm_28652
|
||||
.wasJoyHeld
|
||||
inc a
|
||||
ld [wd95b], a
|
||||
bit 3, a
|
||||
ld [wPokedexBlinkingCursorAndScrollBarIndicator], a
|
||||
; Every 16th time reaching this loop, the sprite will change (blinking),
|
||||
; unless a button is pressed. Hence why bit 3 is tested.
|
||||
bit 3, a
|
||||
jr nz, .asm_28667
|
||||
swap c
|
||||
ld a, c
|
||||
|
|
@ -1007,13 +1012,13 @@ Func_286dd: ; 0x286dd
|
|||
pop hl
|
||||
pop bc
|
||||
.asm_286ff
|
||||
ld a, [wd95d]
|
||||
ld a, [wPokedexWindowWasShifted]
|
||||
and a
|
||||
ret z
|
||||
ld a, [wd95c]
|
||||
and a
|
||||
jr nz, .asm_2870d
|
||||
ld [wd95d], a
|
||||
ld [wPokedexWindowWasShifted], a
|
||||
.asm_2870d
|
||||
ld a, c
|
||||
and a
|
||||
|
|
@ -1035,7 +1040,7 @@ Func_286dd: ; 0x286dd
|
|||
|
||||
Func_28721: ; 0x28721
|
||||
pop hl
|
||||
ld a, [wd95d]
|
||||
ld a, [wPokedexWindowWasShifted]
|
||||
and a
|
||||
ret z
|
||||
ld a, c
|
||||
|
|
@ -1085,7 +1090,7 @@ Func_28721: ; 0x28721
|
|||
|
||||
Func_28765: ; 0x28765
|
||||
pop hl
|
||||
ld a, [wd95d]
|
||||
ld a, [wPokedexWindowWasShifted]
|
||||
and a
|
||||
ret z
|
||||
ld a, c
|
||||
|
|
@ -1170,7 +1175,7 @@ BGMapLocations_287c7:
|
|||
dw vBGWin + $387
|
||||
dw vBGWin + $3C7
|
||||
|
||||
Func_287e7: ; 0x287e7
|
||||
AnimateMonSpriteIfStartIsPressed: ; 0x287e7
|
||||
ld a, [wd960]
|
||||
and a
|
||||
ret z
|
||||
|
|
@ -1241,7 +1246,7 @@ Func_2885c: ; 0x2885c
|
|||
ld hl, wPokedexFlags
|
||||
add hl, bc
|
||||
bit 1, [hl]
|
||||
call nz, Func_287e7
|
||||
call nz, AnimateMonSpriteIfStartIsPressed
|
||||
ld bc, $8888
|
||||
ld a, SPRITE_DEX_SCROLLBAR_TOPPER_2
|
||||
call LoadSpriteData
|
||||
|
|
@ -1362,7 +1367,7 @@ Func_28931: ; 0x28931
|
|||
ld a, [hl]
|
||||
and a
|
||||
ld hl, BlankDexName
|
||||
jr z, .asm_2895d
|
||||
jr z, .gotMonNameAddress
|
||||
ld a, [wCurPokedexIndex]
|
||||
ld c, a
|
||||
ld b, $0
|
||||
|
|
@ -1379,12 +1384,12 @@ Func_28931: ; 0x28931
|
|||
add hl, bc
|
||||
ld bc, MonDexNames
|
||||
add hl, bc
|
||||
.asm_2895d
|
||||
.gotMonNameAddress
|
||||
ld a, $ff
|
||||
ld [wd860], a
|
||||
xor a
|
||||
ld [wd861], a
|
||||
ld bc, $500a
|
||||
ld bc, $500a ; not memory address
|
||||
ld de, vTilesBG tile $50
|
||||
call Func_28e09
|
||||
ret
|
||||
|
|
@ -1426,7 +1431,8 @@ Func_28993: ; 0x28993
|
|||
ld a, [hl]
|
||||
and a
|
||||
ld hl, BlankDexName2
|
||||
jr z, .asm_289b7
|
||||
jr z, .gotMonNameAddress
|
||||
; compute 11*hl (note that the length of names is 11).
|
||||
ld h, b
|
||||
ld l, c
|
||||
sla l
|
||||
|
|
@ -1440,7 +1446,8 @@ Func_28993: ; 0x28993
|
|||
add hl, bc
|
||||
ld bc, MonDexNames
|
||||
add hl, bc
|
||||
.asm_289b7
|
||||
.gotMonNameAddress
|
||||
; hl now points to the mon name (or a blank name)
|
||||
xor a
|
||||
ld [wd860], a
|
||||
ld [wd861], a
|
||||
|
|
@ -1648,8 +1655,8 @@ Func_28add: ; 0x28add
|
|||
ld a, [wd960]
|
||||
and a
|
||||
jr z, .asm_28afc
|
||||
call Func_28cc2
|
||||
jp z, Func_28bf5
|
||||
call CheckIfMonHasAnimation
|
||||
jp z, PlayMonPokedexCatchAnimation
|
||||
.asm_28afc
|
||||
ld a, [wCurPokedexIndex]
|
||||
ld c, a
|
||||
|
|
@ -1777,7 +1784,7 @@ LoadSeenPokemonGfx: ; 0x28baf
|
|||
call LoadBillboardPaletteMap
|
||||
ret
|
||||
|
||||
Func_28bf5: ; 0x28bf5
|
||||
PlayMonPokedexCatchAnimation: ; 0x28bf5
|
||||
ld a, [wCurPokedexIndex]
|
||||
ld c, a
|
||||
ld b, $0
|
||||
|
|
@ -1885,7 +1892,7 @@ Func_28bf5: ; 0x28bf5
|
|||
call Func_8e1
|
||||
ret
|
||||
|
||||
Func_28cc2: ; 0x28cc2
|
||||
CheckIfMonHasAnimation: ; 0x28cc2
|
||||
ld a, [wCurPokedexIndex]
|
||||
ld c, a
|
||||
ld b, $0
|
||||
|
|
@ -1893,7 +1900,7 @@ Func_28cc2: ; 0x28cc2
|
|||
add hl, bc
|
||||
ld a, Bank(MonAnimatedSpriteTypes)
|
||||
call ReadByteFromBank
|
||||
bit 7, a
|
||||
bit 7, a ; if true, this Pokemon does not have an animation
|
||||
ret
|
||||
|
||||
Func_28cd4: ; 0x28cd4
|
||||
|
|
|
|||
6
wram.asm
6
wram.asm
|
|
@ -2381,13 +2381,15 @@ wCurPokedexIndex:: ; 0xd959
|
|||
wPokedexOffset:: ; 0xd95a
|
||||
ds $1
|
||||
|
||||
wd95b:: ; 0xd95b
|
||||
; Used as a counter to determine when to load the cursor sprite or not.
|
||||
; Same for the blinking of the scroll bar.
|
||||
wPokedexBlinkingCursorAndScrollBarIndicator:: ; 0xd95b
|
||||
ds $1
|
||||
|
||||
wd95c:: ; 0xd95c
|
||||
ds $1
|
||||
|
||||
wd95d:: ; 0xd95d
|
||||
wPokedexWindowWasShifted:: ; 0xd95d
|
||||
ds $1
|
||||
|
||||
wd95e:: ; 0xd95e
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user