mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-07 21:24:59 +00:00
Added new section-based format for trainertypes.txt
This commit is contained in:
@@ -2,17 +2,31 @@ module GameData
|
|||||||
class TrainerType
|
class TrainerType
|
||||||
attr_reader :id
|
attr_reader :id
|
||||||
attr_reader :real_name
|
attr_reader :real_name
|
||||||
attr_reader :base_money
|
|
||||||
attr_reader :battle_BGM
|
|
||||||
attr_reader :victory_ME
|
|
||||||
attr_reader :intro_ME
|
|
||||||
attr_reader :gender
|
attr_reader :gender
|
||||||
|
attr_reader :base_money
|
||||||
attr_reader :skill_level
|
attr_reader :skill_level
|
||||||
attr_reader :skill_code
|
attr_reader :skill_code
|
||||||
|
attr_reader :intro_ME
|
||||||
|
attr_reader :battle_BGM
|
||||||
|
attr_reader :victory_ME
|
||||||
|
|
||||||
DATA = {}
|
DATA = {}
|
||||||
DATA_FILENAME = "trainer_types.dat"
|
DATA_FILENAME = "trainer_types.dat"
|
||||||
|
|
||||||
|
SCHEMA = {
|
||||||
|
"Name" => [:name, "s"],
|
||||||
|
"Gender" => [:gender, "e", {"Male" => 0, "male" => 0, "M" => 0, "m" => 0, "0" => 0,
|
||||||
|
"Female" => 1, "female" => 1, "F" => 1, "f" => 1, "1" => 1,
|
||||||
|
"Unknown" => 2, "unknown" => 2, "Other" => 2, "other" => 2,
|
||||||
|
"Mixed" => 2, "mixed" => 2, "X" => 2, "x" => 2, "2" => 2}],
|
||||||
|
"BaseMoney" => [:base_money, "u"],
|
||||||
|
"SkillLevel" => [:skill_level, "u"],
|
||||||
|
"SkillCode" => [:skill_code, "s"],
|
||||||
|
"IntroME" => [:intro_ME, "s"],
|
||||||
|
"BattleBGM" => [:battle_BGM, "s"],
|
||||||
|
"VictoryME" => [:victory_ME, "s"]
|
||||||
|
}
|
||||||
|
|
||||||
extend ClassMethodsSymbols
|
extend ClassMethodsSymbols
|
||||||
include InstanceMethods
|
include InstanceMethods
|
||||||
|
|
||||||
@@ -68,13 +82,13 @@ module GameData
|
|||||||
def initialize(hash)
|
def initialize(hash)
|
||||||
@id = hash[:id]
|
@id = hash[:id]
|
||||||
@real_name = hash[:name] || "Unnamed"
|
@real_name = hash[:name] || "Unnamed"
|
||||||
@base_money = hash[:base_money] || 30
|
|
||||||
@battle_BGM = hash[:battle_BGM]
|
|
||||||
@victory_ME = hash[:victory_ME]
|
|
||||||
@intro_ME = hash[:intro_ME]
|
|
||||||
@gender = hash[:gender] || 2
|
@gender = hash[:gender] || 2
|
||||||
|
@base_money = hash[:base_money] || 30
|
||||||
@skill_level = hash[:skill_level] || @base_money
|
@skill_level = hash[:skill_level] || @base_money
|
||||||
@skill_code = hash[:skill_code]
|
@skill_code = hash[:skill_code]
|
||||||
|
@intro_ME = hash[:intro_ME]
|
||||||
|
@battle_BGM = hash[:battle_BGM]
|
||||||
|
@victory_ME = hash[:victory_ME]
|
||||||
end
|
end
|
||||||
|
|
||||||
# @return [String] the translated name of this trainer type
|
# @return [String] the translated name of this trainer type
|
||||||
|
|||||||
@@ -342,18 +342,18 @@ end
|
|||||||
# Trainer type editor
|
# Trainer type editor
|
||||||
#===============================================================================
|
#===============================================================================
|
||||||
def pbTrainerTypeEditor
|
def pbTrainerTypeEditor
|
||||||
|
gender_array = []
|
||||||
|
GameData::TrainerType::SCHEMA["Gender"][2].each { |key, value| gender_array[value] = key if !gender_array[value] }
|
||||||
trainer_type_properties = [
|
trainer_type_properties = [
|
||||||
[_INTL("Internal Name"), ReadOnlyProperty, _INTL("Internal name that is used as a symbol like :XXX.")],
|
[_INTL("ID"), ReadOnlyProperty, _INTL("ID of this Trainer Type (used as a symbol like :XXX).")],
|
||||||
[_INTL("Trainer Name"), StringProperty, _INTL("Name of the trainer type as displayed by the game.")],
|
[_INTL("Name"), StringProperty, _INTL("Name of this Trainer Type as displayed by the game.")],
|
||||||
[_INTL("Base Money"), LimitProperty.new(9999), _INTL("Player earns this much money times the highest level among the trainer's Pokémon.")],
|
[_INTL("Gender"), EnumProperty.new(gender_array), _INTL("Gender of this Trainer Type.")],
|
||||||
[_INTL("Battle BGM"), BGMProperty, _INTL("BGM played in battles against trainers of this type.")],
|
[_INTL("BaseMoney"), LimitProperty.new(9999), _INTL("Player earns this much money times the highest level among the trainer's Pokémon.")],
|
||||||
[_INTL("Battle End ME"), MEProperty, _INTL("ME played when player wins battles against trainers of this type.")],
|
[_INTL("SkillLevel"), LimitProperty.new(9999), _INTL("Skill level of this Trainer Type.")],
|
||||||
[_INTL("Battle Intro ME"), MEProperty, _INTL("ME played before battles against trainers of this type.")],
|
[_INTL("SkillCode"), StringProperty, _INTL("Letters/phrases representing AI modifications of trainers of this type.")],
|
||||||
[_INTL("Gender"), EnumProperty.new([
|
[_INTL("IntroME"), MEProperty, _INTL("ME played before battles against trainers of this type.")],
|
||||||
_INTL("Male"), _INTL("Female"), _INTL("Undefined")]),
|
[_INTL("BattleBGM"), BGMProperty, _INTL("BGM played in battles against trainers of this type.")],
|
||||||
_INTL("Gender of this Trainer type.")],
|
[_INTL("VictoryME"), MEProperty, _INTL("ME played when player wins battles against trainers of this type.")]
|
||||||
[_INTL("Skill Level"), LimitProperty.new(9999), _INTL("Skill level of this Trainer type.")],
|
|
||||||
[_INTL("Skill Code"), StringProperty, _INTL("Letters/phrases representing AI modifications of trainers of this type.")],
|
|
||||||
]
|
]
|
||||||
pbListScreenBlock(_INTL("Trainer Types"), TrainerTypeLister.new(0, true)) { |button, tr_type|
|
pbListScreenBlock(_INTL("Trainer Types"), TrainerTypeLister.new(0, true)) { |button, tr_type|
|
||||||
if tr_type
|
if tr_type
|
||||||
@@ -372,26 +372,26 @@ def pbTrainerTypeEditor
|
|||||||
data = [
|
data = [
|
||||||
t_data.id.to_s,
|
t_data.id.to_s,
|
||||||
t_data.real_name,
|
t_data.real_name,
|
||||||
t_data.base_money,
|
|
||||||
t_data.battle_BGM,
|
|
||||||
t_data.victory_ME,
|
|
||||||
t_data.intro_ME,
|
|
||||||
t_data.gender,
|
t_data.gender,
|
||||||
|
t_data.base_money,
|
||||||
t_data.skill_level,
|
t_data.skill_level,
|
||||||
t_data.skill_code
|
t_data.skill_code,
|
||||||
|
t_data.intro_ME,
|
||||||
|
t_data.battle_BGM,
|
||||||
|
t_data.victory_ME
|
||||||
]
|
]
|
||||||
if pbPropertyList(t_data.id.to_s, data, trainer_type_properties, true)
|
if pbPropertyList(t_data.id.to_s, data, trainer_type_properties, true)
|
||||||
# Construct trainer type hash
|
# Construct trainer type hash
|
||||||
type_hash = {
|
type_hash = {
|
||||||
:id => t_data.id,
|
:id => t_data.id,
|
||||||
:name => data[1],
|
:name => data[1],
|
||||||
:base_money => data[2],
|
:gender => data[2],
|
||||||
:battle_BGM => data[3],
|
:base_money => data[3],
|
||||||
:victory_ME => data[4],
|
:skill_level => data[4],
|
||||||
:intro_ME => data[5],
|
:skill_code => data[5],
|
||||||
:gender => data[6],
|
:intro_ME => data[6],
|
||||||
:skill_level => data[7],
|
:battle_BGM => data[7],
|
||||||
:skill_code => data[8]
|
:victory_ME => data[8]
|
||||||
}
|
}
|
||||||
# Add trainer type's data to records
|
# Add trainer type's data to records
|
||||||
GameData::TrainerType.register(type_hash)
|
GameData::TrainerType.register(type_hash)
|
||||||
@@ -436,8 +436,8 @@ def pbTrainerTypeEditorNew(default_name)
|
|||||||
return nil
|
return nil
|
||||||
end
|
end
|
||||||
# Choose a gender
|
# Choose a gender
|
||||||
gender = pbMessage(_INTL("Is the Trainer male, female or undefined?"), [
|
gender = pbMessage(_INTL("Is the Trainer male, female or unknown?"), [
|
||||||
_INTL("Male"), _INTL("Female"), _INTL("Undefined")], 0)
|
_INTL("Male"), _INTL("Female"), _INTL("Unknown")], 0)
|
||||||
# Choose a base money value
|
# Choose a base money value
|
||||||
params = ChooseNumberParams.new
|
params = ChooseNumberParams.new
|
||||||
params.setRange(0, 255)
|
params.setRange(0, 255)
|
||||||
@@ -447,8 +447,8 @@ def pbTrainerTypeEditorNew(default_name)
|
|||||||
tr_type_hash = {
|
tr_type_hash = {
|
||||||
:id => id.to_sym,
|
:id => id.to_sym,
|
||||||
:name => name,
|
:name => name,
|
||||||
:base_money => base_money,
|
:gender => gender,
|
||||||
:gender => gender
|
:base_money => base_money
|
||||||
}
|
}
|
||||||
# Add trainer type's data to records
|
# Add trainer type's data to records
|
||||||
GameData::TrainerType.register(tr_type_hash)
|
GameData::TrainerType.register(tr_type_hash)
|
||||||
|
|||||||
@@ -952,23 +952,52 @@ module Compiler
|
|||||||
#=============================================================================
|
#=============================================================================
|
||||||
def compile_trainer_types(path = "PBS/trainertypes.txt")
|
def compile_trainer_types(path = "PBS/trainertypes.txt")
|
||||||
GameData::TrainerType::DATA.clear
|
GameData::TrainerType::DATA.clear
|
||||||
|
schema = GameData::TrainerType::SCHEMA
|
||||||
tr_type_names = []
|
tr_type_names = []
|
||||||
|
tr_type_hash = nil
|
||||||
# Read each line of trainertypes.txt at a time and compile it into a trainer type
|
# Read each line of trainertypes.txt at a time and compile it into a trainer type
|
||||||
pbCompilerEachCommentedLine(path) { |line, line_no|
|
pbCompilerEachPreppedLine(path) { |line, line_no|
|
||||||
|
if line[/^\s*\[\s*(.+)\s*\]\s*$/] # New section [tr_type_id]
|
||||||
|
# Add previous trainer type's data to records
|
||||||
|
GameData::TrainerType.register(tr_type_hash) if tr_type_hash
|
||||||
|
# Parse trainer type ID
|
||||||
|
tr_type_id = $~[1].to_sym
|
||||||
|
if GameData::TrainerType.exists?(tr_type_id)
|
||||||
|
raise _INTL("Trainer Type ID '{1}' is used twice.\r\n{2}", tr_type_id, FileLineData.linereport)
|
||||||
|
end
|
||||||
|
# Construct trainer type hash
|
||||||
|
tr_type_hash = {
|
||||||
|
:id => tr_type_id
|
||||||
|
}
|
||||||
|
elsif line[/^\s*(\w+)\s*=\s*(.*)\s*$/] # XXX=YYY lines
|
||||||
|
if !tr_type_hash
|
||||||
|
raise _INTL("Expected a section at the beginning of the file.\r\n{1}", FileLineData.linereport)
|
||||||
|
end
|
||||||
|
# Parse property and value
|
||||||
|
property_name = $~[1]
|
||||||
|
line_schema = schema[property_name]
|
||||||
|
next if !line_schema
|
||||||
|
property_value = pbGetCsvRecord($~[2], line_no, line_schema)
|
||||||
|
# Record XXX=YYY setting
|
||||||
|
tr_type_hash[line_schema[0]] = property_value
|
||||||
|
tr_type_names.push(tr_type_hash[:name]) if property_name == "Name"
|
||||||
|
else # Old format
|
||||||
|
# Add previous trainer type's data to records
|
||||||
|
GameData::TrainerType.register(tr_type_hash) if tr_type_hash
|
||||||
|
# Parse trainer type
|
||||||
line = pbGetCsvRecord(line, line_no, [0, "snsUSSSeUS",
|
line = pbGetCsvRecord(line, line_no, [0, "snsUSSSeUS",
|
||||||
nil, nil, nil, nil, nil, nil, nil, {
|
nil, nil, nil, nil, nil, nil, nil, {
|
||||||
"Male" => 0, "M" => 0, "0" => 0,
|
"Male" => 0, "M" => 0, "0" => 0,
|
||||||
"Female" => 1, "F" => 1, "1" => 1,
|
"Female" => 1, "F" => 1, "1" => 1,
|
||||||
"Mixed" => 2, "X" => 2, "2" => 2, "" => 2
|
"Mixed" => 2, "X" => 2, "2" => 2, "" => 2
|
||||||
}, nil, nil]
|
}, nil, nil])
|
||||||
)
|
tr_type_id = line[1].to_sym
|
||||||
type_symbol = line[1].to_sym
|
if GameData::TrainerType.exists?(tr_type_id)
|
||||||
if GameData::TrainerType::DATA[type_symbol]
|
raise _INTL("Trainer Type ID '{1}' is used twice.\r\n{2}", tr_type_id, FileLineData.linereport)
|
||||||
raise _INTL("Trainer type ID '{1}' is used twice.\r\n{2}", type_symbol, FileLineData.linereport)
|
|
||||||
end
|
end
|
||||||
# Construct trainer type hash
|
# Construct trainer type hash
|
||||||
type_hash = {
|
tr_type_hash = {
|
||||||
:id => type_symbol,
|
:id => tr_type_id,
|
||||||
:name => line[2],
|
:name => line[2],
|
||||||
:base_money => line[3],
|
:base_money => line[3],
|
||||||
:battle_BGM => line[4],
|
:battle_BGM => line[4],
|
||||||
@@ -979,9 +1008,13 @@ module Compiler
|
|||||||
:skill_code => line[9]
|
:skill_code => line[9]
|
||||||
}
|
}
|
||||||
# Add trainer type's data to records
|
# Add trainer type's data to records
|
||||||
GameData::TrainerType.register(type_hash)
|
GameData::TrainerType.register(tr_type_hash)
|
||||||
tr_type_names.push(type_hash[:name])
|
tr_type_names.push(tr_type_hash[:name])
|
||||||
|
tr_type_hash = nil
|
||||||
|
end
|
||||||
}
|
}
|
||||||
|
# Add last trainer type's data to records
|
||||||
|
GameData::TrainerType.register(tr_type_hash) if tr_type_hash
|
||||||
# Save all data
|
# Save all data
|
||||||
GameData::TrainerType.save
|
GameData::TrainerType.save
|
||||||
MessageTypes.setMessagesAsHash(MessageTypes::TrainerTypes, tr_type_names)
|
MessageTypes.setMessagesAsHash(MessageTypes::TrainerTypes, tr_type_names)
|
||||||
|
|||||||
@@ -556,19 +556,18 @@ module Compiler
|
|||||||
def write_trainer_types
|
def write_trainer_types
|
||||||
File.open("PBS/trainertypes.txt", "wb") { |f|
|
File.open("PBS/trainertypes.txt", "wb") { |f|
|
||||||
add_PBS_header_to_file(f)
|
add_PBS_header_to_file(f)
|
||||||
f.write("\#-------------------------------\r\n")
|
|
||||||
GameData::TrainerType.each do |t|
|
GameData::TrainerType.each do |t|
|
||||||
f.write(sprintf("0,%s,%s,%d,%s,%s,%s,%s,%s,%s\r\n",
|
f.write("\#-------------------------------\r\n")
|
||||||
csvQuote(t.id.to_s),
|
f.write(sprintf("[%s]\r\n", t.id))
|
||||||
csvQuote(t.real_name),
|
f.write(sprintf("Name = %s\r\n", t.real_name))
|
||||||
t.base_money,
|
gender = GameData::TrainerType::SCHEMA["Gender"][2].key(t.gender)
|
||||||
csvQuote(t.battle_BGM),
|
f.write(sprintf("Gender = %s\r\n", gender))
|
||||||
csvQuote(t.victory_ME),
|
f.write(sprintf("BaseMoney = %d\r\n", t.base_money))
|
||||||
csvQuote(t.intro_ME),
|
f.write(sprintf("SkillLevel = %d\r\n", t.skill_level)) if t.skill_level != t.base_money
|
||||||
["Male", "Female", "Mixed"][t.gender],
|
f.write(sprintf("SkillCode = %s\r\n", t.skill_code)) if !nil_or_empty?(t.skill_code)
|
||||||
(t.skill_level == t.base_money) ? "" : t.skill_level.to_s,
|
f.write(sprintf("IntroME = %s\r\n", t.intro_ME)) if !nil_or_empty?(t.intro_ME)
|
||||||
csvQuote(t.skill_code)
|
f.write(sprintf("BattleBGM = %s\r\n", t.battle_BGM)) if !nil_or_empty?(t.battle_BGM)
|
||||||
))
|
f.write(sprintf("VictoryME = %s\r\n", t.victory_ME)) if !nil_or_empty?(t.victory_ME)
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
Graphics.update
|
Graphics.update
|
||||||
|
|||||||
@@ -1,74 +1,401 @@
|
|||||||
# See the documentation on the wiki to learn how to edit this file.
|
# See the documentation on the wiki to learn how to edit this file.
|
||||||
#-------------------------------
|
#-------------------------------
|
||||||
0,POKEMONTRAINER_Red,Pokémon Trainer,60,,,,Male,,
|
[POKEMONTRAINER_Red]
|
||||||
0,POKEMONTRAINER_Leaf,Pokémon Trainer,60,,,,Female,,
|
Name = Pokémon Trainer
|
||||||
0,POKEMONTRAINER_Brendan,Pokémon Trainer,60,,,,Male,,
|
Gender = Male
|
||||||
0,POKEMONTRAINER_May,Pokémon Trainer,60,,,,Female,,
|
BaseMoney = 60
|
||||||
0,RIVAL1,Rival,16,,,,Male,,
|
#-------------------------------
|
||||||
0,RIVAL2,Rival,36,,,,Male,,
|
[POKEMONTRAINER_Leaf]
|
||||||
0,AROMALADY,Aroma Lady,32,,,,Female,,
|
Name = Pokémon Trainer
|
||||||
0,BEAUTY,Beauty,56,,,,Female,,
|
Gender = Female
|
||||||
0,BIKER,Biker,32,,,,Male,,
|
BaseMoney = 60
|
||||||
0,BIRDKEEPER,Bird Keeper,32,,,,Male,,
|
#-------------------------------
|
||||||
0,BUGCATCHER,Bug Catcher,16,,,,Male,,
|
[POKEMONTRAINER_Brendan]
|
||||||
0,BURGLAR,Burglar,88,,,,Male,32,
|
Name = Pokémon Trainer
|
||||||
0,CHANELLER,Channeler,32,,,,Female,,
|
Gender = Male
|
||||||
0,CUEBALL,Cue Ball,24,,,,Male,,
|
BaseMoney = 60
|
||||||
0,ENGINEER,Engineer,48,,,,Male,,
|
#-------------------------------
|
||||||
0,FISHERMAN,Fisherman,32,,,,Male,,
|
[POKEMONTRAINER_May]
|
||||||
0,GAMBLER,Gambler,72,,,,Male,32,
|
Name = Pokémon Trainer
|
||||||
0,GENTLEMAN,Gentleman,72,,,,Male,,
|
Gender = Female
|
||||||
0,HIKER,Hiker,32,,,,Male,,
|
BaseMoney = 60
|
||||||
0,JUGGLER,Juggler,32,,,,Male,,
|
#-------------------------------
|
||||||
0,LADY,Lady,160,,,,Female,72,
|
[RIVAL1]
|
||||||
0,PAINTER,Painter,16,,,,Female,,
|
Name = Rival
|
||||||
0,POKEMANIAC,Poké Maniac,64,,,,Male,,
|
Gender = Male
|
||||||
0,POKEMONBREEDER,Pokémon Breeder,48,,,,Female,,
|
BaseMoney = 16
|
||||||
0,PROFESSOR,Professor,100,,,,Male,,
|
#-------------------------------
|
||||||
0,ROCKER,Rocker,24,,,,Male,,
|
[RIVAL2]
|
||||||
0,RUINMANIAC,Ruin Maniac,48,,,,Male,,
|
Name = Rival
|
||||||
0,SAILOR,Sailor,32,,,,Male,,
|
Gender = Male
|
||||||
0,SCIENTIST,Scientist,48,,,,Male,,
|
BaseMoney = 36
|
||||||
0,SUPERNERD,Super Nerd,48,,,,Male,,
|
#-------------------------------
|
||||||
0,TAMER,Tamer,40,,,,Male,,
|
[AROMALADY]
|
||||||
0,BLACKBELT,Black Belt,32,,,,Male,,
|
Name = Aroma Lady
|
||||||
0,CRUSHGIRL,Crush Girl,24,,,,Female,,
|
Gender = Female
|
||||||
0,CAMPER,Camper,16,,,,Male,,
|
BaseMoney = 32
|
||||||
0,PICNICKER,Picnicker,16,,,,Female,,
|
#-------------------------------
|
||||||
0,COOLTRAINER_M,Cool Trainer,60,,,,Male,,
|
[BEAUTY]
|
||||||
0,COOLTRAINER_F,Cool Trainer,60,,,,Female,,
|
Name = Beauty
|
||||||
0,YOUNGSTER,Youngster,16,,,,Male,,
|
Gender = Female
|
||||||
0,LASS,Lass,16,,,,Female,,
|
BaseMoney = 56
|
||||||
0,POKEMONRANGER_M,Pokémon Ranger,60,,,,Male,,
|
#-------------------------------
|
||||||
0,POKEMONRANGER_F,Pokémon Ranger,60,,,,Female,,
|
[BIKER]
|
||||||
0,PSYCHIC_M,Psychic,32,,,,Male,,
|
Name = Biker
|
||||||
0,PSYCHIC_F,Psychic,32,,,,Female,,
|
Gender = Male
|
||||||
0,SWIMMER_M,Swimmer,16,,,,Male,32,
|
BaseMoney = 32
|
||||||
0,SWIMMER_F,Swimmer,16,,,,Female,32,
|
#-------------------------------
|
||||||
0,SWIMMER2_M,Swimmer,16,,,,Male,32,
|
[BIRDKEEPER]
|
||||||
0,SWIMMER2_F,Swimmer,16,,,,Female,32,
|
Name = Bird Keeper
|
||||||
0,TUBER_M,Tuber,4,,,,Male,16,
|
Gender = Male
|
||||||
0,TUBER_F,Tuber,4,,,,Female,16,
|
BaseMoney = 32
|
||||||
0,TUBER2_M,Tuber,4,,,,Male,16,
|
#-------------------------------
|
||||||
0,TUBER2_F,Tuber,4,,,,Female,16,
|
[BUGCATCHER]
|
||||||
0,COOLCOUPLE,Cool Couple,72,,,,Mixed,48,
|
Name = Bug Catcher
|
||||||
0,CRUSHKIN,Crush Kin,48,,,,Mixed,,
|
Gender = Male
|
||||||
0,SISANDBRO,Sis and Bro,16,,,,Mixed,48,
|
BaseMoney = 16
|
||||||
0,TWINS,Twins,24,,,,Mixed,,
|
#-------------------------------
|
||||||
0,YOUNGCOUPLE,Young Couple,60,,,,Mixed,32,
|
[BURGLAR]
|
||||||
0,TEAMROCKET_M,Team Rocket,32,,,,Male,,
|
Name = Burglar
|
||||||
0,TEAMROCKET_F,Team Rocket,32,,,,Female,,
|
Gender = Male
|
||||||
0,ROCKETBOSS,Rocket Boss,100,,,,Male,,
|
BaseMoney = 88
|
||||||
0,LEADER_Brock,Gym Leader,100,Battle Gym Leader,Battle victory leader,,Male,,
|
SkillLevel = 32
|
||||||
0,LEADER_Misty,Gym Leader,100,Battle Gym Leader,Battle victory leader,,Female,,
|
#-------------------------------
|
||||||
0,LEADER_Surge,Gym Leader,100,Battle Gym Leader,Battle victory leader,,Male,,
|
[CHANELLER]
|
||||||
0,LEADER_Erika,Gym Leader,100,Battle Gym Leader,Battle victory leader,,Female,,
|
Name = Channeler
|
||||||
0,LEADER_Koga,Gym Leader,100,Battle Gym Leader,Battle victory leader,,Male,,
|
Gender = Female
|
||||||
0,LEADER_Sabrina,Gym Leader,100,Battle Gym Leader,Battle victory leader,,Female,,
|
BaseMoney = 32
|
||||||
0,LEADER_Blaine,Gym Leader,100,Battle Gym Leader,Battle victory leader,,Male,,
|
#-------------------------------
|
||||||
0,LEADER_Giovanni,Gym Leader,100,Battle Gym Leader,Battle victory leader,,Male,,
|
[CUEBALL]
|
||||||
0,ELITEFOUR_Lorelei,Elite Four,100,Battle Elite,Battle victory leader,,Female,,
|
Name = Cue Ball
|
||||||
0,ELITEFOUR_Bruno,Elite Four,100,Battle Elite,Battle victory leader,,Male,,
|
Gender = Male
|
||||||
0,ELITEFOUR_Agatha,Elite Four,100,Battle Elite,Battle victory leader,,Female,,
|
BaseMoney = 24
|
||||||
0,ELITEFOUR_Lance,Elite Four,100,Battle Elite,Battle victory leader,,Male,,
|
#-------------------------------
|
||||||
0,CHAMPION,Champion,100,Battle Elite,Battle victory leader,,Male,,
|
[ENGINEER]
|
||||||
|
Name = Engineer
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 48
|
||||||
|
#-------------------------------
|
||||||
|
[FISHERMAN]
|
||||||
|
Name = Fisherman
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[GAMBLER]
|
||||||
|
Name = Gambler
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 72
|
||||||
|
SkillLevel = 32
|
||||||
|
#-------------------------------
|
||||||
|
[GENTLEMAN]
|
||||||
|
Name = Gentleman
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 72
|
||||||
|
#-------------------------------
|
||||||
|
[HIKER]
|
||||||
|
Name = Hiker
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[JUGGLER]
|
||||||
|
Name = Juggler
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[LADY]
|
||||||
|
Name = Lady
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 160
|
||||||
|
SkillLevel = 72
|
||||||
|
#-------------------------------
|
||||||
|
[PAINTER]
|
||||||
|
Name = Painter
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 16
|
||||||
|
#-------------------------------
|
||||||
|
[POKEMANIAC]
|
||||||
|
Name = Poké Maniac
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 64
|
||||||
|
#-------------------------------
|
||||||
|
[POKEMONBREEDER]
|
||||||
|
Name = Pokémon Breeder
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 48
|
||||||
|
#-------------------------------
|
||||||
|
[PROFESSOR]
|
||||||
|
Name = Professor
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
#-------------------------------
|
||||||
|
[ROCKER]
|
||||||
|
Name = Rocker
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 24
|
||||||
|
#-------------------------------
|
||||||
|
[RUINMANIAC]
|
||||||
|
Name = Ruin Maniac
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 48
|
||||||
|
#-------------------------------
|
||||||
|
[SAILOR]
|
||||||
|
Name = Sailor
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[SCIENTIST]
|
||||||
|
Name = Scientist
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 48
|
||||||
|
#-------------------------------
|
||||||
|
[SUPERNERD]
|
||||||
|
Name = Super Nerd
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 48
|
||||||
|
#-------------------------------
|
||||||
|
[TAMER]
|
||||||
|
Name = Tamer
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 40
|
||||||
|
#-------------------------------
|
||||||
|
[BLACKBELT]
|
||||||
|
Name = Black Belt
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[CRUSHGIRL]
|
||||||
|
Name = Crush Girl
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 24
|
||||||
|
#-------------------------------
|
||||||
|
[CAMPER]
|
||||||
|
Name = Camper
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 16
|
||||||
|
#-------------------------------
|
||||||
|
[PICNICKER]
|
||||||
|
Name = Picnicker
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 16
|
||||||
|
#-------------------------------
|
||||||
|
[COOLTRAINER_M]
|
||||||
|
Name = Cool Trainer
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 60
|
||||||
|
#-------------------------------
|
||||||
|
[COOLTRAINER_F]
|
||||||
|
Name = Cool Trainer
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 60
|
||||||
|
#-------------------------------
|
||||||
|
[YOUNGSTER]
|
||||||
|
Name = Youngster
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 16
|
||||||
|
#-------------------------------
|
||||||
|
[LASS]
|
||||||
|
Name = Lass
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 16
|
||||||
|
#-------------------------------
|
||||||
|
[POKEMONRANGER_M]
|
||||||
|
Name = Pokémon Ranger
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 60
|
||||||
|
#-------------------------------
|
||||||
|
[POKEMONRANGER_F]
|
||||||
|
Name = Pokémon Ranger
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 60
|
||||||
|
#-------------------------------
|
||||||
|
[PSYCHIC_M]
|
||||||
|
Name = Psychic
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[PSYCHIC_F]
|
||||||
|
Name = Psychic
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[SWIMMER_M]
|
||||||
|
Name = Swimmer
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 16
|
||||||
|
SkillLevel = 32
|
||||||
|
#-------------------------------
|
||||||
|
[SWIMMER_F]
|
||||||
|
Name = Swimmer
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 16
|
||||||
|
SkillLevel = 32
|
||||||
|
#-------------------------------
|
||||||
|
[SWIMMER2_M]
|
||||||
|
Name = Swimmer
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 16
|
||||||
|
SkillLevel = 32
|
||||||
|
#-------------------------------
|
||||||
|
[SWIMMER2_F]
|
||||||
|
Name = Swimmer
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 16
|
||||||
|
SkillLevel = 32
|
||||||
|
#-------------------------------
|
||||||
|
[TUBER_M]
|
||||||
|
Name = Tuber
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 4
|
||||||
|
SkillLevel = 16
|
||||||
|
#-------------------------------
|
||||||
|
[TUBER_F]
|
||||||
|
Name = Tuber
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 4
|
||||||
|
SkillLevel = 16
|
||||||
|
#-------------------------------
|
||||||
|
[TUBER2_M]
|
||||||
|
Name = Tuber
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 4
|
||||||
|
SkillLevel = 16
|
||||||
|
#-------------------------------
|
||||||
|
[TUBER2_F]
|
||||||
|
Name = Tuber
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 4
|
||||||
|
SkillLevel = 16
|
||||||
|
#-------------------------------
|
||||||
|
[COOLCOUPLE]
|
||||||
|
Name = Cool Couple
|
||||||
|
Gender = Unknown
|
||||||
|
BaseMoney = 72
|
||||||
|
SkillLevel = 48
|
||||||
|
#-------------------------------
|
||||||
|
[CRUSHKIN]
|
||||||
|
Name = Crush Kin
|
||||||
|
Gender = Unknown
|
||||||
|
BaseMoney = 48
|
||||||
|
#-------------------------------
|
||||||
|
[SISANDBRO]
|
||||||
|
Name = Sis and Bro
|
||||||
|
Gender = Unknown
|
||||||
|
BaseMoney = 16
|
||||||
|
SkillLevel = 48
|
||||||
|
#-------------------------------
|
||||||
|
[TWINS]
|
||||||
|
Name = Twins
|
||||||
|
Gender = Unknown
|
||||||
|
BaseMoney = 24
|
||||||
|
#-------------------------------
|
||||||
|
[YOUNGCOUPLE]
|
||||||
|
Name = Young Couple
|
||||||
|
Gender = Unknown
|
||||||
|
BaseMoney = 60
|
||||||
|
SkillLevel = 32
|
||||||
|
#-------------------------------
|
||||||
|
[TEAMROCKET_M]
|
||||||
|
Name = Team Rocket
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[TEAMROCKET_F]
|
||||||
|
Name = Team Rocket
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 32
|
||||||
|
#-------------------------------
|
||||||
|
[ROCKETBOSS]
|
||||||
|
Name = Rocket Boss
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
#-------------------------------
|
||||||
|
[LEADER_Brock]
|
||||||
|
Name = Gym Leader
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Gym Leader
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[LEADER_Misty]
|
||||||
|
Name = Gym Leader
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Gym Leader
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[LEADER_Surge]
|
||||||
|
Name = Gym Leader
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Gym Leader
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[LEADER_Erika]
|
||||||
|
Name = Gym Leader
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Gym Leader
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[LEADER_Koga]
|
||||||
|
Name = Gym Leader
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Gym Leader
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[LEADER_Sabrina]
|
||||||
|
Name = Gym Leader
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Gym Leader
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[LEADER_Blaine]
|
||||||
|
Name = Gym Leader
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Gym Leader
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[LEADER_Giovanni]
|
||||||
|
Name = Gym Leader
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Gym Leader
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[ELITEFOUR_Lorelei]
|
||||||
|
Name = Elite Four
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Elite
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[ELITEFOUR_Bruno]
|
||||||
|
Name = Elite Four
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Elite
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[ELITEFOUR_Agatha]
|
||||||
|
Name = Elite Four
|
||||||
|
Gender = Female
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Elite
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[ELITEFOUR_Lance]
|
||||||
|
Name = Elite Four
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Elite
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
#-------------------------------
|
||||||
|
[CHAMPION]
|
||||||
|
Name = Champion
|
||||||
|
Gender = Male
|
||||||
|
BaseMoney = 100
|
||||||
|
BattleBGM = Battle Elite
|
||||||
|
VictoryME = Battle victory leader
|
||||||
|
|||||||
Reference in New Issue
Block a user