Beispiel #1
0
        private static void Run(Options options)
        {
            Clean(options);

            options.LoadConfig();

            EncodingCache.Initialise(options);

            // create the repo
            var tactRepo = CreateRepo(options);

            // load the the Install/Download tag lookups
            TagGenerator.Load(tactRepo);

            // load the readers
            var dirReader = new DirectoryReader(options, tactRepo);
            var mpqReader = new MPQReader(options, tactRepo, dirReader.PatchArchives);

            // populate the Install and Root files
            PopulateInstallFile(tactRepo, dirReader, mpqReader);
            PopulateRootFile(tactRepo, dirReader, mpqReader);

            // build and save the repo
            Log.WriteLine("Building and Saving repo");
            tactRepo.Save(options.OutputFolder, Path.Combine(options.OutputFolder, options.BuildName));

            EncodingCache.Save();

            // cleanup
            Clean(options);
        }