private static bool LoadFEV(string fullFevPath)
        {
            if (!(GameDataManager.GameType == GameDataManager.GameTypes.DS1 ||
                  GameDataManager.GameType == GameDataManager.GameTypes.DS1R ||
                  GameDataManager.GameType == GameDataManager.GameTypes.DS3 ||
                  GameDataManager.GameType == GameDataManager.GameTypes.SDT))
            {
                return(false);
            }

            string fevKey = Utils.GetShortIngameFileName(fullFevPath);

            if (_loadedFEVs.Contains(fevKey))
            {
                return(true);
            }

            if (!File.Exists(fullFevPath))
            {
                return(false);
            }

            Main.WinForm.Invoke(new Action(() =>
            {
                ERRCHECK(result = _eventSystem.load(fevKey + ".fev"));
            }));
            _loadedFEVs.Add(fevKey);

            return(true);
        }
Exemple #2
0
        public static bool LoadFEV(string fullFevPath)
        {
            if (!initialised)
            {
                return(false);
            }

            //if (!(GameDataManager.GameType == GameDataManager.GameTypes.DS1 ||
            //   GameDataManager.GameType == GameDataManager.GameTypes.DS1R ||
            //   GameDataManager.GameType == GameDataManager.GameTypes.DS3 ||
            //   GameDataManager.GameType == GameDataManager.GameTypes.SDT))
            //{
            //    return false;
            //}

            string fevKey = Utils.GetShortIngameFileName(fullFevPath);

            if (_loadedFEVs.Contains(fevKey))
            {
                return(true);
            }

            if (!File.Exists(fullFevPath))
            {
                return(false);
            }

            Main.WinForm.Invoke(new Action(() =>
            {
                UpdateMediaRoot(Path.GetDirectoryName(fullFevPath));
                result = _eventSystem.load(fevKey + ".fev");
                if (result != RESULT.ERR_FILE_NOTFOUND)
                {
                    ERRCHECK(result);
                }
            }));
            _loadedFEVs.Add(fevKey);
            _loadedFEVs_FullPaths.Add(fevKey, Path.GetDirectoryName(fullFevPath));

            return(true);
        }
Exemple #3
0
        /// <summary>
        /// Init the media path  & eventsystem
        /// </summary>
        #region Constructor(s)
        public FmodFactory()
        {
            // let's create our Event
            result = FMOD.Event_Factory.EventSystem_Create(ref eventsystem);
            ERRCHECK(result);

            // Init the event system object
            result = eventsystem.init(256, FMOD.INITFLAGS.NORMAL, (IntPtr)null, FMOD.EVENT_INITFLAGS.NORMAL);
            ERRCHECK(result);

            // Set the FMOD's default media Path
            result = eventsystem.setMediaPath(path);
            ERRCHECK(result);

            // Load a .fev file exported from FMOD Designer
            result = eventsystem.load("source.fev");
            ERRCHECK(result);

            // Acces to the group data embedded in the .fev file
            result = eventsystem.getGroup("source/Noises", false, ref eventgroup);
            ERRCHECK(result);
        }