MultipleForms.register(:VENUSAUR,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:VENUSAURITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Venusaur") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [80,102,123,100,100,120] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:THICKFAT) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 1555 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:CHARIZARD,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:CHARIZARDITEX)
next 2 if isConst?(pokemon.item,PBItems,:CHARIZARDITEY)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Charizard X") if pokemon.form==1
next _INTL("Mega Charizard Y") if pokemon.form==2
next
},
"getBaseStats"=>proc{|pokemon|
next [78,124,118,100,129,85] if pokemon.form==1
next [78,104,78,100,159,115] if pokemon.form==2
next
},
"type2"=>proc{|pokemon|
next getID(PBTypes,:DRAGON) if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:TOUGHCLAWS) if pokemon.form==1
next getID(PBAbilities,:DROUGHT) if pokemon.form==2
next
},
"weight"=>proc{|pokemon|
next 1105 if pokemon.form==1
next 1005 if pokemon.form==2
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:BLASTOISE,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:BLASTOISINITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Blastoise") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [79,103,120,78,135,115] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:MEGALAUNCHER) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 1011 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:GYARADOS,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:GYARADOSITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Gyarados") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [95,155,109,81,70,130] if pokemon.form==1
next
},
"type2"=>proc{|pokemon|
next getID(PBTypes,:DARK) if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:MOLDBREAKER) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 305 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:HOUNDOOM,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:HOUNDOOMITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Houndoom") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [75,90,90,115,140,90] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:SOLARPOWER) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 49.5 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:ALAKAZAM,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:ALAKAZITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Alakazam") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [55,50,65,150,175,95] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:TRACE) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 485 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:GENGAR,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:GENGARITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Gengar") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [60,65,80,130,170,95] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:SHADOWTAG) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 480 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:KANGASKHAN,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:KANGASKHANITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Kangaskhan") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [105,125,100,100,60,100] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:PARENTALBOND) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 1000 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:PINSIR,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:PINSIRITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Pinsir") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [65,155,105,120,65,90] if pokemon.form==1
next
},
"type2"=>proc{|pokemon|
next getID(PBTypes,:FLYING) if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:AERILATE) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 590 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:AERODACTYL,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:AERODACTYLITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Aerodactyl") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [80,135,85,150,70,95] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:TOUGHCLAWS) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 790 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:MEWTWO,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:MEWTWONITEX)
next 2 if isConst?(pokemon.item,PBItems,:MEWTWONITEY)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Mewtwo X") if pokemon.form==1
next _INTL("Mega Mewtwo Y") if pokemon.form==2
next
},
"getBaseStats"=>proc{|pokemon|
next [106,190,100,130,154,100] if pokemon.form==1
next [106,150,70,140,194,120] if pokemon.form==2
next
},
"type2"=>proc{|pokemon|
next getID(PBTypes,:FIGHTING) if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:STEADFAST) if pokemon.form==1
next getID(PBAbilities,:INSOMNIA) if pokemon.form==2
next
},
"weight"=>proc{|pokemon|
next 1270 if pokemon.form==1
next 330 if pokemon.form==2
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:AMPHAROS,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:AMPHAROSITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Ampharos") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [90,95,105,45,165,110] if pokemon.form==1
next
},
"type2"=>proc{|pokemon|
next getID(PBTypes,:DRAGON) if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:MOLDBREAKER) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 615 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:SCIZOR,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:SCIZORITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Scizor") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [70,150,140,75,65,100] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:TECHNICIAN) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 1250 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:HERACROSS,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:HERACRONITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Heracross") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [80,185,115,75,40,105] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:SKILLLINK) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 625 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:TYRANITAR,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:TYRANITARITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Tyranitar") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [100,164,150,71,95,120] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:SANDSTREAM) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 2550 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:BLAZIKEN,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:BLAZIKENITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Blaziken") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [80,160,80,100,130,80] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:SPEEDBOOST) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 520 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:GARDEVOIR,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:GARDEVOIRITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Gardevoir") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [68,85,65,100,165,135] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:PIXILATE) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 484 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:MAWILE,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:MAWILITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Mawile") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [50,105,125,50,55,95] if pokemon.form==1
next
},
"type2"=>proc{|pokemon|
next getID(PBTypes,:FAIRY) if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:HUGEPOWER) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 235 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:AGGRON,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:AGGRONITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Aggron") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [70,140,230,50,60,80] if pokemon.form==1
next
},
"type2"=>proc{|pokemon|
next getID(PBTypes,:STEEL) if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:FILTER) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 3950 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:MEDICHAM,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:MEDICHAMITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Medicham") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [60,100,85,100,80,85] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:PUREPOWER) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 315 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:MAENCTRIC,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:MANECTITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Manectric") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [70,75,80,135,135,80] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:INTIMIDATE) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 440 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:BANETTE,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:BANETTITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Banette") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [64,165,75,75,93,83] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:PRANKSTER) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 130 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:ABSOL,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:ABSOLITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Absol") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [65,150,60,115,115,60] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:MAGICBOUNCE) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 490 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:LATIAS,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:LATIASITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Latias") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [80,100,120,110,140,150] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:LEVITATE) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 400 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:LATIOS,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:LATIOSITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Latios") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [80,130,100,110,160,120] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:LEVITATE) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 400 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:GARCHOMP,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:GARCHOMPITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Garchomp") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [108,170,115,92,120,95] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:SANDFORCE) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 950 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:LUCARIO,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:LUCARIONITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Lucario") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [70,145,88,112,140,70] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:ADAPTABILITY) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 575 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})
MultipleForms.register(:ABOMASNOW,{
"getMegaForm"=>proc{|pokemon|
next 1 if isConst?(pokemon.item,PBItems,:ABOMASITE)
next
},
"getUnmegaForm"=>proc{|pokemon|
next 0
},
"getMegaName"=>proc{|pokemon|
next _INTL("Mega Abomasnow") if pokemon.form==1
next
},
"getBaseStats"=>proc{|pokemon|
next [90,132,105,30,132,105] if pokemon.form==1
next
},
"ability"=>proc{|pokemon|
next getID(PBAbilities,:SNOWWARNING) if pokemon.form==1
next
},
"weight"=>proc{|pokemon|
next 1850 if pokemon.form==1
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
}
})