audio_system_is_initialised

此函数返回音频系统 (主总线) 是否在 HTML5 上初始化。对于 HTML5 以外的目标,此函数将始终返回 true

在 HTML5 平台上,音频引擎可能在游戏开始时没有完成加载。在此之前,您不应执行以下任何操作:

注意 此函数不同于 audio_system_is_available,后者反映播放音频的能力,并且取决于 Web Audio 上下文的状态。 必须先初始化音频系统,然后才能使用它。

语法:

audio_system_is_initialised();

 

返回:

Boolean

 

例子:

 

创建事件

// Initially, the audio system is not initialised
audio_initialised = false;

em_emitter = -1;
bus_special_effects = -1;

步事件

// Check until the system is initialised
if !audio_initialised && audio_system_is_initialised()
{
    audio_initialised = true;
    
    // First-time initialization
    bus_special_effects = audio_bus_create();
    bus_special_effects[0] = audio_effect_create(AudioEffectType.Reverb1);
    em_emitter = audio_emitter_create();
    audio_emitter_bus(em_emitter, bus_special_effects);
}

if (audio_initialised)
{
    // The audio system can be used here
    // ...
}

在游戏开始时,在对象的创建事件中,变量 audio_initialised 被设置为 false。在其步事件中,函数 audio_system_is_initialised 会被调用,只要 audio_initialised 保持 false。一旦函数返回 true,就会执行第一个 if 语句:audio_initialised 之后的内容被设置为 true,这将阻止对该函数的进一步调用,并设置一个定制音频总线和发射器。一旦 audio_initialisedtrue,则执行第二个 if 语句的代码,该代码可以与音频系统交互,例如改变效果参数。