【解決済み】ピッチ変更:MZ

返信する
にへら
記事: 14
登録日時: 2022年5月31日(火) 09:43

【解決済み】ピッチ変更:MZ

投稿記事 by にへら »

にへらと申します。
イベント中にBGMのピッチを変えようと思い以下のスクリプトを導入したのですが、
TypeEroorが出てエラー落ちしてしまいます。
MZで使えるようにするにはどういった変更が必要でしょうか?
viewtopic.php?t=4240
添付ファイル
loop未定義
loop未定義
無題(7).png (16.38 KiB) 閲覧された回数 1642 回
最後に編集したユーザー にへら [ 2024年6月29日(土) 07:57 ], 累計 1 回
wingly
記事: 205
登録日時: 2020年2月29日(土) 06:35

Re: ピッチ変更:MZ

投稿記事 by wingly »

にへら さんが書きました:にへらと申します。
イベント中にBGMのピッチを変えようと思い以下のスクリプトを導入したのですが、
TypeEroorが出てエラー落ちしてしまいます。
MZで使えるようにするにはどういった変更が必要でしょうか?
viewtopic.php?t=4240
自分も前に同じ質問をした事があります。

コード: 全て選択

var bgm = AudioManager._currentBgm;
// BGMのpitchを変数[1]から取得
bgm.pitch = $gameVariables.value(1);
AudioManager.playBgm(bgm);
というスクリプトで実現されるかと思います。
違ったり、出来なかったりしたらすみません......
少なとも自分はMZで動きましたが、古いバージョンでですので最新のバージョンではもしかしたら動かないかもです。

※こちらの記事です。viewtopic.php?t=9000
どうも。winglyです。
現在受験勉強によりツクールを離れています。
にへら
記事: 14
登録日時: 2022年5月31日(火) 09:43

Re: ピッチ変更:MZ

投稿記事 by にへら »

wingly さんが書きました: 自分も前に同じ質問をした事があります。

コード: 全て選択

var bgm = AudioManager._currentBgm;
// BGMのpitchを変数[1]から取得
bgm.pitch = $gameVariables.value(1);
AudioManager.playBgm(bgm);
というスクリプトで実現されるかと思います。
違ったり、出来なかったりしたらすみません......
少なとも自分はMZで動きましたが、古いバージョンでですので最新のバージョンではもしかしたら動かないかもです。

※こちらの記事です。viewtopic.php?t=9000
ありがとうございます。
ピッチを自由に変えれるのは良いのですが、変更すると再生しなおしになってしまいます。
途切れないようにピッチ変更出来れば良いのですが…
ecf5DTTzl6h6lJj02
記事: 715
登録日時: 2018年12月23日(日) 13:55

Re: ピッチ変更:MZ

投稿記事 by ecf5DTTzl6h6lJj02 »

こんにちは。
にへら さんが書きました:にへらと申します。
イベント中にBGMのピッチを変えようと思い以下のスクリプトを導入したのですが、
TypeEroorが出てエラー落ちしてしまいます。
MZで使えるようにするにはどういった変更が必要でしょうか?
viewtopic.php?t=4240
ちょっと調べてみたところ、上記トピックで書かれたコードの

コード: 全て選択

var loop = buffer._sourceNode.loop;
の部分、
sourceNode というプロパティが、MZ では
SourceNodes という名前の配列オブジェクトに変更されてしまっているため、
プロパティの取得ができずにエラーとなってしまうようです。
MVでは sourceNode からでないとループフラグが取得できませんが、
MZ ではbgmBufferにループフラグが存在しており、
上記コードを

コード: 全て選択

var loop = buffer._loop
に変更すれば、正常に動作するのではないかと思います。
確認してみてください。
にへら
記事: 14
登録日時: 2022年5月31日(火) 09:43

Re: ピッチ変更:MZ

投稿記事 by にへら »

ちょっと調べてみたところ、上記トピックで書かれたコードの

コード: 全て選択

var loop = buffer._sourceNode.loop;
の部分、
sourceNode というプロパティが、MZ では
SourceNodes という名前の配列オブジェクトに変更されてしまっているため、
プロパティの取得ができずにエラーとなってしまうようです。
MVでは sourceNode からでないとループフラグが取得できませんが、
MZ ではbgmBufferにループフラグが存在しており、
上記コードを

コード: 全て選択

var loop = buffer._loop
に変更すれば、正常に動作するのではないかと思います。
確認してみてください。
返信が遅れてしまい申し訳ございません。
ありがとうございます!
先ほど確認したところ、問題なく想定通りの動作をいたしました!
二年越しではございますが、本当にありがとうございます!
返信する

“MZ:質問”に戻る