【特定キーで主人公の移動速度を上げる機能(ダッシュ機能)】



キャラクターやイベントには、それぞれに移動速度が設定されています。
今回はサブキーが押されると主人公の移動速度を変える、いわゆるダッシュ機能を作ってみたいと思います。

【目標】

 1.キー入力からサブキーが押されたかどうかを取得する。
 
 2.サブキーが押されていれば主人公の移動速度を変更する。
 
 3.サブキーが離されると、主人公の移動速度を元に戻す。

 ■関連項目
 【特定のキーが押されたかどうかを取得したい】


【手順】

―― 【1】コモンイベント作成 ――

 今回は全てのマップで動作させたいので、コモンイベントを利用します。
 コモンイベントの設定をクリックして、コモンイベントエディタを開いてください。
 
 コモンイベント一覧から、空いているコモンイベントを選択します。
 分かりやすいように名前を付けておきましょう。
 起動条件は「並列実行(常時)」にします。
 


―― 【2】キー入力の受け付け ―― 

 続いて、下部ボタンかイベントコマンド表示欄をダブルクリックして
 イベントコマンド入力ウィンドウを表示してください。
 
 コマンドウィンドウから「9:キー入力」を選択、
 代入先は「このコモンセルフ:0」、
 キー種は「基本」、方向キーは「受け付けない」、
 そして「サブキー」のみにチェックを入れて他は外してください。
 
 出来たら「入力ボタン」をクリックです。
 


―― 【3】条件分岐の作成 ―― 

 「7:条件分岐(変数)」を選択、まず「3変数を連動」チェックを外しましょう。
 
 設定は上から、
 変をクリックして「V1:が1と同じ」(使用している場合は別の変数)
 「V1:が-1と同じ」
 「このコモンセルフ0:が12と同じ」
 そして「上記以外の場合を作成」にチェックを入れ、
 合計4つの分岐を作成します。
 
 そして「入力ボタン」をクリック。
 


―― 【4】移動速度の変更(ダッシュ時) ―― 

 上2つの分岐は、今は空けたまま置いておきます。
 その下、3番目の分岐内をクリックして選択しましょう。
 
 イベントコマンドから「H:イベント制御」を選択してください。
 右上の方にある「キャラ動作指定」をクリックします。
 
 左上のプルダウンをクリック、「主人公」を選びます。
 ボタンが多くて見つけづらいですが、中央付近下部、「速度・頻度の設定」部分を見てください。
 プルダウンをクリックして、「4」を選択しましょう。
 ※ここの数値が大きいほど早くなります。
 
 選び終わったら、その下、「移動速度の設定」ボタンをクリックします。
 「OKボタン」を押しましょう。
 
 これで主人公をダッシュさせる部分が完成しました。
 


―― 【5】移動速度の変更(歩き) ―― 

 続いて移動速度を元に戻す処理を作成します。
 今度は一番下、上記以外の分岐内をクリックして選択しましょう。
 
 先ほど同様コマンド表示欄から動作指定をクリックして開いてください。
 同じく「速度・頻度の設定」から、今度は速度「3」を選択して設定しましょう。
 
 終わったら「OKボタン」です。
 


―― 【6】コモン停止時の処理 ―― 

 最後に、このコモンの停止時にも移動速度を元に戻す処理を作成します。
 これが無いと、もしもサブキーを押しっぱなしにしたままコモンを停止した場合、
 ダッシュ状態がずっと続いてしまう事になります。
 
 上から2番目、「V1:が-1以下」の分岐内をクリックして選択しましょう。
 
 同じく動作指定から速度「3」を選択して設定しましょう。
 (上記以外の分岐内からコピー[cキー]&ペースト[vキー]でも構いません)
 
 
 今度は「3:変数操作」を開きます。
 
 [変]ボタンをクリックして「[V1:] = 1」と入力してください。
 


 以上でダッシュコモンは完成です。
 テストプレイをしてみましょう。

 サブキーを押している間は速くなり、放すと元に戻れば成功です。
 お疲れ様でした。



【余談】

 このダッシュコモンは、イベントの演出時などに他の動作指定を上書きしてしまい、
 予期せぬ動作を引き起こす可能性があります。
 
 そんな時は事前に変数操作で「V1=1」と入力して、
 ダッシュコモンの動作を停止してやると解決するでしょう。
 (一番上の分岐内を通るように)
 
 再度起動させる場合は「V1=0」です。
 
 また、確実に速度を元に戻したい場合は、
 変数操作で「V1=-1」としてやると速度を戻してから動作を停止できます。
 
 その際イベントの処理順序によっては、ウェイトが1フレーム必要になります。
 注意しましょう。
 




<執筆者:七海> 


【←にフレームが表示されていない方はここをクリック】