Esempio n. 1
0
        public static void ExtractDXBARS()
        {
            Utilities.progressValue = 0;
            Utilities.progressDesc  = "Extracting BARS...";

            string barsDirectory  = GlobalDirectory.barsDirectoryDX;
            string bfwavDirectory = GlobalDirectory.bfwavDirectoryDX;
            string wavDirectory   = GlobalDirectory.wavDirectoryDX;

            Directory.CreateDirectory(barsDirectory);
            string[] barsFilepaths = Directory.GetFiles(barsDirectory, "*.bars");

            foreach (string barsFilepath in barsFilepaths)
            {
                string barsFile      = Path.GetFileNameWithoutExtension(barsFilepath);
                string characterName = string.Empty;

                if (Utilities.StringStartsWithAny(barsFile, "MenuDriver_"))
                {
                    characterName = barsFile.Remove(0, 11);
                }
                else if (Utilities.StringStartsWithAny(barsFile, "Driver_"))
                {
                    characterName = barsFile.Remove(0, 7);
                }

                Directory.CreateDirectory(bfwavDirectory + characterName);

                BMETA Bmta = new BMETA();
                Bmta.load(barsFilepath);
                Bmta.unpack(bfwavDirectory + characterName);
                Bmta.unpackWav(wavDirectory + characterName);

                Utilities.progressValue++;
            }
            Utilities.progressDesc = "Extraction Complete! Please close this window.";
        }