今日のツクールMZスクリプト【20】足音を鳴らす

検索すれば足音を出すプラグインはたくさんありますが、

ワンポイントで使う場合、自分で作れると何かと便利なので、少しのスクリプトだけで足音を再生するようにします。

 

参考元

RPGツクールMZ スクリプトリファレンス - Google スプレッドシート

 

まず移動時という条件を取得するために

$gamePlayer.isMoving()

 

これを使って条件分岐を作ります。

f:id:werewolftan:20220213193126p:plain

 

この実行内容をマップ上に作って、「トリガーを並列処理」にして完成です。

 

実際にプレイしてみるとわかりますが、フレームごとに音が鳴ってうるさいのでウェイトを入れるといいでしょう。

 

f:id:werewolftan:20220213193405p:plain

 

さらに、ダッシュ中かどうかでウェイトの間隔を変えたいので

$gamePlayer.isDashing()

でさらに条件を細かくしましょう。

 

f:id:werewolftan:20220213193605p:plain

後でSEを変えられるようにSEのコモンイベントを作っています

条件の前に!がついていると、その否定になるので

上の条件はisDashing()がfalseのとき条件を満たします。

 

これで、このマップ上のどこでも足音が鳴るようになります。

 

雑に足音を演出したいときはこれでもいいですが、地形によって音が鳴ったりならなかったりさせたい場合は、「地形タグ」か「リージョン」によって分岐させるといいと思います。

 

地形タグの取得

$gameMap.terrainTag(x, y)

リージョンの取得

$gameMap.regionId(x, y)

 

プレイヤーのx、y座標の取得

$gamePlayer.x

$gamePlayer.y

 

これらを利用すると

f:id:werewolftan:20220213194125p:plain

地形タグで条件分岐させる場合

f:id:werewolftan:20220213194401p:plain

リージョンで条件分岐させる場合

 

上のように作ることで足音を演出できます。

 

ただ、

一つのマップ上のみなので、マップごとにイベントを用意する必要があるので注意。

プラグインと違ってマップによって足音を変えたりするのが楽なのでその辺は一長一短です。

 

スイッチによってイベントの出現をオンオフさせれば、足音いらないと思ってる人にも配慮できると思います。