mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-09 14:14:59 +00:00
Moved methods that return item/trainer graphics, refactored evolution helper methods, rearranged some methods
This commit is contained in:
@@ -18,6 +18,49 @@ module GameData
|
||||
extend ClassMethods
|
||||
include InstanceMethods
|
||||
|
||||
def self.icon_filename(item)
|
||||
return "Graphics/Icons/itemBack" if item.nil?
|
||||
item_data = self.try_get(item)
|
||||
return "Graphics/Icons/item000" if item_data.nil?
|
||||
# Check for files
|
||||
ret = sprintf("Graphics/Icons/item%s", item_data.id)
|
||||
return ret if pbResolveBitmap(ret)
|
||||
ret = sprintf("Graphics/Icons/item%03d", item_data.id_number)
|
||||
return ret if pbResolveBitmap(ret)
|
||||
# Check for TM/HM type icons
|
||||
if item_data.is_machine?
|
||||
move_type = GameData::Move.get(item_data.move).type
|
||||
type_data = GameData::Type.get(move_type)
|
||||
ret = sprintf("Graphics/Icons/itemMachine%s", type_data.id)
|
||||
return ret if pbResolveBitmap(ret)
|
||||
ret = sprintf("Graphics/Icons/itemMachine%03d", type_data.id_number)
|
||||
return ret if pbResolveBitmap(ret)
|
||||
end
|
||||
return "Graphics/Icons/item000"
|
||||
end
|
||||
|
||||
def self.held_icon_filename(item)
|
||||
item_data = self.try_get(item)
|
||||
return nil if !item_data
|
||||
name_base = (item_data.is_mail?) ? "mail" : "item"
|
||||
# Check for files
|
||||
ret = sprintf("Graphics/Pictures/Party/icon_%s_%s", name_base, item_data.id)
|
||||
return ret if pbResolveBitmap(ret)
|
||||
ret = sprintf("Graphics/Pictures/Party/icon_%s_%03d", name_base, item_data.id_number)
|
||||
return ret if pbResolveBitmap(ret)
|
||||
return sprintf("Graphics/Pictures/Party/icon_%s", name_base)
|
||||
end
|
||||
|
||||
def self.mail_filename(item)
|
||||
item_data = self.try_get(item)
|
||||
return nil if !item_data
|
||||
# Check for files
|
||||
ret = sprintf("Graphics/Pictures/Mail/mail_%s", item_data.id)
|
||||
return ret if pbResolveBitmap(ret)
|
||||
ret = sprintf("Graphics/Pictures/Mail/mail_%03d", item_data.id_number)
|
||||
return pbResolveBitmap(ret) ? ret : nil
|
||||
end
|
||||
|
||||
def initialize(hash)
|
||||
@id = hash[:id]
|
||||
@id_number = hash[:id_number] || -1
|
||||
@@ -230,3 +273,18 @@ def pbIsUnlosableItem?(check_item, species, ability)
|
||||
Deprecation.warn_method('pbIsUnlosableItem?', 'v20', 'GameData::Item.get(item).unlosable?')
|
||||
return GameData::Item.get(check_item).unlosable?(species, ability)
|
||||
end
|
||||
|
||||
def pbItemIconFile(item)
|
||||
Deprecation.warn_method('pbItemIconFile', 'v20', 'GameData::Item.icon_filename(item)')
|
||||
return GameData::Item.icon_filename(item)
|
||||
end
|
||||
|
||||
def pbHeldItemIconFile(item)
|
||||
Deprecation.warn_method('pbHeldItemIconFile', 'v20', 'GameData::Item.held_icon_filename(item)')
|
||||
return GameData::Item.held_icon_filename(item)
|
||||
end
|
||||
|
||||
def pbMailBackFile(item)
|
||||
Deprecation.warn_method('pbMailBackFile', 'v20', 'GameData::Item.mail_filename(item)')
|
||||
return GameData::Item.mail_filename(item)
|
||||
end
|
||||
|
||||
@@ -48,6 +48,18 @@ module GameData
|
||||
return pbGetMessage(MessageTypes::MoveDescriptions, @id_number)
|
||||
end
|
||||
|
||||
def physical?
|
||||
return false if @base_damage == 0
|
||||
return @category == 0 if MOVE_CATEGORY_PER_MOVE
|
||||
return GameData::Type.get(@type).physical?
|
||||
end
|
||||
|
||||
def special?
|
||||
return false if @base_damage == 0
|
||||
return @category == 1 if MOVE_CATEGORY_PER_MOVE
|
||||
return GameData::Type.get(@type).special?
|
||||
end
|
||||
|
||||
def hidden_move?
|
||||
GameData::Item.each do |i|
|
||||
return true if i.is_HM? && i.move == @id
|
||||
|
||||
@@ -17,6 +17,59 @@ module GameData
|
||||
extend ClassMethods
|
||||
include InstanceMethods
|
||||
|
||||
def self.check_file(tr_type, path, suffix = "")
|
||||
tr_type_data = self.try_get(tr_type)
|
||||
return nil if tr_type_data.nil?
|
||||
# Check for files
|
||||
if !suffix.empty?
|
||||
ret = path + tr_type_data.id.to_s + suffix
|
||||
return ret if pbResolveBitmap(ret)
|
||||
ret = path + sprintf("%03d", tr_type_data.id_number) + suffix
|
||||
return ret if pbResolveBitmap(ret)
|
||||
end
|
||||
ret = path + tr_type_data.id.to_s
|
||||
return ret if pbResolveBitmap(ret)
|
||||
ret = path + sprintf("%03d", tr_type_data.id_number)
|
||||
return (pbResolveBitmap(ret)) ? ret : nil
|
||||
end
|
||||
|
||||
def self.charset_filename(tr_type)
|
||||
return self.check_file(tr_type, "Graphics/Characters/trchar")
|
||||
end
|
||||
|
||||
def self.charset_filename_brief(tr_type)
|
||||
ret = self.charset_filename(tr_type)
|
||||
ret.slice!("Graphics/Characters/") if ret
|
||||
return ret
|
||||
end
|
||||
|
||||
def self.front_sprite_filename(tr_type)
|
||||
return self.check_file(tr_type, "Graphics/Trainers/trainer")
|
||||
end
|
||||
|
||||
def self.player_front_sprite_filename(tr_type)
|
||||
outfit = ($Trainer) ? $Trainer.outfit : 0
|
||||
return self.check_file(tr_type, "Graphics/Trainers/trainer", sprintf("_%d", outfit))
|
||||
end
|
||||
|
||||
def self.back_sprite_filename(tr_type)
|
||||
return self.check_file(tr_type, "Graphics/Trainers/trback")
|
||||
end
|
||||
|
||||
def self.player_back_sprite_filename(tr_type)
|
||||
outfit = ($Trainer) ? $Trainer.outfit : 0
|
||||
return self.check_file(tr_type, "Graphics/Trainers/trback", sprintf("_%d", outfit))
|
||||
end
|
||||
|
||||
def self.map_icon_filename(tr_type)
|
||||
return self.check_file(tr_type, "Graphics/Pictures/mapPlayer")
|
||||
end
|
||||
|
||||
def self.player_map_icon_filename(tr_type)
|
||||
outfit = ($Trainer) ? $Trainer.outfit : 0
|
||||
return self.check_file(tr_type, "Graphics/Pictures/mapPlayer", sprintf("_%d", outfit))
|
||||
end
|
||||
|
||||
def initialize(hash)
|
||||
@id = hash[:id]
|
||||
@id_number = hash[:id_number] || -1
|
||||
@@ -43,7 +96,47 @@ end
|
||||
#===============================================================================
|
||||
# Deprecated methods
|
||||
#===============================================================================
|
||||
def pbGetTrainerTypeData(trainer_type)
|
||||
def pbGetTrainerTypeData(tr_type)
|
||||
Deprecation.warn_method('pbGetTrainerTypeData', 'v20', 'GameData::TrainerType.get(trainer_type)')
|
||||
return GameData::TrainerType.get(trainer_type)
|
||||
return GameData::TrainerType.get(tr_type)
|
||||
end
|
||||
|
||||
def pbTrainerCharFile(tr_type) # Used by the phone
|
||||
Deprecation.warn_method('pbTrainerCharFile', 'v20', 'GameData::TrainerType.charset_filename(trainer_type)')
|
||||
return GameData::TrainerType.charset_filename(tr_type)
|
||||
end
|
||||
|
||||
def pbTrainerCharNameFile(tr_type) # Used by Battle Frontier and compiler
|
||||
Deprecation.warn_method('pbTrainerCharNameFile', 'v20', 'GameData::TrainerType.charset_filename_brief(trainer_type)')
|
||||
return GameData::TrainerType.charset_filename_brief(tr_type)
|
||||
end
|
||||
|
||||
def pbTrainerSpriteFile(tr_type)
|
||||
Deprecation.warn_method('pbTrainerSpriteFile', 'v20', 'GameData::TrainerType.front_sprite_filename(trainer_type)')
|
||||
return GameData::TrainerType.front_sprite_filename(tr_type)
|
||||
end
|
||||
|
||||
def pbTrainerSpriteBackFile(tr_type)
|
||||
Deprecation.warn_method('pbTrainerSpriteBackFile', 'v20', 'GameData::TrainerType.back_sprite_filename(trainer_type)')
|
||||
return GameData::TrainerType.back_sprite_filename(tr_type)
|
||||
end
|
||||
|
||||
def pbPlayerSpriteFile(tr_type)
|
||||
Deprecation.warn_method('pbPlayerSpriteFile', 'v20', 'GameData::TrainerType.player_front_sprite_filename(trainer_type)')
|
||||
return GameData::TrainerType.player_front_sprite_filename(tr_type)
|
||||
end
|
||||
|
||||
def pbPlayerSpriteBackFile(tr_type)
|
||||
Deprecation.warn_method('pbPlayerSpriteBackFile', 'v20', 'GameData::TrainerType.player_back_sprite_filename(trainer_type)')
|
||||
return GameData::TrainerType.player_back_sprite_filename(tr_type)
|
||||
end
|
||||
|
||||
def pbTrainerHeadFile(tr_type)
|
||||
Deprecation.warn_method('pbTrainerHeadFile', 'v20', 'GameData::TrainerType.map_icon_filename(trainer_type)')
|
||||
return GameData::TrainerType.map_icon_filename(tr_type)
|
||||
end
|
||||
|
||||
def pbPlayerHeadFile(tr_type)
|
||||
Deprecation.warn_method('pbPlayerHeadFile', 'v20', 'GameData::TrainerType.player_map_icon_filename(trainer_type)')
|
||||
return GameData::TrainerType.player_map_icon_filename(tr_type)
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user