画面サイズと更新速度を変更できるようにします。
基本情報
前提スクリプト
挿入位置
説明
概要
RGSS Player のウィンドウサイズを変更します。また、テストプレイ時、特定のキーを押すとゲームスピードが加速されます。
◆ 画面サイズ変更
ゲーム中に F5 キーを押すと、画面サイズを切り替えることができます。RPGツクール2000系列における F5キー操作と似たものです。
設定項目の Zoom_List で変更する対象の拡大率を配列で指定します。例えば
Zoom_List = [2, 1]
と書いておくと、ゲーム起動時には 2倍、一度 F5 を押すと原寸大、もう一度押すと再び 2倍、…というふうに切り替わります。
Zoom_List = [:max, 1, 2]
と書いておくと、ゲーム起動時には最大倍率、一度 F5 を押すと原寸大、もう一度押すと 2倍、3回目の押下で再び最大倍率、…というふうに切り替わります。
基本的に拡大率は数値で指定しますが、:max と書いておくと、プライマリモニタの解像度を基準に最大の拡大率が自動で計算されます。
EnableZoomChangeを偽にしておくと、ゲーム実行中に F5 キーを押しても拡大率が変更されないようになります。
◆ 早送り
EnableAccel が真の場合、ゲーム中に F4 キーを押すと、強制的にフレームスキップを起こし、ゲームの速度を 3倍(GraphicsUpdateInterval で変更可能) にします。加速状態は再度 F4 を押すと解除されます。F4 キーの状態取得には
LNS005 Input拡張 が必要です。
3倍速状態では、Graphics.frame_count が3の倍数のときのみ通常の画面更新を行い、それ以外の場合は画面更新せずフレームカウントだけを進めます。3倍速とは
画面更新待ちの発生頻度が1/3になるという意味であり、
実際の処理速度が3倍になるわけではありません。
EnableAccel が :test の場合、テストプレイ及び戦闘テストのときのみ早送り可能になります。それ以外の真の場合、いかなる状況でも早送りが可能になります。
◆ Graphics.change_zoom(size)
画面サイズを標準(544x416)の zoom 倍にします。表示位置は、中央の位置が変わらないように自動で補正されます。
zoom として指定可能な値は以下のいずれかです。
- :max_f
- プライマリモニタの解像度を基準に、最大の拡大率(max_zoom)にします。
- :max
- :max_f と同様ですが、小数点以下を切り捨てた整数倍にします。
- 数値(Numeric)
- 0.5 未満の場合は 0.5 に、max_zoom 以上の場合は max_zoom に矯正されます。
数値を直接指定する場合、引数には小数や2以上を与えることもできますが、非整数の場合は画面が乱れる場合があるのでご注意ください。上記のいずれでもない値を渡すと例外 TypeError が発生します。
備考
再定義されるメソッド
なし
- EnableAccel<初期値::test>
- 早送りを有効にする。偽(false, nil)の場合は早送り無効、:test の場合はテストプレイ時のみ、それ以外の真の値の場合はいつでも早送りできる。
- GraphicsUpdateInterval<初期値:3>
- 早送り時に実際に画面更新をする間隔。
- EnableZoomChange<初期値:true>
- ゲーム中の画面サイズ変更を有効にする。
- ZoomList<初期値:[:max, 1]>
- 画面拡大率のリスト。
更新履歴
- 2019/10/18 ウィンドウサイズをディスプレイ解像度に合わせて最大化する機能を追加
最終更新:2020年11月26日 00:50