diff options
Diffstat (limited to 'engine/gfx/evolution_animation.asm')
-rwxr-xr-x | engine/gfx/evolution_animation.asm | 368 |
1 files changed, 0 insertions, 368 deletions
diff --git a/engine/gfx/evolution_animation.asm b/engine/gfx/evolution_animation.asm deleted file mode 100755 index 978f9e968..000000000 --- a/engine/gfx/evolution_animation.asm +++ /dev/null @@ -1,368 +0,0 @@ -EvolutionAnimation: ; 4e5e1 - push hl - push de - push bc - ld a, [wCurSpecies] - push af - ld a, [rOBP0] - push af - ld a, [wBaseDexNo] - push af - - call .EvolutionAnimation - - pop af - ld [wBaseDexNo], a - pop af - ld [rOBP0], a - pop af - ld [wCurSpecies], a - pop bc - pop de - pop hl - - ld a, [wEvolutionCanceled] - and a - ret z - - scf - ret -; 4e607 - -.EvolutionAnimation: ; 4e607 - ld a, %11100100 - ld [rOBP0], a - - ld de, MUSIC_NONE - call PlayMusic - - farcall ClearSpriteAnims - - ld de, .GFX - ld hl, vTiles0 - lb bc, BANK(.GFX), 8 - call Request2bpp - - xor a - ld [wLowHealthAlarm], a - call WaitBGMap - xor a - ld [hBGMapMode], a - ld a, [wEvolutionOldSpecies] - ld [wPlayerHPPal], a - - ld c, $0 - call .GetSGBLayout - ld a, [wEvolutionOldSpecies] - ld [wCurPartySpecies], a - ld [wCurSpecies], a - call .PlaceFrontpic - - ld de, vTiles2 - ld hl, vTiles2 tile $31 - ld bc, 7 * 7 - call Request2bpp - - ld a, 7 * 7 - ld [wEvolutionPicOffset], a - call .ReplaceFrontpic - ld a, [wEvolutionNewSpecies] - ld [wCurPartySpecies], a - ld [wCurSpecies], a - call .LoadFrontpic - ld a, [wEvolutionOldSpecies] - ld [wCurPartySpecies], a - ld [wCurSpecies], a - - ld a, $1 - ld [hBGMapMode], a - call .check_statused - jr c, .skip_cry - - ld a, [wEvolutionOldSpecies] - call PlayMonCry - -.skip_cry - ld de, MUSIC_EVOLUTION - call PlayMusic - - ld c, 80 - call DelayFrames - - ld c, $1 - call .GetSGBLayout - call .AnimationSequence - jr c, .cancel_evo - - ld a, -7 * 7 - ld [wEvolutionPicOffset], a - call .ReplaceFrontpic - xor a - ld [wEvolutionCanceled], a - - ld a, [wEvolutionNewSpecies] - ld [wPlayerHPPal], a - - ld c, $0 - call .GetSGBLayout - call .PlayEvolvedSFX - farcall ClearSpriteAnims - call .check_statused - jr c, .no_anim - - ld a, [wBoxAlignment] - push af - ld a, $1 - ld [wBoxAlignment], a - ld a, [wCurPartySpecies] - push af - - ld a, [wPlayerHPPal] - ld [wCurPartySpecies], a - hlcoord 7, 2 - ld d, $0 - ld e, ANIM_MON_EVOLVE - predef AnimateFrontpic - - pop af - ld [wCurPartySpecies], a - pop af - ld [wBoxAlignment], a - ret - -.no_anim - ret - -.cancel_evo - ld a, $1 - ld [wEvolutionCanceled], a - - ld a, [wEvolutionOldSpecies] - ld [wPlayerHPPal], a - - ld c, $0 - call .GetSGBLayout - call .PlayEvolvedSFX - farcall ClearSpriteAnims - call .check_statused - ret c - - ld a, [wPlayerHPPal] - call PlayMonCry - ret -; 4e703 - -.GetSGBLayout: ; 4e703 - ld b, SCGB_EVOLUTION - jp GetSGBLayout -; 4e708 - -.PlaceFrontpic: ; 4e708 - call GetBaseData - hlcoord 7, 2 - jp PrepMonFrontpic -; 4e711 - -.LoadFrontpic: ; 4e711 - call GetBaseData - ld a, $1 - ld [wBoxAlignment], a - ld de, vTiles2 - predef GetAnimatedFrontpic - xor a - ld [wBoxAlignment], a - ret -; 4e726 - -.AnimationSequence: ; 4e726 - call ClearJoypad - lb bc, 1, 2 * 7 ; flash b times, wait c frames in between -.loop - push bc - call .WaitFrames_CheckPressedB - pop bc - jr c, .exit_sequence - push bc - call .Flash - pop bc - inc b - dec c - dec c - jr nz, .loop - and a - ret - -.exit_sequence - scf - ret -; 4e741 - -.Flash: ; 4e741 - ld a, -7 * 7 ; new stage - ld [wEvolutionPicOffset], a - call .ReplaceFrontpic - ld a, 7 * 7 ; previous stage - ld [wEvolutionPicOffset], a - call .ReplaceFrontpic - dec b - jr nz, .Flash - ret -; 4e755 - -.ReplaceFrontpic: ; 4e755 - push bc - xor a - ld [hBGMapMode], a - hlcoord 7, 2 - lb bc, 7, 7 - ld de, SCREEN_WIDTH - 7 -.loop1 - push bc -.loop2 - ld a, [wEvolutionPicOffset] - add [hl] - ld [hli], a - dec c - jr nz, .loop2 - pop bc - add hl, de - dec b - jr nz, .loop1 - ld a, $1 - ld [hBGMapMode], a - call WaitBGMap - pop bc - ret -; 4e779 - -.WaitFrames_CheckPressedB: ; 4e779 - call DelayFrame - push bc - call JoyTextDelay - ld a, [hJoyDown] - pop bc - and B_BUTTON - jr nz, .pressed_b -.loop3 - dec c - jr nz, .WaitFrames_CheckPressedB - and a - ret - -.pressed_b - ld a, [wForceEvolution] - and a - jr nz, .loop3 - scf - ret -; 4e794 - -.check_statused ; 4e794 - ld a, [wCurPartyMon] - ld hl, wPartyMon1Species - call GetPartyLocation - ld b, h - ld c, l - farcall CheckFaintedFrzSlp - ret -; 4e7a6 - -.PlayEvolvedSFX: ; 4e7a6 - ld a, [wEvolutionCanceled] - and a - ret nz - ld de, SFX_EVOLVED - call PlaySFX - ld hl, wJumptableIndex - ld a, [hl] - push af - ld [hl], $0 -.loop4 - call .balls_of_light - jr nc, .done - call .AnimateBallsOfLight - jr .loop4 - -.done - ld c, 32 -.loop5 - call .AnimateBallsOfLight - dec c - jr nz, .loop5 - pop af - ld [wJumptableIndex], a - ret -; 4e7cf - -.balls_of_light ; 4e7cf - ld hl, wJumptableIndex - ld a, [hl] - cp 32 - ret nc - ld d, a - inc [hl] - and $1 - jr nz, .done_balls - ld e, $0 - call .GenerateBallOfLight - ld e, $10 - call .GenerateBallOfLight - -.done_balls - scf - ret -; 4e7e8 - -.GenerateBallOfLight: ; 4e7e8 - push de - depixel 9, 11 - ld a, SPRITE_ANIM_INDEX_EVOLUTION_BALL_OF_LIGHT - call _InitSpriteAnimStruct - ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX - add hl, bc - ld a, [wJumptableIndex] - and %1110 - sla a - pop de - add e - ld [hl], a - ld hl, SPRITEANIMSTRUCT_TILE_ID - add hl, bc - ld [hl], $0 - ld hl, SPRITEANIMSTRUCT_0C - add hl, bc - ld [hl], $10 - ret -; 4e80c - -.AnimateBallsOfLight: ; 4e80c - push bc - callfar PlaySpriteAnimations - ; a = (([hVBlankCounter] + 4) / 2) % NUM_PALETTES - ld a, [hVBlankCounter] - and %1110 - srl a - inc a - inc a - and $7 - ld b, a - ld hl, wVirtualOAMSprite00Attributes - ld c, NUM_SPRITE_OAM_STRUCTS -.loop6 - ld a, [hl] - or b - ld [hli], a ; attributes -rept SPRITEOAMSTRUCT_LENGTH + -1 - inc hl -endr - dec c - jr nz, .loop6 - pop bc - call DelayFrame - ret -; 4e831 - - -.GFX: -INCBIN "gfx/evo/bubble_large.2bpp" -INCBIN "gfx/evo/bubble.2bpp" |