Skip to content

Commit

Permalink
Compress footprint graphics
Browse files Browse the repository at this point in the history
  • Loading branch information
Rangi42 committed Jul 17, 2022
1 parent 19cbf5f commit 260ebfb
Show file tree
Hide file tree
Showing 104 changed files with 646 additions and 338 deletions.
2 changes: 1 addition & 1 deletion constants/pokemon_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
; - AlphabeticalPokedexOrder (see data/pokemon/dex_order_alpha.asm)
; - NewPokedexOrder (see data/pokemon/dex_order_new.asm)
; - ValidPokemonLevels (see data/pokemon/valid_levels.asm)
; - Footprints (see gfx/pokemon/footprints.asm)
; - FootprintPointers (see data/pokemon/footprint_pointers.asm)
; - AnimationPointers (see gfx/pokemon/anim_pointers.asm)
; - AnimationIdlePointers (see gfx/pokemon/idle_pointers.asm)
; - BitmasksPointers (see gfx/pokemon/bitmask_pointers.asm)
Expand Down
337 changes: 337 additions & 0 deletions data/pokemon/footprint_pointers.asm
Original file line number Diff line number Diff line change
@@ -0,0 +1,337 @@
FootprintPointers::
table_width 2, FootprintPointers
dw BulbasaurFootprint
dw IvysaurFootprint
dw VenusaurFootprint
dw CharmanderFootprint
dw CharmeleonFootprint
dw CharizardFootprint
dw SquirtleFootprint
dw WartortleFootprint
dw BlastoiseFootprint
dw CaterpieFootprint
dw MetapodFootprint
dw ButterfreeFootprint
dw WeedleFootprint
dw KakunaFootprint
dw BeedrillFootprint
dw PidgeyFootprint
dw PidgeottoFootprint
dw PidgeotFootprint
dw RattataFootprint
dw RaticateFootprint
dw SpearowFootprint
dw FearowFootprint
dw EkansFootprint
dw ArbokFootprint
dw PikachuFootprint
dw RaichuFootprint
dw SandshrewFootprint
dw SandslashFootprint
dw NidoranFFootprint
dw NidorinaFootprint
dw NidoqueenFootprint
dw NidoranMFootprint
dw NidorinoFootprint
dw NidokingFootprint
dw ClefairyFootprint
dw ClefableFootprint
dw VulpixFootprint
dw NinetalesFootprint
dw JigglypuffFootprint
dw WigglytuffFootprint
dw ZubatFootprint
dw GolbatFootprint
dw OddishFootprint
dw GloomFootprint
dw VileplumeFootprint
dw ParasFootprint
dw ParasectFootprint
dw VenonatFootprint
dw VenomothFootprint
dw DiglettFootprint
dw DugtrioFootprint
dw MeowthFootprint
dw PersianFootprint
dw PsyduckFootprint
dw GolduckFootprint
dw MankeyFootprint
dw PrimeapeFootprint
dw GrowlitheFootprint
dw ArcanineFootprint
dw PoliwagFootprint
dw PoliwhirlFootprint
dw PoliwrathFootprint
dw AbraFootprint
dw KadabraFootprint
dw AlakazamFootprint
dw MachopFootprint
dw MachokeFootprint
dw MachampFootprint
dw BellsproutFootprint
dw WeepinbellFootprint
dw VictreebelFootprint
dw TentacoolFootprint
dw TentacruelFootprint
dw GeodudeFootprint
dw GravelerFootprint
dw GolemFootprint
dw PonytaFootprint
dw RapidashFootprint
dw SlowpokeFootprint
dw SlowbroFootprint
dw MagnemiteFootprint
dw MagnetonFootprint
dw FarfetchDFootprint
dw DoduoFootprint
dw DodrioFootprint
dw SeelFootprint
dw DewgongFootprint
dw GrimerFootprint
dw MukFootprint
dw ShellderFootprint
dw CloysterFootprint
dw GastlyFootprint
dw HaunterFootprint
dw GengarFootprint
dw OnixFootprint
dw DrowzeeFootprint
dw HypnoFootprint
dw KrabbyFootprint
dw KinglerFootprint
dw VoltorbFootprint
dw ElectrodeFootprint
dw ExeggcuteFootprint
dw ExeggutorFootprint
dw CuboneFootprint
dw MarowakFootprint
dw HitmonleeFootprint
dw HitmonchanFootprint
dw LickitungFootprint
dw KoffingFootprint
dw WeezingFootprint
dw RhyhornFootprint
dw RhydonFootprint
dw ChanseyFootprint
dw TangelaFootprint
dw KangaskhanFootprint
dw HorseaFootprint
dw SeadraFootprint
dw GoldeenFootprint
dw SeakingFootprint
dw StaryuFootprint
dw StarmieFootprint
dw MrMimeFootprint
dw ScytherFootprint
dw JynxFootprint
dw ElectabuzzFootprint
dw MagmarFootprint
dw PinsirFootprint
dw TaurosFootprint
dw MagikarpFootprint
dw GyaradosFootprint
dw LaprasFootprint
dw DittoFootprint
dw EeveeFootprint
dw VaporeonFootprint
dw JolteonFootprint
dw FlareonFootprint
dw PorygonFootprint
dw OmanyteFootprint
dw OmastarFootprint
dw KabutoFootprint
dw KabutopsFootprint
dw AerodactylFootprint
dw SnorlaxFootprint
dw ArticunoFootprint
dw ZapdosFootprint
dw MoltresFootprint
dw DratiniFootprint
dw DragonairFootprint
dw DragoniteFootprint
dw MewtwoFootprint
dw MewFootprint
dw ChikoritaFootprint
dw BayleefFootprint
dw MeganiumFootprint
dw CyndaquilFootprint
dw QuilavaFootprint
dw TyphlosionFootprint
dw TotodileFootprint
dw CroconawFootprint
dw FeraligatrFootprint
dw SentretFootprint
dw FurretFootprint
dw HoothootFootprint
dw NoctowlFootprint
dw LedybaFootprint
dw LedianFootprint
dw SpinarakFootprint
dw AriadosFootprint
dw CrobatFootprint
dw ChinchouFootprint
dw LanturnFootprint
dw PichuFootprint
dw CleffaFootprint
dw IgglybuffFootprint
dw TogepiFootprint
dw TogeticFootprint
dw NatuFootprint
dw XatuFootprint
dw MareepFootprint
dw FlaaffyFootprint
dw AmpharosFootprint
dw BellossomFootprint
dw MarillFootprint
dw AzumarillFootprint
dw SudowoodoFootprint
dw PolitoedFootprint
dw HoppipFootprint
dw SkiploomFootprint
dw JumpluffFootprint
dw AipomFootprint
dw SunkernFootprint
dw SunfloraFootprint
dw YanmaFootprint
dw WooperFootprint
dw QuagsireFootprint
dw EspeonFootprint
dw UmbreonFootprint
dw MurkrowFootprint
dw SlowkingFootprint
dw MisdreavusFootprint
dw UnownFootprint
dw WobbuffetFootprint
dw GirafarigFootprint
dw PinecoFootprint
dw ForretressFootprint
dw DunsparceFootprint
dw GligarFootprint
dw SteelixFootprint
dw SnubbullFootprint
dw GranbullFootprint
dw QwilfishFootprint
dw ScizorFootprint
dw ShuckleFootprint
dw HeracrossFootprint
dw SneaselFootprint
dw TeddiursaFootprint
dw UrsaringFootprint
dw SlugmaFootprint
dw MagcargoFootprint
dw SwinubFootprint
dw PiloswineFootprint
dw CorsolaFootprint
dw RemoraidFootprint
dw OctilleryFootprint
dw DelibirdFootprint
dw MantineFootprint
dw SkarmoryFootprint
dw HoundourFootprint
dw HoundoomFootprint
dw KingdraFootprint
dw PhanpyFootprint
dw DonphanFootprint
dw Porygon2Footprint
dw StantlerFootprint
dw SmeargleFootprint
dw TyrogueFootprint
dw HitmontopFootprint
dw SmoochumFootprint
dw ElekidFootprint
dw MagbyFootprint
dw MiltankFootprint
dw BlisseyFootprint
dw RaikouFootprint
dw EnteiFootprint
dw SuicuneFootprint
dw LarvitarFootprint
dw PupitarFootprint
dw TyranitarFootprint
dw LugiaFootprint
dw HoOhFootprint
dw CelebiFootprint
dw AzurillFootprint
dw WynautFootprint
dw AmbipomFootprint
dw EggFootprint
dw EggFootprint ; $100
dw MismagiusFootprint
dw HonchkrowFootprint
dw BonslyFootprint
dw MimeJrFootprint
dw HappinyFootprint
dw MunchlaxFootprint
dw MantykeFootprint
dw WeavileFootprint
dw MagnezoneFootprint
dw LickilickyFootprint
dw RhyperiorFootprint
dw TangrowthFootprint
dw ElectivireFootprint
dw MagmortarFootprint
dw TogekissFootprint
dw YanmegaFootprint
dw LeafeonFootprint
dw GlaceonFootprint
dw GliscorFootprint
dw MamoswineFootprint
dw PorygonZFootprint
dw SylveonFootprint
dw PerrserkerFootprint
dw CursolaFootprint
dw SirfetchDFootprint
dw MrRimeFootprint
dw WyrdeerFootprint
dw KleavorFootprint
dw UrsalunaFootprint
dw SneaslerFootprint
dw OverqwilFootprint
assert_table_length NUM_SPECIES

dw GyaradosFootprint

dw MewtwoFootprint

dw RattataFootprint
dw RaticateFootprint
dw RaichuFootprint
dw SandshrewFootprint
dw SandslashFootprint
dw VulpixFootprint
dw NinetalesFootprint
dw DiglettFootprint
dw DugtrioFootprint
dw MeowthFootprint
dw PersianFootprint
dw GeodudeFootprint
dw GravelerFootprint
dw GolemFootprint
dw GrimerFootprint
dw MukFootprint
dw ExeggutorFootprint
dw MarowakFootprint

dw MeowthFootprint
dw PonytaFootprint
dw RapidashFootprint
dw SlowpokeFootprint
dw SlowbroFootprint
dw FarfetchDFootprint
dw WeezingFootprint
dw MrMimeFootprint
dw ArticunoFootprint
dw ZapdosFootprint
dw MoltresFootprint
dw SlowkingFootprint
dw CorsolaFootprint

dw GrowlitheFootprint
dw ArcanineFootprint
dw VoltorbFootprint
dw ElectrodeFootprint
dw TyphlosionFootprint
dw QwilfishFootprint
dw SneaselFootprint

assert_table_length NUM_EXT_POKEMON
26 changes: 20 additions & 6 deletions engine/pokedex/pokedex.asm
Original file line number Diff line number Diff line change
Expand Up @@ -3307,7 +3307,7 @@ _Pokedex_GetCursorMon:
pop af
ldh a, [rSVBK]
push af
jr z, .type_pals_done
jmp z, .type_pals_done

ld a, 1
ld [wPokedexOAM_IsCaught], a
Expand Down Expand Up @@ -3355,12 +3355,26 @@ _Pokedex_GetCursorMon:
; Footprint
call Pokedex_GetCursorSpecies
call GetSpeciesAndFormIndex
ld hl, Footprints
ld a, 4 * LEN_1BPP_TILE
rst AddNTimes
ld hl, FootprintPointers
add hl, bc
add hl, bc
ld a, BANK(FootprintPointers)
call GetFarWord
ld a, BANK(Footprints)
ld de, wDexMonFootprintTiles
lb bc, BANK(Footprints), 4
call Pokedex_Copy1bpp
call FarDecompressToDE
; Expand 1bpp to 2bpp
ld hl, wDexMonFootprintTiles + 4 * LEN_1BPP_TILE - 1
ld de, wDexMonFootprintTiles + 4 tiles - 1
ld c, 4 * LEN_1BPP_TILE
.footprint_loop
ld a, [hld]
ld [de], a
dec de
ld [de], a
dec de
dec c
jr nz, .footprint_loop

; Make the type icons use color 1 and 2 of the pal instead of 3.
ld hl, wDexMonType1Tiles + 1
Expand Down
Binary file modified gfx/footprints/aipom.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified gfx/footprints/ambipom.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified gfx/footprints/azurill.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed gfx/footprints/bellossom.png
Binary file not shown.
File renamed without changes
Binary file modified gfx/footprints/bonsly.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed gfx/footprints/chinchou.png
Binary file not shown.
File renamed without changes
File renamed without changes
Binary file modified gfx/footprints/cleffa.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed gfx/footprints/cloyster.png
Binary file not shown.
Binary file removed gfx/footprints/crobat.png
Binary file not shown.
Binary file removed gfx/footprints/cursola.png
Binary file not shown.
Binary file modified gfx/footprints/delibird.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed gfx/footprints/dewgong.png
Binary file not shown.
Binary file removed gfx/footprints/diglett.png
Binary file not shown.
Binary file removed gfx/footprints/ditto.png
Binary file not shown.
Binary file removed gfx/footprints/dragonair.png
Binary file not shown.
Binary file removed gfx/footprints/dratini.png
Binary file not shown.
Binary file removed gfx/footprints/dugtrio.png
Binary file not shown.
Binary file removed gfx/footprints/dunsparce.png
Binary file not shown.
Binary file removed gfx/footprints/ekans.png
Binary file not shown.
Binary file removed gfx/footprints/electrode.png
Binary file not shown.
Binary file removed gfx/footprints/exeggcute.png
Binary file not shown.
Binary file modified gfx/footprints/fearow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed gfx/footprints/forretress.png
Diff not rendered.
Binary file removed gfx/footprints/gastly.png
Diff not rendered.
Binary file removed gfx/footprints/geodude.png
Diff not rendered.
Binary file removed gfx/footprints/glaceon.png
Diff not rendered.
Binary file removed gfx/footprints/goldeen.png
Diff not rendered.
Binary file removed gfx/footprints/grimer.png
Diff not rendered.
Binary file removed gfx/footprints/gyarados.png
Diff not rendered.
Binary file modified gfx/footprints/happiny.png
Binary file removed gfx/footprints/haunter.png
Diff not rendered.
Binary file removed gfx/footprints/hoppip.png
Diff not rendered.
Binary file removed gfx/footprints/horsea.png
Diff not rendered.
Binary file modified gfx/footprints/igglybuff.png
Binary file modified gfx/footprints/jumpluff.png
Binary file removed gfx/footprints/jynx.png
Diff not rendered.
Binary file removed gfx/footprints/kakuna.png
Diff not rendered.
Binary file removed gfx/footprints/kingdra.png
Diff not rendered.
Binary file removed gfx/footprints/kleavor.png
Diff not rendered.
Binary file removed gfx/footprints/koffing.png
Diff not rendered.
Binary file removed gfx/footprints/lanturn.png
Diff not rendered.
Binary file removed gfx/footprints/lapras.png
Diff not rendered.
Binary file removed gfx/footprints/leafeon.png
Diff not rendered.
Binary file modified gfx/footprints/lickilicky.png
Binary file modified gfx/footprints/lickitung.png
Binary file removed gfx/footprints/magcargo.png
Diff not rendered.
Binary file removed gfx/footprints/magikarp.png
Diff not rendered.
Binary file removed gfx/footprints/magnezone.png
Diff not rendered.
Binary file removed gfx/footprints/mantine.png
Diff not rendered.
Binary file removed gfx/footprints/mantyke.png
Diff not rendered.
Binary file removed gfx/footprints/metapod.png
Diff not rendered.
Binary file modified gfx/footprints/mime_jr_.png
Binary file removed gfx/footprints/misdreavus.png
Diff not rendered.
Binary file removed gfx/footprints/mismagius.png
Diff not rendered.
Binary file modified gfx/footprints/mr__rime.png
Binary file removed gfx/footprints/muk.png
Diff not rendered.
Binary file removed gfx/footprints/onix.png
Diff not rendered.
Binary file removed gfx/footprints/overqwil.png
Diff not rendered.
Binary file modified gfx/footprints/perrserker.png
File renamed without changes
Binary file removed gfx/footprints/pineco.png
Diff not rendered.
Binary file removed gfx/footprints/porygon_z.png
Diff not rendered.
Binary file removed gfx/footprints/pupitar.png
Diff not rendered.
Binary file removed gfx/footprints/qwilfish.png
Diff not rendered.
Binary file removed gfx/footprints/remoraid.png
Diff not rendered.
Binary file removed gfx/footprints/seadra.png
Diff not rendered.
Binary file removed gfx/footprints/seaking.png
Diff not rendered.
Binary file removed gfx/footprints/seel.png
Diff not rendered.
File renamed without changes
Binary file removed gfx/footprints/shellder.png
Diff not rendered.
Binary file modified gfx/footprints/sirfetch_d.png
Binary file modified gfx/footprints/skiploom.png
Binary file removed gfx/footprints/slugma.png
Diff not rendered.
Binary file modified gfx/footprints/smoochum.png
Binary file removed gfx/footprints/sneasler.png
Diff not rendered.
Binary file removed gfx/footprints/spearow.png
Diff not rendered.
Binary file removed gfx/footprints/spinarak.png
Diff not rendered.
Binary file modified gfx/footprints/stantler.png
Binary file removed gfx/footprints/starmie.png
Diff not rendered.
Binary file removed gfx/footprints/staryu.png
Diff not rendered.
Binary file removed gfx/footprints/steelix.png
Diff not rendered.
Binary file removed gfx/footprints/sunkern.png
Diff not rendered.
Binary file removed gfx/footprints/sylveon.png
Diff not rendered.
Binary file removed gfx/footprints/tentacool.png
Diff not rendered.
Binary file removed gfx/footprints/tentacruel.png
Diff not rendered.
Binary file removed gfx/footprints/unown.png
Diff not rendered.
Binary file removed gfx/footprints/ursaluna.png
Diff not rendered.
Binary file removed gfx/footprints/venomoth.png
Diff not rendered.
Binary file removed gfx/footprints/victreebel.png
Diff not rendered.
Binary file removed gfx/footprints/voltorb.png
Diff not rendered.
Binary file removed gfx/footprints/weedle.png
Diff not rendered.
Binary file removed gfx/footprints/weepinbell.png
Diff not rendered.
Binary file removed gfx/footprints/weezing.png
Diff not rendered.
Binary file modified gfx/footprints/wynaut.png
Binary file removed gfx/footprints/wyrdeer.png
Diff not rendered.
Binary file removed gfx/footprints/zubat.png
Diff not rendered.
Loading

0 comments on commit 260ebfb

Please sign in to comment.