ref: bbc257476f9aac8d04d75a8036d412caa8f7d515
parent: 06db7ec55bbc87ed18db72a53fb20fa7b4da9b29
author: Rangi <[email protected]>
date: Tue Jul 7 06:54:05 EDT 2020
PSYCHIC -> PSYCHIC_TYPE (PSYCHIC is ambiguous with PSYCHIC_M)
--- a/constants/battle_constants.asm
+++ b/constants/battle_constants.asm
@@ -21,6 +21,13 @@
SONICBOOM_DAMAGE EQU 20
DRAGON_RAGE_DAMAGE EQU 40
+; type effectiveness factors, scaled by 10
+SUPER_EFFECTIVE EQU 20
+MORE_EFFECTIVE EQU 15
+EFFECTIVE EQU 10
+NOT_VERY_EFFECTIVE EQU 05
+NO_EFFECT EQU 00
+
; non-volatile statuses
SLP EQU %111 ; sleep counter
PSN EQU 3
--- a/constants/type_constants.asm
+++ b/constants/type_constants.asm
@@ -1,23 +1,23 @@
const_def
PHYSICAL EQU const_value
- const NORMAL ; $00
- const FIGHTING ; $01
- const FLYING ; $02
- const POISON ; $03
- const GROUND ; $04
- const ROCK ; $05
- const BIRD ; $06
- const BUG ; $07
- const GHOST ; $08
+ const NORMAL ; $00
+ const FIGHTING ; $01
+ const FLYING ; $02
+ const POISON ; $03
+ const GROUND ; $04
+ const ROCK ; $05
+ const BIRD ; $06
+ const BUG ; $07
+ const GHOST ; $08
const_value = $14
SPECIAL EQU const_value
- const FIRE ; $14
- const WATER ; $15
- const GRASS ; $16
- const ELECTRIC ; $17
- const PSYCHIC ; $18
- const ICE ; $19
- const DRAGON ; $1A
+ const FIRE ; $14
+ const WATER ; $15
+ const GRASS ; $16
+ const ELECTRIC ; $17
+ const PSYCHIC_TYPE ; $18
+ const ICE ; $19
+ const DRAGON ; $1A
--- a/data/moves/moves.asm
+++ b/data/moves/moves.asm
@@ -10,169 +10,169 @@
db \6 ; pp
ENDM
- move POUND, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 35
+ move POUND, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 35
MoveEnd:
- move KARATE_CHOP, NO_ADDITIONAL_EFFECT, 50, NORMAL, 100, 25
- move DOUBLESLAP, TWO_TO_FIVE_ATTACKS_EFFECT, 15, NORMAL, 85, 10
- move COMET_PUNCH, TWO_TO_FIVE_ATTACKS_EFFECT, 18, NORMAL, 85, 15
- move MEGA_PUNCH, NO_ADDITIONAL_EFFECT, 80, NORMAL, 85, 20
- move PAY_DAY, PAY_DAY_EFFECT, 40, NORMAL, 100, 20
- move FIRE_PUNCH, BURN_SIDE_EFFECT1, 75, FIRE, 100, 15
- move ICE_PUNCH, FREEZE_SIDE_EFFECT, 75, ICE, 100, 15
- move THUNDERPUNCH, PARALYZE_SIDE_EFFECT1, 75, ELECTRIC, 100, 15
- move SCRATCH, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 35
- move VICEGRIP, NO_ADDITIONAL_EFFECT, 55, NORMAL, 100, 30
- move GUILLOTINE, OHKO_EFFECT, 1, NORMAL, 30, 5
- move RAZOR_WIND, CHARGE_EFFECT, 80, NORMAL, 75, 10
- move SWORDS_DANCE, ATTACK_UP2_EFFECT, 0, NORMAL, 100, 30
- move CUT, NO_ADDITIONAL_EFFECT, 50, NORMAL, 95, 30
- move GUST, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 35
- move WING_ATTACK, NO_ADDITIONAL_EFFECT, 35, FLYING, 100, 35
- move WHIRLWIND, SWITCH_AND_TELEPORT_EFFECT, 0, NORMAL, 85, 20
- move FLY, FLY_EFFECT, 70, FLYING, 95, 15
- move BIND, TRAPPING_EFFECT, 15, NORMAL, 75, 20
- move SLAM, NO_ADDITIONAL_EFFECT, 80, NORMAL, 75, 20
- move VINE_WHIP, NO_ADDITIONAL_EFFECT, 35, GRASS, 100, 10
- move STOMP, FLINCH_SIDE_EFFECT2, 65, NORMAL, 100, 20
- move DOUBLE_KICK, ATTACK_TWICE_EFFECT, 30, FIGHTING, 100, 30
- move MEGA_KICK, NO_ADDITIONAL_EFFECT, 120, NORMAL, 75, 5
- move JUMP_KICK, JUMP_KICK_EFFECT, 70, FIGHTING, 95, 25
- move ROLLING_KICK, FLINCH_SIDE_EFFECT2, 60, FIGHTING, 85, 15
- move SAND_ATTACK, ACCURACY_DOWN1_EFFECT, 0, NORMAL, 100, 15
- move HEADBUTT, FLINCH_SIDE_EFFECT2, 70, NORMAL, 100, 15
- move HORN_ATTACK, NO_ADDITIONAL_EFFECT, 65, NORMAL, 100, 25
- move FURY_ATTACK, TWO_TO_FIVE_ATTACKS_EFFECT, 15, NORMAL, 85, 20
- move HORN_DRILL, OHKO_EFFECT, 1, NORMAL, 30, 5
- move TACKLE, NO_ADDITIONAL_EFFECT, 35, NORMAL, 95, 35
- move BODY_SLAM, PARALYZE_SIDE_EFFECT2, 85, NORMAL, 100, 15
- move WRAP, TRAPPING_EFFECT, 15, NORMAL, 85, 20
- move TAKE_DOWN, RECOIL_EFFECT, 90, NORMAL, 85, 20
- move THRASH, THRASH_PETAL_DANCE_EFFECT, 90, NORMAL, 100, 20
- move DOUBLE_EDGE, RECOIL_EFFECT, 100, NORMAL, 100, 15
- move TAIL_WHIP, DEFENSE_DOWN1_EFFECT, 0, NORMAL, 100, 30
- move POISON_STING, POISON_SIDE_EFFECT1, 15, POISON, 100, 35
- move TWINEEDLE, TWINEEDLE_EFFECT, 25, BUG, 100, 20
- move PIN_MISSILE, TWO_TO_FIVE_ATTACKS_EFFECT, 14, BUG, 85, 20
- move LEER, DEFENSE_DOWN1_EFFECT, 0, NORMAL, 100, 30
- move BITE, FLINCH_SIDE_EFFECT1, 60, NORMAL, 100, 25
- move GROWL, ATTACK_DOWN1_EFFECT, 0, NORMAL, 100, 40
- move ROAR, SWITCH_AND_TELEPORT_EFFECT, 0, NORMAL, 100, 20
- move SING, SLEEP_EFFECT, 0, NORMAL, 55, 15
- move SUPERSONIC, CONFUSION_EFFECT, 0, NORMAL, 55, 20
- move SONICBOOM, SPECIAL_DAMAGE_EFFECT, 1, NORMAL, 90, 20
- move DISABLE, DISABLE_EFFECT, 0, NORMAL, 55, 20
- move ACID, DEFENSE_DOWN_SIDE_EFFECT, 40, POISON, 100, 30
- move EMBER, BURN_SIDE_EFFECT1, 40, FIRE, 100, 25
- move FLAMETHROWER, BURN_SIDE_EFFECT1, 95, FIRE, 100, 15
- move MIST, MIST_EFFECT, 0, ICE, 100, 30
- move WATER_GUN, NO_ADDITIONAL_EFFECT, 40, WATER, 100, 25
- move HYDRO_PUMP, NO_ADDITIONAL_EFFECT, 120, WATER, 80, 5
- move SURF, NO_ADDITIONAL_EFFECT, 95, WATER, 100, 15
- move ICE_BEAM, FREEZE_SIDE_EFFECT, 95, ICE, 100, 10
- move BLIZZARD, FREEZE_SIDE_EFFECT, 120, ICE, 90, 5
- move PSYBEAM, CONFUSION_SIDE_EFFECT, 65, PSYCHIC, 100, 20
- move BUBBLEBEAM, SPEED_DOWN_SIDE_EFFECT, 65, WATER, 100, 20
- move AURORA_BEAM, ATTACK_DOWN_SIDE_EFFECT, 65, ICE, 100, 20
- move HYPER_BEAM, HYPER_BEAM_EFFECT, 150, NORMAL, 90, 5
- move PECK, NO_ADDITIONAL_EFFECT, 35, FLYING, 100, 35
- move DRILL_PECK, NO_ADDITIONAL_EFFECT, 80, FLYING, 100, 20
- move SUBMISSION, RECOIL_EFFECT, 80, FIGHTING, 80, 25
- move LOW_KICK, FLINCH_SIDE_EFFECT2, 50, FIGHTING, 90, 20
- move COUNTER, NO_ADDITIONAL_EFFECT, 1, FIGHTING, 100, 20
- move SEISMIC_TOSS, SPECIAL_DAMAGE_EFFECT, 1, FIGHTING, 100, 20
- move STRENGTH, NO_ADDITIONAL_EFFECT, 80, NORMAL, 100, 15
- move ABSORB, DRAIN_HP_EFFECT, 20, GRASS, 100, 20
- move MEGA_DRAIN, DRAIN_HP_EFFECT, 40, GRASS, 100, 10
- move LEECH_SEED, LEECH_SEED_EFFECT, 0, GRASS, 90, 10
- move GROWTH, SPECIAL_UP1_EFFECT, 0, NORMAL, 100, 40
- move RAZOR_LEAF, NO_ADDITIONAL_EFFECT, 55, GRASS, 95, 25
- move SOLARBEAM, CHARGE_EFFECT, 120, GRASS, 100, 10
- move POISONPOWDER, POISON_EFFECT, 0, POISON, 75, 35
- move STUN_SPORE, PARALYZE_EFFECT, 0, GRASS, 75, 30
- move SLEEP_POWDER, SLEEP_EFFECT, 0, GRASS, 75, 15
- move PETAL_DANCE, THRASH_PETAL_DANCE_EFFECT, 70, GRASS, 100, 20
- move STRING_SHOT, SPEED_DOWN1_EFFECT, 0, BUG, 95, 40
- move DRAGON_RAGE, SPECIAL_DAMAGE_EFFECT, 1, DRAGON, 100, 10
- move FIRE_SPIN, TRAPPING_EFFECT, 15, FIRE, 70, 15
- move THUNDERSHOCK, PARALYZE_SIDE_EFFECT1, 40, ELECTRIC, 100, 30
- move THUNDERBOLT, PARALYZE_SIDE_EFFECT1, 95, ELECTRIC, 100, 15
- move THUNDER_WAVE, PARALYZE_EFFECT, 0, ELECTRIC, 100, 20
- move THUNDER, PARALYZE_SIDE_EFFECT1, 120, ELECTRIC, 70, 10
- move ROCK_THROW, NO_ADDITIONAL_EFFECT, 50, ROCK, 65, 15
- move EARTHQUAKE, NO_ADDITIONAL_EFFECT, 100, GROUND, 100, 10
- move FISSURE, OHKO_EFFECT, 1, GROUND, 30, 5
- move DIG, CHARGE_EFFECT, 100, GROUND, 100, 10
- move TOXIC, POISON_EFFECT, 0, POISON, 85, 10
- move CONFUSION, CONFUSION_SIDE_EFFECT, 50, PSYCHIC, 100, 25
- move PSYCHIC_M, SPECIAL_DOWN_SIDE_EFFECT, 90, PSYCHIC, 100, 10
- move HYPNOSIS, SLEEP_EFFECT, 0, PSYCHIC, 60, 20
- move MEDITATE, ATTACK_UP1_EFFECT, 0, PSYCHIC, 100, 40
- move AGILITY, SPEED_UP2_EFFECT, 0, PSYCHIC, 100, 30
- move QUICK_ATTACK, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 30
- move RAGE, RAGE_EFFECT, 20, NORMAL, 100, 20
- move TELEPORT, SWITCH_AND_TELEPORT_EFFECT, 0, PSYCHIC, 100, 20
- move NIGHT_SHADE, SPECIAL_DAMAGE_EFFECT, 0, GHOST, 100, 15
- move MIMIC, MIMIC_EFFECT, 0, NORMAL, 100, 10
- move SCREECH, DEFENSE_DOWN2_EFFECT, 0, NORMAL, 85, 40
- move DOUBLE_TEAM, EVASION_UP1_EFFECT, 0, NORMAL, 100, 15
- move RECOVER, HEAL_EFFECT, 0, NORMAL, 100, 20
- move HARDEN, DEFENSE_UP1_EFFECT, 0, NORMAL, 100, 30
- move MINIMIZE, EVASION_UP1_EFFECT, 0, NORMAL, 100, 20
- move SMOKESCREEN, ACCURACY_DOWN1_EFFECT, 0, NORMAL, 100, 20
- move CONFUSE_RAY, CONFUSION_EFFECT, 0, GHOST, 100, 10
- move WITHDRAW, DEFENSE_UP1_EFFECT, 0, WATER, 100, 40
- move DEFENSE_CURL, DEFENSE_UP1_EFFECT, 0, NORMAL, 100, 40
- move BARRIER, DEFENSE_UP2_EFFECT, 0, PSYCHIC, 100, 30
- move LIGHT_SCREEN, LIGHT_SCREEN_EFFECT, 0, PSYCHIC, 100, 30
- move HAZE, HAZE_EFFECT, 0, ICE, 100, 30
- move REFLECT, REFLECT_EFFECT, 0, PSYCHIC, 100, 20
- move FOCUS_ENERGY, FOCUS_ENERGY_EFFECT, 0, NORMAL, 100, 30
- move BIDE, BIDE_EFFECT, 0, NORMAL, 100, 10
- move METRONOME, METRONOME_EFFECT, 0, NORMAL, 100, 10
- move MIRROR_MOVE, MIRROR_MOVE_EFFECT, 0, FLYING, 100, 20
- move SELFDESTRUCT, EXPLODE_EFFECT, 130, NORMAL, 100, 5
- move EGG_BOMB, NO_ADDITIONAL_EFFECT, 100, NORMAL, 75, 10
- move LICK, PARALYZE_SIDE_EFFECT2, 20, GHOST, 100, 30
- move SMOG, POISON_SIDE_EFFECT2, 20, POISON, 70, 20
- move SLUDGE, POISON_SIDE_EFFECT2, 65, POISON, 100, 20
- move BONE_CLUB, FLINCH_SIDE_EFFECT1, 65, GROUND, 85, 20
- move FIRE_BLAST, BURN_SIDE_EFFECT2, 120, FIRE, 85, 5
- move WATERFALL, NO_ADDITIONAL_EFFECT, 80, WATER, 100, 15
- move CLAMP, TRAPPING_EFFECT, 35, WATER, 75, 10
- move SWIFT, SWIFT_EFFECT, 60, NORMAL, 100, 20
- move SKULL_BASH, CHARGE_EFFECT, 100, NORMAL, 100, 15
- move SPIKE_CANNON, TWO_TO_FIVE_ATTACKS_EFFECT, 20, NORMAL, 100, 15
- move CONSTRICT, SPEED_DOWN_SIDE_EFFECT, 10, NORMAL, 100, 35
- move AMNESIA, SPECIAL_UP2_EFFECT, 0, PSYCHIC, 100, 20
- move KINESIS, ACCURACY_DOWN1_EFFECT, 0, PSYCHIC, 80, 15
- move SOFTBOILED, HEAL_EFFECT, 0, NORMAL, 100, 10
- move HI_JUMP_KICK, JUMP_KICK_EFFECT, 85, FIGHTING, 90, 20
- move GLARE, PARALYZE_EFFECT, 0, NORMAL, 75, 30
- move DREAM_EATER, DREAM_EATER_EFFECT, 100, PSYCHIC, 100, 15
- move POISON_GAS, POISON_EFFECT, 0, POISON, 55, 40
- move BARRAGE, TWO_TO_FIVE_ATTACKS_EFFECT, 15, NORMAL, 85, 20
- move LEECH_LIFE, DRAIN_HP_EFFECT, 20, BUG, 100, 15
- move LOVELY_KISS, SLEEP_EFFECT, 0, NORMAL, 75, 10
- move SKY_ATTACK, CHARGE_EFFECT, 140, FLYING, 90, 5
- move TRANSFORM, TRANSFORM_EFFECT, 0, NORMAL, 100, 10
- move BUBBLE, SPEED_DOWN_SIDE_EFFECT, 20, WATER, 100, 30
- move DIZZY_PUNCH, NO_ADDITIONAL_EFFECT, 70, NORMAL, 100, 10
- move SPORE, SLEEP_EFFECT, 0, GRASS, 100, 15
- move FLASH, ACCURACY_DOWN1_EFFECT, 0, NORMAL, 70, 20
- move PSYWAVE, SPECIAL_DAMAGE_EFFECT, 1, PSYCHIC, 80, 15
- move SPLASH, SPLASH_EFFECT, 0, NORMAL, 100, 40
- move ACID_ARMOR, DEFENSE_UP2_EFFECT, 0, POISON, 100, 40
- move CRABHAMMER, NO_ADDITIONAL_EFFECT, 90, WATER, 85, 10
- move EXPLOSION, EXPLODE_EFFECT, 170, NORMAL, 100, 5
- move FURY_SWIPES, TWO_TO_FIVE_ATTACKS_EFFECT, 18, NORMAL, 80, 15
- move BONEMERANG, ATTACK_TWICE_EFFECT, 50, GROUND, 90, 10
- move REST, HEAL_EFFECT, 0, PSYCHIC, 100, 10
- move ROCK_SLIDE, NO_ADDITIONAL_EFFECT, 75, ROCK, 90, 10
- move HYPER_FANG, FLINCH_SIDE_EFFECT1, 80, NORMAL, 90, 15
- move SHARPEN, ATTACK_UP1_EFFECT, 0, NORMAL, 100, 30
- move CONVERSION, CONVERSION_EFFECT, 0, NORMAL, 100, 30
- move TRI_ATTACK, NO_ADDITIONAL_EFFECT, 80, NORMAL, 100, 10
- move SUPER_FANG, SUPER_FANG_EFFECT, 1, NORMAL, 90, 10
- move SLASH, NO_ADDITIONAL_EFFECT, 70, NORMAL, 100, 20
- move SUBSTITUTE, SUBSTITUTE_EFFECT, 0, NORMAL, 100, 10
- move STRUGGLE, RECOIL_EFFECT, 50, NORMAL, 100, 10
+ move KARATE_CHOP, NO_ADDITIONAL_EFFECT, 50, NORMAL, 100, 25
+ move DOUBLESLAP, TWO_TO_FIVE_ATTACKS_EFFECT, 15, NORMAL, 85, 10
+ move COMET_PUNCH, TWO_TO_FIVE_ATTACKS_EFFECT, 18, NORMAL, 85, 15
+ move MEGA_PUNCH, NO_ADDITIONAL_EFFECT, 80, NORMAL, 85, 20
+ move PAY_DAY, PAY_DAY_EFFECT, 40, NORMAL, 100, 20
+ move FIRE_PUNCH, BURN_SIDE_EFFECT1, 75, FIRE, 100, 15
+ move ICE_PUNCH, FREEZE_SIDE_EFFECT, 75, ICE, 100, 15
+ move THUNDERPUNCH, PARALYZE_SIDE_EFFECT1, 75, ELECTRIC, 100, 15
+ move SCRATCH, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 35
+ move VICEGRIP, NO_ADDITIONAL_EFFECT, 55, NORMAL, 100, 30
+ move GUILLOTINE, OHKO_EFFECT, 1, NORMAL, 30, 5
+ move RAZOR_WIND, CHARGE_EFFECT, 80, NORMAL, 75, 10
+ move SWORDS_DANCE, ATTACK_UP2_EFFECT, 0, NORMAL, 100, 30
+ move CUT, NO_ADDITIONAL_EFFECT, 50, NORMAL, 95, 30
+ move GUST, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 35
+ move WING_ATTACK, NO_ADDITIONAL_EFFECT, 35, FLYING, 100, 35
+ move WHIRLWIND, SWITCH_AND_TELEPORT_EFFECT, 0, NORMAL, 85, 20
+ move FLY, FLY_EFFECT, 70, FLYING, 95, 15
+ move BIND, TRAPPING_EFFECT, 15, NORMAL, 75, 20
+ move SLAM, NO_ADDITIONAL_EFFECT, 80, NORMAL, 75, 20
+ move VINE_WHIP, NO_ADDITIONAL_EFFECT, 35, GRASS, 100, 10
+ move STOMP, FLINCH_SIDE_EFFECT2, 65, NORMAL, 100, 20
+ move DOUBLE_KICK, ATTACK_TWICE_EFFECT, 30, FIGHTING, 100, 30
+ move MEGA_KICK, NO_ADDITIONAL_EFFECT, 120, NORMAL, 75, 5
+ move JUMP_KICK, JUMP_KICK_EFFECT, 70, FIGHTING, 95, 25
+ move ROLLING_KICK, FLINCH_SIDE_EFFECT2, 60, FIGHTING, 85, 15
+ move SAND_ATTACK, ACCURACY_DOWN1_EFFECT, 0, NORMAL, 100, 15
+ move HEADBUTT, FLINCH_SIDE_EFFECT2, 70, NORMAL, 100, 15
+ move HORN_ATTACK, NO_ADDITIONAL_EFFECT, 65, NORMAL, 100, 25
+ move FURY_ATTACK, TWO_TO_FIVE_ATTACKS_EFFECT, 15, NORMAL, 85, 20
+ move HORN_DRILL, OHKO_EFFECT, 1, NORMAL, 30, 5
+ move TACKLE, NO_ADDITIONAL_EFFECT, 35, NORMAL, 95, 35
+ move BODY_SLAM, PARALYZE_SIDE_EFFECT2, 85, NORMAL, 100, 15
+ move WRAP, TRAPPING_EFFECT, 15, NORMAL, 85, 20
+ move TAKE_DOWN, RECOIL_EFFECT, 90, NORMAL, 85, 20
+ move THRASH, THRASH_PETAL_DANCE_EFFECT, 90, NORMAL, 100, 20
+ move DOUBLE_EDGE, RECOIL_EFFECT, 100, NORMAL, 100, 15
+ move TAIL_WHIP, DEFENSE_DOWN1_EFFECT, 0, NORMAL, 100, 30
+ move POISON_STING, POISON_SIDE_EFFECT1, 15, POISON, 100, 35
+ move TWINEEDLE, TWINEEDLE_EFFECT, 25, BUG, 100, 20
+ move PIN_MISSILE, TWO_TO_FIVE_ATTACKS_EFFECT, 14, BUG, 85, 20
+ move LEER, DEFENSE_DOWN1_EFFECT, 0, NORMAL, 100, 30
+ move BITE, FLINCH_SIDE_EFFECT1, 60, NORMAL, 100, 25
+ move GROWL, ATTACK_DOWN1_EFFECT, 0, NORMAL, 100, 40
+ move ROAR, SWITCH_AND_TELEPORT_EFFECT, 0, NORMAL, 100, 20
+ move SING, SLEEP_EFFECT, 0, NORMAL, 55, 15
+ move SUPERSONIC, CONFUSION_EFFECT, 0, NORMAL, 55, 20
+ move SONICBOOM, SPECIAL_DAMAGE_EFFECT, 1, NORMAL, 90, 20
+ move DISABLE, DISABLE_EFFECT, 0, NORMAL, 55, 20
+ move ACID, DEFENSE_DOWN_SIDE_EFFECT, 40, POISON, 100, 30
+ move EMBER, BURN_SIDE_EFFECT1, 40, FIRE, 100, 25
+ move FLAMETHROWER, BURN_SIDE_EFFECT1, 95, FIRE, 100, 15
+ move MIST, MIST_EFFECT, 0, ICE, 100, 30
+ move WATER_GUN, NO_ADDITIONAL_EFFECT, 40, WATER, 100, 25
+ move HYDRO_PUMP, NO_ADDITIONAL_EFFECT, 120, WATER, 80, 5
+ move SURF, NO_ADDITIONAL_EFFECT, 95, WATER, 100, 15
+ move ICE_BEAM, FREEZE_SIDE_EFFECT, 95, ICE, 100, 10
+ move BLIZZARD, FREEZE_SIDE_EFFECT, 120, ICE, 90, 5
+ move PSYBEAM, CONFUSION_SIDE_EFFECT, 65, PSYCHIC_TYPE, 100, 20
+ move BUBBLEBEAM, SPEED_DOWN_SIDE_EFFECT, 65, WATER, 100, 20
+ move AURORA_BEAM, ATTACK_DOWN_SIDE_EFFECT, 65, ICE, 100, 20
+ move HYPER_BEAM, HYPER_BEAM_EFFECT, 150, NORMAL, 90, 5
+ move PECK, NO_ADDITIONAL_EFFECT, 35, FLYING, 100, 35
+ move DRILL_PECK, NO_ADDITIONAL_EFFECT, 80, FLYING, 100, 20
+ move SUBMISSION, RECOIL_EFFECT, 80, FIGHTING, 80, 25
+ move LOW_KICK, FLINCH_SIDE_EFFECT2, 50, FIGHTING, 90, 20
+ move COUNTER, NO_ADDITIONAL_EFFECT, 1, FIGHTING, 100, 20
+ move SEISMIC_TOSS, SPECIAL_DAMAGE_EFFECT, 1, FIGHTING, 100, 20
+ move STRENGTH, NO_ADDITIONAL_EFFECT, 80, NORMAL, 100, 15
+ move ABSORB, DRAIN_HP_EFFECT, 20, GRASS, 100, 20
+ move MEGA_DRAIN, DRAIN_HP_EFFECT, 40, GRASS, 100, 10
+ move LEECH_SEED, LEECH_SEED_EFFECT, 0, GRASS, 90, 10
+ move GROWTH, SPECIAL_UP1_EFFECT, 0, NORMAL, 100, 40
+ move RAZOR_LEAF, NO_ADDITIONAL_EFFECT, 55, GRASS, 95, 25
+ move SOLARBEAM, CHARGE_EFFECT, 120, GRASS, 100, 10
+ move POISONPOWDER, POISON_EFFECT, 0, POISON, 75, 35
+ move STUN_SPORE, PARALYZE_EFFECT, 0, GRASS, 75, 30
+ move SLEEP_POWDER, SLEEP_EFFECT, 0, GRASS, 75, 15
+ move PETAL_DANCE, THRASH_PETAL_DANCE_EFFECT, 70, GRASS, 100, 20
+ move STRING_SHOT, SPEED_DOWN1_EFFECT, 0, BUG, 95, 40
+ move DRAGON_RAGE, SPECIAL_DAMAGE_EFFECT, 1, DRAGON, 100, 10
+ move FIRE_SPIN, TRAPPING_EFFECT, 15, FIRE, 70, 15
+ move THUNDERSHOCK, PARALYZE_SIDE_EFFECT1, 40, ELECTRIC, 100, 30
+ move THUNDERBOLT, PARALYZE_SIDE_EFFECT1, 95, ELECTRIC, 100, 15
+ move THUNDER_WAVE, PARALYZE_EFFECT, 0, ELECTRIC, 100, 20
+ move THUNDER, PARALYZE_SIDE_EFFECT1, 120, ELECTRIC, 70, 10
+ move ROCK_THROW, NO_ADDITIONAL_EFFECT, 50, ROCK, 65, 15
+ move EARTHQUAKE, NO_ADDITIONAL_EFFECT, 100, GROUND, 100, 10
+ move FISSURE, OHKO_EFFECT, 1, GROUND, 30, 5
+ move DIG, CHARGE_EFFECT, 100, GROUND, 100, 10
+ move TOXIC, POISON_EFFECT, 0, POISON, 85, 10
+ move CONFUSION, CONFUSION_SIDE_EFFECT, 50, PSYCHIC_TYPE, 100, 25
+ move PSYCHIC_M, SPECIAL_DOWN_SIDE_EFFECT, 90, PSYCHIC_TYPE, 100, 10
+ move HYPNOSIS, SLEEP_EFFECT, 0, PSYCHIC_TYPE, 60, 20
+ move MEDITATE, ATTACK_UP1_EFFECT, 0, PSYCHIC_TYPE, 100, 40
+ move AGILITY, SPEED_UP2_EFFECT, 0, PSYCHIC_TYPE, 100, 30
+ move QUICK_ATTACK, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 30
+ move RAGE, RAGE_EFFECT, 20, NORMAL, 100, 20
+ move TELEPORT, SWITCH_AND_TELEPORT_EFFECT, 0, PSYCHIC_TYPE, 100, 20
+ move NIGHT_SHADE, SPECIAL_DAMAGE_EFFECT, 0, GHOST, 100, 15
+ move MIMIC, MIMIC_EFFECT, 0, NORMAL, 100, 10
+ move SCREECH, DEFENSE_DOWN2_EFFECT, 0, NORMAL, 85, 40
+ move DOUBLE_TEAM, EVASION_UP1_EFFECT, 0, NORMAL, 100, 15
+ move RECOVER, HEAL_EFFECT, 0, NORMAL, 100, 20
+ move HARDEN, DEFENSE_UP1_EFFECT, 0, NORMAL, 100, 30
+ move MINIMIZE, EVASION_UP1_EFFECT, 0, NORMAL, 100, 20
+ move SMOKESCREEN, ACCURACY_DOWN1_EFFECT, 0, NORMAL, 100, 20
+ move CONFUSE_RAY, CONFUSION_EFFECT, 0, GHOST, 100, 10
+ move WITHDRAW, DEFENSE_UP1_EFFECT, 0, WATER, 100, 40
+ move DEFENSE_CURL, DEFENSE_UP1_EFFECT, 0, NORMAL, 100, 40
+ move BARRIER, DEFENSE_UP2_EFFECT, 0, PSYCHIC_TYPE, 100, 30
+ move LIGHT_SCREEN, LIGHT_SCREEN_EFFECT, 0, PSYCHIC_TYPE, 100, 30
+ move HAZE, HAZE_EFFECT, 0, ICE, 100, 30
+ move REFLECT, REFLECT_EFFECT, 0, PSYCHIC_TYPE, 100, 20
+ move FOCUS_ENERGY, FOCUS_ENERGY_EFFECT, 0, NORMAL, 100, 30
+ move BIDE, BIDE_EFFECT, 0, NORMAL, 100, 10
+ move METRONOME, METRONOME_EFFECT, 0, NORMAL, 100, 10
+ move MIRROR_MOVE, MIRROR_MOVE_EFFECT, 0, FLYING, 100, 20
+ move SELFDESTRUCT, EXPLODE_EFFECT, 130, NORMAL, 100, 5
+ move EGG_BOMB, NO_ADDITIONAL_EFFECT, 100, NORMAL, 75, 10
+ move LICK, PARALYZE_SIDE_EFFECT2, 20, GHOST, 100, 30
+ move SMOG, POISON_SIDE_EFFECT2, 20, POISON, 70, 20
+ move SLUDGE, POISON_SIDE_EFFECT2, 65, POISON, 100, 20
+ move BONE_CLUB, FLINCH_SIDE_EFFECT1, 65, GROUND, 85, 20
+ move FIRE_BLAST, BURN_SIDE_EFFECT2, 120, FIRE, 85, 5
+ move WATERFALL, NO_ADDITIONAL_EFFECT, 80, WATER, 100, 15
+ move CLAMP, TRAPPING_EFFECT, 35, WATER, 75, 10
+ move SWIFT, SWIFT_EFFECT, 60, NORMAL, 100, 20
+ move SKULL_BASH, CHARGE_EFFECT, 100, NORMAL, 100, 15
+ move SPIKE_CANNON, TWO_TO_FIVE_ATTACKS_EFFECT, 20, NORMAL, 100, 15
+ move CONSTRICT, SPEED_DOWN_SIDE_EFFECT, 10, NORMAL, 100, 35
+ move AMNESIA, SPECIAL_UP2_EFFECT, 0, PSYCHIC_TYPE, 100, 20
+ move KINESIS, ACCURACY_DOWN1_EFFECT, 0, PSYCHIC_TYPE, 80, 15
+ move SOFTBOILED, HEAL_EFFECT, 0, NORMAL, 100, 10
+ move HI_JUMP_KICK, JUMP_KICK_EFFECT, 85, FIGHTING, 90, 20
+ move GLARE, PARALYZE_EFFECT, 0, NORMAL, 75, 30
+ move DREAM_EATER, DREAM_EATER_EFFECT, 100, PSYCHIC_TYPE, 100, 15
+ move POISON_GAS, POISON_EFFECT, 0, POISON, 55, 40
+ move BARRAGE, TWO_TO_FIVE_ATTACKS_EFFECT, 15, NORMAL, 85, 20
+ move LEECH_LIFE, DRAIN_HP_EFFECT, 20, BUG, 100, 15
+ move LOVELY_KISS, SLEEP_EFFECT, 0, NORMAL, 75, 10
+ move SKY_ATTACK, CHARGE_EFFECT, 140, FLYING, 90, 5
+ move TRANSFORM, TRANSFORM_EFFECT, 0, NORMAL, 100, 10
+ move BUBBLE, SPEED_DOWN_SIDE_EFFECT, 20, WATER, 100, 30
+ move DIZZY_PUNCH, NO_ADDITIONAL_EFFECT, 70, NORMAL, 100, 10
+ move SPORE, SLEEP_EFFECT, 0, GRASS, 100, 15
+ move FLASH, ACCURACY_DOWN1_EFFECT, 0, NORMAL, 70, 20
+ move PSYWAVE, SPECIAL_DAMAGE_EFFECT, 1, PSYCHIC_TYPE, 80, 15
+ move SPLASH, SPLASH_EFFECT, 0, NORMAL, 100, 40
+ move ACID_ARMOR, DEFENSE_UP2_EFFECT, 0, POISON, 100, 40
+ move CRABHAMMER, NO_ADDITIONAL_EFFECT, 90, WATER, 85, 10
+ move EXPLOSION, EXPLODE_EFFECT, 170, NORMAL, 100, 5
+ move FURY_SWIPES, TWO_TO_FIVE_ATTACKS_EFFECT, 18, NORMAL, 80, 15
+ move BONEMERANG, ATTACK_TWICE_EFFECT, 50, GROUND, 90, 10
+ move REST, HEAL_EFFECT, 0, PSYCHIC_TYPE, 100, 10
+ move ROCK_SLIDE, NO_ADDITIONAL_EFFECT, 75, ROCK, 90, 10
+ move HYPER_FANG, FLINCH_SIDE_EFFECT1, 80, NORMAL, 90, 15
+ move SHARPEN, ATTACK_UP1_EFFECT, 0, NORMAL, 100, 30
+ move CONVERSION, CONVERSION_EFFECT, 0, NORMAL, 100, 30
+ move TRI_ATTACK, NO_ADDITIONAL_EFFECT, 80, NORMAL, 100, 10
+ move SUPER_FANG, SUPER_FANG_EFFECT, 1, NORMAL, 90, 10
+ move SLASH, NO_ADDITIONAL_EFFECT, 70, NORMAL, 100, 20
+ move SUBSTITUTE, SUBSTITUTE_EFFECT, 0, NORMAL, 100, 10
+ move STRUGGLE, RECOIL_EFFECT, 50, NORMAL, 100, 10
--- a/data/pokemon/base_stats/abra.asm
+++ b/data/pokemon/base_stats/abra.asm
@@ -3,7 +3,7 @@
db 25, 20, 15, 90, 105
; hp atk def spd spc
- db PSYCHIC, PSYCHIC ; type
+ db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 200 ; catch rate
db 73 ; base exp
--- a/data/pokemon/base_stats/alakazam.asm
+++ b/data/pokemon/base_stats/alakazam.asm
@@ -3,7 +3,7 @@
db 55, 50, 45, 120, 135
; hp atk def spd spc
- db PSYCHIC, PSYCHIC ; type
+ db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 50 ; catch rate
db 186 ; base exp
--- a/data/pokemon/base_stats/drowzee.asm
+++ b/data/pokemon/base_stats/drowzee.asm
@@ -3,7 +3,7 @@
db 60, 48, 45, 42, 90
; hp atk def spd spc
- db PSYCHIC, PSYCHIC ; type
+ db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 190 ; catch rate
db 102 ; base exp
--- a/data/pokemon/base_stats/exeggcute.asm
+++ b/data/pokemon/base_stats/exeggcute.asm
@@ -3,7 +3,7 @@
db 60, 40, 80, 40, 60
; hp atk def spd spc
- db GRASS, PSYCHIC ; type
+ db GRASS, PSYCHIC_TYPE ; type
db 90 ; catch rate
db 98 ; base exp
--- a/data/pokemon/base_stats/exeggutor.asm
+++ b/data/pokemon/base_stats/exeggutor.asm
@@ -3,7 +3,7 @@
db 95, 95, 85, 55, 125
; hp atk def spd spc
- db GRASS, PSYCHIC ; type
+ db GRASS, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 212 ; base exp
--- a/data/pokemon/base_stats/hypno.asm
+++ b/data/pokemon/base_stats/hypno.asm
@@ -3,7 +3,7 @@
db 85, 73, 70, 67, 115
; hp atk def spd spc
- db PSYCHIC, PSYCHIC ; type
+ db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 75 ; catch rate
db 165 ; base exp
--- a/data/pokemon/base_stats/jynx.asm
+++ b/data/pokemon/base_stats/jynx.asm
@@ -3,7 +3,7 @@
db 65, 50, 35, 95, 95
; hp atk def spd spc
- db ICE, PSYCHIC ; type
+ db ICE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 137 ; base exp
--- a/data/pokemon/base_stats/kadabra.asm
+++ b/data/pokemon/base_stats/kadabra.asm
@@ -3,7 +3,7 @@
db 40, 35, 30, 105, 120
; hp atk def spd spc
- db PSYCHIC, PSYCHIC ; type
+ db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 100 ; catch rate
db 145 ; base exp
--- a/data/pokemon/base_stats/mew.asm
+++ b/data/pokemon/base_stats/mew.asm
@@ -3,7 +3,7 @@
db 100, 100, 100, 100, 100
; hp atk def spd spc
- db PSYCHIC, PSYCHIC ; type
+ db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 64 ; base exp
--- a/data/pokemon/base_stats/mewtwo.asm
+++ b/data/pokemon/base_stats/mewtwo.asm
@@ -3,7 +3,7 @@
db 106, 110, 90, 130, 154
; hp atk def spd spc
- db PSYCHIC, PSYCHIC ; type
+ db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 3 ; catch rate
db 220 ; base exp
--- a/data/pokemon/base_stats/mrmime.asm
+++ b/data/pokemon/base_stats/mrmime.asm
@@ -3,7 +3,7 @@
db 40, 45, 65, 90, 100
; hp atk def spd spc
- db PSYCHIC, PSYCHIC ; type
+ db PSYCHIC_TYPE, PSYCHIC_TYPE ; type
db 45 ; catch rate
db 136 ; base exp
--- a/data/pokemon/base_stats/slowbro.asm
+++ b/data/pokemon/base_stats/slowbro.asm
@@ -3,7 +3,7 @@
db 95, 75, 110, 30, 80
; hp atk def spd spc
- db WATER, PSYCHIC ; type
+ db WATER, PSYCHIC_TYPE ; type
db 75 ; catch rate
db 164 ; base exp
--- a/data/pokemon/base_stats/slowpoke.asm
+++ b/data/pokemon/base_stats/slowpoke.asm
@@ -3,7 +3,7 @@
db 90, 65, 65, 15, 40
; hp atk def spd spc
- db WATER, PSYCHIC ; type
+ db WATER, PSYCHIC_TYPE ; type
db 190 ; catch rate
db 99 ; base exp
--- a/data/pokemon/base_stats/starmie.asm
+++ b/data/pokemon/base_stats/starmie.asm
@@ -3,7 +3,7 @@
db 60, 75, 85, 115, 100
; hp atk def spd spc
- db WATER, PSYCHIC ; type
+ db WATER, PSYCHIC_TYPE ; type
db 60 ; catch rate
db 207 ; base exp
--- a/data/types/type_matchups.asm
+++ b/data/types/type_matchups.asm
@@ -1,89 +1,85 @@
TypeEffects:
-; format: attacking type, defending type, damage multiplier
-; the multiplier is a (decimal) fixed-point number:
-; 20 is ×2.0
-; 05 is ×0.5
-; 00 is ×0
- db WATER,FIRE,20
- db FIRE,GRASS,20
- db FIRE,ICE,20
- db GRASS,WATER,20
- db ELECTRIC,WATER,20
- db WATER,ROCK,20
- db GROUND,FLYING,00
- db WATER,WATER,05
- db FIRE,FIRE,05
- db ELECTRIC,ELECTRIC,05
- db ICE,ICE,05
- db GRASS,GRASS,05
- db PSYCHIC,PSYCHIC,05
- db FIRE,WATER,05
- db GRASS,FIRE,05
- db WATER,GRASS,05
- db ELECTRIC,GRASS,05
- db NORMAL,ROCK,05
- db NORMAL,GHOST,00
- db GHOST,GHOST,20
- db FIRE,BUG,20
- db FIRE,ROCK,05
- db WATER,GROUND,20
- db ELECTRIC,GROUND,00
- db ELECTRIC,FLYING,20
- db GRASS,GROUND,20
- db GRASS,BUG,05
- db GRASS,POISON,05
- db GRASS,ROCK,20
- db GRASS,FLYING,05
- db ICE,WATER,05
- db ICE,GRASS,20
- db ICE,GROUND,20
- db ICE,FLYING,20
- db FIGHTING,NORMAL,20
- db FIGHTING,POISON,05
- db FIGHTING,FLYING,05
- db FIGHTING,PSYCHIC,05
- db FIGHTING,BUG,05
- db FIGHTING,ROCK,20
- db FIGHTING,ICE,20
- db FIGHTING,GHOST,00
- db POISON,GRASS,20
- db POISON,POISON,05
- db POISON,GROUND,05
- db POISON,BUG,20
- db POISON,ROCK,05
- db POISON,GHOST,05
- db GROUND,FIRE,20
- db GROUND,ELECTRIC,20
- db GROUND,GRASS,05
- db GROUND,BUG,05
- db GROUND,ROCK,20
- db GROUND,POISON,20
- db FLYING,ELECTRIC,05
- db FLYING,FIGHTING,20
- db FLYING,BUG,20
- db FLYING,GRASS,20
- db FLYING,ROCK,05
- db PSYCHIC,FIGHTING,20
- db PSYCHIC,POISON,20
- db BUG,FIRE,05
- db BUG,GRASS,20
- db BUG,FIGHTING,05
- db BUG,FLYING,05
- db BUG,PSYCHIC,20
- db BUG,GHOST,05
- db BUG,POISON,20
- db ROCK,FIRE,20
- db ROCK,FIGHTING,05
- db ROCK,GROUND,05
- db ROCK,FLYING,20
- db ROCK,BUG,20
- db ROCK,ICE,20
- db GHOST,NORMAL,00
- db GHOST,PSYCHIC,00
- db FIRE,DRAGON,05
- db WATER,DRAGON,05
- db ELECTRIC,DRAGON,05
- db GRASS,DRAGON,05
- db ICE,DRAGON,20
- db DRAGON,DRAGON,20
- db $FF
+ ; attacker, defender, *=
+ db WATER, FIRE, SUPER_EFFECTIVE
+ db FIRE, GRASS, SUPER_EFFECTIVE
+ db FIRE, ICE, SUPER_EFFECTIVE
+ db GRASS, WATER, SUPER_EFFECTIVE
+ db ELECTRIC, WATER, SUPER_EFFECTIVE
+ db WATER, ROCK, SUPER_EFFECTIVE
+ db GROUND, FLYING, NO_EFFECT
+ db WATER, WATER, NOT_VERY_EFFECTIVE
+ db FIRE, FIRE, NOT_VERY_EFFECTIVE
+ db ELECTRIC, ELECTRIC, NOT_VERY_EFFECTIVE
+ db ICE, ICE, NOT_VERY_EFFECTIVE
+ db GRASS, GRASS, NOT_VERY_EFFECTIVE
+ db PSYCHIC_TYPE, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE
+ db FIRE, WATER, NOT_VERY_EFFECTIVE
+ db GRASS, FIRE, NOT_VERY_EFFECTIVE
+ db WATER, GRASS, NOT_VERY_EFFECTIVE
+ db ELECTRIC, GRASS, NOT_VERY_EFFECTIVE
+ db NORMAL, ROCK, NOT_VERY_EFFECTIVE
+ db NORMAL, GHOST, NO_EFFECT
+ db GHOST, GHOST, SUPER_EFFECTIVE
+ db FIRE, BUG, SUPER_EFFECTIVE
+ db FIRE, ROCK, NOT_VERY_EFFECTIVE
+ db WATER, GROUND, SUPER_EFFECTIVE
+ db ELECTRIC, GROUND, NO_EFFECT
+ db ELECTRIC, FLYING, SUPER_EFFECTIVE
+ db GRASS, GROUND, SUPER_EFFECTIVE
+ db GRASS, BUG, NOT_VERY_EFFECTIVE
+ db GRASS, POISON, NOT_VERY_EFFECTIVE
+ db GRASS, ROCK, SUPER_EFFECTIVE
+ db GRASS, FLYING, NOT_VERY_EFFECTIVE
+ db ICE, WATER, NOT_VERY_EFFECTIVE
+ db ICE, GRASS, SUPER_EFFECTIVE
+ db ICE, GROUND, SUPER_EFFECTIVE
+ db ICE, FLYING, SUPER_EFFECTIVE
+ db FIGHTING, NORMAL, 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, ICE, SUPER_EFFECTIVE
+ db FIGHTING, GHOST, NO_EFFECT
+ db POISON, GRASS, SUPER_EFFECTIVE
+ db POISON, POISON, NOT_VERY_EFFECTIVE
+ db POISON, GROUND, NOT_VERY_EFFECTIVE
+ db POISON, BUG, SUPER_EFFECTIVE
+ db POISON, ROCK, NOT_VERY_EFFECTIVE
+ db POISON, GHOST, NOT_VERY_EFFECTIVE
+ db GROUND, FIRE, SUPER_EFFECTIVE
+ db GROUND, ELECTRIC, SUPER_EFFECTIVE
+ db GROUND, GRASS, NOT_VERY_EFFECTIVE
+ db GROUND, BUG, NOT_VERY_EFFECTIVE
+ db GROUND, ROCK, SUPER_EFFECTIVE
+ db GROUND, POISON, SUPER_EFFECTIVE
+ db FLYING, ELECTRIC, NOT_VERY_EFFECTIVE
+ db FLYING, FIGHTING, SUPER_EFFECTIVE
+ db FLYING, BUG, SUPER_EFFECTIVE
+ db FLYING, GRASS, SUPER_EFFECTIVE
+ db FLYING, ROCK, NOT_VERY_EFFECTIVE
+ db PSYCHIC_TYPE, FIGHTING, SUPER_EFFECTIVE
+ db PSYCHIC_TYPE, POISON, SUPER_EFFECTIVE
+ db BUG, FIRE, NOT_VERY_EFFECTIVE
+ db BUG, GRASS, SUPER_EFFECTIVE
+ db BUG, FIGHTING, NOT_VERY_EFFECTIVE
+ db BUG, FLYING, NOT_VERY_EFFECTIVE
+ db BUG, PSYCHIC_TYPE, SUPER_EFFECTIVE
+ db BUG, GHOST, NOT_VERY_EFFECTIVE
+ db BUG, POISON, SUPER_EFFECTIVE
+ db ROCK, FIRE, 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, ICE, SUPER_EFFECTIVE
+ db GHOST, NORMAL, NO_EFFECT
+ db GHOST, PSYCHIC_TYPE, NO_EFFECT
+ db FIRE, DRAGON, NOT_VERY_EFFECTIVE
+ db WATER, DRAGON, NOT_VERY_EFFECTIVE
+ db ELECTRIC, DRAGON, NOT_VERY_EFFECTIVE
+ db GRASS, DRAGON, NOT_VERY_EFFECTIVE
+ db ICE, DRAGON, SUPER_EFFECTIVE
+ db DRAGON, DRAGON, SUPER_EFFECTIVE
+ db -1 ; end