De una página encontré scripts de la habilidad Disfraz de Mimikyu , pero esta noto que sale un error cuando recibes daño , además no cambia de forma pero no recibe daño al primer ataque y eso va si recibe de un ataque de multi golpe (ya sea recurrente , carámbano , osea que recibe todos esos golpes y después se activa la habilidad) Aquí les dejo la habilidad y el autor de esa habilidad es James Davy
En PBEffects creen una línea para disfraz (algo así)
Disguise = 112
Después pones esto en PokeBattle_Battler, def pbInitEffects
@effects[PBEffects:isguise] = false
# Disguise causes the ability-suppressing effect to fade
# if it was passed on through Baton Pass
if isConst?(self.ability,PBAbilities,ISGUISE)
@effects[PBEffects::GastroAcid] = false
end
Esto tiene que estar encima de este script
if isConst?(self.ability,PBAbilities,:ILLUSION) #Illusion
party=@battle.pbParty(@index)
party=party.find_all {|item| item && !item.egg? && item.hp>0 }
if party[party.length-1] != @pokemon
@effects[PBEffects::Illusion] = party[party.length-1]
else
@effects[PBEffects::Illusion] = nil
end
else
@effects[PBEffects::Illusion] = nil
end #Illusion
En PokeBattle_Battler, def pbCheckForm pones esto debajo de Zen Mode
#Mimikyu
isConst?(self.species,PBSpecies,:MIMIKYU) && if self.hasWorkingAbilityDISGUISE) &&
!self.isFainted?
if self.form!=1
self.form=1
self.type1=getID(PBTypes,:GHOST)
self.type2=getID(PBTypes,:FAIRY)
end
end
En PokeBattle_Battler, def pbAbilitiesOnSwitchIn pones esto
if self.hasWorkingAbilityDISGUISE) && onactive
@effects[PBEffects:isguise]=true
end
Tiene que estar debajo de
if self.hasWorkingAbilityAIRLOCK) ||
self.hasWorkingAbilityCLOUDNINE)
@battle.pbDisplay(_INTL("{1} has {2}!",pbThis,PBAbilities.getName(self.ability)))
@battle.pbDisplay(_INTL("The effects of the weather disappeared."))
end
end
En PokeBattle_Move, def pbReduceHPDamage ingresa este código
if opponent.effects[PBEffects:isguise] && !attacker.hasBypassingAbility()
@battle.pbDisplayEffect(opponent)
@battle.pbDisplay(_INTL("Its disguise served it as a decoy!"))
opponent.effects[PBEffects:isguise]=false
opponent.form=1
opponent.pbCheckForm
@battle.pbDisplay(_INTL("{1}'s disguise was busted!"))
damage=0
end
Este último tiene que estar debajo de
if opponent.effects[PBEffects::Substitute]>0 && (!attacker || attacker.index!=opponent.index) &&
!attacker.hasWorkingAbilityINFILTRATOR) && !isSoundBased?
PBDebug.log("[#{opponent.pbThis}'s substitute took the damage]")
damage=opponent.effects[PBEffects::Substitute] if damage>opponent.effects[PBEffects::Substitute]
opponent.effects[PBEffects::Substitute]-=damage
opponent.damagestate.substitute=true
@battle.scene.pbDamageAnimation(opponent,0)
@battle.pbDisplayPaused(_INTL("The substitute took damage for {1}!",opponent.name))
if opponent.effects[PBEffects::Substitute]<=0
opponent.effects[PBEffects::Substitute]=0
@battle.pbDisplayPaused(_INTL("{1}'s substitute faded!",opponent.name))
PBDebug.log("[#{opponent.pbThis}'s substitute faded]")
end
opponent.damagestate.hplost=damage
damage=0
else
opponent.damagestate.substitute=false
Si quieres buscar fácilmente digamos de donde debes de ponerlo pulsa los botones Ctrl + Shift + F
De todas formas ofrezco para todos esta habilidad , pero si alguien sabe una solución , quiero saberla por favor
En PBEffects creen una línea para disfraz (algo así)
Disguise = 112
Después pones esto en PokeBattle_Battler, def pbInitEffects
@effects[PBEffects:isguise] = false
# Disguise causes the ability-suppressing effect to fade
# if it was passed on through Baton Pass
if isConst?(self.ability,PBAbilities,ISGUISE)
@effects[PBEffects::GastroAcid] = false
end
Esto tiene que estar encima de este script
if isConst?(self.ability,PBAbilities,:ILLUSION) #Illusion
party=@battle.pbParty(@index)
party=party.find_all {|item| item && !item.egg? && item.hp>0 }
if party[party.length-1] != @pokemon
@effects[PBEffects::Illusion] = party[party.length-1]
else
@effects[PBEffects::Illusion] = nil
end
else
@effects[PBEffects::Illusion] = nil
end #Illusion
En PokeBattle_Battler, def pbCheckForm pones esto debajo de Zen Mode
#Mimikyu
isConst?(self.species,PBSpecies,:MIMIKYU) && if self.hasWorkingAbilityDISGUISE) &&
!self.isFainted?
if self.form!=1
self.form=1
self.type1=getID(PBTypes,:GHOST)
self.type2=getID(PBTypes,:FAIRY)
end
end
En PokeBattle_Battler, def pbAbilitiesOnSwitchIn pones esto
if self.hasWorkingAbilityDISGUISE) && onactive
@effects[PBEffects:isguise]=true
end
Tiene que estar debajo de
if self.hasWorkingAbilityAIRLOCK) ||
self.hasWorkingAbilityCLOUDNINE)
@battle.pbDisplay(_INTL("{1} has {2}!",pbThis,PBAbilities.getName(self.ability)))
@battle.pbDisplay(_INTL("The effects of the weather disappeared."))
end
end
En PokeBattle_Move, def pbReduceHPDamage ingresa este código
if opponent.effects[PBEffects:isguise] && !attacker.hasBypassingAbility()
@battle.pbDisplayEffect(opponent)
@battle.pbDisplay(_INTL("Its disguise served it as a decoy!"))
opponent.effects[PBEffects:isguise]=false
opponent.form=1
opponent.pbCheckForm
@battle.pbDisplay(_INTL("{1}'s disguise was busted!"))
damage=0
end
Este último tiene que estar debajo de
if opponent.effects[PBEffects::Substitute]>0 && (!attacker || attacker.index!=opponent.index) &&
!attacker.hasWorkingAbilityINFILTRATOR) && !isSoundBased?
PBDebug.log("[#{opponent.pbThis}'s substitute took the damage]")
damage=opponent.effects[PBEffects::Substitute] if damage>opponent.effects[PBEffects::Substitute]
opponent.effects[PBEffects::Substitute]-=damage
opponent.damagestate.substitute=true
@battle.scene.pbDamageAnimation(opponent,0)
@battle.pbDisplayPaused(_INTL("The substitute took damage for {1}!",opponent.name))
if opponent.effects[PBEffects::Substitute]<=0
opponent.effects[PBEffects::Substitute]=0
@battle.pbDisplayPaused(_INTL("{1}'s substitute faded!",opponent.name))
PBDebug.log("[#{opponent.pbThis}'s substitute faded]")
end
opponent.damagestate.hplost=damage
damage=0
else
opponent.damagestate.substitute=false
Si quieres buscar fácilmente digamos de donde debes de ponerlo pulsa los botones Ctrl + Shift + F
De todas formas ofrezco para todos esta habilidad , pero si alguien sabe una solución , quiero saberla por favor