#============================================================================== # ■ RGSS3 アイテム引き継ぎ ver 1.01 #------------------------------------------------------------------------------ #  配布元: # 白の魔 http://izumiwhite.web.fc2.com/ # #  利用規約: # RPGツクールVX Aceの正規の登録者のみご利用になれます。 # 利用報告・著作権表示とかは必要ありません。 # 改造もご自由にどうぞ。 # 何か問題が発生しても責任は持ちません。 #============================================================================== #-------------------------------------------------------------------------- # ★ 初期設定。 # 各引き継ぎ項目の設定 #-------------------------------------------------------------------------- module WD_iteminherit_ini Item_flag = true #アイテムの引き継ぎをする場合はtrue Weapon_flag = true #武器の引き継ぎをする場合はtrue Armor_flag = true #防具の引き継ぎをする場合はtrue Gold_flag = true #所持金の引き継ぎをする場合はtrue end module WD_iteminherit #-------------------------------------------------------------------------- # ● アイテム類の退避 #-------------------------------------------------------------------------- def save_items(n=0) save_item(n) if WD_iteminherit_ini::Item_flag save_weapon(n) if WD_iteminherit_ini::Weapon_flag save_armor(n) if WD_iteminherit_ini::Armor_flag save_gold(n) if WD_iteminherit_ini::Gold_flag end #-------------------------------------------------------------------------- # ● アイテム類を戻す #-------------------------------------------------------------------------- def load_items(n=0) load_item(n) if WD_iteminherit_ini::Item_flag load_weapon(n) if WD_iteminherit_ini::Weapon_flag load_armor(n) if WD_iteminherit_ini::Armor_flag load_gold(n) if WD_iteminherit_ini::Gold_flag end #-------------------------------------------------------------------------- # ● アイテムの退避 #-------------------------------------------------------------------------- def save_item(n) $game_system.i_save_num = [] if $game_system.i_save_num == nil $game_system.i_save_num[n] = [] $data_items.each do |item| if item $game_system.i_save_num[n][item.id] = $game_party.item_number(item) $game_party.gain_item(item, -$game_party.item_number(item)) end end end #-------------------------------------------------------------------------- # ● 武器の退避 #-------------------------------------------------------------------------- def save_weapon(n) $game_system.w_save_num = [] if $game_system.w_save_num == nil $game_system.w_save_num[n] = [] $data_weapons.each do |item| if item $game_system.w_save_num[n][item.id] = $game_party.item_number(item) $game_party.gain_item(item, -$game_party.item_number(item)) end end end #-------------------------------------------------------------------------- # ● 防具の退避 #-------------------------------------------------------------------------- def save_armor(n) $game_system.a_save_num = [] if $game_system.a_save_num == nil $game_system.a_save_num[n] = [] $data_armors.each do |item| if item $game_system.a_save_num[n][item.id] = $game_party.item_number(item) $game_party.gain_item(item, -$game_party.item_number(item)) end end end #-------------------------------------------------------------------------- # ● 所持金の退避 #-------------------------------------------------------------------------- def save_gold(n) $game_system.g_save_num = [] if $game_system.g_save_num == nil $game_system.g_save_num[n] = $game_party.gold $game_party.gain_gold(-$game_party.gold) end #-------------------------------------------------------------------------- # ● アイテムを戻す #-------------------------------------------------------------------------- def load_item(n) $game_system.i_save_num = [] if $game_system.i_save_num == nil $data_items.each do |item| if item if $game_system.i_save_num[n].size > item.id if $game_system.i_save_num[n][item.id] > 0 $game_party.gain_item(item, $game_system.i_save_num[n][item.id]) end end end end end #-------------------------------------------------------------------------- # ● 武器を戻す #-------------------------------------------------------------------------- def load_weapon(n) $game_system.w_save_num = [] if $game_system.w_save_num == nil $data_weapons.each do |item| if item if $game_system.w_save_num[n].size > item.id if $game_system.w_save_num[n][item.id] > 0 $game_party.gain_item(item, $game_system.w_save_num[n][item.id]) end end end end end #-------------------------------------------------------------------------- # ● 防具を戻す #-------------------------------------------------------------------------- def load_armor(n) $game_system.a_save_num = [] if $game_system.a_save_num == nil $data_armors.each do |item| if item if $game_system.a_save_num[n].size > item.id if $game_system.a_save_num[n][item.id] > 0 $game_party.gain_item(item, $game_system.a_save_num[n][item.id]) end end end end end #-------------------------------------------------------------------------- # ● 所持金を戻す #-------------------------------------------------------------------------- def load_gold(n) $game_system.g_save_num = [] if $game_system.g_save_num == nil $game_system.g_save_num[n] = 0 if $game_system.g_save_num[n] == nil $game_party.gain_gold($game_system.g_save_num[n]) end end class Game_Interpreter include WD_iteminherit end class Game_System #-------------------------------------------------------------------------- # ● 公開インスタンス変数 #-------------------------------------------------------------------------- attr_accessor :i_save_num attr_accessor :w_save_num attr_accessor :a_save_num attr_accessor :g_save_num #-------------------------------------------------------------------------- # ● オブジェクト初期化 #-------------------------------------------------------------------------- alias wd_orig_initialize013 initialize def initialize wd_orig_initialize013 @i_save_num = [] @w_save_num = [] @a_save_num = [] @g_save_num = [] end end