diff options
author | libjet <libj3t@gmail.com> | 2020-06-06 02:15:06 +0100 |
---|---|---|
committer | libjet <libj3t@gmail.com> | 2020-06-06 02:15:06 +0100 |
commit | 3edaf4635e372fc255b41e1a05e48f25d9cd6f7b (patch) | |
tree | 4ef6c908003168658625473f3469ca55c3562af2 /engine | |
parent | 88d1fe6c26ed4da7720d129962d507a26c1f9b17 (diff) |
Add time_capsule_2.asm and new_pokedex_entry.asm
Diffstat (limited to 'engine')
-rwxr-xr-x | engine/link/time_capsule_2.asm | 39 | ||||
-rwxr-xr-x | engine/pokedex/new_pokedex_entry.asm | 50 |
2 files changed, 89 insertions, 0 deletions
diff --git a/engine/link/time_capsule_2.asm b/engine/link/time_capsule_2.asm new file mode 100755 index 00000000..6640f6b0 --- /dev/null +++ b/engine/link/time_capsule_2.asm @@ -0,0 +1,39 @@ +ConvertMon_2to1: +; Takes the Gen 2 Pokemon number stored in wTempSpecies, +; finds it in the Pokered_MonIndices table, +; and returns its index in wTempSpecies. + push bc + push hl + ld a, [wTempSpecies] + ld b, a + ld c, 0 + ld hl, Pokered_MonIndices +.loop + inc c + ld a, [hli] + cp b + jr nz, .loop + ld a, c + ld [wTempSpecies], a + pop hl + pop bc + ret + +ConvertMon_1to2: +; Takes the Gen 1 Pokemon number stored in wTempSpecies +; and returns the corresponding value from Pokered_MonIndices in wTempSpecies. + push bc + push hl + ld a, [wTempSpecies] + dec a + ld hl, Pokered_MonIndices + ld b, 0 + ld c, a + add hl, bc + ld a, [hl] + ld [wTempSpecies], a + pop hl + pop bc + ret + +INCLUDE "data/pokemon/gen1_order.asm" diff --git a/engine/pokedex/new_pokedex_entry.asm b/engine/pokedex/new_pokedex_entry.asm new file mode 100755 index 00000000..844253c5 --- /dev/null +++ b/engine/pokedex/new_pokedex_entry.asm @@ -0,0 +1,50 @@ +NewPokedexEntry: + ldh a, [hMapAnims] + push af + xor a + ldh [hMapAnims], a + call LowVolume + call ClearBGPalettes + call ClearTilemap + call UpdateSprites + call ClearSprites + ld a, [wPokedexStatus] + push af + ldh a, [hSCX] + add POKEDEX_SCX + ldh [hSCX], a + xor a + ld [wPokedexStatus], a + farcall _NewPokedexEntry + call WaitPressAorB_BlinkCursor + ld a, 1 ; page 2 + ld [wPokedexStatus], a + farcall DisplayDexEntry + call WaitPressAorB_BlinkCursor + pop af + ld [wPokedexStatus], a + call MaxVolume + call RotateThreePalettesRight + ldh a, [hSCX] + add -POKEDEX_SCX + ldh [hSCX], a + call .ReturnFromDexRegistration + pop af + ldh [hMapAnims], a + ret + +.ReturnFromDexRegistration: + call ClearTilemap + call LoadFontsExtra + call LoadStandardFont + farcall Pokedex_PlaceFrontpicTopLeftCorner + call WaitBGMap2 + farcall GetEnemyMonDVs + ld a, [hli] + ld [wTempMonDVs], a + ld a, [hl] + ld [wTempMonDVs + 1], a + ld b, SCGB_TRAINER_OR_MON_FRONTPIC_PALS + call GetSGBLayout + call SetPalettes + ret |