Beispiel #1
0
        /// <summary>
        /// The sound manager class.
        /// </summary>
        public SoundMain()
        {
            Launch.Log("[Loading] Creating IrrKlang and SoundMain...");
            musics = new List<ISound>();
            sounds = new List<ISound>();
            components = new HashSet<SoundComponent>();

            enableMusic = Options.GetBool("Music");
            enableSounds = Options.GetBool("Sounds");

            playerManager = LKernel.GetG<PlayerManager>();
            cameraManager = LKernel.GetG<CameraManager>();

            playerManager.OnPostPlayerCreation += new PlayerEvent(OnPostPlayerCreation);
            LevelManager.OnLevelUnload += new LevelEvent(OnLevelUnload);
            LevelManager.OnLevelLoad += new LevelEvent(OnLevelLoad);
            LKernel.GetG<Pauser>().PauseEvent += new PauseEvent(PauseEvent);

            SoundEngineOptionFlag flags = SoundEngineOptionFlag.DefaultOptions | SoundEngineOptionFlag.MuteIfNotFocused | SoundEngineOptionFlag.MultiThreaded;

            try {
                Engine = new ISoundEngine(SoundOutputDriver.AutoDetect, flags);
            }
            catch (System.Exception) {
                Launch.Log("[Loading] Cannot initialize real SoundOutputDriver!");
                Engine = new ISoundEngine(SoundOutputDriver.NullDriver, flags);
            }

            Engine.Default3DSoundMinDistance = 50f;

            Launch.Log("[Loading] IrrKlang and SoundMain initialised!");
        }
Beispiel #2
0
 public SmartApple(Player user)
     : base(ref user, "SmartApple")
 {
     origin = user.NodePosition;
     playerManager = LKernel.GetG<PlayerManager>();
 }