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 | |
parent | 88d1fe6c26ed4da7720d129962d507a26c1f9b17 (diff) |
Add time_capsule_2.asm and new_pokedex_entry.asm
-rwxr-xr-x | data/pokemon/gen1_order.asm | 254 | ||||
-rwxr-xr-x | engine/link/time_capsule_2.asm | 39 | ||||
-rwxr-xr-x | engine/pokedex/new_pokedex_entry.asm | 50 | ||||
-rw-r--r-- | main.asm | 10 |
4 files changed, 345 insertions, 8 deletions
diff --git a/data/pokemon/gen1_order.asm b/data/pokemon/gen1_order.asm new file mode 100755 index 00000000..45efcafa --- /dev/null +++ b/data/pokemon/gen1_order.asm @@ -0,0 +1,254 @@ +Pokered_MonIndices: + db RHYDON + db KANGASKHAN + db NIDORAN_M + db CLEFAIRY + db SPEAROW + db VOLTORB + db NIDOKING + db SLOWBRO + db IVYSAUR + db EXEGGUTOR + db LICKITUNG + db EXEGGCUTE + db GRIMER + db GENGAR + db NIDORAN_F + db NIDOQUEEN + db CUBONE + db RHYHORN + db LAPRAS + db ARCANINE + db MEW + db GYARADOS + db SHELLDER + db TENTACOOL + db GASTLY + db SCYTHER + db STARYU + db BLASTOISE + db PINSIR + db TANGELA + db SCIZOR ; MISSINGNO. + db SHUCKLE ; MISSINGNO. + db GROWLITHE + db ONIX + db FEAROW + db PIDGEY + db SLOWPOKE + db KADABRA + db GRAVELER + db CHANSEY + db MACHOKE + db MR__MIME + db HITMONLEE + db HITMONCHAN + db ARBOK + db PARASECT + db PSYDUCK + db DROWZEE + db GOLEM + db HERACROSS ; MISSINGNO. + db MAGMAR + db HO_OH ; MISSINGNO. + db ELECTABUZZ + db MAGNETON + db KOFFING + db SNEASEL ; MISSINGNO. + db MANKEY + db SEEL + db DIGLETT + db TAUROS + db TEDDIURSA ; MISSINGNO. + db URSARING ; MISSINGNO. + db SLUGMA ; MISSINGNO. + db FARFETCH_D + db VENONAT + db DRAGONITE + db MAGCARGO ; MISSINGNO. + db SWINUB ; MISSINGNO. + db PILOSWINE ; MISSINGNO. + db DODUO + db POLIWAG + db JYNX + db MOLTRES + db ARTICUNO + db ZAPDOS + db DITTO + db MEOWTH + db KRABBY + db CORSOLA ; MISSINGNO. + db REMORAID ; MISSINGNO. + db OCTILLERY ; MISSINGNO. + db VULPIX + db NINETALES + db PIKACHU + db RAICHU + db DELIBIRD ; MISSINGNO. + db MANTINE ; MISSINGNO. + db DRATINI + db DRAGONAIR + db KABUTO + db KABUTOPS + db HORSEA + db SEADRA + db SKARMORY ; MISSINGNO. + db HOUNDOUR ; MISSINGNO. + db SANDSHREW + db SANDSLASH + db OMANYTE + db OMASTAR + db JIGGLYPUFF + db WIGGLYTUFF + db EEVEE + db FLAREON + db JOLTEON + db VAPOREON + db MACHOP + db ZUBAT + db EKANS + db PARAS + db POLIWHIRL + db POLIWRATH + db WEEDLE + db KAKUNA + db BEEDRILL + db HOUNDOOM ; MISSINGNO. + db DODRIO + db PRIMEAPE + db DUGTRIO + db VENOMOTH + db DEWGONG + db KINGDRA ; MISSINGNO. + db PHANPY ; MISSINGNO. + db CATERPIE + db METAPOD + db BUTTERFREE + db MACHAMP + db DONPHAN ; MISSINGNO. + db GOLDUCK + db HYPNO + db GOLBAT + db MEWTWO + db SNORLAX + db MAGIKARP + db PORYGON2 ; MISSINGNO. + db STANTLER ; MISSINGNO. + db MUK + db SMEARGLE ; MISSINGNO. + db KINGLER + db CLOYSTER + db TYROGUE ; MISSINGNO. + db ELECTRODE + db CLEFABLE + db WEEZING + db PERSIAN + db MAROWAK + db HITMONTOP ; MISSINGNO. + db HAUNTER + db ABRA + db ALAKAZAM + db PIDGEOTTO + db PIDGEOT + db STARMIE + db BULBASAUR + db VENUSAUR + db TENTACRUEL + db SMOOCHUM ; MISSINGNO. + db GOLDEEN + db SEAKING + db ELEKID ; MISSINGNO. + db MAGBY ; MISSINGNO. + db MILTANK ; MISSINGNO. + db BLISSEY ; MISSINGNO. + db PONYTA + db RAPIDASH + db RATTATA + db RATICATE + db NIDORINO + db NIDORINA + db GEODUDE + db PORYGON + db AERODACTYL + db RAIKOU ; MISSINGNO. + db MAGNEMITE + db ENTEI ; MISSINGNO. + db SUICUNE ; MISSINGNO. + db CHARMANDER + db SQUIRTLE + db CHARMELEON + db WARTORTLE + db CHARIZARD + db LARVITAR ; MISSINGNO. + db PUPITAR ; MISSINGNO. KABUTOPS FOSSIL + db TYRANITAR ; MISSINGNO. AERODACTYL FOSSIL + db LUGIA ; MISSINGNO. GHOST + db ODDISH + db GLOOM + db VILEPLUME + db BELLSPROUT + db WEEPINBELL + db VICTREEBEL + + db CHIKORITA + db BAYLEEF + db MEGANIUM + db CYNDAQUIL + db QUILAVA + db TYPHLOSION + db TOTODILE + db CROCONAW + db FERALIGATR + db SENTRET + db FURRET + db HOOTHOOT + db NOCTOWL + db LEDYBA + db LEDIAN + db SPINARAK + db ARIADOS + db CROBAT + db CHINCHOU + db LANTURN + db PICHU + db CLEFFA + db IGGLYBUFF + db TOGEPI + db TOGETIC + db NATU + db XATU + db MAREEP + db FLAAFFY + db AMPHAROS + db BELLOSSOM + db MARILL + db AZUMARILL + db SUDOWOODO + db POLITOED + db HOPPIP + db SKIPLOOM + db JUMPLUFF + db AIPOM + db SUNKERN + db SUNFLORA + db YANMA + db WOOPER + db QUAGSIRE + db ESPEON + db UMBREON + db MURKROW + db SLOWKING + db MISDREAVUS + db UNOWN + db WOBBUFFET + db GIRAFARIG + db PINECO + db FORRETRESS + db DUNSPARCE + db GLIGAR + db STEELIX + db SNUBBULL + db GRANBULL + db QWILFISH + db WOBBUFFET + db WOBBUFFET 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 @@ -377,14 +377,8 @@ INCBIN "gfx/new_game/shrink2.2bpp.lz" INCLUDE "engine/link/time_capsule.asm" INCLUDE "engine/events/name_rater.asm" INCLUDE "engine/events/play_slow_cry.asm" - -NewPokedexEntry:: - dr $fb981, $fb9fb - -ConvertMon_2to1:: - dr $fb9fb, $fba12 -ConvertMon_1to2:: - dr $fba12, $fbb22 +INCLUDE "engine/pokedex/new_pokedex_entry.asm" +INCLUDE "engine/link/time_capsule_2.asm" UpdateUnownDex:: dr $fbb22, $fbb38 |