您如何检测 Phaser 中是不是正在播放任何音乐?
Posted
技术标签:
【中文标题】您如何检测 Phaser 中是不是正在播放任何音乐?【英文标题】:How can you detect wether any music is playing in Phaser?您如何检测 Phaser 中是否正在播放任何音乐? 【发布时间】:2022-01-23 10:32:08 【问题描述】:在我的游戏中,我有时想播放音乐。但不应覆盖已经播放的音乐。
那我该怎么办
-
检查音乐是否正在播放
管理声音
理想情况下在像this.sound
这样的全局接口中
提前致谢
【问题讨论】:
【参考方案1】:html5Audiosound
拥有isPlaying
成员。
// inside scene method, create sound
const music = this.sound.add('music-name', );
music.play();
// and later
if(music.isPlaying)
看 https://newdocs.phaser.io/docs/3.54.0/Phaser.Sound.HTML5AudioSound#isPlaying 和 https://newdocs.phaser.io/docs/3.52.0/Phaser.Sound.HTML5AudioSoundManager
(this.sound
是 HTML5AudioSoundManager
实例)
【讨论】:
但是我可以通过这个 API 访问所有的声音吗? @MoPaMo 播放声音的唯一方法是通过HTML5AudioSoundManager
添加它。因此,您将可以访问所有声音。另外,请注意music-name
不是文件名,它的资源键由scene.load.audio(key, url);
加载以上是关于您如何检测 Phaser 中是不是正在播放任何音乐?的主要内容,如果未能解决你的问题,请参考以下文章