#============================================================================== # 霧雨式スキン変更画面 # 作成者:misty_rain (http://page.freett.com/misty_rain/) # 2006/04/23。 # ウィンドウスキンを変更する画面のスクリプト。簡単に出来ました。 # SkinName配列とSkinSelectName配列の中身を変更してご使用ください。 # ご使用の際は、対応したメニュー画面のスクリプトが必要です。 #============================================================================== class Scene_WindowChange #使用するウィンドウスキンのファイル名。拡張子不要。 SkinName = ["Red","Green","001-Blue01"] #選択させる際の名前。 SkinSelectName = ["赤色","緑色","青色"] #-------------------------------------------------------------------------- # ● オブジェクト初期化 # menu_index : コマンドのカーソル初期位置 #-------------------------------------------------------------------------- def initialize(menu_index = 0) @menu_index = menu_index end #-------------------------------------------------------------------------- # ● メイン処理 #-------------------------------------------------------------------------- def main # コマンドウィンドウを作成 @command_window = Window_Command.new(160, SkinSelectName) @command_window.index = @menu_index @command_window.x = 240 @command_window.y = 240 - (@command_window.height / 2 ) # トランジション実行 Graphics.transition # メインループ loop do # ゲーム画面を更新 Graphics.update # 入力情報を更新 Input.update # フレーム更新 update # 画面が切り替わったらループを中断 if $scene != self break end end # トランジション準備 Graphics.freeze # ウィンドウを解放 @command_window.dispose end #-------------------------------------------------------------------------- # ● フレーム更新 #-------------------------------------------------------------------------- def update # ウィンドウを更新 @command_window.update # コマンドウィンドウがアクティブの場合: update_command を呼ぶ if @command_window.active update_command return end # ステータスウィンドウがアクティブの場合: update_status を呼ぶ if @status_window.active update_status return end end #-------------------------------------------------------------------------- # ● フレーム更新 (コマンドウィンドウがアクティブの場合) #-------------------------------------------------------------------------- def update_command # B ボタンが押された場合 if Input.trigger?(Input::B) # キャンセル SE を演奏 $game_system.se_play($data_system.cancel_se) # メニュー画面に切り替え $scene = Scene_Menu.new(5) return end # C ボタンが押された場合 if Input.trigger?(Input::C) # 決定 SE を演奏 $game_system.se_play($data_system.decision_se) $game_system.windowskin_name = SkinName[@command_window.index] return end end end