#============================================================================== # ■統合ベーススクリプトD for RGSS3 Ver2.09-β # □作成者 kure # # 併用に関するスクリプト群です # #============================================================================== p "統合ベーススクリプトD" #============================================================================== # ■ Game_Temp #============================================================================== class Game_Temp attr_accessor :use_item_reserve # 使用予約 #-------------------------------------------------------------------------- # ● ログの初期化 #-------------------------------------------------------------------------- def refesh_reserve_log @use_item_reserve = [] end #-------------------------------------------------------------------------- # ● ログの追加 #-------------------------------------------------------------------------- def add_reserve_log(item, id) return unless id @use_item_reserve ||= [] @use_item_reserve[id] = item end #-------------------------------------------------------------------------- # ● 指定アイテムの使用予約が埋まっているか判定 #-------------------------------------------------------------------------- def full_reserved?(item) @use_item_reserve ||= [] #所持数を取得 if item.class == (RPG::Weapon or RPG::Armor) && $kure_integrate_script[:SortOut] num = 1 else num = $game_party.item_number(item) end @use_item_reserve.each{|obj| next unless obj num -= 1 if obj == item } return false if num > 0 return true end end #============================================================================== # ■ Game_Battler #============================================================================== class Game_Battler < Game_BattlerBase #-------------------------------------------------------------------------- # ★ 併用するスクリプトの初期設定 #-------------------------------------------------------------------------- def multi_class_obj ; return [] ; end #拡張職業配列[マルチクラス併用] end #============================================================================== # ■ Game_Actor #============================================================================== class Game_Actor < Game_Battler #-------------------------------------------------------------------------- # ★ 併用するスクリプトの初期設定[マルチクラス併用] #-------------------------------------------------------------------------- def multi_class_note ; return "" ; end #-------------------------------------------------------------------------- # ★ メモ欄を取得できるスキルのID配列を取得(追加定義)[スキルメモライズ併用] #-------------------------------------------------------------------------- def setting_skills if $kure_integrate_script[:Memorize3] skill_list = (memorize_skills | uniq_skills | extra_skills | added_skills) else skill_list = (@skills | added_skills) end return skill_list.select{|skill_id| passive_condition?(skill_id)}.sort end #-------------------------------------------------------------------------- # ◎ 装備の変更(エイリアス再定義)[スキルメモライズ併用] #-------------------------------------------------------------------------- alias k_integrate_before_change_equip change_equip unless $! def change_equip(slot_id, item) k_integrate_before_change_equip(slot_id, item) set_passive_object fix_memorize if $kure_integrate_script[:Memorize3] end end #============================================================================== # ■ Scene_Battle #============================================================================== class Scene_Battle < Scene_Base #-------------------------------------------------------------------------- # ★ 戦闘開始時の拡張処理(追加定義) #-------------------------------------------------------------------------- def battle_start_add_event end #-------------------------------------------------------------------------- # ★ ターン終了時の拡張処理(追加定義) #-------------------------------------------------------------------------- def turn_end_add_event $game_temp.refesh_reserve_log end end #============================================================================== # ■ Window_BattleItem #------------------------------------------------------------------------------ #  バトル画面で、使用するアイテムを選択するウィンドウです。 #============================================================================== class Window_BattleItem < Window_ItemList #-------------------------------------------------------------------------- # ● アイテムを許可状態で表示するかどうか #-------------------------------------------------------------------------- def enable?(item) $game_party.usable?(item) && !$game_temp.full_reserved?(item) end end