#============================================================================== # ■ RGSS3 カテゴリ・項目ヘルプ Ver1.02 by 星潟 #------------------------------------------------------------------------------ # アイテム画面でのカテゴリウィンドウ、装備画面での装備コマンドウィンドウ、 # スキル画面でのスキルタイプ選択ウィンドウに対し # ヘルプウィンドウを連動させます。 # それぞれの項目にアイテムのIDを割り振り、そのアイテムの説明文を以て # その項目の説明文とします。 #============================================================================== # Ver1.01 ヘルプの追従を限定化 # Ver1.02 現時点での最新版のスキル整理に対応 #============================================================================== module ICW_HELP #アイテムカテゴリの項目にヘルプをつけるか? I_FLAG = true #アイテムカテゴリのインデックスに応じた説明文に対応するアイテムIDを指定します。 #(「アイテム・武器・防具・大事な物の順」に、指定したIDのアイテムの説明文を # カテゴリのカーソル移動時にヘルプウィンドウに表示させます) I_ARRAY = [91,92,93,94] #装備コマンドの項目にヘルプをつけるか? E_FLAG = true #装備コマンドのインデックスに応じた説明文に対応するアイテムIDを指定します。 #(「装備変更・最強装備・全て外す」の順に、指定したIDのアイテムの説明文を # コマンドのカーソル移動時にヘルプウィンドウに表示させます) E_ARRAY = [95,96,97] #スキルコマンドの項目にヘルプをつけるか? S_FLAG = true #スキルコマンドのスキルタイプに応じた説明文に対応するアイテムIDを指定します。 #(「スキルタイプ」の順に、指定したIDのアイテムの説明文を # コマンドのカーソル移動時にヘルプウィンドウに表示させます) S_ARRAY = [98,99] #当方のスキル整理スクリプト導入時、整理済のスキルタイプに応じた #説明文に対応するアイテムIDを指定します。 AB_SSS2 = 10 end if ICW_HELP::I_FLAG class Window_ItemCategory < Window_HorzCommand #-------------------------------------------------------------------------- # ヘルプテキスト更新 #-------------------------------------------------------------------------- def update_help #追従を限定。 return unless SceneManager.scene_is?(Scene_Item) #該当する説明文のアイテムデータを取得します。 #そのアイテムの説明文をヘルプウィンドウに設定します。 #何らかの要因により処理不能と判断した場合、ヘルプウィンドウは空欄とします。 itemdata = ICW_HELP::I_ARRAY[self.index] != nil ? $data_items[ICW_HELP::I_ARRAY[self.index]] : nil @help_window.set_item($data_items[ICW_HELP::I_ARRAY[self.index]]) end end end if ICW_HELP::E_FLAG class Window_EquipCommand < Window_HorzCommand #-------------------------------------------------------------------------- # ヘルプテキスト更新 #-------------------------------------------------------------------------- def update_help #追従を限定。 return unless SceneManager.scene_is?(Scene_Equip) #該当する説明文のアイテムデータを取得します。 #そのアイテムの説明文をヘルプウィンドウに設定します。 #何らかの要因により処理不能と判断した場合、ヘルプウィンドウは空欄とします。 itemdata = ICW_HELP::E_ARRAY[self.index] != nil ? $data_items[ICW_HELP::E_ARRAY[self.index]] : nil @help_window.set_item(itemdata) end end end if ICW_HELP::S_FLAG class Window_SkillCommand < Window_Command #-------------------------------------------------------------------------- # ヘルプテキスト更新 #-------------------------------------------------------------------------- def update_help #追従を限定。 return unless SceneManager.scene_is?(Scene_Skill) #現在項目が整理済のスキルタイプであった場合 #該当する説明文のアイテムデータを以てヘルプウィンドウを更新します。 return @help_window.set_item($data_items[ICW_HELP::AB_SSS2]) if ab_sss2_check #該当する説明文のアイテムデータを取得します。 #そのアイテムの説明文をヘルプウィンドウに設定します。 #何らかの要因により処理不能と判断した場合、ヘルプウィンドウは空欄とします。 itemdata = @skill_window && ICW_HELP::S_ARRAY[current_ext - 1] != nil ? $data_items[ICW_HELP::S_ARRAY[current_ext - 1]] : nil @help_window.set_item(itemdata) end #-------------------------------------------------------------------------- # スキル整理導入チェック及び現在の選択項目が整理済か? #-------------------------------------------------------------------------- def ab_sss2_check #スキル整理導入チェックを行う。 #(スキルの整理禁止フラグが読み取れるか否かでチェックを行う) if @ab_sss2_check == nil begin @ab_sss2_check = $data_skills[1].seal_seal? != nil rescue @ab_sss2_check = false end end #スキル整理が導入されていない場合はfalseを返す。 return false unless @ab_sss2_check #スキルウィンドウが存在しない場合はfalseを返す。 return false if @skill_window == nil #選択項目の拡張データが整理済の物であるか否かを返す。 current_ext == AB_SSS2::STI end end class Scene_Skill < Scene_ItemBase #-------------------------------------------------------------------------- # 開始 #-------------------------------------------------------------------------- alias start_icw_help start def start #本来の処理を実行する。 start_icw_help #コマンドウィンドウの状態を元にヘルプウィンドウを更新しておく。 @command_window.update_help end end end