mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
Pokegear
This commit is contained in:
parent
8360a1a2e8
commit
3dcbe0ff55
@ -4142,7 +4142,7 @@ GetEnemyMonDVs: ; 3da97
|
|||||||
ld a, [EnemySubStatus5]
|
ld a, [EnemySubStatus5]
|
||||||
bit SUBSTATUS_TRANSFORMED, a
|
bit SUBSTATUS_TRANSFORMED, a
|
||||||
ret z
|
ret z
|
||||||
ld hl, wc6f2
|
ld hl, wEnemyBackupDVs
|
||||||
ld a, [wBattleMode]
|
ld a, [wBattleMode]
|
||||||
dec a
|
dec a
|
||||||
ret z
|
ret z
|
||||||
@ -5009,7 +5009,7 @@ DrawEnemyHUD: ; 3e043
|
|||||||
ld a, [EnemySubStatus5]
|
ld a, [EnemySubStatus5]
|
||||||
bit SUBSTATUS_TRANSFORMED, a
|
bit SUBSTATUS_TRANSFORMED, a
|
||||||
jr z, .ok
|
jr z, .ok
|
||||||
ld hl, wc6f2
|
ld hl, wEnemyBackupDVs
|
||||||
.ok
|
.ok
|
||||||
ld a, [hli]
|
ld a, [hli]
|
||||||
ld [de], a
|
ld [de], a
|
||||||
@ -6336,7 +6336,7 @@ LoadEnemyMon: ; 3e8eb
|
|||||||
jr z, .InitDVs
|
jr z, .InitDVs
|
||||||
|
|
||||||
; Unknown
|
; Unknown
|
||||||
ld hl, wc6f2
|
ld hl, wEnemyBackupDVs
|
||||||
ld de, EnemyMonDVs
|
ld de, EnemyMonDVs
|
||||||
ld a, [hli]
|
ld a, [hli]
|
||||||
ld [de], a
|
ld [de], a
|
||||||
|
@ -477,14 +477,14 @@ MAX_OUTDOOR_SPRITES EQU 23
|
|||||||
const SPRITE_ANIM_INDEX_02
|
const SPRITE_ANIM_INDEX_02
|
||||||
const SPRITE_ANIM_INDEX_GAMEFREAK_LOGO
|
const SPRITE_ANIM_INDEX_GAMEFREAK_LOGO
|
||||||
const SPRITE_ANIM_INDEX_04
|
const SPRITE_ANIM_INDEX_04
|
||||||
const SPRITE_ANIM_INDEX_05
|
const SPRITE_ANIM_INDEX_NAMING_SCREEN_CURSOR
|
||||||
const SPRITE_ANIM_INDEX_SLOT_GOLEM
|
const SPRITE_ANIM_INDEX_SLOT_GOLEM
|
||||||
const SPRITE_ANIM_INDEX_SLOTS_CHANSEY
|
const SPRITE_ANIM_INDEX_SLOTS_CHANSEY
|
||||||
const SPRITE_ANIM_INDEX_SLOTS_EGG
|
const SPRITE_ANIM_INDEX_SLOTS_EGG
|
||||||
const SPRITE_ANIM_INDEX_09
|
const SPRITE_ANIM_INDEX_09
|
||||||
const SPRITE_ANIM_INDEX_RED_WALK
|
const SPRITE_ANIM_INDEX_RED_WALK
|
||||||
const SPRITE_ANIM_INDEX_0B
|
const SPRITE_ANIM_INDEX_0B
|
||||||
const SPRITE_ANIM_INDEX_0C
|
const SPRITE_ANIM_INDEX_COMPOSE_MAIL_CURSOR
|
||||||
const SPRITE_ANIM_INDEX_0D
|
const SPRITE_ANIM_INDEX_0D
|
||||||
const SPRITE_ANIM_INDEX_0E
|
const SPRITE_ANIM_INDEX_0E
|
||||||
const SPRITE_ANIM_INDEX_0F
|
const SPRITE_ANIM_INDEX_0F
|
||||||
|
@ -66,7 +66,7 @@ SpriteAnimFrameData: ; 8d6e6
|
|||||||
dw .Frameset_40 ; 40 celebi on the left
|
dw .Frameset_40 ; 40 celebi on the left
|
||||||
dw .Frameset_41 ; 41 celebi on the right
|
dw .Frameset_41 ; 41 celebi on the right
|
||||||
; 8d76a
|
; 8d76a
|
||||||
; OAM idx (see SpriteAnimOAMData), flip flags/duration
|
; OAM idx (see SpriteAnimOAMData), flip flags/duration
|
||||||
.Frameset_00:
|
.Frameset_00:
|
||||||
db $00, $20
|
db $00, $20
|
||||||
db -1
|
db -1
|
||||||
|
@ -109,7 +109,7 @@ endr
|
|||||||
|
|
||||||
.spawn_object
|
.spawn_object
|
||||||
depixel 6, 3, 4, 4
|
depixel 6, 3, 4, 4
|
||||||
ld a, SPRITE_ANIM_INDEX_0C
|
ld a, SPRITE_ANIM_INDEX_COMPOSE_MAIL_CURSOR
|
||||||
call _InitSpriteAnimStruct
|
call _InitSpriteAnimStruct
|
||||||
ld a, 5
|
ld a, 5
|
||||||
ld [wDummyGameNumberTriesRemaining], a
|
ld [wDummyGameNumberTriesRemaining], a
|
||||||
|
@ -454,7 +454,7 @@ DoMapTrigger: ; 968ec
|
|||||||
ld h, [hl]
|
ld h, [hl]
|
||||||
ld l, a
|
ld l, a
|
||||||
rept 4
|
rept 4
|
||||||
add hl,de
|
add hl, de
|
||||||
endr
|
endr
|
||||||
|
|
||||||
call GetMapScriptHeaderBank
|
call GetMapScriptHeaderBank
|
||||||
@ -1031,7 +1031,7 @@ DoPlayerEvent: ; 96beb
|
|||||||
ld b, 0
|
ld b, 0
|
||||||
ld hl, PlayerEventScriptPointers
|
ld hl, PlayerEventScriptPointers
|
||||||
rept 3
|
rept 3
|
||||||
add hl,bc
|
add hl, bc
|
||||||
endr
|
endr
|
||||||
ld a, [hli]
|
ld a, [hli]
|
||||||
ld [ScriptBank], a
|
ld [ScriptBank], a
|
||||||
|
@ -19,7 +19,7 @@ HealMachineAnim: ; 12324
|
|||||||
|
|
||||||
.DoJumptableFunctions: ; 1233e
|
.DoJumptableFunctions: ; 1233e
|
||||||
xor a
|
xor a
|
||||||
ld [wd1ec], a
|
ld [Buffer3], a
|
||||||
.jumpable_loop
|
.jumpable_loop
|
||||||
ld a, [Buffer1]
|
ld a, [Buffer1]
|
||||||
ld e, a
|
ld e, a
|
||||||
@ -31,10 +31,10 @@ endr
|
|||||||
ld a, [hli]
|
ld a, [hli]
|
||||||
ld h, [hl]
|
ld h, [hl]
|
||||||
ld l, a
|
ld l, a
|
||||||
ld a, [wd1ec]
|
ld a, [Buffer3]
|
||||||
ld e, a
|
ld e, a
|
||||||
inc a
|
inc a
|
||||||
ld [wd1ec], a
|
ld [Buffer3], a
|
||||||
add hl, de
|
add hl, de
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
cp 5
|
cp 5
|
||||||
@ -81,14 +81,14 @@ endr
|
|||||||
|
|
||||||
.PC_LoadBallsOntoMachine: ; 12393
|
.PC_LoadBallsOntoMachine: ; 12393
|
||||||
ld hl, Sprites + $80
|
ld hl, Sprites + $80
|
||||||
ld de, .PC_ElmsLab_TileMap
|
ld de, .PC_ElmsLab_OAM
|
||||||
call .PlaceHealingMachineTile
|
call .PlaceHealingMachineTile
|
||||||
call .PlaceHealingMachineTile
|
call .PlaceHealingMachineTile
|
||||||
jr .LoadBallsOntoMachine
|
jr .LoadBallsOntoMachine
|
||||||
|
|
||||||
.HOF_LoadBallsOntoMachine: ; 123a1
|
.HOF_LoadBallsOntoMachine: ; 123a1
|
||||||
ld hl, Sprites + $80
|
ld hl, Sprites + $80
|
||||||
ld de, .HOF_TileMap
|
ld de, .HOF_OAM
|
||||||
|
|
||||||
.LoadBallsOntoMachine: ; 123a7
|
.LoadBallsOntoMachine: ; 123a7
|
||||||
ld a, [PartyCount]
|
ld a, [PartyCount]
|
||||||
@ -126,28 +126,28 @@ endr
|
|||||||
ret
|
ret
|
||||||
; 123dc
|
; 123dc
|
||||||
|
|
||||||
.PC_ElmsLab_TileMap: ; 123dc
|
.PC_ElmsLab_OAM: ; 123dc
|
||||||
db $20, $22, $7c, $16
|
dsprite 4, 0, 4, 2, $7c, $16
|
||||||
db $20, $26, $7c, $16
|
dsprite 4, 0, 4, 6, $7c, $16
|
||||||
db $26, $20, $7d, $16
|
dsprite 4, 6, 4, 0, $7d, $16
|
||||||
db $26, $28, $7d, $36
|
dsprite 4, 6, 5, 0, $7d, $36 ; xflip
|
||||||
db $2b, $20, $7d, $16
|
dsprite 5, 3, 4, 0, $7d, $16
|
||||||
db $2b, $28, $7d, $36
|
dsprite 5, 3, 5, 0, $7d, $36 ; xflip
|
||||||
db $30, $20, $7d, $16
|
dsprite 6, 0, 4, 0, $7d, $16
|
||||||
db $30, $28, $7d, $36
|
dsprite 6, 0, 5, 0, $7d, $36 ; xflip
|
||||||
; 123fc
|
; 123fc
|
||||||
|
|
||||||
.HealMachineGFX: ; 123fc
|
.HealMachineGFX: ; 123fc
|
||||||
INCBIN "gfx/unknown/0123fc.2bpp"
|
INCBIN "gfx/unknown/0123fc.2bpp"
|
||||||
; 1241c
|
; 1241c
|
||||||
|
|
||||||
.HOF_TileMap: ; 1241c
|
.HOF_OAM: ; 1241c
|
||||||
db $3c, $51, $7d, $16
|
dsprite 7, 4, 10, 1, $7d, $16
|
||||||
db $3c, $56, $7d, $16
|
dsprite 7, 4, 10, 6, $7d, $16
|
||||||
db $3b, $4d, $7d, $16
|
dsprite 7, 3, 9, 5, $7d, $16
|
||||||
db $3b, $5a, $7d, $16
|
dsprite 7, 3, 11, 2, $7d, $16
|
||||||
db $39, $49, $7d, $16
|
dsprite 7, 1, 9, 1, $7d, $16
|
||||||
db $39, $5d, $7d, $16
|
dsprite 7, 1, 11, 5, $7d, $16
|
||||||
; 12434
|
; 12434
|
||||||
|
|
||||||
.LoadPalettes: ; 12434
|
.LoadPalettes: ; 12434
|
||||||
@ -241,10 +241,10 @@ endr
|
|||||||
.PlaceHealingMachineTile: ; 124a3
|
.PlaceHealingMachineTile: ; 124a3
|
||||||
push bc
|
push bc
|
||||||
ld a, [Buffer1]
|
ld a, [Buffer1]
|
||||||
lb bc, $10, $20
|
bcpixel 2, 4
|
||||||
cp $1 ; ElmsLab
|
cp $1 ; ElmsLab
|
||||||
jr z, .okay
|
jr z, .okay
|
||||||
lb bc, $00, $00
|
bcpixel 0, 0
|
||||||
|
|
||||||
.okay
|
.okay
|
||||||
ld a, [de]
|
ld a, [de]
|
||||||
|
@ -11,7 +11,7 @@ PokeGear: ; 90b8d (24:4b8d)
|
|||||||
push af
|
push af
|
||||||
xor a
|
xor a
|
||||||
ld [VramState], a
|
ld [VramState], a
|
||||||
call Function90bea
|
call .InitTilemap
|
||||||
call DelayFrame
|
call DelayFrame
|
||||||
.loop
|
.loop
|
||||||
call UpdateTime
|
call UpdateTime
|
||||||
@ -41,10 +41,10 @@ PokeGear: ; 90b8d (24:4b8d)
|
|||||||
ld [hBGMapAddress + 1], a
|
ld [hBGMapAddress + 1], a
|
||||||
ld a, $90
|
ld a, $90
|
||||||
ld [hWY], a
|
ld [hWY], a
|
||||||
call Function91492
|
call ExitPokegearRadio_HandleMusic
|
||||||
ret
|
ret
|
||||||
|
|
||||||
Function90bea: ; 90bea (24:4bea)
|
.InitTilemap: ; 90bea (24:4bea)
|
||||||
call ClearBGPalettes
|
call ClearBGPalettes
|
||||||
call ClearTileMap
|
call ClearTileMap
|
||||||
call ClearSprites
|
call ClearSprites
|
||||||
@ -54,14 +54,14 @@ Function90bea: ; 90bea (24:4bea)
|
|||||||
ld [hSCX], a
|
ld [hSCX], a
|
||||||
ld a, $7
|
ld a, $7
|
||||||
ld [hWX], a
|
ld [hWX], a
|
||||||
call Function90c4e
|
call Pokegear_LoadGFX
|
||||||
callba ClearSpriteAnims
|
callba ClearSpriteAnims
|
||||||
call InitPokegearModeIndicatorArrow
|
call InitPokegearModeIndicatorArrow
|
||||||
ld a, 8
|
ld a, 8
|
||||||
call SkipMusic
|
call SkipMusic
|
||||||
ld a, $e3
|
ld a, $e3
|
||||||
ld [rLCDC], a
|
ld [rLCDC], a
|
||||||
call Function90d70
|
call TownMap_InitCursorAndPlayerIconPositions
|
||||||
xor a
|
xor a
|
||||||
ld [wJumptableIndex], a
|
ld [wJumptableIndex], a
|
||||||
ld [wcf64], a
|
ld [wcf64], a
|
||||||
@ -85,7 +85,7 @@ Function90bea: ; 90bea (24:4bea)
|
|||||||
call DmgToCgbObjPal0
|
call DmgToCgbObjPal0
|
||||||
ret
|
ret
|
||||||
|
|
||||||
Function90c4e: ; 90c4e
|
Pokegear_LoadGFX: ; 90c4e
|
||||||
call ClearVBank1
|
call ClearVBank1
|
||||||
ld hl, TownMapGFX
|
ld hl, TownMapGFX
|
||||||
ld de, VTiles2
|
ld de, VTiles2
|
||||||
@ -148,25 +148,25 @@ InitPokegearModeIndicatorArrow: ; 90d32 (24:4d32)
|
|||||||
ld [hl], $0
|
ld [hl], $0
|
||||||
ret
|
ret
|
||||||
|
|
||||||
Function90d41: ; 90d41 (24:4d41)
|
AnimatePokegearModeIndicatorArrow: ; 90d41 (24:4d41)
|
||||||
ld hl, wcf64
|
ld hl, wcf64
|
||||||
ld e, [hl]
|
ld e, [hl]
|
||||||
ld d, 0
|
ld d, 0
|
||||||
ld hl, Unknown_90d52
|
ld hl, .XCoords
|
||||||
add hl, de
|
add hl, de
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
ld hl, $6
|
ld hl, SPRITEANIMSTRUCT_XOFFSET
|
||||||
add hl, bc
|
add hl, bc
|
||||||
ld [hl], a
|
ld [hl], a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; 90d52 (24:4d52)
|
; 90d52 (24:4d52)
|
||||||
|
|
||||||
Unknown_90d52: ; 90d52
|
.XCoords: ; 90d52
|
||||||
db $00, $10, $20, $30
|
db $00, $10, $20, $30
|
||||||
; 90d56
|
; 90d56
|
||||||
|
|
||||||
Function90d56: ; 90d56
|
TownMap_GetCurrentLandmark: ; 90d56
|
||||||
ld a, [MapGroup]
|
ld a, [MapGroup]
|
||||||
ld b, a
|
ld b, a
|
||||||
ld a, [MapNumber]
|
ld a, [MapNumber]
|
||||||
@ -183,7 +183,7 @@ Function90d56: ; 90d56
|
|||||||
|
|
||||||
; 90d70
|
; 90d70
|
||||||
|
|
||||||
Function90d70: ; 90d70 (24:4d70)
|
TownMap_InitCursorAndPlayerIconPositions: ; 90d70 (24:4d70)
|
||||||
ld a, [MapGroup]
|
ld a, [MapGroup]
|
||||||
ld b, a
|
ld b, a
|
||||||
ld a, [MapNumber]
|
ld a, [MapNumber]
|
||||||
@ -238,7 +238,7 @@ InitPokegearTilemap: ; 90da8 (24:4da8)
|
|||||||
jp [hl]
|
jp [hl]
|
||||||
|
|
||||||
.return_from_jumptable
|
.return_from_jumptable
|
||||||
call Function90eb0
|
call Pokegear_FinishTilemap
|
||||||
callba TownMapPals
|
callba TownMapPals
|
||||||
ld a, [wcf65]
|
ld a, [wcf65]
|
||||||
and a
|
and a
|
||||||
@ -269,12 +269,12 @@ InitPokegearTilemap: ; 90da8 (24:4da8)
|
|||||||
.UpdateBGMap: ; 90e00 (24:4e00)
|
.UpdateBGMap: ; 90e00 (24:4e00)
|
||||||
ld a, [hCGB]
|
ld a, [hCGB]
|
||||||
and a
|
and a
|
||||||
jr z, .asm_90e0e
|
jr z, .dmg
|
||||||
ld a, $2
|
ld a, $2
|
||||||
ld [hBGMapMode], a
|
ld [hBGMapMode], a
|
||||||
ld c, 3
|
ld c, 3
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
.asm_90e0e
|
.dmg
|
||||||
call WaitBGMap
|
call WaitBGMap
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@ -329,7 +329,7 @@ InitPokegearTilemap: ; 90da8 (24:4da8)
|
|||||||
hlcoord 19, 2
|
hlcoord 19, 2
|
||||||
ld [hl], $17
|
ld [hl], $17
|
||||||
ld a, [wTownMapCursorLandmark]
|
ld a, [wTownMapCursorLandmark]
|
||||||
call Function910b4
|
call PokegearMap_UpdateLandmarkName
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; 90e72
|
; 90e72
|
||||||
@ -350,13 +350,13 @@ InitPokegearTilemap: ; 90da8 (24:4da8)
|
|||||||
hlcoord 0, 12
|
hlcoord 0, 12
|
||||||
lb bc, 4, 18
|
lb bc, 4, 18
|
||||||
call TextBox
|
call TextBox
|
||||||
call Function90e98
|
call .PlacePhoneBars
|
||||||
call PokegearPhone_UpdateDisplayList
|
call PokegearPhone_UpdateDisplayList
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; 90e98
|
; 90e98
|
||||||
|
|
||||||
Function90e98: ; 90e98 (24:4e98)
|
.PlacePhoneBars: ; 90e98 (24:4e98)
|
||||||
hlcoord 17, 1
|
hlcoord 17, 1
|
||||||
ld a, $3c
|
ld a, $3c
|
||||||
ld [hli], a
|
ld [hli], a
|
||||||
@ -372,7 +372,7 @@ Function90e98: ; 90e98 (24:4e98)
|
|||||||
ld [hl], $3f
|
ld [hl], $3f
|
||||||
ret
|
ret
|
||||||
|
|
||||||
Function90eb0: ; 90eb0 (24:4eb0)
|
Pokegear_FinishTilemap: ; 90eb0 (24:4eb0)
|
||||||
hlcoord 0, 0
|
hlcoord 0, 0
|
||||||
ld bc, $8
|
ld bc, $8
|
||||||
ld a, $4f
|
ld a, $4f
|
||||||
@ -384,32 +384,32 @@ Function90eb0: ; 90eb0 (24:4eb0)
|
|||||||
ld de, wPokegearFlags
|
ld de, wPokegearFlags
|
||||||
ld a, [de]
|
ld a, [de]
|
||||||
bit 0, a
|
bit 0, a
|
||||||
call nz, Function90ee4
|
call nz, .PlaceMapIcon
|
||||||
ld a, [de]
|
ld a, [de]
|
||||||
bit 2, a
|
bit 2, a
|
||||||
call nz, Function90eeb
|
call nz, .PlacePhoneIcon
|
||||||
ld a, [de]
|
ld a, [de]
|
||||||
bit 1, a
|
bit 1, a
|
||||||
call nz, Function90ef2
|
call nz, .PlaceRadioIcon
|
||||||
hlcoord 0, 0
|
hlcoord 0, 0
|
||||||
ld a, $46
|
ld a, $46
|
||||||
call Function90ef7
|
call .PlacePokegearCardIcon
|
||||||
ret
|
ret
|
||||||
|
|
||||||
Function90ee4: ; 90ee4 (24:4ee4)
|
.PlaceMapIcon: ; 90ee4 (24:4ee4)
|
||||||
hlcoord 2, 0
|
hlcoord 2, 0
|
||||||
ld a, $40
|
ld a, $40
|
||||||
jr Function90ef7
|
jr .PlacePokegearCardIcon
|
||||||
|
|
||||||
Function90eeb: ; 90eeb (24:4eeb)
|
.PlacePhoneIcon: ; 90eeb (24:4eeb)
|
||||||
hlcoord 4, 0
|
hlcoord 4, 0
|
||||||
ld a, $44
|
ld a, $44
|
||||||
jr Function90ef7
|
jr .PlacePokegearCardIcon
|
||||||
|
|
||||||
Function90ef2: ; 90ef2 (24:4ef2)
|
.PlaceRadioIcon: ; 90ef2 (24:4ef2)
|
||||||
hlcoord 6, 0
|
hlcoord 6, 0
|
||||||
ld a, $42
|
ld a, $42
|
||||||
Function90ef7: ; 90ef7 (24:4ef7)
|
.PlacePokegearCardIcon: ; 90ef7 (24:4ef7)
|
||||||
ld [hli], a
|
ld [hli], a
|
||||||
inc a
|
inc a
|
||||||
ld [hld], a
|
ld [hld], a
|
||||||
@ -454,7 +454,7 @@ PokegearClock_Init: ; 90f2d (24:4f2d)
|
|||||||
call PrintText
|
call PrintText
|
||||||
ld hl, wJumptableIndex
|
ld hl, wJumptableIndex
|
||||||
inc [hl]
|
inc [hl]
|
||||||
call Function91492
|
call ExitPokegearRadio_HandleMusic
|
||||||
ret
|
ret
|
||||||
|
|
||||||
PokegearClock_Joypad: ; 90f3e (24:4f3e)
|
PokegearClock_Joypad: ; 90f3e (24:4f3e)
|
||||||
@ -544,7 +544,7 @@ PokegearMap_CheckRegion: ; 90fb4 (24:4fb4)
|
|||||||
ld a, 5
|
ld a, 5
|
||||||
.done
|
.done
|
||||||
ld [wJumptableIndex], a
|
ld [wJumptableIndex], a
|
||||||
call Function91492
|
call ExitPokegearRadio_HandleMusic
|
||||||
ret
|
ret
|
||||||
|
|
||||||
PokegearMap_Init: ; 90fcd (24:4fcd)
|
PokegearMap_Init: ; 90fcd (24:4fcd)
|
||||||
@ -644,13 +644,13 @@ PokegearMap_ContinueMap: ; 90ff2 (24:4ff2)
|
|||||||
dec [hl]
|
dec [hl]
|
||||||
.done_dpad
|
.done_dpad
|
||||||
ld a, [wTownMapCursorLandmark]
|
ld a, [wTownMapCursorLandmark]
|
||||||
call Function910b4
|
call PokegearMap_UpdateLandmarkName
|
||||||
ld a, [wPokegearMapCursorObjectPointer]
|
ld a, [wPokegearMapCursorObjectPointer]
|
||||||
ld c, a
|
ld c, a
|
||||||
ld a, [wPokegearMapCursorObjectPointer + 1]
|
ld a, [wPokegearMapCursorObjectPointer + 1]
|
||||||
ld b, a
|
ld b, a
|
||||||
ld a, [wTownMapCursorLandmark]
|
ld a, [wTownMapCursorLandmark]
|
||||||
call Function910d4
|
call PokegearMap_UpdateCursorPosition
|
||||||
ret
|
ret
|
||||||
|
|
||||||
PokegearMap_InitPlayerIcon: ; 9106a
|
PokegearMap_InitPlayerIcon: ; 9106a
|
||||||
@ -695,13 +695,13 @@ PokegearMap_InitCursor: ; 91098
|
|||||||
ld [hl], SPRITE_ANIM_SEQ_NULL
|
ld [hl], SPRITE_ANIM_SEQ_NULL
|
||||||
pop af
|
pop af
|
||||||
push bc
|
push bc
|
||||||
call Function910d4
|
call PokegearMap_UpdateCursorPosition
|
||||||
pop bc
|
pop bc
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; 910b4
|
; 910b4
|
||||||
|
|
||||||
Function910b4: ; 910b4
|
PokegearMap_UpdateLandmarkName: ; 910b4
|
||||||
push af
|
push af
|
||||||
hlcoord 8, 0
|
hlcoord 8, 0
|
||||||
lb bc, 2, 12
|
lb bc, 2, 12
|
||||||
@ -718,7 +718,7 @@ Function910b4: ; 910b4
|
|||||||
|
|
||||||
; 910d4
|
; 910d4
|
||||||
|
|
||||||
Function910d4: ; 910d4
|
PokegearMap_UpdateCursorPosition: ; 910d4
|
||||||
push bc
|
push bc
|
||||||
ld e, a
|
ld e, a
|
||||||
callba GetLandmarkCoords
|
callba GetLandmarkCoords
|
||||||
@ -782,23 +782,23 @@ PokegearRadio_Joypad: ; 91112 (24:5112)
|
|||||||
.left
|
.left
|
||||||
ld a, [wPokegearFlags]
|
ld a, [wPokegearFlags]
|
||||||
bit 2, a
|
bit 2, a
|
||||||
jr z, .asm_9113b
|
jr z, .no_phone
|
||||||
ld c, $7
|
ld c, $7
|
||||||
ld b, $2
|
ld b, $2
|
||||||
jr .asm_9114c
|
jr .switch_page
|
||||||
|
|
||||||
.asm_9113b
|
.no_phone
|
||||||
ld a, [wPokegearFlags]
|
ld a, [wPokegearFlags]
|
||||||
bit 0, a
|
bit 0, a
|
||||||
jr z, .asm_91148
|
jr z, .no_map
|
||||||
ld c, $2
|
ld c, $2
|
||||||
ld b, $1
|
ld b, $1
|
||||||
jr .asm_9114c
|
jr .switch_page
|
||||||
|
|
||||||
.asm_91148
|
.no_map
|
||||||
ld c, $0
|
ld c, $0
|
||||||
ld b, $0
|
ld b, $0
|
||||||
.asm_9114c
|
.switch_page
|
||||||
call Pokegear_SwitchPage
|
call Pokegear_SwitchPage
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@ -815,7 +815,7 @@ PokegearPhone_Init: ; 91156 (24:5156)
|
|||||||
ld [wPokegearPhoneCursorPosition], a
|
ld [wPokegearPhoneCursorPosition], a
|
||||||
ld [wPokegearPhoneSelectedPerson], a
|
ld [wPokegearPhoneSelectedPerson], a
|
||||||
call InitPokegearTilemap
|
call InitPokegearTilemap
|
||||||
call Function91492
|
call ExitPokegearRadio_HandleMusic
|
||||||
ld hl, PokegearText_WhomToCall
|
ld hl, PokegearText_WhomToCall
|
||||||
call PrintText
|
call PrintText
|
||||||
ret
|
ret
|
||||||
@ -841,15 +841,15 @@ PokegearPhone_Joypad: ; 91171 (24:5171)
|
|||||||
.left
|
.left
|
||||||
ld a, [wPokegearFlags]
|
ld a, [wPokegearFlags]
|
||||||
bit 0, a
|
bit 0, a
|
||||||
jr z, .asm_9119c
|
jr z, .no_map
|
||||||
ld c, $2
|
ld c, $2
|
||||||
ld b, $1
|
ld b, $1
|
||||||
jr .asm_911ac
|
jr .switch_page
|
||||||
|
|
||||||
.asm_9119c
|
.no_map
|
||||||
ld c, $0
|
ld c, $0
|
||||||
ld b, $0
|
ld b, $0
|
||||||
jr .asm_911ac
|
jr .switch_page
|
||||||
|
|
||||||
.right
|
.right
|
||||||
ld a, [wPokegearFlags]
|
ld a, [wPokegearFlags]
|
||||||
@ -857,7 +857,7 @@ PokegearPhone_Joypad: ; 91171 (24:5171)
|
|||||||
ret z
|
ret z
|
||||||
ld c, $b
|
ld c, $b
|
||||||
ld b, $3
|
ld b, $3
|
||||||
.asm_911ac
|
.switch_page
|
||||||
call Pokegear_SwitchPage
|
call Pokegear_SwitchPage
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@ -886,12 +886,12 @@ PokegearPhone_Joypad: ; 91171 (24:5171)
|
|||||||
call AddNTimes
|
call AddNTimes
|
||||||
ld [hl], "▷"
|
ld [hl], "▷"
|
||||||
call PokegearPhoneContactSubmenu
|
call PokegearPhoneContactSubmenu
|
||||||
jr c, .asm_911e5
|
jr c, .quit_submenu
|
||||||
ld hl, wJumptableIndex
|
ld hl, wJumptableIndex
|
||||||
inc [hl]
|
inc [hl]
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.asm_911e5
|
.quit_submenu
|
||||||
ld a, $8
|
ld a, $8
|
||||||
ld [wJumptableIndex], a
|
ld [wJumptableIndex], a
|
||||||
ret
|
ret
|
||||||
@ -899,19 +899,19 @@ PokegearPhone_Joypad: ; 91171 (24:5171)
|
|||||||
PokegearPhone_MakePhoneCall: ; 911eb (24:51eb)
|
PokegearPhone_MakePhoneCall: ; 911eb (24:51eb)
|
||||||
call GetMapHeaderPhoneServiceNybble
|
call GetMapHeaderPhoneServiceNybble
|
||||||
and a
|
and a
|
||||||
jr nz, .asm_91234
|
jr nz, .no_service
|
||||||
ld hl, Options
|
ld hl, Options
|
||||||
res NO_TEXT_SCROLL, [hl]
|
res NO_TEXT_SCROLL, [hl]
|
||||||
xor a
|
xor a
|
||||||
ld [hInMenu], a
|
ld [hInMenu], a
|
||||||
ld de, SFX_CALL
|
ld de, SFX_CALL
|
||||||
call PlaySFX
|
call PlaySFX
|
||||||
ld hl, UnknownText_0x9124c
|
ld hl, .dotdotdot
|
||||||
call PrintText
|
call PrintText
|
||||||
call WaitSFX
|
call WaitSFX
|
||||||
ld de, SFX_CALL
|
ld de, SFX_CALL
|
||||||
call PlaySFX
|
call PlaySFX
|
||||||
ld hl, UnknownText_0x9124c
|
ld hl, .dotdotdot
|
||||||
call PrintText
|
call PrintText
|
||||||
call WaitSFX
|
call WaitSFX
|
||||||
ld a, [wPokegearPhoneSelectedPerson]
|
ld a, [wPokegearPhoneSelectedPerson]
|
||||||
@ -928,9 +928,9 @@ PokegearPhone_MakePhoneCall: ; 911eb (24:51eb)
|
|||||||
inc [hl]
|
inc [hl]
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.asm_91234
|
.no_service
|
||||||
callba Phone_NoSignal
|
callba Phone_NoSignal
|
||||||
ld hl, OutOfServiceAreaText
|
ld hl, .OutOfServiceArea
|
||||||
call PrintText
|
call PrintText
|
||||||
ld a, $8
|
ld a, $8
|
||||||
ld [wJumptableIndex], a
|
ld [wJumptableIndex], a
|
||||||
@ -940,14 +940,14 @@ PokegearPhone_MakePhoneCall: ; 911eb (24:51eb)
|
|||||||
|
|
||||||
; 9124c (24:524c)
|
; 9124c (24:524c)
|
||||||
|
|
||||||
UnknownText_0x9124c: ; 0x9124c
|
.dotdotdot: ; 0x9124c
|
||||||
;
|
;
|
||||||
text_jump UnknownText_0x1c5824
|
text_jump UnknownText_0x1c5824
|
||||||
db "@"
|
db "@"
|
||||||
|
|
||||||
; 0x91251
|
; 0x91251
|
||||||
|
|
||||||
OutOfServiceAreaText: ; 0x91251
|
.OutOfServiceArea: ; 0x91251
|
||||||
; You're out of the service area.
|
; You're out of the service area.
|
||||||
text_jump UnknownText_0x1c5827
|
text_jump UnknownText_0x1c5827
|
||||||
db "@"
|
db "@"
|
||||||
@ -1336,17 +1336,17 @@ Pokegear_SwitchPage: ; 91480 (24:5480)
|
|||||||
call DeleteSpriteAnimStruct2ToEnd
|
call DeleteSpriteAnimStruct2ToEnd
|
||||||
ret
|
ret
|
||||||
|
|
||||||
Function91492: ; 91492
|
ExitPokegearRadio_HandleMusic: ; 91492
|
||||||
ld a, [wPokegearRadioMusicPlaying]
|
ld a, [wPokegearRadioMusicPlaying]
|
||||||
cp $fe
|
cp $fe
|
||||||
jr z, .asm_914a3
|
jr z, .restart_map_music
|
||||||
cp $ff
|
cp $ff
|
||||||
call z, EnterMapMusic
|
call z, EnterMapMusic
|
||||||
xor a
|
xor a
|
||||||
ld [wPokegearRadioMusicPlaying], a
|
ld [wPokegearRadioMusicPlaying], a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.asm_914a3
|
.restart_map_music
|
||||||
call RestartMapMusic
|
call RestartMapMusic
|
||||||
xor a
|
xor a
|
||||||
ld [wPokegearRadioMusicPlaying], a
|
ld [wPokegearRadioMusicPlaying], a
|
||||||
@ -1364,8 +1364,10 @@ DeleteSpriteAnimStruct2ToEnd: ; 914ab (24:54ab)
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
Pokegear_LoadTilemapRLE: ; 914bb (24:54bb)
|
Pokegear_LoadTilemapRLE: ; 914bb (24:54bb)
|
||||||
|
; Format: repeat count, tile ID
|
||||||
|
; Terminated with $FF
|
||||||
hlcoord 0, 0
|
hlcoord 0, 0
|
||||||
.row
|
.loop
|
||||||
ld a, [de]
|
ld a, [de]
|
||||||
cp $ff
|
cp $ff
|
||||||
ret z
|
ret z
|
||||||
@ -1375,11 +1377,11 @@ Pokegear_LoadTilemapRLE: ; 914bb (24:54bb)
|
|||||||
ld c, a
|
ld c, a
|
||||||
inc de
|
inc de
|
||||||
ld a, b
|
ld a, b
|
||||||
.col
|
.load
|
||||||
ld [hli], a
|
ld [hli], a
|
||||||
dec c
|
dec c
|
||||||
jr nz, .col
|
jr nz, .load
|
||||||
jr .row
|
jr .loop
|
||||||
|
|
||||||
; 914ce (24:54ce)
|
; 914ce (24:54ce)
|
||||||
|
|
||||||
@ -1409,11 +1411,11 @@ INCBIN "gfx/misc/pokegear_sprites.2bpp.lz"
|
|||||||
; 9150d
|
; 9150d
|
||||||
|
|
||||||
RadioTilemapRLE: ; 9150d
|
RadioTilemapRLE: ; 9150d
|
||||||
INCBIN "gfx/unknown/09150d.tilemap.rle"
|
INCBIN "gfx/pokegear/radio.tilemap.rle"
|
||||||
PhoneTilemapRLE: ; 9158a
|
PhoneTilemapRLE: ; 9158a
|
||||||
INCBIN "gfx/unknown/09158a.tilemap.rle"
|
INCBIN "gfx/pokegear/phone.tilemap.rle"
|
||||||
ClockTilemapRLE: ; 915db
|
ClockTilemapRLE: ; 915db
|
||||||
INCBIN "gfx/unknown/0915db.tilemap.rle"
|
INCBIN "gfx/pokegear/clock.tilemap.rle"
|
||||||
; 9163e
|
; 9163e
|
||||||
|
|
||||||
_UpdateRadioStation: ; 9163e (24:563e)
|
_UpdateRadioStation: ; 9163e (24:563e)
|
||||||
@ -1498,7 +1500,7 @@ UpdateRadioStation: ; 9166f (24:566f)
|
|||||||
|
|
||||||
; 916a1 (24:56a1)
|
; 916a1 (24:56a1)
|
||||||
|
|
||||||
Function916a1: ; 916a1
|
; XXX
|
||||||
ld [wPokegearRadioChannelBank], a
|
ld [wPokegearRadioChannelBank], a
|
||||||
ld a, [hli]
|
ld a, [hli]
|
||||||
ld [wPokegearRadioChannelAddr], a
|
ld [wPokegearRadioChannelAddr], a
|
||||||
@ -1846,13 +1848,13 @@ _TownMap: ; 9191c
|
|||||||
call ClearTileMap
|
call ClearTileMap
|
||||||
call ClearSprites
|
call ClearSprites
|
||||||
call DisableLCD
|
call DisableLCD
|
||||||
call Function90c4e
|
call Pokegear_LoadGFX
|
||||||
callba ClearSpriteAnims
|
callba ClearSpriteAnims
|
||||||
ld a, 8
|
ld a, 8
|
||||||
call SkipMusic
|
call SkipMusic
|
||||||
ld a, $e3
|
ld a, $e3
|
||||||
ld [rLCDC], a
|
ld [rLCDC], a
|
||||||
call Function90d56
|
call TownMap_GetCurrentLandmark
|
||||||
ld [wd002], a
|
ld [wd002], a
|
||||||
ld [wd003], a
|
ld [wd003], a
|
||||||
xor a
|
xor a
|
||||||
@ -1950,13 +1952,13 @@ _TownMap: ; 9191c
|
|||||||
.next
|
.next
|
||||||
push de
|
push de
|
||||||
ld a, [wd003]
|
ld a, [wd003]
|
||||||
call Function910b4
|
call PokegearMap_UpdateLandmarkName
|
||||||
ld a, [wd004]
|
ld a, [wd004]
|
||||||
ld c, a
|
ld c, a
|
||||||
ld a, [wd005]
|
ld a, [wd005]
|
||||||
ld b, a
|
ld b, a
|
||||||
ld a, [wd003]
|
ld a, [wd003]
|
||||||
call Function910d4
|
call PokegearMap_UpdateCursorPosition
|
||||||
pop de
|
pop de
|
||||||
jr .loop2
|
jr .loop2
|
||||||
; 91a04
|
; 91a04
|
||||||
@ -1964,14 +1966,13 @@ _TownMap: ; 9191c
|
|||||||
.InitTilemap: ; 91a04
|
.InitTilemap: ; 91a04
|
||||||
ld a, [wd002]
|
ld a, [wd002]
|
||||||
cp KANTO_LANDMARK
|
cp KANTO_LANDMARK
|
||||||
jr nc, .kanto
|
jr nc, .kanto2
|
||||||
ld e, $0
|
ld e, $0
|
||||||
jr .okay
|
jr .okay_tilemap
|
||||||
|
|
||||||
.kanto
|
.kanto2
|
||||||
ld e, $1
|
ld e, $1
|
||||||
|
.okay_tilemap
|
||||||
.okay
|
|
||||||
callba PokegearMap
|
callba PokegearMap
|
||||||
ld a, $7
|
ld a, $7
|
||||||
ld bc, 6
|
ld bc, 6
|
||||||
@ -1992,7 +1993,7 @@ _TownMap: ; 9191c
|
|||||||
hlcoord 19, 2
|
hlcoord 19, 2
|
||||||
ld [hl], $17
|
ld [hl], $17
|
||||||
ld a, [wd003]
|
ld a, [wd003]
|
||||||
call Function910b4
|
call PokegearMap_UpdateLandmarkName
|
||||||
callba TownMapPals
|
callba TownMapPals
|
||||||
ret
|
ret
|
||||||
; 91a53
|
; 91a53
|
||||||
@ -2025,7 +2026,7 @@ PlayRadio: ; 91a53
|
|||||||
.stop
|
.stop
|
||||||
pop af
|
pop af
|
||||||
ld [Options], a
|
ld [Options], a
|
||||||
call Function91492
|
call ExitPokegearRadio_HandleMusic
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; 91a87
|
; 91a87
|
||||||
@ -2687,7 +2688,7 @@ _Area: ; 91d11
|
|||||||
.ShowPlayerLoop
|
.ShowPlayerLoop
|
||||||
ld a, [de]
|
ld a, [de]
|
||||||
cp $80
|
cp $80
|
||||||
jr z, .copy
|
jr z, .clear_oam
|
||||||
add b
|
add b
|
||||||
ld [hli], a
|
ld [hli], a
|
||||||
inc de
|
inc de
|
||||||
@ -2711,9 +2712,9 @@ _Area: ; 91d11
|
|||||||
pop bc
|
pop bc
|
||||||
jr .ShowPlayerLoop
|
jr .ShowPlayerLoop
|
||||||
|
|
||||||
.copy
|
.clear_oam
|
||||||
ld hl, Sprites + $10
|
ld hl, Sprites + 4 * 4
|
||||||
ld bc, SpritesEnd - (Sprites + $10)
|
ld bc, SpritesEnd - (Sprites + 4 * 4)
|
||||||
xor a
|
xor a
|
||||||
call ByteFill
|
call ByteFill
|
||||||
ret
|
ret
|
||||||
@ -2980,8 +2981,8 @@ PokedexNestIconGFX: ; 922d1
|
|||||||
INCBIN "gfx/pokegear/dexmap_nest_icon.2bpp"
|
INCBIN "gfx/pokegear/dexmap_nest_icon.2bpp"
|
||||||
FlyMapLabelBorderGFX: ; 922e1
|
FlyMapLabelBorderGFX: ; 922e1
|
||||||
INCBIN "gfx/pokegear/flymap_label_border.2bpp"
|
INCBIN "gfx/pokegear/flymap_label_border.2bpp"
|
||||||
Function92311: ; 92311
|
|
||||||
; unreferenced
|
; XXX
|
||||||
xor a
|
xor a
|
||||||
ld [wd002], a
|
ld [wd002], a
|
||||||
call ClearBGPalettes
|
call ClearBGPalettes
|
||||||
@ -3034,7 +3035,7 @@ Function92311: ; 92311
|
|||||||
|
|
||||||
.pressedB
|
.pressedB
|
||||||
ld a, -1
|
ld a, -1
|
||||||
jr .asm_9239f
|
jr .finished_a_b
|
||||||
|
|
||||||
.pressedA
|
.pressedA
|
||||||
ld a, [wd002]
|
ld a, [wd002]
|
||||||
@ -3044,7 +3045,7 @@ Function92311: ; 92311
|
|||||||
ld de, Flypoints + 1
|
ld de, Flypoints + 1
|
||||||
add hl, de
|
add hl, de
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
.asm_9239f
|
.finished_a_b
|
||||||
ld [wd002], a
|
ld [wd002], a
|
||||||
pop af
|
pop af
|
||||||
ld [hInMenu], a
|
ld [hInMenu], a
|
||||||
|
219
engine/prof_oaks_pc.asm
Executable file
219
engine/prof_oaks_pc.asm
Executable file
@ -0,0 +1,219 @@
|
|||||||
|
|
||||||
|
ProfOaksPC: ; 0x265d3
|
||||||
|
ld hl, OakPCText1
|
||||||
|
call MenuTextBox
|
||||||
|
call YesNoBox
|
||||||
|
jr c, .shutdown
|
||||||
|
call ProfOaksPCBoot ; player chose "yes"?
|
||||||
|
.shutdown
|
||||||
|
ld hl, OakPCText4
|
||||||
|
call PrintText
|
||||||
|
call JoyWaitAorB
|
||||||
|
call ExitMenu
|
||||||
|
ret
|
||||||
|
|
||||||
|
ProfOaksPCBoot ; 0x265ee
|
||||||
|
ld hl, OakPCText2
|
||||||
|
call PrintText
|
||||||
|
call Rate
|
||||||
|
call PlaySFX ; sfx loaded by previous Rate function call
|
||||||
|
call JoyWaitAorB
|
||||||
|
call WaitSFX
|
||||||
|
ret
|
||||||
|
|
||||||
|
ProfOaksPCRating: ; 0x26601
|
||||||
|
call Rate
|
||||||
|
push de
|
||||||
|
ld de, MUSIC_NONE
|
||||||
|
call PlayMusic
|
||||||
|
pop de
|
||||||
|
call PlaySFX
|
||||||
|
call JoyWaitAorB
|
||||||
|
call WaitSFX
|
||||||
|
ret
|
||||||
|
|
||||||
|
Rate: ; 0x26616
|
||||||
|
; calculate Seen/Owned
|
||||||
|
ld hl, PokedexSeen
|
||||||
|
ld b, EndPokedexSeen - PokedexSeen
|
||||||
|
call CountSetBits
|
||||||
|
ld [wd002], a
|
||||||
|
ld hl, PokedexCaught
|
||||||
|
ld b, EndPokedexCaught - PokedexCaught
|
||||||
|
call CountSetBits
|
||||||
|
ld [wd003], a
|
||||||
|
|
||||||
|
; print appropriate rating
|
||||||
|
call .UpdateRatingBuffers
|
||||||
|
ld hl, OakPCText3
|
||||||
|
call PrintText
|
||||||
|
call JoyWaitAorB
|
||||||
|
ld a, [wd003]
|
||||||
|
ld hl, OakRatings
|
||||||
|
call FindOakRating
|
||||||
|
push de
|
||||||
|
call PrintText
|
||||||
|
pop de
|
||||||
|
ret
|
||||||
|
|
||||||
|
.UpdateRatingBuffers: ; 0x26647
|
||||||
|
ld hl, StringBuffer3
|
||||||
|
ld de, wd002
|
||||||
|
call .UpdateRatingBuffer
|
||||||
|
ld hl, StringBuffer4
|
||||||
|
ld de, wd003
|
||||||
|
call .UpdateRatingBuffer
|
||||||
|
ret
|
||||||
|
|
||||||
|
.UpdateRatingBuffer: ; 0x2665a
|
||||||
|
push hl
|
||||||
|
ld a, "@"
|
||||||
|
ld bc, ITEM_NAME_LENGTH
|
||||||
|
call ByteFill
|
||||||
|
pop hl
|
||||||
|
lb bc, PRINTNUM_RIGHTALIGN | 1, 3
|
||||||
|
call PrintNum
|
||||||
|
ret
|
||||||
|
|
||||||
|
FindOakRating: ; 0x2666b
|
||||||
|
; return sound effect in de
|
||||||
|
; return text pointer in hl
|
||||||
|
nop
|
||||||
|
ld c, a
|
||||||
|
.loop
|
||||||
|
ld a, [hli]
|
||||||
|
cp c
|
||||||
|
jr nc, .match
|
||||||
|
rept 4
|
||||||
|
inc hl
|
||||||
|
endr
|
||||||
|
jr .loop
|
||||||
|
|
||||||
|
.match
|
||||||
|
ld a, [hli]
|
||||||
|
ld e, a
|
||||||
|
ld a, [hli]
|
||||||
|
ld d, a
|
||||||
|
ld a, [hli]
|
||||||
|
ld h, [hl]
|
||||||
|
ld l, a
|
||||||
|
ret
|
||||||
|
|
||||||
|
OakRatings: ; 0x2667f
|
||||||
|
oakrating: MACRO
|
||||||
|
db \1
|
||||||
|
dw \2, \3
|
||||||
|
endm
|
||||||
|
|
||||||
|
; if you caught at most this many, play this sound, load this text
|
||||||
|
oakrating 9, SFX_DEX_FANFARE_LESS_THAN_20, OakRating01
|
||||||
|
oakrating 19, SFX_DEX_FANFARE_LESS_THAN_20, OakRating02
|
||||||
|
oakrating 34, SFX_DEX_FANFARE_20_49, OakRating03
|
||||||
|
oakrating 49, SFX_DEX_FANFARE_20_49, OakRating04
|
||||||
|
oakrating 64, SFX_DEX_FANFARE_50_79, OakRating05
|
||||||
|
oakrating 79, SFX_DEX_FANFARE_50_79, OakRating06
|
||||||
|
oakrating 94, SFX_DEX_FANFARE_80_109, OakRating07
|
||||||
|
oakrating 109, SFX_DEX_FANFARE_80_109, OakRating08
|
||||||
|
oakrating 124, SFX_CAUGHT_MON, OakRating09
|
||||||
|
oakrating 139, SFX_CAUGHT_MON, OakRating10
|
||||||
|
oakrating 154, SFX_DEX_FANFARE_140_169, OakRating11
|
||||||
|
oakrating 169, SFX_DEX_FANFARE_140_169, OakRating12
|
||||||
|
oakrating 184, SFX_DEX_FANFARE_170_199, OakRating13
|
||||||
|
oakrating 199, SFX_DEX_FANFARE_170_199, OakRating14
|
||||||
|
oakrating 214, SFX_DEX_FANFARE_200_229, OakRating15
|
||||||
|
oakrating 229, SFX_DEX_FANFARE_200_229, OakRating16
|
||||||
|
oakrating 239, SFX_DEX_FANFARE_230_PLUS, OakRating17
|
||||||
|
oakrating 248, SFX_DEX_FANFARE_230_PLUS, OakRating18
|
||||||
|
oakrating 255, SFX_DEX_FANFARE_230_PLUS, OakRating19
|
||||||
|
|
||||||
|
OakPCText1: ; 0x266de
|
||||||
|
text_jump _OakPCText1
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakPCText2: ; 0x266e3
|
||||||
|
text_jump _OakPCText2
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakPCText3: ; 0x266e8
|
||||||
|
text_jump _OakPCText3
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating01:
|
||||||
|
text_jump _OakRating01
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating02:
|
||||||
|
text_jump _OakRating02
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating03:
|
||||||
|
text_jump _OakRating03
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating04:
|
||||||
|
text_jump _OakRating04
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating05:
|
||||||
|
text_jump _OakRating05
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating06:
|
||||||
|
text_jump _OakRating06
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating07:
|
||||||
|
text_jump _OakRating07
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating08:
|
||||||
|
text_jump _OakRating08
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating09:
|
||||||
|
text_jump _OakRating09
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating10:
|
||||||
|
text_jump _OakRating10
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating11:
|
||||||
|
text_jump _OakRating11
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating12:
|
||||||
|
text_jump _OakRating12
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating13:
|
||||||
|
text_jump _OakRating13
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating14:
|
||||||
|
text_jump _OakRating14
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating15:
|
||||||
|
text_jump _OakRating15
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating16:
|
||||||
|
text_jump _OakRating16
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating17:
|
||||||
|
text_jump _OakRating17
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating18:
|
||||||
|
text_jump _OakRating18
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakRating19:
|
||||||
|
text_jump _OakRating19
|
||||||
|
db "@"
|
||||||
|
|
||||||
|
OakPCText4: ; 0x2674c
|
||||||
|
text_jump _OakPCText4
|
||||||
|
db "@"
|
@ -19,14 +19,14 @@ DoAnimFrame: ; 8d24b
|
|||||||
dw .two ; bouncing mon icon, selected
|
dw .two ; bouncing mon icon, selected
|
||||||
dw .three ; bouncing mon icon, menu open
|
dw .three ; bouncing mon icon, menu open
|
||||||
dw .four
|
dw .four
|
||||||
dw .five
|
dw .namingscreencursor
|
||||||
dw .GameFreakLogo ; Game Freak logo
|
dw .GameFreakLogo ; Game Freak logo
|
||||||
dw .seven
|
dw .seven
|
||||||
dw .eight
|
dw .eight
|
||||||
dw .SlotsGolem ; Something to do with slots
|
dw .SlotsGolem ; Something to do with slots
|
||||||
dw .SlotsChansey ; Something to do with slots
|
dw .SlotsChansey ; Something to do with slots
|
||||||
dw .SlotsChanseyEgg ; Something to do with slots
|
dw .SlotsChanseyEgg ; Something to do with slots
|
||||||
dw .twelve ; blinking cursor
|
dw .mailcompositioncursor ; blinking cursor
|
||||||
dw .thirteen
|
dw .thirteen
|
||||||
dw .fourteen
|
dw .fourteen
|
||||||
dw .fifteen
|
dw .fifteen
|
||||||
@ -217,11 +217,11 @@ DoAnimFrame: ; 8d24b
|
|||||||
ld [hl], a
|
ld [hl], a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.five: ; 8d36c (23:536c)
|
.namingscreencursor: ; 8d36c (23:536c)
|
||||||
callab NamingScreen_AnimateCursor
|
callab NamingScreen_AnimateCursor
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.twelve: ; 8d373 (23:5373)
|
.mailcompositioncursor: ; 8d373 (23:5373)
|
||||||
callab ComposeMail_AnimateCursor
|
callab ComposeMail_AnimateCursor
|
||||||
ret
|
ret
|
||||||
|
|
||||||
@ -409,7 +409,7 @@ DoAnimFrame: ; 8d24b
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
.fifteen: ; 8d475 (23:5475)
|
.fifteen: ; 8d475 (23:5475)
|
||||||
callab Function90d41
|
callab AnimatePokegearModeIndicatorArrow
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.fourteen: ; 8d47c (23:547c)
|
.fourteen: ; 8d47c (23:547c)
|
||||||
|
@ -393,7 +393,7 @@ endr
|
|||||||
ld hl, StatusFlags2
|
ld hl, StatusFlags2
|
||||||
bit 2, [hl] ; bug catching contest
|
bit 2, [hl] ; bug catching contest
|
||||||
ret z
|
ret z
|
||||||
callba Function24bdc
|
callba StartMenu_DrawBugContestStatusBox
|
||||||
ret
|
ret
|
||||||
; 128de
|
; 128de
|
||||||
|
|
||||||
@ -403,7 +403,7 @@ endr
|
|||||||
jr nz, .contest
|
jr nz, .contest
|
||||||
ret
|
ret
|
||||||
.contest
|
.contest
|
||||||
callba Function24be7
|
callba StartMenu_PrintBugContestStatus
|
||||||
ret
|
ret
|
||||||
; 128ed
|
; 128ed
|
||||||
|
|
||||||
|
@ -200,11 +200,9 @@ CheckPokerusTick:: ; 114e7
|
|||||||
call CalcDaysSince
|
call CalcDaysSince
|
||||||
call GetDaysSince
|
call GetDaysSince
|
||||||
and a
|
and a
|
||||||
jr z, .done
|
jr z, .done ; not even a day has passed since game start
|
||||||
|
|
||||||
ld b, a
|
ld b, a
|
||||||
callba ApplyPokerusTick
|
callba ApplyPokerusTick
|
||||||
|
|
||||||
.done
|
.done
|
||||||
xor a
|
xor a
|
||||||
ret
|
ret
|
||||||
@ -229,13 +227,13 @@ CheckUnusedTwoDayTimer: ; 1150c
|
|||||||
ret
|
ret
|
||||||
; 1151c
|
; 1151c
|
||||||
|
|
||||||
Function1151c: ; unreferenced
|
; XXX
|
||||||
ld hl, DailyFlags
|
ld hl, DailyFlags
|
||||||
set 2, [hl]
|
set 2, [hl]
|
||||||
ret
|
ret
|
||||||
; 11522
|
; 11522
|
||||||
|
|
||||||
Function11522: ; unreferenced
|
; XXX
|
||||||
and a
|
and a
|
||||||
ld hl, DailyFlags
|
ld hl, DailyFlags
|
||||||
bit 2, [hl]
|
bit 2, [hl]
|
||||||
|
@ -61,8 +61,8 @@ endr
|
|||||||
inc a
|
inc a
|
||||||
dec c
|
dec c
|
||||||
jr nz, .OAMloop
|
jr nz, .OAMloop
|
||||||
ld hl, Sprites + $10
|
ld hl, Sprites + 4 * 4
|
||||||
ld bc, $90
|
ld bc, 36 * 4
|
||||||
xor a
|
xor a
|
||||||
call ByteFill
|
call ByteFill
|
||||||
ret
|
ret
|
||||||
|
@ -140,7 +140,7 @@ Kurt_SelectQuantity: ; 880c2
|
|||||||
call .PlaceApricornName
|
call .PlaceApricornName
|
||||||
call PlaceApricornQuantity
|
call PlaceApricornQuantity
|
||||||
call ApplyTilemap
|
call ApplyTilemap
|
||||||
callba Function27a28
|
callba Kurt_SelectQuantity_InterpretJoypad
|
||||||
jr nc, .loop
|
jr nc, .loop
|
||||||
|
|
||||||
push bc
|
push bc
|
||||||
|
@ -452,23 +452,23 @@ endr
|
|||||||
push af
|
push af
|
||||||
set SUBSTATUS_TRANSFORMED, [hl]
|
set SUBSTATUS_TRANSFORMED, [hl]
|
||||||
bit SUBSTATUS_TRANSFORMED, a
|
bit SUBSTATUS_TRANSFORMED, a
|
||||||
jr nz, .asm_ea13
|
jr nz, .ditto
|
||||||
jr .asm_ea1a
|
jr .not_ditto
|
||||||
|
|
||||||
.asm_ea13
|
.ditto
|
||||||
ld a, DITTO
|
ld a, DITTO
|
||||||
ld [TempEnemyMonSpecies], a
|
ld [TempEnemyMonSpecies], a
|
||||||
jr .asm_ea27
|
jr .load_data
|
||||||
|
|
||||||
.asm_ea1a
|
.not_ditto
|
||||||
set 3, [hl]
|
set SUBSTATUS_TRANSFORMED, [hl]
|
||||||
ld hl, wc6f2
|
ld hl, wEnemyBackupDVs
|
||||||
ld a, [EnemyMonDVs]
|
ld a, [EnemyMonDVs]
|
||||||
ld [hli], a
|
ld [hli], a
|
||||||
ld a, [EnemyMonDVs + 1]
|
ld a, [EnemyMonDVs + 1]
|
||||||
ld [hl], a
|
ld [hl], a
|
||||||
|
|
||||||
.asm_ea27
|
.load_data
|
||||||
ld a, [TempEnemyMonSpecies]
|
ld a, [TempEnemyMonSpecies]
|
||||||
ld [CurPartySpecies], a
|
ld [CurPartySpecies], a
|
||||||
ld a, [EnemyMonLevel]
|
ld a, [EnemyMonLevel]
|
||||||
|
283
main.asm
283
main.asm
@ -5279,29 +5279,27 @@ Script_JumpStdFromRAM: ; 0x1369a
|
|||||||
|
|
||||||
INCLUDE "event/bug_contest_judging.asm"
|
INCLUDE "event/bug_contest_judging.asm"
|
||||||
|
|
||||||
; decreases all pokemon's pokerus counter by b. if the lower nybble reaches zero, the pokerus is cured.
|
|
||||||
ApplyPokerusTick: ; 13988
|
ApplyPokerusTick: ; 13988
|
||||||
|
; decreases all pokemon's pokerus counter by b. if the lower nybble reaches zero, the pokerus is cured.
|
||||||
ld hl, PartyMon1PokerusStatus ; PartyMon1 + MON_PKRS
|
ld hl, PartyMon1PokerusStatus ; PartyMon1 + MON_PKRS
|
||||||
ld a, [PartyCount]
|
ld a, [PartyCount]
|
||||||
and a
|
and a
|
||||||
ret z
|
ret z ; make sure it's not wasting time on an empty party
|
||||||
ld c, a
|
ld c, a
|
||||||
.loop
|
.loop
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
and $f
|
and $f ; lower nybble is the number of days remaining
|
||||||
jr z, .does_not_have_pokerus
|
jr z, .next ; if already 0, skip
|
||||||
sub b
|
sub b ; subtract the number of days
|
||||||
jr nc, .ok
|
jr nc, .ok ; max(result, 0)
|
||||||
xor a
|
xor a
|
||||||
|
|
||||||
.ok
|
.ok
|
||||||
ld d, a
|
ld d, a ; back up this value because we need to preserve the strain (upper nybble)
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
and $f0
|
and $f0
|
||||||
add d
|
add d
|
||||||
ld [hl], a
|
ld [hl], a ; this prevents a cured pokemon from recontracting pokerus
|
||||||
|
.next
|
||||||
.does_not_have_pokerus
|
|
||||||
ld de, PARTYMON_STRUCT_LENGTH
|
ld de, PARTYMON_STRUCT_LENGTH
|
||||||
add hl, de
|
add hl, de
|
||||||
dec c
|
dec c
|
||||||
@ -5678,44 +5676,44 @@ Function24b8f: ; 24b8f
|
|||||||
.booru_ko: ; 24bd4
|
.booru_ko: ; 24bd4
|
||||||
db "ボール こ@"
|
db "ボール こ@"
|
||||||
|
|
||||||
Function24bdc: ; 24bdc
|
StartMenu_DrawBugContestStatusBox: ; 24bdc
|
||||||
hlcoord 0, 0
|
hlcoord 0, 0
|
||||||
ld b, $5
|
ld b, 5
|
||||||
ld c, $11
|
ld c, 17
|
||||||
call TextBox
|
call TextBox
|
||||||
ret
|
ret
|
||||||
|
|
||||||
Function24be7: ; 24be7
|
StartMenu_PrintBugContestStatus: ; 24be7
|
||||||
ld hl, Options
|
ld hl, Options
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
push af
|
push af
|
||||||
set 4, [hl]
|
set NO_TEXT_SCROLL, [hl]
|
||||||
call Function24bdc
|
call StartMenu_DrawBugContestStatusBox
|
||||||
hlcoord 1, 5
|
hlcoord 1, 5
|
||||||
ld de, String24c52
|
ld de, .Balls_EN
|
||||||
call PlaceString
|
call PlaceString
|
||||||
hlcoord 8, 5
|
hlcoord 8, 5
|
||||||
ld de, wSafariBallsRemaining
|
ld de, wParkBallsRemaining
|
||||||
lb bc, PRINTNUM_RIGHTALIGN | 1, 2
|
lb bc, PRINTNUM_RIGHTALIGN | 1, 2
|
||||||
call PrintNum
|
call PrintNum
|
||||||
hlcoord 1, 1
|
hlcoord 1, 1
|
||||||
ld de, String24c4b
|
ld de, .CAUGHT
|
||||||
call PlaceString
|
call PlaceString
|
||||||
ld a, [wContestMon]
|
ld a, [wContestMon]
|
||||||
and a
|
and a
|
||||||
ld de, String24c59
|
ld de, .None
|
||||||
jr z, .asm_24c1e
|
jr z, .no_contest_mon
|
||||||
ld [wd265], a
|
ld [wd265], a
|
||||||
call GetPokemonName
|
call GetPokemonName
|
||||||
|
|
||||||
.asm_24c1e
|
.no_contest_mon
|
||||||
hlcoord 8, 1
|
hlcoord 8, 1
|
||||||
call PlaceString
|
call PlaceString
|
||||||
ld a, [wContestMon]
|
ld a, [wContestMon]
|
||||||
and a
|
and a
|
||||||
jr z, .asm_24c3e
|
jr z, .skip_level
|
||||||
hlcoord 1, 3
|
hlcoord 1, 3
|
||||||
ld de, String24c5e
|
ld de, .LEVEL
|
||||||
call PlaceString
|
call PlaceString
|
||||||
ld a, [wContestMonLevel]
|
ld a, [wContestMonLevel]
|
||||||
ld h, b
|
ld h, b
|
||||||
@ -5724,20 +5722,20 @@ Function24be7: ; 24be7
|
|||||||
ld c, $3
|
ld c, $3
|
||||||
call Function3842
|
call Function3842
|
||||||
|
|
||||||
.asm_24c3e
|
.skip_level
|
||||||
pop af
|
pop af
|
||||||
ld [Options], a
|
ld [Options], a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
String24c43: ; 24c43
|
.Balls_JP: ; 24c43
|
||||||
db "ボール こ@"
|
db "ボール こ@"
|
||||||
String24c4b: ; 24c4b
|
.CAUGHT: ; 24c4b
|
||||||
db "CAUGHT@"
|
db "CAUGHT@"
|
||||||
String24c52: ; 24c52
|
.Balls_EN: ; 24c52
|
||||||
db "BALLS:@"
|
db "BALLS:@"
|
||||||
String24c59: ; 24c59
|
.None: ; 24c59
|
||||||
db "None@"
|
db "None@"
|
||||||
String24c5e: ; 24c5e
|
.LEVEL: ; 24c5e
|
||||||
db "LEVEL@"
|
db "LEVEL@"
|
||||||
|
|
||||||
FindApricornsInBag: ; 24c64
|
FindApricornsInBag: ; 24c64
|
||||||
@ -5799,226 +5797,7 @@ INCLUDE "engine/mon_menu.asm"
|
|||||||
INCLUDE "battle/menu.asm"
|
INCLUDE "battle/menu.asm"
|
||||||
INCLUDE "engine/buy_sell_toss.asm"
|
INCLUDE "engine/buy_sell_toss.asm"
|
||||||
INCLUDE "engine/trainer_card.asm"
|
INCLUDE "engine/trainer_card.asm"
|
||||||
|
INCLUDE "engine/prof_oaks_pc.asm"
|
||||||
ProfOaksPC: ; 0x265d3
|
|
||||||
ld hl, OakPCText1
|
|
||||||
call MenuTextBox
|
|
||||||
call YesNoBox
|
|
||||||
jr c, .shutdown
|
|
||||||
call ProfOaksPCBoot ; player chose "yes"?
|
|
||||||
.shutdown
|
|
||||||
ld hl, OakPCText4
|
|
||||||
call PrintText
|
|
||||||
call JoyWaitAorB
|
|
||||||
call ExitMenu
|
|
||||||
ret
|
|
||||||
|
|
||||||
ProfOaksPCBoot ; 0x265ee
|
|
||||||
ld hl, OakPCText2
|
|
||||||
call PrintText
|
|
||||||
call Rate
|
|
||||||
call PlaySFX ; sfx loaded by previous Rate function call
|
|
||||||
call JoyWaitAorB
|
|
||||||
call WaitSFX
|
|
||||||
ret
|
|
||||||
|
|
||||||
ProfOaksPCRating: ; 0x26601
|
|
||||||
call Rate
|
|
||||||
push de
|
|
||||||
ld de, MUSIC_NONE
|
|
||||||
call PlayMusic
|
|
||||||
pop de
|
|
||||||
call PlaySFX
|
|
||||||
call JoyWaitAorB
|
|
||||||
call WaitSFX
|
|
||||||
ret
|
|
||||||
|
|
||||||
Rate: ; 0x26616
|
|
||||||
; calculate Seen/Owned
|
|
||||||
ld hl, PokedexSeen
|
|
||||||
ld b, EndPokedexSeen - PokedexSeen
|
|
||||||
call CountSetBits
|
|
||||||
ld [wd002], a
|
|
||||||
ld hl, PokedexCaught
|
|
||||||
ld b, EndPokedexCaught - PokedexCaught
|
|
||||||
call CountSetBits
|
|
||||||
ld [wd003], a
|
|
||||||
|
|
||||||
; print appropriate rating
|
|
||||||
call .UpdateRatingBuffers
|
|
||||||
ld hl, OakPCText3
|
|
||||||
call PrintText
|
|
||||||
call JoyWaitAorB
|
|
||||||
ld a, [wd003]
|
|
||||||
ld hl, OakRatings
|
|
||||||
call FindOakRating
|
|
||||||
push de
|
|
||||||
call PrintText
|
|
||||||
pop de
|
|
||||||
ret
|
|
||||||
|
|
||||||
.UpdateRatingBuffers: ; 0x26647
|
|
||||||
ld hl, StringBuffer3
|
|
||||||
ld de, wd002
|
|
||||||
call .UpdateRatingBuffer
|
|
||||||
ld hl, StringBuffer4
|
|
||||||
ld de, wd003
|
|
||||||
call .UpdateRatingBuffer
|
|
||||||
ret
|
|
||||||
|
|
||||||
.UpdateRatingBuffer: ; 0x2665a
|
|
||||||
push hl
|
|
||||||
ld a, "@"
|
|
||||||
ld bc, ITEM_NAME_LENGTH
|
|
||||||
call ByteFill
|
|
||||||
pop hl
|
|
||||||
lb bc, PRINTNUM_RIGHTALIGN | 1, 3
|
|
||||||
call PrintNum
|
|
||||||
ret
|
|
||||||
|
|
||||||
FindOakRating: ; 0x2666b
|
|
||||||
; return sound effect in de
|
|
||||||
; return text pointer in hl
|
|
||||||
nop
|
|
||||||
ld c, a
|
|
||||||
.loop
|
|
||||||
ld a, [hli]
|
|
||||||
cp c
|
|
||||||
jr nc, .match
|
|
||||||
rept 4
|
|
||||||
inc hl
|
|
||||||
endr
|
|
||||||
jr .loop
|
|
||||||
|
|
||||||
.match
|
|
||||||
ld a, [hli]
|
|
||||||
ld e, a
|
|
||||||
ld a, [hli]
|
|
||||||
ld d, a
|
|
||||||
ld a, [hli]
|
|
||||||
ld h, [hl]
|
|
||||||
ld l, a
|
|
||||||
ret
|
|
||||||
|
|
||||||
OakRatings: ; 0x2667f
|
|
||||||
oakrating: MACRO
|
|
||||||
db \1
|
|
||||||
dw \2, \3
|
|
||||||
endm
|
|
||||||
|
|
||||||
; if you caught at most this many, play this sound, load this text
|
|
||||||
oakrating 9, SFX_DEX_FANFARE_LESS_THAN_20, OakRating01
|
|
||||||
oakrating 19, SFX_DEX_FANFARE_LESS_THAN_20, OakRating02
|
|
||||||
oakrating 34, SFX_DEX_FANFARE_20_49, OakRating03
|
|
||||||
oakrating 49, SFX_DEX_FANFARE_20_49, OakRating04
|
|
||||||
oakrating 64, SFX_DEX_FANFARE_50_79, OakRating05
|
|
||||||
oakrating 79, SFX_DEX_FANFARE_50_79, OakRating06
|
|
||||||
oakrating 94, SFX_DEX_FANFARE_80_109, OakRating07
|
|
||||||
oakrating 109, SFX_DEX_FANFARE_80_109, OakRating08
|
|
||||||
oakrating 124, SFX_CAUGHT_MON, OakRating09
|
|
||||||
oakrating 139, SFX_CAUGHT_MON, OakRating10
|
|
||||||
oakrating 154, SFX_DEX_FANFARE_140_169, OakRating11
|
|
||||||
oakrating 169, SFX_DEX_FANFARE_140_169, OakRating12
|
|
||||||
oakrating 184, SFX_DEX_FANFARE_170_199, OakRating13
|
|
||||||
oakrating 199, SFX_DEX_FANFARE_170_199, OakRating14
|
|
||||||
oakrating 214, SFX_DEX_FANFARE_200_229, OakRating15
|
|
||||||
oakrating 229, SFX_DEX_FANFARE_200_229, OakRating16
|
|
||||||
oakrating 239, SFX_DEX_FANFARE_230_PLUS, OakRating17
|
|
||||||
oakrating 248, SFX_DEX_FANFARE_230_PLUS, OakRating18
|
|
||||||
oakrating 255, SFX_DEX_FANFARE_230_PLUS, OakRating19
|
|
||||||
|
|
||||||
OakPCText1: ; 0x266de
|
|
||||||
text_jump _OakPCText1
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakPCText2: ; 0x266e3
|
|
||||||
text_jump _OakPCText2
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakPCText3: ; 0x266e8
|
|
||||||
text_jump _OakPCText3
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating01:
|
|
||||||
text_jump _OakRating01
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating02:
|
|
||||||
text_jump _OakRating02
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating03:
|
|
||||||
text_jump _OakRating03
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating04:
|
|
||||||
text_jump _OakRating04
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating05:
|
|
||||||
text_jump _OakRating05
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating06:
|
|
||||||
text_jump _OakRating06
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating07:
|
|
||||||
text_jump _OakRating07
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating08:
|
|
||||||
text_jump _OakRating08
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating09:
|
|
||||||
text_jump _OakRating09
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating10:
|
|
||||||
text_jump _OakRating10
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating11:
|
|
||||||
text_jump _OakRating11
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating12:
|
|
||||||
text_jump _OakRating12
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating13:
|
|
||||||
text_jump _OakRating13
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating14:
|
|
||||||
text_jump _OakRating14
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating15:
|
|
||||||
text_jump _OakRating15
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating16:
|
|
||||||
text_jump _OakRating16
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating17:
|
|
||||||
text_jump _OakRating17
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating18:
|
|
||||||
text_jump _OakRating18
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakRating19:
|
|
||||||
text_jump _OakRating19
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
OakPCText4: ; 0x2674c
|
|
||||||
text_jump _OakPCText4
|
|
||||||
db "@"
|
|
||||||
|
|
||||||
INCLUDE "engine/decorations.asm"
|
INCLUDE "engine/decorations.asm"
|
||||||
|
|
||||||
PadCoords_de: ; 27092
|
PadCoords_de: ; 27092
|
||||||
@ -6161,7 +5940,7 @@ INCLUDE "battle/moves/move_effects_pointers.asm"
|
|||||||
MoveEffects: ; 2732e
|
MoveEffects: ; 2732e
|
||||||
INCLUDE "battle/moves/move_effects.asm"
|
INCLUDE "battle/moves/move_effects.asm"
|
||||||
|
|
||||||
Function27a28: ; 27a28
|
Kurt_SelectQuantity_InterpretJoypad: ; 27a28
|
||||||
call BuySellToss_InterpretJoypad
|
call BuySellToss_InterpretJoypad
|
||||||
ld b, a
|
ld b, a
|
||||||
ret
|
ret
|
||||||
|
1031
misc/mobile_45.asm
1031
misc/mobile_45.asm
File diff suppressed because it is too large
Load Diff
923
misc/mobile_45_sprite_engine.asm
Executable file
923
misc/mobile_45_sprite_engine.asm
Executable file
@ -0,0 +1,923 @@
|
|||||||
|
Function115d99: ; 115d99
|
||||||
|
ld de, GFX_11601a
|
||||||
|
ld hl, VTiles0 tile $60
|
||||||
|
lb bc, BANK(GFX_11601a), $14
|
||||||
|
call Get2bpp
|
||||||
|
xor a
|
||||||
|
ld [wc305], a
|
||||||
|
ld [wc306], a
|
||||||
|
ld [wc309], a
|
||||||
|
ld [wc30a], a
|
||||||
|
ld [wc30b], a
|
||||||
|
ld [wc30c], a
|
||||||
|
ld a, $10
|
||||||
|
ld [wc307], a
|
||||||
|
ld a, $18
|
||||||
|
ld [wc308], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 115dc3
|
||||||
|
|
||||||
|
Function115dc3: ; 115dc3
|
||||||
|
xor a
|
||||||
|
ld [wc305], a
|
||||||
|
ld a, $a0
|
||||||
|
ld hl, Sprites + 31 * 4
|
||||||
|
ld bc, 8 * 4
|
||||||
|
call ByteFill
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 115dd3
|
||||||
|
|
||||||
|
Function115dd3: ; 115dd3
|
||||||
|
ld a, [wc305]
|
||||||
|
and a
|
||||||
|
ret z
|
||||||
|
ld a, $a0
|
||||||
|
ld hl, Sprites + 31 * 4
|
||||||
|
ld bc, 8 * 4
|
||||||
|
call ByteFill
|
||||||
|
call Function115e22
|
||||||
|
ld a, [wc309]
|
||||||
|
sla a
|
||||||
|
ld c, a
|
||||||
|
ld b, 0
|
||||||
|
ld hl, Unknown_115e86
|
||||||
|
add hl, bc
|
||||||
|
ld a, [hli]
|
||||||
|
ld e, a
|
||||||
|
ld a, [hl]
|
||||||
|
ld d, a
|
||||||
|
push de
|
||||||
|
pop hl
|
||||||
|
ld de, Sprites + 31 * 4
|
||||||
|
ld a, [wc307]
|
||||||
|
ld c, a
|
||||||
|
ld a, [wc308]
|
||||||
|
ld b, a
|
||||||
|
ld a, [hli]
|
||||||
|
.asm_115e04
|
||||||
|
push af
|
||||||
|
ld a, [hli]
|
||||||
|
add b
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
add c
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
pop af
|
||||||
|
dec a
|
||||||
|
jr nz, .asm_115e04
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 115e18
|
||||||
|
|
||||||
|
Function115e18: ; 115e18
|
||||||
|
ld a, c
|
||||||
|
ld [wc30a], a
|
||||||
|
xor a
|
||||||
|
ld [wc30b], a
|
||||||
|
jr Function115e2b
|
||||||
|
|
||||||
|
; 115e22
|
||||||
|
|
||||||
|
Function115e22: ; 115e22
|
||||||
|
ld hl, wc30c
|
||||||
|
dec [hl]
|
||||||
|
ret nz
|
||||||
|
ld hl, wc30b
|
||||||
|
inc [hl]
|
||||||
|
|
||||||
|
Function115e2b: ; 115e2b
|
||||||
|
ld a, [wc30a]
|
||||||
|
sla a
|
||||||
|
ld c, a
|
||||||
|
ld b, 0
|
||||||
|
ld hl, Unknown_115e59
|
||||||
|
add hl, bc
|
||||||
|
ld a, [hli]
|
||||||
|
ld e, a
|
||||||
|
ld a, [hli]
|
||||||
|
ld d, a
|
||||||
|
push de
|
||||||
|
pop hl
|
||||||
|
ld a, [wc30b]
|
||||||
|
sla a
|
||||||
|
ld c, a
|
||||||
|
ld b, $0
|
||||||
|
add hl, bc
|
||||||
|
ld a, [hli]
|
||||||
|
cp $ff
|
||||||
|
jr nz, .not_end
|
||||||
|
xor a
|
||||||
|
ld [wc30b], a
|
||||||
|
jr Function115e2b
|
||||||
|
|
||||||
|
.not_end
|
||||||
|
ld [wc309], a
|
||||||
|
ld a, [hl]
|
||||||
|
ld [wc30c], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 115e59
|
||||||
|
|
||||||
|
Unknown_115e59:
|
||||||
|
dw Unknown_115e61
|
||||||
|
dw Unknown_115e6c
|
||||||
|
dw Unknown_115e76
|
||||||
|
dw Unknown_115e79
|
||||||
|
|
||||||
|
; OAM idx (see Unknown_115e86), flip flags/duration
|
||||||
|
Unknown_115e61: ; 115e61
|
||||||
|
db $04, $08
|
||||||
|
db $05, $08
|
||||||
|
db $06, $08
|
||||||
|
db $07, $08
|
||||||
|
db $08, $08
|
||||||
|
db -1
|
||||||
|
|
||||||
|
Unknown_115e6c: ; 115e6c
|
||||||
|
db $01, $08
|
||||||
|
db $02, $08
|
||||||
|
db $03, $08
|
||||||
|
db $09, $08
|
||||||
|
db $0a, $08
|
||||||
|
Unknown_115e76: ; 115e76
|
||||||
|
db $00, $08
|
||||||
|
db -1
|
||||||
|
|
||||||
|
Unknown_115e79: ; 115e79
|
||||||
|
db $0b, $08
|
||||||
|
db $0c, $08
|
||||||
|
db $0d, $08
|
||||||
|
db $0e, $08
|
||||||
|
db $0f, $08
|
||||||
|
db $00, $08
|
||||||
|
db -1
|
||||||
|
; 115e86
|
||||||
|
|
||||||
|
Unknown_115e86:
|
||||||
|
dw Unknown_115ea6
|
||||||
|
dw Unknown_115eb7
|
||||||
|
dw Unknown_115ecc
|
||||||
|
dw Unknown_115ee1
|
||||||
|
dw Unknown_115ef6
|
||||||
|
dw Unknown_115f13
|
||||||
|
dw Unknown_115f30
|
||||||
|
dw Unknown_115f4d
|
||||||
|
dw Unknown_115f6a
|
||||||
|
dw Unknown_115f87
|
||||||
|
dw Unknown_115f9c
|
||||||
|
dw Unknown_115fb1
|
||||||
|
dw Unknown_115fc6
|
||||||
|
dw Unknown_115fdb
|
||||||
|
dw Unknown_115ff0
|
||||||
|
dw Unknown_116005
|
||||||
|
|
||||||
|
Unknown_115ea6: ; 115ea6
|
||||||
|
db 4
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115eb7: ; 115eb7
|
||||||
|
db 5
|
||||||
|
dsprite 0, 0, 1, 0, $64, $00
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115ecc: ; 115ecc
|
||||||
|
db 5
|
||||||
|
dsprite 0, 0, 1, 0, $65, $00
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115ee1: ; 115ee1
|
||||||
|
db 5
|
||||||
|
dsprite 0, 0, 1, 0, $66, $00
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115ef6: ; 115ef6
|
||||||
|
db 7
|
||||||
|
dsprite 0, 0, 0, 0, $67, $01
|
||||||
|
dsprite 1, 0, 0, 0, $68, $01
|
||||||
|
dsprite 2, 0, 0, 0, $6d, $00
|
||||||
|
dsprite 2, 0, 1, 0, $69, $00
|
||||||
|
dsprite 2, 0, 2, 0, $6a, $00
|
||||||
|
dsprite 3, 0, 1, 0, $6b, $00
|
||||||
|
dsprite 3, 0, 2, 0, $6c, $00
|
||||||
|
|
||||||
|
Unknown_115f13: ; 115f13
|
||||||
|
db 7
|
||||||
|
dsprite 0, 0, 0, 0, $67, $01
|
||||||
|
dsprite 1, 0, 0, 0, $68, $01
|
||||||
|
dsprite 2, 0, 0, 0, $6e, $00
|
||||||
|
dsprite 2, 0, 1, 0, $69, $00
|
||||||
|
dsprite 2, 0, 2, 0, $6a, $00
|
||||||
|
dsprite 3, 0, 1, 0, $6b, $00
|
||||||
|
dsprite 3, 0, 2, 0, $6c, $00
|
||||||
|
|
||||||
|
Unknown_115f30: ; 115f30
|
||||||
|
db 7
|
||||||
|
dsprite 0, 0, 0, 0, $67, $01
|
||||||
|
dsprite 1, 0, 0, 0, $68, $01
|
||||||
|
dsprite 2, 0, 0, 0, $6f, $00
|
||||||
|
dsprite 2, 0, 1, 0, $69, $00
|
||||||
|
dsprite 2, 0, 2, 0, $6a, $00
|
||||||
|
dsprite 3, 0, 1, 0, $6b, $00
|
||||||
|
dsprite 3, 0, 2, 0, $6c, $00
|
||||||
|
|
||||||
|
Unknown_115f4d: ; 115f4d
|
||||||
|
db 7
|
||||||
|
dsprite 0, 0, 0, 0, $67, $01
|
||||||
|
dsprite 1, 0, 0, 0, $68, $01
|
||||||
|
dsprite 2, 0, 0, 0, $70, $00
|
||||||
|
dsprite 2, 0, 1, 0, $69, $00
|
||||||
|
dsprite 2, 0, 2, 0, $6a, $00
|
||||||
|
dsprite 3, 0, 1, 0, $6b, $00
|
||||||
|
dsprite 3, 0, 2, 0, $6c, $00
|
||||||
|
|
||||||
|
Unknown_115f6a: ; 115f6a
|
||||||
|
db 7
|
||||||
|
dsprite 0, 0, 0, 0, $67, $01
|
||||||
|
dsprite 1, 0, 0, 0, $68, $01
|
||||||
|
dsprite 2, 0, 0, 0, $71, $00
|
||||||
|
dsprite 2, 0, 1, 0, $69, $00
|
||||||
|
dsprite 2, 0, 2, 0, $6a, $00
|
||||||
|
dsprite 3, 0, 1, 0, $6b, $00
|
||||||
|
dsprite 3, 0, 2, 0, $6c, $00
|
||||||
|
|
||||||
|
Unknown_115f87: ; 115f87
|
||||||
|
db 5
|
||||||
|
dsprite 0, 0, 1, 0, $72, $00
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115f9c: ; 115f9c
|
||||||
|
db 5
|
||||||
|
dsprite 0, 0, 1, 0, $73, $00
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115fb1: ; 115fb1
|
||||||
|
db 5
|
||||||
|
dsprite 0, 1, 1, 0, $64, $60
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115fc6: ; 115fc6
|
||||||
|
db 5
|
||||||
|
dsprite 0, 1, 1, 0, $65, $60
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115fdb: ; 115fdb
|
||||||
|
db 5
|
||||||
|
dsprite 0, 1, 1, 0, $66, $60
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_115ff0: ; 115ff0
|
||||||
|
db 5
|
||||||
|
dsprite 0, 1, 1, 0, $72, $60
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
|
||||||
|
Unknown_116005: ; 116005
|
||||||
|
db 5
|
||||||
|
dsprite 0, 1, 1, 0, $73, $60
|
||||||
|
dsprite 1, 0, 0, 0, $60, $01
|
||||||
|
dsprite 1, 0, 1, 0, $61, $01
|
||||||
|
dsprite 2, 0, 0, 0, $62, $01
|
||||||
|
dsprite 2, 0, 1, 0, $63, $01
|
||||||
|
; 11601a
|
||||||
|
|
||||||
|
GFX_11601a:: ; 11601a
|
||||||
|
INCBIN "gfx/unknown/11601a.2bpp"
|
||||||
|
|
||||||
|
|
||||||
|
Function11615a: ; 11615a
|
||||||
|
xor a
|
||||||
|
ld [wc30d], a
|
||||||
|
ld [$c319], a
|
||||||
|
ld [wc310], a
|
||||||
|
ld [wc311], a
|
||||||
|
ld [wc312], a
|
||||||
|
ld [wc313], a
|
||||||
|
ld [wc314], a
|
||||||
|
ld [wc314 + 1], a
|
||||||
|
ld [wc314 + 4], a
|
||||||
|
ld [wc3f6], a
|
||||||
|
ld [wc3f8], a
|
||||||
|
ld [wc3f2], a
|
||||||
|
ld [wc3f4], a
|
||||||
|
ld a, $24
|
||||||
|
ld [wc3f5], a
|
||||||
|
ld a, $7
|
||||||
|
ld [wc3f7], a
|
||||||
|
ld a, $b0
|
||||||
|
ld [wc30e], a
|
||||||
|
ld [wc3f1], a
|
||||||
|
ld a, $48
|
||||||
|
ld [wc30f], a
|
||||||
|
ld [wc3f3], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 11619d
|
||||||
|
|
||||||
|
Function11619d: ; 11619d
|
||||||
|
ld a, [wc30d]
|
||||||
|
and a
|
||||||
|
ret z
|
||||||
|
ld a, [$c319]
|
||||||
|
cp $2
|
||||||
|
jr c, .asm_1161b4
|
||||||
|
ld a, $a0
|
||||||
|
ld hl, Sprites
|
||||||
|
ld bc, $0064
|
||||||
|
call ByteFill
|
||||||
|
|
||||||
|
.asm_1161b4
|
||||||
|
call Function1161b8
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 1161b8
|
||||||
|
|
||||||
|
Function1161b8: ; 1161b8
|
||||||
|
ld a, [$c319]
|
||||||
|
ld e, a
|
||||||
|
ld d, 0
|
||||||
|
ld hl, .Jumptable
|
||||||
|
rept 2
|
||||||
|
add hl, de
|
||||||
|
endr
|
||||||
|
ld a, [hli]
|
||||||
|
ld h, [hl]
|
||||||
|
ld l, a
|
||||||
|
jp [hl]
|
||||||
|
|
||||||
|
; 1161c7
|
||||||
|
|
||||||
|
.Jumptable: ; 1161c7
|
||||||
|
dw Function1161d5
|
||||||
|
dw Function116294
|
||||||
|
dw Function1162cb
|
||||||
|
dw Function1162f2
|
||||||
|
dw Function1163c0
|
||||||
|
dw Function11636e
|
||||||
|
dw Function116441
|
||||||
|
; 1161d5
|
||||||
|
|
||||||
|
Function1161d5: ; 1161d5
|
||||||
|
ld a, [rSVBK]
|
||||||
|
push af
|
||||||
|
|
||||||
|
ld a, $6
|
||||||
|
ld [rSVBK], a
|
||||||
|
|
||||||
|
ld hl, Unknown_117356
|
||||||
|
ld de, wDecompressScratch
|
||||||
|
ld bc, $0300
|
||||||
|
call CopyBytes
|
||||||
|
|
||||||
|
di
|
||||||
|
|
||||||
|
.wait_for_vblank
|
||||||
|
; Wait until a vblank would occur had interrupts not just been disabled.
|
||||||
|
ld a, [rLY]
|
||||||
|
cp $91
|
||||||
|
jr nz, .wait_for_vblank
|
||||||
|
|
||||||
|
ld a, $d0
|
||||||
|
ld [rHDMA1], a
|
||||||
|
ld a, $0
|
||||||
|
ld [rHDMA2], a
|
||||||
|
ld a, $1c
|
||||||
|
ld [rHDMA3], a
|
||||||
|
xor a
|
||||||
|
ld [rHDMA4], a
|
||||||
|
ld a, $8
|
||||||
|
ld [rHDMA5], a
|
||||||
|
|
||||||
|
ld a, $d0
|
||||||
|
ld [rHDMA1], a
|
||||||
|
ld a, $80
|
||||||
|
ld [rHDMA2], a
|
||||||
|
ld a, $1c
|
||||||
|
ld [rHDMA3], a
|
||||||
|
ld a, $80
|
||||||
|
ld [rHDMA4], a
|
||||||
|
ld a, $8
|
||||||
|
ld [rHDMA5], a
|
||||||
|
|
||||||
|
ld a, $d1
|
||||||
|
ld [rHDMA1], a
|
||||||
|
ld a, $0
|
||||||
|
ld [rHDMA2], a
|
||||||
|
ld a, $1d
|
||||||
|
ld [rHDMA3], a
|
||||||
|
xor a
|
||||||
|
ld [rHDMA4], a
|
||||||
|
ld a, $8
|
||||||
|
ld [rHDMA5], a
|
||||||
|
|
||||||
|
ld a, $1
|
||||||
|
ld [rVBK], a
|
||||||
|
|
||||||
|
ld a, $d1
|
||||||
|
ld [rHDMA1], a
|
||||||
|
ld a, $80
|
||||||
|
ld [rHDMA2], a
|
||||||
|
ld a, $1c
|
||||||
|
ld [rHDMA3], a
|
||||||
|
xor a
|
||||||
|
ld [rHDMA4], a
|
||||||
|
ld a, $8
|
||||||
|
ld [rHDMA5], a
|
||||||
|
|
||||||
|
ld a, $d2
|
||||||
|
ld [rHDMA1], a
|
||||||
|
ld a, $0
|
||||||
|
ld [rHDMA2], a
|
||||||
|
ld a, $1c
|
||||||
|
ld [rHDMA3], a
|
||||||
|
ld a, $80
|
||||||
|
ld [rHDMA4], a
|
||||||
|
ld a, $8
|
||||||
|
ld [rHDMA5], a
|
||||||
|
|
||||||
|
ld a, $d2
|
||||||
|
ld [rHDMA1], a
|
||||||
|
ld a, $80
|
||||||
|
ld [rHDMA2], a
|
||||||
|
ld a, $1d
|
||||||
|
ld [rHDMA3], a
|
||||||
|
xor a
|
||||||
|
ld [rHDMA4], a
|
||||||
|
ld a, $8
|
||||||
|
ld [rHDMA5], a
|
||||||
|
|
||||||
|
xor a
|
||||||
|
ld [rVBK], a
|
||||||
|
|
||||||
|
ei
|
||||||
|
|
||||||
|
pop af
|
||||||
|
ld [rSVBK], a
|
||||||
|
|
||||||
|
callba ReloadMapPart
|
||||||
|
ld a, $8
|
||||||
|
ld [MusicFade], a
|
||||||
|
ld de, MUSIC_MOBILE_ADAPTER
|
||||||
|
ld a, e
|
||||||
|
ld [MusicFadeIDLo], a
|
||||||
|
ld a, d
|
||||||
|
ld [MusicFadeIDHi], a
|
||||||
|
ld a, [$c319]
|
||||||
|
inc a
|
||||||
|
ld [$c319], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 11628c
|
||||||
|
|
||||||
|
MenuDataHeader_11628c: ; 11628c
|
||||||
|
db $40 ; flags
|
||||||
|
db 6, 0 ; start coords
|
||||||
|
db 17, 19 ; end coords
|
||||||
|
dw NULL
|
||||||
|
db 0 ; default option
|
||||||
|
; 116294
|
||||||
|
|
||||||
|
Function116294: ; 116294
|
||||||
|
callba Function170d02
|
||||||
|
ld a, [$c319]
|
||||||
|
inc a
|
||||||
|
ld [$c319], a
|
||||||
|
ld a, [rSVBK]
|
||||||
|
push af
|
||||||
|
ld a, $5
|
||||||
|
ld [rSVBK], a
|
||||||
|
ld hl, UnknBGPals + 8 * 6
|
||||||
|
ld de, $c320
|
||||||
|
ld bc, 2 palettes
|
||||||
|
call CopyBytes
|
||||||
|
ld hl, Palette_11734e
|
||||||
|
ld de, UnknBGPals + 8 * 7
|
||||||
|
ld bc, 1 palettes
|
||||||
|
call CopyBytes
|
||||||
|
call SetPalettes
|
||||||
|
pop af
|
||||||
|
ld [rSVBK], a
|
||||||
|
ld a, $30
|
||||||
|
ld [hWY], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 1162cb
|
||||||
|
|
||||||
|
Function1162cb: ; 1162cb
|
||||||
|
callba Function170cc6
|
||||||
|
ld a, [$c319]
|
||||||
|
inc a
|
||||||
|
ld [$c319], a
|
||||||
|
ld a, [rSVBK]
|
||||||
|
push af
|
||||||
|
ld a, $5
|
||||||
|
ld [rSVBK], a
|
||||||
|
ld hl, Palette_11730e
|
||||||
|
ld de, UnknOBPals + 2 palettes
|
||||||
|
ld bc, 6 palettes
|
||||||
|
call CopyBytes
|
||||||
|
call SetPalettes
|
||||||
|
pop af
|
||||||
|
ld [rSVBK], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 1162f2
|
||||||
|
|
||||||
|
Function1162f2: ; 1162f2
|
||||||
|
call Function11659d
|
||||||
|
call Function116758
|
||||||
|
call Function1167a6
|
||||||
|
ld a, [wc310]
|
||||||
|
cp EGG
|
||||||
|
ret z
|
||||||
|
sla a
|
||||||
|
ld c, a
|
||||||
|
ld b, 0
|
||||||
|
ld hl, Unknown_1168c5
|
||||||
|
add hl, bc
|
||||||
|
ld a, [hli]
|
||||||
|
ld e, a
|
||||||
|
ld a, [hl]
|
||||||
|
ld d, a
|
||||||
|
push de
|
||||||
|
pop hl
|
||||||
|
ld a, [wc30e]
|
||||||
|
ld c, a
|
||||||
|
ld a, [wc30f]
|
||||||
|
ld b, a
|
||||||
|
ld a, [wc314 + 4]
|
||||||
|
ld e, a
|
||||||
|
ld a, [hli]
|
||||||
|
sub e
|
||||||
|
ld de, Sprites + $24
|
||||||
|
.asm_116321
|
||||||
|
push af
|
||||||
|
ld a, [hli]
|
||||||
|
add b
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
add c
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
pop af
|
||||||
|
dec a
|
||||||
|
jr nz, .asm_116321
|
||||||
|
call Function116468
|
||||||
|
ld a, [wc3f5]
|
||||||
|
sla a
|
||||||
|
ld c, a
|
||||||
|
ld b, 0
|
||||||
|
ld hl, Unknown_1168c5
|
||||||
|
add hl, bc
|
||||||
|
ld a, [hli]
|
||||||
|
ld e, a
|
||||||
|
ld a, [hl]
|
||||||
|
ld d, a
|
||||||
|
push de
|
||||||
|
pop hl
|
||||||
|
ld a, [wc3f1]
|
||||||
|
ld c, a
|
||||||
|
ld a, [wc3f3]
|
||||||
|
ld b, a
|
||||||
|
ld a, [wc3f8]
|
||||||
|
ld e, a
|
||||||
|
ld a, [hli]
|
||||||
|
sub e
|
||||||
|
ld de, Sprites
|
||||||
|
.asm_11635a
|
||||||
|
push af
|
||||||
|
ld a, [hli]
|
||||||
|
add b
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
add c
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
ld a, [hli]
|
||||||
|
ld [de], a
|
||||||
|
inc de
|
||||||
|
pop af
|
||||||
|
dec a
|
||||||
|
jr nz, .asm_11635a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 11636e
|
||||||
|
|
||||||
|
Function11636e: ; 11636e
|
||||||
|
ld a, [rSVBK]
|
||||||
|
push af
|
||||||
|
ld a, $5
|
||||||
|
ld [rSVBK], a
|
||||||
|
ld hl, BGPals
|
||||||
|
ld de, UnknBGPals
|
||||||
|
ld bc, $0040
|
||||||
|
call CopyBytes
|
||||||
|
pop af
|
||||||
|
ld [rSVBK], a
|
||||||
|
call SetPalettes
|
||||||
|
ld a, [rSVBK]
|
||||||
|
push af
|
||||||
|
ld a, $1
|
||||||
|
ld [rSVBK], a
|
||||||
|
ld a, $a0
|
||||||
|
ld hl, Sprites
|
||||||
|
ld bc, 16 * 4
|
||||||
|
call ByteFill
|
||||||
|
ld a, $90
|
||||||
|
ld [hWY], a
|
||||||
|
call UpdateSprites
|
||||||
|
pop af
|
||||||
|
ld [rSVBK], a
|
||||||
|
callba ReloadMapPart
|
||||||
|
ld a, $8
|
||||||
|
ld [MusicFade], a
|
||||||
|
ld a, [wMapMusic]
|
||||||
|
ld [MusicFadeIDLo], a
|
||||||
|
xor a
|
||||||
|
ld [MusicFadeIDHi], a
|
||||||
|
xor a
|
||||||
|
ld [$c319], a
|
||||||
|
ld [wc30d], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 1163c0
|
||||||
|
|
||||||
|
Function1163c0: ; 1163c0
|
||||||
|
ld a, [rSVBK]
|
||||||
|
push af
|
||||||
|
ld a, $1
|
||||||
|
ld [rSVBK], a
|
||||||
|
ld a, $a0
|
||||||
|
ld hl, Sprites
|
||||||
|
ld bc, 16 * 4
|
||||||
|
call ByteFill
|
||||||
|
call DelayFrame
|
||||||
|
callba Function14146
|
||||||
|
ld b, SCGB_MAPPALS
|
||||||
|
call GetSGBLayout
|
||||||
|
ld a, [rSVBK]
|
||||||
|
push af
|
||||||
|
ld a, $5
|
||||||
|
ld [rSVBK], a
|
||||||
|
ld hl, $c320
|
||||||
|
ld de, wd030
|
||||||
|
ld bc, $0010
|
||||||
|
call CopyBytes
|
||||||
|
pop af
|
||||||
|
ld [rSVBK], a
|
||||||
|
call SetPalettes
|
||||||
|
call DelayFrame
|
||||||
|
ld a, $90
|
||||||
|
ld [hWY], a
|
||||||
|
call UpdateSprites
|
||||||
|
callba Function14157
|
||||||
|
pop af
|
||||||
|
ld [rSVBK], a
|
||||||
|
callba ReloadMapPart
|
||||||
|
ld a, [wLinkMode]
|
||||||
|
cp $4
|
||||||
|
jr z, .asm_11642a
|
||||||
|
ld a, $8
|
||||||
|
ld [MusicFade], a
|
||||||
|
ld a, [wMapMusic]
|
||||||
|
ld [MusicFadeIDLo], a
|
||||||
|
xor a
|
||||||
|
ld [MusicFadeIDHi], a
|
||||||
|
jr .asm_116439
|
||||||
|
|
||||||
|
.asm_11642a
|
||||||
|
ld a, $8
|
||||||
|
ld [MusicFade], a
|
||||||
|
ld a, $0
|
||||||
|
ld [MusicFadeIDLo], a
|
||||||
|
ld a, $0
|
||||||
|
ld [MusicFadeIDHi], a
|
||||||
|
|
||||||
|
.asm_116439
|
||||||
|
xor a
|
||||||
|
ld [$c319], a
|
||||||
|
ld [wc30d], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 116441
|
||||||
|
|
||||||
|
Function116441: ; 116441
|
||||||
|
callba Function17d405
|
||||||
|
ld a, $90
|
||||||
|
ld [hWY], a
|
||||||
|
callba ReloadMapPart
|
||||||
|
ld a, $8
|
||||||
|
ld [MusicFade], a
|
||||||
|
ld a, [wMapMusic]
|
||||||
|
ld [MusicFadeIDLo], a
|
||||||
|
xor a
|
||||||
|
ld [MusicFadeIDHi], a
|
||||||
|
xor a
|
||||||
|
ld [$c319], a
|
||||||
|
ld [wc30d], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; 116468
|
||||||
|
|
||||||
|
Function116468: ; 116468
|
||||||
|
call Function116567
|
||||||
|
ld a, [wc314]
|
||||||
|
cp $d
|
||||||
|
jr nz, .asm_1164a8
|
||||||
|
ld hl, wc30e
|
||||||
|
ld a, [hl]
|
||||||
|
cp $50
|
||||||
|
jr nc, .asm_116484
|
||||||
|
ld a, $50
|
||||||
|
sub [hl]
|
||||||
|
add $50
|
||||||
|
ld [wc3f1], a
|
||||||
|
jr .asm_11648d
|
||||||
|
|
||||||
|
.asm_116484
|
||||||
|
sub $50
|
||||||
|
ld c, a
|
||||||
|
ld a, $50
|
||||||
|
sub c
|
||||||
|
ld [wc3f1], a
|
||||||
|
|
||||||
|
.asm_11648d
|
||||||
|
ld hl, wc30f
|
||||||
|
ld a, [hl]
|
||||||
|
cp $60
|
||||||
|
jr nc, .asm_11649e
|
||||||
|
ld a, $60
|
||||||
|
sub [hl]
|
||||||
|
add $60
|
||||||
|
ld [wc3f3], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
.asm_11649e
|
||||||
|
sub $60
|
||||||
|
ld c, a
|
||||||
|
ld a, $60
|
||||||
|
sub c
|
||||||
|
ld [wc3f3], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
.asm_1164a8
|
||||||
|
ld hl, wc30e
|
||||||
|
ld a, $b0
|
||||||
|
cp [hl]
|
||||||
|
jr nc, .asm_1164b8
|
||||||
|
ld a, [wc3f1]
|
||||||
|
and a
|
||||||
|
jr z, .asm_11650b
|
||||||
|
jr .asm_1164f2
|
||||||
|
|
||||||
|
.asm_1164b8
|
||||||
|
ld a, [wc3f1]
|
||||||
|
sub [hl]
|
||||||
|
jr nc, .asm_1164c1
|
||||||
|
xor $ff
|
||||||
|
inc a
|
||||||
|
|
||||||
|
.asm_1164c1
|
||||||
|
ld b, a
|
||||||
|
ld c, $0
|
||||||
|
ld a, $5
|
||||||
|
.asm_1164c6
|
||||||
|
srl b
|
||||||
|
rr c
|
||||||
|
dec a
|
||||||
|
jr nz, .asm_1164c6
|
||||||
|
ld a, c
|
||||||
|
ld [wc3fa], a
|
||||||
|
ld a, b
|
||||||
|
ld [wc3f9], a
|
||||||
|
ld a, [wc3f1]
|
||||||
|
sub [hl]
|
||||||
|
jr c, .asm_1164f2
|
||||||
|
ld c, $0
|
||||||
|
ld a, [wc3fa]
|
||||||
|
xor $ff
|
||||||
|
add $1
|
||||||
|
rl c
|
||||||
|
ld [wc3fa], a
|
||||||
|
ld a, [wc3f9]
|
||||||
|
xor $ff
|
||||||
|
add c
|
||||||
|
ld [wc3f9], a
|
||||||
|
|
||||||
|
.asm_1164f2
|
||||||
|
ld a, [wc3f2]
|
||||||
|
ld l, a
|
||||||
|
ld a, [wc3f1]
|
||||||
|
ld h, a
|
||||||
|
ld a, [wc3fa]
|
||||||
|
ld e, a
|
||||||
|
ld a, [wc3f9]
|
||||||
|
ld d, a
|
||||||
|
add hl, de
|
||||||
|
ld a, l
|
||||||
|
ld [wc3f2], a
|
||||||
|
ld a, h
|
||||||
|
ld [wc3f1], a
|
||||||
|
|
||||||
|
.asm_11650b
|
||||||
|
ld hl, wc30f
|
||||||
|
ld a, $b0
|
||||||
|
cp [hl]
|
||||||
|
jr c, .asm_11654d
|
||||||
|
ld a, [wc3f3]
|
||||||
|
sub [hl]
|
||||||
|
jr nc, .asm_11651c
|
||||||
|
xor $ff
|
||||||
|
inc a
|
||||||
|
|
||||||
|
.asm_11651c
|
||||||
|
ld b, a
|
||||||
|
ld c, $0
|
||||||
|
ld a, $5
|
||||||
|
.asm_116521
|
||||||
|
srl b
|
||||||
|
rr c
|
||||||
|
dec a
|
||||||
|
jr nz, .asm_116521
|
||||||
|
ld a, c
|
||||||
|
ld [wc3fc], a
|
||||||
|
ld a, b
|
||||||
|
ld [wc3fb], a
|
||||||
|
ld a, [wc3f3]
|
||||||
|
sub [hl]
|
||||||
|
jr c, .asm_11654d
|
||||||
|
ld c, $0
|
||||||
|
ld a, [wc3fc]
|
||||||
|
xor $ff
|
||||||
|
add $1
|
||||||
|
rl c
|
||||||
|
ld [wc3fc], a
|
||||||
|
ld a, [wc3fb]
|
||||||
|
xor $ff
|
||||||
|
add c
|
||||||
|
ld [wc3fb], a
|
||||||
|
|
||||||
|
.asm_11654d
|
||||||
|
ld a, [wc3f4]
|
||||||
|
ld l, a
|
||||||
|
ld a, [wc3f3]
|
||||||
|
ld h, a
|
||||||
|
ld a, [wc3fc]
|
||||||
|
ld e, a
|
||||||
|
ld a, [wc3fb]
|
||||||
|
ld d, a
|
||||||
|
add hl, de
|
||||||
|
ld a, l
|
||||||
|
ld [wc3f4], a
|
||||||
|
ld a, h
|
||||||
|
ld [wc3f3], a
|
||||||
|
ret
|
32
wram.asm
32
wram.asm
@ -308,7 +308,7 @@ wGlobalAnimYOffset:: ds 1
|
|||||||
wGlobalAnimXOffset:: ds 1
|
wGlobalAnimXOffset:: ds 1
|
||||||
wSpriteAnimsEnd::
|
wSpriteAnimsEnd::
|
||||||
|
|
||||||
wc3c1:: ds 11
|
ds 11
|
||||||
wc3cc:: ds 1
|
wc3cc:: ds 1
|
||||||
wc3cd:: ds 31
|
wc3cd:: ds 31
|
||||||
wc3ec:: ds 1
|
wc3ec:: ds 1
|
||||||
@ -373,19 +373,21 @@ wBT_OTTemp:: battle_tower_struct wBT_OTTemp
|
|||||||
wMisc:: ; ds (SCREEN_WIDTH + 4) * (SCREEN_HEIGHT + 2)
|
wMisc:: ; ds (SCREEN_WIDTH + 4) * (SCREEN_HEIGHT + 2)
|
||||||
wBattle::
|
wBattle::
|
||||||
wc608::
|
wc608::
|
||||||
|
ds 7
|
||||||
|
wc60f::
|
||||||
|
ds 3
|
||||||
|
wc612::
|
||||||
|
ds 10
|
||||||
|
wInitHourBuffer:: ; c61c
|
||||||
|
ds 10
|
||||||
|
wc626::
|
||||||
|
ds wc608 - @
|
||||||
|
|
||||||
wEnemyMoveStruct:: move_struct wEnemyMoveStruct
|
wEnemyMoveStruct:: move_struct wEnemyMoveStruct
|
||||||
wc60f::
|
|
||||||
wPlayerMoveStruct:: move_struct wPlayerMoveStruct
|
wPlayerMoveStruct:: move_struct wPlayerMoveStruct
|
||||||
wc616::
|
|
||||||
ds -4
|
|
||||||
wc612:: ds 4
|
|
||||||
EnemyMonNick:: ds PKMN_NAME_LENGTH ; c616
|
EnemyMonNick:: ds PKMN_NAME_LENGTH ; c616
|
||||||
ds -5
|
|
||||||
wInitHourBuffer:: ds 5
|
|
||||||
BattleMonNick:: ds PKMN_NAME_LENGTH ; c621
|
BattleMonNick:: ds PKMN_NAME_LENGTH ; c621
|
||||||
ds -6
|
|
||||||
wc626:: ds 6
|
|
||||||
|
|
||||||
BattleMon:: battle_struct BattleMon ; c62c
|
BattleMon:: battle_struct BattleMon ; c62c
|
||||||
|
|
||||||
@ -637,10 +639,9 @@ wc6eb:: ds 1
|
|||||||
wPayDayMoney:: ds 3 ; c6ec
|
wPayDayMoney:: ds 3 ; c6ec
|
||||||
|
|
||||||
wSafariMonAngerCount:: ds 1
|
wSafariMonAngerCount:: ds 1
|
||||||
wSafariMonEating::
|
wSafariMonEating:: ds 2
|
||||||
wc6f0:: ds 2
|
|
||||||
wEnemyBackupDVs:: ; used when enemy is transformed
|
wEnemyBackupDVs:: ; used when enemy is transformed
|
||||||
wc6f2:: ds 2
|
ds 2
|
||||||
AlreadyDisobeyed:: ; c6f4
|
AlreadyDisobeyed:: ; c6f4
|
||||||
ds 1
|
ds 1
|
||||||
|
|
||||||
@ -2763,15 +2764,12 @@ wdc0d:: ds 1
|
|||||||
wdc0e:: ds 1
|
wdc0e:: ds 1
|
||||||
|
|
||||||
; Sprite id of each decoration
|
; Sprite id of each decoration
|
||||||
wdc0f::
|
|
||||||
Bed:: ; dc0f
|
Bed:: ; dc0f
|
||||||
ds 1
|
ds 1
|
||||||
Carpet:: ; dc10
|
Carpet:: ; dc10
|
||||||
ds 1
|
ds 1
|
||||||
wdc11::
|
|
||||||
Plant:: ; dc11
|
Plant:: ; dc11
|
||||||
ds 1
|
ds 1
|
||||||
wdc12::
|
|
||||||
Poster:: ; dc12
|
Poster:: ; dc12
|
||||||
ds 1
|
ds 1
|
||||||
Console:: ; dc13
|
Console:: ; dc13
|
||||||
@ -2810,8 +2808,8 @@ FruitTreeFlags:: ; dc27
|
|||||||
|
|
||||||
wLuckyNumberDayBuffer:: ds 2
|
wLuckyNumberDayBuffer:: ds 2
|
||||||
ds 2
|
ds 2
|
||||||
wSpecialPhoneCallID:: ds 2
|
wSpecialPhoneCallID:: ds 1
|
||||||
wdc33:: ds 2
|
ds 3
|
||||||
wBugContestStartTime:: ds 4 ; day, hour, min, sec
|
wBugContestStartTime:: ds 4 ; day, hour, min, sec
|
||||||
wdc39:: ds 1
|
wdc39:: ds 1
|
||||||
wUnusedTwoDayTimer:: ds 1
|
wUnusedTwoDayTimer:: ds 1
|
||||||
|
Loading…
Reference in New Issue
Block a user