Skip to content

Commit b2b85b6

Browse files
committed
Beta v2.3.4.5b
2 parents e6bf6a4 + fb1c193 commit b2b85b6

File tree

9 files changed

+755
-180
lines changed

9 files changed

+755
-180
lines changed

xivModdingFramework/Cache/XivDependencyGraph.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -734,7 +734,7 @@ public async Task<List<string>> GetTextureFiles(int materialVariant = -1, IndexF
734734

735735
if (index.Get8xDataOffset(mat) != 0)
736736
{
737-
var _mtrl = new Mtrl(XivCache.GameInfo.GameDirectory, dataFile, XivCache.GameInfo.GameLanguage);
737+
var _mtrl = new Mtrl(XivCache.GameInfo.GameDirectory);
738738
mtrlTexs = await _mtrl.GetTexturePathsFromMtrlPath(mat, false, false, index, modlist);
739739
}
740740
}
@@ -1302,7 +1302,7 @@ public static async Task<List<string>> GetChildFiles(string internalFilePath)
13021302
try
13031303
{
13041304
var dataFile = IOUtil.GetDataFileFromPath(internalFilePath);
1305-
var _mtrl = new Mtrl(XivCache.GameInfo.GameDirectory, dataFile, XivCache.GameInfo.GameLanguage);
1305+
var _mtrl = new Mtrl(XivCache.GameInfo.GameDirectory);
13061306
var mtrlChildren = await _mtrl.GetTexturePathsFromMtrlPath(internalFilePath, false, false);
13071307
return mtrlChildren;
13081308
} catch

xivModdingFramework/Materials/FileTypes/Mtrl.cs

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -47,21 +47,11 @@ public class Mtrl
4747
{
4848
private const string MtrlExtension = ".mtrl";
4949
private readonly DirectoryInfo _gameDirectory;
50-
private readonly XivLanguage _language;
51-
private XivDataFile _dataFile;
5250
private static SemaphoreSlim _semaphoreSlim = new SemaphoreSlim(1, 1);
5351

54-
public Mtrl(DirectoryInfo gameDirectory, XivDataFile dataFile, XivLanguage lang)
52+
public Mtrl(DirectoryInfo gameDirectory)
5553
{
5654
_gameDirectory = gameDirectory;
57-
_language = lang;
58-
DataFile = dataFile;
59-
}
60-
61-
public XivDataFile DataFile
62-
{
63-
get => _dataFile;
64-
set => _dataFile = value;
6555
}
6656

6757

@@ -405,13 +395,10 @@ public async Task<XivMtrl> GetMtrlData(long mtrlOffset, string mtrlPath, int dxV
405395
var index = new Index(_gameDirectory);
406396

407397
// Get uncompressed mtrl data
408-
var mtrlData = await dat.GetType2Data(mtrlOffset, DataFile);
398+
var df = IOUtil.GetDataFileFromPath(mtrlPath);
399+
var mtrlData = await dat.GetType2Data(mtrlOffset, df);
409400

410401
XivMtrl xivMtrl = null;
411-
412-
// Why is there a semaphore here to read an in memory byte block?
413-
await _semaphoreSlim.WaitAsync();
414-
415402
try
416403
{
417404
await Task.Run((Func<Task>)(async () =>
@@ -510,7 +497,7 @@ await Task.Run((Func<Task>)(async () =>
510497
if (String.IsNullOrEmpty(texturePath)) continue;
511498

512499
if (await index.FileExists(Path.GetDirectoryName(texturePath).Replace("\\", "/") + "/" + dx11FileName,
513-
DataFile))
500+
df))
514501
{
515502
texturePath = texturePath.Insert(texturePath.LastIndexOf("/") + 1, "--");
516503
}
@@ -638,7 +625,6 @@ await Task.Run((Func<Task>)(async () =>
638625
}
639626
finally
640627
{
641-
_semaphoreSlim.Release();
642628
}
643629

644630
return xivMtrl;
@@ -1183,7 +1169,6 @@ public static XivDependencyRootInfo GetHairMaterialRoot(XivDependencyRootInfo ro
11831169
}
11841170
public void Dipose()
11851171
{
1186-
_semaphoreSlim?.Dispose();
11871172
}
11881173

11891174
/// <summary>

0 commit comments

Comments
 (0)