RGSS3_プレイヤーの行動チェック
1、メニュー画面を開いたときに指定したスイッチをオンにします。
2、プレイヤーが移動したときに指定したスイッチをオンにします。
3、プレイヤーが戦闘したときに指定したスイッチをオンにします。
戦闘した敵のトループIDを指定した変数に代入します。
戦闘結果(0:勝利 1:逃走 2:敗北)を指定した変数に代入します。
4、マップ画面で特定ボタンが入力されたときに指定したスイッチをオンにします。
使い方
スクリプトの初期設定
MENU_ON_SW_EV = "スイッチNo."
MENU_ON_SW_MAP = "スイッチNo."
メニューを開いたときにオンにするスイッチの番号を指定します。
マップでキャンセルキーでメニューを開いた場合と
イベントコマンドからメニューを開いた場合で
それぞれ設定できますが、もちろん同じにしてもOKです。
MOVE_PL_SW = "スイッチNo."
プレイヤーが移動したときにオンにするスイッチの番号を指定します。
BATTLE_ON_SW = "スイッチNo."
プレイヤーが戦闘したときにオンにするスイッチの番号を指定します。
BATTLE_ON_VA = "変数No."
プレイヤーが戦闘したときに、敵のトループIDが入る変数の番号を指定します。
BATTLE_RESULT = "変数No."
プレイヤーが戦闘したときに、その戦闘結果が入る変数の番号を指定します。
戦闘結果は勝利なら0、逃走なら1、敗北なら2です。
MAP_KEY_X_SW = "スイッチNo."
マップ画面でXボタンが押されたときにオンにするスイッチの番号を指定します。
Y Z L R A B Cの各ボタンについても同様です。
SEALED_KEY_A = "true / false"
trueにするとAボタンのダッシュ機能を封印します。
Bボタンのメニュー画面、Cボタンのイベントの起動も同様です。
初期設定は全て、0以下を指定するとその機能を封印できます。
使わない機能は誤作動や競合をなるべく防ぐために0を指定して下さい。
その他
メニューを開いたかチェックの機能を統合しているため上位互換になります。
Ver3.0 レベルアップのチェック機能を追加
Ver4.0 レベルアップのチェック機能を削除、ボタンのチェック機能を追加
Ver4.1 起動時にSyntaxErrorが発生する問題を修正
スクリプトをダウンロード
イベントへの利用法
1、メニュー画面を開いたときに指定したスイッチをオン。
指定したスイッチをトリガーにした並列処理イベントを作り、処理の最後にスイッチをオフにすることで
メニューを開いた後、1回だけ実行されるイベントが作れます。
例えば装備品やプレイヤーの隊列などはメニュー画面で変更するわけですから
これらを判定するイベントは常時実行する方法よりも処理を軽くできます。
2、プレイヤーが移動したときに指定したスイッチをオン。
指定したスイッチをトリガーにすることで、プレイヤーが移動したときに起動するイベントが作れます。
並列イベントで毎フレームプレイヤーの座標を取得するよりも簡単で処理も軽くできます。
なお、イベントコマンドでプレイヤーが強制移動させられた場合もスイッチがオンになります。
3、プレイヤーが戦闘したときに指定したスイッチをオン。
指定したスイッチをトリガーにすることで、戦闘後に起動するイベントが作れます。
特にランダムエンカウントを使う人にはオススメです。
同時に敵のトループIDや戦闘結果も変数に入るため
これらを使って条件分岐させるようなイベントも作れます。
他にも、特殊なレベルアップや武器の成長などを作りたいときは
戦闘直後に起動するこのイベントで作るのがベストです。
4、マップ画面で特定ボタンが入力されたときに指定したスイッチをオン。
指定したスイッチをトリガーにすることで、特定のキー入力で起動するイベントが作れます。
仲間と会話する、ワールドマップを開くなどのオリジナル機能の実装に役立つでしょう。
並列コモンによるキー入力監視でも同様のものが作れますが
RGSS3スクリプトレベルでInput.trigger?によって監視しているため
多少は精度が高く誤作動が置きにくいと言えます。
また、決定キー、キャンセルキー、ダッシュキーに関しては
全く別の機能を持つボタンとして使えるように封印機能が付いています。
これらは特にARPGの自作を意識した機能ですが
例えばダッシュキーをジャンプキーにするなどは普通のRPGでも使えるかと。