マップの移動速度が変化するステートの設定 / ダッシュ処理の追加

p-sight: Annex - Move Speed Change System

Tag: システム関連 / ステート

説明

特定のステートに掛かった時、マップを移動する速度が変化します。
また、このスクリプトの導入によって他所のダッシュ機能が使えなくなってしまうため、特定のキーを押すと移動速度が速くなるダッシュ機能もつけました。

設定可能な項目

DEFAULT_MOVE_SPEED

初期の移動速度です。ちなみに、デフォルトではプレイヤーの移動速度は4に設定されています。
また、小数でも定義することができるので、「Fast(4)だと遅いけどVeryFast(5)だと早い」って場合は4.5くらいに設定すると良いかもしれません。

DASH_STATE_NAMES / DASH_STATE_SPEED

移動速度が変化するステートを入れる配列と、そのステートになった時の移動速度を保存した配列です。
左側のステートが最優先されるため、デフォルトの場合は「加速」ステートのメンバーと「鈍足」ステートのメンバーがいた場合、マップの移動速度は「加速」ステートのもの、つまり5.2となります。

DASH_KEY

ダッシュに使われるキーです。
下に書いた値以外は使わない方が無難です。

・Input::A
・Input::B (ただしデフォルトではこのキーを押すとメニューを開いてしまいます)
・Input::C (デフォルトでは決定キーとして使われています)
・Input::X
・Input::Y
・Input::Z
・Input::L (マップでは使われませんが、様々な場所でページ戻しに使われています)
・Input::R (マップでは使われませんが、様々な場所でページ送りに使われています)

また、ダッシュが不要な場合は「nil」とすればダッシュ機能が無くなります。

DASH_SPEED

ダッシュキーを押している間変化するスピードです。
この値だけ倍増します。
たとえばDEFAULT_MOVE_SPEEDが4、DASH_SPEEDが1.25ならば、ダッシュ中は「4 * 1.25」、つまり移動速度は5になります。

使い方

任意のタイミングでステートを変更することで、マップ上での移動速度が変化します。

また、このスクリプトを導入することで「移動ルートの設定」などでプレイヤーの移動速度を変更したあとなど、 移動速度を再設定する必要性が生じることもあると思われます。
その際にはイベントの「スクリプト」で以下を実行してください。

$game_player.move_speed_set

これを実行することで移動速度を再計算するので、ステートに応じた移動速度に戻すことが出来ます。

他のスクリプトとの競合について

再定義しているメソッド

なし

aliasを使って再定義しているメソッド

正常に動作しない場合は、以下のメソッドが他のRGSS素材で再定義されていないかなどを確認してください。

class Game_Player < Game_Character
 def update

ソースと導入方法

導入方法

スクリプトの「Game_Player」より下、「Main」よりも上に以下のソースを丸々挿入してください。

ソースと更新履歴

Move Speed Change System: ソース

更新履歴

2006 5/23 公開。


This page is written in Japanese(Shift_JIS)
(c) T-Akf, in p-sight