メッセージの表示速度をゲーム内変数によって変更できます。
常に即時表示にすることも可能。定数やその他変数から動的に設定することも可能。
また、メッセージの早送り判定を無視して遅く表示させる独自の設定項目もあります。
メッセージ入力で「\.」を書きまくるのがめんどくさい時に役立つかも?
更新履歴 | 内容 |
---|---|
2023/08/20 | 初版 |
→スクリプト一覧へ
※ 一部既存の処理を上書きしているためスクリプトの競合が発生しやすいです。
他のスクリプトより上の方に配置することを推奨します。
↓スクリプト(ダブルクリックで全選択)↓
=begin ========================================================================= ■ 「メッセージ速度変更」- CustomMessageSpeed by 地上の洞窟 ================================================================================ メッセージの表示速度(一文字ごとのウェイト)を、変数によって変更するスクリプト。 ================================================================================ ■ 注意 ================================================================================ 再定義を含むため、他のスクリプトより上の方に配置することを推奨します。 メッセージの一文字ごとに処理を挟むスクリプトとは競合する可能性があります。 (例: 一文字ごとに効果音を再生する、など) ================================================================================ ■ 設定項目 =end #========================================================================== module CustomMessageSpeed # WAIT_VAR : 一文字ごとに待機するフレーム数 # 低い程メッセージが高速で表示されます(0で即時表示)。 # 文字列で取得する値を指定した場合、動的に値を取得します。 # 例: WAIT_VAR = '$game_variables[10]' WAIT_VAR = 1 # FORCE_WAIT_VAR : 一文字ごとに待機するフレーム数(強制) # メッセージの早送り判定を無視してウェイトさせます。 # 文字列で取得する値を指定した場合、動的に値を取得します。 # 例: FORCE_WAIT_VAR = '$game_variables[11]' FORCE_WAIT_VAR = 0 #============================================================================== # ■ ここからソースコード #============================================================================== DYNAMIC_WAIT_VAR = WAIT_VAR.is_a?(String) DYNAMIC_FORCE_WAIT_VAR = FORCE_WAIT_VAR.is_a?(String) end class Window_Message < Window_Base # 一文字出力後のウェイト(☆再定義) def wait_for_one_character update_show_fast # WAIT_VAR unless @show_fast || @line_show_fast count = if CustomMessageSpeed::DYNAMIC_WAIT_VAR eval(CustomMessageSpeed::WAIT_VAR, TOPLEVEL_BINDING) else CustomMessageSpeed::WAIT_VAR end wait((count.is_a?(Fixnum) && count) >= 0 ? count : 1) end # FORCE_WAIT_VAR count = if CustomMessageSpeed::DYNAMIC_FORCE_WAIT_VAR eval(CustomMessageSpeed::FORCE_WAIT_VAR, TOPLEVEL_BINDING) else CustomMessageSpeed::FORCE_WAIT_VAR end wait(count) if (count.is_a?(Fixnum) && count) >= 0 end end