#============================================================================== # 「オリジナルメニューコマンド」(ACE) ver.1.0 # 製作者:奈々(なな) # へぷたなすくろーる http://heptanas.mamagoto.com/ # # ◇使用規約 # 使用される場合はスクリプト作成者として「奈々」を明記して下さい。 # このスクリプトを改変したり、改変したものを配布するなどは自由ですが # その場合も元のスクリプトの作成者として名前は載せて下さい。 # その他、詳しい利用規約はブログを参照して下さい。 # #------------------------------------------------------------------------------ # # コモンイベントを利用した、独自のメニューコマンドを作成できます。 # 仲間との会話やアイテム合成など、自由度の高いコマンドを自作可能です。 # # 使い方は、まず初期設定でオリジナルコマンドを作成します。 # コモンイベントの指定と、コマンド名や条件スイッチなどの設定をします。 # 次にコモンイベントを作りこんで、コマンドの中身となる処理を作成します。 # 設定により、マップ画面に移行するか、メニュー画面のまま処理するか選択可能です。 # # 最後にオリジナルコマンドをメニュー画面に追加します。 # これは、別の素材である「簡単コマンドカスタム(Ver.1.1~)」を使います。 # 別途ブログよりダウンロードして、説明を読んでご利用下さい。 # #============================================================================== #◇初期設定 module Nana module OMC C = [] #消したり変えたりしないで下さい #オリジナルコマンドの追加 #C[コマンド番号] = [コモンEV番号, "コマンド名", 条件スイッチ番号, 起動モード] #条件スイッチ番号は、指定スイッチがonならコマンドが有効に(0で常時有効) #起動モードはtrueでマップ起動、falseでメニュー起動 C[10] = [34, "Settings", 0, true] C[11] = [29, "Resistance", 0, true] C[12] = [31, "Masturbation", 0, true] #メニューへの反映には「簡単コマンドカスタム」スクリプトで設定します end end #============================================================================== # ■ Window_MenuCommand #------------------------------------------------------------------------------ #  メニュー画面で表示するコマンドウィンドウです。 #============================================================================== class Window_MenuCommand < Window_Command #-------------------------------------------------------------------------- # ● コマンドリストの作成 #-------------------------------------------------------------------------- def add_n7_original_command(n) c = Nana::OMC::C[n] return unless c enabled = c[2] == 0 ? true : $game_switches[c[2]] ext = {:cev => c[0], :mode => c[3]} add_command(c[1], :omc, enabled , ext) end end #============================================================================== # ■ Scene_Menu #------------------------------------------------------------------------------ #  メニュー画面の処理を行うクラスです。 #============================================================================== class Scene_Menu < Scene_MenuBase #-------------------------------------------------------------------------- # ● コマンドウィンドウの作成 #-------------------------------------------------------------------------- alias create_command_window_n7omc create_command_window def create_command_window create_command_window_n7omc @command_window.set_handler(:omc, method(:command_omc)) end #-------------------------------------------------------------------------- # ● コマンド[オリジナルメニューコマンド] #-------------------------------------------------------------------------- def command_omc ext = @command_window.current_ext $game_temp.reserve_common_event(ext[:cev]) if ext[:mode] == true SceneManager.goto(Scene_Map) else common_event = $game_temp.reserved_common_event @interpreter = Game_Interpreter.new @interpreter.setup(common_event.list, 0) @interpreter.update @command_window.refresh @status_window.refresh @gold_window.refresh @command_window.activate end end end