mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-08 21:54:58 +00:00
Improved code for using multiples of an item at once, added a Setting for it, made it apply to more items
This commit is contained in:
@@ -167,6 +167,10 @@ module Settings
|
|||||||
# Whether Rare Candy can be used on a Pokémon that is already at its maximum
|
# Whether Rare Candy can be used on a Pokémon that is already at its maximum
|
||||||
# level if it is able to evolve by level-up (if so, triggers that evolution).
|
# level if it is able to evolve by level-up (if so, triggers that evolution).
|
||||||
RARE_CANDY_USABLE_AT_MAX_LEVEL = (MECHANICS_GENERATION >= 8)
|
RARE_CANDY_USABLE_AT_MAX_LEVEL = (MECHANICS_GENERATION >= 8)
|
||||||
|
# Whether the player can choose how many of an item to use at once on a
|
||||||
|
# Pokémon. This applies to Exp-changing items (Rare Candy, Exp Candies) and
|
||||||
|
# EV-changing items (vitamins, feathers, EV-lowering berries).
|
||||||
|
USE_MULTIPLE_STAT_ITEMS_AT_ONCE = (MECHANICS_GENERATION >= 8)
|
||||||
# Whether you get 1 Premier Ball for every 10 of any kind of Poké Ball bought
|
# Whether you get 1 Premier Ball for every 10 of any kind of Poké Ball bought
|
||||||
# at once (true), or 1 Premier Ball for buying 10+ Poké Balls (false).
|
# at once (true), or 1 Premier Ball for buying 10+ Poké Balls (false).
|
||||||
MORE_BONUS_PREMIER_BALLS = (MECHANICS_GENERATION >= 8)
|
MORE_BONUS_PREMIER_BALLS = (MECHANICS_GENERATION >= 8)
|
||||||
|
|||||||
@@ -2,15 +2,16 @@
|
|||||||
# ItemHandlers
|
# ItemHandlers
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
module ItemHandlers
|
module ItemHandlers
|
||||||
UseText = ItemHandlerHash.new
|
UseText = ItemHandlerHash.new
|
||||||
UseFromBag = ItemHandlerHash.new
|
UseFromBag = ItemHandlerHash.new
|
||||||
ConfirmUseInField = ItemHandlerHash.new
|
ConfirmUseInField = ItemHandlerHash.new
|
||||||
UseInField = ItemHandlerHash.new
|
UseInField = ItemHandlerHash.new
|
||||||
UseOnPokemon = ItemHandlerHash.new
|
UseOnPokemon = ItemHandlerHash.new
|
||||||
CanUseInBattle = ItemHandlerHash.new
|
UseOnPokemonMaximum = ItemHandlerHash.new
|
||||||
UseInBattle = ItemHandlerHash.new
|
CanUseInBattle = ItemHandlerHash.new
|
||||||
BattleUseOnBattler = ItemHandlerHash.new
|
UseInBattle = ItemHandlerHash.new
|
||||||
BattleUseOnPokemon = ItemHandlerHash.new
|
BattleUseOnBattler = ItemHandlerHash.new
|
||||||
|
BattleUseOnPokemon = ItemHandlerHash.new
|
||||||
|
|
||||||
def self.hasUseText(item)
|
def self.hasUseText(item)
|
||||||
return UseText[item]!=nil
|
return UseText[item]!=nil
|
||||||
@@ -28,6 +29,10 @@ module ItemHandlers
|
|||||||
return UseOnPokemon[item]!=nil
|
return UseOnPokemon[item]!=nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.hasUseOnPokemonMaximum(item)
|
||||||
|
return UseOnPokemonMaximum[item] != nil
|
||||||
|
end
|
||||||
|
|
||||||
def self.hasUseInBattle(item)
|
def self.hasUseInBattle(item)
|
||||||
return UseInBattle[item]!=nil
|
return UseInBattle[item]!=nil
|
||||||
end
|
end
|
||||||
@@ -74,9 +79,16 @@ module ItemHandlers
|
|||||||
end
|
end
|
||||||
|
|
||||||
# Returns whether item was used
|
# Returns whether item was used
|
||||||
def self.triggerUseOnPokemon(item,pkmn,scene)
|
def self.triggerUseOnPokemon(item, qty, pkmn, scene)
|
||||||
return false if !UseOnPokemon[item]
|
return false if !UseOnPokemon[item]
|
||||||
return UseOnPokemon.trigger(item,pkmn,scene)
|
return UseOnPokemon.trigger(item, qty, pkmn, scene)
|
||||||
|
end
|
||||||
|
|
||||||
|
# Returns the maximum number of the item that can be used on the Pokémon at once.
|
||||||
|
def self.triggerUseOnPokemonMaximum(item, pkmn)
|
||||||
|
return 1 if !UseOnPokemonMaximum[item]
|
||||||
|
return 1 if !Settings::USE_MULTIPLE_STAT_ITEMS_AT_ONCE
|
||||||
|
return [UseOnPokemonMaximum.trigger(item, pkmn), 1].max
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.triggerCanUseInBattle(item,pkmn,battler,move,firstAction,battle,scene,showMessages=true)
|
def self.triggerCanUseInBattle(item,pkmn,battler,move,firstAction,battle,scene,showMessages=true)
|
||||||
@@ -126,6 +138,7 @@ def pbChangeLevel(pkmn, new_level, scene)
|
|||||||
end
|
end
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
old_level = pkmn.level
|
||||||
old_total_hp = pkmn.totalhp
|
old_total_hp = pkmn.totalhp
|
||||||
old_attack = pkmn.attack
|
old_attack = pkmn.attack
|
||||||
old_defense = pkmn.defense
|
old_defense = pkmn.defense
|
||||||
@@ -174,7 +187,7 @@ def pbChangeLevel(pkmn, new_level, scene)
|
|||||||
# Learn new moves upon level up
|
# Learn new moves upon level up
|
||||||
movelist = pkmn.getMoveList
|
movelist = pkmn.getMoveList
|
||||||
for i in movelist
|
for i in movelist
|
||||||
next if i[0] != pkmn.level
|
next if i[0] <= old_level || i[0] > pkmn.level
|
||||||
pbLearnMove(pkmn, i[1], true) { scene.pbUpdate }
|
pbLearnMove(pkmn, i[1], true) { scene.pbUpdate }
|
||||||
end
|
end
|
||||||
# Check for evolution
|
# Check for evolution
|
||||||
@@ -300,6 +313,20 @@ def pbChangeExp(pkmn, new_exp, scene)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def pbGainExpFromExpCandy(pkmn, base_amt, qty, scene)
|
||||||
|
if pkmn.level >= GameData::GrowthRate.max_level || pkmn.shadowPokemon?
|
||||||
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
scene.scene.pbSetHelpText("") if scene.is_a?(PokemonPartyScreen)
|
||||||
|
if qty > 1
|
||||||
|
(qty - 1).times { pkmn.changeHappiness("vitamin") }
|
||||||
|
end
|
||||||
|
pbChangeExp(pkmn, pkmn.exp + base_amt * qty, scene)
|
||||||
|
scene.pbHardRefresh
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
# Restore HP
|
# Restore HP
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
@@ -387,7 +414,56 @@ def pbRaiseEffortValues(pkmn, stat, evGain = 10, no_ev_cap = false)
|
|||||||
return evGain
|
return evGain
|
||||||
end
|
end
|
||||||
|
|
||||||
def pbRaiseHappinessAndLowerEV(pkmn,scene,stat,messages)
|
def pbMaxUsesOfEVRaisingItem(stat, amt_per_use, pkmn, no_ev_cap = false)
|
||||||
|
max_per_stat = (no_ev_cap) ? Pokemon::EV_STAT_LIMIT : 100
|
||||||
|
amt_can_gain = max_per_stat - pkmn.ev[stat]
|
||||||
|
ev_total = 0
|
||||||
|
GameData::Stat.each_main { |s| ev_total += pkmn.ev[s.id] }
|
||||||
|
amt_can_gain = [amt_can_gain, Pokemon::EV_LIMIT - ev_total].min
|
||||||
|
return [(amt_can_gain.to_f / amt_per_use).ceil, 1].max
|
||||||
|
end
|
||||||
|
|
||||||
|
def pbUseEVRaisingItem(stat, amt_per_use, qty, pkmn, happiness_type, scene, no_ev_cap = false)
|
||||||
|
ret = true
|
||||||
|
qty.times do |i|
|
||||||
|
if pbRaiseEffortValues(pkmn, stat, amt_per_use, no_ev_cap) > 0
|
||||||
|
pkmn.changeHappiness(happiness_type)
|
||||||
|
else
|
||||||
|
ret = false if i == 0
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if !ret
|
||||||
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
scene.pbRefresh
|
||||||
|
scene.pbDisplay(_INTL("{1}'s {2} increased.", pkmn.name, GameData::Stat.get(stat).name))
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
|
||||||
|
def pbMaxUsesOfEVLoweringBerry(stat, pkmn)
|
||||||
|
ret = (pkmn.ev[stat].to_f / 10).ceil
|
||||||
|
happiness = pkmn.happiness
|
||||||
|
uses = 0
|
||||||
|
if happiness < 255
|
||||||
|
bonus_per_use = 0
|
||||||
|
bonus_per_use += 1 if pkmn.obtain_map == $game_map.map_id
|
||||||
|
bonus_per_use += 1 if pkmn.poke_ball == :LUXURYBALL
|
||||||
|
has_soothe_bell = pkmn.hasItem?(:SOOTHEBELL)
|
||||||
|
loop do
|
||||||
|
uses += 1
|
||||||
|
gain = [10, 5, 2][happiness / 100]
|
||||||
|
gain += bonus_per_use
|
||||||
|
gain = (gain * 1.5).floor if has_soothe_bell
|
||||||
|
happiness += gain
|
||||||
|
break if happiness >= 255
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return [ret, uses].max
|
||||||
|
end
|
||||||
|
|
||||||
|
def pbRaiseHappinessAndLowerEV(pkmn, scene, stat, qty, messages)
|
||||||
h = pkmn.happiness<255
|
h = pkmn.happiness<255
|
||||||
e = pkmn.ev[stat]>0
|
e = pkmn.ev[stat]>0
|
||||||
if !h && !e
|
if !h && !e
|
||||||
@@ -395,10 +471,10 @@ def pbRaiseHappinessAndLowerEV(pkmn,scene,stat,messages)
|
|||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
if h
|
if h
|
||||||
pkmn.changeHappiness("evberry")
|
qty.times { |i| pkmn.changeHappiness("evberry") }
|
||||||
end
|
end
|
||||||
if e
|
if e
|
||||||
pkmn.ev[stat] -= 10
|
pkmn.ev[stat] -= 10 * qty
|
||||||
pkmn.ev[stat] = 0 if pkmn.ev[stat]<0
|
pkmn.ev[stat] = 0 if pkmn.ev[stat]<0
|
||||||
pkmn.calc_stats
|
pkmn.calc_stats
|
||||||
end
|
end
|
||||||
@@ -609,12 +685,21 @@ def pbUseItem(bag,item,bagscene=nil)
|
|||||||
break
|
break
|
||||||
end
|
end
|
||||||
pkmn = $player.party[chosen]
|
pkmn = $player.party[chosen]
|
||||||
if pbCheckUseOnPokemon(item,pkmn,screen)
|
next if !pbCheckUseOnPokemon(item, pkmn, screen)
|
||||||
ret = ItemHandlers.triggerUseOnPokemon(item,pkmn,screen)
|
qty = 1
|
||||||
|
max_at_once = ItemHandlers.triggerUseOnPokemonMaximum(item, pkmn)
|
||||||
|
max_at_once = [max_at_once, $bag.quantity(item)].min
|
||||||
|
if max_at_once > 1
|
||||||
|
qty = screen.scene.pbChooseNumber(
|
||||||
|
_INTL("How many {1} do you want to use?", GameData::Item.get(item).name), max_at_once)
|
||||||
|
screen.scene.pbSetHelpText("") if screen.is_a?(PokemonPartyScreen)
|
||||||
|
end
|
||||||
|
if qty >= 1
|
||||||
|
ret = ItemHandlers.triggerUseOnPokemon(item, qty, pkmn, screen)
|
||||||
if ret && itm.consumed_after_use?
|
if ret && itm.consumed_after_use?
|
||||||
bag.remove(item)
|
bag.remove(item, qty)
|
||||||
if !bag.has?(item)
|
if !bag.has?(item)
|
||||||
pbMessage(_INTL("You used your last {1}.",itm.name)) { screen.pbUpdate }
|
pbMessage(_INTL("You used your last {1}.", itm.name)) { screen.pbUpdate }
|
||||||
break
|
break
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -662,11 +747,20 @@ def pbUseItemOnPokemon(item,pkmn,scene)
|
|||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
# Other item
|
# Other item
|
||||||
ret = ItemHandlers.triggerUseOnPokemon(item,pkmn,scene)
|
qty = 1
|
||||||
|
max_at_once = ItemHandlers.triggerUseOnPokemonMaximum(item, pkmn)
|
||||||
|
max_at_once = [max_at_once, $bag.quantity(item)].min
|
||||||
|
if max_at_once > 1
|
||||||
|
qty = scene.scene.pbChooseNumber(
|
||||||
|
_INTL("How many {1} do you want to use?", itm.name), max_at_once)
|
||||||
|
scene.scene.pbSetHelpText("") if scene.is_a?(PokemonPartyScreen)
|
||||||
|
end
|
||||||
|
return false if qty <= 0
|
||||||
|
ret = ItemHandlers.triggerUseOnPokemon(item, qty, pkmn, scene)
|
||||||
scene.pbClearAnnotations
|
scene.pbClearAnnotations
|
||||||
scene.pbHardRefresh
|
scene.pbHardRefresh
|
||||||
if ret && itm.consumed_after_use?
|
if ret && itm.consumed_after_use?
|
||||||
$bag.remove(item)
|
$bag.remove(item, qty)
|
||||||
if !$bag.has?(item)
|
if !$bag.has?(item)
|
||||||
pbMessage(_INTL("You used your last {1}.",itm.name)) { scene.pbUpdate }
|
pbMessage(_INTL("You used your last {1}.",itm.name)) { scene.pbUpdate }
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -346,7 +346,7 @@ ItemHandlers::UseInField.add(:EXPALLOFF,proc { |item|
|
|||||||
# Applies to all items defined as an evolution stone.
|
# Applies to all items defined as an evolution stone.
|
||||||
# No need to add more code for new ones.
|
# No need to add more code for new ones.
|
||||||
ItemHandlers::UseOnPokemon.addIf(proc { |item| GameData::Item.get(item).is_evolution_stone? },
|
ItemHandlers::UseOnPokemon.addIf(proc { |item| GameData::Item.get(item).is_evolution_stone? },
|
||||||
proc { |item,pkmn,scene|
|
proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.shadowPokemon?
|
if pkmn.shadowPokemon?
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -370,50 +370,50 @@ ItemHandlers::UseOnPokemon.addIf(proc { |item| GameData::Item.get(item).is_evolu
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:POTION,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:POTION,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn,20,scene)
|
next pbHPItem(pkmn,20,scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:POTION,:BERRYJUICE,:SWEETHEART)
|
ItemHandlers::UseOnPokemon.copy(:POTION,:BERRYJUICE,:SWEETHEART)
|
||||||
ItemHandlers::UseOnPokemon.copy(:POTION,:RAGECANDYBAR) if !Settings::RAGE_CANDY_BAR_CURES_STATUS_PROBLEMS
|
ItemHandlers::UseOnPokemon.copy(:POTION,:RAGECANDYBAR) if !Settings::RAGE_CANDY_BAR_CURES_STATUS_PROBLEMS
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:SUPERPOTION,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:SUPERPOTION,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 60 : 50, scene)
|
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 60 : 50, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:HYPERPOTION,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:HYPERPOTION,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 120 : 200, scene)
|
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 120 : 200, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:MAXPOTION,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:MAXPOTION,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn,pkmn.totalhp-pkmn.hp,scene)
|
next pbHPItem(pkmn,pkmn.totalhp-pkmn.hp,scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:FRESHWATER,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:FRESHWATER,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 30 : 50, scene)
|
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 30 : 50, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:SODAPOP,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:SODAPOP,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 50 : 60, scene)
|
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 50 : 60, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:LEMONADE,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:LEMONADE,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 70 : 80, scene)
|
next pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 70 : 80, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:MOOMOOMILK,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:MOOMOOMILK,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn,100,scene)
|
next pbHPItem(pkmn,100,scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ORANBERRY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:ORANBERRY,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn,10,scene)
|
next pbHPItem(pkmn,10,scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:SITRUSBERRY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:SITRUSBERRY,proc { |item, qty, pkmn, scene|
|
||||||
next pbHPItem(pkmn,pkmn.totalhp/4,scene)
|
next pbHPItem(pkmn,pkmn.totalhp/4,scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:AWAKENING,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:AWAKENING,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.fainted? || pkmn.status != :SLEEP
|
if pkmn.fainted? || pkmn.status != :SLEEP
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -426,7 +426,7 @@ ItemHandlers::UseOnPokemon.add(:AWAKENING,proc { |item,pkmn,scene|
|
|||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:AWAKENING,:CHESTOBERRY,:BLUEFLUTE,:POKEFLUTE)
|
ItemHandlers::UseOnPokemon.copy(:AWAKENING,:CHESTOBERRY,:BLUEFLUTE,:POKEFLUTE)
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ANTIDOTE,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:ANTIDOTE,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.fainted? || pkmn.status != :POISON
|
if pkmn.fainted? || pkmn.status != :POISON
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -439,7 +439,7 @@ ItemHandlers::UseOnPokemon.add(:ANTIDOTE,proc { |item,pkmn,scene|
|
|||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:ANTIDOTE,:PECHABERRY)
|
ItemHandlers::UseOnPokemon.copy(:ANTIDOTE,:PECHABERRY)
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:BURNHEAL,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:BURNHEAL,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.fainted? || pkmn.status != :BURN
|
if pkmn.fainted? || pkmn.status != :BURN
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -452,7 +452,7 @@ ItemHandlers::UseOnPokemon.add(:BURNHEAL,proc { |item,pkmn,scene|
|
|||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:BURNHEAL,:RAWSTBERRY)
|
ItemHandlers::UseOnPokemon.copy(:BURNHEAL,:RAWSTBERRY)
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:PARALYZEHEAL,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:PARALYZEHEAL,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.fainted? || pkmn.status != :PARALYSIS
|
if pkmn.fainted? || pkmn.status != :PARALYSIS
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -465,7 +465,7 @@ ItemHandlers::UseOnPokemon.add(:PARALYZEHEAL,proc { |item,pkmn,scene|
|
|||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:PARALYZEHEAL,:PARLYZHEAL,:CHERIBERRY)
|
ItemHandlers::UseOnPokemon.copy(:PARALYZEHEAL,:PARLYZHEAL,:CHERIBERRY)
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ICEHEAL,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:ICEHEAL,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.fainted? || pkmn.status != :FROZEN
|
if pkmn.fainted? || pkmn.status != :FROZEN
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -478,7 +478,7 @@ ItemHandlers::UseOnPokemon.add(:ICEHEAL,proc { |item,pkmn,scene|
|
|||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:ICEHEAL,:ASPEARBERRY)
|
ItemHandlers::UseOnPokemon.copy(:ICEHEAL,:ASPEARBERRY)
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:FULLHEAL,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:FULLHEAL,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.fainted? || pkmn.status == :NONE
|
if pkmn.fainted? || pkmn.status == :NONE
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -494,7 +494,7 @@ ItemHandlers::UseOnPokemon.copy(:FULLHEAL,
|
|||||||
:BIGMALASADA,:PEWTERCRUNCHIES,:LUMBERRY)
|
:BIGMALASADA,:PEWTERCRUNCHIES,:LUMBERRY)
|
||||||
ItemHandlers::UseOnPokemon.copy(:FULLHEAL,:RAGECANDYBAR) if Settings::RAGE_CANDY_BAR_CURES_STATUS_PROBLEMS
|
ItemHandlers::UseOnPokemon.copy(:FULLHEAL,:RAGECANDYBAR) if Settings::RAGE_CANDY_BAR_CURES_STATUS_PROBLEMS
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:FULLRESTORE,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:FULLRESTORE,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.fainted? || (pkmn.hp==pkmn.totalhp && pkmn.status == :NONE)
|
if pkmn.fainted? || (pkmn.hp==pkmn.totalhp && pkmn.status == :NONE)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -510,7 +510,7 @@ ItemHandlers::UseOnPokemon.add(:FULLRESTORE,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:REVIVE,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:REVIVE,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.fainted?
|
if !pkmn.fainted?
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -523,7 +523,7 @@ ItemHandlers::UseOnPokemon.add(:REVIVE,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:MAXREVIVE,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:MAXREVIVE,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.fainted?
|
if !pkmn.fainted?
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -537,7 +537,7 @@ ItemHandlers::UseOnPokemon.add(:MAXREVIVE,proc { |item,pkmn,scene|
|
|||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:MAXREVIVE, :MAXHONEY)
|
ItemHandlers::UseOnPokemon.copy(:MAXREVIVE, :MAXHONEY)
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ENERGYPOWDER,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:ENERGYPOWDER,proc { |item, qty, pkmn, scene|
|
||||||
if pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 60 : 50, scene)
|
if pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 60 : 50, scene)
|
||||||
pkmn.changeHappiness("powder")
|
pkmn.changeHappiness("powder")
|
||||||
next true
|
next true
|
||||||
@@ -545,7 +545,7 @@ ItemHandlers::UseOnPokemon.add(:ENERGYPOWDER,proc { |item,pkmn,scene|
|
|||||||
next false
|
next false
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ENERGYROOT,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:ENERGYROOT,proc { |item, qty, pkmn, scene|
|
||||||
if pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 120 : 200, scene)
|
if pbHPItem(pkmn, (Settings::REBALANCED_HEALING_ITEM_AMOUNTS) ? 120 : 200, scene)
|
||||||
pkmn.changeHappiness("energyroot")
|
pkmn.changeHappiness("energyroot")
|
||||||
next true
|
next true
|
||||||
@@ -553,7 +553,7 @@ ItemHandlers::UseOnPokemon.add(:ENERGYROOT,proc { |item,pkmn,scene|
|
|||||||
next false
|
next false
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:HEALPOWDER,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:HEALPOWDER,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.fainted? || pkmn.status == :NONE
|
if pkmn.fainted? || pkmn.status == :NONE
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -565,7 +565,7 @@ ItemHandlers::UseOnPokemon.add(:HEALPOWDER,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:REVIVALHERB,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:REVIVALHERB,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.fainted?
|
if !pkmn.fainted?
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -578,7 +578,7 @@ ItemHandlers::UseOnPokemon.add(:REVIVALHERB,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ETHER,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:ETHER,proc { |item, qty, pkmn, scene|
|
||||||
move = scene.pbChooseMove(pkmn,_INTL("Restore which move?"))
|
move = scene.pbChooseMove(pkmn,_INTL("Restore which move?"))
|
||||||
next false if move<0
|
next false if move<0
|
||||||
if pbRestorePP(pkmn,move,10)==0
|
if pbRestorePP(pkmn,move,10)==0
|
||||||
@@ -591,7 +591,7 @@ ItemHandlers::UseOnPokemon.add(:ETHER,proc { |item,pkmn,scene|
|
|||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:ETHER,:LEPPABERRY)
|
ItemHandlers::UseOnPokemon.copy(:ETHER,:LEPPABERRY)
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:MAXETHER,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:MAXETHER,proc { |item, qty, pkmn, scene|
|
||||||
move = scene.pbChooseMove(pkmn,_INTL("Restore which move?"))
|
move = scene.pbChooseMove(pkmn,_INTL("Restore which move?"))
|
||||||
next false if move<0
|
next false if move<0
|
||||||
if pbRestorePP(pkmn,move,pkmn.moves[move].total_pp-pkmn.moves[move].pp)==0
|
if pbRestorePP(pkmn,move,pkmn.moves[move].total_pp-pkmn.moves[move].pp)==0
|
||||||
@@ -602,7 +602,7 @@ ItemHandlers::UseOnPokemon.add(:MAXETHER,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ELIXIR,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:ELIXIR,proc { |item, qty, pkmn, scene|
|
||||||
pprestored = 0
|
pprestored = 0
|
||||||
for i in 0...pkmn.moves.length
|
for i in 0...pkmn.moves.length
|
||||||
pprestored += pbRestorePP(pkmn,i,10)
|
pprestored += pbRestorePP(pkmn,i,10)
|
||||||
@@ -615,7 +615,7 @@ ItemHandlers::UseOnPokemon.add(:ELIXIR,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:MAXELIXIR,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:MAXELIXIR,proc { |item, qty, pkmn, scene|
|
||||||
pprestored = 0
|
pprestored = 0
|
||||||
for i in 0...pkmn.moves.length
|
for i in 0...pkmn.moves.length
|
||||||
pprestored += pbRestorePP(pkmn,i,pkmn.moves[i].total_pp-pkmn.moves[i].pp)
|
pprestored += pbRestorePP(pkmn,i,pkmn.moves[i].total_pp-pkmn.moves[i].pp)
|
||||||
@@ -628,7 +628,7 @@ ItemHandlers::UseOnPokemon.add(:MAXELIXIR,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:PPUP,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:PPUP,proc { |item, qty, pkmn, scene|
|
||||||
move = scene.pbChooseMove(pkmn,_INTL("Boost PP of which move?"))
|
move = scene.pbChooseMove(pkmn,_INTL("Boost PP of which move?"))
|
||||||
if move>=0
|
if move>=0
|
||||||
if pkmn.moves[move].total_pp<=1 || pkmn.moves[move].ppup>=3
|
if pkmn.moves[move].total_pp<=1 || pkmn.moves[move].ppup>=3
|
||||||
@@ -643,7 +643,7 @@ ItemHandlers::UseOnPokemon.add(:PPUP,proc { |item,pkmn,scene|
|
|||||||
next false
|
next false
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:PPMAX,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:PPMAX,proc { |item, qty, pkmn, scene|
|
||||||
move = scene.pbChooseMove(pkmn,_INTL("Boost PP of which move?"))
|
move = scene.pbChooseMove(pkmn,_INTL("Boost PP of which move?"))
|
||||||
if move>=0
|
if move>=0
|
||||||
if pkmn.moves[move].total_pp<=1 || pkmn.moves[move].ppup>=3
|
if pkmn.moves[move].total_pp<=1 || pkmn.moves[move].ppup>=3
|
||||||
@@ -658,225 +658,215 @@ ItemHandlers::UseOnPokemon.add(:PPMAX,proc { |item,pkmn,scene|
|
|||||||
next false
|
next false
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:HPUP,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:HPUP, proc { |item, pkmn|
|
||||||
if pbRaiseEffortValues(pkmn, :HP, 10, Settings::NO_VITAMIN_EV_CAP) == 0
|
next pbMaxUsesOfEVRaisingItem(:HP, 10, pkmn, Settings::NO_VITAMIN_EV_CAP)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbRefresh
|
|
||||||
scene.pbDisplay(_INTL("{1}'s HP increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("vitamin")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:PROTEIN,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:HPUP,proc { |item, qty, pkmn, scene|
|
||||||
if pbRaiseEffortValues(pkmn, :ATTACK, 10, Settings::NO_VITAMIN_EV_CAP) == 0
|
next pbUseEVRaisingItem(:HP, 10, qty, pkmn, "vitamin", scene, Settings::NO_VITAMIN_EV_CAP)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Attack increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("vitamin")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:IRON,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:PROTEIN, proc { |item, pkmn|
|
||||||
if pbRaiseEffortValues(pkmn, :DEFENSE, 10, Settings::NO_VITAMIN_EV_CAP) == 0
|
next pbMaxUsesOfEVRaisingItem(:ATTACK, 10, pkmn, Settings::NO_VITAMIN_EV_CAP)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Defense increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("vitamin")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:CALCIUM,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:PROTEIN,proc { |item, qty, pkmn, scene|
|
||||||
if pbRaiseEffortValues(pkmn, :SPECIAL_ATTACK, 10, Settings::NO_VITAMIN_EV_CAP) == 0
|
next pbUseEVRaisingItem(:ATTACK, 10, qty, pkmn, "vitamin", scene, Settings::NO_VITAMIN_EV_CAP)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Special Attack increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("vitamin")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ZINC,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:IRON, proc { |item, pkmn|
|
||||||
if pbRaiseEffortValues(pkmn, :SPECIAL_DEFENSE, 10, Settings::NO_VITAMIN_EV_CAP) == 0
|
next pbMaxUsesOfEVRaisingItem(:DEFENSE, 10, pkmn, Settings::NO_VITAMIN_EV_CAP)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Special Defense increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("vitamin")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:CARBOS,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:IRON,proc { |item, qty, pkmn, scene|
|
||||||
if pbRaiseEffortValues(pkmn, :SPEED, 10, Settings::NO_VITAMIN_EV_CAP) == 0
|
next pbUseEVRaisingItem(:DEFENSE, 10, qty, pkmn, "vitamin", scene, Settings::NO_VITAMIN_EV_CAP)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Speed increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("vitamin")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:HEALTHFEATHER,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:CALCIUM, proc { |item, pkmn|
|
||||||
if pbRaiseEffortValues(pkmn,:HP,1,false)==0
|
next pbMaxUsesOfEVRaisingItem(:SPECIAL_ATTACK, 10, pkmn, Settings::NO_VITAMIN_EV_CAP)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbRefresh
|
|
||||||
scene.pbDisplay(_INTL("{1}'s HP increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("wing")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:HEALTHFEATHER,:HEALTHWING)
|
ItemHandlers::UseOnPokemon.add(:CALCIUM,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:SPECIAL_ATTACK, 10, qty, pkmn, "vitamin", scene, Settings::NO_VITAMIN_EV_CAP)
|
||||||
ItemHandlers::UseOnPokemon.add(:MUSCLEFEATHER,proc { |item,pkmn,scene|
|
|
||||||
if pbRaiseEffortValues(pkmn,:ATTACK,1,false)==0
|
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Attack increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("wing")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:MUSCLEFEATHER,:MUSCLEWING)
|
ItemHandlers::UseOnPokemonMaximum.add(:ZINC, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVRaisingItem(:SPECIAL_DEFENSE, 10, pkmn, Settings::NO_VITAMIN_EV_CAP)
|
||||||
ItemHandlers::UseOnPokemon.add(:RESISTFEATHER,proc { |item,pkmn,scene|
|
|
||||||
if pbRaiseEffortValues(pkmn,:DEFENSE,1,false)==0
|
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Defense increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("wing")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:RESISTFEATHER,:RESISTWING)
|
ItemHandlers::UseOnPokemon.add(:ZINC,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:SPECIAL_DEFENSE, 10, qty, pkmn, "vitamin", scene, Settings::NO_VITAMIN_EV_CAP)
|
||||||
ItemHandlers::UseOnPokemon.add(:GENIUSFEATHER,proc { |item,pkmn,scene|
|
|
||||||
if pbRaiseEffortValues(pkmn,:SPECIAL_ATTACK,1,false)==0
|
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Special Attack increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("wing")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:GENIUSFEATHER,:GENIUSWING)
|
ItemHandlers::UseOnPokemonMaximum.add(:CARBOS, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVRaisingItem(:SPEED, 10, pkmn, Settings::NO_VITAMIN_EV_CAP)
|
||||||
ItemHandlers::UseOnPokemon.add(:CLEVERFEATHER,proc { |item,pkmn,scene|
|
|
||||||
if pbRaiseEffortValues(pkmn,:SPECIAL_DEFENSE,1,false)==0
|
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Special Defense increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("wing")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:CLEVERFEATHER,:CLEVERWING)
|
ItemHandlers::UseOnPokemon.add(:CARBOS,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:SPEED, 10, qty, pkmn, "vitamin", scene, Settings::NO_VITAMIN_EV_CAP)
|
||||||
ItemHandlers::UseOnPokemon.add(:SWIFTFEATHER,proc { |item,pkmn,scene|
|
|
||||||
if pbRaiseEffortValues(pkmn,:SPEED,1,false)==0
|
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
scene.pbDisplay(_INTL("{1}'s Speed increased.",pkmn.name))
|
|
||||||
pkmn.changeHappiness("wing")
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.copy(:SWIFTFEATHER,:SWIFTWING)
|
ItemHandlers::UseOnPokemonMaximum.add(:HEALTHFEATHER, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVRaisingItem(:HP, 1, pkmn, true)
|
||||||
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:LONELYMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemonMaximum.copy(:HEALTHFEATHER, :HEALTHWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:HEALTHFEATHER,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:HP, 1, qty, pkmn, "wing", scene, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.copy(:HEALTHFEATHER, :HEALTHWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.add(:MUSCLEFEATHER, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVRaisingItem(:ATTACK, 1, pkmn, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.copy(:MUSCLEFEATHER, :MUSCLEWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:MUSCLEFEATHER,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:ATTACK, 1, qty, pkmn, "wing", scene, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.copy(:MUSCLEFEATHER, :MUSCLEWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.add(:RESISTFEATHER, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVRaisingItem(:DEFENSE, 1, pkmn, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.copy(:RESISTFEATHER, :RESISTWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:RESISTFEATHER,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:DEFENSE, 1, qty, pkmn, "wing", scene, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.copy(:RESISTFEATHER, :RESISTWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.add(:GENIUSFEATHER, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVRaisingItem(:SPECIAL_ATTACK, 1, pkmn, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.copy(:GENIUSFEATHER, :GENIUSWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:GENIUSFEATHER,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:SPECIAL_ATTACK, 1, qty, pkmn, "wing", scene, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.copy(:GENIUSFEATHER, :GENIUSWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.add(:CLEVERFEATHER, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVRaisingItem(:SPECIAL_DEFENSE, 1, pkmn, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.copy(:CLEVERFEATHER, :CLEVERWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:CLEVERFEATHER,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:SPECIAL_DEFENSE, 1, qty, pkmn, "wing", scene, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.copy(:CLEVERFEATHER, :CLEVERWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.add(:SWIFTFEATHER, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVRaisingItem(:SPEED, 1, pkmn, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.copy(:SWIFTFEATHER, :SWIFTWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:SWIFTFEATHER,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbUseEVRaisingItem(:SPEED, 1, qty, pkmn, "wing", scene, true)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.copy(:SWIFTFEATHER, :SWIFTWING)
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:LONELYMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:LONELY, item, pkmn, scene)
|
pbNatureChangingMint(:LONELY, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ADAMANTMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:ADAMANTMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:ADAMANT, item, pkmn, scene)
|
pbNatureChangingMint(:ADAMANT, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:NAUGHTYMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:NAUGHTYMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:NAUGHTY, item, pkmn, scene)
|
pbNatureChangingMint(:NAUGHTY, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:BRAVEMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:BRAVEMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:BRAVE, item, pkmn, scene)
|
pbNatureChangingMint(:BRAVE, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:BOLDMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:BOLDMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:BOLD, item, pkmn, scene)
|
pbNatureChangingMint(:BOLD, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:IMPISHMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:IMPISHMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:IMPISH, item, pkmn, scene)
|
pbNatureChangingMint(:IMPISH, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:LAXMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:LAXMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:LAX, item, pkmn, scene)
|
pbNatureChangingMint(:LAX, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:RELAXEDMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:RELAXEDMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:RELAXED, item, pkmn, scene)
|
pbNatureChangingMint(:RELAXED, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:MODESTMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:MODESTMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:MODEST, item, pkmn, scene)
|
pbNatureChangingMint(:MODEST, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:MILDMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:MILDMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:MILD, item, pkmn, scene)
|
pbNatureChangingMint(:MILD, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:RASHMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:RASHMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:RASH, item, pkmn, scene)
|
pbNatureChangingMint(:RASH, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:QUIETMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:QUIETMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:QUIET, item, pkmn, scene)
|
pbNatureChangingMint(:QUIET, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:CALMMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:CALMMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:CALM, item, pkmn, scene)
|
pbNatureChangingMint(:CALM, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:GENTLEMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:GENTLEMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:GENTLE, item, pkmn, scene)
|
pbNatureChangingMint(:GENTLE, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:CAREFULMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:CAREFULMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:CAREFUL, item, pkmn, scene)
|
pbNatureChangingMint(:CAREFUL, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:SASSYMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:SASSYMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:SASSY, item, pkmn, scene)
|
pbNatureChangingMint(:SASSY, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:TIMIDMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:TIMIDMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:TIMID, item, pkmn, scene)
|
pbNatureChangingMint(:TIMID, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:HASTYMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:HASTYMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:HASTY, item, pkmn, scene)
|
pbNatureChangingMint(:HASTY, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:JOLLYMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:JOLLYMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:JOLLY, item, pkmn, scene)
|
pbNatureChangingMint(:JOLLY, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:NAIVEMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:NAIVEMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:NAIVE, item, pkmn, scene)
|
pbNatureChangingMint(:NAIVE, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:SERIOUSMINT, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:SERIOUSMINT, proc { |item, qty, pkmn, scene|
|
||||||
pbNatureChangingMint(:SERIOUS, item, pkmn, scene)
|
pbNatureChangingMint(:SERIOUS, item, pkmn, scene)
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:RARECANDY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:RARECANDY, proc { |item, pkmn|
|
||||||
|
next GameData::GrowthRate.max_level - pkmn.level
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:RARECANDY,proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.shadowPokemon?
|
if pkmn.shadowPokemon?
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
next false
|
next false
|
||||||
@@ -898,165 +888,129 @@ ItemHandlers::UseOnPokemon.add(:RARECANDY,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
end
|
end
|
||||||
# Level up
|
# Level up
|
||||||
pbChangeLevel(pkmn,pkmn.level + 1, scene)
|
pbChangeLevel(pkmn,pkmn.level + qty, scene)
|
||||||
scene.pbHardRefresh
|
scene.pbHardRefresh
|
||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:EXPCANDYXS, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:EXPCANDYXS, proc { |item, pkmn|
|
||||||
if pkmn.level >= GameData::GrowthRate.max_level || pkmn.shadowPokemon?
|
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
|
||||||
next false
|
|
||||||
end
|
|
||||||
gain_amount = 100
|
gain_amount = 100
|
||||||
maximum = ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
next ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
||||||
maximum = [maximum, $bag.quantity(item)].min
|
|
||||||
qty = scene.scene.pbChooseNumber(
|
|
||||||
_INTL("How many {1} do you want to use?", GameData::Item.get(item).name), maximum)
|
|
||||||
next false if qty == 0
|
|
||||||
scene.scene.pbSetHelpText("") if scene.is_a?(PokemonPartyScreen)
|
|
||||||
if qty > 1
|
|
||||||
(qty - 1).times { pkmn.changeHappiness("vitamin") }
|
|
||||||
end
|
|
||||||
pbChangeExp(pkmn, pkmn.exp + gain_amount * qty, scene)
|
|
||||||
$bag.remove(item, qty - 1)
|
|
||||||
scene.pbHardRefresh
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:EXPCANDYS, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:EXPCANDYXS, proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.level >= GameData::GrowthRate.max_level || pkmn.shadowPokemon?
|
next pbGainExpFromExpCandy(pkmn, 100, qty, scene)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
})
|
||||||
next false
|
|
||||||
end
|
ItemHandlers::UseOnPokemonMaximum.add(:EXPCANDYS, proc { |item, pkmn|
|
||||||
gain_amount = 800
|
gain_amount = 800
|
||||||
maximum = ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
next ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
||||||
maximum = [maximum, $bag.quantity(item)].min
|
|
||||||
qty = scene.scene.pbChooseNumber(
|
|
||||||
_INTL("How many {1} do you want to use?", GameData::Item.get(item).name), maximum)
|
|
||||||
next false if qty == 0
|
|
||||||
scene.scene.pbSetHelpText("") if scene.is_a?(PokemonPartyScreen)
|
|
||||||
if qty > 1
|
|
||||||
(qty - 1).times { pkmn.changeHappiness("vitamin") }
|
|
||||||
end
|
|
||||||
pbChangeExp(pkmn, pkmn.exp + gain_amount * qty, scene)
|
|
||||||
$bag.remove(item, qty - 1)
|
|
||||||
scene.pbHardRefresh
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:EXPCANDYM, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:EXPCANDYS, proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.level >= GameData::GrowthRate.max_level || pkmn.shadowPokemon?
|
next pbGainExpFromExpCandy(pkmn, 800, qty, scene)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
})
|
||||||
next false
|
|
||||||
end
|
ItemHandlers::UseOnPokemonMaximum.add(:EXPCANDYM, proc { |item, pkmn|
|
||||||
gain_amount = 3_000
|
gain_amount = 3_000
|
||||||
maximum = ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
next ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
||||||
maximum = [maximum, $bag.quantity(item)].min
|
|
||||||
qty = scene.scene.pbChooseNumber(
|
|
||||||
_INTL("How many {1} do you want to use?", GameData::Item.get(item).name), maximum)
|
|
||||||
next false if qty == 0
|
|
||||||
scene.scene.pbSetHelpText("") if scene.is_a?(PokemonPartyScreen)
|
|
||||||
if qty > 1
|
|
||||||
(qty - 1).times { pkmn.changeHappiness("vitamin") }
|
|
||||||
end
|
|
||||||
pbChangeExp(pkmn, pkmn.exp + gain_amount * qty, scene)
|
|
||||||
$bag.remove(item, qty - 1)
|
|
||||||
scene.pbHardRefresh
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:EXPCANDYL, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:EXPCANDYM, proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.level >= GameData::GrowthRate.max_level || pkmn.shadowPokemon?
|
next pbGainExpFromExpCandy(pkmn, 3_000, qty, scene)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
})
|
||||||
next false
|
|
||||||
end
|
ItemHandlers::UseOnPokemonMaximum.add(:EXPCANDYL, proc { |item, pkmn|
|
||||||
gain_amount = 10_000
|
gain_amount = 10_000
|
||||||
maximum = ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
next ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
||||||
maximum = [maximum, $bag.quantity(item)].min
|
|
||||||
qty = scene.scene.pbChooseNumber(
|
|
||||||
_INTL("How many {1} do you want to use?", GameData::Item.get(item).name), maximum)
|
|
||||||
next false if qty == 0
|
|
||||||
scene.scene.pbSetHelpText("") if scene.is_a?(PokemonPartyScreen)
|
|
||||||
if qty > 1
|
|
||||||
(qty - 1).times { pkmn.changeHappiness("vitamin") }
|
|
||||||
end
|
|
||||||
pbChangeExp(pkmn, pkmn.exp + gain_amount * qty, scene)
|
|
||||||
$bag.remove(item, qty - 1)
|
|
||||||
scene.pbHardRefresh
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:EXPCANDYXL, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:EXPCANDYL, proc { |item, qty, pkmn, scene|
|
||||||
if pkmn.level >= GameData::GrowthRate.max_level || pkmn.shadowPokemon?
|
next pbGainExpFromExpCandy(pkmn, 10_000, qty, scene)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
})
|
||||||
next false
|
|
||||||
end
|
ItemHandlers::UseOnPokemonMaximum.add(:EXPCANDYXL, proc { |item, pkmn|
|
||||||
gain_amount = 30_000
|
gain_amount = 30_000
|
||||||
maximum = ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
next ((pkmn.growth_rate.maximum_exp - pkmn.exp) / gain_amount.to_f).ceil
|
||||||
maximum = [maximum, $bag.quantity(item)].min
|
|
||||||
qty = scene.scene.pbChooseNumber(
|
|
||||||
_INTL("How many {1} do you want to use?", GameData::Item.get(item).name), maximum)
|
|
||||||
next false if qty == 0
|
|
||||||
scene.scene.pbSetHelpText("") if scene.is_a?(PokemonPartyScreen)
|
|
||||||
if qty > 1
|
|
||||||
(qty - 1).times { pkmn.changeHappiness("vitamin") }
|
|
||||||
end
|
|
||||||
pbChangeExp(pkmn, pkmn.exp + gain_amount * qty, scene)
|
|
||||||
$bag.remove(item, qty - 1)
|
|
||||||
scene.pbHardRefresh
|
|
||||||
next true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:POMEGBERRY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:EXPCANDYXL, proc { |item, qty, pkmn, scene|
|
||||||
next pbRaiseHappinessAndLowerEV(pkmn,scene,:HP,[
|
next pbGainExpFromExpCandy(pkmn, 30_000, qty, scene)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemonMaximum.add(:POMEGBERRY, proc { |item, pkmn|
|
||||||
|
next pbMaxUsesOfEVLoweringBerry(:HP, pkmn)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:POMEGBERRY,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbRaiseHappinessAndLowerEV(pkmn, scene, :HP, qty, [
|
||||||
_INTL("{1} adores you! Its base HP fell!",pkmn.name),
|
_INTL("{1} adores you! Its base HP fell!",pkmn.name),
|
||||||
_INTL("{1} became more friendly. Its base HP can't go lower.",pkmn.name),
|
_INTL("{1} became more friendly. Its base HP can't go lower.",pkmn.name),
|
||||||
_INTL("{1} became more friendly. However, its base HP fell!",pkmn.name)
|
_INTL("{1} became more friendly. However, its base HP fell!",pkmn.name)
|
||||||
])
|
])
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:KELPSYBERRY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:KELPSYBERRY, proc { |item, pkmn|
|
||||||
next pbRaiseHappinessAndLowerEV(pkmn,scene,:ATTACK,[
|
next pbMaxUsesOfEVLoweringBerry(:ATTACK, pkmn)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:KELPSYBERRY,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbRaiseHappinessAndLowerEV(pkmn, scene, :ATTACK, qty, [
|
||||||
_INTL("{1} adores you! Its base Attack fell!",pkmn.name),
|
_INTL("{1} adores you! Its base Attack fell!",pkmn.name),
|
||||||
_INTL("{1} became more friendly. Its base Attack can't go lower.",pkmn.name),
|
_INTL("{1} became more friendly. Its base Attack can't go lower.",pkmn.name),
|
||||||
_INTL("{1} became more friendly. However, its base Attack fell!",pkmn.name)
|
_INTL("{1} became more friendly. However, its base Attack fell!",pkmn.name)
|
||||||
])
|
])
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:QUALOTBERRY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:QUALOTBERRY, proc { |item, pkmn|
|
||||||
next pbRaiseHappinessAndLowerEV(pkmn,scene,:DEFENSE,[
|
next pbMaxUsesOfEVLoweringBerry(:DEFENSE, pkmn)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:QUALOTBERRY,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbRaiseHappinessAndLowerEV(pkmn, scene, :DEFENSE, qty, [
|
||||||
_INTL("{1} adores you! Its base Defense fell!",pkmn.name),
|
_INTL("{1} adores you! Its base Defense fell!",pkmn.name),
|
||||||
_INTL("{1} became more friendly. Its base Defense can't go lower.",pkmn.name),
|
_INTL("{1} became more friendly. Its base Defense can't go lower.",pkmn.name),
|
||||||
_INTL("{1} became more friendly. However, its base Defense fell!",pkmn.name)
|
_INTL("{1} became more friendly. However, its base Defense fell!",pkmn.name)
|
||||||
])
|
])
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:HONDEWBERRY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:HONDEWBERRY, proc { |item, pkmn|
|
||||||
next pbRaiseHappinessAndLowerEV(pkmn,scene,:SPECIAL_ATTACK,[
|
next pbMaxUsesOfEVLoweringBerry(:SPECIAL_ATTACK, pkmn)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:HONDEWBERRY,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbRaiseHappinessAndLowerEV(pkmn, scene, :SPECIAL_ATTACK, qty, [
|
||||||
_INTL("{1} adores you! Its base Special Attack fell!",pkmn.name),
|
_INTL("{1} adores you! Its base Special Attack fell!",pkmn.name),
|
||||||
_INTL("{1} became more friendly. Its base Special Attack can't go lower.",pkmn.name),
|
_INTL("{1} became more friendly. Its base Special Attack can't go lower.",pkmn.name),
|
||||||
_INTL("{1} became more friendly. However, its base Special Attack fell!",pkmn.name)
|
_INTL("{1} became more friendly. However, its base Special Attack fell!",pkmn.name)
|
||||||
])
|
])
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:GREPABERRY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:GREPABERRY, proc { |item, pkmn|
|
||||||
next pbRaiseHappinessAndLowerEV(pkmn,scene,:SPECIAL_DEFENSE,[
|
next pbMaxUsesOfEVLoweringBerry(:SPECIAL_DEFENSE, pkmn)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:GREPABERRY,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbRaiseHappinessAndLowerEV(pkmn, scene, :SPECIAL_DEFENSE, qty, [
|
||||||
_INTL("{1} adores you! Its base Special Defense fell!",pkmn.name),
|
_INTL("{1} adores you! Its base Special Defense fell!",pkmn.name),
|
||||||
_INTL("{1} became more friendly. Its base Special Defense can't go lower.",pkmn.name),
|
_INTL("{1} became more friendly. Its base Special Defense can't go lower.",pkmn.name),
|
||||||
_INTL("{1} became more friendly. However, its base Special Defense fell!",pkmn.name)
|
_INTL("{1} became more friendly. However, its base Special Defense fell!",pkmn.name)
|
||||||
])
|
])
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:TAMATOBERRY,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemonMaximum.add(:TAMATOBERRY, proc { |item, pkmn|
|
||||||
next pbRaiseHappinessAndLowerEV(pkmn,scene,:SPEED,[
|
next pbMaxUsesOfEVLoweringBerry(:SPEED, pkmn)
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseOnPokemon.add(:TAMATOBERRY,proc { |item, qty, pkmn, scene|
|
||||||
|
next pbRaiseHappinessAndLowerEV(pkmn, scene, :SPEED, qty, [
|
||||||
_INTL("{1} adores you! Its base Speed fell!",pkmn.name),
|
_INTL("{1} adores you! Its base Speed fell!",pkmn.name),
|
||||||
_INTL("{1} became more friendly. Its base Speed can't go lower.",pkmn.name),
|
_INTL("{1} became more friendly. Its base Speed can't go lower.",pkmn.name),
|
||||||
_INTL("{1} became more friendly. However, its base Speed fell!",pkmn.name)
|
_INTL("{1} became more friendly. However, its base Speed fell!",pkmn.name)
|
||||||
])
|
])
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ABILITYCAPSULE,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:ABILITYCAPSULE,proc { |item, qty, pkmn, scene|
|
||||||
if scene.pbConfirm(_INTL("Do you want to change {1}'s Ability?", pkmn.name))
|
if scene.pbConfirm(_INTL("Do you want to change {1}'s Ability?", pkmn.name))
|
||||||
abils = pkmn.getAbilityList
|
abils = pkmn.getAbilityList
|
||||||
abil1 = nil
|
abil1 = nil
|
||||||
@@ -1080,7 +1034,7 @@ ItemHandlers::UseOnPokemon.add(:ABILITYCAPSULE,proc { |item,pkmn,scene|
|
|||||||
next false
|
next false
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ABILITYPATCH, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:ABILITYPATCH, proc { |item, qty, pkmn, scene|
|
||||||
if scene.pbConfirm(_INTL("Do you want to change {1}'s Ability?", pkmn.name))
|
if scene.pbConfirm(_INTL("Do you want to change {1}'s Ability?", pkmn.name))
|
||||||
abils = pkmn.getAbilityList
|
abils = pkmn.getAbilityList
|
||||||
new_ability_id = nil
|
new_ability_id = nil
|
||||||
@@ -1100,7 +1054,7 @@ ItemHandlers::UseOnPokemon.add(:ABILITYPATCH, proc { |item, pkmn, scene|
|
|||||||
next false
|
next false
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:GRACIDEA,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:GRACIDEA,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:SHAYMIN) || pkmn.form != 0 ||
|
if !pkmn.isSpecies?(:SHAYMIN) || pkmn.form != 0 ||
|
||||||
pkmn.status == :FROZEN || PBDayNight.isNight?
|
pkmn.status == :FROZEN || PBDayNight.isNight?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
@@ -1116,7 +1070,7 @@ ItemHandlers::UseOnPokemon.add(:GRACIDEA,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:REDNECTAR,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:REDNECTAR,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:ORICORIO) || pkmn.form==0
|
if !pkmn.isSpecies?(:ORICORIO) || pkmn.form==0
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1131,7 +1085,7 @@ ItemHandlers::UseOnPokemon.add(:REDNECTAR,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:YELLOWNECTAR,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:YELLOWNECTAR,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:ORICORIO) || pkmn.form==1
|
if !pkmn.isSpecies?(:ORICORIO) || pkmn.form==1
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1146,7 +1100,7 @@ ItemHandlers::UseOnPokemon.add(:YELLOWNECTAR,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:PINKNECTAR,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:PINKNECTAR,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:ORICORIO) || pkmn.form==2
|
if !pkmn.isSpecies?(:ORICORIO) || pkmn.form==2
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1161,7 +1115,7 @@ ItemHandlers::UseOnPokemon.add(:PINKNECTAR,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:PURPLENECTAR,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:PURPLENECTAR,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:ORICORIO) || pkmn.form==3
|
if !pkmn.isSpecies?(:ORICORIO) || pkmn.form==3
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1176,7 +1130,7 @@ ItemHandlers::UseOnPokemon.add(:PURPLENECTAR,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:REVEALGLASS,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:REVEALGLASS,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:TORNADUS) &&
|
if !pkmn.isSpecies?(:TORNADUS) &&
|
||||||
!pkmn.isSpecies?(:THUNDURUS) &&
|
!pkmn.isSpecies?(:THUNDURUS) &&
|
||||||
!pkmn.isSpecies?(:LANDORUS)
|
!pkmn.isSpecies?(:LANDORUS)
|
||||||
@@ -1194,7 +1148,7 @@ ItemHandlers::UseOnPokemon.add(:REVEALGLASS,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:PRISONBOTTLE,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:PRISONBOTTLE,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:HOOPA)
|
if !pkmn.isSpecies?(:HOOPA)
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1210,7 +1164,7 @@ ItemHandlers::UseOnPokemon.add(:PRISONBOTTLE,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ROTOMCATALOG, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:ROTOMCATALOG, proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:ROTOM)
|
if !pkmn.isSpecies?(:ROTOM)
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1242,7 +1196,7 @@ ItemHandlers::UseOnPokemon.add(:ROTOMCATALOG, proc { |item, pkmn, scene|
|
|||||||
next false
|
next false
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:ZYGARDECUBE, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:ZYGARDECUBE, proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:ZYGARDE)
|
if !pkmn.isSpecies?(:ZYGARDE)
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1270,7 +1224,7 @@ ItemHandlers::UseOnPokemon.add(:ZYGARDECUBE, proc { |item, pkmn, scene|
|
|||||||
next false
|
next false
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:DNASPLICERS,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:DNASPLICERS,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:KYUREM) || !pkmn.fused.nil?
|
if !pkmn.isSpecies?(:KYUREM) || !pkmn.fused.nil?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1308,7 +1262,7 @@ ItemHandlers::UseOnPokemon.add(:DNASPLICERS,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:DNASPLICERSUSED,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:DNASPLICERSUSED,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:KYUREM) || pkmn.fused.nil?
|
if !pkmn.isSpecies?(:KYUREM) || pkmn.fused.nil?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1330,7 +1284,7 @@ ItemHandlers::UseOnPokemon.add(:DNASPLICERSUSED,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:NSOLARIZER,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:NSOLARIZER,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:NECROZMA) || !pkmn.fused.nil?
|
if !pkmn.isSpecies?(:NECROZMA) || !pkmn.fused.nil?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1365,7 +1319,7 @@ ItemHandlers::UseOnPokemon.add(:NSOLARIZER,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:NSOLARIZERUSED,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:NSOLARIZERUSED,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:NECROZMA) || pkmn.form != 1 || pkmn.fused.nil?
|
if !pkmn.isSpecies?(:NECROZMA) || pkmn.form != 1 || pkmn.fused.nil?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1387,7 +1341,7 @@ ItemHandlers::UseOnPokemon.add(:NSOLARIZERUSED,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:NLUNARIZER,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:NLUNARIZER,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:NECROZMA) || !pkmn.fused.nil?
|
if !pkmn.isSpecies?(:NECROZMA) || !pkmn.fused.nil?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1422,7 +1376,7 @@ ItemHandlers::UseOnPokemon.add(:NLUNARIZER,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:NLUNARIZERUSED,proc { |item,pkmn,scene|
|
ItemHandlers::UseOnPokemon.add(:NLUNARIZERUSED,proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:NECROZMA) || pkmn.form != 2 || pkmn.fused.nil?
|
if !pkmn.isSpecies?(:NECROZMA) || pkmn.form != 2 || pkmn.fused.nil?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1444,7 +1398,7 @@ ItemHandlers::UseOnPokemon.add(:NLUNARIZERUSED,proc { |item,pkmn,scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:REINSOFUNITY, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:REINSOFUNITY, proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:CALYREX) || !pkmn.fused.nil?
|
if !pkmn.isSpecies?(:CALYREX) || !pkmn.fused.nil?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
@@ -1483,7 +1437,7 @@ ItemHandlers::UseOnPokemon.add(:REINSOFUNITY, proc { |item, pkmn, scene|
|
|||||||
next true
|
next true
|
||||||
})
|
})
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:REINSOFUNITYUSED, proc { |item, pkmn, scene|
|
ItemHandlers::UseOnPokemon.add(:REINSOFUNITYUSED, proc { |item, qty, pkmn, scene|
|
||||||
if !pkmn.isSpecies?(:CALYREX) || pkmn.fused.nil?
|
if !pkmn.isSpecies?(:CALYREX) || pkmn.fused.nil?
|
||||||
scene.pbDisplay(_INTL("It had no effect."))
|
scene.pbDisplay(_INTL("It had no effect."))
|
||||||
next false
|
next false
|
||||||
|
|||||||
Reference in New Issue
Block a user