スクリプトでSEのランダム再生

返信する
はあちむ
記事: 15
登録日時: 2021年2月01日(月) 19:53

スクリプトでSEのランダム再生

投稿記事 by はあちむ »

はじめまして。
スクリプトで、指定したSEの中からランダム再生する事は可能なのでしょうか…?
SE効果音系のプラグインではよく見かけるのですが、
別のタイミングで使用したいと考えております。
ご存じの方がいましたらご教授いただけますと嬉しいです…!
アバター
しぐれん
記事: 975
登録日時: 2017年3月28日(火) 22:22
連絡する:

Re: スクリプトでSEのランダム再生

投稿記事 by しぐれん »

変数の操作(乱数)でランダムにした上で、数値に応じた条件分岐で音を鳴らしてみましょう。
現在、プラグイン依頼はお休み中です。
はあちむ
記事: 15
登録日時: 2021年2月01日(月) 19:53

Re: スクリプトでSEのランダム再生

投稿記事 by はあちむ »

お返事ありがとうございます!
今その方法でやっているのですが、数がかなり多いため視覚的に大変見えづらく、編集が大変です・・。
ですので、スクリプトでできれば簡素化できるかなと思いご質問した次第でした…
名無し蛙
記事: 352
登録日時: 2015年11月23日(月) 02:46

Re: スクリプトでSEのランダム再生

投稿記事 by 名無し蛙 »

①複数の文字列から一つ抽選する方法

コード: 全て選択

const names = ['Blow1', 'Blow3', 'Blow5', 'Blow7', 'Blow9'];
const name = names[Math.floor(names.length * Math.random())];
②スクリプトからSEを演奏する方法

コード: 全て選択

// Absorb1をボリューム90, ピッチ100, 位相0で演奏
const se = {name:'Absorb1', volume:90, pitch: 100, pan: 0};
AudioManager.playSe(se);
この二つを組み合わせれば可能だと思います。
はあちむ
記事: 15
登録日時: 2021年2月01日(月) 19:53

Re: スクリプトでSEのランダム再生

投稿記事 by はあちむ »

ありがとうございます!
スクリプト初心者ですが、頂いた情報を基に色々試してみます。
sin
記事: 46
登録日時: 2016年9月29日(木) 21:49

Re: スクリプトでSEのランダム再生

投稿記事 by sin »

こんにちは。
名無し蛙さまの提示してくれたスクリプトコードをそのまま使ってイベントを組んでみたのですが、何度試しても「Absorb1」のSEしか鳴ってくれませんでした。
スクリプトは以下のような組み合わせでまちがいないでしょうか?
se.png
名無し蛙
記事: 352
登録日時: 2015年11月23日(月) 02:46

Re: スクリプトでSEのランダム再生

投稿記事 by 名無し蛙 »

2つのコードを組み合わせてください。
縦に並べる、という意味ではないです。
具体的に言えば①で抽選したSE名を②のSEパラメータに適用してください。
sin
記事: 46
登録日時: 2016年9月29日(木) 21:49

Re: スクリプトでSEのランダム再生

投稿記事 by sin »

ありがとうございます!
name を指定してもうまくいかなかったのでクォーターを外したらランダムに鳴るようになりました!
̷n̷a̷m̷e̷:̷'̷A̷b̷s̷o̷r̷b̷1̷'̷ > name:name
返信する

“MZ:質問”に戻る