mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2026-01-22 14:26:01 +00:00
Added checks that prevent aliasing a method if the alias method already exists, fixed Symbiosis not working properly for opponents
This commit is contained in:
@@ -236,7 +236,7 @@ class Battle::Battler
|
||||
return if fainted?
|
||||
return if self.item
|
||||
@battle.pbPriority(true).each do |b|
|
||||
next if b.opposes?
|
||||
next if b.opposes?(self)
|
||||
next if !b.hasActiveAbility?(:SYMBIOSIS)
|
||||
next if !b.item || b.unlosableItem?(b.item)
|
||||
next if unlosableItem?(b.item)
|
||||
|
||||
@@ -103,7 +103,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::RaiseUserEvasion1 # Double Team
|
||||
alias __clauses__pbMoveFailed? pbMoveFailed?
|
||||
unless method_defined?(:__clauses__pbMoveFailed?)
|
||||
alias __clauses__pbMoveFailed? pbMoveFailed?
|
||||
end
|
||||
|
||||
def pbMoveFailed?(user, targets)
|
||||
if !damagingMove? && @battle.rules["evasionclause"]
|
||||
@@ -117,7 +119,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::RaiseUserEvasion2MinimizeUser # Minimize
|
||||
alias __clauses__pbMoveFailed? pbMoveFailed?
|
||||
unless method_defined?(:__clauses__pbMoveFailed?)
|
||||
alias __clauses__pbMoveFailed? pbMoveFailed?
|
||||
end
|
||||
|
||||
def pbMoveFailed?(user, targets)
|
||||
if !damagingMove? && @battle.rules["evasionclause"]
|
||||
@@ -131,7 +135,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::UserTargetSwapAbilities # Skill Swap
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
unless method_defined?(:__clauses__pbFailsAgainstTarget?)
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
end
|
||||
|
||||
def pbFailsAgainstTarget?(user, target, show_message)
|
||||
if @battle.rules["skillswapclause"]
|
||||
@@ -145,7 +151,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::FixedDamage20 # Sonic Boom
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
unless method_defined?(:__clauses__pbFailsAgainstTarget?)
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
end
|
||||
|
||||
def pbFailsAgainstTarget?(user, target, show_message)
|
||||
if @battle.rules["sonicboomclause"]
|
||||
@@ -159,7 +167,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::FixedDamage40 # Dragon Rage
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
unless method_defined?(:__clauses__pbFailsAgainstTarget?)
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
end
|
||||
|
||||
def pbFailsAgainstTarget?(user, target, show_message)
|
||||
if @battle.rules["sonicboomclause"]
|
||||
@@ -173,7 +183,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::OHKO
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
unless method_defined?(:__clauses__pbFailsAgainstTarget?)
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
end
|
||||
|
||||
def pbFailsAgainstTarget?(user, target, show_message)
|
||||
if @battle.rules["ohkoclause"]
|
||||
@@ -187,7 +199,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::OHKOIce
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
unless method_defined?(:__clauses__pbFailsAgainstTarget?)
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
end
|
||||
|
||||
def pbFailsAgainstTarget?(user, target, show_message)
|
||||
if @battle.rules["ohkoclause"]
|
||||
@@ -201,7 +215,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::OHKOHitsUndergroundTarget
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
unless method_defined?(:__clauses__pbFailsAgainstTarget?)
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
end
|
||||
|
||||
def pbFailsAgainstTarget?(user, target, show_message)
|
||||
if @battle.rules["ohkoclause"]
|
||||
@@ -215,9 +231,8 @@ end
|
||||
|
||||
|
||||
class Battle::Move::UserFaintsExplosive # Self-Destruct
|
||||
unless @__clauses__aliased
|
||||
unless method_defined?(:__clauses__pbMoveFailed?)
|
||||
alias __clauses__pbMoveFailed? pbMoveFailed?
|
||||
@__clauses__aliased = true
|
||||
end
|
||||
|
||||
def pbMoveFailed?(user, targets)
|
||||
@@ -247,7 +262,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::StartPerishCountsForAllBattlers # Perish Song
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
unless method_defined?(:__clauses__pbFailsAgainstTarget?)
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
end
|
||||
|
||||
def pbFailsAgainstTarget?(user, target, show_message)
|
||||
if @battle.rules["perishsongclause"] &&
|
||||
@@ -262,7 +279,9 @@ end
|
||||
|
||||
|
||||
class Battle::Move::AttackerFaintsIfUserFaints # Destiny Bond
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
unless method_defined?(:__clauses__pbFailsAgainstTarget?)
|
||||
alias __clauses__pbFailsAgainstTarget? pbFailsAgainstTarget?
|
||||
end
|
||||
|
||||
def pbFailsAgainstTarget?(user, target, show_message)
|
||||
if @battle.rules["perishsongclause"] &&
|
||||
|
||||
@@ -272,7 +272,8 @@ class Battle::Scene
|
||||
rockAnim.dispose
|
||||
end
|
||||
|
||||
alias __safari__pbThrowSuccess pbThrowSuccess
|
||||
alias __safari__pbThrowSuccess pbThrowSuccess unless method_defined?(:__safari__pbThrowSuccess)
|
||||
|
||||
def pbThrowSuccess
|
||||
__safari__pbThrowSuccess
|
||||
pbWildBattleSuccess if @battle.is_a?(SafariBattle)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# Bug Catching Contest battle scene (the visuals of the battle)
|
||||
#===============================================================================
|
||||
class Battle::Scene
|
||||
alias _bugContest_pbInitSprites pbInitSprites
|
||||
alias _bugContest_pbInitSprites pbInitSprites unless method_defined?(:_bugContest_pbInitSprites)
|
||||
|
||||
def pbInitSprites
|
||||
_bugContest_pbInitSprites
|
||||
|
||||
@@ -172,14 +172,16 @@ end
|
||||
class Battle::AI
|
||||
attr_accessor :battlePalace
|
||||
|
||||
alias _battlePalace_initialize initialize
|
||||
alias _battlePalace_initialize initialize unless method_defined?(:_battlePalace_initialize)
|
||||
|
||||
def initialize(*arg)
|
||||
_battlePalace_initialize(*arg)
|
||||
@justswitched = [false, false, false, false]
|
||||
end
|
||||
|
||||
alias _battlePalace_pbEnemyShouldWithdraw? pbEnemyShouldWithdraw?
|
||||
unless method_defined?(:_battlePalace_pbEnemyShouldWithdraw?)
|
||||
alias _battlePalace_pbEnemyShouldWithdraw? pbEnemyShouldWithdraw?
|
||||
end
|
||||
|
||||
def pbEnemyShouldWithdraw?(idxBattler)
|
||||
return _battlePalace_pbEnemyShouldWithdraw?(idxBattler) if !@battlePalace
|
||||
|
||||
@@ -211,7 +211,9 @@ end
|
||||
class Battle::AI
|
||||
attr_accessor :battleArena
|
||||
|
||||
alias _battleArena_pbEnemyShouldWithdraw? pbEnemyShouldWithdraw?
|
||||
unless method_defined?(:_battleArena_pbEnemyShouldWithdraw?)
|
||||
alias _battleArena_pbEnemyShouldWithdraw? pbEnemyShouldWithdraw?
|
||||
end
|
||||
|
||||
def pbEnemyShouldWithdraw?(idxBattler)
|
||||
return _battleArena_pbEnemyShouldWithdraw?(idxBattler) if !@battleArena
|
||||
|
||||
Reference in New Issue
Block a user