#============================================================================== # ■ アイテム選択時にヘルプウィンドウ Ver1.0              By むー #------------------------------------------------------------------------------ # イベントのアイテム選択時にヘルプウィンドウを表示します。 # ヘルプウィンドウを表示する関係上、アイテムウィンドウは下段に移しています。 # おまけで、選択機能にいろいろな条件の指定が可能になっています。 #============================================================================== $moo_item_choice_help = true module MOO_ITEM_CHOICE_HELP #-------------------------------------------------------------------------- # 以下、設定箇所です。 #-------------------------------------------------------------------------- # この機能を使う場合のスイッチ番号 USE_SWITCH = 1 # オフの場合はヘルプウィンドウを出しません。 # 通常のアイテム欄で使用できないものを選択可能にするかどうかのスイッチ番号 ENABLE_SWITCH = 2 # [オンの場合] #  表示される全てのアイテムが選択できます。 # # [オフの場合] #  通常のアイテム欄でグレー文字になっているもの #  (装備品・使用不可アイテム・戦闘のみアイテム)は、 #  表示はされても選択ができません。 # # なお、上記 USE_SWITCH がオフの場合でも機能します。 # USE_SWITCH がオフの場合は、下記 ITEM_KIND に 0 が入りますので、混乱に注意。 # アイテムリストの表示するタイプを格納する変数番号 VIEW_PATTERN = 1 # 0 = キーアイテムのみ # 1 = アイテムのみ # 2 = 武器のみ # 3 = 防具のみ # 4 = キーアイテムと通常アイテム # 5 = 装備品(武器・防具) # 6 = 全て(キーアイテム・通常アイテム・武器・防具) # # (いずれも所持しているものだけが表示対象です) # # イベントのアイテム選択前に指定してください。 # 上記 USE_SWITCH がオフの場合は機能しません。キーアイテムだけになります。 # # VIEW_PATTERN を 1 に指定した場合、 # 変数 1 に 6 を入れてアイテム選択の処理を実行すると、 # 所持している全アイテム・武器・防具が表示されます。 # アイテム種類を格納する変数番号 ITEM_KIND = 2 # 0 = キャンセル # 1 = アイテム(キーアイテム・通常アイテム) # 2 = 武器 # 3 = 防具 # # 選択したアイテムの種類を格納する変数です。 # 防具を選んだら、この変数に 3 が入ります。 #-------------------------------------------------------------------------- # ここまで。 #-------------------------------------------------------------------------- #-------------------------------------------------------------------------- # ○ 機能使用スイッチ状況の取得 #-------------------------------------------------------------------------- def moo_item_choice_help_use $game_switches[USE_SWITCH] end #-------------------------------------------------------------------------- # ○ 選択可能・不可能条件の取得 #-------------------------------------------------------------------------- def moo_item_choice_help_enable $game_switches[ENABLE_SWITCH] end #-------------------------------------------------------------------------- # ○ 表示タイプの取得 #-------------------------------------------------------------------------- def moo_item_choice_help_pattern $game_variables[VIEW_PATTERN] end #-------------------------------------------------------------------------- # ○ 選択アイテムの種類を変数に格納 #-------------------------------------------------------------------------- def moo_item_choice_help_kind(kind = 0) $game_variables[ITEM_KIND] = kind end end #============================================================================== # ■ Window_ItemList #------------------------------------------------------------------------------ #  アイテム画面で、所持アイテムの一覧を表示するウィンドウです。 #============================================================================== class Window_ItemList < Window_Selectable include MOO_ITEM_CHOICE_HELP #-------------------------------------------------------------------------- # ● アイテムをリストに含めるかどうか #-------------------------------------------------------------------------- def include?(item) case @category when :item item.is_a?(RPG::Item) && !item.key_item? when :weapon item.is_a?(RPG::Weapon) when :armor item.is_a?(RPG::Armor) when :key_item item.is_a?(RPG::Item) && item.key_item? # 以下追加 ---------------------------------------------- when :all_item item.kind_of?(RPG::Item) when :all_equip item.kind_of?(RPG::Weapon) || item.kind_of?(RPG::Armor) when :all_kind item != nil # ここまで ---------------------------------------------- else false end end #-------------------------------------------------------------------------- # ◎ アイテムを許可状態で表示するかどうか #-------------------------------------------------------------------------- alias moo_item_choice_help_enable? enable? def enable?(item) # アイテム選択ウィンドウかつ全てを選択できるようなスイッチ状況だった場合 if @moo_item_choice_help && moo_item_choice_help_enable # 選択可能な状態で返す return true end # 以下通常処理 moo_item_choice_help_enable?(item) end end #============================================================================== # ■ Window_KeyItem #------------------------------------------------------------------------------ #  イベントコマンド[アイテム選択の処理]に使用するウィンドウです。 #============================================================================== class Window_KeyItem < Window_ItemList #-------------------------------------------------------------------------- # ● ウィンドウ位置の更新 #-------------------------------------------------------------------------- def update_placement # アイテム選択ウィンドウを下段へ移動(機能を使う使わないにかかわらず) self.y = Graphics.height - height end #-------------------------------------------------------------------------- # ● 入力処理の開始 #-------------------------------------------------------------------------- def start # アイテム選択ウィンドウであるフラグ @moo_item_choice_help = true # 本機能を使うか否か if moo_item_choice_help_use # ヘルプウィンドウの表示 @help_window = Window_Help.new @help_window.show # リストに並べるアイテムの種類を指定 self.category = :key_item if moo_item_choice_help_pattern == 0 self.category = :item if moo_item_choice_help_pattern == 1 self.category = :weapon if moo_item_choice_help_pattern == 2 self.category = :armor if moo_item_choice_help_pattern == 3 self.category = :all_item if moo_item_choice_help_pattern == 4 self.category = :all_equip if moo_item_choice_help_pattern == 5 self.category = :all_kind if moo_item_choice_help_pattern == 6 else # 機能を使わない場合は通常処理 self.category = :key_item end # 以下通常処理 update_placement refresh select(0) open activate end #-------------------------------------------------------------------------- # ◎ 決定時の処理 #-------------------------------------------------------------------------- alias moo_item_choice_help_on_ok on_ok def on_ok # アイテム選択ウィンドウであるフラグを解除 @moo_item_choice_help = false # 本機能を使っている場合 if moo_item_choice_help_use # ヘルプウィンドウを閉じる @help_window.dispose # 選択アイテム種類を変数に格納 moo_item_choice_help_kind(1) if item.kind_of?(RPG::Item) moo_item_choice_help_kind(2) if item.kind_of?(RPG::Weapon) moo_item_choice_help_kind(3) if item.kind_of?(RPG::Armor) end # 以下通常処理 moo_item_choice_help_on_ok end #-------------------------------------------------------------------------- # ◎ キャンセル時の処理 #-------------------------------------------------------------------------- alias moo_item_choice_help_on_cancel on_cancel def on_cancel # アイテム選択ウィンドウであるフラグを解除 @moo_item_choice_help = false # 本機能を使っている場合 if moo_item_choice_help_use # ヘルプウィンドウを閉じる @help_window.dispose # 選択アイテム種類を0(キャンセル)にする moo_item_choice_help_kind(0) end # 以下通常処理 moo_item_choice_help_on_cancel end end