/////////////////////////////////////////////////////////////////////////////// // // // Control // // // /////////////////////////////////////////////////////////////////////////////// aalError Mixer::Stop() { aalULong i; for (i = 0; i < _mixer.Size(); i++) { Mixer * mixer = _mixer[i]; if (mixer && mixer->parent == this) mixer->Stop(); } for (i = 0; i < _amb.Size(); i++) { Ambiance * ambiance = _amb[i]; if (ambiance && _mixer[ambiance->channel.mixer] == this) { ambiance->Stop(); if (ambiance->channel.flags & AAL_FLAG_AUTOFREE) _amb.Delete(i); } } for (i = 0; i < _inst.Size(); i++) { Instance * instance = _inst[i]; if (instance && _mixer[instance->channel.mixer] == this) _inst.Delete(i); } status &= ~IS_PAUSED; return AAL_OK; }
void Mixer_Stop_Channel(void* channel) { if (gOpenRCT2Headless) return; gMixer.Stop(*(Channel*)channel); }
void Mixer_Stop_Channel(void* channel) { gMixer.Stop(*(Channel*)channel); }