Hi everyone, me and a friend of mine have discovered a lot of problems and bugs about Pledge Moves, pratically Pledge combination Moves should assume type Fire on Sea of Fire (Fire + Grass), Grass on Swamp (Grass + Water) and Water on Raimbow (Water + Fire). This didn't happen for the first time we did the combination, but the combination assumed the type of the last of ours pokemon move in order of speed, and this ONLY the first time we did the combination. Then the type combination gone ok. The problem was that the pbBaseType start before the pbOnStartUse, so the type returned from pbBaseType the first time we did the combination was always nil and goes to return the super type, so the type of the last move used from ours pokemon. We adjust this problem loading the overrideType in pbBaseType.
I'll post the code below:
def pbBaseType(user) @combos.each do |i| next if i!=user.effects[PBEffects::FirstPledge] @overrideType = i @overrideType = nil if !GameData::Type.exists?(@overrideType) break end return @overrideType if @overrideType != nil return super end
This is what I've changed in the class PokeBattle_PledgeMove in the script Move_Effects_Generic