mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-10 06:34:59 +00:00
Added some more Gen 8 move effects
This commit is contained in:
@@ -40,6 +40,8 @@ class PokeBattle_Battler
|
||||
attr_accessor :currentMove # ID of multi-turn move currently being used
|
||||
attr_accessor :tookDamage # Boolean for whether self took damage this round
|
||||
attr_accessor :tookPhysicalHit
|
||||
attr_accessor :statsRaised # Boolean for whether self's stat(s) raised this round
|
||||
attr_accessor :statsLowered # Boolean for whether self's stat(s) lowered this round
|
||||
attr_accessor :damageState
|
||||
attr_accessor :initialHP # Set at the start of each move's usage
|
||||
|
||||
@@ -579,6 +581,18 @@ class PokeBattle_Battler
|
||||
return true
|
||||
end
|
||||
|
||||
def trappedInBattle?
|
||||
return true if battler.effects[PBEffects::Trapping] > 0
|
||||
return true if battler.effects[PBEffects::MeanLook] >= 0
|
||||
return true if battler.effects[PBEffects::JawLock] >= 0
|
||||
@battle.eachBattler { |b| return true if b.effects[PBEffects::JawLock] == @index }
|
||||
return true if battler.effects[PBEffects::Octolock] >= 0
|
||||
return true if battler.effects[PBEffects::Ingrain]
|
||||
return true if battler.effects[PBEffects::NoRetreat]
|
||||
return true if @field.effects[PBEffects::FairyLock] > 0
|
||||
return false
|
||||
end
|
||||
|
||||
def movedThisRound?
|
||||
return @lastRoundMoved && @lastRoundMoved==@battle.turnCount
|
||||
end
|
||||
|
||||
@@ -150,6 +150,8 @@ class PokeBattle_Battler
|
||||
@lastHPLostFromFoe = 0
|
||||
@tookDamage = false
|
||||
@tookPhysicalHit = false
|
||||
@statsRaised = false
|
||||
@statsLowered = false
|
||||
@lastMoveUsed = nil
|
||||
@lastMoveUsedType = nil
|
||||
@lastRegularMoveUsed = nil
|
||||
@@ -205,6 +207,10 @@ class PokeBattle_Battler
|
||||
@effects[PBEffects::Imprison] = false
|
||||
@effects[PBEffects::Instruct] = false
|
||||
@effects[PBEffects::Instructed] = false
|
||||
@effects[PBEffects::JawLock] = -1
|
||||
@battle.eachBattler do |b| # Other battlers no longer blocked by self
|
||||
b.effects[PBEffects::JawLock] = -1 if b.effects[PBEffects::JawLock] == @index
|
||||
end
|
||||
@effects[PBEffects::KingsShield] = false
|
||||
@battle.eachBattler do |b| # Other battlers lose their lock-on against self
|
||||
next if b.effects[PBEffects::LockOn]==0
|
||||
|
||||
@@ -37,6 +37,7 @@ class PokeBattle_Battler
|
||||
new = @stages[stat]+increment
|
||||
PBDebug.log("[Stat change] #{pbThis}'s #{stat_name}: #{@stages[stat]} -> #{new} (+#{increment})")
|
||||
@stages[stat] += increment
|
||||
@statsRaised = true
|
||||
end
|
||||
return increment
|
||||
end
|
||||
@@ -169,6 +170,7 @@ class PokeBattle_Battler
|
||||
new = @stages[stat]-increment
|
||||
PBDebug.log("[Stat change] #{pbThis}'s #{stat_name}: #{@stages[stat]} -> #{new} (-#{increment})")
|
||||
@stages[stat] -= increment
|
||||
@statsLowered = true
|
||||
end
|
||||
return increment
|
||||
end
|
||||
@@ -303,6 +305,13 @@ class PokeBattle_Battler
|
||||
end
|
||||
|
||||
def pbResetStatStages
|
||||
GameData::Stat.each_battle { |s| @stages[s.id] = 0 }
|
||||
GameData::Stat.each_battle do |s|
|
||||
if @stages[s.id] > 0
|
||||
@statsLowered = true
|
||||
elsif @stages[s.id] < 0
|
||||
@statsRaised = true
|
||||
end
|
||||
@stages[s.id] = 0
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user