mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-04-09 05:44:44 -07:00
Pokemon animations
This commit is contained in:
parent
e044580669
commit
2cbb1acc6e
@ -576,7 +576,7 @@ AI_Smart_Explosion: ; 388a6
|
|||||||
|
|
||||||
; Unless this is the enemy's last Pokemon...
|
; Unless this is the enemy's last Pokemon...
|
||||||
push hl
|
push hl
|
||||||
callba CountEnemyAliveMons
|
callba CheckEnemyHasMonToSwitchTo
|
||||||
pop hl
|
pop hl
|
||||||
jr nc, .asm_388b7
|
jr nc, .asm_388b7
|
||||||
|
|
||||||
@ -2028,7 +2028,7 @@ endr
|
|||||||
jp nz, AIDiscourageMove
|
jp nz, AIDiscourageMove
|
||||||
|
|
||||||
push hl
|
push hl
|
||||||
callba CountEnemyAliveMons
|
callba CheckEnemyHasMonToSwitchTo
|
||||||
pop hl
|
pop hl
|
||||||
jr nc, .asm_38eb0
|
jr nc, .asm_38eb0
|
||||||
|
|
||||||
@ -2160,7 +2160,7 @@ endr
|
|||||||
|
|
||||||
AI_Smart_PerishSong: ; 38f4a
|
AI_Smart_PerishSong: ; 38f4a
|
||||||
push hl
|
push hl
|
||||||
callab CountEnemyAliveMons
|
callab CheckEnemyHasMonToSwitchTo
|
||||||
pop hl
|
pop hl
|
||||||
jr c, .no
|
jr c, .no
|
||||||
|
|
||||||
|
@ -184,7 +184,7 @@ endr
|
|||||||
CheckAbleToSwitch: ; 34941
|
CheckAbleToSwitch: ; 34941
|
||||||
xor a
|
xor a
|
||||||
ld [wc717], a
|
ld [wc717], a
|
||||||
call CountEnemyAliveMons
|
call CheckEnemyHasMonToSwitchTo
|
||||||
ret c
|
ret c
|
||||||
|
|
||||||
ld a, [EnemySubStatus1]
|
ld a, [EnemySubStatus1]
|
||||||
@ -197,7 +197,7 @@ CheckAbleToSwitch: ; 34941
|
|||||||
|
|
||||||
; Perish count is 1
|
; Perish count is 1
|
||||||
|
|
||||||
call CountEnemyAliveMons
|
call CheckEnemyHasMonToSwitchTo
|
||||||
call Function34b77
|
call Function34b77
|
||||||
call Function34b20
|
call Function34b20
|
||||||
call Function34a85
|
call Function34a85
|
||||||
@ -212,7 +212,7 @@ CheckAbleToSwitch: ; 34941
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
.not_2
|
.not_2
|
||||||
call CountEnemyAliveMons
|
call CheckEnemyHasMonToSwitchTo
|
||||||
sla c
|
sla c
|
||||||
sla c
|
sla c
|
||||||
ld b, $ff
|
ld b, $ff
|
||||||
@ -284,7 +284,7 @@ CheckAbleToSwitch: ; 34941
|
|||||||
cp 10
|
cp 10
|
||||||
ret nc
|
ret nc
|
||||||
|
|
||||||
call CountEnemyAliveMons
|
call CheckEnemyHasMonToSwitchTo
|
||||||
call Function34b77
|
call Function34b77
|
||||||
call Function34b20
|
call Function34b20
|
||||||
call Function34a85
|
call Function34a85
|
||||||
@ -300,7 +300,7 @@ CheckAbleToSwitch: ; 34941
|
|||||||
; 349f4
|
; 349f4
|
||||||
|
|
||||||
|
|
||||||
CountEnemyAliveMons: ; 349f4
|
CheckEnemyHasMonToSwitchTo: ; 349f4
|
||||||
ld a, [OTPartyCount]
|
ld a, [OTPartyCount]
|
||||||
cp 2
|
cp 2
|
||||||
jr c, .only_one
|
jr c, .only_one
|
||||||
|
@ -92,7 +92,7 @@ Function3c000: ; 3c000
|
|||||||
call SendOutPkmnText
|
call SendOutPkmnText
|
||||||
call NewBattleMonStatus
|
call NewBattleMonStatus
|
||||||
call BreakAttraction
|
call BreakAttraction
|
||||||
call Function3db5f
|
call SendOutPlayerMon
|
||||||
call EmptyBattleTextBox
|
call EmptyBattleTextBox
|
||||||
call LoadTileMapToTempTileMap
|
call LoadTileMapToTempTileMap
|
||||||
call SetPlayerTurn
|
call SetPlayerTurn
|
||||||
@ -2928,7 +2928,7 @@ Function3d227: ; 3d227
|
|||||||
call SendOutPkmnText
|
call SendOutPkmnText
|
||||||
call NewBattleMonStatus
|
call NewBattleMonStatus
|
||||||
call BreakAttraction
|
call BreakAttraction
|
||||||
call Function3db5f
|
call SendOutPlayerMon
|
||||||
call EmptyBattleTextBox
|
call EmptyBattleTextBox
|
||||||
call LoadTileMapToTempTileMap
|
call LoadTileMapToTempTileMap
|
||||||
call SetPlayerTurn
|
call SetPlayerTurn
|
||||||
@ -2950,7 +2950,7 @@ Function3d2b3: ; 3d2b3
|
|||||||
call SendOutPkmnText
|
call SendOutPkmnText
|
||||||
call NewBattleMonStatus
|
call NewBattleMonStatus
|
||||||
call BreakAttraction
|
call BreakAttraction
|
||||||
call Function3db5f
|
call SendOutPlayerMon
|
||||||
call EmptyBattleTextBox
|
call EmptyBattleTextBox
|
||||||
call LoadTileMapToTempTileMap
|
call LoadTileMapToTempTileMap
|
||||||
call SetPlayerTurn
|
call SetPlayerTurn
|
||||||
@ -3755,31 +3755,31 @@ Function_SetEnemyPkmnAndSendOutAnimation: ; 3d7c7
|
|||||||
call Call_PlayBattleAnim
|
call Call_PlayBattleAnim
|
||||||
|
|
||||||
call BattleCheckEnemyShininess
|
call BattleCheckEnemyShininess
|
||||||
jr nc, .asm_3d800
|
jr nc, .not_shiny
|
||||||
ld a, 1 ; shiny anim
|
ld a, 1 ; shiny anim
|
||||||
ld [wKickCounter], a
|
ld [wKickCounter], a
|
||||||
ld de, ANIM_SEND_OUT_MON
|
ld de, ANIM_SEND_OUT_MON
|
||||||
call Call_PlayBattleAnim
|
call Call_PlayBattleAnim
|
||||||
.asm_3d800
|
.not_shiny
|
||||||
|
|
||||||
ld bc, TempMonSpecies
|
ld bc, TempMonSpecies
|
||||||
callba Function4e53f
|
callba CheckFaintedFrzSlp
|
||||||
jr c, .asm_3d82c
|
jr c, .skip_cry
|
||||||
callba CheckBattleScene
|
callba CheckBattleScene
|
||||||
jr c, .asm_3d821
|
jr c, .cry_no_anim
|
||||||
hlcoord 12, 0
|
hlcoord 12, 0
|
||||||
ld d, $0
|
ld d, $0
|
||||||
ld e, $0
|
ld e, ANIM_MON_SLOW
|
||||||
predef Functiond008e
|
predef AnimateFrontpic
|
||||||
jr .asm_3d82c
|
jr .skip_cry
|
||||||
|
|
||||||
.asm_3d821
|
.cry_no_anim
|
||||||
ld a, $f
|
ld a, $f
|
||||||
ld [CryTracks], a
|
ld [CryTracks], a
|
||||||
ld a, [TempEnemyMonSpecies]
|
ld a, [TempEnemyMonSpecies]
|
||||||
call PlayStereoCry
|
call PlayStereoCry
|
||||||
|
|
||||||
.asm_3d82c
|
.skip_cry
|
||||||
call UpdateEnemyHUD
|
call UpdateEnemyHUD
|
||||||
ld a, $1
|
ld a, $1
|
||||||
ld [hBGMapMode], a
|
ld [hBGMapMode], a
|
||||||
@ -4207,7 +4207,7 @@ endr
|
|||||||
; 3db32
|
; 3db32
|
||||||
|
|
||||||
|
|
||||||
Function3db32: ; 3db32
|
SwitchPlayerMon: ; 3db32
|
||||||
call ClearSprites
|
call ClearSprites
|
||||||
ld a, [CurBattleMon]
|
ld a, [CurBattleMon]
|
||||||
ld [LastPlayerMon], a
|
ld [LastPlayerMon], a
|
||||||
@ -4218,7 +4218,7 @@ Function3db32: ; 3db32
|
|||||||
call ResetPlayerStatLevels
|
call ResetPlayerStatLevels
|
||||||
call NewBattleMonStatus
|
call NewBattleMonStatus
|
||||||
call BreakAttraction
|
call BreakAttraction
|
||||||
call Function3db5f
|
call SendOutPlayerMon
|
||||||
call EmptyBattleTextBox
|
call EmptyBattleTextBox
|
||||||
call LoadTileMapToTempTileMap
|
call LoadTileMapToTempTileMap
|
||||||
ld hl, EnemyMonHP
|
ld hl, EnemyMonHP
|
||||||
@ -4228,7 +4228,7 @@ Function3db32: ; 3db32
|
|||||||
; 3db5f
|
; 3db5f
|
||||||
|
|
||||||
|
|
||||||
Function3db5f: ; 3db5f
|
SendOutPlayerMon: ; 3db5f
|
||||||
ld hl, BattleMonDVs
|
ld hl, BattleMonDVs
|
||||||
predef GetUnownLetter
|
predef GetUnownLetter
|
||||||
hlcoord 1, 5
|
hlcoord 1, 5
|
||||||
@ -4259,25 +4259,25 @@ Function3db5f: ; 3db5f
|
|||||||
ld de, ANIM_SEND_OUT_MON
|
ld de, ANIM_SEND_OUT_MON
|
||||||
call Call_PlayBattleAnim
|
call Call_PlayBattleAnim
|
||||||
call BattleCheckPlayerShininess
|
call BattleCheckPlayerShininess
|
||||||
jr nc, .asm_3dbbc
|
jr nc, .not_shiny
|
||||||
ld a, $1
|
ld a, $1
|
||||||
ld [wKickCounter], a
|
ld [wKickCounter], a
|
||||||
ld de, ANIM_SEND_OUT_MON
|
ld de, ANIM_SEND_OUT_MON
|
||||||
call Call_PlayBattleAnim
|
call Call_PlayBattleAnim
|
||||||
|
|
||||||
.asm_3dbbc
|
.not_shiny
|
||||||
ld a, MON_SPECIES
|
ld a, MON_SPECIES
|
||||||
call GetPartyParamLocation
|
call GetPartyParamLocation
|
||||||
ld b, h
|
ld b, h
|
||||||
ld c, l
|
ld c, l
|
||||||
callba Function4e53f
|
callba CheckFaintedFrzSlp
|
||||||
jr c, .asm_3dbd6
|
jr c, .statused
|
||||||
ld a, $f0
|
ld a, $f0
|
||||||
ld [CryTracks], a
|
ld [CryTracks], a
|
||||||
ld a, [CurPartySpecies]
|
ld a, [CurPartySpecies]
|
||||||
call PlayStereoCry
|
call PlayStereoCry
|
||||||
|
|
||||||
.asm_3dbd6
|
.statused
|
||||||
call UpdatePlayerHUD
|
call UpdatePlayerHUD
|
||||||
ld a, $1
|
ld a, $1
|
||||||
ld [hBGMapMode], a
|
ld [hBGMapMode], a
|
||||||
@ -5528,7 +5528,7 @@ BattleMonEntrance: ; 3e40b
|
|||||||
call SendOutPkmnText
|
call SendOutPkmnText
|
||||||
call NewBattleMonStatus
|
call NewBattleMonStatus
|
||||||
call BreakAttraction
|
call BreakAttraction
|
||||||
call Function3db5f
|
call SendOutPlayerMon
|
||||||
call EmptyBattleTextBox
|
call EmptyBattleTextBox
|
||||||
call LoadTileMapToTempTileMap
|
call LoadTileMapToTempTileMap
|
||||||
call SetPlayerTurn
|
call SetPlayerTurn
|
||||||
@ -5553,7 +5553,7 @@ PassedBattleMonEntrance: ; 3e459
|
|||||||
xor a
|
xor a
|
||||||
ld [wd265], a
|
ld [wd265], a
|
||||||
call ApplyStatLevelMultiplierOnAllStats
|
call ApplyStatLevelMultiplierOnAllStats
|
||||||
call Function3db5f
|
call SendOutPlayerMon
|
||||||
call EmptyBattleTextBox
|
call EmptyBattleTextBox
|
||||||
call LoadTileMapToTempTileMap
|
call LoadTileMapToTempTileMap
|
||||||
call SetPlayerTurn
|
call SetPlayerTurn
|
||||||
@ -9556,15 +9556,15 @@ BattleStartMessage: ; 3fc8b
|
|||||||
jr c, .skip_cry
|
jr c, .skip_cry
|
||||||
|
|
||||||
callba CheckBattleScene
|
callba CheckBattleScene
|
||||||
jr c, .do_cry
|
jr c, .cry_no_anim
|
||||||
|
|
||||||
hlcoord 12, 0
|
hlcoord 12, 0
|
||||||
ld d, $0
|
ld d, $0
|
||||||
ld e, $1
|
ld e, ANIM_MON_NORMAL
|
||||||
predef Functiond008e
|
predef AnimateFrontpic
|
||||||
jr .skip_cry
|
jr .skip_cry
|
||||||
|
|
||||||
.do_cry
|
.cry_no_anim
|
||||||
ld a, $0f
|
ld a, $0f
|
||||||
ld [CryTracks], a
|
ld [CryTracks], a
|
||||||
ld a, [TempEnemyMonSpecies]
|
ld a, [TempEnemyMonSpecies]
|
||||||
|
@ -6555,41 +6555,42 @@ BattleCommand_ForceSwitch: ; 3680f
|
|||||||
|
|
||||||
ld a, [BattleType]
|
ld a, [BattleType]
|
||||||
cp BATTLETYPE_SHINY
|
cp BATTLETYPE_SHINY
|
||||||
jp z, .asm_36969
|
jp z, .fail
|
||||||
cp BATTLETYPE_TRAP
|
cp BATTLETYPE_TRAP
|
||||||
jp z, .asm_36969
|
jp z, .fail
|
||||||
cp BATTLETYPE_CELEBI
|
cp BATTLETYPE_CELEBI
|
||||||
jp z, .asm_36969
|
jp z, .fail
|
||||||
cp BATTLETYPE_SUICUNE
|
cp BATTLETYPE_SUICUNE
|
||||||
jp z, .asm_36969
|
jp z, .fail
|
||||||
ld a, [hBattleTurn]
|
ld a, [hBattleTurn]
|
||||||
and a
|
and a
|
||||||
jp nz, .asm_368cd
|
jp nz, .force_player_switch
|
||||||
ld a, [AttackMissed]
|
ld a, [AttackMissed]
|
||||||
and a
|
and a
|
||||||
jr nz, .asm_36852 ; 36830 $20
|
jr nz, .missed ; 36830 $20
|
||||||
ld a, [wBattleMode]
|
ld a, [wBattleMode]
|
||||||
dec a
|
dec a
|
||||||
jr nz, .asm_36869 ; 36836 $31
|
jr nz, .trainer ; 36836 $31
|
||||||
ld a, [CurPartyLevel]
|
ld a, [CurPartyLevel]
|
||||||
ld b, a
|
ld b, a
|
||||||
ld a, [BattleMonLevel]
|
ld a, [BattleMonLevel]
|
||||||
cp b
|
cp b
|
||||||
jr nc, .asm_36855 ; 36840 $13
|
jr nc, .wild_force_flee ; 36840 $13
|
||||||
add b
|
add b
|
||||||
ld c, a
|
ld c, a
|
||||||
inc c
|
inc c
|
||||||
.asm_36845
|
.random_loop_wild
|
||||||
call BattleRandom
|
call BattleRandom
|
||||||
cp c
|
cp c
|
||||||
jr nc, .asm_36845 ; 36849 $fa
|
jr nc, .random_loop_wild ; 36849 $fa
|
||||||
srl b
|
srl b
|
||||||
srl b
|
srl b
|
||||||
cp b
|
cp b
|
||||||
jr nc, .asm_36855 ; 36850 $3
|
jr nc, .wild_force_flee ; 36850 $3
|
||||||
.asm_36852
|
.missed
|
||||||
jp .asm_36969
|
jp .fail
|
||||||
.asm_36855
|
|
||||||
|
.wild_force_flee
|
||||||
call UpdateBattleMonInParty
|
call UpdateBattleMonInParty
|
||||||
xor a
|
xor a
|
||||||
ld [wcfca], a
|
ld [wcfca], a
|
||||||
@ -6597,13 +6598,14 @@ BattleCommand_ForceSwitch: ; 3680f
|
|||||||
ld [wd232], a
|
ld [wd232], a
|
||||||
call SetBattleDraw
|
call SetBattleDraw
|
||||||
ld a, [wPlayerMoveStruct + MOVE_ANIM]
|
ld a, [wPlayerMoveStruct + MOVE_ANIM]
|
||||||
jp .asm_36975
|
jp .succeed
|
||||||
.asm_36869
|
|
||||||
call CountEnemyAliveMons
|
.trainer
|
||||||
jr c, .asm_368ca ; 3686c $5c
|
call CheckEnemyHasMonToSwitchTo
|
||||||
|
jr c, .switch_fail ; 3686c $5c
|
||||||
ld a, [wc70f]
|
ld a, [wc70f]
|
||||||
and a
|
and a
|
||||||
jr z, .asm_368ca ; 36872 $56
|
jr z, .switch_fail ; 36872 $56
|
||||||
call UpdateEnemyMonInParty
|
call UpdateEnemyMonInParty
|
||||||
ld a, $1
|
ld a, $1
|
||||||
ld [wKickCounter], a
|
ld [wKickCounter], a
|
||||||
@ -6613,19 +6615,20 @@ BattleCommand_ForceSwitch: ; 3680f
|
|||||||
hlcoord 1, 0
|
hlcoord 1, 0
|
||||||
lb bc, 4, 10
|
lb bc, 4, 10
|
||||||
call ClearBox
|
call ClearBox
|
||||||
ld c, $14
|
ld c, 20
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
ld a, [OTPartyCount]
|
ld a, [OTPartyCount]
|
||||||
ld b, a
|
ld b, a
|
||||||
ld a, [CurOTMon]
|
ld a, [CurOTMon]
|
||||||
ld c, a
|
ld c, a
|
||||||
.asm_3689a
|
; select a random enemy mon to switch to
|
||||||
|
.random_loop_trainer
|
||||||
call BattleRandom
|
call BattleRandom
|
||||||
and $7
|
and $7
|
||||||
cp b
|
cp b
|
||||||
jr nc, .asm_3689a ; 368a0 $f8
|
jr nc, .random_loop_trainer ; 368a0 $f8
|
||||||
cp c
|
cp c
|
||||||
jr z, .asm_3689a ; 368a3 $f5
|
jr z, .random_loop_trainer ; 368a3 $f5
|
||||||
push af
|
push af
|
||||||
push bc
|
push bc
|
||||||
ld hl, OTPartyMon1HP
|
ld hl, OTPartyMon1HP
|
||||||
@ -6634,7 +6637,7 @@ BattleCommand_ForceSwitch: ; 3680f
|
|||||||
or [hl]
|
or [hl]
|
||||||
pop bc
|
pop bc
|
||||||
pop de
|
pop de
|
||||||
jr z, .asm_3689a ; 368b1 $e7
|
jr z, .random_loop_trainer ; 368b1 $e7
|
||||||
ld a, d
|
ld a, d
|
||||||
inc a
|
inc a
|
||||||
ld [wc718], a
|
ld [wc718], a
|
||||||
@ -6646,41 +6649,41 @@ BattleCommand_ForceSwitch: ; 3680f
|
|||||||
ld hl, SpikesDamage
|
ld hl, SpikesDamage
|
||||||
jp CallBattleCore
|
jp CallBattleCore
|
||||||
|
|
||||||
.asm_368ca
|
.switch_fail
|
||||||
jp .asm_36969
|
jp .fail
|
||||||
|
|
||||||
.asm_368cd
|
.force_player_switch
|
||||||
ld a, [AttackMissed]
|
ld a, [AttackMissed]
|
||||||
and a
|
and a
|
||||||
jr nz, .asm_368f3
|
jr nz, .player_miss
|
||||||
|
|
||||||
ld a, [wBattleMode]
|
ld a, [wBattleMode]
|
||||||
dec a
|
dec a
|
||||||
jr nz, .asm_36908
|
jr nz, .vs_trainer
|
||||||
|
|
||||||
ld a, [BattleMonLevel]
|
ld a, [BattleMonLevel]
|
||||||
ld b, a
|
ld b, a
|
||||||
ld a, [CurPartyLevel]
|
ld a, [CurPartyLevel]
|
||||||
cp b
|
cp b
|
||||||
jr nc, .asm_368f5
|
jr nc, .wild_succeed_playeristarget
|
||||||
|
|
||||||
add b
|
add b
|
||||||
ld c, a
|
ld c, a
|
||||||
inc c
|
inc c
|
||||||
.asm_368e6
|
.wild_random_loop_playeristarget
|
||||||
call BattleRandom
|
call BattleRandom
|
||||||
cp c
|
cp c
|
||||||
jr nc, .asm_368e6
|
jr nc, .wild_random_loop_playeristarget
|
||||||
|
|
||||||
srl b
|
srl b
|
||||||
srl b
|
srl b
|
||||||
cp b
|
cp b
|
||||||
jr nc, .asm_368f5
|
jr nc, .wild_succeed_playeristarget
|
||||||
|
|
||||||
.asm_368f3
|
.player_miss
|
||||||
jr .asm_36969
|
jr .fail
|
||||||
|
|
||||||
.asm_368f5
|
.wild_succeed_playeristarget
|
||||||
call UpdateBattleMonInParty
|
call UpdateBattleMonInParty
|
||||||
xor a
|
xor a
|
||||||
ld [wcfca], a
|
ld [wcfca], a
|
||||||
@ -6688,39 +6691,39 @@ BattleCommand_ForceSwitch: ; 3680f
|
|||||||
ld [wd232], a
|
ld [wd232], a
|
||||||
call SetBattleDraw
|
call SetBattleDraw
|
||||||
ld a, [wEnemyMoveStruct + MOVE_ANIM]
|
ld a, [wEnemyMoveStruct + MOVE_ANIM]
|
||||||
jr .asm_36975
|
jr .succeed
|
||||||
|
|
||||||
.asm_36908
|
.vs_trainer
|
||||||
call Function36994
|
call CheckPlayerHasMonToSwitchTo
|
||||||
jr c, .asm_36969
|
jr c, .fail
|
||||||
|
|
||||||
ld a, [wc70f]
|
ld a, [wc70f]
|
||||||
cp $1
|
cp $1
|
||||||
jr z, .asm_368ca
|
jr z, .switch_fail
|
||||||
|
|
||||||
call UpdateBattleMonInParty
|
call UpdateBattleMonInParty
|
||||||
ld a, $1
|
ld a, $1
|
||||||
ld [wKickCounter], a
|
ld [wKickCounter], a
|
||||||
call AnimateCurrentMove
|
call AnimateCurrentMove
|
||||||
ld c, $14
|
ld c, 20
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
hlcoord 9, 7
|
hlcoord 9, 7
|
||||||
lb bc, 5, 11
|
lb bc, 5, 11
|
||||||
call ClearBox
|
call ClearBox
|
||||||
ld c, $14
|
ld c, 20
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
ld a, [PartyCount]
|
ld a, [PartyCount]
|
||||||
ld b, a
|
ld b, a
|
||||||
ld a, [CurBattleMon]
|
ld a, [CurBattleMon]
|
||||||
ld c, a
|
ld c, a
|
||||||
.asm_3693a
|
.random_loop_trainer_playeristarget
|
||||||
call BattleRandom
|
call BattleRandom
|
||||||
and $7
|
and $7
|
||||||
cp b
|
cp b
|
||||||
jr nc, .asm_3693a
|
jr nc, .random_loop_trainer_playeristarget
|
||||||
|
|
||||||
cp c
|
cp c
|
||||||
jr z, .asm_3693a
|
jr z, .random_loop_trainer_playeristarget
|
||||||
|
|
||||||
push af
|
push af
|
||||||
push bc
|
push bc
|
||||||
@ -6730,11 +6733,11 @@ BattleCommand_ForceSwitch: ; 3680f
|
|||||||
or [hl]
|
or [hl]
|
||||||
pop bc
|
pop bc
|
||||||
pop de
|
pop de
|
||||||
jr z, .asm_3693a
|
jr z, .random_loop_trainer_playeristarget
|
||||||
|
|
||||||
ld a, d
|
ld a, d
|
||||||
ld [CurPartyMon], a
|
ld [CurPartyMon], a
|
||||||
ld hl, Function3db32
|
ld hl, SwitchPlayerMon
|
||||||
call CallBattleCore
|
call CallBattleCore
|
||||||
|
|
||||||
ld hl, DraggedOutText
|
ld hl, DraggedOutText
|
||||||
@ -6743,57 +6746,57 @@ BattleCommand_ForceSwitch: ; 3680f
|
|||||||
ld hl, SpikesDamage
|
ld hl, SpikesDamage
|
||||||
jp CallBattleCore
|
jp CallBattleCore
|
||||||
|
|
||||||
.asm_36969
|
.fail
|
||||||
call BattleCommand_LowerSub
|
call BattleCommand_LowerSub
|
||||||
call BattleCommand_MoveDelay
|
call BattleCommand_MoveDelay
|
||||||
call BattleCommand_RaiseSub
|
call BattleCommand_RaiseSub
|
||||||
jp PrintButItFailed
|
jp PrintButItFailed
|
||||||
|
|
||||||
.asm_36975
|
.succeed
|
||||||
push af
|
push af
|
||||||
call SetBattleDraw
|
call SetBattleDraw
|
||||||
ld a, $1
|
ld a, $1
|
||||||
ld [wKickCounter], a
|
ld [wKickCounter], a
|
||||||
call AnimateCurrentMove
|
call AnimateCurrentMove
|
||||||
ld c, $14
|
ld c, 20
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
pop af
|
pop af
|
||||||
|
|
||||||
ld hl, FledInFearText
|
ld hl, FledInFearText
|
||||||
cp $2e
|
cp ROAR
|
||||||
jr z, .asm_36991
|
jr z, .do_text
|
||||||
ld hl, BlownAwayText
|
ld hl, BlownAwayText
|
||||||
.asm_36991
|
.do_text
|
||||||
jp StdBattleTextBox
|
jp StdBattleTextBox
|
||||||
; 36994
|
; 36994
|
||||||
|
|
||||||
|
|
||||||
Function36994: ; 36994
|
CheckPlayerHasMonToSwitchTo: ; 36994
|
||||||
ld a, [PartyCount]
|
ld a, [PartyCount]
|
||||||
ld d, a
|
ld d, a
|
||||||
ld e, 0
|
ld e, 0
|
||||||
ld bc, PARTYMON_STRUCT_LENGTH
|
ld bc, PARTYMON_STRUCT_LENGTH
|
||||||
.asm_3699d
|
.loop
|
||||||
ld a, [CurBattleMon]
|
ld a, [CurBattleMon]
|
||||||
cp e
|
cp e
|
||||||
jr z, .asm_369ae
|
jr z, .next
|
||||||
|
|
||||||
ld a, e
|
ld a, e
|
||||||
ld hl, PartyMon1HP
|
ld hl, PartyMon1HP
|
||||||
call AddNTimes
|
call AddNTimes
|
||||||
ld a, [hli]
|
ld a, [hli]
|
||||||
or [hl]
|
or [hl]
|
||||||
jr nz, .asm_369b4
|
jr nz, .not_fainted
|
||||||
|
|
||||||
.asm_369ae
|
.next
|
||||||
inc e
|
inc e
|
||||||
dec d
|
dec d
|
||||||
jr nz, .asm_3699d
|
jr nz, .loop
|
||||||
|
|
||||||
scf
|
scf
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.asm_369b4
|
.not_fainted
|
||||||
and a
|
and a
|
||||||
ret
|
ret
|
||||||
; 369b6
|
; 369b6
|
||||||
|
@ -60,3 +60,14 @@ ANIM_BG_PSYCHIC EQU $29
|
|||||||
|
|
||||||
ANIM_BG_VIBRATE_MON EQU $33
|
ANIM_BG_VIBRATE_MON EQU $33
|
||||||
ANIM_BG_WOBBLE_MON EQU $34
|
ANIM_BG_WOBBLE_MON EQU $34
|
||||||
|
|
||||||
|
const_def
|
||||||
|
const ANIM_MON_SLOW ; 0
|
||||||
|
const ANIM_MON_NORMAL ; 1
|
||||||
|
const ANIM_MON_MENU ; 2
|
||||||
|
const ANIM_MON_TRADE ; 3
|
||||||
|
const ANIM_MON_EVOLVE ; 4
|
||||||
|
const ANIM_MON_HATCH ; 5
|
||||||
|
const ANIM_MON_UNUSED ; 6
|
||||||
|
const ANIM_MON_EGG1 ; 7
|
||||||
|
const ANIM_MON_EGG2 ; 8
|
||||||
|
@ -98,10 +98,10 @@ PredefPointers:: ; 856b
|
|||||||
add_predef CheckTypeMatchup
|
add_predef CheckTypeMatchup
|
||||||
add_predef ConvertMon_1to2
|
add_predef ConvertMon_1to2
|
||||||
add_predef Functionfb877
|
add_predef Functionfb877
|
||||||
add_predef Functiond0000
|
add_predef AnimateMon_Slow_Normal
|
||||||
add_predef PlaceStatusString
|
add_predef PlaceStatusString
|
||||||
add_predef Functiond00a3
|
add_predef LoadMonAnimation
|
||||||
add_predef Functiond008e
|
add_predef AnimateFrontpic
|
||||||
add_predef Functiond0669 ; $48
|
add_predef Functiond0669 ; $48
|
||||||
add_predef Functiond066e
|
add_predef Functiond066e
|
||||||
dbw $ff, Function2d43 ; ????
|
dbw $ff, Function2d43 ; ????
|
||||||
|
File diff suppressed because it is too large
Load Diff
8
home.asm
8
home.asm
@ -217,10 +217,10 @@ LoadTileMapToTempTileMap:: ; 309d
|
|||||||
; Load TileMap into TempTileMap
|
; Load TileMap into TempTileMap
|
||||||
ld a, [rSVBK]
|
ld a, [rSVBK]
|
||||||
push af
|
push af
|
||||||
ld a, BANK(w2_d000)
|
ld a, BANK(TempTileMap)
|
||||||
ld [rSVBK], a
|
ld [rSVBK], a
|
||||||
hlcoord 0, 0
|
hlcoord 0, 0
|
||||||
ld de, w2_d000
|
decoord 0, 0, TempTileMap
|
||||||
ld bc, TileMapEnd - TileMap
|
ld bc, TileMapEnd - TileMap
|
||||||
call CopyBytes
|
call CopyBytes
|
||||||
pop af
|
pop af
|
||||||
@ -241,9 +241,9 @@ LoadTempTileMapToTileMap:: ; 30bf
|
|||||||
; Load TempTileMap into TileMap
|
; Load TempTileMap into TileMap
|
||||||
ld a, [rSVBK]
|
ld a, [rSVBK]
|
||||||
push af
|
push af
|
||||||
ld a, BANK(w2_d000)
|
ld a, BANK(TempTileMap)
|
||||||
ld [rSVBK], a
|
ld [rSVBK], a
|
||||||
ld hl, w2_d000
|
hlcoord 0, 0, TempTileMap
|
||||||
decoord 0, 0
|
decoord 0, 0
|
||||||
ld bc, TileMapEnd - TileMap
|
ld bc, TileMapEnd - TileMap
|
||||||
call CopyBytes
|
call CopyBytes
|
||||||
|
28
main.asm
28
main.asm
@ -20039,8 +20039,8 @@ Function1728f: ; 1728f (5:728f)
|
|||||||
ld [CurPartySpecies], a
|
ld [CurPartySpecies], a
|
||||||
hlcoord 6, 3
|
hlcoord 6, 3
|
||||||
ld d, $0
|
ld d, $0
|
||||||
ld e, $5
|
ld e, ANIM_MON_HATCH
|
||||||
predef Functiond008e
|
predef AnimateFrontpic
|
||||||
pop af
|
pop af
|
||||||
ld [CurSpecies], a
|
ld [CurSpecies], a
|
||||||
ret
|
ret
|
||||||
@ -41215,8 +41215,8 @@ Function4d81e: ; 4d81e
|
|||||||
ld [CurPartySpecies], a
|
ld [CurPartySpecies], a
|
||||||
hlcoord 7, 2
|
hlcoord 7, 2
|
||||||
ld d, $0
|
ld d, $0
|
||||||
ld e, $3
|
ld e, ANIM_MON_TRADE
|
||||||
predef Functiond008e
|
predef AnimateFrontpic
|
||||||
ret
|
ret
|
||||||
; 4d860
|
; 4d860
|
||||||
|
|
||||||
@ -42738,7 +42738,7 @@ Function4e289: ; 4e289 (13:6289)
|
|||||||
hlcoord 0, 0
|
hlcoord 0, 0
|
||||||
ld d, $0
|
ld d, $0
|
||||||
ld e, $2
|
ld e, $2
|
||||||
predef Functiond00a3
|
predef LoadMonAnimation
|
||||||
ld hl, wcf64
|
ld hl, wcf64
|
||||||
set 6, [hl]
|
set 6, [hl]
|
||||||
ret
|
ret
|
||||||
@ -42793,7 +42793,7 @@ Function4e2f2: ; 4e2f2 (13:62f2)
|
|||||||
ld a, [CurPartySpecies]
|
ld a, [CurPartySpecies]
|
||||||
cp EGG
|
cp EGG
|
||||||
jr z, .asm_4e2fe
|
jr z, .asm_4e2fe
|
||||||
call Function4e53f
|
call CheckFaintedFrzSlp
|
||||||
jr c, Function4e305
|
jr c, Function4e305
|
||||||
.asm_4e2fe
|
.asm_4e2fe
|
||||||
xor a
|
xor a
|
||||||
@ -42941,7 +42941,7 @@ Function4e497: ; 4e497 (13:6497)
|
|||||||
pop de
|
pop de
|
||||||
hlcoord 0, 0
|
hlcoord 0, 0
|
||||||
ld d, $0
|
ld d, $0
|
||||||
predef Functiond00a3
|
predef LoadMonAnimation
|
||||||
ld hl, wcf64
|
ld hl, wcf64
|
||||||
set 6, [hl]
|
set 6, [hl]
|
||||||
ret
|
ret
|
||||||
@ -43016,21 +43016,21 @@ Function4e528: ; 4e528 (13:6528)
|
|||||||
jp SkipNames
|
jp SkipNames
|
||||||
|
|
||||||
|
|
||||||
Function4e53f: ; 4e53f
|
CheckFaintedFrzSlp: ; 4e53f
|
||||||
ld hl, MON_HP
|
ld hl, MON_HP
|
||||||
add hl, bc
|
add hl, bc
|
||||||
ld a, [hli]
|
ld a, [hli]
|
||||||
or [hl]
|
or [hl]
|
||||||
jr z, .asm_4e552
|
jr z, .fainted_frz_slp
|
||||||
ld hl, MON_STATUS
|
ld hl, MON_STATUS
|
||||||
add hl, bc
|
add hl, bc
|
||||||
ld a, [hl]
|
ld a, [hl]
|
||||||
and (1 << FRZ) | SLP
|
and (1 << FRZ) | SLP
|
||||||
jr nz, .asm_4e552
|
jr nz, .fainted_frz_slp
|
||||||
and a
|
and a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
.asm_4e552
|
.fainted_frz_slp
|
||||||
scf
|
scf
|
||||||
ret
|
ret
|
||||||
; 4e554
|
; 4e554
|
||||||
@ -43248,8 +43248,8 @@ _EvolutionAnimation: ; 4e607
|
|||||||
ld [CurPartySpecies], a
|
ld [CurPartySpecies], a
|
||||||
hlcoord 7, 2
|
hlcoord 7, 2
|
||||||
ld d, $0
|
ld d, $0
|
||||||
ld e, $4
|
ld e, ANIM_MON_EVOLVE
|
||||||
predef Functiond008e
|
predef AnimateFrontpic
|
||||||
|
|
||||||
pop af
|
pop af
|
||||||
ld [CurPartySpecies], a
|
ld [CurPartySpecies], a
|
||||||
@ -43393,7 +43393,7 @@ Function4e794: ; 4e794
|
|||||||
call GetPartyLocation
|
call GetPartyLocation
|
||||||
ld b, h
|
ld b, h
|
||||||
ld c, l
|
ld c, l
|
||||||
callba Function4e53f
|
callba CheckFaintedFrzSlp
|
||||||
ret
|
ret
|
||||||
; 4e7a6
|
; 4e7a6
|
||||||
|
|
||||||
|
@ -284,8 +284,8 @@ Function108219: ; 108219
|
|||||||
ld [CurPartySpecies], a
|
ld [CurPartySpecies], a
|
||||||
hlcoord 7, 2
|
hlcoord 7, 2
|
||||||
ld d, $0
|
ld d, $0
|
||||||
ld e, $3
|
ld e, ANIM_MON_TRADE
|
||||||
predef Functiond008e
|
predef AnimateFrontpic
|
||||||
ret
|
ret
|
||||||
; 108229
|
; 108229
|
||||||
|
|
||||||
@ -293,8 +293,8 @@ Function108229: ; 108229
|
|||||||
ld [CurPartySpecies], a
|
ld [CurPartySpecies], a
|
||||||
hlcoord 7, 2
|
hlcoord 7, 2
|
||||||
ld d, $0
|
ld d, $0
|
||||||
ld e, $3
|
ld e, ANIM_MON_TRADE
|
||||||
predef Functiond00a3
|
predef LoadMonAnimation
|
||||||
ret
|
ret
|
||||||
; 108239
|
; 108239
|
||||||
|
|
||||||
@ -304,7 +304,7 @@ Function108239: ; 108239
|
|||||||
call GetPokemonName
|
call GetPokemonName
|
||||||
ld hl, StringBuffer1
|
ld hl, StringBuffer1
|
||||||
pop de
|
pop de
|
||||||
ld bc, $000b
|
ld bc, PKMN_NAME_LENGTH
|
||||||
call CopyBytes
|
call CopyBytes
|
||||||
ret
|
ret
|
||||||
; 10824b
|
; 10824b
|
||||||
|
25
wram.asm
25
wram.asm
@ -2648,20 +2648,19 @@ wGameDataEnd::
|
|||||||
|
|
||||||
SECTION "Pic Animations", WRAMX, BANK [2]
|
SECTION "Pic Animations", WRAMX, BANK [2]
|
||||||
|
|
||||||
w2_d000::
|
TempTileMap::
|
||||||
; 20x18 grid of 8x8 tiles
|
; 20x18 grid of 8x8 tiles
|
||||||
ds SCREEN_WIDTH * SCREEN_HEIGHT ; $168 = 360
|
ds SCREEN_WIDTH * SCREEN_HEIGHT ; $168 = 360
|
||||||
|
; PokeAnim Header
|
||||||
w2_d168:: ds 1
|
wPokeAnimSceneIndex:: ds 1
|
||||||
w2_d169:: ds 1
|
wPokeAnimPointer:: ds 2
|
||||||
w2_d16a:: ds 1
|
wPokeAnimSpecies:: ds 1
|
||||||
w2_d16b:: ds 1
|
wPokeAnimUnownLetter:: ds 1
|
||||||
w2_d16c:: ds 1
|
wPokeAnimSpeciesOrUnown:: ds 1
|
||||||
w2_d16d:: ds 1
|
|
||||||
w2_d16e:: ds 1
|
w2_d16e:: ds 1
|
||||||
w2_d16f:: ds 1
|
wPokeAnimCoord:: ds 2
|
||||||
w2_d170:: ds 1
|
wPokeAnimFrontpicHeight:: ds 1
|
||||||
w2_d171:: ds 1
|
; PokeAnim Data
|
||||||
w2_d172:: ds 1
|
w2_d172:: ds 1
|
||||||
w2_d173:: ds 1
|
w2_d173:: ds 1
|
||||||
w2_d174:: ds 1
|
w2_d174:: ds 1
|
||||||
@ -2677,7 +2676,7 @@ w2_d17d:: ds 1
|
|||||||
w2_d17e:: ds 1
|
w2_d17e:: ds 1
|
||||||
w2_d17f:: ds 1
|
w2_d17f:: ds 1
|
||||||
w2_d180:: ds 1
|
w2_d180:: ds 1
|
||||||
w2_d181:: ds 1
|
wPokeAnimWaitCounter:: ds 1
|
||||||
w2_d182:: ds 1
|
w2_d182:: ds 1
|
||||||
w2_d183:: ds 1
|
w2_d183:: ds 1
|
||||||
w2_d184:: ds 1
|
w2_d184:: ds 1
|
||||||
@ -2685,6 +2684,8 @@ w2_d185:: ds 1
|
|||||||
w2_d186:: ds 1
|
w2_d186:: ds 1
|
||||||
w2_d187:: ds 1
|
w2_d187:: ds 1
|
||||||
w2_d188:: ds 1
|
w2_d188:: ds 1
|
||||||
|
ds 8
|
||||||
|
wPokeAnimStructEnd::
|
||||||
|
|
||||||
|
|
||||||
SECTION "WRAM 3", WRAMX, BANK [3]
|
SECTION "WRAM 3", WRAMX, BANK [3]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user