ref: 122d715484b79aba71d79caf148bac4a2ec441a5
parent: c57c93d2b2fb06cadafefda37c0974ba1ec9e6c0
parent: 43e0e40d5a4af369661fd6c7aa44d7265b9f6e59
author: Rangi <35663410+Rangi42@users.noreply.github.com>
date: Mon Jul 6 07:52:24 EDT 2020
Merge pull request #261 from Rangi42/master Port pokecrystal's base data and tmhm structure
--- a/constants.asm
+++ b/constants.asm
@@ -16,12 +16,12 @@
INCLUDE "constants/pokedex_constants.asm"
INCLUDE "constants/pokemon_data_constants.asm"
INCLUDE "constants/trainer_constants.asm"
-INCLUDE "constants/item_constants.asm"
INCLUDE "constants/type_constants.asm"
INCLUDE "constants/move_constants.asm"
INCLUDE "constants/move_animation_constants.asm"
INCLUDE "constants/move_effect_constants.asm"
INCLUDE "constants/battle_constants.asm"
+INCLUDE "constants/item_constants.asm"
INCLUDE "constants/icon_constants.asm"
INCLUDE "constants/sprite_constants.asm"
INCLUDE "constants/sprite_data_constants.asm"
--- a/constants/item_constants.asm
+++ b/constants/item_constants.asm
@@ -102,58 +102,115 @@
const_value = $C4
- const HM_01 ; $C4
- const HM_02 ; $C5
- const HM_03 ; $C6
- const HM_04 ; $C7
- const HM_05 ; $C8
- const TM_01 ; $C9
- const TM_02 ; $CA
- const TM_03 ; $CB
- const TM_04 ; $CC
- const TM_05 ; $CD
- const TM_06 ; $CE
- const TM_07 ; $CF
- const TM_08 ; $D0
- const TM_09 ; $D1
- const TM_10 ; $D2
- const TM_11 ; $D3
- const TM_12 ; $D4
- const TM_13 ; $D5
- const TM_14 ; $D6
- const TM_15 ; $D7
- const TM_16 ; $D8
- const TM_17 ; $D9
- const TM_18 ; $DA
- const TM_19 ; $DB
- const TM_20 ; $DC
- const TM_21 ; $DD
- const TM_22 ; $DE
- const TM_23 ; $DF
- const TM_24 ; $E0
- const TM_25 ; $E1
- const TM_26 ; $E2
- const TM_27 ; $E3
- const TM_28 ; $E4
- const TM_29 ; $E5
- const TM_30 ; $E6
- const TM_31 ; $E7
- const TM_32 ; $E8
- const TM_33 ; $E9
- const TM_34 ; $EA
- const TM_35 ; $EB
- const TM_36 ; $EC
- const TM_37 ; $ED
- const TM_38 ; $EE
- const TM_39 ; $EF
- const TM_40 ; $F0
- const TM_41 ; $F1
- const TM_42 ; $F2
- const TM_43 ; $F3
- const TM_44 ; $F4
- const TM_45 ; $F5
- const TM_46 ; $F6
- const TM_47 ; $F7
- const TM_48 ; $F8
- const TM_49 ; $F9
- const TM_50 ; $FA
+; HMs are defined before TMs, so the actual number of TM definitions
+; is not yet available. The TM quantity is hard-coded here and must
+; match the actual number below.
+NUM_TMS EQU 50
+
+add_hm: MACRO
+; Defines three constants:
+; - HM_\1: the item id, starting at $C4
+; - \1_TMNUM: the learnable TM/HM flag, starting at 51
+; - HM##_MOVE: alias for the move id, equal to the value of \1
+; The first usage also defines HM01 as the first HM item id.
+IF !DEF(HM01)
+HM01 EQU const_value
+ enum_start NUM_TMS + 1
+ENDC
+HM_VALUE EQU __enum__ - NUM_TMS
+IF HM_VALUE < 10
+MOVE_FOR_HM EQUS "HM0{d:HM_VALUE}_MOVE"
+ELSE
+MOVE_FOR_HM EQUS "HM{d:HM_VALUE}_MOVE"
+ENDC
+MOVE_FOR_HM = \1
+PURGE MOVE_FOR_HM
+PURGE HM_VALUE
+ const HM_\1
+ enum \1_TMNUM
+ENDM
+
+ add_hm CUT ; $C4
+ add_hm FLY ; $C5
+ add_hm SURF ; $C6
+ add_hm STRENGTH ; $C7
+ add_hm FLASH ; $C8
+NUM_HMS EQU const_value - HM01
+
+add_tm: MACRO
+; Defines three constants:
+; - TM_\1: the item id, starting at $C9
+; - \1_TMNUM: the learnable TM/HM flag, starting at 1
+; - TM##_MOVE: alias for the move id, equal to the value of \1
+; The first usage also defines TM01 as the first TM item id.
+IF !DEF(TM01)
+TM01 EQU const_value
+ enum_start 1
+ENDC
+IF __enum__ < 10
+MOVE_FOR_TM EQUS "TM0{d:__enum__}_MOVE"
+ELSE
+MOVE_FOR_TM EQUS "TM{d:__enum__}_MOVE"
+ENDC
+MOVE_FOR_TM = \1
+PURGE MOVE_FOR_TM
+ const TM_\1
+ enum \1_TMNUM
+ENDM
+
+ add_tm MEGA_PUNCH ; $C9
+ add_tm RAZOR_WIND ; $CA
+ add_tm SWORDS_DANCE ; $CB
+ add_tm WHIRLWIND ; $CC
+ add_tm MEGA_KICK ; $CD
+ add_tm TOXIC ; $CE
+ add_tm HORN_DRILL ; $CF
+ add_tm BODY_SLAM ; $D0
+ add_tm TAKE_DOWN ; $D1
+ add_tm DOUBLE_EDGE ; $D2
+ add_tm BUBBLEBEAM ; $D3
+ add_tm WATER_GUN ; $D4
+ add_tm ICE_BEAM ; $D5
+ add_tm BLIZZARD ; $D6
+ add_tm HYPER_BEAM ; $D7
+ add_tm PAY_DAY ; $D8
+ add_tm SUBMISSION ; $D9
+ add_tm COUNTER ; $DA
+ add_tm SEISMIC_TOSS ; $DB
+ add_tm RAGE ; $DC
+ add_tm MEGA_DRAIN ; $DD
+ add_tm SOLARBEAM ; $DE
+ add_tm DRAGON_RAGE ; $DF
+ add_tm THUNDERBOLT ; $E0
+ add_tm THUNDER ; $E1
+ add_tm EARTHQUAKE ; $E2
+ add_tm FISSURE ; $E3
+ add_tm DIG ; $E4
+ add_tm PSYCHIC_M ; $E5
+ add_tm TELEPORT ; $E6
+ add_tm MIMIC ; $E7
+ add_tm DOUBLE_TEAM ; $E8
+ add_tm REFLECT ; $E9
+ add_tm BIDE ; $EA
+ add_tm METRONOME ; $EB
+ add_tm SELFDESTRUCT ; $EC
+ add_tm EGG_BOMB ; $ED
+ add_tm FIRE_BLAST ; $EE
+ add_tm SWIFT ; $EF
+ add_tm SKULL_BASH ; $F0
+ add_tm SOFTBOILED ; $F1
+ add_tm DREAM_EATER ; $F2
+ add_tm SKY_ATTACK ; $F3
+ add_tm REST ; $F4
+ add_tm THUNDER_WAVE ; $F5
+ add_tm PSYWAVE ; $F6
+ add_tm EXPLOSION ; $F7
+ add_tm ROCK_SLIDE ; $F8
+ add_tm TRI_ATTACK ; $F9
+ add_tm SUBSTITUTE ; $FA
+assert NUM_TMS == const_value - TM01, "NUM_TMS ({d:NUM_TMS}) does not match the number of add_tm definitions"
+
+; 50 TMs + 5 HMs = 55 learnable TM/HM flags per Pokémon.
+; These fit in 7 bytes, with one unused bit left over.
+ enum_start NUM_TMS + NUM_HMS + 1
+ enum UNUSED_TMNUM
--- a/data/events/prizes.asm
+++ b/data/events/prizes.asm
@@ -60,9 +60,9 @@
db "@"
PrizeMenuTMsEntries:
- db TM_23
- db TM_15
- db TM_50
+ db TM_DRAGON_RAGE
+ db TM_HYPER_BEAM
+ db TM_SUBSTITUTE
db "@"
PrizeMenuTMsCost:
--- a/data/items/marts.asm
+++ b/data/items/marts.asm
@@ -30,7 +30,7 @@
; Celadon Dept. Store 2F (2)
CeladonMart2Clerk2Text::
- script_mart TM_32, TM_33, TM_02, TM_07, TM_37, TM_01, TM_05, TM_09, TM_17
+ script_mart TM_DOUBLE_TEAM, TM_REFLECT, TM_RAZOR_WIND, TM_HORN_DRILL, TM_EGG_BOMB, TM_MEGA_PUNCH, TM_MEGA_KICK, TM_TAKE_DOWN, TM_SUBMISSION
; Celadon Dept. Store 4F
CeladonMart4ClerkText::
--- a/data/items/tm_prices.asm
+++ b/data/items/tm_prices.asm
@@ -1,27 +1,27 @@
TechnicalMachinePrices:
; In thousands (nybbles).
- dn 3, 2 ; TM_01, TM_02
- dn 2, 1 ; TM_03, TM_04
- dn 3, 4 ; TM_05, TM_06
- dn 2, 4 ; TM_07, TM_08
- dn 3, 4 ; TM_09, TM_10
- dn 2, 1 ; TM_11, TM_12
- dn 4, 5 ; TM_13, TM_14
- dn 5, 5 ; TM_15, TM_16
- dn 3, 2 ; TM_17, TM_18
- dn 3, 2 ; TM_19, TM_20
- dn 5, 5 ; TM_21, TM_22
- dn 5, 2 ; TM_23, TM_24
- dn 5, 4 ; TM_25, TM_26
- dn 5, 2 ; TM_27, TM_28
- dn 4, 1 ; TM_29, TM_30
- dn 2, 1 ; TM_31, TM_32
- dn 1, 2 ; TM_33, TM_34
- dn 4, 2 ; TM_35, TM_36
- dn 2, 5 ; TM_37, TM_38
- dn 2, 4 ; TM_39, TM_40
- dn 2, 2 ; TM_41, TM_42
- dn 5, 2 ; TM_43, TM_44
- dn 2, 4 ; TM_45, TM_46
- dn 3, 4 ; TM_47, TM_48
- dn 4, 2 ; TM_49, TM_50
+ dn 3, 2 ; TM01, TM02
+ dn 2, 1 ; TM03, TM04
+ dn 3, 4 ; TM05, TM06
+ dn 2, 4 ; TM07, TM08
+ dn 3, 4 ; TM09, TM10
+ dn 2, 1 ; TM11, TM12
+ dn 4, 5 ; TM13, TM14
+ dn 5, 5 ; TM15, TM16
+ dn 3, 2 ; TM17, TM18
+ dn 3, 2 ; TM19, TM20
+ dn 5, 5 ; TM21, TM22
+ dn 5, 2 ; TM23, TM24
+ dn 5, 4 ; TM25, TM26
+ dn 5, 2 ; TM27, TM28
+ dn 4, 1 ; TM29, TM30
+ dn 2, 1 ; TM31, TM32
+ dn 1, 2 ; TM33, TM34
+ dn 4, 2 ; TM35, TM36
+ dn 2, 5 ; TM37, TM38
+ dn 2, 4 ; TM39, TM40
+ dn 2, 2 ; TM41, TM42
+ dn 5, 2 ; TM43, TM44
+ dn 2, 4 ; TM45, TM46
+ dn 3, 4 ; TM47, TM48
+ dn 4, 2 ; TM49, TM50
--- a/data/maps/objects/MtMoon1F.asm
+++ b/data/maps/objects/MtMoon1F.asm
@@ -24,7 +24,7 @@
object SPRITE_BALL, 35, 31, STAY, NONE, 10, RARE_CANDY
object SPRITE_BALL, 36, 23, STAY, NONE, 11, ESCAPE_ROPE
object SPRITE_BALL, 20, 33, STAY, NONE, 12, POTION
- object SPRITE_BALL, 5, 32, STAY, NONE, 13, TM_12
+ object SPRITE_BALL, 5, 32, STAY, NONE, 13, TM_WATER_GUN
; warp-to
warp_to 14, 35, MT_MOON_1F_WIDTH
--- a/data/maps/objects/MtMoonB2F.asm
+++ b/data/maps/objects/MtMoonB2F.asm
@@ -18,7 +18,7 @@
object SPRITE_OMANYTE, 12, 6, STAY, NONE, 6 ; person
object SPRITE_OMANYTE, 13, 6, STAY, NONE, 7 ; person
object SPRITE_BALL, 25, 21, STAY, NONE, 8, HP_UP
- object SPRITE_BALL, 29, 5, STAY, NONE, 9, TM_01
+ object SPRITE_BALL, 29, 5, STAY, NONE, 9, TM_MEGA_PUNCH
; warp-to
warp_to 25, 9, MT_MOON_B2F_WIDTH ; MT_MOON_B1F
--- a/data/maps/objects/PokemonMansionB1F.asm
+++ b/data/maps/objects/PokemonMansionB1F.asm
@@ -11,8 +11,8 @@
object SPRITE_OAK_AIDE, 27, 11, STAY, DOWN, 2, OPP_SCIENTIST, 13
object SPRITE_BALL, 10, 2, STAY, NONE, 3, RARE_CANDY
object SPRITE_BALL, 1, 22, STAY, NONE, 4, FULL_RESTORE
- object SPRITE_BALL, 19, 25, STAY, NONE, 5, TM_14
- object SPRITE_BALL, 5, 4, STAY, NONE, 6, TM_22
+ object SPRITE_BALL, 19, 25, STAY, NONE, 5, TM_BLIZZARD
+ object SPRITE_BALL, 5, 4, STAY, NONE, 6, TM_SOLARBEAM
object SPRITE_BOOK_MAP_DEX, 16, 20, STAY, NONE, 7 ; person
object SPRITE_BALL, 5, 13, STAY, NONE, 8, SECRET_KEY
--- a/data/maps/objects/PowerPlant.asm
+++ b/data/maps/objects/PowerPlant.asm
@@ -21,8 +21,8 @@
object SPRITE_BALL, 7, 25, STAY, NONE, 10, CARBOS
object SPRITE_BALL, 28, 3, STAY, NONE, 11, HP_UP
object SPRITE_BALL, 34, 3, STAY, NONE, 12, RARE_CANDY
- object SPRITE_BALL, 26, 32, STAY, NONE, 13, TM_25
- object SPRITE_BALL, 20, 32, STAY, NONE, 14, TM_33
+ object SPRITE_BALL, 26, 32, STAY, NONE, 13, TM_THUNDER
+ object SPRITE_BALL, 20, 32, STAY, NONE, 14, TM_REFLECT
; warp-to
warp_to 4, 35, POWER_PLANT_WIDTH
--- a/data/maps/objects/RocketHideoutB2F.asm
+++ b/data/maps/objects/RocketHideoutB2F.asm
@@ -14,7 +14,7 @@
object SPRITE_ROCKET, 20, 12, STAY, DOWN, 1, OPP_ROCKET, 13
object SPRITE_BALL, 1, 11, STAY, NONE, 2, MOON_STONE
object SPRITE_BALL, 16, 8, STAY, NONE, 3, NUGGET
- object SPRITE_BALL, 6, 12, STAY, NONE, 4, TM_07
+ object SPRITE_BALL, 6, 12, STAY, NONE, 4, TM_HORN_DRILL
object SPRITE_BALL, 3, 21, STAY, NONE, 5, SUPER_POTION
; warp-to
--- a/data/maps/objects/RocketHideoutB3F.asm
+++ b/data/maps/objects/RocketHideoutB3F.asm
@@ -10,7 +10,7 @@
db 4 ; objects
object SPRITE_ROCKET, 10, 22, STAY, RIGHT, 1, OPP_ROCKET, 14
object SPRITE_ROCKET, 26, 12, STAY, UP, 2, OPP_ROCKET, 15
- object SPRITE_BALL, 26, 17, STAY, NONE, 3, TM_10
+ object SPRITE_BALL, 26, 17, STAY, NONE, 3, TM_DOUBLE_EDGE
object SPRITE_BALL, 20, 14, STAY, NONE, 4, RARE_CANDY
; warp-to
--- a/data/maps/objects/RocketHideoutB4F.asm
+++ b/data/maps/objects/RocketHideoutB4F.asm
@@ -14,7 +14,7 @@
object SPRITE_ROCKET, 26, 12, STAY, DOWN, 3, OPP_ROCKET, 17
object SPRITE_ROCKET, 11, 2, STAY, DOWN, 4, OPP_ROCKET, 18
object SPRITE_BALL, 10, 12, STAY, NONE, 5, HP_UP
- object SPRITE_BALL, 9, 4, STAY, NONE, 6, TM_02
+ object SPRITE_BALL, 9, 4, STAY, NONE, 6, TM_RAZOR_WIND
object SPRITE_BALL, 12, 20, STAY, NONE, 7, IRON
object SPRITE_BALL, 25, 2, STAY, NONE, 8, SILPH_SCOPE
object SPRITE_BALL, 10, 2, STAY, NONE, 9, LIFT_KEY
--- a/data/maps/objects/Route12.asm
+++ b/data/maps/objects/Route12.asm
@@ -20,7 +20,7 @@
object SPRITE_FISHER2, 12, 40, STAY, LEFT, 6, OPP_FISHER, 5
object SPRITE_FISHER2, 9, 52, STAY, RIGHT, 7, OPP_FISHER, 6
object SPRITE_FISHER2, 6, 87, STAY, DOWN, 8, OPP_FISHER, 11
- object SPRITE_BALL, 14, 35, STAY, NONE, 9, TM_16
+ object SPRITE_BALL, 14, 35, STAY, NONE, 9, TM_PAY_DAY
object SPRITE_BALL, 5, 89, STAY, NONE, 10, IRON
; warp-to
--- a/data/maps/objects/Route15.asm
+++ b/data/maps/objects/Route15.asm
@@ -21,7 +21,7 @@
object SPRITE_BIKER, 46, 10, STAY, DOWN, 8, OPP_BIKER, 4
object SPRITE_LASS, 37, 5, STAY, RIGHT, 9, OPP_JR_TRAINER_F, 22
object SPRITE_LASS, 18, 13, STAY, UP, 10, OPP_JR_TRAINER_F, 23
- object SPRITE_BALL, 18, 5, STAY, NONE, 11, TM_20
+ object SPRITE_BALL, 18, 5, STAY, NONE, 11, TM_RAGE
; warp-to
warp_to 7, 8, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
--- a/data/maps/objects/Route24.asm
+++ b/data/maps/objects/Route24.asm
@@ -13,4 +13,4 @@
object SPRITE_BUG_CATCHER, 11, 25, STAY, LEFT, 5, OPP_YOUNGSTER, 4
object SPRITE_LASS, 10, 28, STAY, RIGHT, 6, OPP_LASS, 8
object SPRITE_BUG_CATCHER, 11, 31, STAY, LEFT, 7, OPP_BUG_CATCHER, 9
- object SPRITE_BALL, 10, 5, STAY, NONE, 8, TM_45
+ object SPRITE_BALL, 10, 5, STAY, NONE, 8, TM_THUNDER_WAVE
--- a/data/maps/objects/Route25.asm
+++ b/data/maps/objects/Route25.asm
@@ -17,7 +17,7 @@
object SPRITE_HIKER, 8, 4, STAY, RIGHT, 7, OPP_HIKER, 2
object SPRITE_HIKER, 23, 9, STAY, UP, 8, OPP_HIKER, 3
object SPRITE_HIKER, 13, 7, STAY, RIGHT, 9, OPP_HIKER, 4
- object SPRITE_BALL, 22, 2, STAY, NONE, 10, TM_19
+ object SPRITE_BALL, 22, 2, STAY, NONE, 10, TM_SEISMIC_TOSS
; warp-to
warp_to 45, 3, ROUTE_25_WIDTH ; BILLS_HOUSE
--- a/data/maps/objects/Route4.asm
+++ b/data/maps/objects/Route4.asm
@@ -14,7 +14,7 @@
db 3 ; objects
object SPRITE_LASS, 9, 8, WALK, 0, 1 ; person
object SPRITE_LASS, 63, 3, STAY, RIGHT, 2, OPP_LASS, 4
- object SPRITE_BALL, 57, 3, STAY, NONE, 3, TM_04
+ object SPRITE_BALL, 57, 3, STAY, NONE, 3, TM_WHIRLWIND
; warp-to
warp_to 11, 5, ROUTE_4_WIDTH ; MT_MOON_POKECENTER
--- a/data/maps/objects/Route9.asm
+++ b/data/maps/objects/Route9.asm
@@ -16,4 +16,4 @@
object SPRITE_BUG_CATCHER, 22, 2, STAY, DOWN, 7, OPP_BUG_CATCHER, 13
object SPRITE_HIKER, 45, 15, STAY, RIGHT, 8, OPP_HIKER, 5
object SPRITE_BUG_CATCHER, 40, 8, STAY, RIGHT, 9, OPP_BUG_CATCHER, 14
- object SPRITE_BALL, 10, 15, STAY, NONE, 10, TM_30
+ object SPRITE_BALL, 10, 15, STAY, NONE, 10, TM_TELEPORT
--- a/data/maps/objects/SSAnne1FRooms.asm
+++ b/data/maps/objects/SSAnne1FRooms.asm
@@ -21,7 +21,7 @@
object SPRITE_LITTLE_GIRL, 2, 11, STAY, DOWN, 7 ; person
object SPRITE_CLEFAIRY, 3, 11, STAY, DOWN, 8 ; person
object SPRITE_GIRL, 10, 13, STAY, RIGHT, 9 ; person
- object SPRITE_BALL, 12, 15, STAY, NONE, 10, TM_08
+ object SPRITE_BALL, 12, 15, STAY, NONE, 10, TM_BODY_SLAM
object SPRITE_GENTLEMAN, 21, 13, WALK, 2, 11 ; person
; warp-to
--- a/data/maps/objects/SSAnneB1FRooms.asm
+++ b/data/maps/objects/SSAnneB1FRooms.asm
@@ -25,7 +25,7 @@
object SPRITE_BLACK_HAIR_BOY_2, 10, 13, STAY, RIGHT, 7 ; person
object SPRITE_SLOWBRO, 11, 12, STAY, NONE, 8 ; person
object SPRITE_BALL, 20, 2, STAY, NONE, 9, ETHER
- object SPRITE_BALL, 10, 2, STAY, NONE, 10, TM_44
+ object SPRITE_BALL, 10, 2, STAY, NONE, 10, TM_REST
object SPRITE_BALL, 12, 11, STAY, NONE, 11, MAX_POTION
; warp-to
--- a/data/maps/objects/SafariZoneEast.asm
+++ b/data/maps/objects/SafariZoneEast.asm
@@ -17,7 +17,7 @@
object SPRITE_BALL, 21, 10, STAY, NONE, 1, FULL_RESTORE
object SPRITE_BALL, 3, 7, STAY, NONE, 2, MAX_POTION
object SPRITE_BALL, 20, 13, STAY, NONE, 3, CARBOS
- object SPRITE_BALL, 15, 12, STAY, NONE, 4, TM_37
+ object SPRITE_BALL, 15, 12, STAY, NONE, 4, TM_EGG_BOMB
; warp-to
warp_to 0, 4, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_NORTH
--- a/data/maps/objects/SafariZoneNorth.asm
+++ b/data/maps/objects/SafariZoneNorth.asm
@@ -21,7 +21,7 @@
db 2 ; objects
object SPRITE_BALL, 25, 1, STAY, NONE, 1, PROTEIN
- object SPRITE_BALL, 19, 7, STAY, NONE, 2, TM_40
+ object SPRITE_BALL, 19, 7, STAY, NONE, 2, TM_SKULL_BASH
; warp-to
warp_to 2, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
--- a/data/maps/objects/SafariZoneWest.asm
+++ b/data/maps/objects/SafariZoneWest.asm
@@ -19,7 +19,7 @@
db 4 ; objects
object SPRITE_BALL, 8, 20, STAY, NONE, 1, MAX_POTION
- object SPRITE_BALL, 9, 7, STAY, NONE, 2, TM_32
+ object SPRITE_BALL, 9, 7, STAY, NONE, 2, TM_DOUBLE_TEAM
object SPRITE_BALL, 18, 18, STAY, NONE, 3, MAX_REVIVE
object SPRITE_BALL, 19, 7, STAY, NONE, 4, GOLD_TEETH
--- a/data/maps/objects/SilphCo10F.asm
+++ b/data/maps/objects/SilphCo10F.asm
@@ -15,7 +15,7 @@
object SPRITE_ROCKET, 1, 9, STAY, RIGHT, 1, OPP_ROCKET, 39
object SPRITE_OAK_AIDE, 10, 2, STAY, LEFT, 2, OPP_SCIENTIST, 11
object SPRITE_ERIKA, 9, 15, WALK, 0, 3 ; person
- object SPRITE_BALL, 2, 12, STAY, NONE, 4, TM_26
+ object SPRITE_BALL, 2, 12, STAY, NONE, 4, TM_EARTHQUAKE
object SPRITE_BALL, 4, 14, STAY, NONE, 5, RARE_CANDY
object SPRITE_BALL, 5, 11, STAY, NONE, 6, CARBOS
--- a/data/maps/objects/SilphCo5F.asm
+++ b/data/maps/objects/SilphCo5F.asm
@@ -18,7 +18,7 @@
object SPRITE_OAK_AIDE, 8, 3, STAY, RIGHT, 3, OPP_SCIENTIST, 6
object SPRITE_ROCKER, 18, 10, STAY, UP, 4, OPP_JUGGLER, 1
object SPRITE_ROCKET, 28, 4, STAY, UP, 5, OPP_ROCKET, 29
- object SPRITE_BALL, 2, 13, STAY, NONE, 6, TM_09
+ object SPRITE_BALL, 2, 13, STAY, NONE, 6, TM_TAKE_DOWN
object SPRITE_BALL, 4, 6, STAY, NONE, 7, PROTEIN
object SPRITE_BALL, 21, 16, STAY, NONE, 8, CARD_KEY
object SPRITE_CLIPBOARD, 22, 12, STAY, NONE, 9 ; person
--- a/data/maps/objects/SilphCo7F.asm
+++ b/data/maps/objects/SilphCo7F.asm
@@ -22,7 +22,7 @@
object SPRITE_ROCKET, 19, 14, STAY, RIGHT, 8, OPP_ROCKET, 34
object SPRITE_BLUE, 3, 7, STAY, UP, 9 ; person
object SPRITE_BALL, 1, 9, STAY, NONE, 10, CALCIUM
- object SPRITE_BALL, 24, 11, STAY, NONE, 11, TM_03
+ object SPRITE_BALL, 24, 11, STAY, NONE, 11, TM_SWORDS_DANCE
; warp-to
warp_to 16, 0, SILPH_CO_7F_WIDTH ; SILPH_CO_8F
--- a/data/maps/objects/VictoryRoad1F.asm
+++ b/data/maps/objects/VictoryRoad1F.asm
@@ -11,7 +11,7 @@
db 7 ; objects
object SPRITE_LASS, 7, 5, STAY, RIGHT, 1, OPP_COOLTRAINER_F, 5
object SPRITE_BLACK_HAIR_BOY_1, 3, 2, STAY, DOWN, 2, OPP_COOLTRAINER_M, 5
- object SPRITE_BALL, 11, 0, STAY, NONE, 3, TM_43
+ object SPRITE_BALL, 11, 0, STAY, NONE, 3, TM_SKY_ATTACK
object SPRITE_BALL, 9, 2, STAY, NONE, 4, RARE_CANDY
object SPRITE_BOULDER, 5, 15, STAY, BOULDER_MOVEMENT_BYTE_2, 5 ; person
object SPRITE_BOULDER, 14, 2, STAY, BOULDER_MOVEMENT_BYTE_2, 6 ; person
--- a/data/maps/objects/VictoryRoad2F.asm
+++ b/data/maps/objects/VictoryRoad2F.asm
@@ -19,9 +19,9 @@
object SPRITE_BLACK_HAIR_BOY_2, 4, 2, STAY, DOWN, 4, OPP_POKEMANIAC, 6
object SPRITE_BLACK_HAIR_BOY_2, 26, 3, STAY, LEFT, 5, OPP_JUGGLER, 5
object SPRITE_BIRD, 11, 5, STAY, UP, 6, MOLTRES, 50
- object SPRITE_BALL, 27, 5, STAY, NONE, 7, TM_17
+ object SPRITE_BALL, 27, 5, STAY, NONE, 7, TM_SUBMISSION
object SPRITE_BALL, 18, 9, STAY, NONE, 8, FULL_HEAL
- object SPRITE_BALL, 9, 11, STAY, NONE, 9, TM_05
+ object SPRITE_BALL, 9, 11, STAY, NONE, 9, TM_MEGA_KICK
object SPRITE_BALL, 11, 0, STAY, NONE, 10, GUARD_SPEC
object SPRITE_BOULDER, 4, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 11 ; person
object SPRITE_BOULDER, 5, 5, STAY, BOULDER_MOVEMENT_BYTE_2, 12 ; person
--- a/data/maps/objects/VictoryRoad3F.asm
+++ b/data/maps/objects/VictoryRoad3F.asm
@@ -15,7 +15,7 @@
object SPRITE_BLACK_HAIR_BOY_1, 6, 14, STAY, LEFT, 3, OPP_COOLTRAINER_M, 3
object SPRITE_LASS, 13, 3, STAY, RIGHT, 4, OPP_COOLTRAINER_F, 3
object SPRITE_BALL, 26, 5, STAY, NONE, 5, MAX_REVIVE
- object SPRITE_BALL, 7, 7, STAY, NONE, 6, TM_47
+ object SPRITE_BALL, 7, 7, STAY, NONE, 6, TM_EXPLOSION
object SPRITE_BOULDER, 22, 3, STAY, BOULDER_MOVEMENT_BYTE_2, 7 ; person
object SPRITE_BOULDER, 13, 12, STAY, BOULDER_MOVEMENT_BYTE_2, 8 ; person
object SPRITE_BOULDER, 24, 10, STAY, BOULDER_MOVEMENT_BYTE_2, 9 ; person
--- a/data/moves/tmhm_moves.asm
+++ b/data/moves/tmhm_moves.asm
@@ -1,56 +1,59 @@
+; The add_hm and add_tm macros in constants/item_constants.asm simultaneously
+; define constants for the item IDs and for the corresponding move values.
+
TechnicalMachines:
- db MEGA_PUNCH
- db RAZOR_WIND
- db SWORDS_DANCE
- db WHIRLWIND
- db MEGA_KICK
- db TOXIC
- db HORN_DRILL
- db BODY_SLAM
- db TAKE_DOWN
- db DOUBLE_EDGE
- db BUBBLEBEAM
- db WATER_GUN
- db ICE_BEAM
- db BLIZZARD
- db HYPER_BEAM
- db PAY_DAY
- db SUBMISSION
- db COUNTER
- db SEISMIC_TOSS
- db RAGE
- db MEGA_DRAIN
- db SOLARBEAM
- db DRAGON_RAGE
- db THUNDERBOLT
- db THUNDER
- db EARTHQUAKE
- db FISSURE
- db DIG
- db PSYCHIC_M
- db TELEPORT
- db MIMIC
- db DOUBLE_TEAM
- db REFLECT
- db BIDE
- db METRONOME
- db SELFDESTRUCT
- db EGG_BOMB
- db FIRE_BLAST
- db SWIFT
- db SKULL_BASH
- db SOFTBOILED
- db DREAM_EATER
- db SKY_ATTACK
- db REST
- db THUNDER_WAVE
- db PSYWAVE
- db EXPLOSION
- db ROCK_SLIDE
- db TRI_ATTACK
- db SUBSTITUTE
- db CUT
- db FLY
- db SURF
- db STRENGTH
- db FLASH
+ db TM01_MOVE
+ db TM02_MOVE
+ db TM03_MOVE
+ db TM04_MOVE
+ db TM05_MOVE
+ db TM06_MOVE
+ db TM07_MOVE
+ db TM08_MOVE
+ db TM09_MOVE
+ db TM10_MOVE
+ db TM11_MOVE
+ db TM12_MOVE
+ db TM13_MOVE
+ db TM14_MOVE
+ db TM15_MOVE
+ db TM16_MOVE
+ db TM17_MOVE
+ db TM18_MOVE
+ db TM19_MOVE
+ db TM20_MOVE
+ db TM21_MOVE
+ db TM22_MOVE
+ db TM23_MOVE
+ db TM24_MOVE
+ db TM25_MOVE
+ db TM26_MOVE
+ db TM27_MOVE
+ db TM28_MOVE
+ db TM29_MOVE
+ db TM30_MOVE
+ db TM31_MOVE
+ db TM32_MOVE
+ db TM33_MOVE
+ db TM34_MOVE
+ db TM35_MOVE
+ db TM36_MOVE
+ db TM37_MOVE
+ db TM38_MOVE
+ db TM39_MOVE
+ db TM40_MOVE
+ db TM41_MOVE
+ db TM42_MOVE
+ db TM43_MOVE
+ db TM44_MOVE
+ db TM45_MOVE
+ db TM46_MOVE
+ db TM47_MOVE
+ db TM48_MOVE
+ db TM49_MOVE
+ db TM50_MOVE
+ db HM01_MOVE
+ db HM02_MOVE
+ db HM03_MOVE
+ db HM04_MOVE
+ db HM05_MOVE
--- a/data/pokemon/base_stats/abra.asm
+++ b/data/pokemon/base_stats/abra.asm
@@ -1,28 +1,24 @@
-db DEX_ABRA ; pokedex id
-db 25 ; base hp
-db 20 ; base attack
-db 15 ; base defense
-db 90 ; base speed
-db 105 ; base special
-db PSYCHIC ; species type 1
-db PSYCHIC ; species type 2
-db 200 ; catch rate
-db 73 ; base exp yield
-INCBIN "gfx/pokemon/front/abra.pic",0,1 ; 55, sprite dimensions
-dw AbraPicFront
-dw AbraPicBack
-; attacks known at lvl 0
-db TELEPORT
-db 0
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 29,30,31,32
- tmlearn 33,34,35,40
- tmlearn 44,45,46
- tmlearn 49,50,55
-db 0 ; padding
+ db DEX_ABRA ; pokedex id
+
+ db 25, 20, 15, 90, 105
+ ; hp atk def spd spc
+
+ db PSYCHIC, PSYCHIC ; type
+ db 200 ; catch rate
+ db 73 ; base exp
+
+ INCBIN "gfx/pokemon/front/abra.pic", 0, 1 ; sprite dimensions
+ dw AbraPicFront, AbraPicBack
+
+ db TELEPORT, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ PSYCHIC_M, TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, METRONOME, SKULL_BASH, REST, THUNDER_WAVE, \
+ PSYWAVE, TRI_ATTACK, SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/aerodactyl.asm
+++ b/data/pokemon/base_stats/aerodactyl.asm
@@ -1,28 +1,23 @@
-db DEX_AERODACTYL ; pokedex id
-db 80 ; base hp
-db 105 ; base attack
-db 65 ; base defense
-db 130 ; base speed
-db 60 ; base special
-db ROCK ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 202 ; base exp yield
-INCBIN "gfx/pokemon/front/aerodactyl.pic",0,1 ; 77, sprite dimensions
-dw AerodactylPicFront
-dw AerodactylPicBack
-; attacks known at lvl 0
-db WING_ATTACK
-db AGILITY
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,15
- tmlearn 20,23
- tmlearn 31,32
- tmlearn 33,34,38,39
- tmlearn 43,44
- tmlearn 50,52
-db 0 ; padding
+ db DEX_AERODACTYL ; pokedex id
+
+ db 80, 105, 65, 130, 60
+ ; hp atk def spd spc
+
+ db ROCK, FLYING ; type
+ db 45 ; catch rate
+ db 202 ; base exp
+
+ INCBIN "gfx/pokemon/front/aerodactyl.pic", 0, 1 ; sprite dimensions
+ dw AerodactylPicFront, AerodactylPicBack
+
+ db WING_ATTACK, AGILITY, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, DRAGON_RAGE, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, FIRE_BLAST, SWIFT, SKY_ATTACK, \
+ REST, SUBSTITUTE, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/alakazam.asm
+++ b/data/pokemon/base_stats/alakazam.asm
@@ -1,28 +1,25 @@
-db DEX_ALAKAZAM ; pokedex id
-db 55 ; base hp
-db 50 ; base attack
-db 45 ; base defense
-db 120 ; base speed
-db 135 ; base special
-db PSYCHIC ; species type 1
-db PSYCHIC ; species type 2
-db 50 ; catch rate
-db 186 ; base exp yield
-INCBIN "gfx/pokemon/front/alakazam.pic",0,1 ; 77, sprite dimensions
-dw AlakazamPicFront
-dw AlakazamPicBack
-; attacks known at lvl 0
-db TELEPORT
-db CONFUSION
-db DISABLE
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20
- tmlearn 28,29,30,31,32
- tmlearn 33,34,35,40
- tmlearn 44,45,46
- tmlearn 49,50,55
-db 0 ; padding
+ db DEX_ALAKAZAM ; pokedex id
+
+ db 55, 50, 45, 120, 135
+ ; hp atk def spd spc
+
+ db PSYCHIC, PSYCHIC ; type
+ db 50 ; catch rate
+ db 186 ; base exp
+
+ INCBIN "gfx/pokemon/front/alakazam.pic", 0, 1 ; sprite dimensions
+ dw AlakazamPicFront, AlakazamPicBack
+
+ db TELEPORT, CONFUSION, DISABLE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, DIG, PSYCHIC_M, TELEPORT, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, METRONOME, SKULL_BASH, \
+ REST, THUNDER_WAVE, PSYWAVE, TRI_ATTACK, SUBSTITUTE, \
+ FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/arbok.asm
+++ b/data/pokemon/base_stats/arbok.asm
@@ -1,28 +1,23 @@
-db DEX_ARBOK ; pokedex id
-db 60 ; base hp
-db 85 ; base attack
-db 69 ; base defense
-db 80 ; base speed
-db 65 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 90 ; catch rate
-db 147 ; base exp yield
-INCBIN "gfx/pokemon/front/arbok.pic",0,1 ; 77, sprite dimensions
-dw ArbokPicFront
-dw ArbokPicBack
-; attacks known at lvl 0
-db WRAP
-db LEER
-db POISON_STING
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,15
- tmlearn 20,21
- tmlearn 26,27,28,31,32
- tmlearn 34,40
- tmlearn 44,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_ARBOK ; pokedex id
+
+ db 60, 85, 69, 80, 65
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 90 ; catch rate
+ db 147 ; base exp
+
+ INCBIN "gfx/pokemon/front/arbok.pic", 0, 1 ; sprite dimensions
+ dw ArbokPicFront, ArbokPicBack
+
+ db WRAP, LEER, POISON_STING, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, \
+ RAGE, MEGA_DRAIN, EARTHQUAKE, FISSURE, DIG, \
+ MIMIC, DOUBLE_TEAM, BIDE, SKULL_BASH, REST, \
+ ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/arcanine.asm
+++ b/data/pokemon/base_stats/arcanine.asm
@@ -1,28 +1,23 @@
-db DEX_ARCANINE ; pokedex id
-db 90 ; base hp
-db 110 ; base attack
-db 80 ; base defense
-db 95 ; base speed
-db 80 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 75 ; catch rate
-db 213 ; base exp yield
-INCBIN "gfx/pokemon/front/arcanine.pic",0,1 ; 77, sprite dimensions
-dw ArcaninePicFront
-dw ArcaninePicBack
-; attacks known at lvl 0
-db ROAR
-db EMBER
-db LEER
-db TAKE_DOWN
-db 5 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,15
- tmlearn 20,23
- tmlearn 28,30,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_ARCANINE ; pokedex id
+
+ db 90, 110, 80, 95, 80
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 75 ; catch rate
+ db 213 ; base exp
+
+ INCBIN "gfx/pokemon/front/arcanine.pic", 0, 1 ; sprite dimensions
+ dw ArcaninePicFront, ArcaninePicBack
+
+ db ROAR, EMBER, LEER, TAKE_DOWN ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, \
+ RAGE, DRAGON_RAGE, DIG, TELEPORT, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, FIRE_BLAST, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/articuno.asm
+++ b/data/pokemon/base_stats/articuno.asm
@@ -1,28 +1,23 @@
-db DEX_ARTICUNO ; pokedex id
-db 90 ; base hp
-db 85 ; base attack
-db 100 ; base defense
-db 85 ; base speed
-db 125 ; base special
-db ICE ; species type 1
-db FLYING ; species type 2
-db 3 ; catch rate
-db 215 ; base exp yield
-INCBIN "gfx/pokemon/front/articuno.pic",0,1 ; 77, sprite dimensions
-dw ArticunoPicFront
-dw ArticunoPicBack
-; attacks known at lvl 0
-db PECK
-db ICE_BEAM
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,39
- tmlearn 43,44
- tmlearn 50,52
-db 0 ; padding
+ db DEX_ARTICUNO ; pokedex id
+
+ db 90, 85, 100, 85, 125
+ ; hp atk def spd spc
+
+ db ICE, FLYING ; type
+ db 3 ; catch rate
+ db 215 ; base exp
+
+ INCBIN "gfx/pokemon/front/articuno.pic", 0, 1 ; sprite dimensions
+ dw ArticunoPicFront, ArticunoPicBack
+
+ db PECK, ICE_BEAM, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, \
+ RAGE, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SWIFT, SKY_ATTACK, REST, SUBSTITUTE, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/beedrill.asm
+++ b/data/pokemon/base_stats/beedrill.asm
@@ -1,28 +1,23 @@
-db DEX_BEEDRILL ; pokedex id
-db 65 ; base hp
-db 80 ; base attack
-db 40 ; base defense
-db 75 ; base speed
-db 45 ; base special
-db BUG ; species type 1
-db POISON ; species type 2
-db 45 ; catch rate
-db 159 ; base exp yield
-INCBIN "gfx/pokemon/front/beedrill.pic",0,1 ; 77, sprite dimensions
-dw BeedrillPicFront
-dw BeedrillPicBack
-; attacks known at lvl 0
-db FURY_ATTACK
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6
- tmlearn 9,10,15
- tmlearn 20,21
- tmlearn 31,32
- tmlearn 33,34,39,40
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_BEEDRILL ; pokedex id
+
+ db 65, 80, 40, 75, 45
+ ; hp atk def spd spc
+
+ db BUG, POISON ; type
+ db 45 ; catch rate
+ db 159 ; base exp
+
+ INCBIN "gfx/pokemon/front/beedrill.pic", 0, 1 ; sprite dimensions
+ dw BeedrillPicFront, BeedrillPicBack
+
+ db FURY_ATTACK, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, \
+ RAGE, MEGA_DRAIN, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SWIFT, SKULL_BASH, REST, SUBSTITUTE, \
+ CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/bellsprout.asm
+++ b/data/pokemon/base_stats/bellsprout.asm
@@ -1,28 +1,22 @@
-db DEX_BELLSPROUT ; pokedex id
-db 50 ; base hp
-db 75 ; base attack
-db 35 ; base defense
-db 40 ; base speed
-db 70 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 255 ; catch rate
-db 84 ; base exp yield
-INCBIN "gfx/pokemon/front/bellsprout.pic",0,1 ; 55, sprite dimensions
-dw BellsproutPicFront
-dw BellsproutPicBack
-; attacks known at lvl 0
-db VINE_WHIP
-db GROWTH
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 3,6
- tmlearn 9,10
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_BELLSPROUT ; pokedex id
+
+ db 50, 75, 35, 40, 70
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 255 ; catch rate
+ db 84 ; base exp
+
+ INCBIN "gfx/pokemon/front/bellsprout.pic", 0, 1 ; sprite dimensions
+ dw BellsproutPicFront, BellsproutPicBack
+
+ db VINE_WHIP, GROWTH, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ MEGA_DRAIN, SOLARBEAM, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, REST, SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/blastoise.asm
+++ b/data/pokemon/base_stats/blastoise.asm
@@ -1,28 +1,25 @@
-db DEX_BLASTOISE ; pokedex id
-db 79 ; base hp
-db 83 ; base attack
-db 100 ; base defense
-db 78 ; base speed
-db 85 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 45 ; catch rate
-db 210 ; base exp yield
-INCBIN "gfx/pokemon/front/blastoise.pic",0,1 ; 77, sprite dimensions
-dw BlastoisePicFront
-dw BlastoisePicBack
-; attacks known at lvl 0
-db TACKLE
-db TAIL_WHIP
-db BUBBLE
-db WATER_GUN
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_BLASTOISE ; pokedex id
+
+ db 79, 83, 100, 78, 85
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 45 ; catch rate
+ db 210 ; base exp
+
+ INCBIN "gfx/pokemon/front/blastoise.pic", 0, 1 ; sprite dimensions
+ dw BlastoisePicFront, BlastoisePicBack
+
+ db TACKLE, TAIL_WHIP, BUBBLE, WATER_GUN ; level 1 learnset
+ db 3 ; 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, \
+ EARTHQUAKE, FISSURE, DIG, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, SKULL_BASH, REST, SUBSTITUTE, \
+ SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/bulbasaur.asm
+++ b/data/pokemon/base_stats/bulbasaur.asm
@@ -1,28 +1,22 @@
-db DEX_BULBASAUR ; pokedex id
-db 45 ; base hp
-db 49 ; base attack
-db 49 ; base defense
-db 45 ; base speed
-db 65 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 45 ; catch rate
-db 64 ; base exp yield
-INCBIN "gfx/pokemon/front/bulbasaur.pic",0,1 ; 55, sprite dimensions
-dw BulbasaurPicFront
-dw BulbasaurPicBack
-; attacks known at lvl 0
-db TACKLE
-db GROWL
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_BULBASAUR ; pokedex id
+
+ db 45, 49, 49, 45, 65
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 45 ; catch rate
+ db 64 ; base exp
+
+ INCBIN "gfx/pokemon/front/bulbasaur.pic", 0, 1 ; sprite dimensions
+ dw BulbasaurPicFront, BulbasaurPicBack
+
+ db TACKLE, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MEGA_DRAIN, SOLARBEAM, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, REST, SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/butterfree.asm
+++ b/data/pokemon/base_stats/butterfree.asm
@@ -1,28 +1,23 @@
-db DEX_BUTTERFREE ; pokedex id
-db 60 ; base hp
-db 45 ; base attack
-db 50 ; base defense
-db 70 ; base speed
-db 80 ; base special
-db BUG ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 160 ; base exp yield
-INCBIN "gfx/pokemon/front/butterfree.pic",0,1 ; 77, sprite dimensions
-dw ButterfreePicFront
-dw ButterfreePicBack
-; attacks known at lvl 0
-db CONFUSION
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,15
- tmlearn 20,21,22
- tmlearn 29,30,31,32
- tmlearn 33,34,39
- tmlearn 44,46
- tmlearn 50
-db 0 ; padding
+ db DEX_BUTTERFREE ; pokedex id
+
+ db 60, 45, 50, 70, 80
+ ; hp atk def spd spc
+
+ db BUG, FLYING ; type
+ db 45 ; catch rate
+ db 160 ; base exp
+
+ INCBIN "gfx/pokemon/front/butterfree.pic", 0, 1 ; sprite dimensions
+ dw ButterfreePicFront, ButterfreePicBack
+
+ db CONFUSION, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MEGA_DRAIN, SOLARBEAM, PSYCHIC_M, \
+ TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SWIFT, REST, PSYWAVE, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/caterpie.asm
+++ b/data/pokemon/base_stats/caterpie.asm
@@ -1,28 +1,20 @@
-db DEX_CATERPIE ; pokedex id
-db 45 ; base hp
-db 30 ; base attack
-db 35 ; base defense
-db 45 ; base speed
-db 20 ; base special
-db BUG ; species type 1
-db BUG ; species type 2
-db 255 ; catch rate
-db 53 ; base exp yield
-INCBIN "gfx/pokemon/front/caterpie.pic",0,1 ; 55, sprite dimensions
-dw CaterpiePicFront
-dw CaterpiePicBack
-; attacks known at lvl 0
-db TACKLE
-db STRING_SHOT
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
-db 0 ; padding
+ db DEX_CATERPIE ; pokedex id
+
+ db 45, 30, 35, 45, 20
+ ; hp atk def spd spc
+
+ db BUG, BUG ; type
+ db 255 ; catch rate
+ db 53 ; base exp
+
+ INCBIN "gfx/pokemon/front/caterpie.pic", 0, 1 ; sprite dimensions
+ dw CaterpiePicFront, CaterpiePicBack
+
+ db TACKLE, STRING_SHOT, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/chansey.asm
+++ b/data/pokemon/base_stats/chansey.asm
@@ -1,28 +1,27 @@
-db DEX_CHANSEY ; pokedex id
-db 250 ; base hp
-db 5 ; base attack
-db 5 ; base defense
-db 50 ; base speed
-db 105 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 30 ; catch rate
-db 255 ; base exp yield
-INCBIN "gfx/pokemon/front/chansey.pic",0,1 ; 66, sprite dimensions
-dw ChanseyPicFront
-dw ChanseyPicBack
-; attacks known at lvl 0
-db POUND
-db DOUBLESLAP
-db 0
-db 0
-db 4 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20,22,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,35,37,38,40
- tmlearn 41,44,45,46
- tmlearn 49,50,54,55
-db 0 ; padding
+ db DEX_CHANSEY ; pokedex id
+
+ db 250, 5, 5, 50, 105
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 30 ; catch rate
+ db 255 ; base exp
+
+ INCBIN "gfx/pokemon/front/chansey.pic", 0, 1 ; sprite dimensions
+ dw ChanseyPicFront, ChanseyPicBack
+
+ db POUND, DOUBLESLAP, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 4 ; 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, METRONOME, \
+ EGG_BOMB, FIRE_BLAST, SKULL_BASH, SOFTBOILED, REST, \
+ THUNDER_WAVE, PSYWAVE, TRI_ATTACK, SUBSTITUTE, STRENGTH, \
+ FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/charizard.asm
+++ b/data/pokemon/base_stats/charizard.asm
@@ -1,28 +1,25 @@
-db DEX_CHARIZARD ; pokedex id
-db 78 ; base hp
-db 84 ; base attack
-db 78 ; base defense
-db 100 ; base speed
-db 85 ; base special
-db FIRE ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 209 ; base exp yield
-INCBIN "gfx/pokemon/front/charizard.pic",0,1 ; 77, sprite dimensions
-dw CharizardPicFront
-dw CharizardPicBack
-; attacks known at lvl 0
-db SCRATCH
-db GROWL
-db EMBER
-db LEER
-db 3 ; growth rate
-; learnset
- tmlearn 1,3,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20,23
- tmlearn 26,27,28,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50,51,54
-db 0 ; padding
+ db DEX_CHARIZARD ; pokedex id
+
+ db 78, 84, 78, 100, 85
+ ; hp atk def spd spc
+
+ db FIRE, FLYING ; type
+ db 45 ; catch rate
+ db 209 ; base exp
+
+ INCBIN "gfx/pokemon/front/charizard.pic", 0, 1 ; sprite dimensions
+ dw CharizardPicFront, CharizardPicBack
+
+ db SCRATCH, GROWL, EMBER, LEER ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, SWORDS_DANCE, MEGA_KICK, TOXIC, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, \
+ SEISMIC_TOSS, RAGE, DRAGON_RAGE, EARTHQUAKE, FISSURE, \
+ DIG, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ FIRE_BLAST, SWIFT, SKULL_BASH, REST, SUBSTITUTE, \
+ CUT, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/charmander.asm
+++ b/data/pokemon/base_stats/charmander.asm
@@ -1,28 +1,24 @@
-db DEX_CHARMANDER ; pokedex id
-db 39 ; base hp
-db 52 ; base attack
-db 43 ; base defense
-db 65 ; base speed
-db 50 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 45 ; catch rate
-db 65 ; base exp yield
-INCBIN "gfx/pokemon/front/charmander.pic",0,1 ; 55, sprite dimensions
-dw CharmanderPicFront
-dw CharmanderPicBack
-; attacks known at lvl 0
-db SCRATCH
-db GROWL
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,3,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20,23
- tmlearn 28,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50,51,54
-db 0 ; padding
+ db DEX_CHARMANDER ; pokedex id
+
+ db 39, 52, 43, 65, 50
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 45 ; catch rate
+ db 65 ; base exp
+
+ INCBIN "gfx/pokemon/front/charmander.pic", 0, 1 ; sprite dimensions
+ dw CharmanderPicFront, CharmanderPicBack
+
+ db SCRATCH, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, SWORDS_DANCE, MEGA_KICK, TOXIC, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, DRAGON_RAGE, DIG, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, FIRE_BLAST, SWIFT, SKULL_BASH, \
+ REST, SUBSTITUTE, CUT, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/charmeleon.asm
+++ b/data/pokemon/base_stats/charmeleon.asm
@@ -1,28 +1,24 @@
-db DEX_CHARMELEON ; pokedex id
-db 58 ; base hp
-db 64 ; base attack
-db 58 ; base defense
-db 80 ; base speed
-db 65 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 45 ; catch rate
-db 142 ; base exp yield
-INCBIN "gfx/pokemon/front/charmeleon.pic",0,1 ; 66, sprite dimensions
-dw CharmeleonPicFront
-dw CharmeleonPicBack
-; attacks known at lvl 0
-db SCRATCH
-db GROWL
-db EMBER
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,3,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20,23
- tmlearn 28,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50,51,54
-db 0 ; padding
+ db DEX_CHARMELEON ; pokedex id
+
+ db 58, 64, 58, 80, 65
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 45 ; catch rate
+ db 142 ; base exp
+
+ INCBIN "gfx/pokemon/front/charmeleon.pic", 0, 1 ; sprite dimensions
+ dw CharmeleonPicFront, CharmeleonPicBack
+
+ db SCRATCH, GROWL, EMBER, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, SWORDS_DANCE, MEGA_KICK, TOXIC, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, DRAGON_RAGE, DIG, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, FIRE_BLAST, SWIFT, SKULL_BASH, \
+ REST, SUBSTITUTE, CUT, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/clefable.asm
+++ b/data/pokemon/base_stats/clefable.asm
@@ -1,28 +1,26 @@
-db DEX_CLEFABLE ; pokedex id
-db 95 ; base hp
-db 70 ; base attack
-db 73 ; base defense
-db 60 ; base speed
-db 85 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 25 ; catch rate
-db 129 ; base exp yield
-INCBIN "gfx/pokemon/front/clefable.pic",0,1 ; 66, sprite dimensions
-dw ClefablePicFront
-dw ClefablePicBack
-; attacks known at lvl 0
-db SING
-db DOUBLESLAP
-db MINIMIZE
-db METRONOME
-db 4 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20,22,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,35,38,40
- tmlearn 44,45,46
- tmlearn 49,50,54,55
-db 0 ; padding
+ db DEX_CLEFABLE ; pokedex id
+
+ db 95, 70, 73, 60, 85
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 25 ; catch rate
+ db 129 ; base exp
+
+ INCBIN "gfx/pokemon/front/clefable.pic", 0, 1 ; sprite dimensions
+ dw ClefablePicFront, ClefablePicBack
+
+ db SING, DOUBLESLAP, MINIMIZE, METRONOME ; level 1 learnset
+ db 4 ; 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, METRONOME, \
+ FIRE_BLAST, SKULL_BASH, REST, THUNDER_WAVE, PSYWAVE, \
+ TRI_ATTACK, SUBSTITUTE, STRENGTH, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/clefairy.asm
+++ b/data/pokemon/base_stats/clefairy.asm
@@ -1,28 +1,26 @@
-db DEX_CLEFAIRY ; pokedex id
-db 70 ; base hp
-db 45 ; base attack
-db 48 ; base defense
-db 35 ; base speed
-db 60 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 150 ; catch rate
-db 68 ; base exp yield
-INCBIN "gfx/pokemon/front/clefairy.pic",0,1 ; 55, sprite dimensions
-dw ClefairyPicFront
-dw ClefairyPicBack
-; attacks known at lvl 0
-db POUND
-db GROWL
-db 0
-db 0
-db 4 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 17,18,19,20,22,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,35,38,40
- tmlearn 44,45,46
- tmlearn 49,50,54,55
-db 0 ; padding
+ db DEX_CLEFAIRY ; pokedex id
+
+ db 70, 45, 48, 35, 60
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 150 ; catch rate
+ db 68 ; base exp
+
+ INCBIN "gfx/pokemon/front/clefairy.pic", 0, 1 ; sprite dimensions
+ dw ClefairyPicFront, ClefairyPicBack
+
+ db POUND, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 4 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \
+ SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, SOLARBEAM, \
+ THUNDERBOLT, THUNDER, PSYCHIC_M, TELEPORT, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, METRONOME, FIRE_BLAST, \
+ SKULL_BASH, REST, THUNDER_WAVE, PSYWAVE, TRI_ATTACK, \
+ SUBSTITUTE, STRENGTH, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/cloyster.asm
+++ b/data/pokemon/base_stats/cloyster.asm
@@ -1,28 +1,24 @@
-db DEX_CLOYSTER ; pokedex id
-db 50 ; base hp
-db 95 ; base attack
-db 180 ; base defense
-db 70 ; base speed
-db 85 ; base special
-db WATER ; species type 1
-db ICE ; species type 2
-db 60 ; catch rate
-db 203 ; base exp yield
-INCBIN "gfx/pokemon/front/cloyster.pic",0,1 ; 77, sprite dimensions
-dw CloysterPicFront
-dw CloysterPicBack
-; attacks known at lvl 0
-db WITHDRAW
-db SUPERSONIC
-db CLAMP
-db AURORA_BEAM
-db 5 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20
- tmlearn 30,31,32
- tmlearn 33,34,36,39
- tmlearn 44,47
- tmlearn 49,50,53
-db 0 ; padding
+ db DEX_CLOYSTER ; pokedex id
+
+ db 50, 95, 180, 70, 85
+ ; hp atk def spd spc
+
+ db WATER, ICE ; type
+ db 60 ; catch rate
+ db 203 ; base exp
+
+ INCBIN "gfx/pokemon/front/cloyster.pic", 0, 1 ; sprite dimensions
+ dw CloysterPicFront, CloysterPicBack
+
+ db WITHDRAW, SUPERSONIC, CLAMP, AURORA_BEAM ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, \
+ ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, TELEPORT, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, SELFDESTRUCT, \
+ SWIFT, REST, EXPLOSION, TRI_ATTACK, SUBSTITUTE, \
+ SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/cubone.asm
+++ b/data/pokemon/base_stats/cubone.asm
@@ -1,28 +1,24 @@
-db DEX_CUBONE ; pokedex id
-db 50 ; base hp
-db 50 ; base attack
-db 95 ; base defense
-db 35 ; base speed
-db 40 ; base special
-db GROUND ; species type 1
-db GROUND ; species type 2
-db 190 ; catch rate
-db 87 ; base exp yield
-INCBIN "gfx/pokemon/front/cubone.pic",0,1 ; 55, sprite dimensions
-dw CubonePicFront
-dw CubonePicBack
-; attacks known at lvl 0
-db BONE_CLUB
-db GROWL
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,38,40
- tmlearn 44
- tmlearn 50,54
-db 0 ; padding
+ db DEX_CUBONE ; pokedex id
+
+ db 50, 50, 95, 35, 40
+ ; hp atk def spd spc
+
+ db GROUND, GROUND ; type
+ db 190 ; catch rate
+ db 87 ; base exp
+
+ INCBIN "gfx/pokemon/front/cubone.pic", 0, 1 ; sprite dimensions
+ dw CubonePicFront, CubonePicBack
+
+ db BONE_CLUB, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \
+ SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, EARTHQUAKE, \
+ FISSURE, DIG, MIMIC, DOUBLE_TEAM, BIDE, \
+ FIRE_BLAST, SKULL_BASH, REST, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/dewgong.asm
+++ b/data/pokemon/base_stats/dewgong.asm
@@ -1,28 +1,23 @@
-db DEX_DEWGONG ; pokedex id
-db 90 ; base hp
-db 70 ; base attack
-db 80 ; base defense
-db 70 ; base speed
-db 95 ; base special
-db WATER ; species type 1
-db ICE ; species type 2
-db 75 ; catch rate
-db 176 ; base exp yield
-INCBIN "gfx/pokemon/front/dewgong.pic",0,1 ; 66, sprite dimensions
-dw DewgongPicFront
-dw DewgongPicBack
-; attacks known at lvl 0
-db HEADBUTT
-db GROWL
-db AURORA_BEAM
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,40
- tmlearn 44
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_DEWGONG ; pokedex id
+
+ db 90, 70, 80, 70, 95
+ ; hp atk def spd spc
+
+ db WATER, ICE ; type
+ db 75 ; catch rate
+ db 176 ; base exp
+
+ INCBIN "gfx/pokemon/front/dewgong.pic", 0, 1 ; sprite dimensions
+ dw DewgongPicFront, DewgongPicBack
+
+ db HEADBUTT, GROWL, AURORA_BEAM, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, \
+ PAY_DAY, RAGE, MIMIC, DOUBLE_TEAM, BIDE, \
+ SKULL_BASH, REST, SUBSTITUTE, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/diglett.asm
+++ b/data/pokemon/base_stats/diglett.asm
@@ -1,28 +1,22 @@
-db DEX_DIGLETT ; pokedex id
-db 10 ; base hp
-db 55 ; base attack
-db 25 ; base defense
-db 95 ; base speed
-db 45 ; base special
-db GROUND ; species type 1
-db GROUND ; species type 2
-db 255 ; catch rate
-db 81 ; base exp yield
-INCBIN "gfx/pokemon/front/diglett.pic",0,1 ; 55, sprite dimensions
-dw DiglettPicFront
-dw DiglettPicBack
-; attacks known at lvl 0
-db SCRATCH
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10
- tmlearn 20
- tmlearn 26,27,28,31,32
- tmlearn 34
- tmlearn 44,48
- tmlearn 50
-db 0 ; padding
+ db DEX_DIGLETT ; pokedex id
+
+ db 10, 55, 25, 95, 45
+ ; hp atk def spd spc
+
+ db GROUND, GROUND ; type
+ db 255 ; catch rate
+ db 81 ; base exp
+
+ INCBIN "gfx/pokemon/front/diglett.pic", 0, 1 ; sprite dimensions
+ dw DiglettPicFront, DiglettPicBack
+
+ db SCRATCH, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ EARTHQUAKE, FISSURE, DIG, MIMIC, DOUBLE_TEAM, \
+ BIDE, REST, ROCK_SLIDE, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/ditto.asm
+++ b/data/pokemon/base_stats/ditto.asm
@@ -1,28 +1,20 @@
-db DEX_DITTO ; pokedex id
-db 48 ; base hp
-db 48 ; base attack
-db 48 ; base defense
-db 48 ; base speed
-db 48 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 35 ; catch rate
-db 61 ; base exp yield
-INCBIN "gfx/pokemon/front/ditto.pic",0,1 ; 55, sprite dimensions
-dw DittoPicFront
-dw DittoPicBack
-; attacks known at lvl 0
-db TRANSFORM
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
-db 0 ; padding
+ db DEX_DITTO ; pokedex id
+
+ db 48, 48, 48, 48, 48
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 35 ; catch rate
+ db 61 ; base exp
+
+ INCBIN "gfx/pokemon/front/ditto.pic", 0, 1 ; sprite dimensions
+ dw DittoPicFront, DittoPicBack
+
+ db TRANSFORM, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/dodrio.asm
+++ b/data/pokemon/base_stats/dodrio.asm
@@ -1,28 +1,23 @@
-db DEX_DODRIO ; pokedex id
-db 60 ; base hp
-db 110 ; base attack
-db 70 ; base defense
-db 100 ; base speed
-db 60 ; base special
-db NORMAL ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 158 ; base exp yield
-INCBIN "gfx/pokemon/front/dodrio.pic",0,1 ; 77, sprite dimensions
-dw DodrioPicFront
-dw DodrioPicBack
-; attacks known at lvl 0
-db PECK
-db GROWL
-db FURY_ATTACK
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 4,6,8
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,40
- tmlearn 43,44
- tmlearn 49,50,52
-db 0 ; padding
+ db DEX_DODRIO ; pokedex id
+
+ db 60, 110, 70, 100, 60
+ ; hp atk def spd spc
+
+ db NORMAL, FLYING ; type
+ db 45 ; catch rate
+ db 158 ; base exp
+
+ INCBIN "gfx/pokemon/front/dodrio.pic", 0, 1 ; sprite dimensions
+ dw DodrioPicFront, DodrioPicBack
+
+ db PECK, GROWL, FURY_ATTACK, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm WHIRLWIND, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SKULL_BASH, SKY_ATTACK, REST, TRI_ATTACK, \
+ SUBSTITUTE, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/doduo.asm
+++ b/data/pokemon/base_stats/doduo.asm
@@ -1,28 +1,23 @@
-db DEX_DODUO ; pokedex id
-db 35 ; base hp
-db 85 ; base attack
-db 45 ; base defense
-db 75 ; base speed
-db 35 ; base special
-db NORMAL ; species type 1
-db FLYING ; species type 2
-db 190 ; catch rate
-db 96 ; base exp yield
-INCBIN "gfx/pokemon/front/doduo.pic",0,1 ; 55, sprite dimensions
-dw DoduoPicFront
-dw DoduoPicBack
-; attacks known at lvl 0
-db PECK
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 4,6,8
- tmlearn 9,10
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,40
- tmlearn 43,44
- tmlearn 49,50,52
-db 0 ; padding
+ db DEX_DODUO ; pokedex id
+
+ db 35, 85, 45, 75, 35
+ ; hp atk def spd spc
+
+ db NORMAL, FLYING ; type
+ db 190 ; catch rate
+ db 96 ; base exp
+
+ INCBIN "gfx/pokemon/front/doduo.pic", 0, 1 ; sprite dimensions
+ dw DoduoPicFront, DoduoPicBack
+
+ db PECK, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm WHIRLWIND, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SKULL_BASH, SKY_ATTACK, REST, TRI_ATTACK, SUBSTITUTE, \
+ FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/dragonair.asm
+++ b/data/pokemon/base_stats/dragonair.asm
@@ -1,28 +1,24 @@
-db DEX_DRAGONAIR ; pokedex id
-db 61 ; base hp
-db 84 ; base attack
-db 65 ; base defense
-db 70 ; base speed
-db 70 ; base special
-db DRAGON ; species type 1
-db DRAGON ; species type 2
-db 45 ; catch rate
-db 144 ; base exp yield
-INCBIN "gfx/pokemon/front/dragonair.pic",0,1 ; 66, sprite dimensions
-dw DragonairPicFront
-dw DragonairPicBack
-; attacks known at lvl 0
-db WRAP
-db LEER
-db THUNDER_WAVE
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,11,12,13,14
- tmlearn 20,23,24
- tmlearn 25,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44,45
- tmlearn 50,53
-db 0 ; padding
+ db DEX_DRAGONAIR ; pokedex id
+
+ db 61, 84, 65, 70, 70
+ ; hp atk def spd spc
+
+ db DRAGON, DRAGON ; type
+ db 45 ; catch rate
+ db 144 ; base exp
+
+ INCBIN "gfx/pokemon/front/dragonair.pic", 0, 1 ; sprite dimensions
+ dw DragonairPicFront, DragonairPicBack
+
+ db WRAP, LEER, THUNDER_WAVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, \
+ DRAGON_RAGE, THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, FIRE_BLAST, SWIFT, SKULL_BASH, \
+ REST, THUNDER_WAVE, SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/dragonite.asm
+++ b/data/pokemon/base_stats/dragonite.asm
@@ -1,28 +1,25 @@
-db DEX_DRAGONITE ; pokedex id
-db 91 ; base hp
-db 134 ; base attack
-db 95 ; base defense
-db 80 ; base speed
-db 100 ; base special
-db DRAGON ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 218 ; base exp yield
-INCBIN "gfx/pokemon/front/dragonite.pic",0,1 ; 77, sprite dimensions
-dw DragonitePicFront
-dw DragonitePicBack
-; attacks known at lvl 0
-db WRAP
-db LEER
-db THUNDER_WAVE
-db AGILITY
-db 5 ; growth rate
-; learnset
- tmlearn 2,6,7,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20,23,24
- tmlearn 25,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44,45
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_DRAGONITE ; pokedex id
+
+ db 91, 134, 95, 80, 100
+ ; hp atk def spd spc
+
+ db DRAGON, FLYING ; type
+ db 45 ; catch rate
+ db 218 ; base exp
+
+ INCBIN "gfx/pokemon/front/dragonite.pic", 0, 1 ; sprite dimensions
+ dw DragonitePicFront, DragonitePicBack
+
+ db WRAP, LEER, THUNDER_WAVE, AGILITY ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \
+ HYPER_BEAM, RAGE, DRAGON_RAGE, THUNDERBOLT, THUNDER, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, FIRE_BLAST, \
+ SWIFT, SKULL_BASH, REST, THUNDER_WAVE, SUBSTITUTE, \
+ SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/dratini.asm
+++ b/data/pokemon/base_stats/dratini.asm
@@ -1,28 +1,24 @@
-db DEX_DRATINI ; pokedex id
-db 41 ; base hp
-db 64 ; base attack
-db 45 ; base defense
-db 50 ; base speed
-db 50 ; base special
-db DRAGON ; species type 1
-db DRAGON ; species type 2
-db 45 ; catch rate
-db 67 ; base exp yield
-INCBIN "gfx/pokemon/front/dratini.pic",0,1 ; 55, sprite dimensions
-dw DratiniPicFront
-dw DratiniPicBack
-; attacks known at lvl 0
-db WRAP
-db LEER
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 20,23,24
- tmlearn 25,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44,45
- tmlearn 50,53
-db 0 ; padding
+ db DEX_DRATINI ; pokedex id
+
+ db 41, 64, 45, 50, 50
+ ; hp atk def spd spc
+
+ db DRAGON, DRAGON ; type
+ db 45 ; catch rate
+ db 67 ; base exp
+
+ INCBIN "gfx/pokemon/front/dratini.pic", 0, 1 ; sprite dimensions
+ dw DratiniPicFront, DratiniPicBack
+
+ db WRAP, LEER, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, DRAGON_RAGE, \
+ THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, FIRE_BLAST, SWIFT, SKULL_BASH, REST, \
+ THUNDER_WAVE, SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/drowzee.asm
+++ b/data/pokemon/base_stats/drowzee.asm
@@ -1,28 +1,24 @@
-db DEX_DROWZEE ; pokedex id
-db 60 ; base hp
-db 48 ; base attack
-db 45 ; base defense
-db 42 ; base speed
-db 90 ; base special
-db PSYCHIC ; species type 1
-db PSYCHIC ; species type 2
-db 190 ; catch rate
-db 102 ; base exp yield
-INCBIN "gfx/pokemon/front/drowzee.pic",0,1 ; 66, sprite dimensions
-dw DrowzeePicFront
-dw DrowzeePicBack
-; attacks known at lvl 0
-db POUND
-db HYPNOSIS
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 29,30,31,32
- tmlearn 33,34,35,40
- tmlearn 42,44,45,46
- tmlearn 49,50,55
-db 0 ; padding
+ db DEX_DROWZEE ; pokedex id
+
+ db 60, 48, 45, 42, 90
+ ; hp atk def spd spc
+
+ db PSYCHIC, PSYCHIC ; type
+ db 190 ; catch rate
+ db 102 ; base exp
+
+ INCBIN "gfx/pokemon/front/drowzee.pic", 0, 1 ; sprite dimensions
+ dw DrowzeePicFront, DrowzeePicBack
+
+ db POUND, HYPNOSIS, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ PSYCHIC_M, TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, METRONOME, SKULL_BASH, DREAM_EATER, REST, \
+ THUNDER_WAVE, PSYWAVE, TRI_ATTACK, SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/dugtrio.asm
+++ b/data/pokemon/base_stats/dugtrio.asm
@@ -1,28 +1,22 @@
-db DEX_DUGTRIO ; pokedex id
-db 35 ; base hp
-db 80 ; base attack
-db 50 ; base defense
-db 120 ; base speed
-db 70 ; base special
-db GROUND ; species type 1
-db GROUND ; species type 2
-db 50 ; catch rate
-db 153 ; base exp yield
-INCBIN "gfx/pokemon/front/dugtrio.pic",0,1 ; 66, sprite dimensions
-dw DugtrioPicFront
-dw DugtrioPicBack
-; attacks known at lvl 0
-db SCRATCH
-db GROWL
-db DIG
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 26,27,28,31,32
- tmlearn 34
- tmlearn 44,48
- tmlearn 50
-db 0 ; padding
+ db DEX_DUGTRIO ; pokedex id
+
+ db 35, 80, 50, 120, 70
+ ; hp atk def spd spc
+
+ db GROUND, GROUND ; type
+ db 50 ; catch rate
+ db 153 ; base exp
+
+ INCBIN "gfx/pokemon/front/dugtrio.pic", 0, 1 ; sprite dimensions
+ dw DugtrioPicFront, DugtrioPicBack
+
+ db SCRATCH, GROWL, DIG, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, \
+ RAGE, EARTHQUAKE, FISSURE, DIG, MIMIC, \
+ DOUBLE_TEAM, BIDE, REST, ROCK_SLIDE, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/eevee.asm
+++ b/data/pokemon/base_stats/eevee.asm
@@ -1,28 +1,22 @@
-db DEX_EEVEE ; pokedex id
-db 55 ; base hp
-db 55 ; base attack
-db 50 ; base defense
-db 55 ; base speed
-db 65 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 45 ; catch rate
-db 92 ; base exp yield
-INCBIN "gfx/pokemon/front/eevee.pic",0,1 ; 55, sprite dimensions
-dw EeveePicFront
-dw EeveePicBack
-; attacks known at lvl 0
-db TACKLE
-db SAND_ATTACK
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_EEVEE ; pokedex id
+
+ db 55, 55, 50, 55, 65
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 45 ; catch rate
+ db 92 ; base exp
+
+ INCBIN "gfx/pokemon/front/eevee.pic", 0, 1 ; sprite dimensions
+ dw EeveePicFront, EeveePicBack
+
+ db TACKLE, SAND_ATTACK, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/ekans.asm
+++ b/data/pokemon/base_stats/ekans.asm
@@ -1,28 +1,23 @@
-db DEX_EKANS ; pokedex id
-db 35 ; base hp
-db 60 ; base attack
-db 44 ; base defense
-db 55 ; base speed
-db 40 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 255 ; catch rate
-db 62 ; base exp yield
-INCBIN "gfx/pokemon/front/ekans.pic",0,1 ; 55, sprite dimensions
-dw EkansPicFront
-dw EkansPicBack
-; attacks known at lvl 0
-db WRAP
-db LEER
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10
- tmlearn 20,21
- tmlearn 26,27,28,31,32
- tmlearn 34,40
- tmlearn 44,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_EKANS ; pokedex id
+
+ db 35, 60, 44, 55, 40
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 255 ; catch rate
+ db 62 ; base exp
+
+ INCBIN "gfx/pokemon/front/ekans.pic", 0, 1 ; sprite dimensions
+ dw EkansPicFront, EkansPicBack
+
+ db WRAP, LEER, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ MEGA_DRAIN, EARTHQUAKE, FISSURE, DIG, MIMIC, \
+ DOUBLE_TEAM, BIDE, SKULL_BASH, REST, ROCK_SLIDE, \
+ SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/electabuzz.asm
+++ b/data/pokemon/base_stats/electabuzz.asm
@@ -1,28 +1,25 @@
-db DEX_ELECTABUZZ ; pokedex id
-db 65 ; base hp
-db 83 ; base attack
-db 57 ; base defense
-db 105 ; base speed
-db 85 ; base special
-db ELECTRIC ; species type 1
-db ELECTRIC ; species type 2
-db 45 ; catch rate
-db 156 ; base exp yield
-INCBIN "gfx/pokemon/front/electabuzz.pic",0,1 ; 66, sprite dimensions
-dw ElectabuzzPicFront
-dw ElectabuzzPicBack
-; attacks known at lvl 0
-db QUICK_ATTACK
-db LEER
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,35,39,40
- tmlearn 44,45,46
- tmlearn 50,54,55
-db 0 ; padding
+ db DEX_ELECTABUZZ ; pokedex id
+
+ db 65, 83, 57, 105, 85
+ ; hp atk def spd spc
+
+ db ELECTRIC, ELECTRIC ; type
+ db 45 ; catch rate
+ db 156 ; base exp
+
+ INCBIN "gfx/pokemon/front/electabuzz.pic", 0, 1 ; sprite dimensions
+ dw ElectabuzzPicFront, ElectabuzzPicBack
+
+ db QUICK_ATTACK, LEER, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, THUNDERBOLT, THUNDER, PSYCHIC_M, TELEPORT, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, METRONOME, \
+ SWIFT, SKULL_BASH, REST, THUNDER_WAVE, PSYWAVE, \
+ SUBSTITUTE, STRENGTH, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/electrode.asm
+++ b/data/pokemon/base_stats/electrode.asm
@@ -1,28 +1,23 @@
-db DEX_ELECTRODE ; pokedex id
-db 60 ; base hp
-db 50 ; base attack
-db 70 ; base defense
-db 140 ; base speed
-db 80 ; base special
-db ELECTRIC ; species type 1
-db ELECTRIC ; species type 2
-db 60 ; catch rate
-db 150 ; base exp yield
-INCBIN "gfx/pokemon/front/electrode.pic",0,1 ; 55, sprite dimensions
-dw ElectrodePicFront
-dw ElectrodePicBack
-; attacks known at lvl 0
-db TACKLE
-db SCREECH
-db SONICBOOM
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,15
- tmlearn 20,24
- tmlearn 25,30,31,32
- tmlearn 33,34,36,39,40
- tmlearn 44,45,47
- tmlearn 50,55
-db 0 ; padding
+ db DEX_ELECTRODE ; pokedex id
+
+ db 60, 50, 70, 140, 80
+ ; hp atk def spd spc
+
+ db ELECTRIC, ELECTRIC ; type
+ db 60 ; catch rate
+ db 150 ; base exp
+
+ INCBIN "gfx/pokemon/front/electrode.pic", 0, 1 ; sprite dimensions
+ dw ElectrodePicFront, ElectrodePicBack
+
+ db TACKLE, SCREECH, SONICBOOM, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, HYPER_BEAM, RAGE, THUNDERBOLT, \
+ THUNDER, TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SELFDESTRUCT, SWIFT, SKULL_BASH, REST, \
+ THUNDER_WAVE, EXPLOSION, SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/exeggcute.asm
+++ b/data/pokemon/base_stats/exeggcute.asm
@@ -1,28 +1,23 @@
-db DEX_EXEGGCUTE ; pokedex id
-db 60 ; base hp
-db 40 ; base attack
-db 80 ; base defense
-db 40 ; base speed
-db 60 ; base special
-db GRASS ; species type 1
-db PSYCHIC ; species type 2
-db 90 ; catch rate
-db 98 ; base exp yield
-INCBIN "gfx/pokemon/front/exeggcute.pic",0,1 ; 77, sprite dimensions
-dw ExeggcutePicFront
-dw ExeggcutePicBack
-; attacks known at lvl 0
-db BARRAGE
-db HYPNOSIS
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10
- tmlearn 20
- tmlearn 29,30,31,32
- tmlearn 33,34,36,37
- tmlearn 44,46,47
- tmlearn 50
-db 0 ; padding
+ db DEX_EXEGGCUTE ; pokedex id
+
+ db 60, 40, 80, 40, 60
+ ; hp atk def spd spc
+
+ db GRASS, PSYCHIC ; type
+ db 90 ; catch rate
+ db 98 ; base exp
+
+ INCBIN "gfx/pokemon/front/exeggcute.pic", 0, 1 ; sprite dimensions
+ dw ExeggcutePicFront, ExeggcutePicBack
+
+ db BARRAGE, HYPNOSIS, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, RAGE, PSYCHIC_M, \
+ TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SELFDESTRUCT, EGG_BOMB, REST, PSYWAVE, EXPLOSION, \
+ SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/exeggutor.asm
+++ b/data/pokemon/base_stats/exeggutor.asm
@@ -1,28 +1,23 @@
-db DEX_EXEGGUTOR ; pokedex id
-db 95 ; base hp
-db 95 ; base attack
-db 85 ; base defense
-db 55 ; base speed
-db 125 ; base special
-db GRASS ; species type 1
-db PSYCHIC ; species type 2
-db 45 ; catch rate
-db 212 ; base exp yield
-INCBIN "gfx/pokemon/front/exeggutor.pic",0,1 ; 77, sprite dimensions
-dw ExeggutorPicFront
-dw ExeggutorPicBack
-; attacks known at lvl 0
-db BARRAGE
-db HYPNOSIS
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,15
- tmlearn 20,21,22
- tmlearn 29,30,31,32
- tmlearn 33,34,36,37
- tmlearn 44,46,47
- tmlearn 50,54
-db 0 ; padding
+ db DEX_EXEGGUTOR ; pokedex id
+
+ db 95, 95, 85, 55, 125
+ ; hp atk def spd spc
+
+ db GRASS, PSYCHIC ; type
+ db 45 ; catch rate
+ db 212 ; base exp
+
+ INCBIN "gfx/pokemon/front/exeggutor.pic", 0, 1 ; sprite dimensions
+ dw ExeggutorPicFront, ExeggutorPicBack
+
+ db BARRAGE, HYPNOSIS, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, RAGE, \
+ MEGA_DRAIN, SOLARBEAM, PSYCHIC_M, TELEPORT, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, SELFDESTRUCT, EGG_BOMB, \
+ REST, PSYWAVE, EXPLOSION, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/farfetchd.asm
+++ b/data/pokemon/base_stats/farfetchd.asm
@@ -1,28 +1,23 @@
-db DEX_FARFETCHD ; pokedex id
-db 52 ; base hp
-db 65 ; base attack
-db 55 ; base defense
-db 60 ; base speed
-db 58 ; base special
-db NORMAL ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 94 ; base exp yield
-INCBIN "gfx/pokemon/front/farfetchd.pic",0,1 ; 66, sprite dimensions
-dw FarfetchdPicFront
-dw FarfetchdPicBack
-; attacks known at lvl 0
-db PECK
-db SAND_ATTACK
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 2,3,4,6,8
- tmlearn 9,10
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,39,40
- tmlearn 44
- tmlearn 50,51,52
-db 0 ; padding
+ db DEX_FARFETCHD ; pokedex id
+
+ db 52, 65, 55, 60, 58
+ ; hp atk def spd spc
+
+ db NORMAL, FLYING ; type
+ db 45 ; catch rate
+ db 94 ; base exp
+
+ INCBIN "gfx/pokemon/front/farfetchd.pic", 0, 1 ; sprite dimensions
+ dw FarfetchdPicFront, FarfetchdPicBack
+
+ db PECK, SAND_ATTACK, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, SWORDS_DANCE, WHIRLWIND, TOXIC, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, RAGE, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, SWIFT, SKULL_BASH, REST, \
+ SUBSTITUTE, CUT, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/fearow.asm
+++ b/data/pokemon/base_stats/fearow.asm
@@ -1,28 +1,22 @@
-db DEX_FEAROW ; pokedex id
-db 65 ; base hp
-db 90 ; base attack
-db 65 ; base defense
-db 100 ; base speed
-db 61 ; base special
-db NORMAL ; species type 1
-db FLYING ; species type 2
-db 90 ; catch rate
-db 162 ; base exp yield
-INCBIN "gfx/pokemon/front/fearow.pic",0,1 ; 77, sprite dimensions
-dw FearowPicFront
-dw FearowPicBack
-; attacks known at lvl 0
-db PECK
-db GROWL
-db LEER
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,39
- tmlearn 43,44
- tmlearn 50,52
-db 0 ; padding
+ db DEX_FEAROW ; pokedex id
+
+ db 65, 90, 65, 100, 61
+ ; hp atk def spd spc
+
+ db NORMAL, FLYING ; type
+ db 90 ; catch rate
+ db 162 ; base exp
+
+ INCBIN "gfx/pokemon/front/fearow.pic", 0, 1 ; sprite dimensions
+ dw FearowPicFront, FearowPicBack
+
+ db PECK, GROWL, LEER, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MIMIC, DOUBLE_TEAM, BIDE, \
+ SWIFT, SKY_ATTACK, REST, SUBSTITUTE, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/flareon.asm
+++ b/data/pokemon/base_stats/flareon.asm
@@ -1,28 +1,22 @@
-db DEX_FLAREON ; pokedex id
-db 65 ; base hp
-db 130 ; base attack
-db 60 ; base defense
-db 65 ; base speed
-db 110 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 45 ; catch rate
-db 198 ; base exp yield
-INCBIN "gfx/pokemon/front/flareon.pic",0,1 ; 66, sprite dimensions
-dw FlareonPicFront
-dw FlareonPicBack
-; attacks known at lvl 0
-db TACKLE
-db SAND_ATTACK
-db QUICK_ATTACK
-db EMBER
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_FLAREON ; pokedex id
+
+ db 65, 130, 60, 65, 110
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 45 ; catch rate
+ db 198 ; base exp
+
+ INCBIN "gfx/pokemon/front/flareon.pic", 0, 1 ; sprite dimensions
+ dw FlareonPicFront, FlareonPicBack
+
+ db TACKLE, SAND_ATTACK, QUICK_ATTACK, EMBER ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, \
+ RAGE, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ FIRE_BLAST, SWIFT, SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/gastly.asm
+++ b/data/pokemon/base_stats/gastly.asm
@@ -1,28 +1,22 @@
-db DEX_GASTLY ; pokedex id
-db 30 ; base hp
-db 35 ; base attack
-db 30 ; base defense
-db 80 ; base speed
-db 100 ; base special
-db GHOST ; species type 1
-db POISON ; species type 2
-db 190 ; catch rate
-db 95 ; base exp yield
-INCBIN "gfx/pokemon/front/gastly.pic",0,1 ; 77, sprite dimensions
-dw GastlyPicFront
-dw GastlyPicBack
-; attacks known at lvl 0
-db LICK
-db CONFUSE_RAY
-db NIGHT_SHADE
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 0
- tmlearn 20,21,24
- tmlearn 25,29,31,32
- tmlearn 34,36
- tmlearn 42,44,46,47
- tmlearn 50
-db 0 ; padding
+ db DEX_GASTLY ; pokedex id
+
+ db 30, 35, 30, 80, 100
+ ; hp atk def spd spc
+
+ db GHOST, POISON ; type
+ db 190 ; catch rate
+ db 95 ; base exp
+
+ INCBIN "gfx/pokemon/front/gastly.pic", 0, 1 ; sprite dimensions
+ dw GastlyPicFront, GastlyPicBack
+
+ db LICK, CONFUSE_RAY, NIGHT_SHADE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, RAGE, MEGA_DRAIN, THUNDERBOLT, THUNDER, \
+ PSYCHIC_M, MIMIC, DOUBLE_TEAM, BIDE, SELFDESTRUCT, \
+ DREAM_EATER, REST, PSYWAVE, EXPLOSION, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/gengar.asm
+++ b/data/pokemon/base_stats/gengar.asm
@@ -1,28 +1,25 @@
-db DEX_GENGAR ; pokedex id
-db 60 ; base hp
-db 65 ; base attack
-db 60 ; base defense
-db 110 ; base speed
-db 130 ; base special
-db GHOST ; species type 1
-db POISON ; species type 2
-db 45 ; catch rate
-db 190 ; base exp yield
-INCBIN "gfx/pokemon/front/gengar.pic",0,1 ; 66, sprite dimensions
-dw GengarPicFront
-dw GengarPicBack
-; attacks known at lvl 0
-db LICK
-db CONFUSE_RAY
-db NIGHT_SHADE
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20,21,24
- tmlearn 25,29,31,32
- tmlearn 34,35,36,40
- tmlearn 42,44,46,47
- tmlearn 50,54
-db 0 ; padding
+ db DEX_GENGAR ; pokedex id
+
+ db 60, 65, 60, 110, 130
+ ; hp atk def spd spc
+
+ db GHOST, POISON ; type
+ db 45 ; catch rate
+ db 190 ; base exp
+
+ INCBIN "gfx/pokemon/front/gengar.pic", 0, 1 ; sprite dimensions
+ dw GengarPicFront, GengarPicBack
+
+ db LICK, CONFUSE_RAY, NIGHT_SHADE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, MEGA_DRAIN, THUNDERBOLT, THUNDER, PSYCHIC_M, \
+ MIMIC, DOUBLE_TEAM, BIDE, METRONOME, SELFDESTRUCT, \
+ SKULL_BASH, DREAM_EATER, REST, PSYWAVE, EXPLOSION, \
+ SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/geodude.asm
+++ b/data/pokemon/base_stats/geodude.asm
@@ -1,28 +1,24 @@
-db DEX_GEODUDE ; pokedex id
-db 40 ; base hp
-db 80 ; base attack
-db 100 ; base defense
-db 20 ; base speed
-db 30 ; base special
-db ROCK ; species type 1
-db GROUND ; species type 2
-db 255 ; catch rate
-db 86 ; base exp yield
-INCBIN "gfx/pokemon/front/geodude.pic",0,1 ; 55, sprite dimensions
-dw GeodudePicFront
-dw GeodudePicBack
-; attacks known at lvl 0
-db TACKLE
-db 0
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,35,36,38
- tmlearn 44,47,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_GEODUDE ; pokedex id
+
+ db 40, 80, 100, 20, 30
+ ; hp atk def spd spc
+
+ db ROCK, GROUND ; type
+ db 255 ; catch rate
+ db 86 ; base exp
+
+ INCBIN "gfx/pokemon/front/geodude.pic", 0, 1 ; sprite dimensions
+ dw GeodudePicFront, GeodudePicBack
+
+ db TACKLE, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, EARTHQUAKE, \
+ FISSURE, DIG, MIMIC, DOUBLE_TEAM, BIDE, \
+ METRONOME, SELFDESTRUCT, FIRE_BLAST, REST, EXPLOSION, \
+ ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/gloom.asm
+++ b/data/pokemon/base_stats/gloom.asm
@@ -1,28 +1,22 @@
-db DEX_GLOOM ; pokedex id
-db 60 ; base hp
-db 65 ; base attack
-db 70 ; base defense
-db 40 ; base speed
-db 85 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 120 ; catch rate
-db 132 ; base exp yield
-INCBIN "gfx/pokemon/front/gloom.pic",0,1 ; 66, sprite dimensions
-dw GloomPicFront
-dw GloomPicBack
-; attacks known at lvl 0
-db ABSORB
-db POISONPOWDER
-db STUN_SPORE
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 3,6
- tmlearn 9,10
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_GLOOM ; pokedex id
+
+ db 60, 65, 70, 40, 85
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 120 ; catch rate
+ db 132 ; base exp
+
+ INCBIN "gfx/pokemon/front/gloom.pic", 0, 1 ; sprite dimensions
+ dw GloomPicFront, GloomPicBack
+
+ db ABSORB, POISONPOWDER, STUN_SPORE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ MEGA_DRAIN, SOLARBEAM, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, REST, SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/golbat.asm
+++ b/data/pokemon/base_stats/golbat.asm
@@ -1,28 +1,22 @@
-db DEX_GOLBAT ; pokedex id
-db 75 ; base hp
-db 80 ; base attack
-db 70 ; base defense
-db 90 ; base speed
-db 75 ; base special
-db POISON ; species type 1
-db FLYING ; species type 2
-db 90 ; catch rate
-db 171 ; base exp yield
-INCBIN "gfx/pokemon/front/golbat.pic",0,1 ; 77, sprite dimensions
-dw GolbatPicFront
-dw GolbatPicBack
-; attacks known at lvl 0
-db LEECH_LIFE
-db SCREECH
-db BITE
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,15
- tmlearn 20,21
- tmlearn 31,32
- tmlearn 34,39
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_GOLBAT ; pokedex id
+
+ db 75, 80, 70, 90, 75
+ ; hp atk def spd spc
+
+ db POISON, FLYING ; type
+ db 90 ; catch rate
+ db 171 ; base exp
+
+ INCBIN "gfx/pokemon/front/golbat.pic", 0, 1 ; sprite dimensions
+ dw GolbatPicFront, GolbatPicBack
+
+ db LEECH_LIFE, SCREECH, BITE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MEGA_DRAIN, MIMIC, DOUBLE_TEAM, \
+ BIDE, SWIFT, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/goldeen.asm
+++ b/data/pokemon/base_stats/goldeen.asm
@@ -1,28 +1,23 @@
-db DEX_GOLDEEN ; pokedex id
-db 45 ; base hp
-db 67 ; base attack
-db 60 ; base defense
-db 63 ; base speed
-db 50 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 225 ; catch rate
-db 111 ; base exp yield
-INCBIN "gfx/pokemon/front/goldeen.pic",0,1 ; 66, sprite dimensions
-dw GoldeenPicFront
-dw GoldeenPicBack
-; attacks known at lvl 0
-db PECK
-db TAIL_WHIP
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,7
- tmlearn 9,10,11,12,13,14
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_GOLDEEN ; pokedex id
+
+ db 45, 67, 60, 63, 50
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 225 ; catch rate
+ db 111 ; base exp
+
+ INCBIN "gfx/pokemon/front/goldeen.pic", 0, 1 ; sprite dimensions
+ dw GoldeenPicFront, GoldeenPicBack
+
+ db PECK, TAIL_WHIP, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, MIMIC, \
+ DOUBLE_TEAM, BIDE, SWIFT, SKULL_BASH, REST, \
+ SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/golduck.asm
+++ b/data/pokemon/base_stats/golduck.asm
@@ -1,28 +1,25 @@
-db DEX_GOLDUCK ; pokedex id
-db 80 ; base hp
-db 82 ; base attack
-db 78 ; base defense
-db 85 ; base speed
-db 80 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 75 ; catch rate
-db 174 ; base exp yield
-INCBIN "gfx/pokemon/front/golduck.pic",0,1 ; 77, sprite dimensions
-dw GolduckPicFront
-dw GolduckPicBack
-; attacks known at lvl 0
-db SCRATCH
-db TAIL_WHIP
-db DISABLE
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 17,18,19,20
- tmlearn 28,31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_GOLDUCK ; pokedex id
+
+ db 80, 82, 78, 85, 80
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 75 ; catch rate
+ db 174 ; base exp
+
+ INCBIN "gfx/pokemon/front/golduck.pic", 0, 1 ; sprite dimensions
+ dw GolduckPicFront, GolduckPicBack
+
+ db SCRATCH, TAIL_WHIP, DISABLE, NO_MOVE ; level 1 learnset
+ db 0 ; 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, PAY_DAY, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, DIG, MIMIC, DOUBLE_TEAM, BIDE, \
+ SWIFT, SKULL_BASH, REST, SUBSTITUTE, SURF, \
+ STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/golem.asm
+++ b/data/pokemon/base_stats/golem.asm
@@ -1,28 +1,24 @@
-db DEX_GOLEM ; pokedex id
-db 80 ; base hp
-db 110 ; base attack
-db 130 ; base defense
-db 45 ; base speed
-db 55 ; base special
-db ROCK ; species type 1
-db GROUND ; species type 2
-db 45 ; catch rate
-db 177 ; base exp yield
-INCBIN "gfx/pokemon/front/golem.pic",0,1 ; 66, sprite dimensions
-dw GolemPicFront
-dw GolemPicBack
-; attacks known at lvl 0
-db TACKLE
-db DEFENSE_CURL
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,35,36,38
- tmlearn 44,47,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_GOLEM ; pokedex id
+
+ db 80, 110, 130, 45, 55
+ ; hp atk def spd spc
+
+ db ROCK, GROUND ; type
+ db 45 ; catch rate
+ db 177 ; base exp
+
+ INCBIN "gfx/pokemon/front/golem.pic", 0, 1 ; sprite dimensions
+ dw GolemPicFront, GolemPicBack
+
+ db TACKLE, DEFENSE_CURL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, EARTHQUAKE, FISSURE, DIG, MIMIC, \
+ DOUBLE_TEAM, BIDE, METRONOME, SELFDESTRUCT, FIRE_BLAST, \
+ REST, EXPLOSION, ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/graveler.asm
+++ b/data/pokemon/base_stats/graveler.asm
@@ -1,28 +1,24 @@
-db DEX_GRAVELER ; pokedex id
-db 55 ; base hp
-db 95 ; base attack
-db 115 ; base defense
-db 35 ; base speed
-db 45 ; base special
-db ROCK ; species type 1
-db GROUND ; species type 2
-db 120 ; catch rate
-db 134 ; base exp yield
-INCBIN "gfx/pokemon/front/graveler.pic",0,1 ; 66, sprite dimensions
-dw GravelerPicFront
-dw GravelerPicBack
-; attacks known at lvl 0
-db TACKLE
-db DEFENSE_CURL
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,35,36,38
- tmlearn 44,47,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_GRAVELER ; pokedex id
+
+ db 55, 95, 115, 35, 45
+ ; hp atk def spd spc
+
+ db ROCK, GROUND ; type
+ db 120 ; catch rate
+ db 134 ; base exp
+
+ INCBIN "gfx/pokemon/front/graveler.pic", 0, 1 ; sprite dimensions
+ dw GravelerPicFront, GravelerPicBack
+
+ db TACKLE, DEFENSE_CURL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, EARTHQUAKE, \
+ FISSURE, DIG, MIMIC, DOUBLE_TEAM, BIDE, \
+ METRONOME, SELFDESTRUCT, FIRE_BLAST, REST, EXPLOSION, \
+ ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/grimer.asm
+++ b/data/pokemon/base_stats/grimer.asm
@@ -1,28 +1,22 @@
-db DEX_GRIMER ; pokedex id
-db 80 ; base hp
-db 80 ; base attack
-db 50 ; base defense
-db 25 ; base speed
-db 40 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 190 ; catch rate
-db 90 ; base exp yield
-INCBIN "gfx/pokemon/front/grimer.pic",0,1 ; 55, sprite dimensions
-dw GrimerPicFront
-dw GrimerPicBack
-; attacks known at lvl 0
-db POUND
-db DISABLE
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 0
- tmlearn 20,21,24
- tmlearn 25,31,32
- tmlearn 34,36,38
- tmlearn 44,47
- tmlearn 50
-db 0 ; padding
+ db DEX_GRIMER ; pokedex id
+
+ db 80, 80, 50, 25, 40
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 190 ; catch rate
+ db 90 ; base exp
+
+ INCBIN "gfx/pokemon/front/grimer.pic", 0, 1 ; sprite dimensions
+ dw GrimerPicFront, GrimerPicBack
+
+ db POUND, DISABLE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, RAGE, MEGA_DRAIN, THUNDERBOLT, \
+ THUNDER, MIMIC, DOUBLE_TEAM, BIDE, SELFDESTRUCT, \
+ FIRE_BLAST, REST, EXPLOSION, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/growlithe.asm
+++ b/data/pokemon/base_stats/growlithe.asm
@@ -1,28 +1,23 @@
-db DEX_GROWLITHE ; pokedex id
-db 55 ; base hp
-db 70 ; base attack
-db 45 ; base defense
-db 60 ; base speed
-db 50 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 190 ; catch rate
-db 91 ; base exp yield
-INCBIN "gfx/pokemon/front/growlithe.pic",0,1 ; 55, sprite dimensions
-dw GrowlithePicFront
-dw GrowlithePicBack
-; attacks known at lvl 0
-db BITE
-db ROAR
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10
- tmlearn 20,23
- tmlearn 28,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_GROWLITHE ; pokedex id
+
+ db 55, 70, 45, 60, 50
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 190 ; catch rate
+ db 91 ; base exp
+
+ INCBIN "gfx/pokemon/front/growlithe.pic", 0, 1 ; sprite dimensions
+ dw GrowlithePicFront, GrowlithePicBack
+
+ db BITE, ROAR, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ DRAGON_RAGE, DIG, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, FIRE_BLAST, SWIFT, SKULL_BASH, REST, \
+ SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/gyarados.asm
+++ b/data/pokemon/base_stats/gyarados.asm
@@ -1,28 +1,24 @@
-db DEX_GYARADOS ; pokedex id
-db 95 ; base hp
-db 125 ; base attack
-db 79 ; base defense
-db 81 ; base speed
-db 100 ; base special
-db WATER ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 214 ; base exp yield
-INCBIN "gfx/pokemon/front/gyarados.pic",0,1 ; 77, sprite dimensions
-dw GyaradosPicFront
-dw GyaradosPicBack
-; attacks known at lvl 0
-db BITE
-db DRAGON_RAGE
-db LEER
-db HYDRO_PUMP
-db 5 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20,23,24
- tmlearn 25,31,32
- tmlearn 33,34,38,40
- tmlearn 44
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_GYARADOS ; pokedex id
+
+ db 95, 125, 79, 81, 100
+ ; hp atk def spd spc
+
+ db WATER, FLYING ; type
+ db 45 ; catch rate
+ db 214 ; base exp
+
+ INCBIN "gfx/pokemon/front/gyarados.pic", 0, 1 ; sprite dimensions
+ dw GyaradosPicFront, GyaradosPicBack
+
+ db BITE, DRAGON_RAGE, LEER, HYDRO_PUMP ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, \
+ DRAGON_RAGE, THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, FIRE_BLAST, SKULL_BASH, REST, \
+ SUBSTITUTE, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/haunter.asm
+++ b/data/pokemon/base_stats/haunter.asm
@@ -1,28 +1,22 @@
-db DEX_HAUNTER ; pokedex id
-db 45 ; base hp
-db 50 ; base attack
-db 45 ; base defense
-db 95 ; base speed
-db 115 ; base special
-db GHOST ; species type 1
-db POISON ; species type 2
-db 90 ; catch rate
-db 126 ; base exp yield
-INCBIN "gfx/pokemon/front/haunter.pic",0,1 ; 66, sprite dimensions
-dw HaunterPicFront
-dw HaunterPicBack
-; attacks known at lvl 0
-db LICK
-db CONFUSE_RAY
-db NIGHT_SHADE
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 0
- tmlearn 20,21,24
- tmlearn 25,29,31,32
- tmlearn 34,36
- tmlearn 42,44,46,47
- tmlearn 50
-db 0 ; padding
+ db DEX_HAUNTER ; pokedex id
+
+ db 45, 50, 45, 95, 115
+ ; hp atk def spd spc
+
+ db GHOST, POISON ; type
+ db 90 ; catch rate
+ db 126 ; base exp
+
+ INCBIN "gfx/pokemon/front/haunter.pic", 0, 1 ; sprite dimensions
+ dw HaunterPicFront, HaunterPicBack
+
+ db LICK, CONFUSE_RAY, NIGHT_SHADE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, RAGE, MEGA_DRAIN, THUNDERBOLT, THUNDER, \
+ PSYCHIC_M, MIMIC, DOUBLE_TEAM, BIDE, SELFDESTRUCT, \
+ DREAM_EATER, REST, PSYWAVE, EXPLOSION, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/hitmonchan.asm
+++ b/data/pokemon/base_stats/hitmonchan.asm
@@ -1,28 +1,23 @@
-db DEX_HITMONCHAN ; pokedex id
-db 50 ; base hp
-db 105 ; base attack
-db 79 ; base defense
-db 76 ; base speed
-db 35 ; base special
-db FIGHTING ; species type 1
-db FIGHTING ; species type 2
-db 45 ; catch rate
-db 140 ; base exp yield
-INCBIN "gfx/pokemon/front/hitmonchan.pic",0,1 ; 66, sprite dimensions
-dw HitmonchanPicFront
-dw HitmonchanPicBack
-; attacks known at lvl 0
-db COMET_PUNCH
-db AGILITY
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 31,32
- tmlearn 34,35,39,40
- tmlearn 44
- tmlearn 50,54
-db 0 ; padding
+ db DEX_HITMONCHAN ; pokedex id
+
+ db 50, 105, 79, 76, 35
+ ; hp atk def spd spc
+
+ db FIGHTING, FIGHTING ; type
+ db 45 ; catch rate
+ db 140 ; base exp
+
+ INCBIN "gfx/pokemon/front/hitmonchan.pic", 0, 1 ; sprite dimensions
+ dw HitmonchanPicFront, HitmonchanPicBack
+
+ db COMET_PUNCH, AGILITY, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ MIMIC, DOUBLE_TEAM, BIDE, METRONOME, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/hitmonlee.asm
+++ b/data/pokemon/base_stats/hitmonlee.asm
@@ -1,28 +1,23 @@
-db DEX_HITMONLEE ; pokedex id
-db 50 ; base hp
-db 120 ; base attack
-db 53 ; base defense
-db 87 ; base speed
-db 35 ; base special
-db FIGHTING ; species type 1
-db FIGHTING ; species type 2
-db 45 ; catch rate
-db 139 ; base exp yield
-INCBIN "gfx/pokemon/front/hitmonlee.pic",0,1 ; 77, sprite dimensions
-dw HitmonleePicFront
-dw HitmonleePicBack
-; attacks known at lvl 0
-db DOUBLE_KICK
-db MEDITATE
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 31,32
- tmlearn 34,35,39,40
- tmlearn 44
- tmlearn 50,54
-db 0 ; padding
+ db DEX_HITMONLEE ; pokedex id
+
+ db 50, 120, 53, 87, 35
+ ; hp atk def spd spc
+
+ db FIGHTING, FIGHTING ; type
+ db 45 ; catch rate
+ db 139 ; base exp
+
+ INCBIN "gfx/pokemon/front/hitmonlee.pic", 0, 1 ; sprite dimensions
+ dw HitmonleePicFront, HitmonleePicBack
+
+ db DOUBLE_KICK, MEDITATE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ MIMIC, DOUBLE_TEAM, BIDE, METRONOME, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/horsea.asm
+++ b/data/pokemon/base_stats/horsea.asm
@@ -1,28 +1,23 @@
-db DEX_HORSEA ; pokedex id
-db 30 ; base hp
-db 40 ; base attack
-db 70 ; base defense
-db 60 ; base speed
-db 70 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 225 ; catch rate
-db 83 ; base exp yield
-INCBIN "gfx/pokemon/front/horsea.pic",0,1 ; 55, sprite dimensions
-dw HorseaPicFront
-dw HorseaPicBack
-; attacks known at lvl 0
-db BUBBLE
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,11,12,13,14
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_HORSEA ; pokedex id
+
+ db 30, 40, 70, 60, 70
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 225 ; catch rate
+ db 83 ; base exp
+
+ INCBIN "gfx/pokemon/front/horsea.pic", 0, 1 ; sprite dimensions
+ dw HorseaPicFront, HorseaPicBack
+
+ db BUBBLE, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, \
+ ICE_BEAM, BLIZZARD, RAGE, MIMIC, DOUBLE_TEAM, \
+ BIDE, SWIFT, SKULL_BASH, REST, SUBSTITUTE, \
+ SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/hypno.asm
+++ b/data/pokemon/base_stats/hypno.asm
@@ -1,28 +1,25 @@
-db DEX_HYPNO ; pokedex id
-db 85 ; base hp
-db 73 ; base attack
-db 70 ; base defense
-db 67 ; base speed
-db 115 ; base special
-db PSYCHIC ; species type 1
-db PSYCHIC ; species type 2
-db 75 ; catch rate
-db 165 ; base exp yield
-INCBIN "gfx/pokemon/front/hypno.pic",0,1 ; 77, sprite dimensions
-dw HypnoPicFront
-dw HypnoPicBack
-; attacks known at lvl 0
-db POUND
-db HYPNOSIS
-db DISABLE
-db CONFUSION
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20
- tmlearn 29,30,31,32
- tmlearn 33,34,35,40
- tmlearn 42,44,45,46
- tmlearn 49,50,55
-db 0 ; padding
+ db DEX_HYPNO ; pokedex id
+
+ db 85, 73, 70, 67, 115
+ ; hp atk def spd spc
+
+ db PSYCHIC, PSYCHIC ; type
+ db 75 ; catch rate
+ db 165 ; base exp
+
+ INCBIN "gfx/pokemon/front/hypno.pic", 0, 1 ; sprite dimensions
+ dw HypnoPicFront, HypnoPicBack
+
+ db POUND, HYPNOSIS, DISABLE, CONFUSION ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, PSYCHIC_M, TELEPORT, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, METRONOME, SKULL_BASH, DREAM_EATER, \
+ REST, THUNDER_WAVE, PSYWAVE, TRI_ATTACK, SUBSTITUTE, \
+ FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/ivysaur.asm
+++ b/data/pokemon/base_stats/ivysaur.asm
@@ -1,28 +1,22 @@
-db DEX_IVYSAUR ; pokedex id
-db 60 ; base hp
-db 62 ; base attack
-db 63 ; base defense
-db 60 ; base speed
-db 80 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 45 ; catch rate
-db 141 ; base exp yield
-INCBIN "gfx/pokemon/front/ivysaur.pic",0,1 ; 66, sprite dimensions
-dw IvysaurPicFront
-dw IvysaurPicBack
-; attacks known at lvl 0
-db TACKLE
-db GROWL
-db LEECH_SEED
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_IVYSAUR ; pokedex id
+
+ db 60, 62, 63, 60, 80
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 45 ; catch rate
+ db 141 ; base exp
+
+ INCBIN "gfx/pokemon/front/ivysaur.pic", 0, 1 ; sprite dimensions
+ dw IvysaurPicFront, IvysaurPicBack
+
+ db TACKLE, GROWL, LEECH_SEED, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MEGA_DRAIN, SOLARBEAM, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, REST, SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/jigglypuff.asm
+++ b/data/pokemon/base_stats/jigglypuff.asm
@@ -1,28 +1,26 @@
-db DEX_JIGGLYPUFF ; pokedex id
-db 115 ; base hp
-db 45 ; base attack
-db 20 ; base defense
-db 20 ; base speed
-db 25 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 170 ; catch rate
-db 76 ; base exp yield
-INCBIN "gfx/pokemon/front/jigglypuff.pic",0,1 ; 55, sprite dimensions
-dw JigglypuffPicFront
-dw JigglypuffPicBack
-; attacks known at lvl 0
-db SING
-db 0
-db 0
-db 0
-db 4 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 17,18,19,20,22,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,38,40
- tmlearn 44,45,46
- tmlearn 49,50,54,55
-db 0 ; padding
+ db DEX_JIGGLYPUFF ; pokedex id
+
+ db 115, 45, 20, 20, 25
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 170 ; catch rate
+ db 76 ; base exp
+
+ INCBIN "gfx/pokemon/front/jigglypuff.pic", 0, 1 ; sprite dimensions
+ dw JigglypuffPicFront, JigglypuffPicBack
+
+ db SING, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 4 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \
+ 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 0 ; padding
--- a/data/pokemon/base_stats/jolteon.asm
+++ b/data/pokemon/base_stats/jolteon.asm
@@ -1,28 +1,23 @@
-db DEX_JOLTEON ; pokedex id
-db 65 ; base hp
-db 65 ; base attack
-db 60 ; base defense
-db 130 ; base speed
-db 110 ; base special
-db ELECTRIC ; species type 1
-db ELECTRIC ; species type 2
-db 45 ; catch rate
-db 197 ; base exp yield
-INCBIN "gfx/pokemon/front/jolteon.pic",0,1 ; 66, sprite dimensions
-dw JolteonPicFront
-dw JolteonPicBack
-; attacks known at lvl 0
-db TACKLE
-db SAND_ATTACK
-db QUICK_ATTACK
-db THUNDERSHOCK
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,15
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 33,34,39,40
- tmlearn 44,45
- tmlearn 50,55
-db 0 ; padding
+ db DEX_JOLTEON ; pokedex id
+
+ db 65, 65, 60, 130, 110
+ ; hp atk def spd spc
+
+ db ELECTRIC, ELECTRIC ; type
+ db 45 ; catch rate
+ db 197 ; base exp
+
+ INCBIN "gfx/pokemon/front/jolteon.pic", 0, 1 ; sprite dimensions
+ dw JolteonPicFront, JolteonPicBack
+
+ db TACKLE, SAND_ATTACK, QUICK_ATTACK, THUNDERSHOCK ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, \
+ RAGE, THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, SWIFT, SKULL_BASH, REST, \
+ THUNDER_WAVE, SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/jynx.asm
+++ b/data/pokemon/base_stats/jynx.asm
@@ -1,28 +1,25 @@
-db DEX_JYNX ; pokedex id
-db 65 ; base hp
-db 50 ; base attack
-db 35 ; base defense
-db 95 ; base speed
-db 95 ; base special
-db ICE ; species type 1
-db PSYCHIC ; species type 2
-db 45 ; catch rate
-db 137 ; base exp yield
-INCBIN "gfx/pokemon/front/jynx.pic",0,1 ; 66, sprite dimensions
-dw JynxPicFront
-dw JynxPicBack
-; attacks known at lvl 0
-db POUND
-db LOVELY_KISS
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20
- tmlearn 29,30,31,32
- tmlearn 33,34,35,40
- tmlearn 44,46
- tmlearn 50
-db 0 ; padding
+ db DEX_JYNX ; pokedex id
+
+ db 65, 50, 35, 95, 95
+ ; hp atk def spd spc
+
+ db ICE, PSYCHIC ; type
+ db 45 ; catch rate
+ db 137 ; base exp
+
+ INCBIN "gfx/pokemon/front/jynx.pic", 0, 1 ; sprite dimensions
+ dw JynxPicFront, JynxPicBack
+
+ db POUND, LOVELY_KISS, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; 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, \
+ PSYCHIC_M, TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, METRONOME, SKULL_BASH, REST, PSYWAVE, \
+ SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/kabuto.asm
+++ b/data/pokemon/base_stats/kabuto.asm
@@ -1,28 +1,23 @@
-db DEX_KABUTO ; pokedex id
-db 30 ; base hp
-db 80 ; base attack
-db 90 ; base defense
-db 55 ; base speed
-db 45 ; base special
-db ROCK ; species type 1
-db WATER ; species type 2
-db 45 ; catch rate
-db 119 ; base exp yield
-INCBIN "gfx/pokemon/front/kabuto.pic",0,1 ; 55, sprite dimensions
-dw KabutoPicFront
-dw KabutoPicBack
-; attacks known at lvl 0
-db SCRATCH
-db HARDEN
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_KABUTO ; pokedex id
+
+ db 30, 80, 90, 55, 45
+ ; hp atk def spd spc
+
+ db ROCK, WATER ; type
+ db 45 ; catch rate
+ db 119 ; base exp
+
+ INCBIN "gfx/pokemon/front/kabuto.pic", 0, 1 ; sprite dimensions
+ dw KabutoPicFront, KabutoPicBack
+
+ db SCRATCH, HARDEN, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, REST, SUBSTITUTE, \
+ SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/kabutops.asm
+++ b/data/pokemon/base_stats/kabutops.asm
@@ -1,28 +1,24 @@
-db DEX_KABUTOPS ; pokedex id
-db 60 ; base hp
-db 115 ; base attack
-db 105 ; base defense
-db 80 ; base speed
-db 70 ; base special
-db ROCK ; species type 1
-db WATER ; species type 2
-db 45 ; catch rate
-db 201 ; base exp yield
-INCBIN "gfx/pokemon/front/kabutops.pic",0,1 ; 66, sprite dimensions
-dw KabutopsPicFront
-dw KabutopsPicBack
-; attacks known at lvl 0
-db SCRATCH
-db HARDEN
-db ABSORB
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 2,3,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,19,20
- tmlearn 31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_KABUTOPS ; pokedex id
+
+ db 60, 115, 105, 80, 70
+ ; hp atk def spd spc
+
+ db ROCK, WATER ; type
+ db 45 ; catch rate
+ db 201 ; base exp
+
+ INCBIN "gfx/pokemon/front/kabutops.pic", 0, 1 ; sprite dimensions
+ dw KabutopsPicFront, KabutopsPicBack
+
+ db SCRATCH, HARDEN, ABSORB, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, SWORDS_DANCE, MEGA_KICK, TOXIC, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, \
+ BLIZZARD, HYPER_BEAM, SUBMISSION, SEISMIC_TOSS, RAGE, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, SKULL_BASH, \
+ REST, SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/kadabra.asm
+++ b/data/pokemon/base_stats/kadabra.asm
@@ -1,28 +1,24 @@
-db DEX_KADABRA ; pokedex id
-db 40 ; base hp
-db 35 ; base attack
-db 30 ; base defense
-db 105 ; base speed
-db 120 ; base special
-db PSYCHIC ; species type 1
-db PSYCHIC ; species type 2
-db 100 ; catch rate
-db 145 ; base exp yield
-INCBIN "gfx/pokemon/front/kadabra.pic",0,1 ; 66, sprite dimensions
-dw KadabraPicFront
-dw KadabraPicBack
-; attacks known at lvl 0
-db TELEPORT
-db CONFUSION
-db DISABLE
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 28,29,30,31,32
- tmlearn 33,34,35,40
- tmlearn 44,45,46
- tmlearn 49,50,55
-db 0 ; padding
+ db DEX_KADABRA ; pokedex id
+
+ db 40, 35, 30, 105, 120
+ ; hp atk def spd spc
+
+ db PSYCHIC, PSYCHIC ; type
+ db 100 ; catch rate
+ db 145 ; base exp
+
+ INCBIN "gfx/pokemon/front/kadabra.pic", 0, 1 ; sprite dimensions
+ dw KadabraPicFront, KadabraPicBack
+
+ db TELEPORT, CONFUSION, DISABLE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ DIG, PSYCHIC_M, TELEPORT, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, METRONOME, SKULL_BASH, REST, \
+ THUNDER_WAVE, PSYWAVE, TRI_ATTACK, SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/kakuna.asm
+++ b/data/pokemon/base_stats/kakuna.asm
@@ -1,28 +1,20 @@
-db DEX_KAKUNA ; pokedex id
-db 45 ; base hp
-db 25 ; base attack
-db 50 ; base defense
-db 35 ; base speed
-db 25 ; base special
-db BUG ; species type 1
-db POISON ; species type 2
-db 120 ; catch rate
-db 71 ; base exp yield
-INCBIN "gfx/pokemon/front/kakuna.pic",0,1 ; 55, sprite dimensions
-dw KakunaPicFront
-dw KakunaPicBack
-; attacks known at lvl 0
-db HARDEN
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
-db 0 ; padding
+ db DEX_KAKUNA ; pokedex id
+
+ db 45, 25, 50, 35, 25
+ ; hp atk def spd spc
+
+ db BUG, POISON ; type
+ db 120 ; catch rate
+ db 71 ; base exp
+
+ INCBIN "gfx/pokemon/front/kakuna.pic", 0, 1 ; sprite dimensions
+ dw KakunaPicFront, KakunaPicBack
+
+ db HARDEN, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/kangaskhan.asm
+++ b/data/pokemon/base_stats/kangaskhan.asm
@@ -1,28 +1,25 @@
-db DEX_KANGASKHAN ; pokedex id
-db 105 ; base hp
-db 95 ; base attack
-db 80 ; base defense
-db 90 ; base speed
-db 40 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 45 ; catch rate
-db 175 ; base exp yield
-INCBIN "gfx/pokemon/front/kangaskhan.pic",0,1 ; 77, sprite dimensions
-dw KangaskhanPicFront
-dw KangaskhanPicBack
-; attacks known at lvl 0
-db COMET_PUNCH
-db RAGE
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20,24
- tmlearn 25,26,27,31,32
- tmlearn 34,38,40
- tmlearn 44,48
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_KANGASKHAN ; pokedex id
+
+ db 105, 95, 80, 90, 40
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 45 ; catch rate
+ db 175 ; base exp
+
+ INCBIN "gfx/pokemon/front/kangaskhan.pic", 0, 1 ; sprite dimensions
+ dw KangaskhanPicFront, KangaskhanPicBack
+
+ db COMET_PUNCH, RAGE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; 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, \
+ THUNDERBOLT, THUNDER, EARTHQUAKE, FISSURE, MIMIC, \
+ DOUBLE_TEAM, BIDE, FIRE_BLAST, SKULL_BASH, REST, \
+ ROCK_SLIDE, SUBSTITUTE, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/kingler.asm
+++ b/data/pokemon/base_stats/kingler.asm
@@ -1,28 +1,23 @@
-db DEX_KINGLER ; pokedex id
-db 55 ; base hp
-db 130 ; base attack
-db 115 ; base defense
-db 75 ; base speed
-db 50 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 60 ; catch rate
-db 206 ; base exp yield
-INCBIN "gfx/pokemon/front/kingler.pic",0,1 ; 77, sprite dimensions
-dw KinglerPicFront
-dw KinglerPicBack
-; attacks known at lvl 0
-db BUBBLE
-db LEER
-db VICEGRIP
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 34
- tmlearn 44
- tmlearn 50,51,53,54
-db 0 ; padding
+ db DEX_KINGLER ; pokedex id
+
+ db 55, 130, 115, 75, 50
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 60 ; catch rate
+ db 206 ; base exp
+
+ INCBIN "gfx/pokemon/front/kingler.pic", 0, 1 ; sprite dimensions
+ dw KinglerPicFront, KinglerPicBack
+
+ db BUBBLE, LEER, VICEGRIP, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, \
+ RAGE, MIMIC, DOUBLE_TEAM, BIDE, REST, \
+ SUBSTITUTE, CUT, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/koffing.asm
+++ b/data/pokemon/base_stats/koffing.asm
@@ -1,28 +1,22 @@
-db DEX_KOFFING ; pokedex id
-db 40 ; base hp
-db 65 ; base attack
-db 95 ; base defense
-db 35 ; base speed
-db 60 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 190 ; catch rate
-db 114 ; base exp yield
-INCBIN "gfx/pokemon/front/koffing.pic",0,1 ; 66, sprite dimensions
-dw KoffingPicFront
-dw KoffingPicBack
-; attacks known at lvl 0
-db TACKLE
-db SMOG
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 0
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 34,36,38
- tmlearn 44,47
- tmlearn 50
-db 0 ; padding
+ db DEX_KOFFING ; pokedex id
+
+ db 40, 65, 95, 35, 60
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 190 ; catch rate
+ db 114 ; base exp
+
+ INCBIN "gfx/pokemon/front/koffing.pic", 0, 1 ; sprite dimensions
+ dw KoffingPicFront, KoffingPicBack
+
+ db TACKLE, SMOG, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, RAGE, THUNDERBOLT, THUNDER, MIMIC, \
+ DOUBLE_TEAM, BIDE, SELFDESTRUCT, FIRE_BLAST, REST, \
+ EXPLOSION, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/krabby.asm
+++ b/data/pokemon/base_stats/krabby.asm
@@ -1,28 +1,23 @@
-db DEX_KRABBY ; pokedex id
-db 30 ; base hp
-db 105 ; base attack
-db 90 ; base defense
-db 50 ; base speed
-db 25 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 225 ; catch rate
-db 115 ; base exp yield
-INCBIN "gfx/pokemon/front/krabby.pic",0,1 ; 55, sprite dimensions
-dw KrabbyPicFront
-dw KrabbyPicBack
-; attacks known at lvl 0
-db BUBBLE
-db LEER
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 20
- tmlearn 31,32
- tmlearn 34
- tmlearn 44
- tmlearn 50,51,53,54
-db 0 ; padding
+ db DEX_KRABBY ; pokedex id
+
+ db 30, 105, 90, 50, 25
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 225 ; catch rate
+ db 115 ; base exp
+
+ INCBIN "gfx/pokemon/front/krabby.pic", 0, 1 ; sprite dimensions
+ dw KrabbyPicFront, KrabbyPicBack
+
+ db BUBBLE, LEER, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, \
+ MIMIC, DOUBLE_TEAM, BIDE, REST, SUBSTITUTE, \
+ CUT, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/lapras.asm
+++ b/data/pokemon/base_stats/lapras.asm
@@ -1,28 +1,25 @@
-db DEX_LAPRAS ; pokedex id
-db 130 ; base hp
-db 85 ; base attack
-db 80 ; base defense
-db 60 ; base speed
-db 95 ; base special
-db WATER ; species type 1
-db ICE ; species type 2
-db 45 ; catch rate
-db 219 ; base exp yield
-INCBIN "gfx/pokemon/front/lapras.pic",0,1 ; 77, sprite dimensions
-dw LaprasPicFront
-dw LaprasPicBack
-; attacks known at lvl 0
-db WATER_GUN
-db GROWL
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20,22,23,24
- tmlearn 25,29,31,32
- tmlearn 33,34,40
- tmlearn 44,46
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_LAPRAS ; pokedex id
+
+ db 130, 85, 80, 60, 95
+ ; hp atk def spd spc
+
+ db WATER, ICE ; type
+ db 45 ; catch rate
+ db 219 ; base exp
+
+ INCBIN "gfx/pokemon/front/lapras.pic", 0, 1 ; sprite dimensions
+ dw LaprasPicFront, LaprasPicBack
+
+ db WATER_GUN, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, \
+ RAGE, SOLARBEAM, DRAGON_RAGE, THUNDERBOLT, THUNDER, \
+ PSYCHIC_M, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SKULL_BASH, REST, PSYWAVE, SUBSTITUTE, SURF, \
+ STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/lickitung.asm
+++ b/data/pokemon/base_stats/lickitung.asm
@@ -1,28 +1,25 @@
-db DEX_LICKITUNG ; pokedex id
-db 90 ; base hp
-db 55 ; base attack
-db 75 ; base defense
-db 30 ; base speed
-db 60 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 45 ; catch rate
-db 127 ; base exp yield
-INCBIN "gfx/pokemon/front/lickitung.pic",0,1 ; 77, sprite dimensions
-dw LickitungPicFront
-dw LickitungPicBack
-; attacks known at lvl 0
-db WRAP
-db SUPERSONIC
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,3,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20,24
- tmlearn 25,26,27,31,32
- tmlearn 34,38,40
- tmlearn 44
- tmlearn 50,51,53,54
-db 0 ; padding
+ db DEX_LICKITUNG ; pokedex id
+
+ db 90, 55, 75, 30, 60
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 45 ; catch rate
+ db 127 ; base exp
+
+ INCBIN "gfx/pokemon/front/lickitung.pic", 0, 1 ; sprite dimensions
+ dw LickitungPicFront, LickitungPicBack
+
+ db WRAP, SUPERSONIC, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, SWORDS_DANCE, MEGA_KICK, TOXIC, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, \
+ BLIZZARD, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, THUNDERBOLT, THUNDER, EARTHQUAKE, FISSURE, \
+ MIMIC, DOUBLE_TEAM, BIDE, FIRE_BLAST, SKULL_BASH, \
+ REST, SUBSTITUTE, CUT, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/machamp.asm
+++ b/data/pokemon/base_stats/machamp.asm
@@ -1,28 +1,24 @@
-db DEX_MACHAMP ; pokedex id
-db 90 ; base hp
-db 130 ; base attack
-db 80 ; base defense
-db 55 ; base speed
-db 65 ; base special
-db FIGHTING ; species type 1
-db FIGHTING ; species type 2
-db 45 ; catch rate
-db 193 ; base exp yield
-INCBIN "gfx/pokemon/front/machamp.pic",0,1 ; 77, sprite dimensions
-dw MachampPicFront
-dw MachampPicBack
-; attacks known at lvl 0
-db KARATE_CHOP
-db LOW_KICK
-db LEER
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,35,38,40
- tmlearn 44,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_MACHAMP ; pokedex id
+
+ db 90, 130, 80, 55, 65
+ ; hp atk def spd spc
+
+ db FIGHTING, FIGHTING ; type
+ db 45 ; catch rate
+ db 193 ; base exp
+
+ INCBIN "gfx/pokemon/front/machamp.pic", 0, 1 ; sprite dimensions
+ dw MachampPicFront, MachampPicBack
+
+ db KARATE_CHOP, LOW_KICK, LEER, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, EARTHQUAKE, FISSURE, DIG, MIMIC, \
+ DOUBLE_TEAM, BIDE, METRONOME, FIRE_BLAST, SKULL_BASH, \
+ REST, ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/machoke.asm
+++ b/data/pokemon/base_stats/machoke.asm
@@ -1,28 +1,24 @@
-db DEX_MACHOKE ; pokedex id
-db 80 ; base hp
-db 100 ; base attack
-db 70 ; base defense
-db 45 ; base speed
-db 50 ; base special
-db FIGHTING ; species type 1
-db FIGHTING ; species type 2
-db 90 ; catch rate
-db 146 ; base exp yield
-INCBIN "gfx/pokemon/front/machoke.pic",0,1 ; 77, sprite dimensions
-dw MachokePicFront
-dw MachokePicBack
-; attacks known at lvl 0
-db KARATE_CHOP
-db LOW_KICK
-db LEER
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,35,38,40
- tmlearn 44,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_MACHOKE ; pokedex id
+
+ db 80, 100, 70, 45, 50
+ ; hp atk def spd spc
+
+ db FIGHTING, FIGHTING ; type
+ db 90 ; catch rate
+ db 146 ; base exp
+
+ INCBIN "gfx/pokemon/front/machoke.pic", 0, 1 ; sprite dimensions
+ dw MachokePicFront, MachokePicBack
+
+ db KARATE_CHOP, LOW_KICK, LEER, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ EARTHQUAKE, FISSURE, DIG, MIMIC, DOUBLE_TEAM, \
+ BIDE, METRONOME, FIRE_BLAST, SKULL_BASH, REST, \
+ ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/machop.asm
+++ b/data/pokemon/base_stats/machop.asm
@@ -1,28 +1,24 @@
-db DEX_MACHOP ; pokedex id
-db 70 ; base hp
-db 80 ; base attack
-db 50 ; base defense
-db 35 ; base speed
-db 35 ; base special
-db FIGHTING ; species type 1
-db FIGHTING ; species type 2
-db 180 ; catch rate
-db 88 ; base exp yield
-INCBIN "gfx/pokemon/front/machop.pic",0,1 ; 55, sprite dimensions
-dw MachopPicFront
-dw MachopPicBack
-; attacks known at lvl 0
-db KARATE_CHOP
-db 0
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,35,38,40
- tmlearn 44,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_MACHOP ; pokedex id
+
+ db 70, 80, 50, 35, 35
+ ; hp atk def spd spc
+
+ db FIGHTING, FIGHTING ; type
+ db 180 ; catch rate
+ db 88 ; base exp
+
+ INCBIN "gfx/pokemon/front/machop.pic", 0, 1 ; sprite dimensions
+ dw MachopPicFront, MachopPicBack
+
+ db KARATE_CHOP, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ EARTHQUAKE, FISSURE, DIG, MIMIC, DOUBLE_TEAM, \
+ BIDE, METRONOME, FIRE_BLAST, SKULL_BASH, REST, \
+ ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/magikarp.asm
+++ b/data/pokemon/base_stats/magikarp.asm
@@ -1,28 +1,20 @@
-db DEX_MAGIKARP ; pokedex id
-db 20 ; base hp
-db 10 ; base attack
-db 55 ; base defense
-db 80 ; base speed
-db 20 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 255 ; catch rate
-db 20 ; base exp yield
-INCBIN "gfx/pokemon/front/magikarp.pic",0,1 ; 66, sprite dimensions
-dw MagikarpPicFront
-dw MagikarpPicBack
-; attacks known at lvl 0
-db SPLASH
-db 0
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
-db 0 ; padding
+ db DEX_MAGIKARP ; pokedex id
+
+ db 20, 10, 55, 80, 20
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 255 ; catch rate
+ db 20 ; base exp
+
+ INCBIN "gfx/pokemon/front/magikarp.pic", 0, 1 ; sprite dimensions
+ dw MagikarpPicFront, MagikarpPicBack
+
+ db SPLASH, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/magmar.asm
+++ b/data/pokemon/base_stats/magmar.asm
@@ -1,28 +1,24 @@
-db DEX_MAGMAR ; pokedex id
-db 65 ; base hp
-db 95 ; base attack
-db 57 ; base defense
-db 93 ; base speed
-db 85 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 45 ; catch rate
-db 167 ; base exp yield
-INCBIN "gfx/pokemon/front/magmar.pic",0,1 ; 66, sprite dimensions
-dw MagmarPicFront
-dw MagmarPicBack
-; attacks known at lvl 0
-db EMBER
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20
- tmlearn 29,30,31,32
- tmlearn 34,35,38,40
- tmlearn 44,46
- tmlearn 50,54
-db 0 ; padding
+ db DEX_MAGMAR ; pokedex id
+
+ db 65, 95, 57, 93, 85
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 45 ; catch rate
+ db 167 ; base exp
+
+ INCBIN "gfx/pokemon/front/magmar.pic", 0, 1 ; sprite dimensions
+ dw MagmarPicFront, MagmarPicBack
+
+ db EMBER, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, PSYCHIC_M, TELEPORT, MIMIC, DOUBLE_TEAM, \
+ BIDE, METRONOME, FIRE_BLAST, SKULL_BASH, REST, \
+ PSYWAVE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/magnemite.asm
+++ b/data/pokemon/base_stats/magnemite.asm
@@ -1,28 +1,23 @@
-db DEX_MAGNEMITE ; pokedex id
-db 25 ; base hp
-db 35 ; base attack
-db 70 ; base defense
-db 45 ; base speed
-db 95 ; base special
-db ELECTRIC ; species type 1
-db ELECTRIC ; species type 2
-db 190 ; catch rate
-db 89 ; base exp yield
-INCBIN "gfx/pokemon/front/magnemite.pic",0,1 ; 55, sprite dimensions
-dw MagnemitePicFront
-dw MagnemitePicBack
-; attacks known at lvl 0
-db TACKLE
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10
- tmlearn 20,24
- tmlearn 25,30,31,32
- tmlearn 33,34,39
- tmlearn 44,45
- tmlearn 50,55
-db 0 ; padding
+ db DEX_MAGNEMITE ; pokedex id
+
+ db 25, 35, 70, 45, 95
+ ; hp atk def spd spc
+
+ db ELECTRIC, ELECTRIC ; type
+ db 190 ; catch rate
+ db 89 ; base exp
+
+ INCBIN "gfx/pokemon/front/magnemite.pic", 0, 1 ; sprite dimensions
+ dw MagnemitePicFront, MagnemitePicBack
+
+ db TACKLE, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, RAGE, THUNDERBOLT, \
+ THUNDER, TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SWIFT, REST, THUNDER_WAVE, SUBSTITUTE, \
+ FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/magneton.asm
+++ b/data/pokemon/base_stats/magneton.asm
@@ -1,28 +1,23 @@
-db DEX_MAGNETON ; pokedex id
-db 50 ; base hp
-db 60 ; base attack
-db 95 ; base defense
-db 70 ; base speed
-db 120 ; base special
-db ELECTRIC ; species type 1
-db ELECTRIC ; species type 2
-db 60 ; catch rate
-db 161 ; base exp yield
-INCBIN "gfx/pokemon/front/magneton.pic",0,1 ; 66, sprite dimensions
-dw MagnetonPicFront
-dw MagnetonPicBack
-; attacks known at lvl 0
-db TACKLE
-db SONICBOOM
-db THUNDERSHOCK
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,15
- tmlearn 20,24
- tmlearn 25,30,31,32
- tmlearn 33,34,39
- tmlearn 44,45
- tmlearn 50,55
-db 0 ; padding
+ db DEX_MAGNETON ; pokedex id
+
+ db 50, 60, 95, 70, 120
+ ; hp atk def spd spc
+
+ db ELECTRIC, ELECTRIC ; type
+ db 60 ; catch rate
+ db 161 ; base exp
+
+ INCBIN "gfx/pokemon/front/magneton.pic", 0, 1 ; sprite dimensions
+ dw MagnetonPicFront, MagnetonPicBack
+
+ db TACKLE, SONICBOOM, THUNDERSHOCK, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, RAGE, \
+ THUNDERBOLT, THUNDER, TELEPORT, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, SWIFT, REST, THUNDER_WAVE, \
+ SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/mankey.asm
+++ b/data/pokemon/base_stats/mankey.asm
@@ -1,28 +1,24 @@
-db DEX_MANKEY ; pokedex id
-db 40 ; base hp
-db 80 ; base attack
-db 35 ; base defense
-db 70 ; base speed
-db 35 ; base special
-db FIGHTING ; species type 1
-db FIGHTING ; species type 2
-db 190 ; catch rate
-db 74 ; base exp yield
-INCBIN "gfx/pokemon/front/mankey.pic",0,1 ; 55, sprite dimensions
-dw MankeyPicFront
-dw MankeyPicBack
-; attacks known at lvl 0
-db SCRATCH
-db LEER
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,16
- tmlearn 17,18,19,20,24
- tmlearn 25,28,31,32
- tmlearn 34,35,39,40
- tmlearn 44,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_MANKEY ; pokedex id
+
+ db 40, 80, 35, 70, 35
+ ; hp atk def spd spc
+
+ db FIGHTING, FIGHTING ; type
+ db 190 ; catch rate
+ db 74 ; base exp
+
+ INCBIN "gfx/pokemon/front/mankey.pic", 0, 1 ; sprite dimensions
+ dw MankeyPicFront, MankeyPicBack
+
+ db SCRATCH, LEER, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, 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 0 ; padding
--- a/data/pokemon/base_stats/marowak.asm
+++ b/data/pokemon/base_stats/marowak.asm
@@ -1,28 +1,25 @@
-db DEX_MAROWAK ; pokedex id
-db 60 ; base hp
-db 80 ; base attack
-db 110 ; base defense
-db 45 ; base speed
-db 50 ; base special
-db GROUND ; species type 1
-db GROUND ; species type 2
-db 75 ; catch rate
-db 124 ; base exp yield
-INCBIN "gfx/pokemon/front/marowak.pic",0,1 ; 66, sprite dimensions
-dw MarowakPicFront
-dw MarowakPicBack
-; attacks known at lvl 0
-db BONE_CLUB
-db GROWL
-db LEER
-db FOCUS_ENERGY
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,38,40
- tmlearn 44
- tmlearn 50,54
-db 0 ; padding
+ db DEX_MAROWAK ; pokedex id
+
+ db 60, 80, 110, 45, 50
+ ; hp atk def spd spc
+
+ db GROUND, GROUND ; type
+ db 75 ; catch rate
+ db 124 ; base exp
+
+ INCBIN "gfx/pokemon/front/marowak.pic", 0, 1 ; sprite dimensions
+ dw MarowakPicFront, MarowakPicBack
+
+ db BONE_CLUB, GROWL, LEER, FOCUS_ENERGY ; level 1 learnset
+ db 0 ; 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, \
+ EARTHQUAKE, FISSURE, DIG, MIMIC, DOUBLE_TEAM, \
+ BIDE, FIRE_BLAST, SKULL_BASH, REST, SUBSTITUTE, \
+ STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/meowth.asm
+++ b/data/pokemon/base_stats/meowth.asm
@@ -1,28 +1,23 @@
-db DEX_MEOWTH ; pokedex id
-db 40 ; base hp
-db 45 ; base attack
-db 35 ; base defense
-db 90 ; base speed
-db 40 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 255 ; catch rate
-db 69 ; base exp yield
-INCBIN "gfx/pokemon/front/meowth.pic",0,1 ; 55, sprite dimensions
-dw MeowthPicFront
-dw MeowthPicBack
-; attacks known at lvl 0
-db SCRATCH
-db GROWL
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,16
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_MEOWTH ; pokedex id
+
+ db 40, 45, 35, 90, 40
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 255 ; catch rate
+ db 69 ; base exp
+
+ INCBIN "gfx/pokemon/front/meowth.pic", 0, 1 ; sprite dimensions
+ dw MeowthPicFront, MeowthPicBack
+
+ db SCRATCH, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, PAY_DAY, RAGE, THUNDERBOLT, THUNDER, \
+ MIMIC, DOUBLE_TEAM, BIDE, SWIFT, SKULL_BASH, \
+ REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/metapod.asm
+++ b/data/pokemon/base_stats/metapod.asm
@@ -1,28 +1,20 @@
-db DEX_METAPOD ; pokedex id
-db 50 ; base hp
-db 20 ; base attack
-db 55 ; base defense
-db 30 ; base speed
-db 25 ; base special
-db BUG ; species type 1
-db BUG ; species type 2
-db 120 ; catch rate
-db 72 ; base exp yield
-INCBIN "gfx/pokemon/front/metapod.pic",0,1 ; 55, sprite dimensions
-dw MetapodPicFront
-dw MetapodPicBack
-; attacks known at lvl 0
-db HARDEN
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
-db 0 ; padding
+ db DEX_METAPOD ; pokedex id
+
+ db 50, 20, 55, 30, 25
+ ; hp atk def spd spc
+
+ db BUG, BUG ; type
+ db 120 ; catch rate
+ db 72 ; base exp
+
+ INCBIN "gfx/pokemon/front/metapod.pic", 0, 1 ; sprite dimensions
+ dw MetapodPicFront, MetapodPicBack
+
+ db HARDEN, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/mew.asm
+++ b/data/pokemon/base_stats/mew.asm
@@ -1,29 +1,31 @@
-MewBaseStats::
-db DEX_MEW ; pokedex id
-db 100 ; base hp
-db 100 ; base attack
-db 100 ; base defense
-db 100 ; base speed
-db 100 ; base special
-db PSYCHIC ; species type 1
-db PSYCHIC ; species type 2
-db 45 ; catch rate
-db 64 ; base exp yield
-INCBIN "gfx/pokemon/front/mew.pic",0,1 ; 55, sprite dimensions
-dw MewPicFront
-dw MewPicBack
-; attacks known at lvl 0
-db POUND
-db 0
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,2,3,4,5,6,7,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 17,18,19,20,21,22,23,24
- tmlearn 25,26,27,28,29,30,31,32
- tmlearn 33,34,35,36,37,38,39,40
- tmlearn 41,42,43,44,45,46,47,48
- tmlearn 49,50,51,52,53,54,55,56
-db %11111111 ; usually spacing
+ db DEX_MEW ; pokedex id
+
+ db 100, 100, 100, 100, 100
+ ; hp atk def spd spc
+
+ db PSYCHIC, PSYCHIC ; type
+ db 45 ; catch rate
+ db 64 ; base exp
+
+ INCBIN "gfx/pokemon/front/mew.pic", 0, 1 ; sprite dimensions
+ dw MewPicFront, MewPicBack
+
+ db POUND, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, RAZOR_WIND, SWORDS_DANCE, WHIRLWIND, MEGA_KICK, \
+ TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, \
+ PAY_DAY, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ MEGA_DRAIN, SOLARBEAM, DRAGON_RAGE, THUNDERBOLT, THUNDER, \
+ EARTHQUAKE, FISSURE, DIG, PSYCHIC_M, TELEPORT, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, METRONOME, \
+ SELFDESTRUCT, EGG_BOMB, FIRE_BLAST, SWIFT, SKULL_BASH, \
+ SOFTBOILED, DREAM_EATER, SKY_ATTACK, REST, THUNDER_WAVE, \
+ PSYWAVE, EXPLOSION, ROCK_SLIDE, TRI_ATTACK, SUBSTITUTE, \
+ CUT, FLY, SURF, STRENGTH, FLASH, \
+ UNUSED
+ ; end
+
+ db %11111111 ; padding
--- a/data/pokemon/base_stats/mewtwo.asm
+++ b/data/pokemon/base_stats/mewtwo.asm
@@ -1,28 +1,27 @@
-db DEX_MEWTWO ; pokedex id
-db 106 ; base hp
-db 110 ; base attack
-db 90 ; base defense
-db 130 ; base speed
-db 154 ; base special
-db PSYCHIC ; species type 1
-db PSYCHIC ; species type 2
-db 3 ; catch rate
-db 220 ; base exp yield
-INCBIN "gfx/pokemon/front/mewtwo.pic",0,1 ; 77, sprite dimensions
-dw MewtwoPicFront
-dw MewtwoPicBack
-; attacks known at lvl 0
-db CONFUSION
-db DISABLE
-db SWIFT
-db PSYCHIC_M
-db 5 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 17,18,19,20,22,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,35,36,38,40
- tmlearn 44,45,46
- tmlearn 49,50,54,55
-db 0 ; padding
+ db DEX_MEWTWO ; pokedex id
+
+ db 106, 110, 90, 130, 154
+ ; hp atk def spd spc
+
+ db PSYCHIC, PSYCHIC ; type
+ db 3 ; catch rate
+ db 220 ; base exp
+
+ INCBIN "gfx/pokemon/front/mewtwo.pic", 0, 1 ; sprite dimensions
+ dw MewtwoPicFront, MewtwoPicBack
+
+ db CONFUSION, DISABLE, SWIFT, PSYCHIC_M ; level 1 learnset
+ db 5 ; 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, PAY_DAY, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, SOLARBEAM, THUNDERBOLT, THUNDER, PSYCHIC_M, \
+ TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ METRONOME, SELFDESTRUCT, FIRE_BLAST, SKULL_BASH, REST, \
+ THUNDER_WAVE, PSYWAVE, TRI_ATTACK, SUBSTITUTE, STRENGTH, \
+ FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/moltres.asm
+++ b/data/pokemon/base_stats/moltres.asm
@@ -1,28 +1,23 @@
-db DEX_MOLTRES ; pokedex id
-db 90 ; base hp
-db 100 ; base attack
-db 90 ; base defense
-db 90 ; base speed
-db 125 ; base special
-db FIRE ; species type 1
-db FLYING ; species type 2
-db 3 ; catch rate
-db 217 ; base exp yield
-INCBIN "gfx/pokemon/front/moltres.pic",0,1 ; 77, sprite dimensions
-dw MoltresPicFront
-dw MoltresPicBack
-; attacks known at lvl 0
-db PECK
-db FIRE_SPIN
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,38,39
- tmlearn 43,44
- tmlearn 50,52
-db 0 ; padding
+ db DEX_MOLTRES ; pokedex id
+
+ db 90, 100, 90, 90, 125
+ ; hp atk def spd spc
+
+ db FIRE, FLYING ; type
+ db 3 ; catch rate
+ db 217 ; base exp
+
+ INCBIN "gfx/pokemon/front/moltres.pic", 0, 1 ; sprite dimensions
+ dw MoltresPicFront, MoltresPicBack
+
+ db PECK, FIRE_SPIN, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, FIRE_BLAST, SWIFT, SKY_ATTACK, REST, \
+ SUBSTITUTE, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/mrmime.asm
+++ b/data/pokemon/base_stats/mrmime.asm
@@ -1,28 +1,25 @@
-db DEX_MR_MIME ; pokedex id
-db 40 ; base hp
-db 45 ; base attack
-db 65 ; base defense
-db 90 ; base speed
-db 100 ; base special
-db PSYCHIC ; species type 1
-db PSYCHIC ; species type 2
-db 45 ; catch rate
-db 136 ; base exp yield
-INCBIN "gfx/pokemon/front/mr.mime.pic",0,1 ; 66, sprite dimensions
-dw MrMimePicFront
-dw MrMimePicBack
-; attacks known at lvl 0
-db CONFUSION
-db BARRIER
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15
- tmlearn 17,18,19,20,22,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,35,40
- tmlearn 44,45,46
- tmlearn 50,55
-db 0 ; padding
+ db DEX_MR_MIME ; pokedex id
+
+ db 40, 45, 65, 90, 100
+ ; hp atk def spd spc
+
+ db PSYCHIC, PSYCHIC ; type
+ db 45 ; catch rate
+ db 136 ; base exp
+
+ INCBIN "gfx/pokemon/front/mr.mime.pic", 0, 1 ; sprite dimensions
+ dw MrMimePicFront, MrMimePicBack
+
+ db CONFUSION, BARRIER, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, SOLARBEAM, THUNDERBOLT, THUNDER, PSYCHIC_M, \
+ TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ METRONOME, SKULL_BASH, REST, THUNDER_WAVE, PSYWAVE, \
+ SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/muk.asm
+++ b/data/pokemon/base_stats/muk.asm
@@ -1,28 +1,22 @@
-db DEX_MUK ; pokedex id
-db 105 ; base hp
-db 105 ; base attack
-db 75 ; base defense
-db 50 ; base speed
-db 65 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 75 ; catch rate
-db 157 ; base exp yield
-INCBIN "gfx/pokemon/front/muk.pic",0,1 ; 77, sprite dimensions
-dw MukPicFront
-dw MukPicBack
-; attacks known at lvl 0
-db POUND
-db DISABLE
-db POISON_GAS
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 15
- tmlearn 20,21,24
- tmlearn 25,31,32
- tmlearn 34,36,38
- tmlearn 44,47
- tmlearn 50
-db 0 ; padding
+ db DEX_MUK ; pokedex id
+
+ db 105, 105, 75, 50, 65
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 75 ; catch rate
+ db 157 ; base exp
+
+ INCBIN "gfx/pokemon/front/muk.pic", 0, 1 ; sprite dimensions
+ dw MukPicFront, MukPicBack
+
+ db POUND, DISABLE, POISON_GAS, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, HYPER_BEAM, RAGE, MEGA_DRAIN, \
+ THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, BIDE, \
+ SELFDESTRUCT, FIRE_BLAST, REST, EXPLOSION, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/nidoking.asm
+++ b/data/pokemon/base_stats/nidoking.asm
@@ -1,28 +1,26 @@
-db DEX_NIDOKING ; pokedex id
-db 81 ; base hp
-db 92 ; base attack
-db 77 ; base defense
-db 85 ; base speed
-db 75 ; base special
-db POISON ; species type 1
-db GROUND ; species type 2
-db 45 ; catch rate
-db 195 ; base exp yield
-INCBIN "gfx/pokemon/front/nidoking.pic",0,1 ; 77, sprite dimensions
-dw NidokingPicFront
-dw NidokingPicBack
-; attacks known at lvl 0
-db TACKLE
-db HORN_ATTACK
-db POISON_STING
-db THRASH
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,7,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 17,18,19,20,24
- tmlearn 25,26,27,31,32
- tmlearn 33,34,38,40
- tmlearn 44,48
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_NIDOKING ; pokedex id
+
+ db 81, 92, 77, 85, 75
+ ; hp atk def spd spc
+
+ db POISON, GROUND ; type
+ db 45 ; catch rate
+ db 195 ; base exp
+
+ INCBIN "gfx/pokemon/front/nidoking.pic", 0, 1 ; sprite dimensions
+ dw NidokingPicFront, NidokingPicBack
+
+ db TACKLE, HORN_ATTACK, POISON_STING, THRASH ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, HORN_DRILL, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, \
+ BLIZZARD, HYPER_BEAM, PAY_DAY, SUBMISSION, COUNTER, \
+ SEISMIC_TOSS, RAGE, THUNDERBOLT, THUNDER, EARTHQUAKE, \
+ FISSURE, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ FIRE_BLAST, SKULL_BASH, REST, ROCK_SLIDE, SUBSTITUTE, \
+ SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/nidoqueen.asm
+++ b/data/pokemon/base_stats/nidoqueen.asm
@@ -1,28 +1,26 @@
-db DEX_NIDOQUEEN ; pokedex id
-db 90 ; base hp
-db 82 ; base attack
-db 87 ; base defense
-db 76 ; base speed
-db 75 ; base special
-db POISON ; species type 1
-db GROUND ; species type 2
-db 45 ; catch rate
-db 194 ; base exp yield
-INCBIN "gfx/pokemon/front/nidoqueen.pic",0,1 ; 77, sprite dimensions
-dw NidoqueenPicFront
-dw NidoqueenPicBack
-; attacks known at lvl 0
-db TACKLE
-db SCRATCH
-db TAIL_WHIP
-db BODY_SLAM
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,7,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 17,18,19,20,24
- tmlearn 25,26,27,31,32
- tmlearn 33,34,38,40
- tmlearn 44,48
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_NIDOQUEEN ; pokedex id
+
+ db 90, 82, 87, 76, 75
+ ; hp atk def spd spc
+
+ db POISON, GROUND ; type
+ db 45 ; catch rate
+ db 194 ; base exp
+
+ INCBIN "gfx/pokemon/front/nidoqueen.pic", 0, 1 ; sprite dimensions
+ dw NidoqueenPicFront, NidoqueenPicBack
+
+ db TACKLE, SCRATCH, TAIL_WHIP, BODY_SLAM ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, HORN_DRILL, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, \
+ BLIZZARD, HYPER_BEAM, PAY_DAY, SUBMISSION, COUNTER, \
+ SEISMIC_TOSS, RAGE, THUNDERBOLT, THUNDER, EARTHQUAKE, \
+ FISSURE, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ FIRE_BLAST, SKULL_BASH, REST, ROCK_SLIDE, SUBSTITUTE, \
+ SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/nidoranf.asm
+++ b/data/pokemon/base_stats/nidoranf.asm
@@ -1,28 +1,22 @@
-db DEX_NIDORAN_F ; pokedex id
-db 55 ; base hp
-db 47 ; base attack
-db 52 ; base defense
-db 41 ; base speed
-db 40 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 235 ; catch rate
-db 59 ; base exp yield
-INCBIN "gfx/pokemon/front/nidoranf.pic",0,1 ; 55, sprite dimensions
-dw NidoranFPicFront
-dw NidoranFPicBack
-; attacks known at lvl 0
-db GROWL
-db TACKLE
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,14
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_NIDORAN_F ; pokedex id
+
+ db 55, 47, 52, 41, 40
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 235 ; catch rate
+ db 59 ; base exp
+
+ INCBIN "gfx/pokemon/front/nidoranf.pic", 0, 1 ; sprite dimensions
+ dw NidoranFPicFront, NidoranFPicBack
+
+ db GROWL, TACKLE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BLIZZARD, \
+ RAGE, THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/nidoranm.asm
+++ b/data/pokemon/base_stats/nidoranm.asm
@@ -1,28 +1,23 @@
-db DEX_NIDORAN_M ; pokedex id
-db 46 ; base hp
-db 57 ; base attack
-db 40 ; base defense
-db 50 ; base speed
-db 40 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 235 ; catch rate
-db 60 ; base exp yield
-INCBIN "gfx/pokemon/front/nidoranm.pic",0,1 ; 55, sprite dimensions
-dw NidoranMPicFront
-dw NidoranMPicBack
-; attacks known at lvl 0
-db LEER
-db TACKLE
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,14
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_NIDORAN_M ; pokedex id
+
+ db 46, 57, 40, 50, 40
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 235 ; catch rate
+ db 60 ; base exp
+
+ INCBIN "gfx/pokemon/front/nidoranm.pic", 0, 1 ; sprite dimensions
+ dw NidoranMPicFront, NidoranMPicBack
+
+ db LEER, TACKLE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BLIZZARD, RAGE, THUNDERBOLT, THUNDER, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, SKULL_BASH, REST, \
+ SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/nidorina.asm
+++ b/data/pokemon/base_stats/nidorina.asm
@@ -1,28 +1,23 @@
-db DEX_NIDORINA ; pokedex id
-db 70 ; base hp
-db 62 ; base attack
-db 67 ; base defense
-db 56 ; base speed
-db 55 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 120 ; catch rate
-db 117 ; base exp yield
-INCBIN "gfx/pokemon/front/nidorina.pic",0,1 ; 66, sprite dimensions
-dw NidorinaPicFront
-dw NidorinaPicBack
-; attacks known at lvl 0
-db GROWL
-db TACKLE
-db SCRATCH
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,11,12,13,14
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_NIDORINA ; pokedex id
+
+ db 70, 62, 67, 56, 55
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 120 ; catch rate
+ db 117 ; base exp
+
+ INCBIN "gfx/pokemon/front/nidorina.pic", 0, 1 ; sprite dimensions
+ dw NidorinaPicFront, NidorinaPicBack
+
+ db GROWL, TACKLE, SCRATCH, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, \
+ THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/nidorino.asm
+++ b/data/pokemon/base_stats/nidorino.asm
@@ -1,28 +1,23 @@
-db DEX_NIDORINO ; pokedex id
-db 61 ; base hp
-db 72 ; base attack
-db 57 ; base defense
-db 65 ; base speed
-db 55 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 120 ; catch rate
-db 118 ; base exp yield
-INCBIN "gfx/pokemon/front/nidorino.pic",0,1 ; 66, sprite dimensions
-dw NidorinoPicFront
-dw NidorinoPicBack
-; attacks known at lvl 0
-db LEER
-db TACKLE
-db HORN_ATTACK
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,11,12,13,14
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_NIDORINO ; pokedex id
+
+ db 61, 72, 57, 65, 55
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 120 ; catch rate
+ db 118 ; base exp
+
+ INCBIN "gfx/pokemon/front/nidorino.pic", 0, 1 ; sprite dimensions
+ dw NidorinoPicFront, NidorinoPicBack
+
+ db LEER, TACKLE, HORN_ATTACK, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, \
+ THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/ninetales.asm
+++ b/data/pokemon/base_stats/ninetales.asm
@@ -1,28 +1,23 @@
-db DEX_NINETALES ; pokedex id
-db 73 ; base hp
-db 76 ; base attack
-db 75 ; base defense
-db 100 ; base speed
-db 100 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 75 ; catch rate
-db 178 ; base exp yield
-INCBIN "gfx/pokemon/front/ninetales.pic",0,1 ; 77, sprite dimensions
-dw NinetalesPicFront
-dw NinetalesPicBack
-; attacks known at lvl 0
-db EMBER
-db TAIL_WHIP
-db QUICK_ATTACK
-db ROAR
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 28,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_NINETALES ; pokedex id
+
+ db 73, 76, 75, 100, 100
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 75 ; catch rate
+ db 178 ; base exp
+
+ INCBIN "gfx/pokemon/front/ninetales.pic", 0, 1 ; sprite dimensions
+ dw NinetalesPicFront, NinetalesPicBack
+
+ db EMBER, TAIL_WHIP, QUICK_ATTACK, ROAR ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, \
+ RAGE, DIG, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, FIRE_BLAST, SWIFT, SKULL_BASH, REST, \
+ SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/oddish.asm
+++ b/data/pokemon/base_stats/oddish.asm
@@ -1,28 +1,22 @@
-db DEX_ODDISH ; pokedex id
-db 45 ; base hp
-db 50 ; base attack
-db 55 ; base defense
-db 30 ; base speed
-db 75 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 255 ; catch rate
-db 78 ; base exp yield
-INCBIN "gfx/pokemon/front/oddish.pic",0,1 ; 55, sprite dimensions
-dw OddishPicFront
-dw OddishPicBack
-; attacks known at lvl 0
-db ABSORB
-db 0
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 3,6
- tmlearn 9,10
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_ODDISH ; pokedex id
+
+ db 45, 50, 55, 30, 75
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 255 ; catch rate
+ db 78 ; base exp
+
+ INCBIN "gfx/pokemon/front/oddish.pic", 0, 1 ; sprite dimensions
+ dw OddishPicFront, OddishPicBack
+
+ db ABSORB, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ MEGA_DRAIN, SOLARBEAM, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, REST, SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/omanyte.asm
+++ b/data/pokemon/base_stats/omanyte.asm
@@ -1,28 +1,23 @@
-db DEX_OMANYTE ; pokedex id
-db 35 ; base hp
-db 40 ; base attack
-db 100 ; base defense
-db 35 ; base speed
-db 90 ; base special
-db ROCK ; species type 1
-db WATER ; species type 2
-db 45 ; catch rate
-db 120 ; base exp yield
-INCBIN "gfx/pokemon/front/omanyte.pic",0,1 ; 55, sprite dimensions
-dw OmanytePicFront
-dw OmanytePicBack
-; attacks known at lvl 0
-db WATER_GUN
-db WITHDRAW
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_OMANYTE ; pokedex id
+
+ db 35, 40, 100, 35, 90
+ ; hp atk def spd spc
+
+ db ROCK, WATER ; type
+ db 45 ; catch rate
+ db 120 ; base exp
+
+ INCBIN "gfx/pokemon/front/omanyte.pic", 0, 1 ; sprite dimensions
+ dw OmanytePicFront, OmanytePicBack
+
+ db WATER_GUN, WITHDRAW, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, REST, SUBSTITUTE, \
+ SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/omastar.asm
+++ b/data/pokemon/base_stats/omastar.asm
@@ -1,28 +1,24 @@
-db DEX_OMASTAR ; pokedex id
-db 70 ; base hp
-db 60 ; base attack
-db 125 ; base defense
-db 55 ; base speed
-db 115 ; base special
-db ROCK ; species type 1
-db WATER ; species type 2
-db 45 ; catch rate
-db 199 ; base exp yield
-INCBIN "gfx/pokemon/front/omastar.pic",0,1 ; 66, sprite dimensions
-dw OmastarPicFront
-dw OmastarPicBack
-; attacks known at lvl 0
-db WATER_GUN
-db WITHDRAW
-db HORN_ATTACK
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,19,20
- tmlearn 31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_OMASTAR ; pokedex id
+
+ db 70, 60, 125, 55, 115
+ ; hp atk def spd spc
+
+ db ROCK, WATER ; type
+ db 45 ; catch rate
+ db 199 ; base exp
+
+ INCBIN "gfx/pokemon/front/omastar.pic", 0, 1 ; sprite dimensions
+ dw OmastarPicFront, OmastarPicBack
+
+ db WATER_GUN, WITHDRAW, HORN_ATTACK, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, \
+ SUBMISSION, SEISMIC_TOSS, RAGE, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, SKULL_BASH, REST, SUBSTITUTE, \
+ SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/onix.asm
+++ b/data/pokemon/base_stats/onix.asm
@@ -1,28 +1,23 @@
-db DEX_ONIX ; pokedex id
-db 35 ; base hp
-db 45 ; base attack
-db 160 ; base defense
-db 70 ; base speed
-db 30 ; base special
-db ROCK ; species type 1
-db GROUND ; species type 2
-db 45 ; catch rate
-db 108 ; base exp yield
-INCBIN "gfx/pokemon/front/onix.pic",0,1 ; 77, sprite dimensions
-dw OnixPicFront
-dw OnixPicBack
-; attacks known at lvl 0
-db TACKLE
-db SCREECH
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10
- tmlearn 20
- tmlearn 26,27,28,31,32
- tmlearn 34,36,40
- tmlearn 44,47,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_ONIX ; pokedex id
+
+ db 35, 45, 160, 70, 30
+ ; hp atk def spd spc
+
+ db ROCK, GROUND ; type
+ db 45 ; catch rate
+ db 108 ; base exp
+
+ INCBIN "gfx/pokemon/front/onix.pic", 0, 1 ; sprite dimensions
+ dw OnixPicFront, OnixPicBack
+
+ db TACKLE, SCREECH, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ EARTHQUAKE, FISSURE, DIG, MIMIC, DOUBLE_TEAM, \
+ BIDE, SELFDESTRUCT, SKULL_BASH, REST, EXPLOSION, \
+ ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/paras.asm
+++ b/data/pokemon/base_stats/paras.asm
@@ -1,28 +1,23 @@
-db DEX_PARAS ; pokedex id
-db 35 ; base hp
-db 70 ; base attack
-db 55 ; base defense
-db 25 ; base speed
-db 55 ; base special
-db BUG ; species type 1
-db GRASS ; species type 2
-db 190 ; catch rate
-db 70 ; base exp yield
-INCBIN "gfx/pokemon/front/paras.pic",0,1 ; 55, sprite dimensions
-dw ParasPicFront
-dw ParasPicBack
-; attacks known at lvl 0
-db SCRATCH
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10
- tmlearn 20,21,22
- tmlearn 28,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_PARAS ; pokedex id
+
+ db 35, 70, 55, 25, 55
+ ; hp atk def spd spc
+
+ db BUG, GRASS ; type
+ db 190 ; catch rate
+ db 70 ; base exp
+
+ INCBIN "gfx/pokemon/front/paras.pic", 0, 1 ; sprite dimensions
+ dw ParasPicFront, ParasPicBack
+
+ db SCRATCH, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MEGA_DRAIN, SOLARBEAM, DIG, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, SKULL_BASH, REST, \
+ SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/parasect.asm
+++ b/data/pokemon/base_stats/parasect.asm
@@ -1,28 +1,23 @@
-db DEX_PARASECT ; pokedex id
-db 60 ; base hp
-db 95 ; base attack
-db 80 ; base defense
-db 30 ; base speed
-db 80 ; base special
-db BUG ; species type 1
-db GRASS ; species type 2
-db 75 ; catch rate
-db 128 ; base exp yield
-INCBIN "gfx/pokemon/front/parasect.pic",0,1 ; 77, sprite dimensions
-dw ParasectPicFront
-dw ParasectPicBack
-; attacks known at lvl 0
-db SCRATCH
-db STUN_SPORE
-db LEECH_LIFE
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,15
- tmlearn 20,21,22
- tmlearn 28,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_PARASECT ; pokedex id
+
+ db 60, 95, 80, 30, 80
+ ; hp atk def spd spc
+
+ db BUG, GRASS ; type
+ db 75 ; catch rate
+ db 128 ; base exp
+
+ INCBIN "gfx/pokemon/front/parasect.pic", 0, 1 ; sprite dimensions
+ dw ParasectPicFront, ParasectPicBack
+
+ db SCRATCH, STUN_SPORE, LEECH_LIFE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MEGA_DRAIN, SOLARBEAM, DIG, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, SKULL_BASH, \
+ REST, SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/persian.asm
+++ b/data/pokemon/base_stats/persian.asm
@@ -1,28 +1,23 @@
-db DEX_PERSIAN ; pokedex id
-db 65 ; base hp
-db 70 ; base attack
-db 60 ; base defense
-db 115 ; base speed
-db 65 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 90 ; catch rate
-db 148 ; base exp yield
-INCBIN "gfx/pokemon/front/persian.pic",0,1 ; 77, sprite dimensions
-dw PersianPicFront
-dw PersianPicBack
-; attacks known at lvl 0
-db SCRATCH
-db GROWL
-db BITE
-db SCREECH
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,15,16
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_PERSIAN ; pokedex id
+
+ db 65, 70, 60, 115, 65
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 90 ; catch rate
+ db 148 ; base exp
+
+ INCBIN "gfx/pokemon/front/persian.pic", 0, 1 ; sprite dimensions
+ dw PersianPicFront, PersianPicBack
+
+ db SCRATCH, GROWL, BITE, SCREECH ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, HYPER_BEAM, PAY_DAY, RAGE, THUNDERBOLT, \
+ THUNDER, MIMIC, DOUBLE_TEAM, BIDE, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/pidgeot.asm
+++ b/data/pokemon/base_stats/pidgeot.asm
@@ -1,28 +1,23 @@
-db DEX_PIDGEOT ; pokedex id
-db 83 ; base hp
-db 80 ; base attack
-db 75 ; base defense
-db 91 ; base speed
-db 70 ; base special
-db NORMAL ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 172 ; base exp yield
-INCBIN "gfx/pokemon/front/pidgeot.pic",0,1 ; 77, sprite dimensions
-dw PidgeotPicFront
-dw PidgeotPicBack
-; attacks known at lvl 0
-db GUST
-db SAND_ATTACK
-db QUICK_ATTACK
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,39
- tmlearn 43,44
- tmlearn 50,52
-db 0 ; padding
+ db DEX_PIDGEOT ; pokedex id
+
+ db 83, 80, 75, 91, 70
+ ; hp atk def spd spc
+
+ db NORMAL, FLYING ; type
+ db 45 ; catch rate
+ db 172 ; base exp
+
+ INCBIN "gfx/pokemon/front/pidgeot.pic", 0, 1 ; sprite dimensions
+ dw PidgeotPicFront, PidgeotPicBack
+
+ db GUST, SAND_ATTACK, QUICK_ATTACK, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SWIFT, SKY_ATTACK, REST, SUBSTITUTE, \
+ FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/pidgeotto.asm
+++ b/data/pokemon/base_stats/pidgeotto.asm
@@ -1,28 +1,22 @@
-db DEX_PIDGEOTTO ; pokedex id
-db 63 ; base hp
-db 60 ; base attack
-db 55 ; base defense
-db 71 ; base speed
-db 50 ; base special
-db NORMAL ; species type 1
-db FLYING ; species type 2
-db 120 ; catch rate
-db 113 ; base exp yield
-INCBIN "gfx/pokemon/front/pidgeotto.pic",0,1 ; 66, sprite dimensions
-dw PidgeottoPicFront
-dw PidgeottoPicBack
-; attacks known at lvl 0
-db GUST
-db SAND_ATTACK
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,39
- tmlearn 43,44
- tmlearn 50,52
-db 0 ; padding
+ db DEX_PIDGEOTTO ; pokedex id
+
+ db 63, 60, 55, 71, 50
+ ; hp atk def spd spc
+
+ db NORMAL, FLYING ; type
+ db 120 ; catch rate
+ db 113 ; base exp
+
+ INCBIN "gfx/pokemon/front/pidgeotto.pic", 0, 1 ; sprite dimensions
+ dw PidgeottoPicFront, PidgeottoPicBack
+
+ db GUST, SAND_ATTACK, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SWIFT, SKY_ATTACK, REST, SUBSTITUTE, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/pidgey.asm
+++ b/data/pokemon/base_stats/pidgey.asm
@@ -1,28 +1,22 @@
-db DEX_PIDGEY ; pokedex id
-db 40 ; base hp
-db 45 ; base attack
-db 40 ; base defense
-db 56 ; base speed
-db 35 ; base special
-db NORMAL ; species type 1
-db FLYING ; species type 2
-db 255 ; catch rate
-db 55 ; base exp yield
-INCBIN "gfx/pokemon/front/pidgey.pic",0,1 ; 55, sprite dimensions
-dw PidgeyPicFront
-dw PidgeyPicBack
-; attacks known at lvl 0
-db GUST
-db 0
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,39
- tmlearn 43,44
- tmlearn 50,52
-db 0 ; padding
+ db DEX_PIDGEY ; pokedex id
+
+ db 40, 45, 40, 56, 35
+ ; hp atk def spd spc
+
+ db NORMAL, FLYING ; type
+ db 255 ; catch rate
+ db 55 ; base exp
+
+ INCBIN "gfx/pokemon/front/pidgey.pic", 0, 1 ; sprite dimensions
+ dw PidgeyPicFront, PidgeyPicBack
+
+ db GUST, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SWIFT, SKY_ATTACK, REST, SUBSTITUTE, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/pikachu.asm
+++ b/data/pokemon/base_stats/pikachu.asm
@@ -1,28 +1,24 @@
-db DEX_PIKACHU ; pokedex id
-db 35 ; base hp
-db 55 ; base attack
-db 30 ; base defense
-db 90 ; base speed
-db 50 ; base special
-db ELECTRIC ; species type 1
-db ELECTRIC ; species type 2
-db 190 ; catch rate
-db 82 ; base exp yield
-INCBIN "gfx/pokemon/front/pikachu.pic",0,1 ; 55, sprite dimensions
-dw PikachuPicFront
-dw PikachuPicBack
-; attacks known at lvl 0
-db THUNDERSHOCK
-db GROWL
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,16
- tmlearn 17,19,20,24
- tmlearn 25,31,32
- tmlearn 33,34,39,40
- tmlearn 44,45
- tmlearn 50,55
-db 0 ; padding
+ db DEX_PIKACHU ; pokedex id
+
+ db 35, 55, 30, 90, 50
+ ; hp atk def spd spc
+
+ db ELECTRIC, ELECTRIC ; type
+ db 190 ; catch rate
+ db 82 ; base exp
+
+ INCBIN "gfx/pokemon/front/pikachu.pic", 0, 1 ; sprite dimensions
+ dw PikachuPicFront, PikachuPicBack
+
+ db THUNDERSHOCK, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, PAY_DAY, SUBMISSION, SEISMIC_TOSS, RAGE, \
+ THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SWIFT, SKULL_BASH, REST, THUNDER_WAVE, \
+ SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/pinsir.asm
+++ b/data/pokemon/base_stats/pinsir.asm
@@ -1,28 +1,23 @@
-db DEX_PINSIR ; pokedex id
-db 65 ; base hp
-db 125 ; base attack
-db 100 ; base defense
-db 85 ; base speed
-db 55 ; base special
-db BUG ; species type 1
-db BUG ; species type 2
-db 45 ; catch rate
-db 200 ; base exp yield
-INCBIN "gfx/pokemon/front/pinsir.pic",0,1 ; 77, sprite dimensions
-dw PinsirPicFront
-dw PinsirPicBack
-; attacks known at lvl 0
-db VICEGRIP
-db 0
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,15
- tmlearn 17,19,20
- tmlearn 31,32
- tmlearn 34
- tmlearn 44
- tmlearn 50,51,54
-db 0 ; padding
+ db DEX_PINSIR ; pokedex id
+
+ db 65, 125, 100, 85, 55
+ ; hp atk def spd spc
+
+ db BUG, BUG ; type
+ db 45 ; catch rate
+ db 200 ; base exp
+
+ INCBIN "gfx/pokemon/front/pinsir.pic", 0, 1 ; sprite dimensions
+ dw PinsirPicFront, PinsirPicBack
+
+ db VICEGRIP, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, SUBMISSION, SEISMIC_TOSS, RAGE, MIMIC, \
+ DOUBLE_TEAM, BIDE, REST, SUBSTITUTE, CUT, \
+ STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/poliwag.asm
+++ b/data/pokemon/base_stats/poliwag.asm
@@ -1,28 +1,23 @@
-db DEX_POLIWAG ; pokedex id
-db 40 ; base hp
-db 50 ; base attack
-db 40 ; base defense
-db 90 ; base speed
-db 40 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 255 ; catch rate
-db 77 ; base exp yield
-INCBIN "gfx/pokemon/front/poliwag.pic",0,1 ; 55, sprite dimensions
-dw PoliwagPicFront
-dw PoliwagPicBack
-; attacks known at lvl 0
-db BUBBLE
-db 0
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 20
- tmlearn 29,31,32
- tmlearn 34,40
- tmlearn 44,46
- tmlearn 50,53
-db 0 ; padding
+ db DEX_POLIWAG ; pokedex id
+
+ db 40, 50, 40, 90, 40
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 255 ; catch rate
+ db 77 ; base exp
+
+ INCBIN "gfx/pokemon/front/poliwag.pic", 0, 1 ; sprite dimensions
+ dw PoliwagPicFront, PoliwagPicBack
+
+ db BUBBLE, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, PSYCHIC_M, \
+ MIMIC, DOUBLE_TEAM, BIDE, SKULL_BASH, REST, \
+ PSYWAVE, SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/poliwhirl.asm
+++ b/data/pokemon/base_stats/poliwhirl.asm
@@ -1,28 +1,25 @@
-db DEX_POLIWHIRL ; pokedex id
-db 65 ; base hp
-db 65 ; base attack
-db 65 ; base defense
-db 90 ; base speed
-db 50 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 120 ; catch rate
-db 131 ; base exp yield
-INCBIN "gfx/pokemon/front/poliwhirl.pic",0,1 ; 66, sprite dimensions
-dw PoliwhirlPicFront
-dw PoliwhirlPicBack
-; attacks known at lvl 0
-db BUBBLE
-db HYPNOSIS
-db WATER_GUN
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 17,18,19,20
- tmlearn 26,27,29,31,32
- tmlearn 34,35,40
- tmlearn 44,46
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_POLIWHIRL ; pokedex id
+
+ db 65, 65, 65, 90, 50
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 120 ; catch rate
+ db 131 ; base exp
+
+ INCBIN "gfx/pokemon/front/poliwhirl.pic", 0, 1 ; sprite dimensions
+ dw PoliwhirlPicFront, PoliwhirlPicBack
+
+ db BUBBLE, HYPNOSIS, WATER_GUN, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \
+ SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, EARTHQUAKE, \
+ FISSURE, PSYCHIC_M, MIMIC, DOUBLE_TEAM, BIDE, \
+ METRONOME, SKULL_BASH, REST, PSYWAVE, SUBSTITUTE, \
+ SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/poliwrath.asm
+++ b/data/pokemon/base_stats/poliwrath.asm
@@ -1,28 +1,25 @@
-db DEX_POLIWRATH ; pokedex id
-db 90 ; base hp
-db 85 ; base attack
-db 95 ; base defense
-db 70 ; base speed
-db 70 ; base special
-db WATER ; species type 1
-db FIGHTING ; species type 2
-db 45 ; catch rate
-db 185 ; base exp yield
-INCBIN "gfx/pokemon/front/poliwrath.pic",0,1 ; 77, sprite dimensions
-dw PoliwrathPicFront
-dw PoliwrathPicBack
-; attacks known at lvl 0
-db HYPNOSIS
-db WATER_GUN
-db DOUBLESLAP
-db BODY_SLAM
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20
- tmlearn 26,27,29,31,32
- tmlearn 34,35,40
- tmlearn 44,46
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_POLIWRATH ; pokedex id
+
+ db 90, 85, 95, 70, 70
+ ; hp atk def spd spc
+
+ db WATER, FIGHTING ; type
+ db 45 ; catch rate
+ db 185 ; base exp
+
+ INCBIN "gfx/pokemon/front/poliwrath.pic", 0, 1 ; sprite dimensions
+ dw PoliwrathPicFront, PoliwrathPicBack
+
+ db HYPNOSIS, WATER_GUN, DOUBLESLAP, BODY_SLAM ; level 1 learnset
+ db 3 ; 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, \
+ EARTHQUAKE, FISSURE, PSYCHIC_M, MIMIC, DOUBLE_TEAM, \
+ BIDE, METRONOME, SKULL_BASH, REST, PSYWAVE, \
+ SUBSTITUTE, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/ponyta.asm
+++ b/data/pokemon/base_stats/ponyta.asm
@@ -1,28 +1,22 @@
-db DEX_PONYTA ; pokedex id
-db 50 ; base hp
-db 85 ; base attack
-db 55 ; base defense
-db 90 ; base speed
-db 65 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 190 ; catch rate
-db 152 ; base exp yield
-INCBIN "gfx/pokemon/front/ponyta.pic",0,1 ; 66, sprite dimensions
-dw PonytaPicFront
-dw PonytaPicBack
-; attacks known at lvl 0
-db EMBER
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_PONYTA ; pokedex id
+
+ db 50, 85, 55, 90, 65
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 190 ; catch rate
+ db 152 ; base exp
+
+ INCBIN "gfx/pokemon/front/ponyta.pic", 0, 1 ; sprite dimensions
+ dw PonytaPicFront, PonytaPicBack
+
+ db EMBER, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ FIRE_BLAST, SWIFT, SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/porygon.asm
+++ b/data/pokemon/base_stats/porygon.asm
@@ -1,28 +1,24 @@
-db DEX_PORYGON ; pokedex id
-db 65 ; base hp
-db 60 ; base attack
-db 70 ; base defense
-db 40 ; base speed
-db 75 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 45 ; catch rate
-db 130 ; base exp yield
-INCBIN "gfx/pokemon/front/porygon.pic",0,1 ; 66, sprite dimensions
-dw PorygonPicFront
-dw PorygonPicBack
-; attacks known at lvl 0
-db TACKLE
-db SHARPEN
-db CONVERSION
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,13,14,15
- tmlearn 20,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,39,40
- tmlearn 44,45,46
- tmlearn 49,50,55
-db 0 ; padding
+ db DEX_PORYGON ; pokedex id
+
+ db 65, 60, 70, 40, 75
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 45 ; catch rate
+ db 130 ; base exp
+
+ INCBIN "gfx/pokemon/front/porygon.pic", 0, 1 ; sprite dimensions
+ dw PorygonPicFront, PorygonPicBack
+
+ db TACKLE, SHARPEN, CONVERSION, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, ICE_BEAM, BLIZZARD, \
+ HYPER_BEAM, RAGE, THUNDERBOLT, THUNDER, PSYCHIC_M, \
+ TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SWIFT, SKULL_BASH, REST, THUNDER_WAVE, PSYWAVE, \
+ TRI_ATTACK, SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/primeape.asm
+++ b/data/pokemon/base_stats/primeape.asm
@@ -1,28 +1,24 @@
-db DEX_PRIMEAPE ; pokedex id
-db 65 ; base hp
-db 105 ; base attack
-db 60 ; base defense
-db 95 ; base speed
-db 60 ; base special
-db FIGHTING ; species type 1
-db FIGHTING ; species type 2
-db 75 ; catch rate
-db 149 ; base exp yield
-INCBIN "gfx/pokemon/front/primeape.pic",0,1 ; 77, sprite dimensions
-dw PrimeapePicFront
-dw PrimeapePicBack
-; attacks known at lvl 0
-db SCRATCH
-db LEER
-db KARATE_CHOP
-db FURY_SWIPES
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15,16
- tmlearn 17,18,19,20,24
- tmlearn 25,28,31,32
- tmlearn 34,35,39,40
- tmlearn 44,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_PRIMEAPE ; pokedex id
+
+ db 65, 105, 60, 95, 60
+ ; hp atk def spd spc
+
+ db FIGHTING, FIGHTING ; type
+ db 75 ; catch rate
+ db 149 ; base exp
+
+ INCBIN "gfx/pokemon/front/primeape.pic", 0, 1 ; sprite dimensions
+ dw PrimeapePicFront, PrimeapePicBack
+
+ db SCRATCH, LEER, KARATE_CHOP, FURY_SWIPES ; level 1 learnset
+ db 0 ; 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 0 ; padding
--- a/data/pokemon/base_stats/psyduck.asm
+++ b/data/pokemon/base_stats/psyduck.asm
@@ -1,28 +1,24 @@
-db DEX_PSYDUCK ; pokedex id
-db 50 ; base hp
-db 52 ; base attack
-db 48 ; base defense
-db 55 ; base speed
-db 50 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 190 ; catch rate
-db 80 ; base exp yield
-INCBIN "gfx/pokemon/front/psyduck.pic",0,1 ; 55, sprite dimensions
-dw PsyduckPicFront
-dw PsyduckPicBack
-; attacks known at lvl 0
-db SCRATCH
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,16
- tmlearn 17,18,19,20
- tmlearn 28,31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_PSYDUCK ; pokedex id
+
+ db 50, 52, 48, 55, 50
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 190 ; catch rate
+ db 80 ; base exp
+
+ INCBIN "gfx/pokemon/front/psyduck.pic", 0, 1 ; sprite dimensions
+ dw PsyduckPicFront, PsyduckPicBack
+
+ db SCRATCH, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \
+ PAY_DAY, SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, \
+ DIG, MIMIC, DOUBLE_TEAM, BIDE, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/raichu.asm
+++ b/data/pokemon/base_stats/raichu.asm
@@ -1,28 +1,24 @@
-db DEX_RAICHU ; pokedex id
-db 60 ; base hp
-db 90 ; base attack
-db 55 ; base defense
-db 100 ; base speed
-db 90 ; base special
-db ELECTRIC ; species type 1
-db ELECTRIC ; species type 2
-db 75 ; catch rate
-db 122 ; base exp yield
-INCBIN "gfx/pokemon/front/raichu.pic",0,1 ; 77, sprite dimensions
-dw RaichuPicFront
-dw RaichuPicBack
-; attacks known at lvl 0
-db THUNDERSHOCK
-db GROWL
-db THUNDER_WAVE
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,15,16
- tmlearn 17,19,20,24
- tmlearn 25,31,32
- tmlearn 33,34,39,40
- tmlearn 44,45
- tmlearn 50,55
-db 0 ; padding
+ db DEX_RAICHU ; pokedex id
+
+ db 60, 90, 55, 100, 90
+ ; hp atk def spd spc
+
+ db ELECTRIC, ELECTRIC ; type
+ db 75 ; catch rate
+ db 122 ; base exp
+
+ INCBIN "gfx/pokemon/front/raichu.pic", 0, 1 ; sprite dimensions
+ dw RaichuPicFront, RaichuPicBack
+
+ db THUNDERSHOCK, GROWL, THUNDER_WAVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, HYPER_BEAM, PAY_DAY, SUBMISSION, SEISMIC_TOSS, \
+ RAGE, THUNDERBOLT, THUNDER, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, SWIFT, SKULL_BASH, REST, \
+ THUNDER_WAVE, SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/rapidash.asm
+++ b/data/pokemon/base_stats/rapidash.asm
@@ -1,28 +1,23 @@
-db DEX_RAPIDASH ; pokedex id
-db 65 ; base hp
-db 100 ; base attack
-db 70 ; base defense
-db 105 ; base speed
-db 80 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 60 ; catch rate
-db 192 ; base exp yield
-INCBIN "gfx/pokemon/front/rapidash.pic",0,1 ; 77, sprite dimensions
-dw RapidashPicFront
-dw RapidashPicBack
-; attacks known at lvl 0
-db EMBER
-db TAIL_WHIP
-db STOMP
-db GROWL
-db 0 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_RAPIDASH ; pokedex id
+
+ db 65, 100, 70, 105, 80
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 60 ; catch rate
+ db 192 ; base exp
+
+ INCBIN "gfx/pokemon/front/rapidash.pic", 0, 1 ; sprite dimensions
+ dw RapidashPicFront, RapidashPicBack
+
+ db EMBER, TAIL_WHIP, STOMP, GROWL ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, FIRE_BLAST, SWIFT, SKULL_BASH, REST, \
+ SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/raticate.asm
+++ b/data/pokemon/base_stats/raticate.asm
@@ -1,28 +1,23 @@
-db DEX_RATICATE ; pokedex id
-db 55 ; base hp
-db 81 ; base attack
-db 60 ; base defense
-db 97 ; base speed
-db 50 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 90 ; catch rate
-db 116 ; base exp yield
-INCBIN "gfx/pokemon/front/raticate.pic",0,1 ; 66, sprite dimensions
-dw RaticatePicFront
-dw RaticatePicBack
-; attacks known at lvl 0
-db TACKLE
-db TAIL_WHIP
-db QUICK_ATTACK
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20,24
- tmlearn 25,28,31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_RATICATE ; pokedex id
+
+ db 55, 81, 60, 97, 50
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 90 ; catch rate
+ db 116 ; base exp
+
+ INCBIN "gfx/pokemon/front/raticate.pic", 0, 1 ; sprite dimensions
+ dw RaticatePicFront, RaticatePicBack
+
+ db TACKLE, TAIL_WHIP, QUICK_ATTACK, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, \
+ THUNDERBOLT, THUNDER, DIG, MIMIC, DOUBLE_TEAM, \
+ BIDE, SWIFT, SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/rattata.asm
+++ b/data/pokemon/base_stats/rattata.asm
@@ -1,28 +1,23 @@
-db DEX_RATTATA ; pokedex id
-db 30 ; base hp
-db 56 ; base attack
-db 35 ; base defense
-db 72 ; base speed
-db 25 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 255 ; catch rate
-db 57 ; base exp yield
-INCBIN "gfx/pokemon/front/rattata.pic",0,1 ; 55, sprite dimensions
-dw RattataPicFront
-dw RattataPicBack
-; attacks known at lvl 0
-db TACKLE
-db TAIL_WHIP
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,14
- tmlearn 20,24
- tmlearn 25,28,31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_RATTATA ; pokedex id
+
+ db 30, 56, 35, 72, 25
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 255 ; catch rate
+ db 57 ; base exp
+
+ INCBIN "gfx/pokemon/front/rattata.pic", 0, 1 ; sprite dimensions
+ dw RattataPicFront, RattataPicBack
+
+ db TACKLE, TAIL_WHIP, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, BLIZZARD, RAGE, THUNDERBOLT, THUNDER, \
+ DIG, MIMIC, DOUBLE_TEAM, BIDE, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/rhydon.asm
+++ b/data/pokemon/base_stats/rhydon.asm
@@ -1,28 +1,26 @@
-db DEX_RHYDON ; pokedex id
-db 105 ; base hp
-db 130 ; base attack
-db 120 ; base defense
-db 40 ; base speed
-db 45 ; base special
-db GROUND ; species type 1
-db ROCK ; species type 2
-db 60 ; catch rate
-db 204 ; base exp yield
-INCBIN "gfx/pokemon/front/rhydon.pic",0,1 ; 77, sprite dimensions
-dw RhydonPicFront
-dw RhydonPicBack
-; attacks known at lvl 0
-db HORN_ATTACK
-db STOMP
-db TAIL_WHIP
-db FURY_ATTACK
-db 5 ; growth rate
-; learnset
- tmlearn 1,5,6,7,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 17,18,19,20,24
- tmlearn 25,26,27,28,31,32
- tmlearn 34,38,40
- tmlearn 44,48
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_RHYDON ; pokedex id
+
+ db 105, 130, 120, 40, 45
+ ; hp atk def spd spc
+
+ db GROUND, ROCK ; type
+ db 60 ; catch rate
+ db 204 ; base exp
+
+ INCBIN "gfx/pokemon/front/rhydon.pic", 0, 1 ; sprite dimensions
+ dw RhydonPicFront, RhydonPicBack
+
+ db HORN_ATTACK, STOMP, TAIL_WHIP, FURY_ATTACK ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, HORN_DRILL, BODY_SLAM, \
+ TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, \
+ BLIZZARD, HYPER_BEAM, PAY_DAY, SUBMISSION, COUNTER, \
+ SEISMIC_TOSS, RAGE, THUNDERBOLT, THUNDER, EARTHQUAKE, \
+ FISSURE, DIG, MIMIC, DOUBLE_TEAM, BIDE, \
+ FIRE_BLAST, SKULL_BASH, REST, ROCK_SLIDE, SUBSTITUTE, \
+ SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/rhyhorn.asm
+++ b/data/pokemon/base_stats/rhyhorn.asm
@@ -1,28 +1,23 @@
-db DEX_RHYHORN ; pokedex id
-db 80 ; base hp
-db 85 ; base attack
-db 95 ; base defense
-db 25 ; base speed
-db 30 ; base special
-db GROUND ; species type 1
-db ROCK ; species type 2
-db 120 ; catch rate
-db 135 ; base exp yield
-INCBIN "gfx/pokemon/front/rhyhorn.pic",0,1 ; 77, sprite dimensions
-dw RhyhornPicFront
-dw RhyhornPicBack
-; attacks known at lvl 0
-db HORN_ATTACK
-db 0
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10
- tmlearn 20,24
- tmlearn 25,26,27,28,31,32
- tmlearn 34,38,40
- tmlearn 44,48
- tmlearn 50,54
-db 0 ; padding
+ db DEX_RHYHORN ; pokedex id
+
+ db 80, 85, 95, 25, 30
+ ; hp atk def spd spc
+
+ db GROUND, ROCK ; type
+ db 120 ; catch rate
+ db 135 ; base exp
+
+ INCBIN "gfx/pokemon/front/rhyhorn.pic", 0, 1 ; sprite dimensions
+ dw RhyhornPicFront, RhyhornPicBack
+
+ db HORN_ATTACK, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, THUNDERBOLT, THUNDER, EARTHQUAKE, FISSURE, \
+ DIG, MIMIC, DOUBLE_TEAM, BIDE, FIRE_BLAST, \
+ SKULL_BASH, REST, ROCK_SLIDE, SUBSTITUTE, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/sandshrew.asm
+++ b/data/pokemon/base_stats/sandshrew.asm
@@ -1,28 +1,24 @@
-db DEX_SANDSHREW ; pokedex id
-db 50 ; base hp
-db 75 ; base attack
-db 85 ; base defense
-db 40 ; base speed
-db 30 ; base special
-db GROUND ; species type 1
-db GROUND ; species type 2
-db 255 ; catch rate
-db 93 ; base exp yield
-INCBIN "gfx/pokemon/front/sandshrew.pic",0,1 ; 55, sprite dimensions
-dw SandshrewPicFront
-dw SandshrewPicBack
-; attacks known at lvl 0
-db SCRATCH
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10
- tmlearn 17,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,39,40
- tmlearn 44,48
- tmlearn 50,51,54
-db 0 ; padding
+ db DEX_SANDSHREW ; pokedex id
+
+ db 50, 75, 85, 40, 30
+ ; hp atk def spd spc
+
+ db GROUND, GROUND ; type
+ db 255 ; catch rate
+ db 93 ; base exp
+
+ INCBIN "gfx/pokemon/front/sandshrew.pic", 0, 1 ; sprite dimensions
+ dw SandshrewPicFront, SandshrewPicBack
+
+ db SCRATCH, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ SUBMISSION, SEISMIC_TOSS, RAGE, EARTHQUAKE, FISSURE, \
+ DIG, MIMIC, DOUBLE_TEAM, BIDE, SWIFT, \
+ SKULL_BASH, REST, ROCK_SLIDE, SUBSTITUTE, CUT, \
+ STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/sandslash.asm
+++ b/data/pokemon/base_stats/sandslash.asm
@@ -1,28 +1,24 @@
-db DEX_SANDSLASH ; pokedex id
-db 75 ; base hp
-db 100 ; base attack
-db 110 ; base defense
-db 65 ; base speed
-db 55 ; base special
-db GROUND ; species type 1
-db GROUND ; species type 2
-db 90 ; catch rate
-db 163 ; base exp yield
-INCBIN "gfx/pokemon/front/sandslash.pic",0,1 ; 66, sprite dimensions
-dw SandslashPicFront
-dw SandslashPicBack
-; attacks known at lvl 0
-db SCRATCH
-db SAND_ATTACK
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,15
- tmlearn 17,19,20
- tmlearn 26,27,28,31,32
- tmlearn 34,39,40
- tmlearn 44,48
- tmlearn 50,51,54
-db 0 ; padding
+ db DEX_SANDSLASH ; pokedex id
+
+ db 75, 100, 110, 65, 55
+ ; hp atk def spd spc
+
+ db GROUND, GROUND ; type
+ db 90 ; catch rate
+ db 163 ; base exp
+
+ INCBIN "gfx/pokemon/front/sandslash.pic", 0, 1 ; sprite dimensions
+ dw SandslashPicFront, SandslashPicBack
+
+ db SCRATCH, SAND_ATTACK, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, SUBMISSION, SEISMIC_TOSS, RAGE, EARTHQUAKE, \
+ FISSURE, DIG, MIMIC, DOUBLE_TEAM, BIDE, \
+ SWIFT, SKULL_BASH, REST, ROCK_SLIDE, SUBSTITUTE, \
+ CUT, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/scyther.asm
+++ b/data/pokemon/base_stats/scyther.asm
@@ -1,28 +1,22 @@
-db DEX_SCYTHER ; pokedex id
-db 70 ; base hp
-db 110 ; base attack
-db 80 ; base defense
-db 105 ; base speed
-db 55 ; base special
-db BUG ; species type 1
-db FLYING ; species type 2
-db 45 ; catch rate
-db 187 ; base exp yield
-INCBIN "gfx/pokemon/front/scyther.pic",0,1 ; 77, sprite dimensions
-dw ScytherPicFront
-dw ScytherPicBack
-; attacks known at lvl 0
-db QUICK_ATTACK
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6
- tmlearn 9,10,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_SCYTHER ; pokedex id
+
+ db 70, 110, 80, 105, 55
+ ; hp atk def spd spc
+
+ db BUG, FLYING ; type
+ db 45 ; catch rate
+ db 187 ; base exp
+
+ INCBIN "gfx/pokemon/front/scyther.pic", 0, 1 ; sprite dimensions
+ dw ScytherPicFront, ScytherPicBack
+
+ db QUICK_ATTACK, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, TAKE_DOWN, DOUBLE_EDGE, HYPER_BEAM, \
+ RAGE, MIMIC, DOUBLE_TEAM, BIDE, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/seadra.asm
+++ b/data/pokemon/base_stats/seadra.asm
@@ -1,28 +1,23 @@
-db DEX_SEADRA ; pokedex id
-db 55 ; base hp
-db 65 ; base attack
-db 95 ; base defense
-db 85 ; base speed
-db 95 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 75 ; catch rate
-db 155 ; base exp yield
-INCBIN "gfx/pokemon/front/seadra.pic",0,1 ; 66, sprite dimensions
-dw SeadraPicFront
-dw SeadraPicBack
-; attacks known at lvl 0
-db BUBBLE
-db SMOKESCREEN
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_SEADRA ; pokedex id
+
+ db 55, 65, 95, 85, 95
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 75 ; catch rate
+ db 155 ; base exp
+
+ INCBIN "gfx/pokemon/front/seadra.pic", 0, 1 ; sprite dimensions
+ dw SeadraPicFront, SeadraPicBack
+
+ db BUBBLE, SMOKESCREEN, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, \
+ ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, MIMIC, \
+ DOUBLE_TEAM, BIDE, SWIFT, SKULL_BASH, REST, \
+ SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/seaking.asm
+++ b/data/pokemon/base_stats/seaking.asm
@@ -1,28 +1,23 @@
-db DEX_SEAKING ; pokedex id
-db 80 ; base hp
-db 92 ; base attack
-db 65 ; base defense
-db 68 ; base speed
-db 80 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 60 ; catch rate
-db 170 ; base exp yield
-INCBIN "gfx/pokemon/front/seaking.pic",0,1 ; 77, sprite dimensions
-dw SeakingPicFront
-dw SeakingPicBack
-; attacks known at lvl 0
-db PECK
-db TAIL_WHIP
-db SUPERSONIC
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,7
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,39,40
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_SEAKING ; pokedex id
+
+ db 80, 92, 65, 68, 80
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 60 ; catch rate
+ db 170 ; base exp
+
+ INCBIN "gfx/pokemon/front/seaking.pic", 0, 1 ; sprite dimensions
+ dw SeakingPicFront, SeakingPicBack
+
+ db PECK, TAIL_WHIP, SUPERSONIC, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, \
+ MIMIC, DOUBLE_TEAM, BIDE, SWIFT, SKULL_BASH, \
+ REST, SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/seel.asm
+++ b/data/pokemon/base_stats/seel.asm
@@ -1,28 +1,23 @@
-db DEX_SEEL ; pokedex id
-db 65 ; base hp
-db 45 ; base attack
-db 55 ; base defense
-db 45 ; base speed
-db 70 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 190 ; catch rate
-db 100 ; base exp yield
-INCBIN "gfx/pokemon/front/seel.pic",0,1 ; 66, sprite dimensions
-dw SeelPicFront
-dw SeelPicBack
-; attacks known at lvl 0
-db HEADBUTT
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,11,12,13,14,16
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,40
- tmlearn 44
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_SEEL ; pokedex id
+
+ db 65, 45, 55, 45, 70
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 190 ; catch rate
+ db 100 ; base exp
+
+ INCBIN "gfx/pokemon/front/seel.pic", 0, 1 ; sprite dimensions
+ dw SeelPicFront, SeelPicBack
+
+ db HEADBUTT, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, PAY_DAY, \
+ RAGE, MIMIC, DOUBLE_TEAM, BIDE, SKULL_BASH, \
+ REST, SUBSTITUTE, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/shellder.asm
+++ b/data/pokemon/base_stats/shellder.asm
@@ -1,28 +1,23 @@
-db DEX_SHELLDER ; pokedex id
-db 30 ; base hp
-db 65 ; base attack
-db 100 ; base defense
-db 40 ; base speed
-db 45 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 190 ; catch rate
-db 97 ; base exp yield
-INCBIN "gfx/pokemon/front/shellder.pic",0,1 ; 55, sprite dimensions
-dw ShellderPicFront
-dw ShellderPicBack
-; attacks known at lvl 0
-db TACKLE
-db WITHDRAW
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,11,12,13,14
- tmlearn 20
- tmlearn 30,31,32
- tmlearn 33,34,36,39
- tmlearn 44,47
- tmlearn 49,50,53
-db 0 ; padding
+ db DEX_SHELLDER ; pokedex id
+
+ db 30, 65, 100, 40, 45
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 190 ; catch rate
+ db 97 ; base exp
+
+ INCBIN "gfx/pokemon/front/shellder.pic", 0, 1 ; sprite dimensions
+ dw ShellderPicFront, ShellderPicBack
+
+ db TACKLE, WITHDRAW, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, \
+ ICE_BEAM, BLIZZARD, RAGE, TELEPORT, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, SELFDESTRUCT, SWIFT, \
+ REST, EXPLOSION, TRI_ATTACK, SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/slowbro.asm
+++ b/data/pokemon/base_stats/slowbro.asm
@@ -1,28 +1,27 @@
-db DEX_SLOWBRO ; pokedex id
-db 95 ; base hp
-db 75 ; base attack
-db 110 ; base defense
-db 30 ; base speed
-db 80 ; base special
-db WATER ; species type 1
-db PSYCHIC ; species type 2
-db 75 ; catch rate
-db 164 ; base exp yield
-INCBIN "gfx/pokemon/front/slowbro.pic",0,1 ; 77, sprite dimensions
-dw SlowbroPicFront
-dw SlowbroPicBack
-; attacks known at lvl 0
-db CONFUSION
-db DISABLE
-db HEADBUTT
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 17,18,19,20
- tmlearn 26,27,28,29,30,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44,45,46
- tmlearn 49,50,53,54,55
-db 0 ; padding
+ db DEX_SLOWBRO ; pokedex id
+
+ db 95, 75, 110, 30, 80
+ ; hp atk def spd spc
+
+ db WATER, PSYCHIC ; type
+ db 75 ; catch rate
+ db 164 ; base exp
+
+ INCBIN "gfx/pokemon/front/slowbro.pic", 0, 1 ; sprite dimensions
+ dw SlowbroPicFront, SlowbroPicBack
+
+ db CONFUSION, DISABLE, HEADBUTT, NO_MOVE ; level 1 learnset
+ db 0 ; 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, PAY_DAY, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, EARTHQUAKE, FISSURE, DIG, PSYCHIC_M, \
+ TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ FIRE_BLAST, SWIFT, SKULL_BASH, REST, THUNDER_WAVE, \
+ PSYWAVE, TRI_ATTACK, SUBSTITUTE, SURF, STRENGTH, \
+ FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/slowpoke.asm
+++ b/data/pokemon/base_stats/slowpoke.asm
@@ -1,28 +1,25 @@
-db DEX_SLOWPOKE ; pokedex id
-db 90 ; base hp
-db 65 ; base attack
-db 65 ; base defense
-db 15 ; base speed
-db 40 ; base special
-db WATER ; species type 1
-db PSYCHIC ; species type 2
-db 190 ; catch rate
-db 99 ; base exp yield
-INCBIN "gfx/pokemon/front/slowpoke.pic",0,1 ; 55, sprite dimensions
-dw SlowpokePicFront
-dw SlowpokePicBack
-; attacks known at lvl 0
-db CONFUSION
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,13,14,16
- tmlearn 20
- tmlearn 26,27,28,29,30,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44,45,46
- tmlearn 49,50,53,54,55
-db 0 ; padding
+ db DEX_SLOWPOKE ; pokedex id
+
+ db 90, 65, 65, 15, 40
+ ; hp atk def spd spc
+
+ db WATER, PSYCHIC ; type
+ db 190 ; catch rate
+ db 99 ; base exp
+
+ INCBIN "gfx/pokemon/front/slowpoke.pic", 0, 1 ; sprite dimensions
+ dw SlowpokePicFront, SlowpokePicBack
+
+ db CONFUSION, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, PAY_DAY, RAGE, \
+ EARTHQUAKE, FISSURE, DIG, PSYCHIC_M, TELEPORT, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, FIRE_BLAST, \
+ SWIFT, SKULL_BASH, REST, THUNDER_WAVE, PSYWAVE, \
+ TRI_ATTACK, SUBSTITUTE, SURF, STRENGTH, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/snorlax.asm
+++ b/data/pokemon/base_stats/snorlax.asm
@@ -1,28 +1,27 @@
-db DEX_SNORLAX ; pokedex id
-db 160 ; base hp
-db 110 ; base attack
-db 65 ; base defense
-db 30 ; base speed
-db 65 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 25 ; catch rate
-db 154 ; base exp yield
-INCBIN "gfx/pokemon/front/snorlax.pic",0,1 ; 77, sprite dimensions
-dw SnorlaxPicFront
-dw SnorlaxPicBack
-; attacks known at lvl 0
-db HEADBUTT
-db AMNESIA
-db REST
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15,16
- tmlearn 17,18,19,20,22,24
- tmlearn 25,26,27,29,31,32
- tmlearn 33,34,35,36,38,40
- tmlearn 44,46,48
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_SNORLAX ; pokedex id
+
+ db 160, 110, 65, 30, 65
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 25 ; catch rate
+ db 154 ; base exp
+
+ INCBIN "gfx/pokemon/front/snorlax.pic", 0, 1 ; sprite dimensions
+ dw SnorlaxPicFront, SnorlaxPicBack
+
+ db HEADBUTT, AMNESIA, REST, NO_MOVE ; level 1 learnset
+ db 5 ; 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, PAY_DAY, SUBMISSION, COUNTER, SEISMIC_TOSS, \
+ RAGE, SOLARBEAM, THUNDERBOLT, THUNDER, EARTHQUAKE, \
+ FISSURE, PSYCHIC_M, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, METRONOME, SELFDESTRUCT, FIRE_BLAST, SKULL_BASH, \
+ REST, PSYWAVE, ROCK_SLIDE, SUBSTITUTE, SURF, \
+ STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/spearow.asm
+++ b/data/pokemon/base_stats/spearow.asm
@@ -1,28 +1,22 @@
-db DEX_SPEAROW ; pokedex id
-db 40 ; base hp
-db 60 ; base attack
-db 30 ; base defense
-db 70 ; base speed
-db 31 ; base special
-db NORMAL ; species type 1
-db FLYING ; species type 2
-db 255 ; catch rate
-db 58 ; base exp yield
-INCBIN "gfx/pokemon/front/spearow.pic",0,1 ; 55, sprite dimensions
-dw SpearowPicFront
-dw SpearowPicBack
-; attacks known at lvl 0
-db PECK
-db GROWL
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10
- tmlearn 20
- tmlearn 31,32
- tmlearn 34,39
- tmlearn 43,44
- tmlearn 50,52
-db 0 ; padding
+ db DEX_SPEAROW ; pokedex id
+
+ db 40, 60, 30, 70, 31
+ ; hp atk def spd spc
+
+ db NORMAL, FLYING ; type
+ db 255 ; catch rate
+ db 58 ; base exp
+
+ INCBIN "gfx/pokemon/front/spearow.pic", 0, 1 ; sprite dimensions
+ dw SpearowPicFront, SpearowPicBack
+
+ db PECK, GROWL, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MIMIC, DOUBLE_TEAM, BIDE, SWIFT, \
+ SKY_ATTACK, REST, SUBSTITUTE, FLY
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/squirtle.asm
+++ b/data/pokemon/base_stats/squirtle.asm
@@ -1,28 +1,24 @@
-db DEX_SQUIRTLE ; pokedex id
-db 44 ; base hp
-db 48 ; base attack
-db 65 ; base defense
-db 43 ; base speed
-db 50 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 45 ; catch rate
-db 66 ; base exp yield
-INCBIN "gfx/pokemon/front/squirtle.pic",0,1 ; 55, sprite dimensions
-dw SquirtlePicFront
-dw SquirtlePicBack
-; attacks known at lvl 0
-db TACKLE
-db TAIL_WHIP
-db 0
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 17,18,19,20
- tmlearn 28,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_SQUIRTLE ; pokedex id
+
+ db 44, 48, 65, 43, 50
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 45 ; catch rate
+ db 66 ; base exp
+
+ INCBIN "gfx/pokemon/front/squirtle.pic", 0, 1 ; sprite dimensions
+ dw SquirtlePicFront, SquirtlePicBack
+
+ db TACKLE, TAIL_WHIP, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \
+ SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, DIG, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, SKULL_BASH, \
+ REST, SUBSTITUTE, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/starmie.asm
+++ b/data/pokemon/base_stats/starmie.asm
@@ -1,28 +1,25 @@
-db DEX_STARMIE ; pokedex id
-db 60 ; base hp
-db 75 ; base attack
-db 85 ; base defense
-db 115 ; base speed
-db 100 ; base special
-db WATER ; species type 1
-db PSYCHIC ; species type 2
-db 60 ; catch rate
-db 207 ; base exp yield
-INCBIN "gfx/pokemon/front/starmie.pic",0,1 ; 66, sprite dimensions
-dw StarmiePicFront
-dw StarmiePicBack
-; attacks known at lvl 0
-db TACKLE
-db WATER_GUN
-db HARDEN
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,39,40
- tmlearn 44,45,46
- tmlearn 49,50,53,55
-db 0 ; padding
+ db DEX_STARMIE ; pokedex id
+
+ db 60, 75, 85, 115, 100
+ ; hp atk def spd spc
+
+ db WATER, PSYCHIC ; type
+ db 60 ; catch rate
+ db 207 ; base exp
+
+ INCBIN "gfx/pokemon/front/starmie.pic", 0, 1 ; sprite dimensions
+ dw StarmiePicFront, StarmiePicBack
+
+ db TACKLE, WATER_GUN, HARDEN, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, \
+ ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, THUNDERBOLT, \
+ THUNDER, PSYCHIC_M, TELEPORT, MIMIC, DOUBLE_TEAM, \
+ REFLECT, BIDE, SWIFT, SKULL_BASH, REST, \
+ THUNDER_WAVE, PSYWAVE, TRI_ATTACK, SUBSTITUTE, SURF, \
+ FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/staryu.asm
+++ b/data/pokemon/base_stats/staryu.asm
@@ -1,28 +1,24 @@
-db DEX_STARYU ; pokedex id
-db 30 ; base hp
-db 45 ; base attack
-db 55 ; base defense
-db 85 ; base speed
-db 70 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 225 ; catch rate
-db 106 ; base exp yield
-INCBIN "gfx/pokemon/front/staryu.pic",0,1 ; 66, sprite dimensions
-dw StaryuPicFront
-dw StaryuPicBack
-; attacks known at lvl 0
-db TACKLE
-db 0
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10,11,12,13,14
- tmlearn 20,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,39,40
- tmlearn 44,45,46
- tmlearn 49,50,53,55
-db 0 ; padding
+ db DEX_STARYU ; pokedex id
+
+ db 30, 45, 55, 85, 70
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 225 ; catch rate
+ db 106 ; base exp
+
+ INCBIN "gfx/pokemon/front/staryu.pic", 0, 1 ; sprite dimensions
+ dw StaryuPicFront, StaryuPicBack
+
+ db TACKLE, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, \
+ ICE_BEAM, BLIZZARD, RAGE, THUNDERBOLT, THUNDER, \
+ PSYCHIC_M, TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, SWIFT, SKULL_BASH, REST, THUNDER_WAVE, \
+ PSYWAVE, TRI_ATTACK, SUBSTITUTE, SURF, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/tangela.asm
+++ b/data/pokemon/base_stats/tangela.asm
@@ -1,28 +1,23 @@
-db DEX_TANGELA ; pokedex id
-db 65 ; base hp
-db 55 ; base attack
-db 115 ; base defense
-db 60 ; base speed
-db 100 ; base special
-db GRASS ; species type 1
-db GRASS ; species type 2
-db 45 ; catch rate
-db 166 ; base exp yield
-INCBIN "gfx/pokemon/front/tangela.pic",0,1 ; 66, sprite dimensions
-dw TangelaPicFront
-dw TangelaPicBack
-; attacks known at lvl 0
-db CONSTRICT
-db BIND
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,15
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 34,40
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_TANGELA ; pokedex id
+
+ db 65, 55, 115, 60, 100
+ ; hp atk def spd spc
+
+ db GRASS, GRASS ; type
+ db 45 ; catch rate
+ db 166 ; base exp
+
+ INCBIN "gfx/pokemon/front/tangela.pic", 0, 1 ; sprite dimensions
+ dw TangelaPicFront, TangelaPicBack
+
+ db CONSTRICT, BIND, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MEGA_DRAIN, SOLARBEAM, MIMIC, \
+ DOUBLE_TEAM, BIDE, SKULL_BASH, REST, SUBSTITUTE, \
+ CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/tauros.asm
+++ b/data/pokemon/base_stats/tauros.asm
@@ -1,28 +1,24 @@
-db DEX_TAUROS ; pokedex id
-db 75 ; base hp
-db 100 ; base attack
-db 95 ; base defense
-db 110 ; base speed
-db 70 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 45 ; catch rate
-db 211 ; base exp yield
-INCBIN "gfx/pokemon/front/tauros.pic",0,1 ; 77, sprite dimensions
-dw TaurosPicFront
-dw TaurosPicBack
-; attacks known at lvl 0
-db TACKLE
-db 0
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 6,7,8
- tmlearn 9,10,13,14,15
- tmlearn 20,24
- tmlearn 25,26,27,31,32
- tmlearn 34,38,40
- tmlearn 44
- tmlearn 50,54
-db 0 ; padding
+ db DEX_TAUROS ; pokedex id
+
+ db 75, 100, 95, 110, 70
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 45 ; catch rate
+ db 211 ; base exp
+
+ INCBIN "gfx/pokemon/front/tauros.pic", 0, 1 ; sprite dimensions
+ dw TaurosPicFront, TaurosPicBack
+
+ db TACKLE, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HORN_DRILL, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, THUNDERBOLT, \
+ THUNDER, EARTHQUAKE, FISSURE, MIMIC, DOUBLE_TEAM, \
+ BIDE, FIRE_BLAST, SKULL_BASH, REST, SUBSTITUTE, \
+ STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/tentacool.asm
+++ b/data/pokemon/base_stats/tentacool.asm
@@ -1,28 +1,23 @@
-db DEX_TENTACOOL ; pokedex id
-db 40 ; base hp
-db 40 ; base attack
-db 35 ; base defense
-db 70 ; base speed
-db 100 ; base special
-db WATER ; species type 1
-db POISON ; species type 2
-db 190 ; catch rate
-db 105 ; base exp yield
-INCBIN "gfx/pokemon/front/tentacool.pic",0,1 ; 55, sprite dimensions
-dw TentacoolPicFront
-dw TentacoolPicBack
-; attacks known at lvl 0
-db ACID
-db 0
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 3,6
- tmlearn 9,10,11,12,13,14
- tmlearn 20,21
- tmlearn 31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,51,53
-db 0 ; padding
+ db DEX_TENTACOOL ; pokedex id
+
+ db 40, 40, 35, 70, 100
+ ; hp atk def spd spc
+
+ db WATER, POISON ; type
+ db 190 ; catch rate
+ db 105 ; base exp
+
+ INCBIN "gfx/pokemon/front/tentacool.pic", 0, 1 ; sprite dimensions
+ dw TentacoolPicFront, TentacoolPicBack
+
+ db ACID, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, RAGE, MEGA_DRAIN, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, SKULL_BASH, \
+ REST, SUBSTITUTE, CUT, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/tentacruel.asm
+++ b/data/pokemon/base_stats/tentacruel.asm
@@ -1,28 +1,23 @@
-db DEX_TENTACRUEL ; pokedex id
-db 80 ; base hp
-db 70 ; base attack
-db 65 ; base defense
-db 100 ; base speed
-db 120 ; base special
-db WATER ; species type 1
-db POISON ; species type 2
-db 60 ; catch rate
-db 205 ; base exp yield
-INCBIN "gfx/pokemon/front/tentacruel.pic",0,1 ; 66, sprite dimensions
-dw TentacruelPicFront
-dw TentacruelPicBack
-; attacks known at lvl 0
-db ACID
-db SUPERSONIC
-db WRAP
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 3,6
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20,21
- tmlearn 31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,51,53
-db 0 ; padding
+ db DEX_TENTACRUEL ; pokedex id
+
+ db 80, 70, 65, 100, 120
+ ; hp atk def spd spc
+
+ db WATER, POISON ; type
+ db 60 ; catch rate
+ db 205 ; base exp
+
+ INCBIN "gfx/pokemon/front/tentacruel.pic", 0, 1 ; sprite dimensions
+ dw TentacruelPicFront, TentacruelPicBack
+
+ db ACID, SUPERSONIC, WRAP, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, \
+ MEGA_DRAIN, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SKULL_BASH, REST, SUBSTITUTE, CUT, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/vaporeon.asm
+++ b/data/pokemon/base_stats/vaporeon.asm
@@ -1,28 +1,23 @@
-db DEX_VAPOREON ; pokedex id
-db 130 ; base hp
-db 65 ; base attack
-db 60 ; base defense
-db 65 ; base speed
-db 110 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 45 ; catch rate
-db 196 ; base exp yield
-INCBIN "gfx/pokemon/front/vaporeon.pic",0,1 ; 66, sprite dimensions
-dw VaporeonPicFront
-dw VaporeonPicBack
-; attacks known at lvl 0
-db TACKLE
-db SAND_ATTACK
-db QUICK_ATTACK
-db WATER_GUN
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 20
- tmlearn 31,32
- tmlearn 33,34,39,40
- tmlearn 44
- tmlearn 50,53
-db 0 ; padding
+ db DEX_VAPOREON ; pokedex id
+
+ db 130, 65, 60, 65, 110
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 45 ; catch rate
+ db 196 ; base exp
+
+ INCBIN "gfx/pokemon/front/vaporeon.pic", 0, 1 ; sprite dimensions
+ dw VaporeonPicFront, VaporeonPicBack
+
+ db TACKLE, SAND_ATTACK, QUICK_ATTACK, WATER_GUN ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, BUBBLEBEAM, \
+ WATER_GUN, ICE_BEAM, BLIZZARD, HYPER_BEAM, RAGE, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, SWIFT, \
+ SKULL_BASH, REST, SUBSTITUTE, SURF
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/venomoth.asm
+++ b/data/pokemon/base_stats/venomoth.asm
@@ -1,28 +1,23 @@
-db DEX_VENOMOTH ; pokedex id
-db 70 ; base hp
-db 65 ; base attack
-db 60 ; base defense
-db 90 ; base speed
-db 90 ; base special
-db BUG ; species type 1
-db POISON ; species type 2
-db 75 ; catch rate
-db 138 ; base exp yield
-INCBIN "gfx/pokemon/front/venomoth.pic",0,1 ; 77, sprite dimensions
-dw VenomothPicFront
-dw VenomothPicBack
-; attacks known at lvl 0
-db TACKLE
-db DISABLE
-db POISONPOWDER
-db LEECH_LIFE
-db 0 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,15
- tmlearn 20,21,22
- tmlearn 29,30,31,32
- tmlearn 33,34,39
- tmlearn 44,46
- tmlearn 50
-db 0 ; padding
+ db DEX_VENOMOTH ; pokedex id
+
+ db 70, 65, 60, 90, 90
+ ; hp atk def spd spc
+
+ db BUG, POISON ; type
+ db 75 ; catch rate
+ db 138 ; base exp
+
+ INCBIN "gfx/pokemon/front/venomoth.pic", 0, 1 ; sprite dimensions
+ dw VenomothPicFront, VenomothPicBack
+
+ db TACKLE, DISABLE, POISONPOWDER, LEECH_LIFE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MEGA_DRAIN, SOLARBEAM, PSYCHIC_M, \
+ TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SWIFT, REST, PSYWAVE, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/venonat.asm
+++ b/data/pokemon/base_stats/venonat.asm
@@ -1,28 +1,22 @@
-db DEX_VENONAT ; pokedex id
-db 60 ; base hp
-db 55 ; base attack
-db 50 ; base defense
-db 45 ; base speed
-db 40 ; base special
-db BUG ; species type 1
-db POISON ; species type 2
-db 190 ; catch rate
-db 75 ; base exp yield
-INCBIN "gfx/pokemon/front/venonat.pic",0,1 ; 55, sprite dimensions
-dw VenonatPicFront
-dw VenonatPicBack
-; attacks known at lvl 0
-db TACKLE
-db DISABLE
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9,10
- tmlearn 20,21,22
- tmlearn 29,31,32
- tmlearn 33,34
- tmlearn 44,46
- tmlearn 50
-db 0 ; padding
+ db DEX_VENONAT ; pokedex id
+
+ db 60, 55, 50, 45, 40
+ ; hp atk def spd spc
+
+ db BUG, POISON ; type
+ db 190 ; catch rate
+ db 75 ; base exp
+
+ INCBIN "gfx/pokemon/front/venonat.pic", 0, 1 ; sprite dimensions
+ dw VenonatPicFront, VenonatPicBack
+
+ db TACKLE, DISABLE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, DOUBLE_EDGE, RAGE, MEGA_DRAIN, \
+ SOLARBEAM, PSYCHIC_M, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, REST, PSYWAVE, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/venusaur.asm
+++ b/data/pokemon/base_stats/venusaur.asm
@@ -1,28 +1,23 @@
-db DEX_VENUSAUR ; pokedex id
-db 80 ; base hp
-db 82 ; base attack
-db 83 ; base defense
-db 80 ; base speed
-db 100 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 45 ; catch rate
-db 208 ; base exp yield
-INCBIN "gfx/pokemon/front/venusaur.pic",0,1 ; 77, sprite dimensions
-dw VenusaurPicFront
-dw VenusaurPicBack
-; attacks known at lvl 0
-db TACKLE
-db GROWL
-db LEECH_SEED
-db VINE_WHIP
-db 3 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,15
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_VENUSAUR ; pokedex id
+
+ db 80, 82, 83, 80, 100
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 45 ; catch rate
+ db 208 ; base exp
+
+ INCBIN "gfx/pokemon/front/venusaur.pic", 0, 1 ; sprite dimensions
+ dw VenusaurPicFront, VenusaurPicBack
+
+ db TACKLE, GROWL, LEECH_SEED, VINE_WHIP ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MEGA_DRAIN, SOLARBEAM, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, REST, SUBSTITUTE, \
+ CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/victreebel.asm
+++ b/data/pokemon/base_stats/victreebel.asm
@@ -1,28 +1,23 @@
-db DEX_VICTREEBEL ; pokedex id
-db 80 ; base hp
-db 105 ; base attack
-db 65 ; base defense
-db 70 ; base speed
-db 100 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 45 ; catch rate
-db 191 ; base exp yield
-INCBIN "gfx/pokemon/front/victreebel.pic",0,1 ; 77, sprite dimensions
-dw VictreebelPicFront
-dw VictreebelPicBack
-; attacks known at lvl 0
-db SLEEP_POWDER
-db STUN_SPORE
-db ACID
-db RAZOR_LEAF
-db 3 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,15
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_VICTREEBEL ; pokedex id
+
+ db 80, 105, 65, 70, 100
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 45 ; catch rate
+ db 191 ; base exp
+
+ INCBIN "gfx/pokemon/front/victreebel.pic", 0, 1 ; sprite dimensions
+ dw VictreebelPicFront, VictreebelPicBack
+
+ db SLEEP_POWDER, STUN_SPORE, ACID, RAZOR_LEAF ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MEGA_DRAIN, SOLARBEAM, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, REST, SUBSTITUTE, \
+ CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/vileplume.asm
+++ b/data/pokemon/base_stats/vileplume.asm
@@ -1,28 +1,23 @@
-db DEX_VILEPLUME ; pokedex id
-db 75 ; base hp
-db 80 ; base attack
-db 85 ; base defense
-db 50 ; base speed
-db 100 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 45 ; catch rate
-db 184 ; base exp yield
-INCBIN "gfx/pokemon/front/vileplume.pic",0,1 ; 77, sprite dimensions
-dw VileplumePicFront
-dw VileplumePicBack
-; attacks known at lvl 0
-db STUN_SPORE
-db SLEEP_POWDER
-db ACID
-db PETAL_DANCE
-db 3 ; growth rate
-; learnset
- tmlearn 3,6,8
- tmlearn 9,10,15
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_VILEPLUME ; pokedex id
+
+ db 75, 80, 85, 50, 100
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 45 ; catch rate
+ db 184 ; base exp
+
+ INCBIN "gfx/pokemon/front/vileplume.pic", 0, 1 ; sprite dimensions
+ dw VileplumePicFront, VileplumePicBack
+
+ db STUN_SPORE, SLEEP_POWDER, ACID, PETAL_DANCE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, MEGA_DRAIN, SOLARBEAM, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, REST, SUBSTITUTE, \
+ CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/voltorb.asm
+++ b/data/pokemon/base_stats/voltorb.asm
@@ -1,28 +1,23 @@
-db DEX_VOLTORB ; pokedex id
-db 40 ; base hp
-db 30 ; base attack
-db 50 ; base defense
-db 100 ; base speed
-db 55 ; base special
-db ELECTRIC ; species type 1
-db ELECTRIC ; species type 2
-db 190 ; catch rate
-db 103 ; base exp yield
-INCBIN "gfx/pokemon/front/voltorb.pic",0,1 ; 55, sprite dimensions
-dw VoltorbPicFront
-dw VoltorbPicBack
-; attacks known at lvl 0
-db TACKLE
-db SCREECH
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 9
- tmlearn 20,24
- tmlearn 25,30,31,32
- tmlearn 33,34,36,39
- tmlearn 44,45,47
- tmlearn 50,55
-db 0 ; padding
+ db DEX_VOLTORB ; pokedex id
+
+ db 40, 30, 50, 100, 55
+ ; hp atk def spd spc
+
+ db ELECTRIC, ELECTRIC ; type
+ db 190 ; catch rate
+ db 103 ; base exp
+
+ INCBIN "gfx/pokemon/front/voltorb.pic", 0, 1 ; sprite dimensions
+ dw VoltorbPicFront, VoltorbPicBack
+
+ db TACKLE, SCREECH, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, TAKE_DOWN, RAGE, THUNDERBOLT, THUNDER, \
+ TELEPORT, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ SELFDESTRUCT, SWIFT, REST, THUNDER_WAVE, EXPLOSION, \
+ SUBSTITUTE, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/vulpix.asm
+++ b/data/pokemon/base_stats/vulpix.asm
@@ -1,28 +1,22 @@
-db DEX_VULPIX ; pokedex id
-db 38 ; base hp
-db 41 ; base attack
-db 40 ; base defense
-db 65 ; base speed
-db 65 ; base special
-db FIRE ; species type 1
-db FIRE ; species type 2
-db 190 ; catch rate
-db 63 ; base exp yield
-INCBIN "gfx/pokemon/front/vulpix.pic",0,1 ; 66, sprite dimensions
-dw VulpixPicFront
-dw VulpixPicBack
-; attacks known at lvl 0
-db EMBER
-db TAIL_WHIP
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6,8
- tmlearn 9,10
- tmlearn 20
- tmlearn 28,31,32
- tmlearn 33,34,38,39,40
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_VULPIX ; pokedex id
+
+ db 38, 41, 40, 65, 65
+ ; hp atk def spd spc
+
+ db FIRE, FIRE ; type
+ db 190 ; catch rate
+ db 63 ; base exp
+
+ INCBIN "gfx/pokemon/front/vulpix.pic", 0, 1 ; sprite dimensions
+ dw VulpixPicFront, VulpixPicBack
+
+ db EMBER, TAIL_WHIP, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, BODY_SLAM, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ DIG, MIMIC, DOUBLE_TEAM, REFLECT, BIDE, \
+ FIRE_BLAST, SWIFT, SKULL_BASH, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/wartortle.asm
+++ b/data/pokemon/base_stats/wartortle.asm
@@ -1,28 +1,24 @@
-db DEX_WARTORTLE ; pokedex id
-db 59 ; base hp
-db 63 ; base attack
-db 80 ; base defense
-db 58 ; base speed
-db 65 ; base special
-db WATER ; species type 1
-db WATER ; species type 2
-db 45 ; catch rate
-db 143 ; base exp yield
-INCBIN "gfx/pokemon/front/wartortle.pic",0,1 ; 66, sprite dimensions
-dw WartortlePicFront
-dw WartortlePicBack
-; attacks known at lvl 0
-db TACKLE
-db TAIL_WHIP
-db BUBBLE
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14
- tmlearn 17,18,19,20
- tmlearn 28,31,32
- tmlearn 33,34,40
- tmlearn 44
- tmlearn 50,53,54
-db 0 ; padding
+ db DEX_WARTORTLE ; pokedex id
+
+ db 59, 63, 80, 58, 65
+ ; hp atk def spd spc
+
+ db WATER, WATER ; type
+ db 45 ; catch rate
+ db 143 ; base exp
+
+ INCBIN "gfx/pokemon/front/wartortle.pic", 0, 1 ; sprite dimensions
+ dw WartortlePicFront, WartortlePicBack
+
+ db TACKLE, TAIL_WHIP, BUBBLE, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm MEGA_PUNCH, MEGA_KICK, TOXIC, BODY_SLAM, TAKE_DOWN, \
+ DOUBLE_EDGE, BUBBLEBEAM, WATER_GUN, ICE_BEAM, BLIZZARD, \
+ SUBMISSION, COUNTER, SEISMIC_TOSS, RAGE, DIG, \
+ MIMIC, DOUBLE_TEAM, REFLECT, BIDE, SKULL_BASH, \
+ REST, SUBSTITUTE, SURF, STRENGTH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/weedle.asm
+++ b/data/pokemon/base_stats/weedle.asm
@@ -1,28 +1,20 @@
-db DEX_WEEDLE ; pokedex id
-db 40 ; base hp
-db 35 ; base attack
-db 30 ; base defense
-db 50 ; base speed
-db 20 ; base special
-db BUG ; species type 1
-db POISON ; species type 2
-db 255 ; catch rate
-db 52 ; base exp yield
-INCBIN "gfx/pokemon/front/weedle.pic",0,1 ; 55, sprite dimensions
-dw WeedlePicFront
-dw WeedlePicBack
-; attacks known at lvl 0
-db POISON_STING
-db STRING_SHOT
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
- tmlearn 0
-db 0 ; padding
+ db DEX_WEEDLE ; pokedex id
+
+ db 40, 35, 30, 50, 20
+ ; hp atk def spd spc
+
+ db BUG, POISON ; type
+ db 255 ; catch rate
+ db 52 ; base exp
+
+ INCBIN "gfx/pokemon/front/weedle.pic", 0, 1 ; sprite dimensions
+ dw WeedlePicFront, WeedlePicBack
+
+ db POISON_STING, STRING_SHOT, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/weepinbell.asm
+++ b/data/pokemon/base_stats/weepinbell.asm
@@ -1,28 +1,22 @@
-db DEX_WEEPINBELL ; pokedex id
-db 65 ; base hp
-db 90 ; base attack
-db 50 ; base defense
-db 55 ; base speed
-db 85 ; base special
-db GRASS ; species type 1
-db POISON ; species type 2
-db 120 ; catch rate
-db 151 ; base exp yield
-INCBIN "gfx/pokemon/front/weepinbell.pic",0,1 ; 66, sprite dimensions
-dw WeepinbellPicFront
-dw WeepinbellPicBack
-; attacks known at lvl 0
-db VINE_WHIP
-db GROWTH
-db WRAP
-db 0
-db 3 ; growth rate
-; learnset
- tmlearn 3,6
- tmlearn 9,10
- tmlearn 20,21,22
- tmlearn 31,32
- tmlearn 33,34
- tmlearn 44
- tmlearn 50,51
-db 0 ; padding
+ db DEX_WEEPINBELL ; pokedex id
+
+ db 65, 90, 50, 55, 85
+ ; hp atk def spd spc
+
+ db GRASS, POISON ; type
+ db 120 ; catch rate
+ db 151 ; base exp
+
+ INCBIN "gfx/pokemon/front/weepinbell.pic", 0, 1 ; sprite dimensions
+ dw WeepinbellPicFront, WeepinbellPicBack
+
+ db VINE_WHIP, GROWTH, WRAP, NO_MOVE ; level 1 learnset
+ db 3 ; growth rate
+
+ ; tm/hm learnset
+ tmhm SWORDS_DANCE, TOXIC, TAKE_DOWN, DOUBLE_EDGE, RAGE, \
+ MEGA_DRAIN, SOLARBEAM, MIMIC, DOUBLE_TEAM, REFLECT, \
+ BIDE, REST, SUBSTITUTE, CUT
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/weezing.asm
+++ b/data/pokemon/base_stats/weezing.asm
@@ -1,28 +1,22 @@
-db DEX_WEEZING ; pokedex id
-db 65 ; base hp
-db 90 ; base attack
-db 120 ; base defense
-db 60 ; base speed
-db 85 ; base special
-db POISON ; species type 1
-db POISON ; species type 2
-db 60 ; catch rate
-db 173 ; base exp yield
-INCBIN "gfx/pokemon/front/weezing.pic",0,1 ; 77, sprite dimensions
-dw WeezingPicFront
-dw WeezingPicBack
-; attacks known at lvl 0
-db TACKLE
-db SMOG
-db SLUDGE
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 6
- tmlearn 15
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 34,36,38
- tmlearn 44,47
- tmlearn 50
-db 0 ; padding
+ db DEX_WEEZING ; pokedex id
+
+ db 65, 90, 120, 60, 85
+ ; hp atk def spd spc
+
+ db POISON, POISON ; type
+ db 60 ; catch rate
+ db 173 ; base exp
+
+ INCBIN "gfx/pokemon/front/weezing.pic", 0, 1 ; sprite dimensions
+ dw WeezingPicFront, WeezingPicBack
+
+ db TACKLE, SMOG, SLUDGE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm TOXIC, HYPER_BEAM, RAGE, THUNDERBOLT, THUNDER, \
+ MIMIC, DOUBLE_TEAM, BIDE, SELFDESTRUCT, FIRE_BLAST, \
+ REST, EXPLOSION, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/wigglytuff.asm
+++ b/data/pokemon/base_stats/wigglytuff.asm
@@ -1,28 +1,26 @@
-db DEX_WIGGLYTUFF ; pokedex id
-db 140 ; base hp
-db 70 ; base attack
-db 45 ; base defense
-db 45 ; base speed
-db 50 ; base special
-db NORMAL ; species type 1
-db NORMAL ; species type 2
-db 50 ; catch rate
-db 109 ; base exp yield
-INCBIN "gfx/pokemon/front/wigglytuff.pic",0,1 ; 66, sprite dimensions
-dw WigglytuffPicFront
-dw WigglytuffPicBack
-; attacks known at lvl 0
-db SING
-db DISABLE
-db DEFENSE_CURL
-db DOUBLESLAP
-db 4 ; growth rate
-; learnset
- tmlearn 1,5,6,8
- tmlearn 9,10,11,12,13,14,15
- tmlearn 17,18,19,20,22,24
- tmlearn 25,29,30,31,32
- tmlearn 33,34,38,40
- tmlearn 44,45,46
- tmlearn 49,50,54,55
-db 0 ; padding
+ db DEX_WIGGLYTUFF ; pokedex id
+
+ db 140, 70, 45, 45, 50
+ ; hp atk def spd spc
+
+ db NORMAL, NORMAL ; type
+ db 50 ; catch rate
+ db 109 ; base exp
+
+ INCBIN "gfx/pokemon/front/wigglytuff.pic", 0, 1 ; sprite dimensions
+ dw WigglytuffPicFront, WigglytuffPicBack
+
+ db SING, DISABLE, DEFENSE_CURL, DOUBLESLAP ; level 1 learnset
+ db 4 ; 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 0 ; padding
--- a/data/pokemon/base_stats/zapdos.asm
+++ b/data/pokemon/base_stats/zapdos.asm
@@ -1,28 +1,23 @@
-db DEX_ZAPDOS ; pokedex id
-db 90 ; base hp
-db 90 ; base attack
-db 85 ; base defense
-db 100 ; base speed
-db 125 ; base special
-db ELECTRIC ; species type 1
-db FLYING ; species type 2
-db 3 ; catch rate
-db 216 ; base exp yield
-INCBIN "gfx/pokemon/front/zapdos.pic",0,1 ; 77, sprite dimensions
-dw ZapdosPicFront
-dw ZapdosPicBack
-; attacks known at lvl 0
-db THUNDERSHOCK
-db DRILL_PECK
-db 0
-db 0
-db 5 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10,15
- tmlearn 20,24
- tmlearn 25,31,32
- tmlearn 33,34,39
- tmlearn 43,44,45
- tmlearn 50,52,55
-db 0 ; padding
+ db DEX_ZAPDOS ; pokedex id
+
+ db 90, 90, 85, 100, 125
+ ; hp atk def spd spc
+
+ db ELECTRIC, FLYING ; type
+ db 3 ; catch rate
+ db 216 ; base exp
+
+ INCBIN "gfx/pokemon/front/zapdos.pic", 0, 1 ; sprite dimensions
+ dw ZapdosPicFront, ZapdosPicBack
+
+ db THUNDERSHOCK, DRILL_PECK, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 5 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ HYPER_BEAM, RAGE, THUNDERBOLT, THUNDER, MIMIC, \
+ DOUBLE_TEAM, REFLECT, BIDE, SWIFT, SKY_ATTACK, \
+ REST, THUNDER_WAVE, SUBSTITUTE, FLY, FLASH
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/base_stats/zubat.asm
+++ b/data/pokemon/base_stats/zubat.asm
@@ -1,28 +1,22 @@
-db DEX_ZUBAT ; pokedex id
-db 40 ; base hp
-db 45 ; base attack
-db 35 ; base defense
-db 55 ; base speed
-db 40 ; base special
-db POISON ; species type 1
-db FLYING ; species type 2
-db 255 ; catch rate
-db 54 ; base exp yield
-INCBIN "gfx/pokemon/front/zubat.pic",0,1 ; 55, sprite dimensions
-dw ZubatPicFront
-dw ZubatPicBack
-; attacks known at lvl 0
-db LEECH_LIFE
-db 0
-db 0
-db 0
-db 0 ; growth rate
-; learnset
- tmlearn 2,4,6
- tmlearn 9,10
- tmlearn 20,21
- tmlearn 31,32
- tmlearn 34,39
- tmlearn 44
- tmlearn 50
-db 0 ; padding
+ db DEX_ZUBAT ; pokedex id
+
+ db 40, 45, 35, 55, 40
+ ; hp atk def spd spc
+
+ db POISON, FLYING ; type
+ db 255 ; catch rate
+ db 54 ; base exp
+
+ INCBIN "gfx/pokemon/front/zubat.pic", 0, 1 ; sprite dimensions
+ dw ZubatPicFront, ZubatPicBack
+
+ db LEECH_LIFE, NO_MOVE, NO_MOVE, NO_MOVE ; level 1 learnset
+ db 0 ; growth rate
+
+ ; tm/hm learnset
+ tmhm RAZOR_WIND, WHIRLWIND, TOXIC, TAKE_DOWN, DOUBLE_EDGE, \
+ RAGE, MEGA_DRAIN, MIMIC, DOUBLE_TEAM, BIDE, \
+ SWIFT, REST, SUBSTITUTE
+ ; end
+
+ db 0 ; padding
--- a/data/pokemon/mew.asm
+++ b/data/pokemon/mew.asm
@@ -11,4 +11,5 @@
MewPicFront:: INCBIN "gfx/pokemon/front/mew.pic"
MewPicBack:: INCBIN "gfx/pokemon/back/mewb.pic"
+MewBaseStats::
INCLUDE "data/pokemon/base_stats/mew.asm"
--- a/engine/items/item_effects.asm
+++ b/engine/items/item_effects.asm
@@ -2,7 +2,7 @@
ld a, 1
ld [wActionResultOrTookBattleTurn], a ; initialise to success value
ld a, [wcf91] ;contains item_ID
- cp HM_01
+ cp HM01
jp nc, ItemUseTMHM
ld hl, ItemUsePtrTable
dec a
@@ -2201,10 +2201,10 @@
and a
jp nz, ItemUseNotTime
ld a, [wcf91]
- sub TM_01
+ sub TM01 ; underflows below 0 for HM items (before TM items)
push af
jr nc, .skipAdding
- add 55 ; if item is an HM, add 55
+ add NUM_TMS + NUM_HMS ; adjust HM IDs to come after TM IDs
.skipAdding
inc a
ld [wd11e], a
@@ -2661,7 +2661,7 @@
ld a, $01
ld [wIsKeyItem], a
ld a, [wcf91]
- cp HM_01 ; is the item an HM or TM?
+ cp HM01 ; is the item an HM or TM?
jr nc, .checkIfItemIsHM
; if the item is not an HM or TM
push af
--- a/engine/items/tm_prices.asm
+++ b/engine/items/tm_prices.asm
@@ -2,8 +2,8 @@
; Input: [wcf91] = Item Id of a TM
; Output: Stores the TM price at hItemPrice
ld a, [wcf91] ; a contains TM item id
- sub TM_01
- ret c
+ sub TM01 ; underflows below 0 for HM items (before TM items)
+ ret c ; HMs are priceless
ld d, a
ld hl, TechnicalMachinePrices
srl a
--- a/engine/menus/start_sub_menus.asm
+++ b/engine/menus/start_sub_menus.asm
@@ -384,7 +384,7 @@
; use item
ld [wPseudoItemID], a ; a must be 0 due to above conditional jump
ld a, [wcf91]
- cp HM_01
+ cp HM01
jr nc, .useItem_partyMenu
ld hl, UsableItems_CloseMenu
ld de, 1
--- a/home.asm
+++ b/home.asm
@@ -960,7 +960,7 @@
ld h, [hl]
ld l, a
ld a, [wcf91] ; a contains item id
- cp HM_01
+ cp HM01
jr nc, .getTMPrice
ld bc, $3
.loop
--- a/home/names.asm
+++ b/home/names.asm
@@ -30,7 +30,7 @@
push hl
push bc
ld a, [wd11e]
- cp HM_01 ; is this a TM/HM?
+ cp HM01 ; is this a TM/HM?
jr nc, .Machine
ld [wd0b5], a
@@ -56,11 +56,11 @@
push bc
ld a, [wd11e]
push af
- cp TM_01 ; is this a TM? [not HM]
+ cp TM01 ; is this a TM? [not HM]
jr nc, .WriteTM
-; if HM, then write "HM" and add 5 to the item ID, so we can reuse the
+; if HM, then write "HM" and add NUM_HMS to the item ID, so we can reuse the
; TM printing code
- add 5
+ add NUM_HMS
ld [wd11e], a
ld hl, HiddenPrefix ; points to "HM"
ld bc, 2
@@ -74,7 +74,7 @@
; now get the machine number and convert it to text
ld a, [wd11e]
- sub TM_01 - 1
+ sub TM01 - 1
ld b, "0"
.FirstDigit
sub 10
@@ -109,9 +109,9 @@
; sets carry if item is HM, clears carry if item is not HM
; Input: a = item ID
IsItemHM::
- cp HM_01
+ cp HM01
jr c, .notHM
- cp TM_01
+ cp TM01
ret
.notHM
and a
--- a/home/names2.asm
+++ b/home/names2.asm
@@ -19,7 +19,7 @@
; TM names are separate from item names.
; BUG: This applies to all names instead of just items.
- cp HM_01
+ cp HM01
jp nc, GetMachineName
ld a, [hLoadedROMBank]
--- a/macros/data.asm
+++ b/macros/data.asm
@@ -16,15 +16,37 @@
coins equs "bcd2"
money equs "bcd3"
-tmlearn: MACRO
-x = 0
- REPT _NARG
-IF \1 != 0
-x = x | (1 << ((\1 - 1) % 8))
-ENDC
- SHIFT
- ENDR
- db x
+tmhm: MACRO
+; used in data/pokemon/base_stats/*.asm
+_tms1 = 0 ; TM01-TM24 (24)
+_tms2 = 0 ; TM25-TM48 (24)
+_tms3 = 0 ; TM49-TM50 + HM01-HM05 (7/24)
+rept _NARG
+ if DEF(\1_TMNUM)
+ if \1_TMNUM < 24 + 1
+_tms1 = _tms1 | (1 << ((\1_TMNUM) - 1))
+ elif \1_TMNUM < 48 + 1
+_tms2 = _tms2 | (1 << ((\1_TMNUM) - 1 - 24))
+ else
+_tms3 = _tms3 | (1 << ((\1_TMNUM) - 1 - 48))
+ endc
+ else
+ fail "\1 is not a TM or HM move"
+ endc
+ shift
+endr
+rept 3 ; TM01-TM24 (24/24)
+ db _tms1 & $ff
+_tms1 = _tms1 >> 8
+endr
+rept 3 ; TM25-TM48 (24/24)
+ db _tms2 & $ff
+_tms2 = _tms2 >> 8
+endr
+rept 1 ; TM49-TM50 + HM01-HM05 (7/8)
+ db _tms3 & $ff
+_tms3 = _tms3 >> 8
+endr
ENDM
--- a/scripts/CeladonCity.asm
+++ b/scripts/CeladonCity.asm
@@ -46,7 +46,7 @@
jr nz, .asm_7053f
ld hl, TM41PreText
call PrintText
- lb bc, TM_41, 1
+ lb bc, TM_SOFTBOILED, 1
call GiveItem
jr c, .Success
ld hl, TM41NoRoomText
--- a/scripts/CeladonGym.asm
+++ b/scripts/CeladonGym.asm
@@ -47,7 +47,7 @@
ld [hSpriteIndexOrTextID], a
call DisplayTextID
SetEvent EVENT_BEAT_ERIKA
- lb bc, TM_21, 1
+ lb bc, TM_MEGA_DRAIN, 1
call GiveItem
jr nc, .BagFull
ld a, $a
--- a/scripts/CeladonMart3F.asm
+++ b/scripts/CeladonMart3F.asm
@@ -26,7 +26,7 @@
jr nz, .asm_a5463
ld hl, TM18PreReceiveText
call PrintText
- lb bc, TM_18, 1
+ lb bc, TM_COUNTER, 1
call GiveItem
jr nc, .BagFull
SetEvent EVENT_GOT_TM18
--- a/scripts/CeladonMartRoof.asm
+++ b/scripts/CeladonMartRoof.asm
@@ -90,7 +90,7 @@
ld hl, CeladonMartRoofText_48515
call PrintText
call RemoveItemByIDBank12
- lb bc, TM_49, 1
+ lb bc, TM_TRI_ATTACK, 1
call GiveItem
jr nc, .bagFull
ld hl, ReceivedTM49Text
@@ -103,7 +103,7 @@
ld hl, CeladonMartRoofText_48504
call PrintText
call RemoveItemByIDBank12
- lb bc, TM_48, 1
+ lb bc, TM_ROCK_SLIDE, 1
call GiveItem
jr nc, .bagFull
ld hl, CeladonMartRoofText_4850a
@@ -116,7 +116,7 @@
ld hl, CeladonMartRoofText_484f3
call PrintText
call RemoveItemByIDBank12
- lb bc, TM_13, 1
+ lb bc, TM_ICE_BEAM, 1
call GiveItem
jr nc, .bagFull
ld hl, CeladonMartRoofText_484f9
--- a/scripts/CeruleanCity.asm
+++ b/scripts/CeruleanCity.asm
@@ -299,7 +299,7 @@
.asm_4ca20
ld hl, CeruleanCityText_196f3
call PrintText
- lb bc, TM_28, 1
+ lb bc, TM_DIG, 1
call GiveItem
jr c, .Success
ld hl, TM28NoRoomText
--- a/scripts/CeruleanGym.asm
+++ b/scripts/CeruleanGym.asm
@@ -47,7 +47,7 @@
ld [hSpriteIndexOrTextID], a
call DisplayTextID
SetEvent EVENT_BEAT_MISTY
- lb bc, TM_11, 1
+ lb bc, TM_BUBBLEBEAM, 1
call GiveItem
jr nc, .BagFull
ld a, $6
--- a/scripts/CinnabarGym.asm
+++ b/scripts/CinnabarGym.asm
@@ -144,7 +144,7 @@
ld [hSpriteIndexOrTextID], a
call DisplayTextID
SetEvent EVENT_BEAT_BLAINE
- lb bc, TM_38, 1
+ lb bc, TM_FIRE_BLAST, 1
call GiveItem
jr nc, .BagFull
ld a, $b
--- a/scripts/CinnabarLabMetronomeRoom.asm
+++ b/scripts/CinnabarLabMetronomeRoom.asm
@@ -14,7 +14,7 @@
jr nz, .asm_e551a
ld hl, TM35PreReceiveText
call PrintText
- lb bc, TM_35, 1
+ lb bc, TM_METRONOME, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM35Text
--- a/scripts/CopycatsHouse2F.asm
+++ b/scripts/CopycatsHouse2F.asm
@@ -23,7 +23,7 @@
jr z, .asm_62ecd
ld hl, TM31PreReceiveText
call PrintText
- lb bc, TM_31, 1
+ lb bc, TM_MIMIC, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM31Text
--- a/scripts/FuchsiaGym.asm
+++ b/scripts/FuchsiaGym.asm
@@ -47,7 +47,7 @@
ld [hSpriteIndexOrTextID], a
call DisplayTextID
SetEvent EVENT_BEAT_KOGA
- lb bc, TM_06, 1
+ lb bc, TM_TOXIC, 1
call GiveItem
jr nc, .BagFull
ld a, $a
--- a/scripts/MrPsychicsHouse.asm
+++ b/scripts/MrPsychicsHouse.asm
@@ -10,7 +10,7 @@
jr nz, .asm_9e72b
ld hl, TM29PreReceiveText
call PrintText
- lb bc, TM_29, 1
+ lb bc, TM_PSYCHIC_M, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM29Text
--- a/scripts/PewterGym.asm
+++ b/scripts/PewterGym.asm
@@ -47,7 +47,7 @@
ld [hSpriteIndexOrTextID], a
call DisplayTextID
SetEvent EVENT_BEAT_BROCK
- lb bc, TM_34, 1
+ lb bc, TM_BIDE, 1
call GiveItem
jr nc, .BagFull
ld a, $5
--- a/scripts/Route12Gate2F.asm
+++ b/scripts/Route12Gate2F.asm
@@ -12,7 +12,7 @@
jr c, .asm_0ad3c
ld hl, TM39PreReceiveText
call PrintText
- lb bc, TM_39, 1
+ lb bc, TM_SWIFT, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM39Text
--- a/scripts/Route16FlyHouse.asm
+++ b/scripts/Route16FlyHouse.asm
@@ -12,7 +12,7 @@
jr nz, .asm_13616
ld hl, Route16HouseText3
call PrintText
- lb bc, HM_02, 1
+ lb bc, HM_FLY, 1
call GiveItem
jr nc, .BagFull
SetEvent EVENT_GOT_HM02
--- a/scripts/Route2Gate.asm
+++ b/scripts/Route2Gate.asm
@@ -11,7 +11,7 @@
jr nz, .asm_5d60d
ld a, 10 ; pokemon needed
ld [hOaksAideRequirement], a
- ld a, HM_05 ; oak's aide reward
+ ld a, HM_FLASH ; oak's aide reward
ld [hOaksAideRewardItem], a
ld [wd11e], a
call GetItemName
--- a/scripts/SSAnneCaptainsRoom.asm
+++ b/scripts/SSAnneCaptainsRoom.asm
@@ -22,7 +22,7 @@
call PrintText
ld hl, ReceivingHM01Text
call PrintText
- lb bc, HM_01, 1
+ lb bc, HM_CUT, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedHM01Text
--- a/scripts/SafariZoneSecretHouse.asm
+++ b/scripts/SafariZoneSecretHouse.asm
@@ -10,7 +10,7 @@
jr nz, .asm_20a9b
ld hl, SafariZoneSecretHouseText_4a350
call PrintText
- lb bc, HM_03, 1
+ lb bc, HM_SURF, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedHM03Text
--- a/scripts/SaffronGym.asm
+++ b/scripts/SaffronGym.asm
@@ -47,7 +47,7 @@
ld [hSpriteIndexOrTextID], a
call DisplayTextID
SetEvent EVENT_BEAT_SABRINA
- lb bc, TM_46, 1
+ lb bc, TM_PSYWAVE, 1
call GiveItem
jr nc, .BagFull
ld a, $b
--- a/scripts/SilphCo2F.asm
+++ b/scripts/SilphCo2F.asm
@@ -142,7 +142,7 @@
jr nz, .asm_59de4
ld hl, SilphCo2Text_59ded
call PrintText
- lb bc, TM_36, 1
+ lb bc, TM_SELFDESTRUCT, 1
call GiveItem
ld hl, TM36NoRoomText
jr nc, .asm_59de7
--- a/scripts/VermilionGym.asm
+++ b/scripts/VermilionGym.asm
@@ -66,7 +66,7 @@
ld [hSpriteIndexOrTextID], a
call DisplayTextID
SetEvent EVENT_BEAT_LT_SURGE
- lb bc, TM_24, 1
+ lb bc, TM_THUNDERBOLT, 1
call GiveItem
jr nc, .BagFull
ld a, $7
--- a/scripts/ViridianCity.asm
+++ b/scripts/ViridianCity.asm
@@ -235,7 +235,7 @@
jr nz, .gotTm42
ld hl, ViridianCityText_191ca
call PrintText
- lb bc, TM_42, 1
+ lb bc, TM_DREAM_EATER, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedTM42Text
--- a/scripts/ViridianGym.asm
+++ b/scripts/ViridianGym.asm
@@ -141,7 +141,7 @@
ld [hSpriteIndexOrTextID], a
call DisplayTextID
SetEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
- lb bc, TM_27, 1
+ lb bc, TM_FISSURE, 1
call GiveItem
jr nc, .BagFull
ld a, $d
--- a/scripts/WardensHouse.asm
+++ b/scripts/WardensHouse.asm
@@ -38,7 +38,7 @@
.asm_60cba
ld hl, WardenThankYouText
call PrintText
- lb bc, HM_04, 1
+ lb bc, HM_STRENGTH, 1
call GiveItem
jr nc, .BagFull
ld hl, ReceivedHM04Text