Merge pull request #699 from Rangi42/master

Resolve some miscellaneous issues
This commit is contained in:
Rangi 2020-03-23 21:05:39 -04:00 committed by GitHub
commit 63798d56d0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
76 changed files with 567 additions and 563 deletions

View File

@ -1294,7 +1294,7 @@ GetNoiseSample:
; load ptr to sample header in wNoiseSampleAddress
; are we on the last channel?
ld a, [wCurChannel]
and NUM_MUSIC_CHANS + -1
and NUM_MUSIC_CHANS - 1
cp CHAN4
; ret if not
ret nz

View File

@ -61,10 +61,10 @@ MOVE_LENGTH EQU const_value
const STAT_DEF
const STAT_SPD
const STAT_SATK
NUM_EXP_STATS EQU const_value + -1
NUM_EXP_STATS EQU const_value - 1
const STAT_SDEF
NUM_STATS EQU const_value + -1
NUM_BATTLE_STATS EQU NUM_STATS + -1 ; don't count HP
NUM_STATS EQU const_value - 1
NUM_BATTLE_STATS EQU NUM_STATS - 1 ; don't count HP
; stat formula constants
STAT_MIN_NORMAL EQU 5

View File

@ -13,7 +13,7 @@ const_value = 1
const MAGNAPLANT
const TROPICPLANT
const JUMBOPLANT
const TOWN_MAP_D
const TOWN_MAP_POSTER
const FAMICOM
const SUPER_NES
const NINTENDO_64

View File

@ -701,10 +701,10 @@
const EVENT_DECO_PLANT_1
const EVENT_DECO_PLANT_2
const EVENT_DECO_PLANT_3
const EVENT_DECO_PLANT_4
const EVENT_DECO_POSTER_1 ; 2b0
const EVENT_DECO_POSTER_2
const EVENT_DECO_POSTER_1
const EVENT_DECO_POSTER_2 ; 2b0
const EVENT_DECO_POSTER_3
const EVENT_DECO_POSTER_4
const EVENT_DECO_FAMICOM
const EVENT_DECO_SNES
const EVENT_DECO_N64

View File

@ -103,7 +103,7 @@
const MYSTIC_WATER ; 5f
const TWISTEDSPOON ; 60
const WHT_APRICORN ; 61
const BLACKBELT ; 62
const BLACKBELT_I ; 62
const BLK_APRICORN ; 63
const ITEM_64 ; 64
const PNK_APRICORN ; 65
@ -287,7 +287,7 @@ ENDM
add_mt FLAMETHROWER
add_mt THUNDERBOLT
add_mt ICE_BEAM
NUM_TM_HM_TUTOR EQU __enum__ + -1
NUM_TM_HM_TUTOR EQU __enum__ - 1
const ITEM_FA ; fa

View File

@ -257,7 +257,7 @@
const ROCK_SMASH ; f9
const WHIRLPOOL ; fa
const BEAT_UP ; fb
NUM_ATTACKS EQU const_value + -1
NUM_ATTACKS EQU const_value - 1
const MOVE_OR_ANIM_FC ; fc
const MOVE_OR_ANIM_FD ; fd

View File

@ -271,7 +271,7 @@ JOHTO_POKEMON EQU const_value
const LUGIA ; f9
const HO_OH ; fa
const CELEBI ; fb
NUM_POKEMON EQU const_value + -1
NUM_POKEMON EQU const_value - 1
const MON_FC ; fc
const EGG ; fd
const MON_FE ; fe
@ -311,4 +311,4 @@ NUM_POKEMON EQU const_value + -1
const UNOWN_X ; 24
const UNOWN_Y ; 25
const UNOWN_Z ; 26
NUM_UNOWN EQU const_value + -1 ; 26
NUM_UNOWN EQU const_value - 1 ; 26

View File

@ -124,7 +124,7 @@ MONS_PER_BOX EQU 20
NUM_BOXES EQU 14
; hall of fame
HOF_MON_LENGTH EQU 1 + 2 + 2 + 1 + (MON_NAME_LENGTH + -1) ; species, id, dvs, level, nick
HOF_MON_LENGTH EQU 1 + 2 + 2 + 1 + (MON_NAME_LENGTH - 1) ; species, id, dvs, level, nick
HOF_LENGTH EQU 1 + HOF_MON_LENGTH * PARTY_LENGTH + 1 ; win count, party, terminator
NUM_HOF_TEAMS EQU 30

View File

@ -224,7 +224,7 @@ EMOTE_FROM_MEM EQU -1
const FRUITTREE_PEWTER_CITY_1 ; 1c
const FRUITTREE_PEWTER_CITY_2 ; 1d
const FRUITTREE_FUCHSIA_CITY ; 1e
NUM_FRUIT_TREES EQU const_value + -1
NUM_FRUIT_TREES EQU const_value - 1
; describedecoration arguments
; DescribeDecoration.JumpTable indexes (see engine/overworld/decorations.asm)

View File

@ -28,7 +28,7 @@ UNUSED_TYPES EQU const_value
const TYPE_16
const TYPE_17
const TYPE_18
const CURSE_T
const CURSE_TYPE
UNUSED_TYPES_END EQU const_value
SPECIAL EQU const_value
@ -36,7 +36,7 @@ SPECIAL EQU const_value
const WATER
const GRASS
const ELECTRIC
const PSYCHIC
const PSYCHIC_TYPE
const ICE
const DRAGON
const DARK

View File

@ -7,56 +7,56 @@ ENDM
DecorationAttributes:
; entries correspond to deco constants
decoration DECO_PLANT, $00, $0, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, $00
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BED, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, $00
decoration DECO_BED, FEATHERY_BED, SET_UP_BED, EVENT_DECO_BED_1, $1b
decoration DECO_BED, PINK_BED, SET_UP_BED, EVENT_DECO_BED_2, $1c
decoration DECO_BED, POLKADOT_BED, SET_UP_BED, EVENT_DECO_BED_3, $1d
decoration DECO_BED, PIKACHU_BED, SET_UP_BED, EVENT_DECO_BED_4, $1e
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_CARPET, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, $00
decoration DECO_CARPET, RED_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_1, $08
decoration DECO_CARPET, BLUE_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_2, $0b
decoration DECO_CARPET, YELLOW_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_3, $0e
decoration DECO_CARPET, GREEN_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_4, $11
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_PLANT, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, $00
decoration DECO_PLANT, MAGNAPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_1, $20
decoration DECO_PLANT, TROPICPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_2, $21
decoration DECO_PLANT, JUMBOPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_3, $22
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_POSTER, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, $00
decoration DECO_PLANT, TOWN_MAP_D, SET_UP_POSTER, EVENT_DECO_PLANT_4, $1f
decoration DECO_POSTER, PIKACHU, SET_UP_POSTER, EVENT_DECO_POSTER_1, $23
decoration DECO_POSTER, CLEFAIRY, SET_UP_POSTER, EVENT_DECO_POSTER_2, $24
decoration DECO_POSTER, JIGGLYPUFF, SET_UP_POSTER, EVENT_DECO_POSTER_3, $25
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_CONSOLE, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, $00
decoration DECO_PLANT, FAMICOM, SET_UP_CONSOLE, EVENT_DECO_FAMICOM, SPRITE_FAMICOM
decoration DECO_PLANT, SUPER_NES, SET_UP_CONSOLE, EVENT_DECO_SNES, SPRITE_SNES
decoration DECO_PLANT, NINTENDO_64, SET_UP_CONSOLE, EVENT_DECO_N64, SPRITE_N64
decoration DECO_PLANT, VIRTUAL_BOY, SET_UP_CONSOLE, EVENT_DECO_VIRTUAL_BOY, SPRITE_VIRTUAL_BOY
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BIG_DOLL, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, $00
decoration DECO_BIGDOLL, SNORLAX, SET_UP_BIG_DOLL, EVENT_DECO_BIG_SNORLAX_DOLL, SPRITE_BIG_SNORLAX
decoration DECO_BIGDOLL, ONIX, SET_UP_BIG_DOLL, EVENT_DECO_BIG_ONIX_DOLL, SPRITE_BIG_ONIX
decoration DECO_BIGDOLL, LAPRAS, SET_UP_BIG_DOLL, EVENT_DECO_BIG_LAPRAS_DOLL, SPRITE_BIG_LAPRAS
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_DOLL, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, $00
decoration DECO_DOLL, PIKACHU, SET_UP_DOLL, EVENT_DECO_PIKACHU_DOLL, SPRITE_PIKACHU
decoration DECO_PLANT, SURF_PIKA_DOLL, SET_UP_DOLL, EVENT_DECO_SURFING_PIKACHU_DOLL, SPRITE_SURFING_PIKACHU
decoration DECO_DOLL, CLEFAIRY, SET_UP_DOLL, EVENT_DECO_CLEFAIRY_DOLL, SPRITE_CLEFAIRY
decoration DECO_DOLL, JIGGLYPUFF, SET_UP_DOLL, EVENT_DECO_JIGGLYPUFF_DOLL, SPRITE_JIGGLYPUFF
decoration DECO_DOLL, BULBASAUR, SET_UP_DOLL, EVENT_DECO_BULBASAUR_DOLL, SPRITE_BULBASAUR
decoration DECO_DOLL, CHARMANDER, SET_UP_DOLL, EVENT_DECO_CHARMANDER_DOLL, SPRITE_CHARMANDER
decoration DECO_DOLL, SQUIRTLE, SET_UP_DOLL, EVENT_DECO_SQUIRTLE_DOLL, SPRITE_SQUIRTLE
decoration DECO_DOLL, POLIWAG, SET_UP_DOLL, EVENT_DECO_POLIWAG_DOLL, SPRITE_POLIWAG
decoration DECO_DOLL, DIGLETT, SET_UP_DOLL, EVENT_DECO_DIGLETT_DOLL, SPRITE_DIGLETT
decoration DECO_DOLL, STARYU, SET_UP_DOLL, EVENT_DECO_STARMIE_DOLL, SPRITE_STARMIE
decoration DECO_DOLL, MAGIKARP, SET_UP_DOLL, EVENT_DECO_MAGIKARP_DOLL, SPRITE_MAGIKARP
decoration DECO_DOLL, ODDISH, SET_UP_DOLL, EVENT_DECO_ODDISH_DOLL, SPRITE_ODDISH
decoration DECO_DOLL, GENGAR, SET_UP_DOLL, EVENT_DECO_GENGAR_DOLL, SPRITE_GENGAR
decoration DECO_DOLL, SHELLDER, SET_UP_DOLL, EVENT_DECO_SHELLDER_DOLL, SPRITE_SHELLDER
decoration DECO_DOLL, GRIMER, SET_UP_DOLL, EVENT_DECO_GRIMER_DOLL, SPRITE_GRIMER
decoration DECO_DOLL, VOLTORB, SET_UP_DOLL, EVENT_DECO_VOLTORB_DOLL, SPRITE_VOLTORB
decoration DECO_DOLL, WEEDLE, SET_UP_DOLL, EVENT_DECO_WEEDLE_DOLL, SPRITE_WEEDLE
decoration DECO_DOLL, UNOWN, SET_UP_DOLL, EVENT_DECO_UNOWN_DOLL, SPRITE_UNOWN
decoration DECO_DOLL, GEODUDE, SET_UP_DOLL, EVENT_DECO_GEODUDE_DOLL, SPRITE_GEODUDE
decoration DECO_DOLL, MACHOP, SET_UP_DOLL, EVENT_DECO_MACHOP_DOLL, SPRITE_MACHOP
decoration DECO_DOLL, TENTACOOL, SET_UP_DOLL, EVENT_DECO_TENTACOOL_DOLL, SPRITE_TENTACOOL
decoration DECO_PLANT, GOLD_TROPHY, SET_UP_DOLL, EVENT_DECO_GOLD_TROPHY, SPRITE_GOLD_TROPHY
decoration DECO_PLANT, SILVER_TROPHY, SET_UP_DOLL, EVENT_DECO_SILVER_TROPHY, SPRITE_SILVER_TROPHY
decoration DECO_PLANT, 0, 0, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BED, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
decoration DECO_BED, FEATHERY_BED, SET_UP_BED, EVENT_DECO_BED_1, $1b
decoration DECO_BED, PINK_BED, SET_UP_BED, EVENT_DECO_BED_2, $1c
decoration DECO_BED, POLKADOT_BED, SET_UP_BED, EVENT_DECO_BED_3, $1d
decoration DECO_BED, PIKACHU_BED, SET_UP_BED, EVENT_DECO_BED_4, $1e
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_CARPET, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
decoration DECO_CARPET, RED_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_1, $08
decoration DECO_CARPET, BLUE_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_2, $0b
decoration DECO_CARPET, YELLOW_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_3, $0e
decoration DECO_CARPET, GREEN_CARPET, SET_UP_CARPET, EVENT_DECO_CARPET_4, $11
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_PLANT, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
decoration DECO_PLANT, MAGNAPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_1, $20
decoration DECO_PLANT, TROPICPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_2, $21
decoration DECO_PLANT, JUMBOPLANT, SET_UP_PLANT, EVENT_DECO_PLANT_3, $22
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_POSTER, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
decoration DECO_PLANT, TOWN_MAP_POSTER, SET_UP_POSTER, EVENT_DECO_POSTER_1, $1f
decoration DECO_POSTER, PIKACHU, SET_UP_POSTER, EVENT_DECO_POSTER_2, $23
decoration DECO_POSTER, CLEFAIRY, SET_UP_POSTER, EVENT_DECO_POSTER_3, $24
decoration DECO_POSTER, JIGGLYPUFF, SET_UP_POSTER, EVENT_DECO_POSTER_4, $25
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_CONSOLE, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
decoration DECO_PLANT, FAMICOM, SET_UP_CONSOLE, EVENT_DECO_FAMICOM, SPRITE_FAMICOM
decoration DECO_PLANT, SUPER_NES, SET_UP_CONSOLE, EVENT_DECO_SNES, SPRITE_SNES
decoration DECO_PLANT, NINTENDO_64, SET_UP_CONSOLE, EVENT_DECO_N64, SPRITE_N64
decoration DECO_PLANT, VIRTUAL_BOY, SET_UP_CONSOLE, EVENT_DECO_VIRTUAL_BOY, SPRITE_VIRTUAL_BOY
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_BIG_DOLL, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
decoration DECO_BIGDOLL, SNORLAX, SET_UP_BIG_DOLL, EVENT_DECO_BIG_SNORLAX_DOLL, SPRITE_BIG_SNORLAX
decoration DECO_BIGDOLL, ONIX, SET_UP_BIG_DOLL, EVENT_DECO_BIG_ONIX_DOLL, SPRITE_BIG_ONIX
decoration DECO_BIGDOLL, LAPRAS, SET_UP_BIG_DOLL, EVENT_DECO_BIG_LAPRAS_DOLL, SPRITE_BIG_LAPRAS
decoration DECO_PLANT, PUT_IT_AWAY, PUT_AWAY_DOLL, EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1, 0
decoration DECO_DOLL, PIKACHU, SET_UP_DOLL, EVENT_DECO_PIKACHU_DOLL, SPRITE_PIKACHU
decoration DECO_PLANT, SURF_PIKA_DOLL, SET_UP_DOLL, EVENT_DECO_SURFING_PIKACHU_DOLL, SPRITE_SURFING_PIKACHU
decoration DECO_DOLL, CLEFAIRY, SET_UP_DOLL, EVENT_DECO_CLEFAIRY_DOLL, SPRITE_CLEFAIRY
decoration DECO_DOLL, JIGGLYPUFF, SET_UP_DOLL, EVENT_DECO_JIGGLYPUFF_DOLL, SPRITE_JIGGLYPUFF
decoration DECO_DOLL, BULBASAUR, SET_UP_DOLL, EVENT_DECO_BULBASAUR_DOLL, SPRITE_BULBASAUR
decoration DECO_DOLL, CHARMANDER, SET_UP_DOLL, EVENT_DECO_CHARMANDER_DOLL, SPRITE_CHARMANDER
decoration DECO_DOLL, SQUIRTLE, SET_UP_DOLL, EVENT_DECO_SQUIRTLE_DOLL, SPRITE_SQUIRTLE
decoration DECO_DOLL, POLIWAG, SET_UP_DOLL, EVENT_DECO_POLIWAG_DOLL, SPRITE_POLIWAG
decoration DECO_DOLL, DIGLETT, SET_UP_DOLL, EVENT_DECO_DIGLETT_DOLL, SPRITE_DIGLETT
decoration DECO_DOLL, STARYU, SET_UP_DOLL, EVENT_DECO_STARMIE_DOLL, SPRITE_STARMIE
decoration DECO_DOLL, MAGIKARP, SET_UP_DOLL, EVENT_DECO_MAGIKARP_DOLL, SPRITE_MAGIKARP
decoration DECO_DOLL, ODDISH, SET_UP_DOLL, EVENT_DECO_ODDISH_DOLL, SPRITE_ODDISH
decoration DECO_DOLL, GENGAR, SET_UP_DOLL, EVENT_DECO_GENGAR_DOLL, SPRITE_GENGAR
decoration DECO_DOLL, SHELLDER, SET_UP_DOLL, EVENT_DECO_SHELLDER_DOLL, SPRITE_SHELLDER
decoration DECO_DOLL, GRIMER, SET_UP_DOLL, EVENT_DECO_GRIMER_DOLL, SPRITE_GRIMER
decoration DECO_DOLL, VOLTORB, SET_UP_DOLL, EVENT_DECO_VOLTORB_DOLL, SPRITE_VOLTORB
decoration DECO_DOLL, WEEDLE, SET_UP_DOLL, EVENT_DECO_WEEDLE_DOLL, SPRITE_WEEDLE
decoration DECO_DOLL, UNOWN, SET_UP_DOLL, EVENT_DECO_UNOWN_DOLL, SPRITE_UNOWN
decoration DECO_DOLL, GEODUDE, SET_UP_DOLL, EVENT_DECO_GEODUDE_DOLL, SPRITE_GEODUDE
decoration DECO_DOLL, MACHOP, SET_UP_DOLL, EVENT_DECO_MACHOP_DOLL, SPRITE_MACHOP
decoration DECO_DOLL, TENTACOOL, SET_UP_DOLL, EVENT_DECO_TENTACOOL_DOLL, SPRITE_TENTACOOL
decoration DECO_PLANT, GOLD_TROPHY, SET_UP_DOLL, EVENT_DECO_GOLD_TROPHY, SPRITE_GOLD_TROPHY
decoration DECO_PLANT, SILVER_TROPHY, SET_UP_DOLL, EVENT_DECO_SILVER_TROPHY, SPRITE_SILVER_TROPHY

View File

@ -201,7 +201,7 @@ ItemAttributes:
item_attribute 100, HELD_PSYCHIC_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE
; WHT_APRICORN
item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE
; BLACKBELT
; BLACKBELT_I
item_attribute 100, HELD_FIGHTING_BOOST, 10, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE
; BLK_APRICORN
item_attribute 200, HELD_NONE, 0, CANT_SELECT, ITEM, ITEMMENU_NOUSE, ITEMMENU_NOUSE

View File

@ -188,7 +188,7 @@ ItemDescriptions:
dw MorphMailDesc
dw BlueSkyMailDesc
dw MusicMailDesc
dw MewMailDesc
dw MirageMailDesc
dw TeruSama25Desc
dw TeruSama26Desc
dw TeruSama26Desc
@ -978,7 +978,7 @@ MusicMailDesc:
db "NATU-print MAIL."
next "(HOLD)@"
MewMailDesc:
MirageMailDesc:
db "MEW-print MAIL."
next "(HOLD)@"

View File

@ -38,7 +38,7 @@ _tgt = 0
endc
if "\1" == "north"
_blk = \3_WIDTH * (\3_HEIGHT + -3) + _src
_blk = \3_WIDTH * (\3_HEIGHT - 3) + _src
_map = _tgt
_win = (\3_WIDTH + 6) * \3_HEIGHT + 1
_y = \3_HEIGHT * 2 - 1
@ -60,9 +60,9 @@ _len = \3_WIDTH
endc
elif "\1" == "west"
_blk = (\3_WIDTH * _src) + \3_WIDTH + -3
_blk = (\3_WIDTH * _src) + \3_WIDTH - 3
_map = (CURRENT_MAP_WIDTH + 6) * _tgt
_win = (\3_WIDTH + 6) * 2 + -6
_win = (\3_WIDTH + 6) * 2 - 6
_y = (\4) * -2
_x = \3_WIDTH * 2 - 1
_len = CURRENT_MAP_HEIGHT + 3 - (\4)

View File

@ -12,254 +12,254 @@ ENDM
Moves:
; entries correspond to constants/move_constants.asm
move POUND, EFFECT_NORMAL_HIT, 40, NORMAL, 100, 35, 0
move KARATE_CHOP, EFFECT_NORMAL_HIT, 50, FIGHTING, 100, 25, 0
move DOUBLESLAP, EFFECT_MULTI_HIT, 15, NORMAL, 85, 10, 0
move COMET_PUNCH, EFFECT_MULTI_HIT, 18, NORMAL, 85, 15, 0
move MEGA_PUNCH, EFFECT_NORMAL_HIT, 80, NORMAL, 85, 20, 0
move PAY_DAY, EFFECT_PAY_DAY, 40, NORMAL, 100, 20, 0
move FIRE_PUNCH, EFFECT_BURN_HIT, 75, FIRE, 100, 15, 10
move ICE_PUNCH, EFFECT_FREEZE_HIT, 75, ICE, 100, 15, 10
move THUNDERPUNCH, EFFECT_PARALYZE_HIT, 75, ELECTRIC, 100, 15, 10
move SCRATCH, EFFECT_NORMAL_HIT, 40, NORMAL, 100, 35, 0
move VICEGRIP, EFFECT_NORMAL_HIT, 55, NORMAL, 100, 30, 0
move GUILLOTINE, EFFECT_OHKO, 0, NORMAL, 30, 5, 0
move RAZOR_WIND, EFFECT_RAZOR_WIND, 80, NORMAL, 75, 10, 0
move SWORDS_DANCE, EFFECT_ATTACK_UP_2, 0, NORMAL, 100, 30, 0
move CUT, EFFECT_NORMAL_HIT, 50, NORMAL, 95, 30, 0
move GUST, EFFECT_GUST, 40, FLYING, 100, 35, 0
move WING_ATTACK, EFFECT_NORMAL_HIT, 60, FLYING, 100, 35, 0
move WHIRLWIND, EFFECT_FORCE_SWITCH, 0, NORMAL, 100, 20, 0
move FLY, EFFECT_FLY, 70, FLYING, 95, 15, 0
move BIND, EFFECT_TRAP_TARGET, 15, NORMAL, 75, 20, 0
move SLAM, EFFECT_NORMAL_HIT, 80, NORMAL, 75, 20, 0
move VINE_WHIP, EFFECT_NORMAL_HIT, 35, GRASS, 100, 10, 0
move STOMP, EFFECT_STOMP, 65, NORMAL, 100, 20, 30
move DOUBLE_KICK, EFFECT_DOUBLE_HIT, 30, FIGHTING, 100, 30, 0
move MEGA_KICK, EFFECT_NORMAL_HIT, 120, NORMAL, 75, 5, 0
move JUMP_KICK, EFFECT_JUMP_KICK, 70, FIGHTING, 95, 25, 0
move ROLLING_KICK, EFFECT_FLINCH_HIT, 60, FIGHTING, 85, 15, 30
move SAND_ATTACK, EFFECT_ACCURACY_DOWN, 0, GROUND, 100, 15, 0
move HEADBUTT, EFFECT_FLINCH_HIT, 70, NORMAL, 100, 15, 30
move HORN_ATTACK, EFFECT_NORMAL_HIT, 65, NORMAL, 100, 25, 0
move FURY_ATTACK, EFFECT_MULTI_HIT, 15, NORMAL, 85, 20, 0
move HORN_DRILL, EFFECT_OHKO, 1, NORMAL, 30, 5, 0
move TACKLE, EFFECT_NORMAL_HIT, 35, NORMAL, 95, 35, 0
move BODY_SLAM, EFFECT_PARALYZE_HIT, 85, NORMAL, 100, 15, 30
move WRAP, EFFECT_TRAP_TARGET, 15, NORMAL, 85, 20, 0
move TAKE_DOWN, EFFECT_RECOIL_HIT, 90, NORMAL, 85, 20, 0
move THRASH, EFFECT_RAMPAGE, 90, NORMAL, 100, 20, 0
move DOUBLE_EDGE, EFFECT_RECOIL_HIT, 120, NORMAL, 100, 15, 0
move TAIL_WHIP, EFFECT_DEFENSE_DOWN, 0, NORMAL, 100, 30, 0
move POISON_STING, EFFECT_POISON_HIT, 15, POISON, 100, 35, 30
move TWINEEDLE, EFFECT_POISON_MULTI_HIT, 25, BUG, 100, 20, 20
move PIN_MISSILE, EFFECT_MULTI_HIT, 14, BUG, 85, 20, 0
move LEER, EFFECT_DEFENSE_DOWN, 0, NORMAL, 100, 30, 0
move BITE, EFFECT_FLINCH_HIT, 60, DARK, 100, 25, 30
move GROWL, EFFECT_ATTACK_DOWN, 0, NORMAL, 100, 40, 0
move ROAR, EFFECT_FORCE_SWITCH, 0, NORMAL, 100, 20, 0
move SING, EFFECT_SLEEP, 0, NORMAL, 55, 15, 0
move SUPERSONIC, EFFECT_CONFUSE, 0, NORMAL, 55, 20, 0
move SONICBOOM, EFFECT_STATIC_DAMAGE, 20, NORMAL, 90, 20, 0
move DISABLE, EFFECT_DISABLE, 0, NORMAL, 55, 20, 0
move ACID, EFFECT_DEFENSE_DOWN_HIT, 40, POISON, 100, 30, 10
move EMBER, EFFECT_BURN_HIT, 40, FIRE, 100, 25, 10
move FLAMETHROWER, EFFECT_BURN_HIT, 95, FIRE, 100, 15, 10
move MIST, EFFECT_MIST, 0, ICE, 100, 30, 0
move WATER_GUN, EFFECT_NORMAL_HIT, 40, WATER, 100, 25, 0
move HYDRO_PUMP, EFFECT_NORMAL_HIT, 120, WATER, 80, 5, 0
move SURF, EFFECT_NORMAL_HIT, 95, WATER, 100, 15, 0
move ICE_BEAM, EFFECT_FREEZE_HIT, 95, ICE, 100, 10, 10
move BLIZZARD, EFFECT_FREEZE_HIT, 120, ICE, 70, 5, 10
move PSYBEAM, EFFECT_CONFUSE_HIT, 65, PSYCHIC, 100, 20, 10
move BUBBLEBEAM, EFFECT_SPEED_DOWN_HIT, 65, WATER, 100, 20, 10
move AURORA_BEAM, EFFECT_ATTACK_DOWN_HIT, 65, ICE, 100, 20, 10
move HYPER_BEAM, EFFECT_HYPER_BEAM, 150, NORMAL, 90, 5, 0
move PECK, EFFECT_NORMAL_HIT, 35, FLYING, 100, 35, 0
move DRILL_PECK, EFFECT_NORMAL_HIT, 80, FLYING, 100, 20, 0
move SUBMISSION, EFFECT_RECOIL_HIT, 80, FIGHTING, 80, 25, 0
move LOW_KICK, EFFECT_FLINCH_HIT, 50, FIGHTING, 90, 20, 30
move COUNTER, EFFECT_COUNTER, 1, FIGHTING, 100, 20, 0
move SEISMIC_TOSS, EFFECT_LEVEL_DAMAGE, 1, FIGHTING, 100, 20, 0
move STRENGTH, EFFECT_NORMAL_HIT, 80, NORMAL, 100, 15, 0
move ABSORB, EFFECT_LEECH_HIT, 20, GRASS, 100, 20, 0
move MEGA_DRAIN, EFFECT_LEECH_HIT, 40, GRASS, 100, 10, 0
move LEECH_SEED, EFFECT_LEECH_SEED, 0, GRASS, 90, 10, 0
move GROWTH, EFFECT_SP_ATK_UP, 0, NORMAL, 100, 40, 0
move RAZOR_LEAF, EFFECT_NORMAL_HIT, 55, GRASS, 95, 25, 0
move SOLARBEAM, EFFECT_SOLARBEAM, 120, GRASS, 100, 10, 0
move POISONPOWDER, EFFECT_POISON, 0, POISON, 75, 35, 0
move STUN_SPORE, EFFECT_PARALYZE, 0, GRASS, 75, 30, 0
move SLEEP_POWDER, EFFECT_SLEEP, 0, GRASS, 75, 15, 0
move PETAL_DANCE, EFFECT_RAMPAGE, 70, GRASS, 100, 20, 0
move STRING_SHOT, EFFECT_SPEED_DOWN, 0, BUG, 95, 40, 0
move DRAGON_RAGE, EFFECT_STATIC_DAMAGE, 40, DRAGON, 100, 10, 0
move FIRE_SPIN, EFFECT_TRAP_TARGET, 15, FIRE, 70, 15, 0
move THUNDERSHOCK, EFFECT_PARALYZE_HIT, 40, ELECTRIC, 100, 30, 10
move THUNDERBOLT, EFFECT_PARALYZE_HIT, 95, ELECTRIC, 100, 15, 10
move THUNDER_WAVE, EFFECT_PARALYZE, 0, ELECTRIC, 100, 20, 0
move THUNDER, EFFECT_THUNDER, 120, ELECTRIC, 70, 10, 30
move ROCK_THROW, EFFECT_NORMAL_HIT, 50, ROCK, 90, 15, 0
move EARTHQUAKE, EFFECT_EARTHQUAKE, 100, GROUND, 100, 10, 0
move FISSURE, EFFECT_OHKO, 1, GROUND, 30, 5, 0
move DIG, EFFECT_FLY, 60, GROUND, 100, 10, 0
move TOXIC, EFFECT_TOXIC, 0, POISON, 85, 10, 0
move CONFUSION, EFFECT_CONFUSE_HIT, 50, PSYCHIC, 100, 25, 10
move PSYCHIC_M, EFFECT_SP_DEF_DOWN_HIT, 90, PSYCHIC, 100, 10, 10
move HYPNOSIS, EFFECT_SLEEP, 0, PSYCHIC, 60, 20, 0
move MEDITATE, EFFECT_ATTACK_UP, 0, PSYCHIC, 100, 40, 0
move AGILITY, EFFECT_SPEED_UP_2, 0, PSYCHIC, 100, 30, 0
move QUICK_ATTACK, EFFECT_PRIORITY_HIT, 40, NORMAL, 100, 30, 0
move RAGE, EFFECT_RAGE, 20, NORMAL, 100, 20, 0
move TELEPORT, EFFECT_TELEPORT, 0, PSYCHIC, 100, 20, 0
move NIGHT_SHADE, EFFECT_LEVEL_DAMAGE, 1, GHOST, 100, 15, 0
move MIMIC, EFFECT_MIMIC, 0, NORMAL, 100, 10, 0
move SCREECH, EFFECT_DEFENSE_DOWN_2, 0, NORMAL, 85, 40, 0
move DOUBLE_TEAM, EFFECT_EVASION_UP, 0, NORMAL, 100, 15, 0
move RECOVER, EFFECT_HEAL, 0, NORMAL, 100, 20, 0
move HARDEN, EFFECT_DEFENSE_UP, 0, NORMAL, 100, 30, 0
move MINIMIZE, EFFECT_EVASION_UP, 0, NORMAL, 100, 20, 0
move SMOKESCREEN, EFFECT_ACCURACY_DOWN, 0, NORMAL, 100, 20, 0
move CONFUSE_RAY, EFFECT_CONFUSE, 0, GHOST, 100, 10, 0
move WITHDRAW, EFFECT_DEFENSE_UP, 0, WATER, 100, 40, 0
move DEFENSE_CURL, EFFECT_DEFENSE_CURL, 0, NORMAL, 100, 40, 0
move BARRIER, EFFECT_DEFENSE_UP_2, 0, PSYCHIC, 100, 30, 0
move LIGHT_SCREEN, EFFECT_LIGHT_SCREEN, 0, PSYCHIC, 100, 30, 0
move HAZE, EFFECT_RESET_STATS, 0, ICE, 100, 30, 0
move REFLECT, EFFECT_REFLECT, 0, PSYCHIC, 100, 20, 0
move FOCUS_ENERGY, EFFECT_FOCUS_ENERGY, 0, NORMAL, 100, 30, 0
move BIDE, EFFECT_BIDE, 0, NORMAL, 100, 10, 0
move METRONOME, EFFECT_METRONOME, 0, NORMAL, 100, 10, 0
move MIRROR_MOVE, EFFECT_MIRROR_MOVE, 0, FLYING, 100, 20, 0
move SELFDESTRUCT, EFFECT_SELFDESTRUCT, 200, NORMAL, 100, 5, 0
move EGG_BOMB, EFFECT_NORMAL_HIT, 100, NORMAL, 75, 10, 0
move LICK, EFFECT_PARALYZE_HIT, 20, GHOST, 100, 30, 30
move SMOG, EFFECT_POISON_HIT, 20, POISON, 70, 20, 40
move SLUDGE, EFFECT_POISON_HIT, 65, POISON, 100, 20, 30
move BONE_CLUB, EFFECT_FLINCH_HIT, 65, GROUND, 85, 20, 10
move FIRE_BLAST, EFFECT_BURN_HIT, 120, FIRE, 85, 5, 10
move WATERFALL, EFFECT_NORMAL_HIT, 80, WATER, 100, 15, 0
move CLAMP, EFFECT_TRAP_TARGET, 35, WATER, 75, 10, 0
move SWIFT, EFFECT_ALWAYS_HIT, 60, NORMAL, 100, 20, 0
move SKULL_BASH, EFFECT_SKULL_BASH, 100, NORMAL, 100, 15, 0
move SPIKE_CANNON, EFFECT_MULTI_HIT, 20, NORMAL, 100, 15, 0
move CONSTRICT, EFFECT_SPEED_DOWN_HIT, 10, NORMAL, 100, 35, 10
move AMNESIA, EFFECT_SP_DEF_UP_2, 0, PSYCHIC, 100, 20, 0
move KINESIS, EFFECT_ACCURACY_DOWN, 0, PSYCHIC, 80, 15, 0
move SOFTBOILED, EFFECT_HEAL, 0, NORMAL, 100, 10, 0
move HI_JUMP_KICK, EFFECT_JUMP_KICK, 85, FIGHTING, 90, 20, 0
move GLARE, EFFECT_PARALYZE, 0, NORMAL, 75, 30, 0
move DREAM_EATER, EFFECT_DREAM_EATER, 100, PSYCHIC, 100, 15, 0
move POISON_GAS, EFFECT_POISON, 0, POISON, 55, 40, 0
move BARRAGE, EFFECT_MULTI_HIT, 15, NORMAL, 85, 20, 0
move LEECH_LIFE, EFFECT_LEECH_HIT, 20, BUG, 100, 15, 0
move LOVELY_KISS, EFFECT_SLEEP, 0, NORMAL, 75, 10, 0
move SKY_ATTACK, EFFECT_SKY_ATTACK, 140, FLYING, 90, 5, 0
move TRANSFORM, EFFECT_TRANSFORM, 0, NORMAL, 100, 10, 0
move BUBBLE, EFFECT_SPEED_DOWN_HIT, 20, WATER, 100, 30, 10
move DIZZY_PUNCH, EFFECT_CONFUSE_HIT, 70, NORMAL, 100, 10, 20
move SPORE, EFFECT_SLEEP, 0, GRASS, 100, 15, 0
move FLASH, EFFECT_ACCURACY_DOWN, 0, NORMAL, 70, 20, 0
move PSYWAVE, EFFECT_PSYWAVE, 1, PSYCHIC, 80, 15, 0
move SPLASH, EFFECT_SPLASH, 0, NORMAL, 100, 40, 0
move ACID_ARMOR, EFFECT_DEFENSE_UP_2, 0, POISON, 100, 40, 0
move CRABHAMMER, EFFECT_NORMAL_HIT, 90, WATER, 85, 10, 0
move EXPLOSION, EFFECT_SELFDESTRUCT, 250, NORMAL, 100, 5, 0
move FURY_SWIPES, EFFECT_MULTI_HIT, 18, NORMAL, 80, 15, 0
move BONEMERANG, EFFECT_DOUBLE_HIT, 50, GROUND, 90, 10, 0
move REST, EFFECT_HEAL, 0, PSYCHIC, 100, 10, 0
move ROCK_SLIDE, EFFECT_FLINCH_HIT, 75, ROCK, 90, 10, 30
move HYPER_FANG, EFFECT_FLINCH_HIT, 80, NORMAL, 90, 15, 10
move SHARPEN, EFFECT_ATTACK_UP, 0, NORMAL, 100, 30, 0
move CONVERSION, EFFECT_CONVERSION, 0, NORMAL, 100, 30, 0
move TRI_ATTACK, EFFECT_TRI_ATTACK, 80, NORMAL, 100, 10, 20
move SUPER_FANG, EFFECT_SUPER_FANG, 1, NORMAL, 90, 10, 0
move SLASH, EFFECT_NORMAL_HIT, 70, NORMAL, 100, 20, 0
move SUBSTITUTE, EFFECT_SUBSTITUTE, 0, NORMAL, 100, 10, 0
move STRUGGLE, EFFECT_RECOIL_HIT, 50, NORMAL, 100, 1, 0
move SKETCH, EFFECT_SKETCH, 0, NORMAL, 100, 1, 0
move TRIPLE_KICK, EFFECT_TRIPLE_KICK, 10, FIGHTING, 90, 10, 0
move THIEF, EFFECT_THIEF, 40, DARK, 100, 10, 100
move SPIDER_WEB, EFFECT_MEAN_LOOK, 0, BUG, 100, 10, 0
move MIND_READER, EFFECT_LOCK_ON, 0, NORMAL, 100, 5, 0
move NIGHTMARE, EFFECT_NIGHTMARE, 0, GHOST, 100, 15, 0
move FLAME_WHEEL, EFFECT_FLAME_WHEEL, 60, FIRE, 100, 25, 10
move SNORE, EFFECT_SNORE, 40, NORMAL, 100, 15, 30
move CURSE, EFFECT_CURSE, 0, CURSE_T, 100, 10, 0
move FLAIL, EFFECT_REVERSAL, 1, NORMAL, 100, 15, 0
move CONVERSION2, EFFECT_CONVERSION2, 0, NORMAL, 100, 30, 0
move AEROBLAST, EFFECT_NORMAL_HIT, 100, FLYING, 95, 5, 0
move COTTON_SPORE, EFFECT_SPEED_DOWN_2, 0, GRASS, 85, 40, 0
move REVERSAL, EFFECT_REVERSAL, 1, FIGHTING, 100, 15, 0
move SPITE, EFFECT_SPITE, 0, GHOST, 100, 10, 0
move POWDER_SNOW, EFFECT_FREEZE_HIT, 40, ICE, 100, 25, 10
move PROTECT, EFFECT_PROTECT, 0, NORMAL, 100, 10, 0
move MACH_PUNCH, EFFECT_PRIORITY_HIT, 40, FIGHTING, 100, 30, 0
move SCARY_FACE, EFFECT_SPEED_DOWN_2, 0, NORMAL, 90, 10, 0
move FAINT_ATTACK, EFFECT_ALWAYS_HIT, 60, DARK, 100, 20, 0
move SWEET_KISS, EFFECT_CONFUSE, 0, NORMAL, 75, 10, 0
move BELLY_DRUM, EFFECT_BELLY_DRUM, 0, NORMAL, 100, 10, 0
move SLUDGE_BOMB, EFFECT_POISON_HIT, 90, POISON, 100, 10, 30
move MUD_SLAP, EFFECT_ACCURACY_DOWN_HIT, 20, GROUND, 100, 10, 100
move OCTAZOOKA, EFFECT_ACCURACY_DOWN_HIT, 65, WATER, 85, 10, 50
move SPIKES, EFFECT_SPIKES, 0, GROUND, 100, 20, 0
move ZAP_CANNON, EFFECT_PARALYZE_HIT, 100, ELECTRIC, 50, 5, 100
move FORESIGHT, EFFECT_FORESIGHT, 0, NORMAL, 100, 40, 0
move DESTINY_BOND, EFFECT_DESTINY_BOND, 0, GHOST, 100, 5, 0
move PERISH_SONG, EFFECT_PERISH_SONG, 0, NORMAL, 100, 5, 0
move ICY_WIND, EFFECT_SPEED_DOWN_HIT, 55, ICE, 95, 15, 100
move DETECT, EFFECT_PROTECT, 0, FIGHTING, 100, 5, 0
move BONE_RUSH, EFFECT_MULTI_HIT, 25, GROUND, 80, 10, 0
move LOCK_ON, EFFECT_LOCK_ON, 0, NORMAL, 100, 5, 0
move OUTRAGE, EFFECT_RAMPAGE, 90, DRAGON, 100, 15, 0
move SANDSTORM, EFFECT_SANDSTORM, 0, ROCK, 100, 10, 0
move GIGA_DRAIN, EFFECT_LEECH_HIT, 60, GRASS, 100, 5, 0
move ENDURE, EFFECT_ENDURE, 0, NORMAL, 100, 10, 0
move CHARM, EFFECT_ATTACK_DOWN_2, 0, NORMAL, 100, 20, 0
move ROLLOUT, EFFECT_ROLLOUT, 30, ROCK, 90, 20, 0
move FALSE_SWIPE, EFFECT_FALSE_SWIPE, 40, NORMAL, 100, 40, 0
move SWAGGER, EFFECT_SWAGGER, 0, NORMAL, 90, 15, 100
move MILK_DRINK, EFFECT_HEAL, 0, NORMAL, 100, 10, 0
move SPARK, EFFECT_PARALYZE_HIT, 65, ELECTRIC, 100, 20, 30
move FURY_CUTTER, EFFECT_FURY_CUTTER, 10, BUG, 95, 20, 0
move STEEL_WING, EFFECT_DEFENSE_UP_HIT, 70, STEEL, 90, 25, 10
move MEAN_LOOK, EFFECT_MEAN_LOOK, 0, NORMAL, 100, 5, 0
move ATTRACT, EFFECT_ATTRACT, 0, NORMAL, 100, 15, 0
move SLEEP_TALK, EFFECT_SLEEP_TALK, 0, NORMAL, 100, 10, 0
move HEAL_BELL, EFFECT_HEAL_BELL, 0, NORMAL, 100, 5, 0
move RETURN, EFFECT_RETURN, 1, NORMAL, 100, 20, 0
move PRESENT, EFFECT_PRESENT, 1, NORMAL, 90, 15, 0
move FRUSTRATION, EFFECT_FRUSTRATION, 1, NORMAL, 100, 20, 0
move SAFEGUARD, EFFECT_SAFEGUARD, 0, NORMAL, 100, 25, 0
move PAIN_SPLIT, EFFECT_PAIN_SPLIT, 0, NORMAL, 100, 20, 0
move SACRED_FIRE, EFFECT_SACRED_FIRE, 100, FIRE, 95, 5, 50
move MAGNITUDE, EFFECT_MAGNITUDE, 1, GROUND, 100, 30, 0
move DYNAMICPUNCH, EFFECT_CONFUSE_HIT, 100, FIGHTING, 50, 5, 100
move MEGAHORN, EFFECT_NORMAL_HIT, 120, BUG, 85, 10, 0
move DRAGONBREATH, EFFECT_PARALYZE_HIT, 60, DRAGON, 100, 20, 30
move BATON_PASS, EFFECT_BATON_PASS, 0, NORMAL, 100, 40, 0
move ENCORE, EFFECT_ENCORE, 0, NORMAL, 100, 5, 0
move PURSUIT, EFFECT_PURSUIT, 40, DARK, 100, 20, 0
move RAPID_SPIN, EFFECT_RAPID_SPIN, 20, NORMAL, 100, 40, 0
move SWEET_SCENT, EFFECT_EVASION_DOWN, 0, NORMAL, 100, 20, 0
move IRON_TAIL, EFFECT_DEFENSE_DOWN_HIT, 100, STEEL, 75, 15, 30
move METAL_CLAW, EFFECT_ATTACK_UP_HIT, 50, STEEL, 95, 35, 10
move VITAL_THROW, EFFECT_ALWAYS_HIT, 70, FIGHTING, 100, 10, 0
move MORNING_SUN, EFFECT_MORNING_SUN, 0, NORMAL, 100, 5, 0
move SYNTHESIS, EFFECT_SYNTHESIS, 0, GRASS, 100, 5, 0
move MOONLIGHT, EFFECT_MOONLIGHT, 0, NORMAL, 100, 5, 0
move HIDDEN_POWER, EFFECT_HIDDEN_POWER, 1, NORMAL, 100, 15, 0
move CROSS_CHOP, EFFECT_NORMAL_HIT, 100, FIGHTING, 80, 5, 0
move TWISTER, EFFECT_TWISTER, 40, DRAGON, 100, 20, 20
move RAIN_DANCE, EFFECT_RAIN_DANCE, 0, WATER, 90, 5, 0
move SUNNY_DAY, EFFECT_SUNNY_DAY, 0, FIRE, 90, 5, 0
move CRUNCH, EFFECT_SP_DEF_DOWN_HIT, 80, DARK, 100, 15, 20
move MIRROR_COAT, EFFECT_MIRROR_COAT, 1, PSYCHIC, 100, 20, 0
move PSYCH_UP, EFFECT_PSYCH_UP, 0, NORMAL, 100, 10, 0
move EXTREMESPEED, EFFECT_PRIORITY_HIT, 80, NORMAL, 100, 5, 0
move ANCIENTPOWER, EFFECT_ALL_UP_HIT, 60, ROCK, 100, 5, 10
move SHADOW_BALL, EFFECT_SP_DEF_DOWN_HIT, 80, GHOST, 100, 15, 20
move FUTURE_SIGHT, EFFECT_FUTURE_SIGHT, 80, PSYCHIC, 90, 15, 0
move ROCK_SMASH, EFFECT_DEFENSE_DOWN_HIT, 20, FIGHTING, 100, 15, 50
move WHIRLPOOL, EFFECT_TRAP_TARGET, 15, WATER, 70, 15, 0
move BEAT_UP, EFFECT_BEAT_UP, 10, DARK, 100, 10, 0
move POUND, EFFECT_NORMAL_HIT, 40, NORMAL, 100, 35, 0
move KARATE_CHOP, EFFECT_NORMAL_HIT, 50, FIGHTING, 100, 25, 0
move DOUBLESLAP, EFFECT_MULTI_HIT, 15, NORMAL, 85, 10, 0
move COMET_PUNCH, EFFECT_MULTI_HIT, 18, NORMAL, 85, 15, 0
move MEGA_PUNCH, EFFECT_NORMAL_HIT, 80, NORMAL, 85, 20, 0
move PAY_DAY, EFFECT_PAY_DAY, 40, NORMAL, 100, 20, 0
move FIRE_PUNCH, EFFECT_BURN_HIT, 75, FIRE, 100, 15, 10
move ICE_PUNCH, EFFECT_FREEZE_HIT, 75, ICE, 100, 15, 10
move THUNDERPUNCH, EFFECT_PARALYZE_HIT, 75, ELECTRIC, 100, 15, 10
move SCRATCH, EFFECT_NORMAL_HIT, 40, NORMAL, 100, 35, 0
move VICEGRIP, EFFECT_NORMAL_HIT, 55, NORMAL, 100, 30, 0
move GUILLOTINE, EFFECT_OHKO, 0, NORMAL, 30, 5, 0
move RAZOR_WIND, EFFECT_RAZOR_WIND, 80, NORMAL, 75, 10, 0
move SWORDS_DANCE, EFFECT_ATTACK_UP_2, 0, NORMAL, 100, 30, 0
move CUT, EFFECT_NORMAL_HIT, 50, NORMAL, 95, 30, 0
move GUST, EFFECT_GUST, 40, FLYING, 100, 35, 0
move WING_ATTACK, EFFECT_NORMAL_HIT, 60, FLYING, 100, 35, 0
move WHIRLWIND, EFFECT_FORCE_SWITCH, 0, NORMAL, 100, 20, 0
move FLY, EFFECT_FLY, 70, FLYING, 95, 15, 0
move BIND, EFFECT_TRAP_TARGET, 15, NORMAL, 75, 20, 0
move SLAM, EFFECT_NORMAL_HIT, 80, NORMAL, 75, 20, 0
move VINE_WHIP, EFFECT_NORMAL_HIT, 35, GRASS, 100, 10, 0
move STOMP, EFFECT_STOMP, 65, NORMAL, 100, 20, 30
move DOUBLE_KICK, EFFECT_DOUBLE_HIT, 30, FIGHTING, 100, 30, 0
move MEGA_KICK, EFFECT_NORMAL_HIT, 120, NORMAL, 75, 5, 0
move JUMP_KICK, EFFECT_JUMP_KICK, 70, FIGHTING, 95, 25, 0
move ROLLING_KICK, EFFECT_FLINCH_HIT, 60, FIGHTING, 85, 15, 30
move SAND_ATTACK, EFFECT_ACCURACY_DOWN, 0, GROUND, 100, 15, 0
move HEADBUTT, EFFECT_FLINCH_HIT, 70, NORMAL, 100, 15, 30
move HORN_ATTACK, EFFECT_NORMAL_HIT, 65, NORMAL, 100, 25, 0
move FURY_ATTACK, EFFECT_MULTI_HIT, 15, NORMAL, 85, 20, 0
move HORN_DRILL, EFFECT_OHKO, 1, NORMAL, 30, 5, 0
move TACKLE, EFFECT_NORMAL_HIT, 35, NORMAL, 95, 35, 0
move BODY_SLAM, EFFECT_PARALYZE_HIT, 85, NORMAL, 100, 15, 30
move WRAP, EFFECT_TRAP_TARGET, 15, NORMAL, 85, 20, 0
move TAKE_DOWN, EFFECT_RECOIL_HIT, 90, NORMAL, 85, 20, 0
move THRASH, EFFECT_RAMPAGE, 90, NORMAL, 100, 20, 0
move DOUBLE_EDGE, EFFECT_RECOIL_HIT, 120, NORMAL, 100, 15, 0
move TAIL_WHIP, EFFECT_DEFENSE_DOWN, 0, NORMAL, 100, 30, 0
move POISON_STING, EFFECT_POISON_HIT, 15, POISON, 100, 35, 30
move TWINEEDLE, EFFECT_POISON_MULTI_HIT, 25, BUG, 100, 20, 20
move PIN_MISSILE, EFFECT_MULTI_HIT, 14, BUG, 85, 20, 0
move LEER, EFFECT_DEFENSE_DOWN, 0, NORMAL, 100, 30, 0
move BITE, EFFECT_FLINCH_HIT, 60, DARK, 100, 25, 30
move GROWL, EFFECT_ATTACK_DOWN, 0, NORMAL, 100, 40, 0
move ROAR, EFFECT_FORCE_SWITCH, 0, NORMAL, 100, 20, 0
move SING, EFFECT_SLEEP, 0, NORMAL, 55, 15, 0
move SUPERSONIC, EFFECT_CONFUSE, 0, NORMAL, 55, 20, 0
move SONICBOOM, EFFECT_STATIC_DAMAGE, 20, NORMAL, 90, 20, 0
move DISABLE, EFFECT_DISABLE, 0, NORMAL, 55, 20, 0
move ACID, EFFECT_DEFENSE_DOWN_HIT, 40, POISON, 100, 30, 10
move EMBER, EFFECT_BURN_HIT, 40, FIRE, 100, 25, 10
move FLAMETHROWER, EFFECT_BURN_HIT, 95, FIRE, 100, 15, 10
move MIST, EFFECT_MIST, 0, ICE, 100, 30, 0
move WATER_GUN, EFFECT_NORMAL_HIT, 40, WATER, 100, 25, 0
move HYDRO_PUMP, EFFECT_NORMAL_HIT, 120, WATER, 80, 5, 0
move SURF, EFFECT_NORMAL_HIT, 95, WATER, 100, 15, 0
move ICE_BEAM, EFFECT_FREEZE_HIT, 95, ICE, 100, 10, 10
move BLIZZARD, EFFECT_FREEZE_HIT, 120, ICE, 70, 5, 10
move PSYBEAM, EFFECT_CONFUSE_HIT, 65, PSYCHIC_TYPE, 100, 20, 10
move BUBBLEBEAM, EFFECT_SPEED_DOWN_HIT, 65, WATER, 100, 20, 10
move AURORA_BEAM, EFFECT_ATTACK_DOWN_HIT, 65, ICE, 100, 20, 10
move HYPER_BEAM, EFFECT_HYPER_BEAM, 150, NORMAL, 90, 5, 0
move PECK, EFFECT_NORMAL_HIT, 35, FLYING, 100, 35, 0
move DRILL_PECK, EFFECT_NORMAL_HIT, 80, FLYING, 100, 20, 0
move SUBMISSION, EFFECT_RECOIL_HIT, 80, FIGHTING, 80, 25, 0
move LOW_KICK, EFFECT_FLINCH_HIT, 50, FIGHTING, 90, 20, 30
move COUNTER, EFFECT_COUNTER, 1, FIGHTING, 100, 20, 0
move SEISMIC_TOSS, EFFECT_LEVEL_DAMAGE, 1, FIGHTING, 100, 20, 0
move STRENGTH, EFFECT_NORMAL_HIT, 80, NORMAL, 100, 15, 0
move ABSORB, EFFECT_LEECH_HIT, 20, GRASS, 100, 20, 0
move MEGA_DRAIN, EFFECT_LEECH_HIT, 40, GRASS, 100, 10, 0
move LEECH_SEED, EFFECT_LEECH_SEED, 0, GRASS, 90, 10, 0
move GROWTH, EFFECT_SP_ATK_UP, 0, NORMAL, 100, 40, 0
move RAZOR_LEAF, EFFECT_NORMAL_HIT, 55, GRASS, 95, 25, 0
move SOLARBEAM, EFFECT_SOLARBEAM, 120, GRASS, 100, 10, 0
move POISONPOWDER, EFFECT_POISON, 0, POISON, 75, 35, 0
move STUN_SPORE, EFFECT_PARALYZE, 0, GRASS, 75, 30, 0
move SLEEP_POWDER, EFFECT_SLEEP, 0, GRASS, 75, 15, 0
move PETAL_DANCE, EFFECT_RAMPAGE, 70, GRASS, 100, 20, 0
move STRING_SHOT, EFFECT_SPEED_DOWN, 0, BUG, 95, 40, 0
move DRAGON_RAGE, EFFECT_STATIC_DAMAGE, 40, DRAGON, 100, 10, 0
move FIRE_SPIN, EFFECT_TRAP_TARGET, 15, FIRE, 70, 15, 0
move THUNDERSHOCK, EFFECT_PARALYZE_HIT, 40, ELECTRIC, 100, 30, 10
move THUNDERBOLT, EFFECT_PARALYZE_HIT, 95, ELECTRIC, 100, 15, 10
move THUNDER_WAVE, EFFECT_PARALYZE, 0, ELECTRIC, 100, 20, 0
move THUNDER, EFFECT_THUNDER, 120, ELECTRIC, 70, 10, 30
move ROCK_THROW, EFFECT_NORMAL_HIT, 50, ROCK, 90, 15, 0
move EARTHQUAKE, EFFECT_EARTHQUAKE, 100, GROUND, 100, 10, 0
move FISSURE, EFFECT_OHKO, 1, GROUND, 30, 5, 0
move DIG, EFFECT_FLY, 60, GROUND, 100, 10, 0
move TOXIC, EFFECT_TOXIC, 0, POISON, 85, 10, 0
move CONFUSION, EFFECT_CONFUSE_HIT, 50, PSYCHIC_TYPE, 100, 25, 10
move PSYCHIC_M, EFFECT_SP_DEF_DOWN_HIT, 90, PSYCHIC_TYPE, 100, 10, 10
move HYPNOSIS, EFFECT_SLEEP, 0, PSYCHIC_TYPE, 60, 20, 0
move MEDITATE, EFFECT_ATTACK_UP, 0, PSYCHIC_TYPE, 100, 40, 0
move AGILITY, EFFECT_SPEED_UP_2, 0, PSYCHIC_TYPE, 100, 30, 0
move QUICK_ATTACK, EFFECT_PRIORITY_HIT, 40, NORMAL, 100, 30, 0
move RAGE, EFFECT_RAGE, 20, NORMAL, 100, 20, 0
move TELEPORT, EFFECT_TELEPORT, 0, PSYCHIC_TYPE, 100, 20, 0
move NIGHT_SHADE, EFFECT_LEVEL_DAMAGE, 1, GHOST, 100, 15, 0
move MIMIC, EFFECT_MIMIC, 0, NORMAL, 100, 10, 0
move SCREECH, EFFECT_DEFENSE_DOWN_2, 0, NORMAL, 85, 40, 0
move DOUBLE_TEAM, EFFECT_EVASION_UP, 0, NORMAL, 100, 15, 0
move RECOVER, EFFECT_HEAL, 0, NORMAL, 100, 20, 0
move HARDEN, EFFECT_DEFENSE_UP, 0, NORMAL, 100, 30, 0
move MINIMIZE, EFFECT_EVASION_UP, 0, NORMAL, 100, 20, 0
move SMOKESCREEN, EFFECT_ACCURACY_DOWN, 0, NORMAL, 100, 20, 0
move CONFUSE_RAY, EFFECT_CONFUSE, 0, GHOST, 100, 10, 0
move WITHDRAW, EFFECT_DEFENSE_UP, 0, WATER, 100, 40, 0
move DEFENSE_CURL, EFFECT_DEFENSE_CURL, 0, NORMAL, 100, 40, 0
move BARRIER, EFFECT_DEFENSE_UP_2, 0, PSYCHIC_TYPE, 100, 30, 0
move LIGHT_SCREEN, EFFECT_LIGHT_SCREEN, 0, PSYCHIC_TYPE, 100, 30, 0
move HAZE, EFFECT_RESET_STATS, 0, ICE, 100, 30, 0
move REFLECT, EFFECT_REFLECT, 0, PSYCHIC_TYPE, 100, 20, 0
move FOCUS_ENERGY, EFFECT_FOCUS_ENERGY, 0, NORMAL, 100, 30, 0
move BIDE, EFFECT_BIDE, 0, NORMAL, 100, 10, 0
move METRONOME, EFFECT_METRONOME, 0, NORMAL, 100, 10, 0
move MIRROR_MOVE, EFFECT_MIRROR_MOVE, 0, FLYING, 100, 20, 0
move SELFDESTRUCT, EFFECT_SELFDESTRUCT, 200, NORMAL, 100, 5, 0
move EGG_BOMB, EFFECT_NORMAL_HIT, 100, NORMAL, 75, 10, 0
move LICK, EFFECT_PARALYZE_HIT, 20, GHOST, 100, 30, 30
move SMOG, EFFECT_POISON_HIT, 20, POISON, 70, 20, 40
move SLUDGE, EFFECT_POISON_HIT, 65, POISON, 100, 20, 30
move BONE_CLUB, EFFECT_FLINCH_HIT, 65, GROUND, 85, 20, 10
move FIRE_BLAST, EFFECT_BURN_HIT, 120, FIRE, 85, 5, 10
move WATERFALL, EFFECT_NORMAL_HIT, 80, WATER, 100, 15, 0
move CLAMP, EFFECT_TRAP_TARGET, 35, WATER, 75, 10, 0
move SWIFT, EFFECT_ALWAYS_HIT, 60, NORMAL, 100, 20, 0
move SKULL_BASH, EFFECT_SKULL_BASH, 100, NORMAL, 100, 15, 0
move SPIKE_CANNON, EFFECT_MULTI_HIT, 20, NORMAL, 100, 15, 0
move CONSTRICT, EFFECT_SPEED_DOWN_HIT, 10, NORMAL, 100, 35, 10
move AMNESIA, EFFECT_SP_DEF_UP_2, 0, PSYCHIC_TYPE, 100, 20, 0
move KINESIS, EFFECT_ACCURACY_DOWN, 0, PSYCHIC_TYPE, 80, 15, 0
move SOFTBOILED, EFFECT_HEAL, 0, NORMAL, 100, 10, 0
move HI_JUMP_KICK, EFFECT_JUMP_KICK, 85, FIGHTING, 90, 20, 0
move GLARE, EFFECT_PARALYZE, 0, NORMAL, 75, 30, 0
move DREAM_EATER, EFFECT_DREAM_EATER, 100, PSYCHIC_TYPE, 100, 15, 0
move POISON_GAS, EFFECT_POISON, 0, POISON, 55, 40, 0
move BARRAGE, EFFECT_MULTI_HIT, 15, NORMAL, 85, 20, 0
move LEECH_LIFE, EFFECT_LEECH_HIT, 20, BUG, 100, 15, 0
move LOVELY_KISS, EFFECT_SLEEP, 0, NORMAL, 75, 10, 0
move SKY_ATTACK, EFFECT_SKY_ATTACK, 140, FLYING, 90, 5, 0
move TRANSFORM, EFFECT_TRANSFORM, 0, NORMAL, 100, 10, 0
move BUBBLE, EFFECT_SPEED_DOWN_HIT, 20, WATER, 100, 30, 10
move DIZZY_PUNCH, EFFECT_CONFUSE_HIT, 70, NORMAL, 100, 10, 20
move SPORE, EFFECT_SLEEP, 0, GRASS, 100, 15, 0
move FLASH, EFFECT_ACCURACY_DOWN, 0, NORMAL, 70, 20, 0
move PSYWAVE, EFFECT_PSYWAVE, 1, PSYCHIC_TYPE, 80, 15, 0
move SPLASH, EFFECT_SPLASH, 0, NORMAL, 100, 40, 0
move ACID_ARMOR, EFFECT_DEFENSE_UP_2, 0, POISON, 100, 40, 0
move CRABHAMMER, EFFECT_NORMAL_HIT, 90, WATER, 85, 10, 0
move EXPLOSION, EFFECT_SELFDESTRUCT, 250, NORMAL, 100, 5, 0
move FURY_SWIPES, EFFECT_MULTI_HIT, 18, NORMAL, 80, 15, 0
move BONEMERANG, EFFECT_DOUBLE_HIT, 50, GROUND, 90, 10, 0
move REST, EFFECT_HEAL, 0, PSYCHIC_TYPE, 100, 10, 0
move ROCK_SLIDE, EFFECT_FLINCH_HIT, 75, ROCK, 90, 10, 30
move HYPER_FANG, EFFECT_FLINCH_HIT, 80, NORMAL, 90, 15, 10
move SHARPEN, EFFECT_ATTACK_UP, 0, NORMAL, 100, 30, 0
move CONVERSION, EFFECT_CONVERSION, 0, NORMAL, 100, 30, 0
move TRI_ATTACK, EFFECT_TRI_ATTACK, 80, NORMAL, 100, 10, 20
move SUPER_FANG, EFFECT_SUPER_FANG, 1, NORMAL, 90, 10, 0
move SLASH, EFFECT_NORMAL_HIT, 70, NORMAL, 100, 20, 0
move SUBSTITUTE, EFFECT_SUBSTITUTE, 0, NORMAL, 100, 10, 0
move STRUGGLE, EFFECT_RECOIL_HIT, 50, NORMAL, 100, 1, 0
move SKETCH, EFFECT_SKETCH, 0, NORMAL, 100, 1, 0
move TRIPLE_KICK, EFFECT_TRIPLE_KICK, 10, FIGHTING, 90, 10, 0
move THIEF, EFFECT_THIEF, 40, DARK, 100, 10, 100
move SPIDER_WEB, EFFECT_MEAN_LOOK, 0, BUG, 100, 10, 0
move MIND_READER, EFFECT_LOCK_ON, 0, NORMAL, 100, 5, 0
move NIGHTMARE, EFFECT_NIGHTMARE, 0, GHOST, 100, 15, 0
move FLAME_WHEEL, EFFECT_FLAME_WHEEL, 60, FIRE, 100, 25, 10
move SNORE, EFFECT_SNORE, 40, NORMAL, 100, 15, 30
move CURSE, EFFECT_CURSE, 0, CURSE_TYPE, 100, 10, 0
move FLAIL, EFFECT_REVERSAL, 1, NORMAL, 100, 15, 0
move CONVERSION2, EFFECT_CONVERSION2, 0, NORMAL, 100, 30, 0
move AEROBLAST, EFFECT_NORMAL_HIT, 100, FLYING, 95, 5, 0
move COTTON_SPORE, EFFECT_SPEED_DOWN_2, 0, GRASS, 85, 40, 0
move REVERSAL, EFFECT_REVERSAL, 1, FIGHTING, 100, 15, 0
move SPITE, EFFECT_SPITE, 0, GHOST, 100, 10, 0
move POWDER_SNOW, EFFECT_FREEZE_HIT, 40, ICE, 100, 25, 10
move PROTECT, EFFECT_PROTECT, 0, NORMAL, 100, 10, 0
move MACH_PUNCH, EFFECT_PRIORITY_HIT, 40, FIGHTING, 100, 30, 0
move SCARY_FACE, EFFECT_SPEED_DOWN_2, 0, NORMAL, 90, 10, 0
move FAINT_ATTACK, EFFECT_ALWAYS_HIT, 60, DARK, 100, 20, 0
move SWEET_KISS, EFFECT_CONFUSE, 0, NORMAL, 75, 10, 0
move BELLY_DRUM, EFFECT_BELLY_DRUM, 0, NORMAL, 100, 10, 0
move SLUDGE_BOMB, EFFECT_POISON_HIT, 90, POISON, 100, 10, 30
move MUD_SLAP, EFFECT_ACCURACY_DOWN_HIT, 20, GROUND, 100, 10, 100
move OCTAZOOKA, EFFECT_ACCURACY_DOWN_HIT, 65, WATER, 85, 10, 50
move SPIKES, EFFECT_SPIKES, 0, GROUND, 100, 20, 0
move ZAP_CANNON, EFFECT_PARALYZE_HIT, 100, ELECTRIC, 50, 5, 100
move FORESIGHT, EFFECT_FORESIGHT, 0, NORMAL, 100, 40, 0
move DESTINY_BOND, EFFECT_DESTINY_BOND, 0, GHOST, 100, 5, 0
move PERISH_SONG, EFFECT_PERISH_SONG, 0, NORMAL, 100, 5, 0
move ICY_WIND, EFFECT_SPEED_DOWN_HIT, 55, ICE, 95, 15, 100
move DETECT, EFFECT_PROTECT, 0, FIGHTING, 100, 5, 0
move BONE_RUSH, EFFECT_MULTI_HIT, 25, GROUND, 80, 10, 0
move LOCK_ON, EFFECT_LOCK_ON, 0, NORMAL, 100, 5, 0
move OUTRAGE, EFFECT_RAMPAGE, 90, DRAGON, 100, 15, 0
move SANDSTORM, EFFECT_SANDSTORM, 0, ROCK, 100, 10, 0
move GIGA_DRAIN, EFFECT_LEECH_HIT, 60, GRASS, 100, 5, 0
move ENDURE, EFFECT_ENDURE, 0, NORMAL, 100, 10, 0
move CHARM, EFFECT_ATTACK_DOWN_2, 0, NORMAL, 100, 20, 0
move ROLLOUT, EFFECT_ROLLOUT, 30, ROCK, 90, 20, 0
move FALSE_SWIPE, EFFECT_FALSE_SWIPE, 40, NORMAL, 100, 40, 0
move SWAGGER, EFFECT_SWAGGER, 0, NORMAL, 90, 15, 100
move MILK_DRINK, EFFECT_HEAL, 0, NORMAL, 100, 10, 0
move SPARK, EFFECT_PARALYZE_HIT, 65, ELECTRIC, 100, 20, 30
move FURY_CUTTER, EFFECT_FURY_CUTTER, 10, BUG, 95, 20, 0
move STEEL_WING, EFFECT_DEFENSE_UP_HIT, 70, STEEL, 90, 25, 10
move MEAN_LOOK, EFFECT_MEAN_LOOK, 0, NORMAL, 100, 5, 0
move ATTRACT, EFFECT_ATTRACT, 0, NORMAL, 100, 15, 0
move SLEEP_TALK, EFFECT_SLEEP_TALK, 0, NORMAL, 100, 10, 0
move HEAL_BELL, EFFECT_HEAL_BELL, 0, NORMAL, 100, 5, 0
move RETURN, EFFECT_RETURN, 1, NORMAL, 100, 20, 0
move PRESENT, EFFECT_PRESENT, 1, NORMAL, 90, 15, 0
move FRUSTRATION, EFFECT_FRUSTRATION, 1, NORMAL, 100, 20, 0
move SAFEGUARD, EFFECT_SAFEGUARD, 0, NORMAL, 100, 25, 0
move PAIN_SPLIT, EFFECT_PAIN_SPLIT, 0, NORMAL, 100, 20, 0
move SACRED_FIRE, EFFECT_SACRED_FIRE, 100, FIRE, 95, 5, 50
move MAGNITUDE, EFFECT_MAGNITUDE, 1, GROUND, 100, 30, 0
move DYNAMICPUNCH, EFFECT_CONFUSE_HIT, 100, FIGHTING, 50, 5, 100
move MEGAHORN, EFFECT_NORMAL_HIT, 120, BUG, 85, 10, 0
move DRAGONBREATH, EFFECT_PARALYZE_HIT, 60, DRAGON, 100, 20, 30
move BATON_PASS, EFFECT_BATON_PASS, 0, NORMAL, 100, 40, 0
move ENCORE, EFFECT_ENCORE, 0, NORMAL, 100, 5, 0
move PURSUIT, EFFECT_PURSUIT, 40, DARK, 100, 20, 0
move RAPID_SPIN, EFFECT_RAPID_SPIN, 20, NORMAL, 100, 40, 0
move SWEET_SCENT, EFFECT_EVASION_DOWN, 0, NORMAL, 100, 20, 0
move IRON_TAIL, EFFECT_DEFENSE_DOWN_HIT, 100, STEEL, 75, 15, 30
move METAL_CLAW, EFFECT_ATTACK_UP_HIT, 50, STEEL, 95, 35, 10
move VITAL_THROW, EFFECT_ALWAYS_HIT, 70, FIGHTING, 100, 10, 0
move MORNING_SUN, EFFECT_MORNING_SUN, 0, NORMAL, 100, 5, 0
move SYNTHESIS, EFFECT_SYNTHESIS, 0, GRASS, 100, 5, 0
move MOONLIGHT, EFFECT_MOONLIGHT, 0, NORMAL, 100, 5, 0
move HIDDEN_POWER, EFFECT_HIDDEN_POWER, 1, NORMAL, 100, 15, 0
move CROSS_CHOP, EFFECT_NORMAL_HIT, 100, FIGHTING, 80, 5, 0
move TWISTER, EFFECT_TWISTER, 40, DRAGON, 100, 20, 20
move RAIN_DANCE, EFFECT_RAIN_DANCE, 0, WATER, 90, 5, 0
move SUNNY_DAY, EFFECT_SUNNY_DAY, 0, FIRE, 90, 5, 0
move CRUNCH, EFFECT_SP_DEF_DOWN_HIT, 80, DARK, 100, 15, 20
move MIRROR_COAT, EFFECT_MIRROR_COAT, 1, PSYCHIC_TYPE, 100, 20, 0
move PSYCH_UP, EFFECT_PSYCH_UP, 0, NORMAL, 100, 10, 0
move EXTREMESPEED, EFFECT_PRIORITY_HIT, 80, NORMAL, 100, 5, 0
move ANCIENTPOWER, EFFECT_ALL_UP_HIT, 60, ROCK, 100, 5, 10
move SHADOW_BALL, EFFECT_SP_DEF_DOWN_HIT, 80, GHOST, 100, 15, 20
move FUTURE_SIGHT, EFFECT_FUTURE_SIGHT, 80, PSYCHIC_TYPE, 90, 15, 0
move ROCK_SMASH, EFFECT_DEFENSE_DOWN_HIT, 20, FIGHTING, 100, 15, 50
move WHIRLPOOL, EFFECT_TRAP_TARGET, 15, WATER, 70, 15, 0
move BEAT_UP, EFFECT_BEAT_UP, 10, DARK, 100, 10, 0

View File

@ -3,7 +3,7 @@
db 25, 20, 15, 90, 105, 55
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 200 ; catch rate
db 73 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 55, 50, 45, 120, 135, 85
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 50 ; catch rate
db 186 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 100, 100, 100, 100, 100, 100
; hp atk def spd sat sdf
db PSYCHIC, GRASS ; type
db PSYCHIC_TYPE, GRASS ; type
db 45 ; catch rate
db 64 ; base exp
db NO_ITEM, MIRACLEBERRY ; items

View File

@ -3,7 +3,7 @@
db 60, 48, 45, 42, 43, 90
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 190 ; catch rate
db 102 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 65, 65, 60, 110, 130, 95
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 197 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 60, 40, 80, 40, 60, 45
; hp atk def spd sat sdf
db GRASS, PSYCHIC ; type
db GRASS, PSYCHIC_TYPE ; type
db 90 ; catch rate
db 98 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 95, 95, 85, 55, 125, 65
; hp atk def spd sat sdf
db GRASS, PSYCHIC ; type
db GRASS, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 212 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 70, 80, 65, 85, 90, 65
; hp atk def spd sat sdf
db NORMAL, PSYCHIC ; type
db NORMAL, PSYCHIC_TYPE ; type
db 60 ; catch rate
db 149 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 85, 73, 70, 67, 73, 115
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 75 ; catch rate
db 165 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 65, 50, 35, 95, 115, 95
; hp atk def spd sat sdf
db ICE, PSYCHIC ; type
db ICE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 137 ; base exp
db ICE_BERRY, ICE_BERRY ; items

View File

@ -3,7 +3,7 @@
db 40, 35, 30, 105, 120, 70
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 100 ; catch rate
db 145 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 106, 90, 130, 110, 90, 154
; hp atk def spd sat sdf
db PSYCHIC, FLYING ; type
db PSYCHIC_TYPE, FLYING ; type
db 3 ; catch rate
db 220 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 100, 100, 100, 100, 100, 100
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 64 ; base exp
db NO_ITEM, MIRACLEBERRY ; items

View File

@ -3,7 +3,7 @@
db 106, 110, 90, 130, 154, 90
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 3 ; catch rate
db 220 ; base exp
db NO_ITEM, BERSERK_GENE ; items

View File

@ -3,7 +3,7 @@
db 40, 45, 65, 90, 100, 120
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 136 ; base exp
db NO_ITEM, MYSTERYBERRY ; items

View File

@ -3,7 +3,7 @@
db 40, 50, 45, 70, 70, 45
; hp atk def spd sat sdf
db PSYCHIC, FLYING ; type
db PSYCHIC_TYPE, FLYING ; type
db 190 ; catch rate
db 73 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 95, 75, 110, 30, 100, 80
; hp atk def spd sat sdf
db WATER, PSYCHIC ; type
db WATER, PSYCHIC_TYPE ; type
db 75 ; catch rate
db 164 ; base exp
db NO_ITEM, KINGS_ROCK ; items

View File

@ -3,7 +3,7 @@
db 95, 75, 80, 30, 100, 110
; hp atk def spd sat sdf
db WATER, PSYCHIC ; type
db WATER, PSYCHIC_TYPE ; type
db 70 ; catch rate
db 164 ; base exp
db NO_ITEM, KINGS_ROCK ; items

View File

@ -3,7 +3,7 @@
db 90, 65, 65, 15, 40, 40
; hp atk def spd sat sdf
db WATER, PSYCHIC ; type
db WATER, PSYCHIC_TYPE ; type
db 190 ; catch rate
db 99 ; base exp
db NO_ITEM, KINGS_ROCK ; items

View File

@ -3,7 +3,7 @@
db 45, 30, 15, 65, 85, 65
; hp atk def spd sat sdf
db ICE, PSYCHIC ; type
db ICE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 87 ; base exp
db ICE_BERRY, ICE_BERRY ; items

View File

@ -3,7 +3,7 @@
db 60, 75, 85, 115, 100, 85
; hp atk def spd sat sdf
db WATER, PSYCHIC ; type
db WATER, PSYCHIC_TYPE ; type
db 60 ; catch rate
db 207 ; base exp
db STARDUST, STAR_PIECE ; items

View File

@ -3,7 +3,7 @@
db 48, 72, 48, 48, 72, 48
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 225 ; catch rate
db 61 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 190, 33, 58, 33, 33, 58
; hp atk def spd sat sdf
db PSYCHIC, PSYCHIC ; type
db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 177 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -3,7 +3,7 @@
db 65, 75, 70, 95, 95, 70
; hp atk def spd sat sdf
db PSYCHIC, FLYING ; type
db PSYCHIC_TYPE, FLYING ; type
db 75 ; catch rate
db 171 ; base exp
db NO_ITEM, NO_ITEM ; items

View File

@ -1,21 +1,21 @@
BadgeTypeBoosts:
; entries correspond to wJohtoBadges constants
db FLYING ; ZEPHYRBADGE
db BUG ; HIVEBADGE
db NORMAL ; PLAINBADGE
db GHOST ; FOGBADGE
db STEEL ; MINERALBADGE
db FIGHTING ; STORMBADGE
db ICE ; GLACIERBADGE
db DRAGON ; RISINGBADGE
db FLYING ; ZEPHYRBADGE
db BUG ; HIVEBADGE
db NORMAL ; PLAINBADGE
db GHOST ; FOGBADGE
db STEEL ; MINERALBADGE
db FIGHTING ; STORMBADGE
db ICE ; GLACIERBADGE
db DRAGON ; RISINGBADGE
; fallthrough
; entries correspond to wKantoBadges constants
db ROCK ; BOULDERBADGE
db WATER ; CASCADEBADGE
db ELECTRIC ; THUNDERBADGE
db GRASS ; RAINBOWBADGE
db POISON ; SOULBADGE
db PSYCHIC ; MARSHBADGE
db FIRE ; VOLCANOBADGE
db GROUND ; EARTHBADGE
db ROCK ; BOULDERBADGE
db WATER ; CASCADEBADGE
db ELECTRIC ; THUNDERBADGE
db GRASS ; RAINBOWBADGE
db POISON ; SOULBADGE
db PSYCHIC_TYPE ; MARSHBADGE
db FIRE ; VOLCANOBADGE
db GROUND ; EARTHBADGE
db -1 ; end

View File

@ -10,7 +10,7 @@ PokedexTypeSearchConversionTable:
db POISON
db GROUND
db FLYING
db PSYCHIC
db PSYCHIC_TYPE
db BUG
db ROCK
db GHOST

View File

@ -1,19 +1,19 @@
TypeBoostItems:
db HELD_NORMAL_BOOST, NORMAL ; PINK_BOW/POLKADOT_BOW
db HELD_FIGHTING_BOOST, FIGHTING ; BLACKBELT
db HELD_FLYING_BOOST, FLYING ; SHARP_BEAK
db HELD_POISON_BOOST, POISON ; POISON BARB
db HELD_GROUND_BOOST, GROUND ; SOFT_SAND
db HELD_ROCK_BOOST, ROCK ; HARD_STONE
db HELD_BUG_BOOST, BUG ; SILVERPOWDER
db HELD_GHOST_BOOST, GHOST ; SPELL_TAG
db HELD_FIRE_BOOST, FIRE ; CHARCOAL
db HELD_WATER_BOOST, WATER ; MYSTIC WATER
db HELD_GRASS_BOOST, GRASS ; MIRACLE_SEED
db HELD_ELECTRIC_BOOST, ELECTRIC ; MAGNET
db HELD_PSYCHIC_BOOST, PSYCHIC ; TWISTEDSPOON
db HELD_ICE_BOOST, ICE ; NEVERMELTICE
db HELD_DRAGON_BOOST, DRAGON ; DRAGON_SCALE
db HELD_DARK_BOOST, DARK ; BLACKGLASSES
db HELD_STEEL_BOOST, STEEL ; METAL_COAT
db HELD_NORMAL_BOOST, NORMAL ; PINK_BOW/POLKADOT_BOW
db HELD_FIGHTING_BOOST, FIGHTING ; BLACKBELT_I
db HELD_FLYING_BOOST, FLYING ; SHARP_BEAK
db HELD_POISON_BOOST, POISON ; POISON BARB
db HELD_GROUND_BOOST, GROUND ; SOFT_SAND
db HELD_ROCK_BOOST, ROCK ; HARD_STONE
db HELD_BUG_BOOST, BUG ; SILVERPOWDER
db HELD_GHOST_BOOST, GHOST ; SPELL_TAG
db HELD_FIRE_BOOST, FIRE ; CHARCOAL
db HELD_WATER_BOOST, WATER ; MYSTIC WATER
db HELD_GRASS_BOOST, GRASS ; MIRACLE_SEED
db HELD_ELECTRIC_BOOST, ELECTRIC ; MAGNET
db HELD_PSYCHIC_BOOST, PSYCHIC_TYPE ; TWISTEDSPOON
db HELD_ICE_BOOST, ICE ; NEVERMELTICE
db HELD_DRAGON_BOOST, DRAGON ; DRAGON_SCALE
db HELD_DARK_BOOST, DARK ; BLACKGLASSES
db HELD_STEEL_BOOST, STEEL ; METAL_COAT
db -1

View File

@ -1,118 +1,118 @@
TypeMatchups:
; attacker, defender, *=
db NORMAL, ROCK, NOT_VERY_EFFECTIVE
db NORMAL, STEEL, NOT_VERY_EFFECTIVE
db FIRE, FIRE, NOT_VERY_EFFECTIVE
db FIRE, WATER, NOT_VERY_EFFECTIVE
db FIRE, GRASS, SUPER_EFFECTIVE
db FIRE, ICE, SUPER_EFFECTIVE
db FIRE, BUG, SUPER_EFFECTIVE
db FIRE, ROCK, NOT_VERY_EFFECTIVE
db FIRE, DRAGON, NOT_VERY_EFFECTIVE
db FIRE, STEEL, SUPER_EFFECTIVE
db WATER, FIRE, SUPER_EFFECTIVE
db WATER, WATER, NOT_VERY_EFFECTIVE
db WATER, GRASS, NOT_VERY_EFFECTIVE
db WATER, GROUND, SUPER_EFFECTIVE
db WATER, ROCK, SUPER_EFFECTIVE
db WATER, DRAGON, NOT_VERY_EFFECTIVE
db ELECTRIC, WATER, SUPER_EFFECTIVE
db ELECTRIC, ELECTRIC, NOT_VERY_EFFECTIVE
db ELECTRIC, GRASS, NOT_VERY_EFFECTIVE
db ELECTRIC, GROUND, NO_EFFECT
db ELECTRIC, FLYING, SUPER_EFFECTIVE
db ELECTRIC, DRAGON, NOT_VERY_EFFECTIVE
db GRASS, FIRE, NOT_VERY_EFFECTIVE
db GRASS, WATER, SUPER_EFFECTIVE
db GRASS, GRASS, NOT_VERY_EFFECTIVE
db GRASS, POISON, NOT_VERY_EFFECTIVE
db GRASS, GROUND, SUPER_EFFECTIVE
db GRASS, FLYING, NOT_VERY_EFFECTIVE
db GRASS, BUG, NOT_VERY_EFFECTIVE
db GRASS, ROCK, SUPER_EFFECTIVE
db GRASS, DRAGON, NOT_VERY_EFFECTIVE
db GRASS, STEEL, NOT_VERY_EFFECTIVE
db ICE, WATER, NOT_VERY_EFFECTIVE
db ICE, GRASS, SUPER_EFFECTIVE
db ICE, ICE, NOT_VERY_EFFECTIVE
db ICE, GROUND, SUPER_EFFECTIVE
db ICE, FLYING, SUPER_EFFECTIVE
db ICE, DRAGON, SUPER_EFFECTIVE
db ICE, STEEL, NOT_VERY_EFFECTIVE
db ICE, FIRE, NOT_VERY_EFFECTIVE
db FIGHTING, NORMAL, SUPER_EFFECTIVE
db FIGHTING, ICE, SUPER_EFFECTIVE
db FIGHTING, POISON, NOT_VERY_EFFECTIVE
db FIGHTING, FLYING, NOT_VERY_EFFECTIVE
db FIGHTING, PSYCHIC, NOT_VERY_EFFECTIVE
db FIGHTING, BUG, NOT_VERY_EFFECTIVE
db FIGHTING, ROCK, SUPER_EFFECTIVE
db FIGHTING, DARK, SUPER_EFFECTIVE
db FIGHTING, STEEL, SUPER_EFFECTIVE
db POISON, GRASS, SUPER_EFFECTIVE
db POISON, POISON, NOT_VERY_EFFECTIVE
db POISON, GROUND, NOT_VERY_EFFECTIVE
db POISON, ROCK, NOT_VERY_EFFECTIVE
db POISON, GHOST, NOT_VERY_EFFECTIVE
db POISON, STEEL, NO_EFFECT
db GROUND, FIRE, SUPER_EFFECTIVE
db GROUND, ELECTRIC, SUPER_EFFECTIVE
db GROUND, GRASS, NOT_VERY_EFFECTIVE
db GROUND, POISON, SUPER_EFFECTIVE
db GROUND, FLYING, NO_EFFECT
db GROUND, BUG, NOT_VERY_EFFECTIVE
db GROUND, ROCK, SUPER_EFFECTIVE
db GROUND, STEEL, SUPER_EFFECTIVE
db FLYING, ELECTRIC, NOT_VERY_EFFECTIVE
db FLYING, GRASS, SUPER_EFFECTIVE
db FLYING, FIGHTING, SUPER_EFFECTIVE
db FLYING, BUG, SUPER_EFFECTIVE
db FLYING, ROCK, NOT_VERY_EFFECTIVE
db FLYING, STEEL, NOT_VERY_EFFECTIVE
db PSYCHIC, FIGHTING, SUPER_EFFECTIVE
db PSYCHIC, POISON, SUPER_EFFECTIVE
db PSYCHIC, PSYCHIC, NOT_VERY_EFFECTIVE
db PSYCHIC, DARK, NO_EFFECT
db PSYCHIC, STEEL, NOT_VERY_EFFECTIVE
db BUG, FIRE, NOT_VERY_EFFECTIVE
db BUG, GRASS, SUPER_EFFECTIVE
db BUG, FIGHTING, NOT_VERY_EFFECTIVE
db BUG, POISON, NOT_VERY_EFFECTIVE
db BUG, FLYING, NOT_VERY_EFFECTIVE
db BUG, PSYCHIC, SUPER_EFFECTIVE
db BUG, GHOST, NOT_VERY_EFFECTIVE
db BUG, DARK, SUPER_EFFECTIVE
db BUG, STEEL, NOT_VERY_EFFECTIVE
db ROCK, FIRE, SUPER_EFFECTIVE
db ROCK, ICE, SUPER_EFFECTIVE
db ROCK, FIGHTING, NOT_VERY_EFFECTIVE
db ROCK, GROUND, NOT_VERY_EFFECTIVE
db ROCK, FLYING, SUPER_EFFECTIVE
db ROCK, BUG, SUPER_EFFECTIVE
db ROCK, STEEL, NOT_VERY_EFFECTIVE
db GHOST, NORMAL, NO_EFFECT
db GHOST, PSYCHIC, SUPER_EFFECTIVE
db GHOST, DARK, NOT_VERY_EFFECTIVE
db GHOST, STEEL, NOT_VERY_EFFECTIVE
db GHOST, GHOST, SUPER_EFFECTIVE
db DRAGON, DRAGON, SUPER_EFFECTIVE
db DRAGON, STEEL, NOT_VERY_EFFECTIVE
db DARK, FIGHTING, NOT_VERY_EFFECTIVE
db DARK, PSYCHIC, SUPER_EFFECTIVE
db DARK, GHOST, SUPER_EFFECTIVE
db DARK, DARK, NOT_VERY_EFFECTIVE
db DARK, STEEL, NOT_VERY_EFFECTIVE
db STEEL, FIRE, NOT_VERY_EFFECTIVE
db STEEL, WATER, NOT_VERY_EFFECTIVE
db STEEL, ELECTRIC, NOT_VERY_EFFECTIVE
db STEEL, ICE, SUPER_EFFECTIVE
db STEEL, ROCK, SUPER_EFFECTIVE
db STEEL, STEEL, NOT_VERY_EFFECTIVE
; attacker, defender, *=
db NORMAL, ROCK, NOT_VERY_EFFECTIVE
db NORMAL, STEEL, NOT_VERY_EFFECTIVE
db FIRE, FIRE, NOT_VERY_EFFECTIVE
db FIRE, WATER, NOT_VERY_EFFECTIVE
db FIRE, GRASS, SUPER_EFFECTIVE
db FIRE, ICE, SUPER_EFFECTIVE
db FIRE, BUG, SUPER_EFFECTIVE
db FIRE, ROCK, NOT_VERY_EFFECTIVE
db FIRE, DRAGON, NOT_VERY_EFFECTIVE
db FIRE, STEEL, SUPER_EFFECTIVE
db WATER, FIRE, SUPER_EFFECTIVE
db WATER, WATER, NOT_VERY_EFFECTIVE
db WATER, GRASS, NOT_VERY_EFFECTIVE
db WATER, GROUND, SUPER_EFFECTIVE
db WATER, ROCK, SUPER_EFFECTIVE
db WATER, DRAGON, NOT_VERY_EFFECTIVE
db ELECTRIC, WATER, SUPER_EFFECTIVE
db ELECTRIC, ELECTRIC, NOT_VERY_EFFECTIVE
db ELECTRIC, GRASS, NOT_VERY_EFFECTIVE
db ELECTRIC, GROUND, NO_EFFECT
db ELECTRIC, FLYING, SUPER_EFFECTIVE
db ELECTRIC, DRAGON, NOT_VERY_EFFECTIVE
db GRASS, FIRE, NOT_VERY_EFFECTIVE
db GRASS, WATER, SUPER_EFFECTIVE
db GRASS, GRASS, NOT_VERY_EFFECTIVE
db GRASS, POISON, NOT_VERY_EFFECTIVE
db GRASS, GROUND, SUPER_EFFECTIVE
db GRASS, FLYING, NOT_VERY_EFFECTIVE
db GRASS, BUG, NOT_VERY_EFFECTIVE
db GRASS, ROCK, SUPER_EFFECTIVE
db GRASS, DRAGON, NOT_VERY_EFFECTIVE
db GRASS, STEEL, NOT_VERY_EFFECTIVE
db ICE, WATER, NOT_VERY_EFFECTIVE
db ICE, GRASS, SUPER_EFFECTIVE
db ICE, ICE, NOT_VERY_EFFECTIVE
db ICE, GROUND, SUPER_EFFECTIVE
db ICE, FLYING, SUPER_EFFECTIVE
db ICE, DRAGON, SUPER_EFFECTIVE
db ICE, STEEL, NOT_VERY_EFFECTIVE
db ICE, FIRE, NOT_VERY_EFFECTIVE
db FIGHTING, NORMAL, SUPER_EFFECTIVE
db FIGHTING, ICE, SUPER_EFFECTIVE
db FIGHTING, POISON, NOT_VERY_EFFECTIVE
db FIGHTING, FLYING, NOT_VERY_EFFECTIVE
db FIGHTING, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE
db FIGHTING, BUG, NOT_VERY_EFFECTIVE
db FIGHTING, ROCK, SUPER_EFFECTIVE
db FIGHTING, DARK, SUPER_EFFECTIVE
db FIGHTING, STEEL, SUPER_EFFECTIVE
db POISON, GRASS, SUPER_EFFECTIVE
db POISON, POISON, NOT_VERY_EFFECTIVE
db POISON, GROUND, NOT_VERY_EFFECTIVE
db POISON, ROCK, NOT_VERY_EFFECTIVE
db POISON, GHOST, NOT_VERY_EFFECTIVE
db POISON, STEEL, NO_EFFECT
db GROUND, FIRE, SUPER_EFFECTIVE
db GROUND, ELECTRIC, SUPER_EFFECTIVE
db GROUND, GRASS, NOT_VERY_EFFECTIVE
db GROUND, POISON, SUPER_EFFECTIVE
db GROUND, FLYING, NO_EFFECT
db GROUND, BUG, NOT_VERY_EFFECTIVE
db GROUND, ROCK, SUPER_EFFECTIVE
db GROUND, STEEL, SUPER_EFFECTIVE
db FLYING, ELECTRIC, NOT_VERY_EFFECTIVE
db FLYING, GRASS, SUPER_EFFECTIVE
db FLYING, FIGHTING, SUPER_EFFECTIVE
db FLYING, BUG, SUPER_EFFECTIVE
db FLYING, ROCK, NOT_VERY_EFFECTIVE
db FLYING, STEEL, NOT_VERY_EFFECTIVE
db PSYCHIC_TYPE, FIGHTING, SUPER_EFFECTIVE
db PSYCHIC_TYPE, POISON, SUPER_EFFECTIVE
db PSYCHIC_TYPE, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE
db PSYCHIC_TYPE, DARK, NO_EFFECT
db PSYCHIC_TYPE, STEEL, NOT_VERY_EFFECTIVE
db BUG, FIRE, NOT_VERY_EFFECTIVE
db BUG, GRASS, SUPER_EFFECTIVE
db BUG, FIGHTING, NOT_VERY_EFFECTIVE
db BUG, POISON, NOT_VERY_EFFECTIVE
db BUG, FLYING, NOT_VERY_EFFECTIVE
db BUG, PSYCHIC_TYPE, SUPER_EFFECTIVE
db BUG, GHOST, NOT_VERY_EFFECTIVE
db BUG, DARK, SUPER_EFFECTIVE
db BUG, STEEL, NOT_VERY_EFFECTIVE
db ROCK, FIRE, SUPER_EFFECTIVE
db ROCK, ICE, SUPER_EFFECTIVE
db ROCK, FIGHTING, NOT_VERY_EFFECTIVE
db ROCK, GROUND, NOT_VERY_EFFECTIVE
db ROCK, FLYING, SUPER_EFFECTIVE
db ROCK, BUG, SUPER_EFFECTIVE
db ROCK, STEEL, NOT_VERY_EFFECTIVE
db GHOST, NORMAL, NO_EFFECT
db GHOST, PSYCHIC_TYPE, SUPER_EFFECTIVE
db GHOST, DARK, NOT_VERY_EFFECTIVE
db GHOST, STEEL, NOT_VERY_EFFECTIVE
db GHOST, GHOST, SUPER_EFFECTIVE
db DRAGON, DRAGON, SUPER_EFFECTIVE
db DRAGON, STEEL, NOT_VERY_EFFECTIVE
db DARK, FIGHTING, NOT_VERY_EFFECTIVE
db DARK, PSYCHIC_TYPE, SUPER_EFFECTIVE
db DARK, GHOST, SUPER_EFFECTIVE
db DARK, DARK, NOT_VERY_EFFECTIVE
db DARK, STEEL, NOT_VERY_EFFECTIVE
db STEEL, FIRE, NOT_VERY_EFFECTIVE
db STEEL, WATER, NOT_VERY_EFFECTIVE
db STEEL, ELECTRIC, NOT_VERY_EFFECTIVE
db STEEL, ICE, SUPER_EFFECTIVE
db STEEL, ROCK, SUPER_EFFECTIVE
db STEEL, STEEL, NOT_VERY_EFFECTIVE
db -2 ; end (with Foresight)
; Foresight removes Ghost's immunities.
db NORMAL, GHOST, NO_EFFECT
db FIGHTING, GHOST, NO_EFFECT
db NORMAL, GHOST, NO_EFFECT
db FIGHTING, GHOST, NO_EFFECT
db -1 ; end

View File

@ -4,7 +4,7 @@
roam_map: MACRO
map_id \1
db _NARG - 1
rept _NARG + -1
rept _NARG - 1
map_id \2
shift
endr

View File

@ -901,8 +901,12 @@ This bug existed for all battles in Gold and Silver, and was only fixed for sing
ld hl, wEnemyMonType1
ldh a, [hBattleTurn]
and a
jr z, CheckTypeMatchup
- jr z, CheckTypeMatchup
+ jr z, .get_type
ld hl, wBattleMonType1
+.get_type
+ ld a, BATTLE_VARS_MOVE_TYPE
+ call GetBattleVar ; preserves hl, de, and bc
CheckTypeMatchup:
-; There is an incorrect assumption about this function made in the AI related code: when
-; the AI calls CheckTypeMatchup (not BattleCheckTypeMatchup), it assumes that placing the
@ -910,8 +914,6 @@ This bug existed for all battles in Gold and Silver, and was only fixed for sing
-; this assumption is incorrect. A simple fix would be to load the move type for the
-; current move into a in BattleCheckTypeMatchup, before falling through, which is
-; consistent with how the rest of the code assumes this code works like.
+ ld a, BATTLE_VARS_MOVE_TYPE
+ call GetBattleVar ; preserves hl, de, and bc
push hl
push de
push bc
@ -1840,8 +1842,8 @@ This bug can allow you to talk to Eusine in Celadon City and encounter Ho-Oh wit
ld hl, wPlayerName
-rept NAME_LENGTH_JAPANESE + -2 ; should be PLAYER_NAME_LENGTH + -2
+rept PLAYER_NAME_LENGTH + -2
-rept NAME_LENGTH_JAPANESE - 2 ; should be PLAYER_NAME_LENGTH - 2
+rept PLAYER_NAME_LENGTH - 2
ld a, [de]
cp [hl]
jr nz, .notfound

View File

@ -46,7 +46,7 @@ BattleCommand_Conversion:
ld a, [hl]
cp -1
jr z, .fail
cp CURSE_T
cp CURSE_TYPE
jr z, .next
ld a, [de]
cp [hl]
@ -75,7 +75,7 @@ BattleCommand_Conversion:
ld a, [hl]
cp -1
jr z, .loop3
cp CURSE_T
cp CURSE_TYPE
jr z, .loop3
ld a, [de]
cp [hl]

View File

@ -20,7 +20,7 @@ BattleCommand_Conversion2:
call GetMoveAttr
ld d, a
pop hl
cp CURSE_T
cp CURSE_TYPE
jr z, .failed
call AnimateCurrentMove
call BattleCommand_SwitchTurn

View File

@ -237,14 +237,14 @@ BattleAnim_ClearOAM:
bit BATTLEANIM_KEEPSPRITES_F, a
jr z, .delete
; Instead of deleting the sprites, make them all use palette 0 (monochrome)
; Instead of deleting the sprites, make them all use PAL_BATTLE_OB_ENEMY
ld hl, wVirtualOAMSprite00Attributes
ld c, NUM_SPRITE_OAM_STRUCTS
.loop
ld a, [hl]
and $ff ^ (PALETTE_MASK | VRAM_BANK_1)
and $ff ^ (PALETTE_MASK | VRAM_BANK_1) ; PAL_BATTLE_OB_ENEMY (0)
ld [hli], a
rept SPRITEOAMSTRUCT_LENGTH + -1
rept SPRITEOAMSTRUCT_LENGTH - 1
inc hl
endr
dec c

View File

@ -395,10 +395,10 @@ ValidateBTParty:
ld a, [hl]
and a
x = $ff
rept ($ff + -NUM_POKEMON)
rept ($ff - NUM_POKEMON)
jr z, .invalid
cp x
x = x + -1
x = x - 1
endr
jr nz, .valid

View File

@ -211,7 +211,7 @@ DetermineContestWinners:
CopyTempContestant:
; Could've just called CopyBytes.
ld de, wBugContestTempWinnerID
rept BUG_CONTESTANT_SIZE + -1
rept BUG_CONTESTANT_SIZE - 1
ld a, [de]
inc de
ld [hli], a

View File

@ -57,7 +57,7 @@ CelebiShrineEvent:
ld c, 4
.OAMloop:
ld [hli], a ; tile id
rept SPRITEOAMSTRUCT_LENGTH + -1
rept SPRITEOAMSTRUCT_LENGTH - 1
inc hl
endr
inc a

View File

@ -383,7 +383,7 @@ FlyToAnim:
ld c, 4
.OAMloop
ld [hli], a ; tile id
rept SPRITEOAMSTRUCT_LENGTH + -1
rept SPRITEOAMSTRUCT_LENGTH - 1
inc hl
endr
inc a

View File

@ -98,10 +98,10 @@ RotateUnownFrontpic:
gbprinterrect: MACRO
y = 0
rept \1
x = \1 * (\2 + -1) + y
x = \1 * (\2 - 1) + y
rept \2
dw wGameboyPrinterRAM tile x
x = x + -\2
x = x - \2
endr
y = y + 1
endr

View File

@ -535,7 +535,7 @@ InitializeEventsScript:
setevent EVENT_PLAYERS_HOUSE_2F_DOLL_2
setevent EVENT_PLAYERS_HOUSE_2F_BIG_DOLL
setevent EVENT_DECO_BED_1
setevent EVENT_DECO_PLANT_4
setevent EVENT_DECO_POSTER_1
setevent EVENT_GOLDENROD_TRAIN_STATION_GENTLEMAN
setevent EVENT_OLIVINE_GYM_JASMINE
setevent EVENT_BLACKTHORN_CITY_GRAMPS_NOT_BLOCKING_DRAGONS_DEN

View File

@ -261,7 +261,7 @@ Unreferenced_Function9282c:
ld a, [hl]
xor %00100000
ld [hli], a ; tile id
rept SPRITEOAMSTRUCT_LENGTH + -1
rept SPRITEOAMSTRUCT_LENGTH - 1
inc hl
endr
dec c

View File

@ -538,7 +538,7 @@ PokeAnim_CopyBitmaskToBuffer:
poke_anim_box: MACRO
y = 7
rept \1
x = 7 + -\1
x = 7 - \1
rept \1
db x + y
x = x + 1

View File

@ -110,7 +110,7 @@ ItemEffects:
dw NoEffect ; MYSTIC_WATER
dw NoEffect ; TWISTEDSPOON
dw NoEffect ; WHT_APRICORN
dw NoEffect ; BLACKBELT
dw NoEffect ; BLACKBELT_I
dw NoEffect ; BLK_APRICORN
dw NoEffect ; ITEM_64
dw NoEffect ; PNK_APRICORN

View File

@ -114,7 +114,7 @@ Options_TextSpeed:
ld a, c ; right pressed
cp OPT_TEXT_SPEED_SLOW
jr c, .Increase
ld c, OPT_TEXT_SPEED_FAST + -1
ld c, OPT_TEXT_SPEED_FAST - 1
.Increase:
inc c

View File

@ -1796,16 +1796,16 @@ endr
hue = 31
rept 8
RGB hue, hue, hue
hue = hue + -1
hue = hue - 1
RGB hue, hue, hue
hue = hue + -2
hue = hue - 2
endr
.SlowFadePalettes:
hue = 31
rept 16
RGB hue, hue, hue
hue = hue + -1
hue = hue - 1
endr
Intro_LoadTilemap:

View File

@ -339,7 +339,7 @@ EvolutionAnimation:
ld a, [hl]
or b
ld [hli], a ; attributes
rept SPRITEOAMSTRUCT_LENGTH + -1
rept SPRITEOAMSTRUCT_LENGTH - 1
inc hl
endr
dec c

View File

@ -356,7 +356,7 @@ AnimateTitleCrystal:
ld a, [hl]
add 2
ld [hli], a ; y
rept SPRITEOAMSTRUCT_LENGTH + -1
rept SPRITEOAMSTRUCT_LENGTH - 1
inc hl
endr
dec c

View File

@ -1472,7 +1472,7 @@ BillsPC_UpdateSelectionCursor:
inc hl
ld [de], a ; y
inc de
rept SPRITEOAMSTRUCT_LENGTH + -1
rept SPRITEOAMSTRUCT_LENGTH - 1
ld a, [hli]
ld [de], a
inc de
@ -1520,7 +1520,7 @@ BillsPC_UpdateInsertCursor:
inc hl
ld [de], a ; y
inc de
rept SPRITEOAMSTRUCT_LENGTH + -1
rept SPRITEOAMSTRUCT_LENGTH - 1
ld a, [hli]
ld [de], a
inc de

View File

@ -117,7 +117,7 @@ GeneratePartyMonStats:
and a
jr nz, .randomlygeneratemoves
ld de, wEnemyMonMoves
rept NUM_MOVES + -1
rept NUM_MOVES - 1
ld a, [de]
inc de
ld [hli], a
@ -128,7 +128,7 @@ endr
.randomlygeneratemoves
xor a
rept NUM_MOVES + -1
rept NUM_MOVES - 1
ld [hli], a
endr
ld [hl], a

View File

@ -216,7 +216,7 @@ CheckOwnMon:
ld hl, wPlayerName
rept NAME_LENGTH_JAPANESE + -2 ; should be PLAYER_NAME_LENGTH + -2
rept NAME_LENGTH_JAPANESE - 2 ; should be PLAYER_NAME_LENGTH - 2
ld a, [de]
cp [hl]
jr nz, .notfound

View File

@ -2,7 +2,9 @@
const PINK_PAGE ; 1
const GREEN_PAGE ; 2
const BLUE_PAGE ; 3
NUM_STAT_PAGES EQU const_value + -1
NUM_STAT_PAGES EQU const_value - 1
STAT_PAGE_MASK EQU %00000011
BattleStatsScreenInit:
ld a, [wLinkMode]
@ -63,15 +65,15 @@ StatsScreenMain:
; ???
ld [wcf64], a
ld a, [wcf64]
and %11111100
or 1
and $ff ^ STAT_PAGE_MASK
or PINK_PAGE ; first_page
ld [wcf64], a
.loop
ld a, [wJumptableIndex]
and $ff ^ (1 << 7)
ld hl, StatsScreenPointerTable
rst JumpTable
call StatsScreen_WaitAnim ; check for keys?
call StatsScreen_WaitAnim
ld a, [wJumptableIndex]
bit 7, a
jr z, .loop
@ -83,13 +85,13 @@ StatsScreenMobile:
; ???
ld [wcf64], a
ld a, [wcf64]
and %11111100
or 1
and $ff ^ STAT_PAGE_MASK
or PINK_PAGE ; first_page
ld [wcf64], a
.loop
farcall Mobile_SetOverworldDelay
ld a, [wJumptableIndex]
and $ff ^ (1 << 7)
and $7f
ld hl, StatsScreenPointerTable
rst JumpTable
call StatsScreen_WaitAnim
@ -355,7 +357,7 @@ StatsScreen_JoypadAction:
.set_page
ld a, [wcf64]
and %11111100
and $ff ^ STAT_PAGE_MASK
or c
ld [wcf64], a
ld h, 4
@ -759,7 +761,7 @@ StatsScreen_LoadGFX:
jr z, .done
cp $7f
jr z, .done
and $80
and CAUGHT_GENDER_MASK
ld a, "♂"
jr z, .got_gender
ld a, "♀"

View File

@ -2,7 +2,7 @@ tilepal: MACRO
; used in gfx/tilesets/*_palette_map.asm
; vram bank, pals
x = \1 << OAM_TILE_BANK
rept (_NARG + -1) / 2
rept (_NARG - 1) / 2
dn (x | PAL_BG_\3), (x | PAL_BG_\2)
shift
shift

View File

@ -163,7 +163,7 @@ LoadMetatiles::
ld h, a
; copy the 4x4 metatile
rept METATILE_WIDTH + -1
rept METATILE_WIDTH - 1
rept METATILE_WIDTH
ld a, [hli]
ld [de], a

View File

@ -51,7 +51,7 @@ dx: MACRO
x = 8 * ((\1) - 1)
rept \1
db ((\2) >> x) & $ff
x = x + -8
x = x - 8
endr
ENDM

View File

@ -9,7 +9,7 @@ endc
if _NARG >= 2
__enumdir__ = \2
else
__enumdir__ = +1
__enumdir__ = 1
endc
ENDM

View File

@ -41,7 +41,7 @@ noise_note: MACRO
ENDM
; MusicCommands indexes (see audio/engine.asm)
enum_start $d0, +8
enum_start $d0, 8
FIRST_MUSIC_CMD EQU __enum__
enum octave_cmd ; $d0
@ -49,7 +49,7 @@ octave: MACRO
db octave_cmd | 8 - (\1) ; octave
ENDM
__enumdir__ = +1
__enumdir__ = 1
enum note_type_cmd ; $d8
note_type: MACRO

View File

@ -4,7 +4,7 @@ frame: MACRO
db \1
x = \2
if _NARG > 2
rept _NARG + -2
rept _NARG - 2
x = x | (1 << (\3 + 1))
shift
endr

View File

@ -1,5 +1,5 @@
; MovementPointers indexes (see engine/overworld/movement.asm)
enum_start 0, +4
enum_start 0, 4
; Directional movements
@ -73,7 +73,7 @@ fast_jump_step: MACRO
db movement_fast_jump_step | \1
ENDM
__enumdir__ = +1
__enumdir__ = 1
; Control
enum movement_remove_sliding ; $38

View File

@ -106,7 +106,7 @@ box: MACRO
\1Species:: ds MONS_PER_BOX + 1
\1Mons::
\1Mon1:: box_struct \1Mon1
\1Mon2:: ds BOXMON_STRUCT_LENGTH * (MONS_PER_BOX + -1)
\1Mon2:: ds BOXMON_STRUCT_LENGTH * (MONS_PER_BOX - 1)
\1MonOT:: ds NAME_LENGTH * MONS_PER_BOX
\1MonNicknames:: ds MON_NAME_LENGTH * MONS_PER_BOX
\1MonNicknamesEnd::
@ -171,7 +171,7 @@ channel_struct: MACRO
ENDM
battle_tower_struct: MACRO
\1Name:: ds NAME_LENGTH + -1
\1Name:: ds NAME_LENGTH - 1
\1TrainerClass:: ds 1
\1Mon1:: party_struct \1Mon1
\1Mon1Name:: ds MON_NAME_LENGTH
@ -217,7 +217,7 @@ hof_mon: MACRO
\1ID:: dw
\1DVs:: dw
\1Level:: db
\1Nickname:: ds MON_NAME_LENGTH + -1
\1Nickname:: ds MON_NAME_LENGTH - 1
\1End::
ENDM
@ -233,7 +233,7 @@ hall_of_fame: MACRO
ENDM
link_battle_record: MACRO
\1Name:: ds NAME_LENGTH + -1
\1Name:: ds NAME_LENGTH - 1
\1ID:: dw
\1Wins:: dw
\1Losses:: dw

View File

@ -202,7 +202,7 @@ WesleyScript:
.MetWesley:
writetext WesleyGivesGiftText
promptbutton
verbosegiveitem BLACKBELT
verbosegiveitem BLACKBELT_I
iffalse WesleyDoneScript
setevent EVENT_GOT_BLACKBELT_FROM_WESLEY
writetext WesleyGaveGiftText

View File

@ -4059,7 +4059,7 @@ macro_11f220: MACRO
; 12 words per page (0-based indexing)
x = \1 / 12
if \1 % 12 == 0
x = x + -1
x = x - 1
endc
db x
ENDM

View File

@ -2399,9 +2399,9 @@ wPlayerSpriteSetupFlags:: ; d45b
; bit 2: female player has been transformed into male
; bits 0-1: direction facing
db
wMapReentryScriptQueueFlag:: db ; d45c MemScriptFlag
wMapReentryScriptBank:: db ; d45d MemScriptBank
wMapReentryScriptAddress:: dw ; d45e MemScriptAddr
wMapReentryScriptQueueFlag:: db ; d45c
wMapReentryScriptBank:: db ; d45d
wMapReentryScriptAddress:: dw ; d45e
ds 4
wTimeCyclesSinceLastCall:: db ; d464
wReceiveCallDelay_MinsRemaining:: db ; d465
@ -2868,10 +2868,10 @@ wLastSpawnMapGroup:: db
wLastSpawnMapNumber:: db
wWarpNumber:: db ; dcb4
wMapGroup:: db ; dcb5 ; map group of current map
wMapNumber:: db ; dcb6 ; map number of current map
wYCoord:: db ; dcb7 ; current y coordinate relative to top-left corner of current map
wXCoord:: db ; dcb8 ; current x coordinate relative to top-left corner of current map
wMapGroup:: db ; dcb5
wMapNumber:: db ; dcb6
wYCoord:: db ; dcb7
wXCoord:: db ; dcb8
wScreenSave:: ds SCREEN_META_WIDTH * SCREEN_META_HEIGHT
wCurMapDataEnd::
@ -2881,8 +2881,8 @@ SECTION "Party", WRAMX
wPokemonData::
wPartyCount:: db ; dcd7 ; number of Pokémon in party
wPartySpecies:: ds PARTY_LENGTH ; dcd8 ; species of each Pokémon in party
wPartyCount:: db ; dcd7
wPartySpecies:: ds PARTY_LENGTH ; dcd8
wPartyEnd:: db ; dcde ; older code doesn't check wPartyCount
wPartyMons::