#============================================================================== # ■ RGSS3 アイテム使用対象制限解除 Ver1.01 by 星潟 #------------------------------------------------------------------------------ # 対象:使用者のアイテム・スキルについて # メニュー画面から使用する際、対象の制限を消去したり # 使用者と対象を一致させるようにします。 # (デフォルトでは薬効果が高いキャラクターが自動選出されます) #============================================================================== #アイテム・スキルのメモ欄に #下で設定する単語を記入する事で #メニュー画面からの使用に限り #使用者にのみ効果のあるアイテムから #味方単体に効果のあるアイテムに変化します。 module M_I_LB #アイテム・スキルのメモ欄に記入する制限解除ワードを設定します。 WORD1 = "メニュー時制限なし" #アイテム・スキルのメモ欄に記入する制限解除ワードを設定します。 WORD2 = "メニュー時使用者厳密化" end class Scene_ItemBase < Scene_MenuBase #-------------------------------------------------------------------------- # アイテムの使用者を取得 #-------------------------------------------------------------------------- alias user_m_i_lb user def user if item && item.item_target_self_in_menu && item.for_user? $game_party.members[@actor_window.index] else user_m_i_lb end end end class Window_MenuActor < Window_MenuStatus #-------------------------------------------------------------------------- # アイテムのためのカーソル位置設定 #-------------------------------------------------------------------------- alias select_for_item_m_i_lb select_for_item def select_for_item(item) if item && item.for_user? && item.item_target_self_in_menu_total #念の為 @cursor_all = item.for_all? if @cursor_all select(0) else select_last end else select_for_item_m_i_lb(item) end end end class RPG::UsableItem < RPG::BaseItem #-------------------------------------------------------------------------- # メニュー時制限なし #-------------------------------------------------------------------------- def anti_menu_item_target_limit (@anti_menu_item_target_limit ||= /<#{M_I_LB::WORD1}>/ =~ note ? 1 : 0) == 1 end #-------------------------------------------------------------------------- # メニューでも対象が使用者なら使用者で判定 #-------------------------------------------------------------------------- def item_target_self_in_menu (@item_target_self_in_menu ||= /<#{M_I_LB::WORD2}>/ =~ note ? 1 : 0) == 1 end #-------------------------------------------------------------------------- # メニューでも対象が使用者なら使用者で判定(総合) #-------------------------------------------------------------------------- def item_target_self_in_menu_total anti_menu_item_target_limit or item_target_self_in_menu end end