#=========================================================================== # ◆ A1 Scripts ◆ # ゲームオプション:設定項目(RGSS3) # # バージョン : 1.00 (2011/12/15) # 作者 : A1 # URL     : http://a1tktk.web.fc2.com/ #--------------------------------------------------------------------------- # 機能: # ・オプション設定を実装します #--------------------------------------------------------------------------- # 更新履歴   :2011/12/15 Ver1.00 リリース #--------------------------------------------------------------------------- # 設置場所 #  RGSS3用A1共通スクリプトより下 # # 必要スクリプト # RGSS3用A1共通スクリプト # ゲームオプション:本体 # (ゲームオプション:ウィンドウカラー) # (ゲームオプション:ウィンドウスキン) #--------------------------------------------------------------------------- # 使い方 # 設定項目に記述 # 必要があれば別途スクリプトを記述 # # ※項目と値を選択して設定するタイプのオプションは #  この設定項目のみで実現できます #============================================================================== $imported ||= {} $imported["A1_GameOption"] = true if $imported["A1_Common_Script"] #============================================================================== # ■ 設定項目 #============================================================================== class Game_Option #-------------------------------------------------------------------------- # オプション定義の「command」をスクリプトで記述する場合 # オプション定義よりも上位に記述 #-------------------------------------------------------------------------- # ○ ウィンドウスキン用コマンド作成 #-------------------------------------------------------------------------- def self.get_skin_list command = [] Dir::glob("Graphics/System/Window*.*").each {|f| case File::extname(f) when "png", "bmp", "jpg"; next end file_name = File::basename(f, ".*") name = file_name.gsub("Window","") name = "デフォルト" if name.empty? skin = {"name" => name, "value" => file_name, "method" => "change_skin" } command.push(skin) } return command end #-------------------------------------------------------------------------- # オプション定義「command」用ハッシュの配列 # "name" : 画面に表示される名称 # "value" : オプションに設定する値 # "method": カーソル移動時に呼び出されるメソッド名 # メソッド名を記述した場合「Scene_Option」クラス内にメソッドを作成 #-------------------------------------------------------------------------- # ○ コマンド定義 #-------------------------------------------------------------------------- COMMANDS = [ { "name" => "ON", "value" => true, }, { "name" => "OFF", "value" => false, } ] #-------------------------------------------------------------------------- # オプション定義 # "name" : 画面に表示される名称 # "key" : オプションを保存・読込するためのキー # "command" : オプションの設定項目ハッシュの配列 # "default" : オプションのデフォルト値 # "variable" : オプションの値を反映させる変数名 # "method" : 項目選択時に呼び出されるメソッド名 # メソッド名を記述した場合「Scene_Option」クラス内にメソッドを作成 # "help" : オプションの説明 #-------------------------------------------------------------------------- # ○ オプション定義 #-------------------------------------------------------------------------- OPTIONS = [ { "name" => "ウィンドウカラー", "method" => "set_window_color", "key" => "window_color", "default" => Tone.new(-34, 0, 68), "variable" => "$game_system.window_tone", "help" => "ウィンドウのカラーを設定します", }, { "name" => "ウィンドウスキン", "command" => get_skin_list, "key" => "window_skin", "default" => "Window", "help" => "ウィンドウスキンを設定します", }, { "name" => "オプション終了", "method" => :end_option, "help" => "前の画面に戻ります", } ] end end