Fixed Toxic damage only going up to 15/16 of total HP, minor code fixes

This commit is contained in:
Maruno17
2021-12-05 20:20:30 +00:00
parent 479aeacc2c
commit 3650a078e7
5 changed files with 11 additions and 22 deletions

View File

@@ -11,7 +11,6 @@ class Battle::Battler
attr_accessor :item_id
attr_accessor :moves
attr_accessor :gender
attr_accessor :iv
attr_accessor :attack
attr_accessor :spatk
attr_accessor :speed
@@ -109,7 +108,7 @@ class Battle::Battler
def status=(value)
@effects[PBEffects::Truant] = false if @status == :SLEEP && value != :SLEEP
@effects[PBEffects::Toxic] = 0 if value != :POISON
@effects[PBEffects::Toxic] = 0 if value != :POISON || self.statusCount == 0
@status = value
@pokemon.status = value if @pokemon
self.statusCount = 0 if value != :POISON && value != :SLEEP
@@ -129,7 +128,8 @@ class Battle::Battler
#=============================================================================
def happiness; return @pokemon ? @pokemon.happiness : 0; end
def affection_level; return @pokemon ? @pokemon.affection_level : 2; end
def nature; return @pokemon ? @pokemon.nature : 0; end
def gender; return @pokemon ? @pokemon.gender : 0; end
def nature; return @pokemon ? @pokemon.nature : nil; end
def pokerusStage; return @pokemon ? @pokemon.pokerusStage : 0; end
#=============================================================================
@@ -300,10 +300,9 @@ class Battle::Battler
end
# Returns the active types of this Pokémon. The array should not include the
# same type more than once, and should not include any invalid type numbers
# (e.g. -1).
# same type more than once, and should not include any invalid types.
def pbTypes(withType3=false)
ret = @types.clone
ret = @types.uniq
# Burn Up erases the Fire-type.
ret.delete(:FIRE) if @effects[PBEffects::BurnUp]
# Roost erases the Flying-type. If there are no types left, adds the Normal-

View File

@@ -23,7 +23,6 @@ class Battle::Battler
@types = []
@ability_id = nil
@item_id = nil
@gender = 0
@attack = @defense = @spatk = @spdef = @speed = 0
@status = :NONE
@statusCount = 0
@@ -31,8 +30,6 @@ class Battle::Battler
@pokemonIndex = -1
@participants = []
@moves = []
@iv = {}
GameData::Stat.each_main { |s| @iv[s.id] = 0 }
end
# Used by Future Sight only, when Future Sight's user is no longer in battle.
@@ -46,7 +43,6 @@ class Battle::Battler
@totalhp = pkmn.totalhp
@types = pkmn.types
# ability and item intentionally not copied across here
@gender = pkmn.gender
@attack = pkmn.attack
@defense = pkmn.defense
@spatk = pkmn.spatk
@@ -58,8 +54,6 @@ class Battle::Battler
@pokemonIndex = idxParty
@participants = []
# moves intentionally not copied across here
@iv = {}
GameData::Stat.each_main { |s| @iv[s.id] = pkmn.iv[s.id] }
@dummy = true
end
@@ -80,7 +74,6 @@ class Battle::Battler
@types = pkmn.types
@ability_id = pkmn.ability_id
@item_id = pkmn.item_id
@gender = pkmn.gender
@attack = pkmn.attack
@defense = pkmn.defense
@spatk = pkmn.spatk
@@ -95,8 +88,6 @@ class Battle::Battler
pkmn.moves.each_with_index do |m,i|
@moves[i] = Battle::Move.from_pokemon_move(@battle,m)
end
@iv = {}
GameData::Stat.each_main { |s| @iv[s.id] = pkmn.iv[s.id] }
end
def pbInitEffects(batonPass)
@@ -186,7 +177,7 @@ class Battle::Battler
@effects[PBEffects::Encore] = 0
@effects[PBEffects::EncoreMove] = nil
@effects[PBEffects::Endure] = false
@effects[PBEffects::FirstPledge] = 0
@effects[PBEffects::FirstPledge] = nil
@effects[PBEffects::FlashFire] = false
@effects[PBEffects::Flinch] = false
@effects[PBEffects::FocusPunch] = false
@@ -275,7 +266,7 @@ class Battle::Battler
@effects[PBEffects::Torment] = false
@effects[PBEffects::Toxic] = 0
@effects[PBEffects::Transform] = false
@effects[PBEffects::TransformSpecies] = 0
@effects[PBEffects::TransformSpecies] = nil
@effects[PBEffects::Trapping] = 0
@effects[PBEffects::TrappingMove] = nil
@effects[PBEffects::TrappingUser] = -1