Manages files being imported and eported to and from TheGHOST respectively
Beispiel #1
0
        public Project(TheGhostCore core)
        {
            _audioExport = null;
            _audioImport = null;
            _fileCopy = null;
            _audioImportInfo = null;
            _audioExportInfo = null;
            _fileCopyInfo = null;

            _songs = null;
            _tiers = null;

            _backgroundAudio = new List<ProjectBackgroundAudio>();

            _fileManager = null;
            _core = core;

            _theGhostInfo = null;

            _defaults = new ProjectDefaults();

            _storeProjectFiles = false;

            _projectSettings = new ProjectSettings(this);
            _projectSettingsGameMods = new ProjectSettingsGameMods(this);
        }
Beispiel #2
0
        public void SetPlugins(PluginInfo audioImportPluginInfo, PluginInfo audioExportPluginInfo, PluginInfo fileCopyPluginInfo, params PluginInfo[] editorPluginInfos)
        {
            _fileCopyInfo = fileCopyPluginInfo;
            _audioExportInfo = audioExportPluginInfo;
            _audioImportInfo = audioImportPluginInfo;

            _projectSettings.AudioImportPluginName = _audioImportInfo == null ? string.Empty : _audioImportInfo.TypeName;
            _projectSettings.AudioExportPluginName = _audioExportInfo == null ? string.Empty : _audioExportInfo.TypeName;
            _projectSettings.FileCopyPluginName = _fileCopyInfo == null ? string.Empty : _fileCopyInfo.TypeName;
            _projectSettings.EditorPluginNames = null;

            if (_audioImportInfo != null)
                _audioImport = (IPluginAudioImport)_core.PluginManager.LoadPlugin(_audioImportInfo);
            if (_audioExportInfo != null)
                _audioExport = (IPluginAudioExport)_core.PluginManager.LoadPlugin(_audioExportInfo);
            if (_fileCopyInfo != null)
                _fileCopy = (IPluginFileCopy)_core.PluginManager.LoadPlugin(_fileCopyInfo);
            _fileManager = new FileManager(this, _fileCopy, this.SourcePath);
        }