Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #===============================================================================
- # Tidy Up
- #===============================================================================
- # Increases the user's Attack and Speed by 1 stage each.
- # Clears all entry hazards and substitutes on both sides.
- #-------------------------------------------------------------------------------
- class Battle::Move::RaiseUserAtkSpd1RemoveHazardsSubstitutes < Battle::Move::MultiStatUpMove
- def initialize(battle, move)
- super
- @statUp = [:ATTACK, 1, :SPEED, 1]
- end
- def pbMoveFailed?(user, targets)
- failed = true
- 2.times do |i|
- side = (i == 0) ? user.pbOwnSide : user.pbOpposingSide
- next unless side.effects[PBEffects::Spikes] > 0 ||
- side.effects[PBEffects::ToxicSpikes] > 0 ||
- side.effects[PBEffects::StealthRock] ||
- side.effects[PBEffects::StickyWeb] ||
- defined?(PBEffects::Steelsurge) && side.effects[PBEffects::Steelsurge]
- failed = false
- break
- end
- @battle.allBattlers.each do |b|
- next if b.effects[PBEffects::Substitute] == 0
- failed = false
- break
- end
- failed2 = true
- (@statUp.length / 2).times do |i|
- next if !user.pbCanRaiseStatStage?(@statUp[i * 2], user, self)
- failed2 = false
- break
- end
- if failed && failed2
- @battle.pbDisplay(_INTL("But it failed!", user.pbThis))
- return true
- end
- return false
- end
- def pbEffectGeneral(user)
- showMsg = false
- 2.times do |i|
- side = (i == 0) ? user.pbOwnSide : user.pbOpposingSide
- team = (i == 0) ? user.pbTeam(true) : user.pbOpposingTeam(true)
- if side.effects[PBEffects::StealthRock]
- side.effects[PBEffects::StealthRock] = false
- @battle.pbDisplay(_INTL("The pointed stones disappeared from around {1}!", team))
- showMsg = true
- end
- if defined?(PBEffects::Steelsurge) && side.effects[PBEffects::Steelsurge]
- side.effects[PBEffects::Steelsurge] = false
- @battle.pbDisplay(_INTL("The pointed steel disappeared from around {1}!", team))
- showMsg = true
- end
- if side.effects[PBEffects::Spikes] > 0
- side.effects[PBEffects::Spikes] = 0
- @battle.pbDisplay(_INTL("The spikes disappeared from the ground around {1}!", team))
- showMsg = true
- end
- if side.effects[PBEffects::ToxicSpikes] > 0
- side.effects[PBEffects::ToxicSpikes] = 0
- @battle.pbDisplay(_INTL("The poison spikes disappeared from the ground around {1}!", team))
- showMsg = true
- end
- if side.effects[PBEffects::StickyWeb]
- side.effects[PBEffects::StickyWeb] = false
- @battle.pbDisplay(_INTL("The sticky web has disappeared from the ground around {1}!", team))
- showMsg = true
- end
- end
- @battle.allBattlers.each do |b|
- next if b.effects[PBEffects::Substitute] == 0
- b.effects[PBEffects::Substitute] = 0
- showMsg = true
- end
- @battle.pbDisplay(_INTL("Tidying up complete!")) if showMsg
- super
- end
- end
- #===============================================================================
- # Mortal Spin
- #===============================================================================
- # Removes trapping moves, entry hazards and Leech Seed on user/user's side.
- # Poisons the target.
- #-------------------------------------------------------------------------------
- class Battle::Move::RemoveUserBindingAndEntryHazardsPoisonTarget < Battle::Move::PoisonTarget
- def pbEffectAfterAllHits(user, target)
- return if user.fainted? || target.damageState.unaffected
- if user.effects[PBEffects::Trapping] > 0
- trapMove = GameData::Move.get(user.effects[PBEffects::TrappingMove]).name
- trapUser = @battle.battlers[user.effects[PBEffects::TrappingUser]]
- @battle.pbDisplay(_INTL("{1} got free of {2}'s {3}!", user.pbThis, trapUser.pbThis(true), trapMove))
- user.effects[PBEffects::Trapping] = 0
- user.effects[PBEffects::TrappingMove] = nil
- user.effects[PBEffects::TrappingUser] = -1
- end
- if user.effects[PBEffects::LeechSeed] >= 0
- user.effects[PBEffects::LeechSeed] = -1
- @battle.pbDisplay(_INTL("{1} shed Leech Seed!", user.pbThis))
- end
- if user.pbOwnSide.effects[PBEffects::StealthRock]
- user.pbOwnSide.effects[PBEffects::StealthRock] = false
- @battle.pbDisplay(_INTL("{1} blew away stealth rocks!", user.pbThis))
- end
- if defined?(PBEffects::Steelsurge) && user.pbOwnSide.effects[PBEffects::Steelsurge]
- user.pbOwnSide.effects[PBEffects::Steelsurge] = false
- @battle.pbDisplay(_INTL("{1} blew away the pointed steel!", user.pbThis))
- end
- if user.pbOwnSide.effects[PBEffects::Spikes] > 0
- user.pbOwnSide.effects[PBEffects::Spikes] = 0
- @battle.pbDisplay(_INTL("{1} blew away spikes!", user.pbThis))
- end
- if user.pbOwnSide.effects[PBEffects::ToxicSpikes] > 0
- user.pbOwnSide.effects[PBEffects::ToxicSpikes] = 0
- @battle.pbDisplay(_INTL("{1} blew away poison spikes!", user.pbThis))
- end
- if user.pbOwnSide.effects[PBEffects::StickyWeb]
- user.pbOwnSide.effects[PBEffects::StickyWeb] = false
- @battle.pbDisplay(_INTL("{1} blew away sticky webs!", user.pbThis))
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement