Let's start to put Ultra Burst functional, like Mega Evolution!
First you need to insert Z-Move script:
https://www.pokecommunity.com/showthread.php?t=393813
After it, let's go!
SETTING SCRIPT
In 'Settings' script find and add the red line:
PokeBattle_Battler(WITH R) SCRIPT
PokeBattle_Battler(WITH R) add above 'hasPrimal?':
' def pbFaint(showMessage=true)' add the red line:
PokeBattle_Battle(WITHOUT R)
Now, in 'PokeBattle_Battle' find 'class PokeBattle_Battle' and add the red line
' def initialize(scene,p1,p2,player,opponent)' add the red line:
'def pbRegisterSwitch(idxPokemon,idxOther)', you know, the red line:
' def pbRegisterItem(idxPokemon,idxItem,idxTarget=nil)', red line:
Now, below Primal Revert battler, paste:
Find ' def pbCommandPhase' aaaaaand, you know, the red:
Then, below it, add (like to @megaEvolution yet):
Now, 'elsif cmd==3 # Run':
'elsif cmd==4 # Call':
'elsif cmd==-1 # Go back to first battler's choice'
Search to 'def pbAttackPhase' and add the red:
And into 'def pbEndOfBattle(canlose=false)' search to '# Pass on Pokérus within the party' and add:
PokeBattle_Scene
Find 'class FightMenuDisplay' and (you know, add):
Right below, in ' def initialize(battler,viewport=nil)' add:
Now, ' def refresh':
Below, in 'def update' add:
Then, 'class FightMenuButtons < BitmapSprite', ' def initialize(index=0,moves=nil,viewport=nil)' add:
So, 'def dispose':
Pay Attention, the red line:
Whats up? The red line:
Find and add:
Now, in ' def pbFightMenu(index)':
Same:
If you want to press U to trigger Ultra Burst, replace with that:
Pokemon_Forms SCRIPT
In 'class PokeBattle_Pokemon' add:
Also, below HOOPA script (or your last pokemon script), add a new, to NECROZMA:
PSystem_PokemonUtilities SCRIPT
Find 'def pbCheckMove(move)' and add above:
In 'PSystem_Controls' SCRIPT
Search to 'module Input' and ADD U button (if you want):
And add here too:
And, FINALLY:
Pokemon_MegaEvolution SCRIPT
Above 'Primal Reversion' script and inside 'class PokeBattle_Pokemon', add
Done!
Credits to: https://www.pokecommunity.com/showthread.php?t=393813
And credits for me to adapted the script :D
Credit me if you use the button
BONUS:
NEUROFORCE, PRISMARMOR, N-Lunarizer and N-Solarizer: https://www.pokecommunity.com/showpost.php?p=9934995&postcount=89
PHOTON GEYSER: https://www.pokecommunity.com/showpost.php?p=9941537&postcount=90
P.S: Necrozma will not revert to its original form if it faints in battle. Only after battle.
Im workin about that...
P.S: Now, Thanks Vendily, Necrozma SHALL revert to its original form if it faints in battle.
If you added all, just replace these red codes:
PokeBattle_Battler
Without "?" in 'makeUnUltra'
Pokemon_Forms
Pokemon_MegaEvolution
First you need to insert Z-Move script:
https://www.pokecommunity.com/showthread.php?t=393813
After it, let's go!
SETTING SCRIPT
Spoiler:
In 'Settings' script find and add the red line:
Code:
STARTING_OVER_SWITCH = 1
SEEN_POKERUS_SWITCH = 2
SHINY_WILD_POKEMON_SWITCH = 31
FATEFUL_ENCOUNTER_SWITCH = 32
NO_MONEY_LOSS = 33
NO_MEGA_EVOLUTION = 34
NO_Z_MOVE = 999 #Change this number to match your game
[COLOR="Red"]NO_ULTRA_BURST = 998 #Change this number to match your game[/COLOR]
PokeBattle_Battler(WITH R) SCRIPT
Spoiler:
PokeBattle_Battler(WITH R) add above 'hasPrimal?':
Spoiler:
Code:
def hasUltra?
return false if @effects[PBEffects::Transform]
if @pokemon
return (@pokemon.hasUltraForm? rescue false)
end
return false
end
def isUltra?
if @pokemon
return (@pokemon.isUltra? rescue false)
end
return false
end
' def pbFaint(showMessage=true)' add the red line:
Spoiler:
Code:
@pokemon.makeUnmega if self.isMega?
@pokemon.makeUnprimal if self.isPrimal?
@pokemon.revertOtherForms#
@pokemon.makeDisguised if self.isBusted?#
[COLOR="red"] @pokemon.makeUnUltra if self.isUltra?#[/COLOR]
PokeBattle_Battle(WITHOUT R)
Spoiler:
Now, in 'PokeBattle_Battle' find 'class PokeBattle_Battle' and add the red line
Spoiler:
Code:
attr_accessor(:megaEvolution) # Battle index of each trainer's Pokémon to Mega Evolve
[COLOR="red"] attr_accessor(:ultraBurst) # Battle index of each trainer's Pokémon to Ultra Burst
attr_accessor(:necrozmaVar) # Store the form Necrozma was in initially if it bursts[/COLOR]
attr_accessor(:amuletcoin) # Whether Amulet Coin's effect applies
' def initialize(scene,p1,p2,player,opponent)' add the red line:
Spoiler:
Code:
@megaEvolution = []
#
[COLOR="red"] @ultraBurst = []
@necrozmaVar = [-1,-1][/COLOR]
#
if @player.is_a?(Array)
@megaEvolution[0]=[-1]*@player.length
[COLOR="red"] @ultraBurst[0] =[-1]*@player.length[/COLOR]
else
@megaEvolution[0]=[-1]
[COLOR="red"] @ultraBurst[0]=[-1][/COLOR]
end
if @opponent.is_a?(Array)
@megaEvolution[1]=[-1]*@opponent.length
[COLOR="red"] @ultraBurst[1] =[-1]*@opponent.length[/COLOR]
else
@megaEvolution[1]=[-1]
[COLOR="red"] @ultraBurst[1] =[-1][/COLOR]
end
@zMove = []
if @player.is_a?(Array)
@zMove[0]=[-1]*@player.length
else
@zMove[0]=[-1]
end
if @opponent.is_a?(Array)
@zMove[1]=[-1]*@opponent.length
else
@zMove[1]=[-1]
end
'def pbRegisterSwitch(idxPokemon,idxOther)', you know, the red line:
Spoiler:
Code:
if @megaEvolution[side][owner]==idxPokemon
@megaEvolution[side][owner]=-1
end
[COLOR="red"] if @ultraBurst[side][owner]==idxPokemon
@ultraBurst[side][owner]=-1
end[/COLOR]
if @zMove[side][owner]==idxPokemon
@zMove[side][owner]=-1
end
' def pbRegisterItem(idxPokemon,idxItem,idxTarget=nil)', red line:
Spoiler:
Code:
@choices[idxPokemon][0]=3 # "Use an item"
@choices[idxPokemon][1]=idxItem # ID of item to be used
@choices[idxPokemon][2]=idxTarget # Index of Pokémon to use item on
side=(pbIsOpposing?(idxPokemon)) ? 1 : 0
owner=pbGetOwnerIndex(idxPokemon)
if @megaEvolution[side][owner]==idxPokemon
@megaEvolution[side][owner]=-1
end
[COLOR="red"] if @ultraBurst[side][owner]==idxPokemon
@ultraBurst[side][owner]=-1
end[/COLOR]
if @zMove[side][owner]==idxPokemon
@zMove[side][owner]=-1
end
Now, below Primal Revert battler, paste:
Spoiler:
Code:
################################################################################
# Ultra Burst battler.
################################################################################
def pbCanUltraBurst?(index)
return false if $game_switches[NO_ULTRA_BURST]
return false if !@battlers[index].hasUltra?
return false if pbIsOpposing?(index) && !@opponent
return true if $DEBUG && Input.press?(Input::CTRL)
return false if !pbHasZRing?(index)
side=(pbIsOpposing?(index)) ? 1 : 0
owner=pbGetOwnerIndex(index)
return false if @ultraBurst[side][owner]!=-1
return false if @battlers[index].effects[PBEffects::SkyDrop]
return true
end
def pbRegisterUltraBurst(index)
side=(pbIsOpposing?(index)) ? 1 : 0
owner=pbGetOwnerIndex(index)
@ultraBurst[side][owner]=index
end
def pbUltraBurst(index)
return if !@battlers[index] || !@battlers[index].pokemon
return if !(@battlers[index].hasUltra? rescue false)
return if (@battlers[index].isUltra? rescue true)
@necrozmaVar = [@battlers[index].pokemonIndex,@battlers[index].form]
ownername=pbGetOwner(index).fullname
ownername=pbGetOwner(index).name if pbBelongsToPlayer?(index)
pbDisplay(_INTL("Bright light is about to burst out of {1}!",@battlers[index].pbThis))
pbCommonAnimation("UltraBurst",@battlers[index],nil)
@battlers[index].pokemon.makeUltra
@battlers[index].form=@battlers[index].pokemon.form
@battlers[index].pbUpdate(true)
@scene.pbChangePokemon(@battlers[index],@battlers[index].pokemon)
pbCommonAnimation("UltraBurst2",@battlers[index],nil)
ultraname=(@battlers[index].pokemon.ultraName rescue nil)
if !ultraname || ultraname==""
ultraname=_INTL("Ultra {1}",PBSpecies.getName(@battlers[index].pokemon.species))
end
pbDisplay(_INTL("{1} regained its true power with Ultra Burst!",@battlers[index].pbThis))
PBDebug.log("[Ultra Burst] #{@battlers[index].pbThis} became #{ultraname}")
side=(pbIsOpposing?(index)) ? 1 : 0
owner=pbGetOwnerIndex(index)
@ultraBurst[side][owner]=-2
end
Find ' def pbCommandPhase' aaaaaand, you know, the red:
Spoiler:
Code:
# Reset choices to perform Mega Evolution,Z-Move and Ultra Burst if it wasn't done somehow
for i in 0...2
for j in 0...@megaEvolution[i].length
@megaEvolution[i][j]=-1 if @megaEvolution[i][j]>=0
end
end
[COLOR="red"] for i in 0...2
for j in 0...@ultraBurst[i].length
@ultraBurst[i][j]=-1 if @ultraBurst[i][j]>=0
end
end[/COLOR]
for i in 0...2
for j in 0...@zMove[i].length
@zMove[i][j]=-1 if @zMove[i][j]>=0
end
end
Then, below it, add (like to @megaEvolution yet):
Spoiler:
Code:
if @megaEvolution[side][owner]==i
@megaEvolution[side][owner]=-1
end
[COLOR="red"] if @ultraBurst[side][owner]==i
@ultraBurst[side][owner]=-1
end[/COLOR]
if @zMove[side][owner]==i
@zMove[side][owner]=-1
end
Now, 'elsif cmd==3 # Run':
Spoiler:
Code:
if @megaEvolution[side][owner]==i
@megaEvolution[side][owner]=-1
end
[COLOR="red"] if @ultraBurst[side][owner]==i
@ultraBurst[side][owner]=-1
end[/COLOR]
if @zMove[side][owner]==i
@zMove[side][owner]=-1
end
'elsif cmd==4 # Call':
Spoiler:
Code:
if @megaEvolution[side][owner]==i
@megaEvolution[side][owner]=-1
end
[COLOR="red"] if @ultraBurst[side][owner]==i
@ultraBurst[side][owner]=-1
end[/COLOR]
if @zMove[side][owner]==i
@zMove[side][owner]=-1
end
commandDone=true
'elsif cmd==-1 # Go back to first battler's choice'
Spoiler:
Code:
@megaEvolution[0][0]=-1 if @megaEvolution[0][0]>=0
@megaEvolution[1][0]=-1 if @megaEvolution[1][0]>=0
[COLOR="red"] @ultraBurst[0][0]=-1 if @ultraBurst[0][0]>=0
@ultraBurst[1][0]=-1 if @ultraBurst[1][0]>=0 [/COLOR]
@zMove[0][0]=-1 if @zMove[0][0]>=0
@zMove[1][0]=-1 if @zMove[1][0]>=0
# Restore the item the player's first Pokémon was due to use
Search to 'def pbAttackPhase' and add the red:
Spoiler:
Code:
# Mega Evolution
megaevolved=[]
for i in priority
if @choices[i.index][0]==1 && !i.effects[PBEffects::SkipTurn]
side=(pbIsOpposing?(i.index)) ? 1 : 0
owner=pbGetOwnerIndex(i.index)
if @megaEvolution[side][owner]==i.index
pbMegaEvolve(i.index)
megaevolved.push(i.index)
end
end
end
if megaevolved.length>0
for i in priority
i.pbAbilitiesOnSwitchIn(true) if megaevolved.include?(i.index)
end
end
[COLOR="red"]#
# Ultra Burst
ultrabursted=[]
for i in priority
if @choices[i.index][0]==1 && !i.effects[PBEffects::SkipTurn]
side=(pbIsOpposing?(i.index)) ? 1 : 0
owner=pbGetOwnerIndex(i.index)
if @ultraBurst[side][owner]==i.index
pbUltraBurst(i.index)
ultrabursted.push(i.index)
end
end
end
if ultrabursted.length>0
for i in priority
i.pbAbilitiesOnSwitchIn(true) if ultrabursted.include?(i.index)
end
end
#[/COLOR]
# Call at Pokémon
And into 'def pbEndOfBattle(canlose=false)' search to '# Pass on Pokérus within the party' and add:
Spoiler:
Code:
@scene.pbEndBattle(@decision)
for i in @battlers
i.pbResetForm
if i.hasWorkingAbility(:NATURALCURE)
i.status=0
end
end
[COLOR="red"]#
if @necrozmaVar[1]!=-1
$Trainer.party[@necrozmaVar[0]].form = @necrozmaVar[1]
end
#[/COLOR]
for i in $Trainer.party
i.setItem(i.itemInitial)
i.itemInitial=i.itemRecycle=0
i.belch=false
end
return @decision
end
end
PokeBattle_Scene
Spoiler:
Find 'class FightMenuDisplay' and (you know, add):
Spoiler:
Code:
attr_reader :battler
attr_reader :index
attr_accessor :megaButton
attr_accessor :zButton
[COLOR="Red"] attr_accessor :ultraButton [/COLOR]
Right below, in ' def initialize(battler,viewport=nil)' add:
Spoiler:
Code:
@buttons=nil
@battler=battler
@index=0
@megaButton=0 # 0=don't show, 1=show, 2=pressed
@zButton=0 # 0=don't show, 1=show, 2=pressed
[COLOR="red"] @ultraButton=0 # 0=don't show, 1=show, 2=pressed[/COLOR]
Now, ' def refresh':
Spoiler:
Code:
end
@buttons.refresh(self.index,@battler ? @battler.moves : nil,@megaButton,@zButton[COLOR="red"],@ultraButton[/COLOR]) if @buttons
end
Below, in 'def update' add:
Spoiler:
Code:
if @buttons
moves=@battler ? @battler.moves : nil
@buttons.update(self.index,moves,@megaButton,@zButton,[COLOR="red"]@ultraButton[/COLOR])
end
Then, 'class FightMenuButtons < BitmapSprite', ' def initialize(index=0,moves=nil,viewport=nil)' add:
Spoiler:
Code:
def initialize(index=0,moves=nil,viewport=nil)
super(Graphics.width,96+UPPERGAP,viewport)
self.x=0
self.y=Graphics.height-96-UPPERGAP
pbSetNarrowFont(self.bitmap)
@buttonbitmap=AnimatedBitmap.new("Graphics/Pictures/Battle/cursor_fight")
@typebitmap=AnimatedBitmap.new(_INTL("Graphics/Pictures/types"))
@megaevobitmap=AnimatedBitmap.new(_INTL("Graphics/Pictures/Battle/cursor_mega"))
@zmovebitmap=AnimatedBitmap.new(_INTL("Graphics/Pictures/Battle/cursor_zmove"))
[COLOR="Red"] @ultraburstbitmap=AnimatedBitmap.new(_INTL("Graphics/Pictures/Battle/cursor_ultra")) [/COLOR]
refresh(index,moves[COLOR="red"],0[/COLOR],0,0)
end
[B][COLOR="red"]#SEE WHERE YOU SAVE THE BUTTON, TO THE BATTLE FOLDER AND ADD ONE MORE ',0' in refresh (bellow '@ultraburstbitmap').[/COLOR][/B]
So, 'def dispose':
Spoiler:
Code:
def dispose
@buttonbitmap.dispose
@typebitmap.dispose
@megaevobitmap.dispose
[COLOR="red"] @ultraburstbitmap.dispose[/COLOR]
@zmovebitmap.dispose
super
end
Pay Attention, the red line:
Spoiler:
Code:
def update(index=0,moves=nil,megaButton=0,zButton=0,[COLOR="Red"]ultraButton=0[/COLOR])
refresh(index,moves,megaButton,zButton,[COLOR="red"]ultraButton[/COLOR])
end
Whats up? The red line:
Spoiler:
Code:
def refresh(index,moves,megaButton,zButton,[COLOR="red"]ultraButton[/COLOR])
return if !moves
self.bitmap.clear
textpos=[]
for i in 0...4
Find and add:
Spoiler:
Code:
pbDrawTextPositions(self.bitmap,textpos)
if megaButton>0
self.bitmap.blt(200,0,@megaevobitmap.bitmap,Rect.new(0,(megaButton-1)*46,96,46))
end
if zButton>0
self.bitmap.blt(200,0,@zmovebitmap.bitmap,Rect.new(0,(zButton-1)*46,96,46))
end
[COLOR="red"] if ultraButton>0
self.bitmap.blt(200,0,@ultraburstbitmap.bitmap,Rect.new(0,(ultraButton-1)*46,96,46))
end [/COLOR]
Now, in ' def pbFightMenu(index)':
Spoiler:
Code:
cw.megaButton=0
cw.megaButton=1 if (@battle.pbCanMegaEvolve?(index) && [email protected]?(index))
cw.zButton=0
cw.zButton=1 if @battle.pbCanZMove?(index)
[COLOR="red"] cw.ultraButton=0
cw.ultraButton=1 if @battle.pbCanUltraBurst?(index) [/COLOR]
Same:
Spoiler:
Code:
elsif Input.trigger?(Input::A) # Use Mega Evolution
if @battle.pbCanMegaEvolve?(index) && !pbIsZCrystal?(battler.item)
@battle.pbRegisterMegaEvolution(index)
cw.megaButton=2
pbPlayDecisionSE()
end
if @battle.pbCanZMove?(index) # Use Z Move
@battle.pbRegisterZMove(index)
cw.zButton=2
pbPlayDecisionSE()
end
[COLOR="red"] if @battle.pbCanUltraBurst?(index) # Use Ultra Burst
@battle.pbRegisterUltraBurst(index)
cw.ultraButton=2
pbPlayDecisionSE()
end[/COLOR]
If you want to press U to trigger Ultra Burst, replace with that:
Spoiler:
Code:
elsif Input.trigger?(Input::A) # Use Mega Evolution
if @battle.pbCanMegaEvolve?(index) && !pbIsZCrystal?(battler.item)
@battle.pbRegisterMegaEvolution(index)
cw.megaButton=2
pbPlayDecisionSE()
end
if @battle.pbCanZMove?(index) # Use Z Move
@battle.pbRegisterZMove(index)
cw.zButton=2
pbPlayDecisionSE()
end
[COLOR="Red"] elsif Input.trigger?(Input::U) # Use Ultra Burst
if @battle.pbCanUltraBurst?(index)
@battle.pbRegisterUltraBurst(index)
cw.ultraButton=2
pbPlayDecisionSE()
end[/COLOR]
Pokemon_Forms SCRIPT
Spoiler:
In 'class PokeBattle_Pokemon' add:
Spoiler:
Code:
def form=(value)
@form=value
MultipleForms.call("onSetForm",self,value)
self.calcStats
pbSeenForm(self)
end
[COLOR="Red"] def hasUltraForm?
v=MultipleForms.call("getUltraForm",self)
return v!=nil
end
def isUltra?
v=MultipleForms.call("getUltraForm",self)
return v!=nil && v==@form
end
def makeUltra
v=MultipleForms.call("getUltraForm",self)
if v!=nil
@startform=self.form
self.form=v
end
end
def ultraName
v=MultipleForms.call("getUltraName",self)
return v if v!=nil
return ""
end [/COLOR]
def formNoCall=(value)
@form=value
self.calcStats
end
Also, below HOOPA script (or your last pokemon script), add a new, to NECROZMA:
Spoiler:
Code:
MultipleForms.register(:NECROZMA,{
"getUltraForm"=>proc{|pokemon|
next 3 if isConst?(pokemon.item,PBItems,:ULTRANECROZIUMZ2) && pokemon.form!=0
next
},
"getUltraName"=>proc{|pokemon|
next _INTL("Ultra Necrozma") if pokemon.form==3
next
},
"onSetForm"=>proc{|pokemon,form|
pbSeenForm(pokemon)
moves=[
:CONFUSION, # Normal
:SUNSTEELSTRIKE, # Dusk Mane
:MOONGEISTBEAM, # Dawn Wings
]
if form!=3
moves.each{|move|
pbDeleteMoveByID(pokemon,getID(PBMoves,move))
}
pokemon.pbLearnMove(moves[form])
end
}
})
PSystem_PokemonUtilities SCRIPT
Find 'def pbCheckMove(move)' and add above:
Spoiler:
Code:
# Deletes the given move from the given Pokémon.
# DEPRECATED - Use pokemon.pbDeleteMove(move) instead
def pbDeleteMoveByID(pokemon,id)
return if !id || id==0 || !pokemon
newmoves=[]
for i in 0...4
newmoves.push(pokemon.moves[i]) if pokemon.moves[i].id!=id
end
newmoves.push(PBMove.new(0))
for i in 0...4
pokemon.moves[i]=newmoves[i]
end
end
In 'PSystem_Controls' SCRIPT
Spoiler:
Search to 'module Input' and ADD U button (if you want):
Code:
F7 = 27
F8 = 28
F9 = 29
[COLOR="red"] U = 30[/COLOR]
And add here too:
Spoiler:
Code:
def self.buttonToKey(button)
case button
when Input::DOWN; return [0x28] # Down
when Input::LEFT; return [0x25] # Left
when Input::RIGHT; return [0x27] # Right
when Input::UP; return [0x26] # Up
when Input::A; return [0x5A,0x57,0x59,0x10] # Z, W, Y, Shift
when Input::B; return [0x58,0x1B] # X, ESC
when Input::C; return [0x43,0x0D,0x20] # C, ENTER, Space
# when Input::X; return [0x41] # A
# when Input::Y; return [0x53] # S
# when Input::Z; return [0x44] # D
when Input::L; return [0x41,0x51,0x21] # A, Q, Page Up
when Input::R; return [0x53,0x22] # S, Page Down
when Input::SHIFT; return [0x10] # Shift
when Input::CTRL; return [0x11] # Ctrl
when Input::ALT; return [0x12] # Alt
when Input::F5; return [0x46,0x74,0x09] # F, F5, Tab
when Input::F6; return [0x75] # F6
when Input::F7; return [0x76] # F7
when Input::F8; return [0x77] # F8
when Input::F9; return [0x78] # F9
[COLOR="Red"] when Input::U; return [0x55] # U[/COLOR]
else; return []
end
end
And, FINALLY:
Pokemon_MegaEvolution SCRIPT
Above 'Primal Reversion' script and inside 'class PokeBattle_Pokemon', add
Spoiler:
Code:
def isUltra?
v=MultipleForms.call("getUltraForm",self)
return v!=nil && v==@form
end
def makeUnUltra
if isUltra?
return self.form = @startform
end
return false
end
Done!
Credits to: https://www.pokecommunity.com/showthread.php?t=393813
And credits for me to adapted the script :D
Credit me if you use the button
BONUS:
NEUROFORCE, PRISMARMOR, N-Lunarizer and N-Solarizer: https://www.pokecommunity.com/showpost.php?p=9934995&postcount=89
PHOTON GEYSER: https://www.pokecommunity.com/showpost.php?p=9941537&postcount=90
P.S: Necrozma will not revert to its original form if it faints in battle. Only after battle.
Im workin about that...
P.S: Now, Thanks Vendily, Necrozma SHALL revert to its original form if it faints in battle.
If you added all, just replace these red codes:
PokeBattle_Battler
Spoiler:
Code:
@pokemon.makeUnmega if self.isMega?
@pokemon.makeUnprimal if self.isPrimal?
@pokemon.revertOtherForms#
@pokemon.makeDisguised if self.isBusted?#
[COLOR="Red"] @pokemon.makeUnUltra if self.isUltra?#[/COLOR]
Pokemon_Forms
Spoiler:
Code:
def isUltra?
v=MultipleForms.call("getUltraForm",self)
return v!=nil && v==@form
end
[COLOR="red"] def makeUltra
v=MultipleForms.call("getUltraForm",self)
if v!=nil
@startform=self.form
self.form=v
end[/COLOR]
end
Pokemon_MegaEvolution
Spoiler:
Code:
[COLOR="red"] def isUltra?
v=MultipleForms.call("getUltraForm",self)
return v!=nil && v==@form
end[/COLOR]
def makeUnUltra
if isUltra?
return self.form = @startform
end
return false
end
Cya!
Attachments
Last edited: