class TyranoDsl::ExportGame::ElementsWriters::CharactersWriter
Write things where all characters are implied
Public Instance Methods
write(world)
click to toggle source
@param [TyranoDsl::Elements::World] world @return [Array]
# File lib/tyrano_dsl/export_game/elements_writers/characters_writer.rb, line 12 def write(world) log {'Writing characters'} chara_define_content = '' world.characters.values.collect do |character| chara_define_content << "[chara_new name=\"#{character.name}\" jname=\"#{character.name}\" storage=\"chara\/#{character.default_stance.short_target_file_name}\"]\n" end chara_define_content << "\n" chara_define_content << "[iscript]\n" world.variables.values.collect do |variable| chara_define_content << "f['#{variable.target_name}']=#{variable.initial_value};\n" end chara_define_content << "[endscript]\n" builder_config_content = {} world.characters.values.each do |character| builder_config_content[character.name] = character.index end [ TyranoDsl::ExportGame::FileActions::CreateFile.new( File.join('data', 'scenario', 'system', 'chara_define.ks'), chara_define_content ), TyranoDsl::ExportGame::FileActions::JsonPatch.new( 'builder_config.json', ['map_chara'], builder_config_content ) ] end