Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #==============================================================================
- # ■ 「SIMPLE STUPID」 Export EXP & Param to CSV ver 0.60
- # by HBK
- # Requires: N/A
- # Rewrites method: N/A
- # Aliases method:
- # Data_Manager#self.load_database
- #
- #==============================================================================
- # CHANGELOG
- # - ver0.60 2013.02.05 Started the script and finished
- #==============================================================================
- # INTRODUCTION
- # - Export tabel exp dan parameter ke bentuk file .csv untuk memudahkan
- # Databasing
- #==============================================================================
- # INSTRUCTION
- # - Taruh di bawah ▼ Materials & di atas ▼ Main Process
- #==============================================================================
- if true # ganti jadi false kalo ga mau jalanin script ini
- module HBK
- module Export
- # export exp?
- ExpTable = true
- ExpTableUseHeader = true
- # export parameter table?
- ParamTable = true
- ParamTableUseHeader = true
- # suffix untuk nama file
- ExpTableNameSuffix = "_exp"
- ParamTableNameSuffix = "_param"
- # tambah date di akhir nama file?
- Date = true # false akan melakukan overwrite apabila ada file dengan nama sama
- # format dapat dilihat di Time class strftime format
- # format default " %Y-%m-%d %H%M%S" akan meberikan suffix
- # " 2012-12-21 235959" pada akhir nama file
- DateFormat = " %Y-%m-%d %H%M%S"
- # export directory
- Dir = "Data/Export/"
- end
- end
- module DataManager
- class << self
- alias hbk_export_table_init init
- end
- def self.init
- hbk_export_table_init
- hbk_export_class_tables
- end
- def self.hbk_export_class_tables
- return unless HBK::Export::ExpTable
- ($data_classes).each {|obj|
- next unless obj
- obj.check_export_dir(HBK::Export::Dir)
- obj.export_exp_table($data_classes.size)
- obj.export_param_table($data_classes.size)
- }
- end
- end
- class RPG::Class < RPG::BaseItem
- def check_export_dir path
- Dir.mkdir(path) unless Dir.exist?(path)
- end
- def export_exp_table(size)
- n = make_exp_table_file_name(size)
- if FileTest.exist?(n)
- write_exp_value(File.open(n,"w"))
- else
- write_exp_value(File.new(n, "w"))
- end
- end
- def export_param_table(size)
- n = make_exp_table_param_name(size)
- if FileTest.exist?(n)
- write_param_value(File.open(n,"w"))
- else
- write_param_value(File.new(n, "w"))
- end
- end
- def make_exp_table_file_name(size)
- dir = HBK::Export::Dir
- length = (size+1)%10
- suffix = HBK::Export::ExpTableNameSuffix
- fullname = sprintf("%0#{length}d",@id)+" #{@name.downcase}#{suffix}"
- if HBK::Export::Date
- return dir+fullname+Time.now.strftime("#{HBK::Export::DateFormat}")+".csv"
- else
- return dir+fullname+".csv"
- end
- end
- def make_exp_table_param_name(size)
- dir = HBK::Export::Dir
- length = (size+1)%10
- suffix = HBK::Export::ParamTableNameSuffix
- fullname = sprintf("%0#{length}d",@id)+" #{@name.downcase}#{suffix}"
- if HBK::Export::Date
- return dir+fullname+Time.now.strftime("#{HBK::Export::DateFormat}")+".csv"
- else
- return dir+fullname+".csv"
- end
- end
- def write_exp_value(file)
- s = "#{@name.upcase}\n"
- s += "LEVEL;EXP;TOTAL\n" if HBK::Export::ExpTableUseHeader
- c = 0
- t = 0
- (1..99).each {|l|
- t = exp_for_level(l)
- s+="#{l};#{t-c};#{t}\n"
- c = t
- }
- file.write(s)
- file.close
- end
- def write_param_value(file)
- s = "#{@name.upcase}\n"
- s += "LEVEL;MHP;MMP;ATK;DEF;MAT;MDF;AGI;LUK\n" if HBK::Export::ParamTableUseHeader
- (1..99).each{|l|
- s+="#{l};"
- (0..8).each{|p|
- s+="#{@params[p,l]};"
- }
- s+="\n"
- }
- file.write(s)
- file.close
- end
- end
- $imported = {} if $imported.nil?
- $imported["HBK_SSEEPTC"] = 0.60
- end
Advertisement
Add Comment
Please, Sign In to add comment