2014-05-22 22:13:20 +00:00
|
|
|
Func_410e2: ; 410e2 (10:50e2)
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [wTradedPlayerMonSpecies]
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wcd5e], a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [wTradedEnemyMonSpecies]
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wcd5f], a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld de, PointerIDs_41138
|
2014-05-22 22:13:20 +00:00
|
|
|
jr Func_41102
|
|
|
|
|
|
|
|
Func_410f3: ; 410f3 (10:50f3)
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [wTradedEnemyMonSpecies]
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wcd5e], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, [wTrainerSpriteOffset]
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wcd5f], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld de, PointerIDs_41149
|
|
|
|
|
|
|
|
Func_41102: ; 41102 (10:5102)
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [W_OPTIONS]
|
2014-05-22 22:13:20 +00:00
|
|
|
push af
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [hSCY]
|
2014-05-22 22:13:20 +00:00
|
|
|
push af
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [hSCX]
|
2014-05-22 22:13:20 +00:00
|
|
|
push af
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [W_OPTIONS], a
|
|
|
|
ld [hSCY], a
|
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
push de
|
|
|
|
.asm_41115
|
|
|
|
pop de
|
|
|
|
ld a, [de]
|
|
|
|
cp $ff
|
|
|
|
jr z, .asm_4112d
|
|
|
|
inc de
|
|
|
|
push de
|
2015-02-07 10:43:08 +00:00
|
|
|
ld hl, PointerTable_4115f
|
2014-05-22 22:13:20 +00:00
|
|
|
add a
|
|
|
|
ld c, a
|
|
|
|
ld b, $0
|
|
|
|
add hl, bc
|
|
|
|
ld a, [hli]
|
|
|
|
ld h, [hl]
|
|
|
|
ld l, a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld de, .asm_41115
|
2014-05-22 22:13:20 +00:00
|
|
|
push de
|
|
|
|
jp [hl]
|
|
|
|
.asm_4112d
|
|
|
|
pop af
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
pop af
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [hSCY], a
|
2014-05-22 22:13:20 +00:00
|
|
|
pop af
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [W_OPTIONS], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
|
|
|
|
|
|
|
; these bytes refer to the $00th through $10th pointer of PointerTable_4115f
|
|
|
|
PointerIDs_41138: ; 41138 (10:5138)
|
|
|
|
db $00,$01,$02,$03,$05,$07,$08,$09,$0A,$0B,$06,$08,$02,$04,$07,$0E,$FF
|
|
|
|
|
|
|
|
PointerIDs_41149: ; 41149 (10:5149)
|
|
|
|
db $00,$08,$0D,$0B,$10,$05,$10,$08,$02,$04,$0F,$01,$02,$03,$10,$06,$10,$07,$08,$09,$0E,$FF
|
|
|
|
|
|
|
|
PointerTable_4115f: ; 4115f (10:515f)
|
|
|
|
dw LoadTradingGFXAndMonNames
|
2015-02-07 10:43:08 +00:00
|
|
|
dw Trade_ShowPlayerMon
|
|
|
|
dw Trade_DrawOpenEndOfLinkCable
|
|
|
|
dw Trade_AnimateBallEnteringLinkCable
|
|
|
|
dw Trade_ShowEnemyMon
|
2014-05-22 22:13:20 +00:00
|
|
|
dw Func_41376
|
|
|
|
dw Func_413c6
|
2015-02-07 10:43:08 +00:00
|
|
|
dw Trade_Delay100
|
2014-05-22 22:13:20 +00:00
|
|
|
dw Func_415c8
|
|
|
|
dw PrintTradeWentToText
|
|
|
|
dw PrintTradeForSendsText
|
|
|
|
dw PrintTradeFarewellText
|
|
|
|
dw PrintTradeTakeCareText
|
|
|
|
dw PrintTradeWillTradeText
|
|
|
|
dw Func_4123b
|
|
|
|
dw Func_415df
|
2015-02-07 10:43:08 +00:00
|
|
|
dw Trade_SwapNames
|
2014-05-22 22:13:20 +00:00
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_Delay100: ; 41181 (10:5181)
|
|
|
|
ld c, 100
|
2014-05-22 22:13:20 +00:00
|
|
|
jp DelayFrames
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_CopyTileMapToVRAM: ; 41186 (10:5186)
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call Delay3
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_Delay80: ; 41191 (10:5191)
|
|
|
|
ld c, 80
|
2014-05-22 22:13:20 +00:00
|
|
|
jp DelayFrames
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_ClearTileMap: ; 41196 (10:5196)
|
2014-05-22 22:13:20 +00:00
|
|
|
ld hl, wTileMap
|
2015-02-07 10:43:08 +00:00
|
|
|
ld bc, 20 * 18
|
|
|
|
ld a, " "
|
2014-05-22 22:13:20 +00:00
|
|
|
jp FillMemory
|
|
|
|
|
|
|
|
LoadTradingGFXAndMonNames: ; 411a1 (10:51a1)
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_ClearTileMap
|
2014-05-22 22:13:20 +00:00
|
|
|
call DisableLCD
|
2015-02-07 10:43:08 +00:00
|
|
|
ld hl, TradingAnimationGraphics
|
2014-05-29 08:31:46 +00:00
|
|
|
ld de, vChars2 + $310
|
2014-05-22 22:13:20 +00:00
|
|
|
ld bc, $310
|
|
|
|
ld a, BANK(TradingAnimationGraphics)
|
|
|
|
call FarCopyData2
|
2015-02-07 10:43:08 +00:00
|
|
|
ld hl, TradingAnimationGraphics2
|
2014-05-29 08:31:46 +00:00
|
|
|
ld de, vSprites + $7c0
|
2014-05-22 22:13:20 +00:00
|
|
|
ld bc, $40
|
|
|
|
ld a, BANK(TradingAnimationGraphics2)
|
|
|
|
call FarCopyData2
|
2014-05-29 08:31:46 +00:00
|
|
|
ld hl, vBGMap0
|
2014-05-22 22:13:20 +00:00
|
|
|
ld bc, $800
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, " "
|
2014-05-22 22:13:20 +00:00
|
|
|
call FillMemory
|
2014-05-23 22:34:35 +00:00
|
|
|
call ClearSprites
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $ff
|
2014-09-13 07:50:56 +00:00
|
|
|
ld [wUpdateSpritesEnabled], a
|
2014-05-26 21:04:56 +00:00
|
|
|
ld hl, wd730
|
2014-05-22 22:13:20 +00:00
|
|
|
set 6, [hl]
|
2014-09-13 07:50:56 +00:00
|
|
|
ld a, [wOnSGB]
|
2014-05-22 22:13:20 +00:00
|
|
|
and a
|
|
|
|
ld a, $e4
|
|
|
|
jr z, .asm_411e5
|
|
|
|
ld a, $f0
|
|
|
|
.asm_411e5
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [rOBP0], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call EnableLCD
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
|
|
|
ld a, [wTradedPlayerMonSpecies]
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd11e], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call GetMonName
|
2014-05-26 21:04:56 +00:00
|
|
|
ld hl, wcd6d
|
|
|
|
ld de, wcf4b
|
2014-05-22 22:13:20 +00:00
|
|
|
ld bc, $b
|
|
|
|
call CopyData
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [wTradedEnemyMonSpecies]
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd11e], a
|
2014-05-22 22:13:20 +00:00
|
|
|
jp GetMonName
|
|
|
|
|
|
|
|
Func_4120b: ; 4120b (10:520b)
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, %11010000
|
|
|
|
ld [rOBP1], a
|
2015-03-13 12:33:16 +00:00
|
|
|
ld b, BANK(LoadMonPartySpriteTilePatterns)
|
|
|
|
ld hl, LoadMonPartySpriteTilePatterns
|
2014-05-22 22:13:20 +00:00
|
|
|
jp Bankswitch
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_SwapNames: ; 41217 (10:5217)
|
2014-06-14 11:12:40 +00:00
|
|
|
ld hl, wPlayerName
|
2015-02-07 10:43:08 +00:00
|
|
|
ld de, wBuffer
|
|
|
|
ld bc, 11
|
2014-05-22 22:13:20 +00:00
|
|
|
call CopyData
|
2015-02-07 10:43:08 +00:00
|
|
|
ld hl, wLinkEnemyTrainerName
|
2014-06-14 11:12:40 +00:00
|
|
|
ld de, wPlayerName
|
2015-02-07 10:43:08 +00:00
|
|
|
ld bc, 11
|
2014-05-22 22:13:20 +00:00
|
|
|
call CopyData
|
2015-02-07 10:43:08 +00:00
|
|
|
ld hl, wBuffer
|
|
|
|
ld de, wLinkEnemyTrainerName
|
|
|
|
ld bc, 11
|
2014-05-22 22:13:20 +00:00
|
|
|
jp CopyData
|
|
|
|
|
|
|
|
Func_4123b: ; 4123b (10:523b)
|
|
|
|
xor a
|
|
|
|
call LoadGBPal
|
2014-05-26 21:04:56 +00:00
|
|
|
ld hl, wd730
|
2014-05-22 22:13:20 +00:00
|
|
|
res 6, [hl]
|
|
|
|
ret
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_ShowPlayerMon: ; 41245 (10:5245)
|
|
|
|
ld a, %10101011
|
|
|
|
ld [rLCDC], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $50
|
2014-09-23 22:02:03 +00:00
|
|
|
ld [hWY], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $86
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [rWX], a
|
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 4, 0
|
2015-02-07 10:43:08 +00:00
|
|
|
ld b, 6
|
|
|
|
ld c, 10
|
2014-05-22 22:13:20 +00:00
|
|
|
call TextBoxBorder
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_PrintPlayerMonInfoText
|
2014-05-22 22:13:20 +00:00
|
|
|
ld b, $98
|
|
|
|
call CopyScreenTileBufferToVRAM
|
|
|
|
call ClearScreen
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [wTradedPlayerMonSpecies]
|
|
|
|
call Trade_LoadMonSprite
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $7e
|
2015-02-07 10:43:08 +00:00
|
|
|
.slideScreenLoop
|
2014-05-22 22:13:20 +00:00
|
|
|
push af
|
|
|
|
call DelayFrame
|
|
|
|
pop af
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [rWX], a
|
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
dec a
|
|
|
|
dec a
|
|
|
|
and a
|
2015-02-07 10:43:08 +00:00
|
|
|
jr nz, .slideScreenLoop
|
|
|
|
call Trade_Delay80
|
|
|
|
ld a, TRADE_BALL_POOF_ANIM
|
|
|
|
call Trade_ShowAnimation
|
|
|
|
ld a, TRADE_BALL_DROP_ANIM
|
|
|
|
call Trade_ShowAnimation
|
|
|
|
ld a, [wTradedPlayerMonSpecies]
|
2014-05-22 22:13:20 +00:00
|
|
|
call PlayCry
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_DrawOpenEndOfLinkCable: ; 41298 (10:5298)
|
|
|
|
call Trade_ClearTileMap
|
2014-05-22 22:13:20 +00:00
|
|
|
ld b, $98
|
|
|
|
call CopyScreenTileBufferToVRAM
|
|
|
|
ld b, $8
|
|
|
|
call GoPAL_SET
|
2014-05-29 08:31:46 +00:00
|
|
|
ld hl, vBGMap1 + $8c
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_RedrawRows4And5
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $a0
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call DelayFrame
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, %10001011
|
|
|
|
ld [rLCDC], a
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 6, 2
|
2015-02-07 10:43:08 +00:00
|
|
|
ld b, $7 ; open end of link cable tile ID list index
|
|
|
|
call CopyTileIDsFromList_ZeroBaseTileID
|
|
|
|
call Trade_CopyTileMapToVRAM
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, (SFX_02_3d - SFX_Headers_02) / 3
|
|
|
|
call PlaySound
|
2015-02-07 10:43:08 +00:00
|
|
|
ld c, 20
|
|
|
|
.loop
|
|
|
|
ld a, [hSCX]
|
|
|
|
add 4
|
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
dec c
|
2015-02-07 10:43:08 +00:00
|
|
|
jr nz, .loop
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_AnimateBallEnteringLinkCable: ; 412d2 (10:52d2)
|
|
|
|
ld a, TRADE_BALL_SHAKE_ANIM
|
|
|
|
call Trade_ShowAnimation
|
2014-09-17 19:37:47 +00:00
|
|
|
ld c, 10
|
2014-05-22 22:13:20 +00:00
|
|
|
call DelayFrames
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, %11100100
|
|
|
|
ld [rOBP0], a
|
2014-05-22 22:13:20 +00:00
|
|
|
xor a
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd09f], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld bc, $2060
|
2015-02-07 10:43:08 +00:00
|
|
|
.moveBallInsideLinkCableLoop
|
2014-05-22 22:13:20 +00:00
|
|
|
push bc
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld de, Trade_BallInsideLinkCableOAM
|
2014-05-22 22:13:20 +00:00
|
|
|
call WriteOAMBlock
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [wd09f]
|
2014-05-22 22:13:20 +00:00
|
|
|
xor $1
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd09f], a
|
2014-05-22 22:13:20 +00:00
|
|
|
add $7e
|
2014-05-26 21:04:56 +00:00
|
|
|
ld hl, wOAMBuffer + $02
|
2014-05-22 22:13:20 +00:00
|
|
|
ld de, $4
|
|
|
|
ld c, e
|
2015-02-07 10:43:08 +00:00
|
|
|
.cycleSpriteFramesLoop
|
2014-05-22 22:13:20 +00:00
|
|
|
ld [hl], a
|
|
|
|
add hl, de
|
|
|
|
dec c
|
2015-02-07 10:43:08 +00:00
|
|
|
jr nz, .cycleSpriteFramesLoop
|
2014-05-22 22:13:20 +00:00
|
|
|
call Delay3
|
|
|
|
pop bc
|
|
|
|
ld a, c
|
|
|
|
add $4
|
|
|
|
ld c, a
|
|
|
|
cp $a0
|
2015-02-07 10:43:08 +00:00
|
|
|
jr nc, .ballSpriteReachedEdgeOfScreen
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, (SFX_02_3c - SFX_Headers_02) / 3
|
|
|
|
call PlaySound
|
2015-02-07 10:43:08 +00:00
|
|
|
jr .moveBallInsideLinkCableLoop
|
|
|
|
.ballSpriteReachedEdgeOfScreen
|
2014-05-23 22:34:35 +00:00
|
|
|
call ClearSprites
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call ClearScreen
|
|
|
|
ld b, $98
|
|
|
|
call CopyScreenTileBufferToVRAM
|
|
|
|
call Delay3
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_BallInsideLinkCableOAM: ; 4132e (10:532e)
|
2014-05-22 22:13:20 +00:00
|
|
|
db $7E,$00,$7E,$20
|
|
|
|
db $7E,$40,$7E,$60
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_ShowEnemyMon: ; 41336 (10:5336)
|
|
|
|
ld a, TRADE_BALL_TILT_ANIM
|
|
|
|
call Trade_ShowAnimation
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_415c8
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 4, 10
|
2015-02-07 10:43:08 +00:00
|
|
|
ld b, 6
|
|
|
|
ld c, 10
|
2014-05-22 22:13:20 +00:00
|
|
|
call TextBoxBorder
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_PrintEnemyMonInfoText
|
|
|
|
call Trade_CopyTileMapToVRAM
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
|
|
|
ld a, [wTradedEnemyMonSpecies]
|
|
|
|
call Trade_LoadMonSprite
|
|
|
|
ld a, TRADE_BALL_POOF_ANIM
|
|
|
|
call Trade_ShowAnimation
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
|
|
|
ld a, [wTradedEnemyMonSpecies]
|
2014-05-22 22:13:20 +00:00
|
|
|
call PlayCry
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_Delay100
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 4, 10
|
2014-05-22 22:13:20 +00:00
|
|
|
ld bc, $80c
|
|
|
|
call ClearScreenArea
|
|
|
|
jp PrintTradeTakeCareText
|
|
|
|
|
|
|
|
Func_41376: ; 41376 (10:5376)
|
|
|
|
call Func_41411
|
|
|
|
ld a, $1
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd08a], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $e4
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [rOBP0], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $54
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [W_BASECOORDX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $1c
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [W_BASECOORDY], a
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [wcd5e]
|
|
|
|
ld [wcd5d], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_41505
|
|
|
|
call Func_4142d
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_CopyTileMapToVRAM
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_4149f
|
2014-05-29 08:31:46 +00:00
|
|
|
ld hl, vBGMap1 + $8c
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_RedrawRows4And5
|
2014-05-22 22:13:20 +00:00
|
|
|
ld b, $6
|
|
|
|
call Func_414c5
|
|
|
|
ld a, $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_4149f
|
|
|
|
ld b, $4
|
|
|
|
call Func_414c5
|
|
|
|
call Func_4145c
|
|
|
|
ld b, $6
|
|
|
|
call Func_414c5
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_41525
|
2014-05-23 22:34:35 +00:00
|
|
|
jp ClearSprites
|
2014-05-22 22:13:20 +00:00
|
|
|
|
|
|
|
Func_413c6: ; 413c6 (10:53c6)
|
|
|
|
call Func_41411
|
|
|
|
xor a
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd08a], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $64
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [W_BASECOORDX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $44
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [W_BASECOORDY], a
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [wcd5f]
|
|
|
|
ld [wcd5d], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_41505
|
|
|
|
call Func_4145c
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_CopyTileMapToVRAM
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_4149f
|
2014-05-29 08:31:46 +00:00
|
|
|
ld hl, vBGMap1 + $94
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_RedrawRows4And5
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_41525
|
|
|
|
ld b, $6
|
|
|
|
call Func_414c5
|
|
|
|
ld a, $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_4149f
|
|
|
|
ld b, $4
|
|
|
|
call Func_414c5
|
|
|
|
call Func_4142d
|
|
|
|
ld b, $6
|
|
|
|
call Func_414c5
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-23 22:34:35 +00:00
|
|
|
jp ClearSprites
|
2014-05-22 22:13:20 +00:00
|
|
|
|
|
|
|
Func_41411: ; 41411 (10:5411)
|
|
|
|
ld a, $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call ClearScreen
|
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_4120b
|
|
|
|
call DelayFrame
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, %10101011
|
|
|
|
ld [rLCDC], a
|
2014-05-22 22:13:20 +00:00
|
|
|
xor a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $90
|
2014-09-23 22:02:03 +00:00
|
|
|
ld [hWY], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
|
|
|
|
|
|
|
Func_4142d: ; 4142d (10:542d)
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_ClearTileMap
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 11, 4
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $5d
|
|
|
|
ld [hli], a
|
|
|
|
ld a, $5e
|
|
|
|
ld c, $8
|
|
|
|
.asm_4143a
|
|
|
|
ld [hli], a
|
|
|
|
dec c
|
|
|
|
jr nz, .asm_4143a
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 5, 3
|
2014-05-22 22:13:20 +00:00
|
|
|
ld b, $6
|
2015-02-07 10:43:08 +00:00
|
|
|
call CopyTileIDsFromList_ZeroBaseTileID
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 4, 12
|
2015-02-07 10:43:08 +00:00
|
|
|
ld b, 2
|
|
|
|
ld c, 7
|
2014-05-22 22:13:20 +00:00
|
|
|
call TextBoxBorder
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 5, 14
|
2015-02-07 10:43:08 +00:00
|
|
|
ld de, wPlayerName
|
2014-05-22 22:13:20 +00:00
|
|
|
call PlaceString
|
|
|
|
jp DelayFrame
|
|
|
|
|
|
|
|
Func_4145c: ; 4145c (10:545c)
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_ClearTileMap
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 0, 4
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $5e
|
|
|
|
ld c, $e
|
|
|
|
.asm_41466
|
|
|
|
ld [hli], a
|
|
|
|
dec c
|
|
|
|
jr nz, .asm_41466
|
|
|
|
ld a, $5f
|
|
|
|
ld [hl], a
|
|
|
|
ld de, $14
|
|
|
|
add hl, de
|
|
|
|
ld a, $61
|
|
|
|
ld [hl], a
|
|
|
|
add hl, de
|
|
|
|
ld [hl], a
|
|
|
|
add hl, de
|
|
|
|
ld [hl], a
|
|
|
|
add hl, de
|
|
|
|
ld [hl], a
|
|
|
|
add hl, de
|
|
|
|
ld a, $60
|
|
|
|
ld [hld], a
|
|
|
|
ld a, $5d
|
|
|
|
ld [hl], a
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 7, 8
|
2014-05-22 22:13:20 +00:00
|
|
|
ld b, $6
|
2015-02-07 10:43:08 +00:00
|
|
|
call CopyTileIDsFromList_ZeroBaseTileID
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 6, 0
|
2014-05-22 22:13:20 +00:00
|
|
|
ld b, $2
|
|
|
|
ld c, $7
|
|
|
|
call TextBoxBorder
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 7, 2
|
2015-02-07 10:43:08 +00:00
|
|
|
ld de, wLinkEnemyTrainerName
|
2014-05-22 22:13:20 +00:00
|
|
|
call PlaceString
|
|
|
|
jp DelayFrame
|
|
|
|
|
|
|
|
Func_4149f: ; 4149f (10:549f)
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_ClearTileMap
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 0, 4
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $5e
|
|
|
|
ld c, $14
|
|
|
|
.asm_414a9
|
|
|
|
ld [hli], a
|
|
|
|
dec c
|
|
|
|
jr nz, .asm_414a9
|
|
|
|
ret
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_RedrawRows4And5: ; 414ae (10:54ae)
|
2014-05-22 22:13:20 +00:00
|
|
|
push hl
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 0, 4
|
2014-09-14 18:29:18 +00:00
|
|
|
call CopyToScreenEdgeTiles
|
2014-05-22 22:13:20 +00:00
|
|
|
pop hl
|
|
|
|
ld a, h
|
2014-05-29 08:31:46 +00:00
|
|
|
ld [H_SCREENEDGEREDRAWADDR + 1], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, l
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_SCREENEDGEREDRAWADDR], a
|
|
|
|
ld a, REDRAWROW
|
|
|
|
ld [H_SCREENEDGEREDRAW], a
|
|
|
|
ld c, 10
|
2014-05-22 22:13:20 +00:00
|
|
|
jp DelayFrames
|
|
|
|
|
|
|
|
Func_414c5: ; 414c5 (10:54c5)
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [wd08a]
|
2014-05-22 22:13:20 +00:00
|
|
|
ld e, a
|
|
|
|
ld d, $8
|
|
|
|
.asm_414cb
|
|
|
|
ld a, e
|
|
|
|
dec a
|
|
|
|
jr z, .asm_414d5
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [hSCX]
|
2014-05-22 22:13:20 +00:00
|
|
|
sub $2
|
|
|
|
jr .asm_414d9
|
|
|
|
.asm_414d5
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [hSCX]
|
2014-05-22 22:13:20 +00:00
|
|
|
add $2
|
|
|
|
.asm_414d9
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call DelayFrame
|
|
|
|
dec d
|
|
|
|
jr nz, .asm_414cb
|
|
|
|
call Func_414e8
|
|
|
|
dec b
|
|
|
|
jr nz, Func_414c5
|
|
|
|
ret
|
|
|
|
|
|
|
|
Func_414e8: ; 414e8 (10:54e8)
|
|
|
|
push de
|
|
|
|
push bc
|
|
|
|
push hl
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [rBGP]
|
2014-05-22 22:13:20 +00:00
|
|
|
xor $3c
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [rBGP], a
|
2014-05-26 21:04:56 +00:00
|
|
|
ld hl, wOAMBuffer + $02
|
2014-05-22 22:13:20 +00:00
|
|
|
ld de, $4
|
|
|
|
ld c, $14
|
|
|
|
.asm_414f9
|
|
|
|
ld a, [hl]
|
|
|
|
xor $40
|
|
|
|
ld [hl], a
|
|
|
|
add hl, de
|
|
|
|
dec c
|
|
|
|
jr nz, .asm_414f9
|
|
|
|
pop hl
|
|
|
|
pop bc
|
|
|
|
pop de
|
|
|
|
ret
|
|
|
|
|
|
|
|
Func_41505: ; 41505 (10:5505)
|
2015-03-13 12:33:16 +00:00
|
|
|
callba WriteMonPartySpriteOAMByMonID
|
2014-05-22 22:13:20 +00:00
|
|
|
call Func_41558
|
|
|
|
|
|
|
|
Func_41510: ; 41510 (10:5510)
|
|
|
|
ld hl, wOAMBuffer
|
|
|
|
ld c, $14
|
|
|
|
.asm_41515
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [W_BASECOORDY]
|
2014-05-22 22:13:20 +00:00
|
|
|
add [hl]
|
|
|
|
ld [hli], a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [W_BASECOORDX]
|
2014-05-22 22:13:20 +00:00
|
|
|
add [hl]
|
|
|
|
ld [hli], a
|
|
|
|
inc hl
|
|
|
|
inc hl
|
|
|
|
dec c
|
|
|
|
jr nz, .asm_41515
|
|
|
|
ret
|
|
|
|
|
|
|
|
Func_41525: ; 41525 (10:5525)
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [wd08a]
|
2014-05-22 22:13:20 +00:00
|
|
|
and a
|
|
|
|
jr z, .asm_41536
|
|
|
|
ld bc, $400
|
|
|
|
call .asm_4153f
|
|
|
|
ld bc, $a
|
|
|
|
jr .asm_4153f
|
|
|
|
.asm_41536
|
|
|
|
ld bc, $f6
|
|
|
|
call .asm_4153f
|
|
|
|
ld bc, $fc00
|
|
|
|
.asm_4153f
|
|
|
|
ld a, b
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [W_BASECOORDX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, c
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [W_BASECOORDY], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld d, $4
|
|
|
|
.asm_41549
|
|
|
|
call Func_41510
|
|
|
|
call Func_414e8
|
|
|
|
ld c, $8
|
|
|
|
call DelayFrames
|
|
|
|
dec d
|
|
|
|
jr nz, .asm_41549
|
|
|
|
ret
|
|
|
|
|
|
|
|
Func_41558: ; 41558 (10:5558)
|
2015-02-07 10:43:08 +00:00
|
|
|
ld hl, OAMPointers_41574
|
2014-05-22 22:13:20 +00:00
|
|
|
ld c, $4
|
|
|
|
xor a
|
|
|
|
.asm_4155e
|
|
|
|
push bc
|
|
|
|
ld e, [hl]
|
|
|
|
inc hl
|
|
|
|
ld d, [hl]
|
|
|
|
inc hl
|
|
|
|
ld c, [hl]
|
|
|
|
inc hl
|
|
|
|
ld b, [hl]
|
|
|
|
inc hl
|
|
|
|
push hl
|
|
|
|
inc a
|
|
|
|
push af
|
|
|
|
call WriteOAMBlock
|
|
|
|
pop af
|
|
|
|
pop hl
|
|
|
|
pop bc
|
|
|
|
dec c
|
|
|
|
jr nz, .asm_4155e
|
|
|
|
ret
|
|
|
|
|
|
|
|
OAMPointers_41574: ; 41574 (10:5574)
|
|
|
|
dw UnknownOAM_41584
|
|
|
|
db $08,$08
|
|
|
|
dw UnknownOAM_4158c
|
|
|
|
db $18,$08
|
|
|
|
dw UnknownOAM_41594
|
|
|
|
db $08,$18
|
|
|
|
dw UnknownOAM_4159c
|
|
|
|
db $18,$18
|
|
|
|
|
|
|
|
UnknownOAM_41584: ; 41584 (10:5584)
|
|
|
|
db $38,$10,$39,$10
|
|
|
|
db $3A,$10,$3B,$10
|
|
|
|
|
|
|
|
UnknownOAM_4158c: ; 4158c (10:558c)
|
|
|
|
db $39,$30,$38,$30
|
|
|
|
db $3B,$30,$3A,$30
|
|
|
|
|
|
|
|
UnknownOAM_41594: ; 41594 (10:5594)
|
|
|
|
db $3A,$50,$3B,$50
|
|
|
|
db $38,$50,$39,$50
|
|
|
|
|
|
|
|
UnknownOAM_4159c: ; 4159c (10:559c)
|
|
|
|
db $3B,$70,$3A,$70
|
|
|
|
db $39,$70,$38,$70
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
; a = species
|
|
|
|
Trade_LoadMonSprite: ; 415a4 (10:55a4)
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wcf91], a
|
|
|
|
ld [wd0b5], a
|
|
|
|
ld [wcf1d], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld b, $b
|
|
|
|
ld c, $0
|
|
|
|
call GoPAL_SET
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [H_AUTOBGTRANSFERENABLED]
|
2014-05-22 22:13:20 +00:00
|
|
|
xor $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call GetMonHeader
|
2014-06-25 20:58:27 +00:00
|
|
|
hlCoord 7, 2
|
2014-05-22 22:13:20 +00:00
|
|
|
call LoadFlippedFrontSpriteByMonIndex
|
2015-02-07 10:43:08 +00:00
|
|
|
ld c, 10
|
2014-05-22 22:13:20 +00:00
|
|
|
jp DelayFrames
|
|
|
|
|
|
|
|
Func_415c8: ; 415c8 (10:55c8)
|
|
|
|
ld a, $1
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [H_AUTOBGTRANSFERENABLED], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call ClearScreen
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, %11100011
|
|
|
|
ld [rLCDC], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $7
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [rWX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
xor a
|
2014-09-23 22:02:03 +00:00
|
|
|
ld [hWY], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, $90
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [hSCX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
|
|
|
|
|
|
|
Func_415df: ; 415df (10:55df)
|
2015-02-07 10:43:08 +00:00
|
|
|
ld c, 50
|
2014-05-22 22:13:20 +00:00
|
|
|
call DelayFrames
|
2015-02-07 10:43:08 +00:00
|
|
|
.loop
|
2014-05-22 22:13:20 +00:00
|
|
|
call DelayFrame
|
2015-02-07 10:43:08 +00:00
|
|
|
ld a, [rWX]
|
2014-05-22 22:13:20 +00:00
|
|
|
inc a
|
|
|
|
inc a
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [rWX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
cp $a1
|
2015-02-07 10:43:08 +00:00
|
|
|
jr nz, .loop
|
|
|
|
call Trade_ClearTileMap
|
|
|
|
ld c, 10
|
2014-05-22 22:13:20 +00:00
|
|
|
call DelayFrames
|
|
|
|
ld a, $7
|
2015-02-07 10:43:08 +00:00
|
|
|
ld [rWX], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
|
|
|
|
|
|
|
PrintTradeWentToText: ; 415fe (10:55fe)
|
|
|
|
ld hl, TradeWentToText
|
|
|
|
call PrintText
|
2015-02-07 10:43:08 +00:00
|
|
|
ld c, 200
|
2014-05-22 22:13:20 +00:00
|
|
|
call DelayFrames
|
|
|
|
jp Func_415df
|
|
|
|
|
|
|
|
TradeWentToText: ; 4160c (10:560c)
|
|
|
|
TX_FAR _TradeWentToText
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
PrintTradeForSendsText: ; 41611 (10:5611)
|
|
|
|
ld hl, TradeForText
|
|
|
|
call PrintText
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_Delay80
|
2014-05-22 22:13:20 +00:00
|
|
|
ld hl, TradeSendsText
|
|
|
|
call PrintText
|
2015-02-07 10:43:08 +00:00
|
|
|
jp Trade_Delay80
|
2014-05-22 22:13:20 +00:00
|
|
|
|
|
|
|
TradeForText: ; 41623 (10:5623)
|
|
|
|
TX_FAR _TradeForText
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
TradeSendsText: ; 41628 (10:5628)
|
|
|
|
TX_FAR _TradeSendsText
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
PrintTradeFarewellText: ; 4162d (10:562d)
|
|
|
|
ld hl, TradeWavesFarewellText
|
|
|
|
call PrintText
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_Delay80
|
2014-05-22 22:13:20 +00:00
|
|
|
ld hl, TradeTransferredText
|
|
|
|
call PrintText
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_Delay80
|
2014-05-22 22:13:20 +00:00
|
|
|
jp Func_415df
|
|
|
|
|
|
|
|
TradeWavesFarewellText: ; 41642 (10:5642)
|
|
|
|
TX_FAR _TradeWavesFarewellText
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
TradeTransferredText: ; 41647 (10:5647)
|
|
|
|
TX_FAR _TradeTransferredText
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
PrintTradeTakeCareText: ; 4164c (10:564c)
|
|
|
|
ld hl, TradeTakeCareText
|
|
|
|
call PrintText
|
2015-02-07 10:43:08 +00:00
|
|
|
jp Trade_Delay80
|
2014-05-22 22:13:20 +00:00
|
|
|
|
|
|
|
TradeTakeCareText: ; 41655 (10:5655)
|
|
|
|
TX_FAR _TradeTakeCareText
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
PrintTradeWillTradeText: ; 4165a (10:565a)
|
|
|
|
ld hl, TradeWillTradeText
|
|
|
|
call PrintText
|
2015-02-07 10:43:08 +00:00
|
|
|
call Trade_Delay80
|
2014-05-22 22:13:20 +00:00
|
|
|
ld hl, TradeforText
|
|
|
|
call PrintText
|
2015-02-07 10:43:08 +00:00
|
|
|
jp Trade_Delay80
|
2014-05-22 22:13:20 +00:00
|
|
|
|
|
|
|
TradeWillTradeText: ; 4166c (10:566c)
|
|
|
|
TX_FAR _TradeWillTradeText
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
TradeforText: ; 41671 (10:5671)
|
|
|
|
TX_FAR _TradeforText
|
|
|
|
db "@"
|
|
|
|
|
2015-02-07 10:43:08 +00:00
|
|
|
Trade_ShowAnimation: ; 41676 (10:5676)
|
|
|
|
ld [W_ANIMATIONID], a
|
2014-05-22 22:13:20 +00:00
|
|
|
xor a
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wcc5b], a
|
2014-06-16 20:57:26 +00:00
|
|
|
predef_jump MoveAnimation
|