playsoundコマンドはゲーム内の効果音やBGMを再生するコマンド。
playsoundコマンドの基本的系な構文
/playsound␣サウンド名␣ターゲット␣座標␣ボリューム␣ピッチ␣最小ボリューム
各指定の意味は以下のようになる。
サウンド名
sound.json及びmusic.jsonであらかじめ設定されたサウンド名を指定する。
再生できるサウンド名の一覧をまとめてくれている便利なサイトはこちら。
ターゲット
再生する音を聞くことが出来る対象(聞こえる人)。
プレイヤーを名前もしくはターゲットセレクターで指定する。
座標
音の発生源となる場所の座標。
チルダ表記(~ ~ ~)でプレイヤーの耳元を再生場所に指定することも出来る。
表記を省略した場合はコマンドの実行場所が音の発生源となる。
ボリューム
発生源で再生される音量(0.0~最大値不明)。
1.0以上を指定した場合は音量は変わらず可聴範囲が拡大される。
※可聴範囲
デフォルトでは効果音系もBGM系も半径16ブロックがコマンド計算上の可聴範囲となる。
ただし実際には効果音は半径16、BGMは半径64ブロックまで聞こえる。
例えばボリューム2.0を指定した場合、可聴範囲は半径32ブロックに拡大される。
なお実際に聞こえる範囲は効果音なら半径32に拡大、BGM系の可聴範囲は半径64のまま変わらない。
ピッチ
再生の速度。
1.0以上では早く、1.0以下では遅く再生される。
最小ボリューム
ターゲットが可聴範囲ギリギリ、もしくは外にいるときに聞こえるボリューム。
0に設定すると可聴範囲外では聞こえなくなる。
【発生源=ボリューム設定値】→【中間=距離によるフェード】→【可聴範囲外端=最小ボリューム設定値】のようなイメージ。
ただし、ターゲットが可聴範囲の外にいる場合は疑似的に発生源がターゲットの近く(2~4ブロックくらい)に移動し、最小ボリューム設定値で再生される。
例)BGMを遠くで鳴らしたい
ちょっと掘り下げたマニアックな使い方の例。
音の発生源が近いと気になってしまうので、プレイヤーからある程度離れた位置でBGMを鳴らしたい。
この場合、プレイヤー(複数の場合は全員)の可聴範囲内でなるべく離れた座標を発生源に指定すればよい。
が、デフォルトの可聴範囲は半径16ブロックしかないため、遠くで鳴らしたい場合は可聴範囲を拡大する。
/playsound record.cat @a 64 60 64 5 1 1
仮にプレイヤーが【x=0,y=60,z=0】にいる場合、可聴範囲を5倍に設定すれば16×5=80ブロック離れた位置まで発生源を指定できる。
そのうえで可聴範囲内となる【x=64,y=60,z=64】を音(record.cat)の発生源として指定する例。
なお、可聴範囲を拡大しないと指定座標が可聴範囲の外になるため、プレイヤーの近くに仮の最小ボリューム発生源が設定されてしまう。
/stopsound␣ターゲット
再生中の効果音/BGMを停止する。