Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Simple Stupid Bulk Change (for RPG::BaseItem)
- # by Heartbreak61
- # Difficulty : Medium, Hard
- %Q(
- WARNING: USE AT YOUR OWN RISK!
- TIDAK UNTUK PENGGUNA RM VX ACE YANG BELUM MEMAHAMI RGSS3 SAMA SEKALI!
- * Cara pakai:
- [:skills, 131..140, "hit_type = 2" ]
- akan mengubah "Hit Type" skill dengan id 131~140 menjadi "Magical"
- * Untuk memasukkan value berupa string gunakan tanda '\' sebelum tanda kutip (")
- contoh:
- [:actors, 1..3, "name = \"My Character\""]
- akan mengubah nama actor dengan id 1~3 menjadi "My Character"
- * parameter untuk data yang bisa digunakan:
- :actors, :classes, :skills, :items, :weapons, :armors, :enemies, :states
- * Keterangan lebih lanjut lihat Help File >> RGSS Reference Manual >> Game Library
- RPGVXAce Data Structure >> RPG::BaseItem
- untuk tentang Attribute apa saja yang bisa diubah
- * Setelah selesai melakukan Bulk Changing, reload project untuk melihat perubahan
- di RM Editor
- * SANGAT dianjurkan untuk
- menggunakan block comment (ctrl + A kemudian ctrl + Q) atau
- mengganti value id range menjadi 0 atau
- mengganti value command menjadi ""
- pada script ini setelah melakukan Bulk Changing!
- Script ini akan melakukan overwrite terus-menerus pada data anda setiap game
- mulai dijalankan. Jadi apabila anda telah melakukan edit manual dan anda
- lupa melakukan salah satu dari 3 poin di atas, ada kemungkinan data anda akan
- di overwrite kembali dengan metode Bulk Changing!
- * Thanks to TheoAllen for the idea
- )
- module HBK
- @bulk_change = [
- #[data, id range, command]
- [:actors, 0, ""], # jangan lupa koma!
- [:classes, 0, ""], # koma!
- [:skills, 0, ""], #koma!
- [:items, 0, ""],
- [:weapons, 0, ""],
- [:armors, 0, ""],
- [:enemies, 0, ""],
- [:states, 0, ""], # koma!
- #-----------------------------------------------------------------------------
- ]
- def self.bulk_change;@bulk_change;end
- end
- module DataManager
- class << self
- alias bulk_change_load_database load_database
- end
- def self.load_database
- bulk_change_load_database
- initiate_bulk_change
- end
- def self.initiate_bulk_change
- ary = HBK.bulk_change
- ary.each {|n|
- next if n.nil? || n[1] == 0 || n[1].nil? || n[2] == "" || n[2].nil?
- if n[1].is_a?(Fixnum)
- id == n[1]
- run_bulk_change(n[0], id, n[2])
- elsif n[1].is_a?(Range)
- n[1].each { |id| run_bulk_change(n[0], id, n[2]) }
- end
- }
- end
- def self.run_bulk_change(data, id, command)
- if data == :actors
- str = "$data_actors[#{id}]."
- str += command
- eval(str) rescue nil
- save_data($data_actors, "Data/Actors.rvdata2")
- elsif data == :classes
- str = "$data_classes[#{id}]."
- str += command
- eval(str) rescue nil
- save_data($data_classes, "Data/Classes.rvdata2")
- elsif data == :skills
- str = "$data_skills[#{id}]."
- str += command
- eval(str) rescue nil
- save_data($data_skills, "Data/Skills.rvdata2")
- elsif data == :items
- str = "$data_items[#{id}]."
- str += command
- eval(str) rescue nil
- save_data($data_items, "Data/Items.rvdata2")
- elsif data == :weapons
- str = "$data_weapons[#{id}]."
- str += command
- eval(str) rescue nil
- save_data($data_weapons, "Data/Weapons.rvdata2")
- elsif data == :armors
- str = "$data_armors[#{id}]."
- str += command
- eval(str) rescue nil
- save_data($data_armors, "Data/Armors.rvdata2")
- elsif data == :enemies
- str = "$data_enemies[#{id}]."
- str += command rescue nil
- eval(str) rescue nil
- save_data($data_enemies, "Data/Enemies.rvdata2")
- elsif data == :states
- str = "$data_states[#{id}]."
- str += command
- eval(str) rescue nil
- save_data($data_states, "Data/States.rvdata2")
- end
- end
- end #DataManager
Advertisement
Add Comment
Please, Sign In to add comment