#============================================================================== # ■ VX-RGSS2-18 調合屋 [シーンクラス] by Claimh #============================================================================== #============================================================================== # ■ Scene_Mixture #============================================================================== class Scene_Mixture < Scene_Base include Mixture::MesCmd #-------------------------------------------------------------------------- # ● 開始処理 #-------------------------------------------------------------------------- def start super create_menu_background @select_window = Window_MixtureCmd.new @help_window = Window_Help.new @gold_window = Window_Gold.new(384, 56) # @list_window = Window_MixtureList.new @info_window = Window_MixtureInfo.new @number_window = Window_MixtureNumber.new @mes_window = Window_MixtureCaution.new # @list_window.help_window = @help_window @list_window.info_window = @info_window @help_window.set_text("") end #-------------------------------------------------------------------------- # ● 終了処理 #-------------------------------------------------------------------------- def terminate super dispose_menu_background @select_window.dispose @help_window.dispose @gold_window.dispose @list_window.dispose @info_window.dispose @number_window.dispose @mes_window.dispose end #---------------------------------------------------------------------------- # ● フレーム更新 #---------------------------------------------------------------------------- def update if @mes_window.visible @mes_window.update elsif @select_window.active update_select elsif @list_window.active update_list elsif @number_window.visible update_num end end #---------------------------------------------------------------------------- # ● フレーム更新 #---------------------------------------------------------------------------- def update_select @select_window.update if Input.trigger?(Input::B) Sound.play_cancel $scene = Scene_Map.new elsif Input.trigger?(Input::C) Sound.play_decision case @select_window.index when 0 @select_window.active = false @list_window.active = true @list_window.index = 0 when 1 $scene = Scene_Map.new end end end #---------------------------------------------------------------------------- # ● フレーム更新 #---------------------------------------------------------------------------- def update_list @list_window.update if Input.trigger?(Input::B) Sound.play_cancel @list_window.index = -1 @list_window.active = false @select_window.active = true @help_window.set_text("") elsif Input.trigger?(Input::C) unless @list_window.data.enable? Sound.play_buzzer @mes_window.set_text(@list_window.data.message) return end Sound.play_decision @list_window.active = false @number_window.set(@list_window.data) end end #---------------------------------------------------------------------------- # ● フレーム更新 #---------------------------------------------------------------------------- def update_num @number_window.update @info_window.num = @number_window.number if Input.trigger?(Input::B) Sound.play_cancel @number_window.visible = false @list_window.active = true @list_window.visible = true @info_window.refresh_num elsif Input.trigger?(Input::C) Mixture::SUCCESS_SE.nil? ? Sound.play_shop : Mixture::SUCCESS_SE.play @mes_window.set_text(M_S_C, @list_window.data.obj) @list_window.data.execute(@number_window.number) @info_window.refresh_num @number_window.visible = false @list_window.active = true @list_window.visible = true @list_window.data_refresh @gold_window.refresh end end end