Esempio n. 1
0
 private void LoadFiles(params string[] files)
 {
     foreach (var file in files)
     {
         _contentManager.LoadIniFile(file);
     }
 }
Esempio n. 2
0
        public ConfiguredSubsystemLoader(IGameDefinition gameDefinition, FileSystem fileSystem, Game game, ContentManager contentManager)
        {
            _gameDefinition = gameDefinition;
            _contentManager = contentManager;
            _game           = game;
            _fileSystem     = fileSystem;

            _contentManager.LoadIniFile(@"Data\INI\Default\subsystemlegend.ini");
            _subsystems = game.AssetStore.Subsystems;
        }
Esempio n. 3
0
        public SubsystemLoader(IGameDefinition gameDefinition, FileSystem fileSystem, Game game, ContentManager contentManager)
        {
            _gameDefinition = gameDefinition;
            _contentManager = contentManager;
            _fileSystem     = fileSystem;

            switch (gameDefinition.Game)
            {
            case SageGame.CncGenerals:
            case SageGame.CncGeneralsZeroHour:
                // These games didn't use subsystemlegend.ini so we use our own retro-fitted one.
                _contentManager.LoadIniFile(new FileSystemEntry(fileSystem, "subsystemlegend.ini", 0, () => new MemoryStream(Encoding.ASCII.GetBytes(GeneralsSubsystemLegendIni))));
                break;

            default:
                _contentManager.LoadIniFile(@"Data\INI\Default\subsystemlegend.ini");
                break;
            }


            _subsystems = game.AssetStore.Subsystems;
        }
Esempio n. 4
0
        public void Load(Subsystem subsystem)
        {
            foreach (var entry in GetFilesForSubsystem(subsystem))
            {
                _contentManager.LoadIniFile(entry);
            }

            // Load hardcoded files
            switch (subsystem)
            {
            case Subsystem.Core:
                switch (_gameDefinition.Game)
                {
                case SageGame.Bfme:
                case SageGame.Bfme2:
                case SageGame.Bfme2Rotwk:
                    _contentManager.LoadIniFile(@"Data\INI\Mouse.ini");
                    _contentManager.LoadIniFile(@"Data\INI\Water.ini");
                    _contentManager.LoadIniFile(@"Data\INI\WaterTextures.ini");
                    _contentManager.LoadIniFile(@"Maps\MapCache.ini");
                    break;

                case SageGame.Cnc3:
                    // TODO: Use .version file.
                    var manifestFileEntry  = _fileSystem.GetFile(@"Data\global_common.manifest");
                    var gameStream         = new GameStream(manifestFileEntry, _game);
                    var manifestFileEntry2 = _fileSystem.GetFile(@"Data\static_common.manifest");
                    var gameStream2        = new GameStream(manifestFileEntry2, _game);
                    break;
                }
                switch (_gameDefinition.Game)
                {
                case SageGame.Bfme:
                    _contentManager.LoadIniFile($@"Lang\{_contentManager.Language}\HeaderTemplate.ini");
                    break;

                case SageGame.Bfme2:
                case SageGame.Bfme2Rotwk:
                    _contentManager.LoadIniFile($@"HeaderTemplate.ini");
                    break;
                }
                break;

            case Subsystem.Players:
                switch (_gameDefinition.Game)
                {
                case SageGame.Bfme:
                case SageGame.Bfme2:
                case SageGame.Bfme2Rotwk:
                    _contentManager.LoadIniFile(@"Data\INI\ControlBarScheme.ini");
                    _contentManager.LoadIniFile(@"Data\INI\CommandSet.ini");
                    _contentManager.LoadIniFile(@"Data\INI\CommandButton.ini");
                    break;
                }
                break;

            case Subsystem.Audio:
                switch (_gameDefinition.Game)
                {
                case SageGame.Bfme:
                case SageGame.Bfme2:
                case SageGame.Bfme2Rotwk:
                    _contentManager.LoadIniFile(@"Data\INI\AudioSettings.ini");
                    _contentManager.LoadIniFile(@"Data\INI\SoundEffects.ini");
                    _contentManager.LoadIniFile(@"Data\INI\MiscAudio.ini");
                    _contentManager.LoadIniFile(@"Data\INI\Voice.ini");
                    break;
                }
                break;

            case Subsystem.Wnd:
                switch (_gameDefinition.Game)
                {
                case SageGame.Bfme:
                case SageGame.Bfme2:
                case SageGame.Bfme2Rotwk:
                    _contentManager.LoadIniFiles(@"Data\INI\MappedImages\HandCreated\");
                    _contentManager.LoadIniFiles(@"Data\INI\MappedImages\TextureSize_512\");
                    _contentManager.LoadIniFiles(@"Data\INI\MappedImages\AptImages\");
                    break;
                }
                break;
            }
        }
Esempio n. 5
0
 private void LoadIniFiles(string folder)
 {
     foreach (var iniFile in GetFilesInFolder(folder, new HashSet <string>()))
     {
         _contentManager.LoadIniFile(iniFile);
     }
 }