Esempio n. 1
0
        public static void OptAudioUpdateChannelVolume(SFXDescription description, float volume)
        {
            string channel = audio.sfxGroupToOldChannel(description["sourceGroup"]);

            if (volume == omni.fGlobal["$pref::SFX::channelVolume[" + channel + "]"])
            {
                return;
            }

            audio.sfxSetChannelVolume(channel, volume);

            omni.fGlobal["$pref::SFX::channelVolume[" + channel + "]"] = volume;

            if (omni.sGlobal["$AudioTestHandle"].isObject())
            {
                ((SFXDescription)omni.sGlobal["$AudioTestDescription"])["volume"] = volume.AsString();
                omni.fGlobal["$AudioTestHandle"] = omni.Util.sfxPlayOnce(omni.sGlobal["$AudioTestDescription"], "art/sound/ui/volumeTest.wav");
            }
        }
Esempio n. 2
0
        public static void Init()
        {
            //-----------------------------------------------------------------------------
            //    Source groups.
            //-----------------------------------------------------------------------------
            SFXDescription AudioMaster = new SFXDescription("AudioMaster");

            AudioMaster.registerSingleton();
            System.Console.WriteLine(AudioMaster.ConeInsideAngle);

            AudioChannelMaster = new SFXSource("AudioChannelMaster")
            {
                Description = AudioMaster
            };
            AudioChannelMaster.registerSingleton();
            System.Console.WriteLine(AudioChannelMaster.Description.getName());

            SFXDescription AudioChannel = new SFXDescription("AudioChannel")
            {
                SourceGroup = AudioChannelMaster
            };

            AudioChannel.registerSingleton();

            SFXSource AudioChannelDefault = new SFXSource("AudioChannelDefault")
            {
                Description = AudioChannel
            };

            AudioChannelDefault.registerSingleton();

            SFXSource AudioChannelGui = new SFXSource("AudioChannelGui")
            {
                Description = AudioChannel
            };

            AudioChannelGui.registerSingleton();

            AudioChannelEffects = new SFXSource("AudioChannelEffects")
            {
                Description = AudioChannel
            };
            AudioChannelEffects.registerSingleton();

            SFXSource AudioChannelMessages = new SFXSource("AudioChannelMessages")
            {
                Description = AudioChannel
            };

            AudioChannelMessages.registerSingleton();

            SFXSource AudioChannelMusic = new SFXSource("AudioChannelMusic")
            {
                Description = AudioChannel
            };

            AudioChannelMusic.registerSingleton();

            // Set default playback states of the channels.

            AudioChannelMaster.play();
            AudioChannelDefault.play();

            AudioChannelGui.play();
            AudioChannelMusic.play();
            AudioChannelMessages.play();

            // Stop in-game effects channels.
            AudioChannelEffects.stop();

            AudioChannels.Add(AudioChannelDefault);
            AudioChannels.Add(AudioChannelGui);
            AudioChannels.Add(AudioChannelEffects);
            AudioChannels.Add(AudioChannelMessages);
            AudioChannels.Add(AudioChannelMusic);

            //-----------------------------------------------------------------------------
            //    Master SFXDescriptions.
            //-----------------------------------------------------------------------------
            // Master description for interface audio.
            SFXDescription AudioGui = new SFXDescription("AudioGui")
            {
                Volume      = 1.0f,
                SourceGroup = AudioChannelGui
            };

            AudioGui.registerSingleton();

            // Master description for game effects audio.
            SFXDescription AudioEffect = new SFXDescription("AudioEffect")
            {
                Volume      = 1.0f,
                SourceGroup = AudioChannelEffects
            };

            AudioEffect.registerSingleton();

            // Master description for audio in notifications.
            SFXDescription AudioMessage = new SFXDescription("AudioMessage")
            {
                Volume      = 1.0f,
                SourceGroup = AudioChannelMessages
            };

            AudioMessage.registerSingleton();

            // Master description for music.
            SFXDescription AudioMusic = new SFXDescription("AudioMusic")
            {
                Volume      = 1.0f,
                SourceGroup = AudioChannelMusic
            };

            AudioMusic.registerSingleton();

            SFXPausedSet = new SimSet("SFXPausedSet");
            SFXPausedSet.registerSingleton();

            InitBackwardsCompatibility();
        }