public void Sync()
        {
            var oggSynchronizer = new OggSynchronizer(cacheFile, assets.oggGuid, 0f);

            oggSynchronizer.Sync();

            var pngSynchronizer = new PngSynchronizer(cacheFile, assets.pngGuid);

            pngSynchronizer.Sync();

            var rhsSynchronizer = new RhsSynchronizer(cacheFile, assets.rhsFile);

            rhsSynchronizer.Sync();

            foreach (var rhcFile in assets.rhcFiles)
            {
                var rhcSynchronizer = new RhcSynchronizer(cacheFile, rhcFile);
                rhcSynchronizer.Sync();
            }
        }
Пример #2
0
        public void EditTimingData()
        {
            var rhsPath = Path.Combine(rhPath, "0174eed2-8658-4b48-87e4-7e5f0753b79d.rhs");
            var rhsFile = IBinarySerializableExtensions.Deserialize(rhsPath, RhsFile.Deserialize);

            rhsFile.internalGuid = new RhGuid();
            rhsFile.timingData.offsetMultiplier = 0;
            //rhsFile.timingData.entries[0].startBpm /= 2;
            //rhsFile.pngGuid = new RhGuid(new byte[] { 38, 202, 1, 86, 253, 228, 71, 86, 152, 232, 0, 213, 9, 179, 44, 201 });
            rhsFile.SerializeToFile(rhsPath);

            var cachePath = Path.Combine(rhPath, "cache");
            var rhsGuid   = new RhGuid(new byte[] { 0x01, 0x74, 0xee, 0xd2, 0x86, 0x58, 0x4b, 0x48, 0x87, 0xe4, 0x7e, 0x5f, 0x07, 0x53, 0xb7, 0x9d });
            var cacheFile = IBinarySerializableExtensions.Deserialize(cachePath, CacheFile.Deserialize);

            var rhsSynchronizer = new RhsSynchronizer(cacheFile, rhsFile);

            rhsSynchronizer.Sync();

            cacheFile.SerializeToFile(cachePath);
        }