Crystal Noel
RPG Maker VX Ace Scripter
- 222
- Posts
- 12
- Years
- United States
- Seen Aug 11, 2019
This script allows for the player to assign moves to be learned upon evolution as there is in Pokémon Sun and Moon.
To use, simply place this script above Main and below everything else.
To use, simply place this script above Main and below everything else.
Code:
################################################################################
# Evolution Moves #
# #
# By Crystal Noel #
# #
# Current Version: 1.00 #
################################################################################
# The 7th generation of Pokémon introduced the feature of evolution moves, a #
# feature where a Pokémon would learn a move upon evolving reguardless of what #
# level it evolved at. The game defines these as being learned at level 0, #
# which is not possible with the compiler, so they are defined here and upon #
# evolving a species will check the list and learn the move. Do note that #
# moves are not automatically added to the learn list, thus can't be relearned #
# through the move relearner, unless the move is also part of the Pokémon's #
# learnset. #
################################################################################
# To use #
# 1.) Place in a new script section below "PSystem_Utilities" but above "Main" # #
# 2.) Define which species get evolution moves #
################################################################################
################################################################################
# Define Evolution Moves Here #
################################################################################
EVOLUTIONMOVES = {
# Gen I
:VENUSAUR => [:PETALDANCE],
:CHARIZARD => [:WINGATTACK],
:METAPOD => [:HARDEN],
:BUTTERFREE => [:GUST],
:KAKUNA => [:HARDEN],
:BEEDRILL => [:TWINEEDLE],
:RATICATE => [:SCARYFACE],
:ARBOK => [:CRUNCH],
:VENOMOTH => [:GUST],
:DUGTRIO => [:SANDTOMB],
:PERSIAN => [:SWIFT],
:PRIMEAPE => [:RAGE],
:POLIWRATH => [:SUBMISSION],
:KADABRA => [:KINESIS],
:ALAKAZAM => [:ALAKAZAM],
:MACHAMP => [:STRENGTH],
:VICTREEBEL => [:LEAFTORNADO],
:RAPIDASH => [:FURYATTACK],
:SLOWBROW => [:WIDTHDRAW],
:MAGNETON => [:TRIATTACK],
:DODRIO => [:TRIATTACK],
:DEWGONG => [:SHEERCOLD],
:MUK => [:VENOMDRENCH],
:HAUNTER => [:SHADOWPUNCH],
:GENGAR => [:SHADOWPUNCH],
:HYPNO => [:STOMP],
:HITMONLEE => [:DOUBLEKICK],
:HITMONCHAN => [:COMETPUNCH],
:WEEZING => [:DOUBLEHIT],
:RHYDON => [:HAMMERARM],
:GYARADOS => [:BITE],
:VAPOREON => [:WATERGUN],
:JOLTEON => [:THUNDERSHOCK],
:FLAREON => [:EMBER],
:OMASTAR => [:SPIKECANNON],
:KABUTOPS => [:SLASH],
:DRAGONITE => [:WINGATTACK],
# Gen II
:MEGANIUM => [:PETALDANCE],
:FURRET => [:AGILITY],
:LEDIAN => [:SWORDSDANCE],
:ARIADOS => [:STOCKPILE, :SWALLOW, :SPITUP],
:CROBAT => [:CROSSPOISON],
:XATU => [:AIRSLASH],
:AMPHAROS => [:THUNDERPUNCH],
:BELLOSSOM => [:MAGICALLEAF],
:SUDOWOODO => [:SLAM],
:ESPEON => [:CONFUSION],
:UMBREON => [:PURSUIT],
:FORRETRESS => [:MIRRORSHOT, :AUTOTOMIZE],
:MAGCARGO => [:SHELLSMASH],
:PILOSWINE => [:FURYATTACK],
:OCTILLERY => [:OCTOZOOKA],
:HITMONTOP => [:ROLLINGKICK],
# Gen III
:GROVYLE => [:FURYCUTTER],
:SCEPTILE => [:DUALCHOP],
:COMBUSKEN => [:DOUBLEKICK],
:BLAZIKEN => [:BLAZEKICK],
:MARSHTOMP => [:MUDSHOT],
:MIGHTYENA => [:SNARL],
:SILCOON => [:HARDEN],
:BEAUTIFLY => [:GUST],
:CASCOON => [:HARDEN],
:DUSTOX => [:GUST],
:LOMBRE => [:RAZORLEAF],
:PELIPPER => [:PROECT],
:SLACKING => [:SWAGGER],
:NINJASK => [:DOUBLETEAM, :SCREECH, :FURYCUTTER],
:LOUDRED => [:BITE],
:EXPLOUD => [:CRUNCH],
:SWALOT => [:BODYSLAM],
:SHARPEDO => [:SLASH],
:CAMERUPT => [:ROCKSLIDE],
:GRUMPIG => [:TEETERDANCE],
:VIBRAVA => [:DRAGONBREATH],
:FLYGON => [:DRAGONCLAW],
:CACTURNE => [:SPIKYSHIELD],
:ALTARIA => [:DRAGONBREATH],
:WHISCASH => [:THRASH],
:CRAWDAUNT => [:SWIFT],
:CLAYDOL => [:HYPERBEAM],
:MILOTIC => [:WATERPULSE],
:DUSCLOPS => [:SHADOWPUNCH],
:GLALIE => [:FREEZEDRY],
:SEALEO => [:SWAGGER],
:WALREIN => [:ICEFANG],
:SHELLGON => [:PROTECT],
:SALAMENCE => [:FLY],
:METANG => [:CONFUSION, :METALCLAW],
:METAGROSS => [:HAMMERARM],
# Gen IV
:TORTERRA => [:EARTHQUAKE],
:MONFERNO => [:MACHPUNCH],
:INFERNAPE => [:CLOSECOMBAT],
:PRINPLUP => [:METALCLAW],
:EMPOLEON => [:AQUAJET],
:STARAPTOR => [:CLOSECOMBAT],
:BIBAREL => [:WATERGUN],
:KRICKETUNE => [:FURYCUTTER],
:RAMPARDOS => [:ENDEAVOR],
:BASTIODON => [:BLOCK],
:WORMADAM => [:QUIVERDANCE],
:MOTHIM => [:QUIVERDANCE],
:VESPIQUEN => [:SLASH],
:CHERRIM => [:PETALDANCE],
:LOPUNNY => [:RETURN],
:PURUGLY => [:SWAGGER],
:SKUNTANK => [:FLAMETHROWER],
:BRONZONG => [:BLOCK],
:GABITE => [:DUALCHOP],
:GARCHOMP => [:CRUNCH],
:LUCARIO => [:AURASPHERE],
:MAGNEZONE => [:TRIATTACK],
:LEAFEON => [:RAZORLEAF],
:GLACEON => [:ICYWIND],
:GALLADE => [:SLASH],
:FROSLASS => [:OMINOUSWIND],
# Gen V
:PIGNITE => [:ARMTHRUST],
:SAMUROTT => [:SLASH],
:WATCHOG => [:CONFUSERAY],
:GIGALITH => [:POWERGEM],
:EXCADRILL => [:HORNDRILL],
:SEISMITOAD => [:ACID],
:SWADLOON => [:PROTECT],
:LEAVANY => [:SLASH],
:WHIRLIPEDE => [:IRONDEFENSE],
:SCOLIPEDE => [:BATONPASS],
:DARMANITAN => [:HAMMERARM],
:COFAGRIGUS => [:SCARYFACE],
:ZOROARK => [:NIGHTSLASH],
:REUNICLUS => [:DIZZYPUNCH],
:SAWSBUCK => [:HORNLEECH],
:GALVANTULA => [:STICKYWEB],
:FERROTHORN => [:POWERWHIP],
:KINKLANG => [:MAGNETICFLUX],
:ELEKTROSS => [:CRUNCH],
:BEARTIC => [:ICICLECRASH],
:GOLURK => [:HEAVYSLAM],
:BRAVIARY => [:SUPERPOWER],
:MANDIBUZZ => [:BONERUSH],
:VOLCARONA => [:QUIVERDANCE],
# Gen VI
:QULLADIN => [:HEEDLEARM],
:CHESNAUGHT => [:SPIKYSHIELD],
:DELPHOX => [:MYSTICALFIRE],
:GRENINJA => [:WATERSHURKIN],
:FLETCHINDER => [:EMBER],
:SPEWPA => [:PROTECT],
:VIVILLON => [:GUST],
:GOGOAT => [:AERIALACE],
:PANGORO => [:BULLETPUNCH],
:DRAGALGE => [:TWISTER],
:CLAWITZER => [:AURASPHERE],
:TYRANTRUM => [:ROCKSLIDE],
:AURORUS => [:FREEEDRY],
:SYLVEON => [:FAIRYWIND],
:GOODRA => [:AQUATAIL],
:TREVENANT => [:SHADOWCLAW],
:AVALUGG => [:BODYSLAM],
# Gen VII
:DECIDUEYE => [:SPIRITSHACKLE],
:INCINEROAR => [:DARKESTLARIAT],
:PRIMERINA => [:SPARKLINGARIA],
:TOUCANNON => [:BEAKBLAST],
:CHARJABUG => [:CHARGE],
:VIKAVOLT => [:THUNDERBOLT],
:CRABOMINABLE => [:ICEPUNCH],
:RIBOMBEE => [:POLLENPUFF],
:LYCANROC => [:ACCELEROCK],
:TOXAPEX => [:BANEFULBUNKER],
:LURANTIS => [:PETALBLIZZARD],
:SALAZZLE => [:CAPTIVATE],
:BEWEAR => [:BIND],
:STEENEE => [:DOUBLESLAP],
:TSAREENA => [:TROPKICK],
:GOLISOPOD => [:FIRSTIMPRESSION],
:SILVALLY => [:MULTIATTACK],
:HAKAMOO => [:SKYUPPERCUT],
:KOMMOO => [:CLANGINGSCALES],
:COSMOEM => [:COSMICPOWER],
:SOLGALEO => [:SUNSTEELSTRIKE],
:LUNALA => [:MOONGEISTBEAM],
}
# This class stores data on each Pokemon. Refer to $Trainer.party for an array
# of each Pokemon in the Trainer's current party.
class PokeBattle_Pokemon
attr_accessor(:evolving) # Current Total HP
alias initializeEvolutionMoves initialize
def initialize(species,level,player=nil,withMoves=true)
initializeEvolutionMoves(species,level,player,withMoves)
@evolving=false
end
################################################################################
# Moves #
################################################################################
# Returns if the Pokémon is evolving.
def evolving
return @evolving
end
# Returns a list of moves learned upon evolving, with the current level as the
# learn level
def getEvolutionMoves
name=getConstantName(PBSpecies,@species).to_sym
if EVOLUTIONMOVES[name] && @evolving
movelist = []
EVOLUTIONMOVES[name].each do |move|
movelist.push([level,getID(PBMoves,move)])
end
return movelist
else
return []
end
end
# Returns the list of moves this Pokémon can learn by levelling up.
alias getMoveListEvolutionMoves getMoveList
def getMoveList
return getEvolutionMoves + getMoveListEvolutionMoves
end
end
class PokemonEvolutionScene
# Opens the evolution screen
alias pbEvolutionEvolutionMoves pbEvolution
def pbEvolution(cancancel=true)
@pokemon.evolving = true
pbEvolutionEvolutionMoves(cancancel)
@pokemon.evolving = false
end
end