Created and implemented GameData::Type

This commit is contained in:
Maruno17
2020-12-12 21:26:46 +00:00
parent c8790bafc9
commit bc13517cb7
50 changed files with 698 additions and 784 deletions

View File

@@ -481,14 +481,11 @@ class Pokemon
return ret
end
# @param type [Integer, Symbol, String] type to check (from PBTypes)
# @param type [Integer, Symbol, String] type to check
# @return [Boolean] whether this Pokémon has the specified type
def hasType?(type)
t = self.types
if !type.is_a?(Integer)
return t.any? { |tp| isConst?(tp, PBTypes, type) }
end
return t.any? { |tp| tp == type }
type = GameData::Type.get(type).id
return self.types.include?(type)
end
#=============================================================================

View File

@@ -373,9 +373,9 @@ class PokeBattle_Battler
__shadow__pbInitPokemon(*arg)
# Called into battle
if shadowPokemon?
if hasConst?(PBTypes,:SHADOW)
self.type1 = getID(PBTypes,:SHADOW)
self.type2 = getID(PBTypes,:SHADOW)
if GameData::Type.exists?(:SHADOW)
self.type1 = :SHADOW
self.type2 = :SHADOW
end
self.pokemon.adjustHeart(-30) if pbOwnedByPlayer?
end
@@ -404,7 +404,7 @@ class PokeBattle_Battler
def pbHyperModeObedience(move)
return true if !inHyperMode?
return true if !move || isConst?(move.type,PBTypes,:SHADOW)
return true if !move || move.type == :SHADOW
return rand(100)<20
end
end

View File

@@ -503,7 +503,7 @@ PBEvolution.register(:HappinessMove, {
PBEvolution.register(:HappinessMoveType, {
"minimumLevel" => 1, # Needs any level up
"parameterType" => :PBTypes,
"parameterType" => :Type,
"levelUpCheck" => proc { |pkmn, parameter|
if pkmn.happiness >= 220
next pkmn.moves.any? { |m| m && m.id > 0 && m.type == parameter }
@@ -627,7 +627,7 @@ PBEvolution.register(:HasMove, {
PBEvolution.register(:HasMoveType, {
"minimumLevel" => 1, # Needs any level up
"parameterType" => :PBTypes,
"parameterType" => :Type,
"levelUpCheck" => proc { |pkmn, parameter|
next pkmn.moves.any? { |m| m && m.type == parameter }
}