pros-plan-for-elves/Scripts/_.4.rb

181 lines
6.9 KiB
Ruby

#==============================================================================
# 「お一人様メニュー」(ACE) Ver.1.1
# 製作者:奈々(なな)
# へぷたなすくろーる http://heptanas.mamagoto.com/
#
# ◇使用規約
# 使用される場合はスクリプト作成者として「奈々」を明記して下さい。
# このスクリプトを改変したり、改変したものを配布するなどは自由ですが
# その場合も元のスクリプトの作成者として名前は載せて下さい。
# その他、詳しい利用規約はブログを参照して下さい。
#
#------------------------------------------------------------------------------
#
# パーティメンバーが1人の場合に使いやすいメニューです。
# 1人なのにいちいちアクターを選択する無駄な手間を省きます。
#
# 初期設定でモードを選択します。
# モード1と2は最小の変更で、他のメニュー系スクリプトと競合しにくいです。
#
#==============================================================================
#◇初期設定
module Nana
#モード選択
LONELY_MODE = 1
# 1 スキルや装備、ステータスのアクター選択が行われない
# 2 それに加えて並び替えをメニューから削除
# 3 更にステータス画面がメニュー画面と一体化する
#モード1の追加設定
LONELY_ONLY = true
# true パーティメンバーが複数でも、アクター選択を行わない
# false パーティメンバーが複数なら、アクター選択を行う
end
#==============================================================================
#==============================================================================
# ■ Scene_Menu
#------------------------------------------------------------------------------
#  メニュー画面の処理を行うクラスです。
#==============================================================================
class Scene_Menu < Scene_MenuBase
if Nana::LONELY_MODE >= 1 && (Nana::LONELY_ONLY || ($game_party && $game_party.members.size == 1))
#--------------------------------------------------------------------------
# ● コマンド[スキル][装備][ステータス]
#--------------------------------------------------------------------------
def command_personal
on_personal_ok
end
end
if Nana::LONELY_MODE == 3
#--------------------------------------------------------------------------
# ● 開始処理
#--------------------------------------------------------------------------
def start
super
@status_window = Window_Status.new($game_party.leader)
create_command_window
create_gold_window
end
#--------------------------------------------------------------------------
# ● ゴールドウィンドウの作成
#--------------------------------------------------------------------------
def create_gold_window
@gold_window = Window_Gold.new
@gold_window.x = Graphics.width - @gold_window.width
@gold_window.y = Graphics.height - @gold_window.height
end
end
end
#==============================================================================
# ■ Scene_MenuBase
#------------------------------------------------------------------------------
#  メニュー画面系の基本処理を行うクラスです。
#==============================================================================
class Scene_MenuBase < Scene_Base
if Nana::LONELY_ONLY
#--------------------------------------------------------------------------
# ● 次のアクターに切り替え
#--------------------------------------------------------------------------
def next_actor
on_actor_change
end
#--------------------------------------------------------------------------
# ● 前のアクターに切り替え
#--------------------------------------------------------------------------
def prev_actor
on_actor_change
end
end
end
#==============================================================================
# ■ Window_MenuCommand
#------------------------------------------------------------------------------
#  メニュー画面で表示するコマンドウィンドウです。
#==============================================================================
class Window_MenuCommand < Window_Command
if Nana::LONELY_MODE >= 2
#--------------------------------------------------------------------------
# ● 並び替えをコマンドリストに追加
#--------------------------------------------------------------------------
def add_formation_command
end
end
if Nana::LONELY_MODE == 3
#--------------------------------------------------------------------------
# ● ウィンドウ幅の取得
#--------------------------------------------------------------------------
def window_width
return Graphics.width
end
#--------------------------------------------------------------------------
# ● 桁数の取得
#--------------------------------------------------------------------------
def col_max
return 5
end
#--------------------------------------------------------------------------
# ● 表示行数の取得
#--------------------------------------------------------------------------
def visible_line_number
return 1
end
#--------------------------------------------------------------------------
# ● 主要コマンドをリストに追加
#--------------------------------------------------------------------------
def add_main_commands
add_command(Vocab::item, :item, main_commands_enabled)
add_command(Vocab::skill, :skill, main_commands_enabled)
add_command(Vocab::equip, :equip, main_commands_enabled)
end
end
end
#==============================================================================
# ■ Window_Status
#------------------------------------------------------------------------------
#  ステータス画面で表示する、フル仕様のステータスウィンドウです。
#==============================================================================
class Window_Status < Window_Selectable
if Nana::LONELY_MODE == 3
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(actor)
super(0, line_height * 2, Graphics.width, Graphics.height - line_height * 2)
@actor = actor
refresh
activate
end
#--------------------------------------------------------------------------
# ● リフレッシュ
#--------------------------------------------------------------------------
def refresh
contents.clear
draw_block1 (line_height * 0)
draw_horz_line(line_height * 1)
draw_block2 (line_height * 2)
draw_horz_line(line_height * 6)
draw_block3 (line_height * 7)
end
end
end