diff --git a/constants/pokemon_constants.asm b/constants/pokemon_constants.asm index 7d9ec6c7..19f23d55 100644 --- a/constants/pokemon_constants.asm +++ b/constants/pokemon_constants.asm @@ -239,7 +239,9 @@ ; const PERRSERKER ; $E6 ; const SIRFETCHD ; $E7 ; const MR_RIME ; $E8 - const MISSINGNO ; $E9 + ; const MELTAN ; $E9 + ; const MELMETAL ; $EA + const MISSINGNO ; $EB DEF NUM_POKEMON_INDEXES EQU const_value - 1 diff --git a/data/pokemon/base_stats.asm b/data/pokemon/base_stats.asm index d9d2f8f9..305b6ac3 100644 --- a/data/pokemon/base_stats.asm +++ b/data/pokemon/base_stats.asm @@ -63,7 +63,7 @@ INCLUDE "data/pokemon/base_stats/growlithe.asm" INCLUDE "data/pokemon/base_stats/arcanine.asm" INCLUDE "data/pokemon/base_stats/mankey.asm" INCLUDE "data/pokemon/base_stats/primeape.asm" -; INCLUDE "data/pokemon/base_stats/annihilape.asm" +INCLUDE "data/pokemon/base_stats/annihilape.asm" INCLUDE "data/pokemon/base_stats/oddish.asm" INCLUDE "data/pokemon/base_stats/gloom.asm" INCLUDE "data/pokemon/base_stats/vileplume.asm" @@ -94,7 +94,7 @@ INCLUDE "data/pokemon/base_stats/madaamu.asm" INCLUDE "data/pokemon/base_stats/diglett.asm" INCLUDE "data/pokemon/base_stats/dugtrio.asm" ; INCLUDE "data/pokemon/base_stats/wiglett.asm" -; INCLUDE "data/pokemon/base_stats/wugtrio.asm" +INCLUDE "data/pokemon/base_stats/wugtrio.asm" INCLUDE "data/pokemon/base_stats/crocky.asm" INCLUDE "data/pokemon/base_stats/kotora.asm" INCLUDE "data/pokemon/base_stats/gaotora.asm" @@ -214,8 +214,8 @@ INCLUDE "data/pokemon/base_stats/decilla.asm" INCLUDE "data/pokemon/base_stats/gyaoon.asm" INCLUDE "data/pokemon/base_stats/omega.asm" INCLUDE "data/pokemon/base_stats/snorlax.asm" -; INCLUDE "data/pokemon/base_stats/screamtail.asm" -; INCLUDE "data/pokemon/base_stats/sandyshocks.asm" +INCLUDE "data/pokemon/base_stats/screamtail.asm" +INCLUDE "data/pokemon/base_stats/sandyshocks.asm" INCLUDE "data/pokemon/base_stats/dratini.asm" INCLUDE "data/pokemon/base_stats/dragonair.asm" INCLUDE "data/pokemon/base_stats/dragonite.asm" @@ -224,6 +224,8 @@ INCLUDE "data/pokemon/base_stats/zapdos.asm" INCLUDE "data/pokemon/base_stats/moltres.asm" INCLUDE "data/pokemon/base_stats/mewtwo.asm" INCLUDE "data/pokemon/base_stats/mew.asm" +; INCLUDE "data/pokemon/base_stats/meltan.asm" +; INCLUDE "data/pokemon/base_stats/melmetal.asm" assert_table_length NUM_POKEMON - 1 ; discount MissingNo MissingnoBaseStats:: diff --git a/data/pokemon/base_stats/annihilape.asm b/data/pokemon/base_stats/annihilape.asm new file mode 100644 index 00000000..14cc447a --- /dev/null +++ b/data/pokemon/base_stats/annihilape.asm @@ -0,0 +1,25 @@ + db DEX_ANNIHILAPE ; pokedex id + + db 110, 115, 80, 90, 50 + ; hp atk def spd spc + + db FIGHTING, GHOST ; type + db 45 ; catch rate + db 210 ; base exp + + INCBIN "gfx/pokemon/front/annihilape.pic", 0, 1 ; sprite dimensions + dw AnnihilapePicFront, AnnihilapePicBack + + db SCRATCH, LEER, KARATE_CHOP, FURY_SWIPES ; level 1 learnset + db GROWTH_MEDIUM_FAST ; growth rate + + ; tm/hm learnset + tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \ + DOUBLE_EDGE, HYPER_BEAM, PAY_DAY, SUBMISSION, COUNTER, \ + SEISMIC_TOSS, RAGE, THUNDERBOLT, THUNDER, DIG, \ + MIMIC, DOUBLE_TEAM, BIDE, METRONOME, SWIFT, \ + SKULL_BASH, REST, ROCK_SLIDE, SUBSTITUTE, STRENGTH + ; end + + db BANK(AnnihilapePicFront) + assert BANK(AnnihilapePicFront) == BANK(AnnihilapePicBack) diff --git a/data/pokemon/base_stats/sandyshocks.asm b/data/pokemon/base_stats/sandyshocks.asm new file mode 100644 index 00000000..c4fc1d9c --- /dev/null +++ b/data/pokemon/base_stats/sandyshocks.asm @@ -0,0 +1,25 @@ + db DEX_SANDY_SHOCKS ; pokedex id + + db 85, 81, 97, 101, 121 + ; hp atk def spd spc + + db ELECTRIC, GROUND ; type + db 30 ; catch rate + db 210 ; base exp + + INCBIN "gfx/pokemon/front/sandyshocks.pic", 0, 1 ; sprite dimensions + dw SandyShocksPicFront, SandyShocksPicBack + + db TACKLE, SONIC_BOOM, THUNDERSHOCK, MAGNET_BOMB ; level 1 learnset + db GROWTH_SLOW ; growth rate + + ; tm/hm learnset + tmhm MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \ + HYPER_BEAM, RAGE, THUNDERBOLT, THUNDER, EARTHQUAKE, \ + FISSURE, DIG, TELEPORT, MIMIC, DOUBLE_TEAM, \ + REFLECT, BIDE, SWIFT, REST, THUNDER_WAVE, \ + SUBSTITUTE, FLASH + ; end + + db BANK(SandyShocksPicFront) + assert BANK(SandyShocksPicFront) == BANK(SandyShocksPicBack) diff --git a/data/pokemon/base_stats/screamtail.asm b/data/pokemon/base_stats/screamtail.asm new file mode 100644 index 00000000..d06dfe7b --- /dev/null +++ b/data/pokemon/base_stats/screamtail.asm @@ -0,0 +1,27 @@ + db DEX_SCREAM_TAIL ; pokedex id + + db 115, 65, 99, 111, 65 + ; hp atk def spd spc + + db FAIRY, PSYCHIC ; type + db 50 ; catch rate + db 210 ; base exp + + INCBIN "gfx/pokemon/front/screamtail.pic", 0, 1 ; sprite dimensions + dw ScreamTailPicFront, ScreamTailPicBack + + db SING, POUND, DISABLE, NO_MOVE ; level 1 learnset + db GROWTH_SLOW ; growth rate + + ; tm/hm learnset + tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \ + DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \ + HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \ + SOLARBEAM, THUNDERBOLT, THUNDER, PSYCHIC_M, TELEPORT, \ + MIMIC, DOUBLE_TEAM, REFLECT, BIDE, FIRE_BLAST, \ + SKULL_BASH, REST, THUNDER_WAVE, PSYWAVE, TRI_ATTACK, \ + SUBSTITUTE, STRENGTH, FLASH + ; end + + db BANK(ScreamTailPicFront) + assert BANK(ScreamTailPicFront) == BANK(ScreamTailPicBack) diff --git a/data/pokemon/base_stats/wugtrio.asm b/data/pokemon/base_stats/wugtrio.asm new file mode 100644 index 00000000..f5b01c74 --- /dev/null +++ b/data/pokemon/base_stats/wugtrio.asm @@ -0,0 +1,24 @@ + db DEX_WUGTRIO ; pokedex id + + db 35, 80, 50, 120, 70 + ; hp atk def spd spc + + db WATER, WATER ; type + db 50 ; catch rate + db 153 ; base exp + + INCBIN "gfx/pokemon/front/wugtrio.pic", 0, 1 ; sprite dimensions + dw WugtrioPicFront, WugtrioPicBack + + db WATER_GUN, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset + db GROWTH_MEDIUM_FAST ; growth rate + + ; tm/hm learnset + tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \ + WATER_GUN, HYPER_BEAM, RAGE, EARTHQUAKE, FISSURE, \ + DIG, MIMIC, DOUBLE_TEAM, BIDE, REST, \ + ROCK_SLIDE, SUBSTITUTE, CUT, SURF + ; end + + db BANK(WugtrioPicFront) + assert BANK(WugtrioPicFront) == BANK(WugtrioPicBack) diff --git a/data/pokemon/cries.asm b/data/pokemon/cries.asm index 55c25fd5..e9a7debb 100644 --- a/data/pokemon/cries.asm +++ b/data/pokemon/cries.asm @@ -228,15 +228,17 @@ CryData:: mon_cry SFX_CRY_00, $00, $00 ; Porygon-Z ; mon_cry SFX_CRY_00, $00, $00 ; Happiny ; mon_cry SFX_CRY_00, $00, $00 ; Munchlax - ; mon_cry SFX_CRY_20, $00, $1C ; Annihilape - ; mon_cry SFX_CRY_0E, $FA, $80 ; Scream Tail - ; mon_cry SFX_CRY_1C, $1F, $DD ; Sandy Shocks + mon_cry SFX_CRY_20, $00, $1C ; Annihilape + mon_cry SFX_CRY_0E, $FA, $80 ; Scream Tail + mon_cry SFX_CRY_1C, $1F, $DD ; Sandy Shocks ; mon_cry SFX_CRY_00, $00, $00 ; Wiglett - ; mon_cry SFX_CRY_00, $00, $00 ; Wugtrio + mon_cry SFX_CRY_00, $00, $00 ; Wugtrio ; mon_cry SFX_CRY_00, $00, $00 ; Toedscool ; mon_cry SFX_CRY_00, $00, $00 ; Toedscruel ; mon_cry SFX_CRY_19, $1A, $40 ; Perrserker ; mon_cry SFX_CRY_10, $64, $40 ; Sirfetch'd ; mon_cry SFX_CRY_20, $00, $70 ; Mr. Rime + ; mon_cry SFX_CRY_00, $00, $00 ; Meltan + ; mon_cry SFX_CRY_00, $00, $00 ; Melmetal mon_cry SFX_CRY_00, $00, $00 ; MissingNo. assert_table_length NUM_POKEMON_INDEXES diff --git a/data/pokemon/dex_entries.asm b/data/pokemon/dex_entries.asm index 9504e797..b82e43ad 100644 --- a/data/pokemon/dex_entries.asm +++ b/data/pokemon/dex_entries.asm @@ -220,6 +220,13 @@ PokedexEntryPointers: dw BetobebiiDexEntry dw MagnezoneDexEntry dw PorygonZDexEntry + dw AnnihilapeDexEntry + dw ScreamTailDexEntry + dw SandyShocksDexEntry + ; dw WiglettDexEntry + dw WugtrioDexEntry + ; dw ToedscoolDexEntry + ; dw ToedscruelDexEntry dw MissingNoDexEntry assert_table_length NUM_POKEMON_INDEXES @@ -1752,4 +1759,54 @@ PorygonZDexEntry: db 2,11 dw 750 text_far _PorygonZDexEntry - text_end \ No newline at end of file + text_end + +AnnihilapeDexEntry: + db "RAGEMONKEY@" + db 3,11 + dw 1230 + text_far _AnnihilapeDexEntry + text_end + +ScreamTailDexEntry: + db "PARADOX@" + db 3,11 + dw 180 + text_far _ScreamTailDexEntry + text_end + +SandyShocksDexEntry: + db "PARADOX@" + db 7,7 + dw 1320 + text_far _SandyShocksDexEntry + text_end + +; WiglettDexEntry: + ; db "GARDEN EEL@" + ; db 3,11 + ; dw 40 + ; text_far _WiglettDexEntry + ; text_end + +WugtrioDexEntry: + db "GARDEN EEL@" + db 3,11 + dw 120 + text_far _WugtrioDexEntry + text_end + +; ToedscoolDexEntry: + ; db "WOODEAR@" + ; db 2,11 + ; dw 730 + ; text_far _ToedscoolDexEntry + ; text_end + +; ToedscruelDexEntry: + ; db "WOODEAR@" + ; db 6,3 + ; dw 1280 + ; text_far _ToedscruelDexEntry + ; text_end + \ No newline at end of file diff --git a/data/pokemon/dex_order.asm b/data/pokemon/dex_order.asm index 2b3dd0b7..3895d7ba 100644 --- a/data/pokemon/dex_order.asm +++ b/data/pokemon/dex_order.asm @@ -222,15 +222,17 @@ PokedexOrder: db DEX_PORYGONZ ; db DEX_HAPPINY ; db DEX_MUNCHLAX - ; db DEX_ANNIHILAPE - ; db DEX_SCREAM_TAIL - ; db DEX_SANDY_SHOCKS + db DEX_ANNIHILAPE + db DEX_SCREAM_TAIL + db DEX_SANDY_SHOCKS ; db DEX_WIGLETT - ; db DEX_WUGTRIO + db DEX_WUGTRIO ; db DEX_TOEDSCOOL ; db DEX_TOEDSCRUEL ; db DEX_PERRSERKER ; db DEX_SIRFETCHD ; db DEX_MR_RIME + ; db DEX_MELTAN + ; db DEX_MELMETAL db DEX_MISSINGNO assert_table_length NUM_POKEMON_INDEXES diff --git a/data/pokemon/menu_icons.asm b/data/pokemon/menu_icons.asm index aca1592f..a747d393 100644 --- a/data/pokemon/menu_icons.asm +++ b/data/pokemon/menu_icons.asm @@ -63,7 +63,7 @@ MonPartyData: nybble ICON_QUADRUPED ; Arcanine nybble ICON_MON ; Mankey nybble ICON_MON ; Primeape - ; nybble ICON_MON ; Annihilape + nybble ICON_MON ; Annihilape nybble ICON_GRASS ; Oddish nybble ICON_GRASS ; Gloom nybble ICON_GRASS ; Vileplume @@ -94,7 +94,7 @@ MonPartyData: nybble ICON_MON ; Diglett nybble ICON_MON ; Dugtrio ; nybble ICON_WATER ; Wiglett - ; nybble ICON_WATER ; Wugtrio + nybble ICON_WATER ; Wugtrio nybble ICON_MON ; Crocky nybble ICON_QUADRUPED ; Kotora nybble ICON_QUADRUPED ; Gaotora @@ -217,11 +217,13 @@ MonPartyData: nybble ICON_SNAKE ; Dratini nybble ICON_SNAKE ; Dragonair nybble ICON_SNAKE ; Dragonite - ; nybble ICON_FAIRY ; Scream Tail - ; nybble ICON_BALL ; Sandy Shocks + nybble ICON_FAIRY ; Scream Tail + nybble ICON_BALL ; Sandy Shocks nybble ICON_BIRD ; Articuno nybble ICON_BIRD ; Zapdos nybble ICON_BIRD ; Moltres nybble ICON_MON ; Mewtwo nybble ICON_MON ; Mew + ; nybble ICON_BALL ; Meltan + ; nybble ICON_BALL ; Melmetal end_nybble_array NUM_POKEMON - 1 diff --git a/data/pokemon/names.asm b/data/pokemon/names.asm index cb8376c3..90ad37d1 100644 --- a/data/pokemon/names.asm +++ b/data/pokemon/names.asm @@ -222,16 +222,18 @@ MonsterNames:: db "PORYGON-Z@" ; db "HAPPINY@@@" ; db "MUNCHLAX@@" - ; db "ANNIHILAPE" - ; db "SCREAMTAIL" - ; db "SANDY SHOX" + db "ANNIHILAPE" + db "SCREAMTAIL" + db "SANDY SHOX" ; db "WIGLETT@@@" - ; db "WUGTRIO@@@" + db "WUGTRIO@@@" ; db "TOEDSCOOL@" ; db "TOEDSCRUEL" ; db "PERRSERKER" ; db "SIRFETCH'D" ; db "MR.RIME@@@" + ; db "MELTAN@@@@" + ; db "MELMETAL@@" db "MISSINGNO." assert_table_length NUM_POKEMON_INDEXES diff --git a/data/pokemon/new_dex_text.asm b/data/pokemon/new_dex_text.asm index 13c4d55c..a23078aa 100644 --- a/data/pokemon/new_dex_text.asm +++ b/data/pokemon/new_dex_text.asm @@ -727,6 +727,26 @@ _SandyShocksDexEntry:: next "like this over" next "10,000 years ago" dex + +_MeltanDexEntry:: + text "Typically living" + next "in groups, these" + next "#MON eat iron" + + page "particles that" + next "they find in" + next "the subsoil" + dex + +_MelmetalDexEntry:: + text "A #MON revered" + next "as a deity over" + next "3,000 years ago" + + page "for its ability" + next "to create pure" + next "iron from nothing" + dex _ArticunoGDexEntry:: text "From its eyes," diff --git a/data/pokemon/palettes.asm b/data/pokemon/palettes.asm index 063cff98..705d1e02 100644 --- a/data/pokemon/palettes.asm +++ b/data/pokemon/palettes.asm @@ -64,7 +64,7 @@ MonsterPalettes: db PAL_REDMON ; ARCANINE db PAL_BROWNMON ; MANKEY db PAL_BROWNMON ; PRIMEAPE - ; db PAL_GREYMON ; ANNIHILAPE + db PAL_GREYMON ; ANNIHILAPE db PAL_GREENMON ; ODDISH db PAL_REDMON ; GLOOM db PAL_REDMON ; VILEPLUME @@ -95,7 +95,7 @@ MonsterPalettes: db PAL_BROWNMON ; DIGLETT db PAL_BROWNMON ; DUGTRIO ; db PAL_PINKMON ; WIGLETT - ; db PAL_PINKMON ; WUGTRIO + db PAL_PINKMON ; WUGTRIO db PAL_GREENMON ; CROCKY db PAL_YELLOWMON ; KOTORA db PAL_YELLOWMON ; GAOTORA @@ -225,4 +225,6 @@ MonsterPalettes: db PAL_REDMON ; MOLTRES db PAL_MEWMON ; MEWTWO db PAL_MEWMON ; MEW + ; db PAL_YELLOWMON ; MELTAN + ; db PAL_YELLOWMON ; MELMETAL assert_table_length NUM_POKEMON diff --git a/data/pokemon/title_mons.asm b/data/pokemon/title_mons.asm index 6087a0e7..60542c92 100644 --- a/data/pokemon/title_mons.asm +++ b/data/pokemon/title_mons.asm @@ -7,12 +7,12 @@ TitleMons: db CROCKY db TRAMPEL db JAGG - db CHEEP + db RHYPERIOR db OMEGA db MIKON - db WEIRDUCK - db BLOTTLE + db KLEAVOR + db MAGNEZONE db MADAAMU db DEER db GYAOON - db GUARDIA + db ANNIHILAPE diff --git a/gfx/pics.asm b/gfx/pics.asm index 7145a4d9..86fe0812 100644 --- a/gfx/pics.asm +++ b/gfx/pics.asm @@ -516,5 +516,13 @@ MagnezonePicFront:: INCBIN "gfx/pokemon/front/magnezone.pic" MagnezonePicBack:: INCBIN "gfx/pokemon/back/magnezoneb.pic" PorygonZPicFront:: INCBIN "gfx/pokemon/front/porygonz.pic" PorygonZPicBack:: INCBIN "gfx/pokemon/back/porygonzb.pic" +AnnihilapePicFront:: INCBIN "gfx/pokemon/front/annihilape.pic" +AnnihilapePicBack:: INCBIN "gfx/pokemon/back/annihilapeb.pic" +ScreamTailPicFront:: INCBIN "gfx/pokemon/front/screamtail.pic" +ScreamTailPicBack:: INCBIN "gfx/pokemon/back/screamtailb.pic" +SandyShocksPicFront:: INCBIN "gfx/pokemon/front/sandyshocks.pic" +SandyShocksPicBack:: INCBIN "gfx/pokemon/back/sandyshocksb.pic" +WugtrioPicFront:: INCBIN "gfx/pokemon/front/wugtrio.pic" +WugtrioPicBack:: INCBIN "gfx/pokemon/back/wugtriob.pic" MissingNoPicFront:: INCBIN "gfx/pokemon/front/missingno.pic" MissingNoPicBack:: INCBIN "gfx/pokemon/back/missingnob.pic" \ No newline at end of file diff --git a/gfx/pokemon/back/annihilapeb.png b/gfx/pokemon/back/annihilapeb.png new file mode 100644 index 00000000..11b7a64f Binary files /dev/null and b/gfx/pokemon/back/annihilapeb.png differ diff --git a/gfx/pokemon/back/sandyshocksb.png b/gfx/pokemon/back/sandyshocksb.png new file mode 100644 index 00000000..2b776bba Binary files /dev/null and b/gfx/pokemon/back/sandyshocksb.png differ diff --git a/gfx/pokemon/back/screamtailb.png b/gfx/pokemon/back/screamtailb.png new file mode 100644 index 00000000..f8d0426e Binary files /dev/null and b/gfx/pokemon/back/screamtailb.png differ diff --git a/gfx/pokemon/back/wugtriob.png b/gfx/pokemon/back/wugtriob.png new file mode 100644 index 00000000..4e3cc579 Binary files /dev/null and b/gfx/pokemon/back/wugtriob.png differ diff --git a/gfx/pokemon/front/annihilape.png b/gfx/pokemon/front/annihilape.png new file mode 100644 index 00000000..8f5107db Binary files /dev/null and b/gfx/pokemon/front/annihilape.png differ diff --git a/gfx/pokemon/front/sandyshocks.png b/gfx/pokemon/front/sandyshocks.png new file mode 100644 index 00000000..73c21d1a Binary files /dev/null and b/gfx/pokemon/front/sandyshocks.png differ diff --git a/gfx/pokemon/front/screamtail.png b/gfx/pokemon/front/screamtail.png new file mode 100644 index 00000000..c921b1ed Binary files /dev/null and b/gfx/pokemon/front/screamtail.png differ diff --git a/gfx/pokemon/front/wugtrio.png b/gfx/pokemon/front/wugtrio.png new file mode 100644 index 00000000..ea450ced Binary files /dev/null and b/gfx/pokemon/front/wugtrio.png differ