fixed some .wem files + fixed mapProperty bug

This commit is contained in:
iAmAsval 2020-07-09 11:36:37 +02:00
parent 1ebc396a2f
commit 6a77dfd67d
12 changed files with 38 additions and 17 deletions

View File

@ -21,7 +21,7 @@ namespace PakReader.Parsers.PropertyTagData
var dict = new Dictionary<object, object>(NumEntries);
for (int i = 0; i < NumEntries; i++)
{
dict[ReadAsValue(reader, tag, tag.ValueType, ReadType.MAP)] = ReadAsObject(reader, tag, tag.ValueType, ReadType.MAP);
dict[ReadAsValue(reader, tag, tag.InnerType, ReadType.MAP)] = ReadAsObject(reader, tag, tag.ValueType, ReadType.MAP);
}
Value = dict;
}

View File

@ -63,7 +63,7 @@ namespace FModel.PakReader
break;
case _RIFF_ID:
reader.BaseStream.Seek(Position - sizeof(uint) - sizeof(uint), SeekOrigin.Begin);
AudioFiles[$"{rnd.Next(1000000, 9999999)}.wem"] = reader.ReadBytes(Convert.ToInt32(SectionLength));
AudioFiles[$"{rnd.Next(1000000, 9999999)}.wem"] = reader.ReadBytes(Convert.ToInt32(SectionLength) + sizeof(uint) + sizeof(uint));
break;
case _STID_ID:
stidSection = new STIDSection(reader);
@ -76,12 +76,17 @@ namespace FModel.PakReader
case _PLAT_ID:
platSection = new PLATSection(reader);
break;
#if DEBUG
default:
System.Diagnostics.Debug.WriteLine($"Unknown section 0x{SectionIdentifier:X} at {Position - sizeof(uint) - sizeof(uint)}");
break;
#endif
}
if (reader.BaseStream.Position != Position + SectionLength)
{
#if DEBUG
System.Diagnostics.Debug.WriteLine($" Didn't read 0x{SectionIdentifier:X} correctly (at {reader.BaseStream.Position}, should be {Position + SectionLength})");
System.Diagnostics.Debug.WriteLine($"Didn't read 0x{SectionIdentifier:X} correctly (at {reader.BaseStream.Position}, should be {Position + SectionLength})");
#endif
reader.BaseStream.Seek(Position + SectionLength, SeekOrigin.Begin);
}

View File

@ -1788,7 +1788,7 @@ namespace FModel.Properties {
}
/// <summary>
/// Recherche une chaîne localisée semblable à OGG Files (*.ogg)|*.ogg|WAV Files (*.wav)|*.wav|All Files (*.*)|*.*.
/// Recherche une chaîne localisée semblable à OGG Files (*.ogg)|*.ogg|WAV Files (*.wav)|*.wav|WEM Files (*.wem)|*.wem|ADPCM Files (*.adpcm)|*.adpcm|All Files (*.*)|*.*.
/// </summary>
public static string OggFilter {
get {

View File

@ -535,9 +535,6 @@ It's now the most used free software to leak on Fortnite.</value>
<data name="Offsets" xml:space="preserve">
<value>Offsets</value>
</data>
<data name="OggFilter" xml:space="preserve">
<value>OGG Files (*.ogg)|*.ogg|WAV Files (*.wav)|*.wav|All Files (*.*)|*.*</value>
</data>
<data name="OK" xml:space="preserve">
<value>حسنا</value>
</data>

View File

@ -500,7 +500,7 @@ Jetzt ist es die am häufigsten genutzte freie Software um mit Fortnite zu leake
<comment>Rarity Design</comment>
</data>
<data name="OggFilter" xml:space="preserve">
<value>OGG Dateien (*.ogg)|*.ogg|WAV Dateien (*.wav)|*.wav|Alle Dateien (*.*)|*.*</value>
<value>OGG Dateien (*.ogg)|*.ogg|WAV Dateien (*.wav)|*.wav|WEM Dateien (*.wem)|*.wem|ADPCM Dateien (*.adpcm)|*.adpcm|Alle Dateien (*.*)|*.*</value>
</data>
<data name="Opacity" xml:space="preserve">
<value>Deckkraft</value>

View File

@ -680,7 +680,7 @@ Ahora es el software gratuito más utilizado para filtrar en Fortnite.</value>
<value>Offsets</value>
</data>
<data name="OggFilter" xml:space="preserve">
<value>Archivos OGG (*.ogg)|*.ogg|Archivos WAV (*.wav)|*.wav|Todos los archivos (*.*)|*.*</value>
<value>Archivos OGG (*.ogg)|*.ogg|Archivos WAV (*.wav)|*.wav|Archivos WEM (*.wem)|*.wem|Archivos ADPCM (*.adpcm)|*.adpcm|Todos los archivos (*.*)|*.*</value>
</data>
<data name="OK" xml:space="preserve">
<value>OK</value>

View File

@ -556,7 +556,7 @@ C'est maintenant le logiciel gratuit le plus utilisé pour leak sur Fortnite.</v
<value>Offsets</value>
</data>
<data name="OggFilter" xml:space="preserve">
<value>Fichiers OGG (*.ogg)|*.ogg|Fichiers WAV (*.wav)|*.wav|Tous les Fichiers (*.*)|*.*</value>
<value>Fichiers OGG (*.ogg)|*.ogg|Fichiers WAV (*.wav)|*.wav|Fichiers WEM (*.wem)|*.wem|Fichiers ADPCM (*.adpcm)|*.adpcm|Tous les Fichiers (*.*)|*.*</value>
</data>
<data name="OK" xml:space="preserve">
<value>OK</value>

View File

@ -530,7 +530,7 @@ Col tempo sono state aggiunte nuove funzioni e molti altri utenti hanno comincia
<value>Offsets</value>
</data>
<data name="OggFilter" xml:space="preserve">
<value>Files OGG (*.ogg)|*.ogg|Files WAV (*.wav)|*.wav|Tutti i Files (*.*)|*.*</value>
<value>Files OGG (*.ogg)|*.ogg|Files WAV (*.wav)|*.wav|Files WEM (*.wem)|*.wem|Files ADPCM (*.adpcm)|*.adpcm|Tutti i Files (*.*)|*.*</value>
</data>
<data name="OK" xml:space="preserve">
<value>OK</value>

View File

@ -653,7 +653,7 @@
<value>ディレクトリ</value>
</data>
<data name="OggFilter" xml:space="preserve">
<value>OGGファイル (*.ogg)|*.ogg|WAVファイル (*.wav)|*.wav|全てのファイル (*.*)|*.*</value>
<value>OGGファイル (*.ogg)|*.ogg|WAVファイル (*.wav)|*.wav|WEMファイル (*.wem)|*.wem|ADPCMファイル (*.adpcm)|*.adpcm|全てのファイル (*.*)|*.*</value>
</data>
<data name="UseGameColors" xml:space="preserve">
<value>ゲームの色を使用する</value>

View File

@ -694,7 +694,7 @@ It's now the most used free software to leak on Fortnite.</value>
<value>Offsets</value>
</data>
<data name="OggFilter" xml:space="preserve">
<value>OGG Files (*.ogg)|*.ogg|WAV Files (*.wav)|*.wav|All Files (*.*)|*.*</value>
<value>OGG Files (*.ogg)|*.ogg|WAV Files (*.wav)|*.wav|WEM Files (*.wem)|*.wem|ADPCM Files (*.adpcm)|*.adpcm|All Files (*.*)|*.*</value>
</data>
<data name="OK" xml:space="preserve">
<value>OK</value>

View File

@ -430,7 +430,7 @@
<value>Нет текста</value>
</data>
<data name="OggFilter" xml:space="preserve">
<value>Файлы OGG (*.ogg)|*.ogg|Файлы WAV (*.wav)|*.wav|Все файлы (*.*)|*.*</value>
<value>Файлы OGG (*.ogg)|*.ogg|Файлы WAV (*.wav)|*.wav|Файлы WEM (*.wem)|*.wem|Файлы ADPCM (*.adpcm)|*.adpcm|Все файлы (*.*)|*.*</value>
</data>
<data name="OK" xml:space="preserve">
<value>OK</value>

View File

@ -73,7 +73,25 @@ namespace FModel.Windows.SoundPlayer
if ((bool)ofd.ShowDialog())
{
foreach (string file in ofd.FileNames)
LoadFile(file);
{
switch (Path.GetExtension(file))
{
case ".adpcm":
case ".wem":
Focus();
ListBoxVm.soundFiles.Add(new ListBoxViewModel2
{
Content = Path.GetFileName(file),
Data = File.ReadAllBytes(file),
FullPath = string.Empty,
Folder = string.Empty
});
break;
default:
LoadFile(file);
break;
}
}
}
}
@ -253,9 +271,10 @@ namespace FModel.Windows.SoundPlayer
CreateNoWindow = true
});
vgmstream.WaitForExit();
if (vgmstream.ExitCode == 0)
ListBoxVm.soundFiles.Remove(selectedItem);
File.Delete(folder + selectedItem.Content);
if (vgmstream.ExitCode == 0 && File.Exists(newFile))
{
ListBoxVm.soundFiles.Remove(selectedItem);
_oldPlayedSound = newFile;
LoadFile(newFile);
}