blucalm

Tsuki-Custom DM may version

Jan 30th, 2013
1,081
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 5.62 KB | None | 0 0
  1. =begin
  2. ==============================================================================
  3.  ** Custom DataManager
  4.  Author: Tsukihime
  5.  Version: 1.0
  6.  Date: May 18, 2012
  7. ------------------------------------------------------------------------------
  8.  ** Change log
  9.  1.0 May 18
  10.    -Initial release
  11. ------------------------------------------------------------------------------
  12.  This script provides the functionality for saving and loading custom
  13.  data to save files.
  14. ==============================================================================
  15. =end
  16. $imported = {} if $imported.nil?
  17. $imported["Tsuki_CustomDataManager"] = true
  18.  
  19. module DataManager
  20.  
  21.   class << self
  22.     alias custom_data_load_normal_database load_normal_database
  23.     alias custom_data_make_save_contents make_save_contents
  24.     alias custom_data_extract_save_contents extract_save_contents
  25.   end
  26.  
  27.   def self.load_normal_database
  28.     custom_data_load_normal_database
  29.     load_custom_database
  30.   end
  31.  
  32.   #--------------------------------------------------------------------------
  33.   # * Initialize custom data
  34.   #--------------------------------------------------------------------------
  35.   def self.load_custom_database
  36.     $custom_actors         = [] if $custom_actors.nil?
  37.     $custom_classes        = [] if $custom_classes.nil?
  38.     $custom_skills         = [] if $custom_skills.nil?    
  39.     $custom_items          = [] if $custom_items.nil?
  40.     $custom_weapons        = [] if $custom_weapons.nil?
  41.     $custom_armors         = [] if $custom_armors.nil?
  42.     $custom_enemies        = [] if $custom_enemies.nil?
  43.     $custom_troops         = [] if $custom_troops.nil?
  44.     $custom_states         = [] if $custom_states.nil?
  45.     $custom_animations     = [] if $custom_animations.nil?
  46.     $custom_tilesets       = [] if $custom_tilesets.nil?
  47.     $custom_common_events  = [] if $custom_common_events.nil?
  48.     $custom_mapinfos       = {} if $custom_mapinfos.nil?
  49.     $custom_system  = RPG::System.new if $custom_system.nil?
  50.   end
  51.  
  52.   #--------------------------------------------------------------------------
  53.   # * Merge custom data with game data when saving
  54.   #--------------------------------------------------------------------------
  55.   def self.make_save_contents
  56.     contents = custom_data_make_save_contents
  57.     contents = contents.merge(make_custom_contents)
  58.     contents
  59.   end
  60.  
  61.   #--------------------------------------------------------------------------
  62.   # * Save custom data
  63.   #--------------------------------------------------------------------------
  64.   def self.make_custom_contents
  65.     contents = {}
  66.     contents[:custom_actors]          = $custom_actors
  67.     contents[:custom_classes]         = $custom_classes
  68.     contents[:custom_skills]          = $custom_skills
  69.     contents[:custom_items]         =   $custom_items
  70.     contents[:custom_weapons]         = $custom_weapons
  71.     contents[:custom_armors]          = $custom_armors
  72.     contents[:custom_enemies]         = $custom_enemies
  73.     contents[:custom_troops]          = $custom_troops
  74.     contents[:custom_states]          = $custom_states
  75.     contents[:custom_animations]      = $custom_animations
  76.     contents[:custom_tilesets]      =   $custom_tilesets
  77.     contents[:custom_common_events] =   $custom_common_events
  78.     contents[:custom_system]        = $custom_system
  79.     contents[:custom_mapinfos]      =   $custom_mapinfos
  80.     contents
  81.   end
  82.  
  83.   #--------------------------------------------------------------------------
  84.   # * Modified data load from save file to extract custom data
  85.   #--------------------------------------------------------------------------
  86.   def self.extract_save_contents(contents)
  87.     custom_data_extract_save_contents(contents)
  88.     extract_custom_contents(contents)
  89.     merge_custom_contents
  90.   end
  91.  
  92.   #--------------------------------------------------------------------------
  93.   # * Load custom data
  94.   #--------------------------------------------------------------------------
  95.   def self.extract_custom_contents(contents)
  96.     $custom_actors         = contents[:custom_actors]
  97.     $custom_classes        = contents[:custom_classes]
  98.     $custom_skills         = contents[:custom_skills]
  99.     $custom_items          = contents[:custom_items]
  100.     $custom_weapons        = contents[:custom_weapons]
  101.     $custom_armors         = contents[:custom_armors]
  102.     $custom_enemies        = contents[:custom_enemies]
  103.     $custom_troops         = contents[:custom_troops]
  104.     $custom_states         = contents[:custom_states]
  105.     $custom_animations     = contents[:custom_animations]
  106.     $custom_tilesets       = contents[:custom_tilesets]
  107.     $custom_common_events  = contents[:custom_common_events]
  108.     $custom_system         = contents[:custom_system]
  109.     $custom_mapinfos       = contents[:custom_mapinfos]
  110.   end
  111.  
  112.   #--------------------------------------------------------------------------
  113.   # * Merge custom data with default database data
  114.   #--------------------------------------------------------------------------
  115.   def self.merge_custom_contents
  116.     $data_actors.concat        ($custom_actors)
  117.     $data_classes.concat       ($custom_classes)
  118.     $data_skills.concat        ($custom_skills)
  119.     $data_items.concat         ($custom_items)
  120.     $data_weapons.concat       ($custom_weapons)
  121.     $data_armors.concat        ($custom_armors)
  122.     $data_enemies.concat       ($custom_enemies)
  123.     $data_troops.concat        ($custom_troops)
  124.     $data_states.concat        ($custom_states)
  125.     $data_animations.concat    ($custom_animations)
  126.     $data_tilesets.concat      ($custom_tilesets)
  127.     $data_common_events.concat ($custom_common_events)
  128.     $data_mapinfos.merge       ($custom_mapinfos)
  129.   end
  130. end
Advertisement
Add Comment
Please, Sign In to add comment