示例#1
0
        public void DebugStuff()
        {
            string directory = @"E:\World of Warcraft 0.6.0";

            var options = new Options()
            {
                ParseMode = ParseMode.Both,
                IncludeUnsupportedAndInvalidFiles = true,
            };
            //options.IgnoredFormats.Add(SupportedFormats.ADT);
            //options.IgnoredDirectories.Add("World\\Maps");

            WoWFormatParser parser = new WoWFormatParser(directory, WoWBuild.Parse("0.6.0.3592"), options);
            //var localfiles = parser.EnumerateDirectory("*.txt");
            //var mpqs = parser.GetArchives();
            //var archivednames = parser.GetListFile("*.lit");
            //var localnames = parser.GetLocalFiles();

            //var t = parser.EnumerateArchives("*.m2").ToArray()
            //                   .Where(x => x.Is<Structures.M2.M2>())
            //                   .Cast<Structures.M2.M2>()
            //                   .Where(x => x.Particles != null)
            //                   .Where(x => x.Particles.Any(y => y.TailUVAnimRepeat != 0)).ToArray();

            var t = parser.EnumerateArchives <Structures.WMO.WMO>("*GoldshireInn.wmo").ToArray();

            var t2 = parser.EnumerateArchives <Structures.WMO.WMO>("*.wmo")
                     .Where(x => x.Lights != null)
                     .Where(x => x.Lights.Any(y => y.Unknown_0x18 != null && (y.Unknown_0x18[0] != 0 || y.Unknown_0x18[1] != 0))).ToArray();


            //var json = test.ToJson();
        }
示例#2
0
        public MPQReader(Options options, WoWBuild build, IEnumerable <string> patchArchives)
        {
            _options       = options;
            _build         = build;
            _fileReader    = new FileReader(_build, _options);
            _patchArchives = patchArchives.ToArray();

            _archiveLocks = new ConcurrentDictionary <string, MpqArchive>();
        }
 public DirectoryReader(string directory, Options options, WoWBuild build)
 {
     _directory = directory;
     _options   = options;
     _build     = build;
 }