mirror of
https://github.com/Caraxi/mare.client.git
synced 2025-12-12 22:17:22 +01:00
maybe add ivcs support?
This commit is contained in:
parent
e70001770f
commit
7f9c1c1835
3 changed files with 20 additions and 3 deletions
|
|
@ -196,12 +196,29 @@ public class CharacterDataFactory
|
||||||
AddReplacementsFromTexture(new Utf8String(((HumanExt*)human)->Decal->FileName()).ToString(), cache, 0, "Decal", false);
|
AddReplacementsFromTexture(new Utf8String(((HumanExt*)human)->Decal->FileName()).ToString(), cache, 0, "Decal", false);
|
||||||
AddReplacementsFromTexture(new Utf8String(((HumanExt*)human)->LegacyBodyDecal->FileName()).ToString(), cache, 0, "Legacy Decal", false);
|
AddReplacementsFromTexture(new Utf8String(((HumanExt*)human)->LegacyBodyDecal->FileName()).ToString(), cache, 0, "Legacy Decal", false);
|
||||||
|
|
||||||
|
|
||||||
|
AddReplacementSkeleton(((HumanExt*)human)->Human.RaceSexId, cache);
|
||||||
|
|
||||||
st.Stop();
|
st.Stop();
|
||||||
Logger.Verbose("Building Character Data took " + st.Elapsed);
|
Logger.Verbose("Building Character Data took " + st.Elapsed);
|
||||||
|
|
||||||
return cache;
|
return cache;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void AddReplacementSkeleton(ushort raceSexId, CharacterData cache)
|
||||||
|
{
|
||||||
|
string raceSexIdString = raceSexId.ToString("0000");
|
||||||
|
|
||||||
|
string skeletonPath = $"chara/human/c{raceSexIdString}/skeleton/base/b0001/skl_c{raceSexIdString}b0001.sklb";
|
||||||
|
|
||||||
|
Logger.Verbose("Adding File Replacement for Skeleton " + skeletonPath);
|
||||||
|
|
||||||
|
var replacement = CreateFileReplacement(skeletonPath, true);
|
||||||
|
cache.AddFileReplacement(replacement);
|
||||||
|
|
||||||
|
DebugPrint(replacement, "Skeleton", "SKLB", 0);
|
||||||
|
}
|
||||||
|
|
||||||
private FileReplacement CreateFileReplacement(string path, bool doNotReverseResolve = false)
|
private FileReplacement CreateFileReplacement(string path, bool doNotReverseResolve = false)
|
||||||
{
|
{
|
||||||
var fileReplacement = new FileReplacement(_ipcManager.PenumbraModDirectory()!);
|
var fileReplacement = new FileReplacement(_ipcManager.PenumbraModDirectory()!);
|
||||||
|
|
@ -214,7 +231,7 @@ public class CharacterDataFactory
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fileReplacement.GamePaths = new List<string> { path };
|
fileReplacement.GamePaths = new List<string> { path };
|
||||||
fileReplacement.SetResolvedPath(_ipcManager.PenumbraResolvePath(path, _dalamudUtil.PlayerName)!);
|
fileReplacement.SetResolvedPath(_ipcManager.PenumbraResolvePath(path)!);
|
||||||
}
|
}
|
||||||
|
|
||||||
return fileReplacement;
|
return fileReplacement;
|
||||||
|
|
|
||||||
|
|
@ -175,7 +175,7 @@ namespace MareSynchronos.Managers
|
||||||
_penumbraRemoveTemporaryCollection.InvokeFunc(characterName);
|
_penumbraRemoveTemporaryCollection.InvokeFunc(characterName);
|
||||||
}
|
}
|
||||||
|
|
||||||
public string? PenumbraResolvePath(string path, string characterName)
|
public string? PenumbraResolvePath(string path)
|
||||||
{
|
{
|
||||||
if (!CheckPenumbraApi()) return null;
|
if (!CheckPenumbraApi()) return null;
|
||||||
var resolvedPath = _penumbraResolvePlayer!.InvokeFunc(path);
|
var resolvedPath = _penumbraResolvePlayer!.InvokeFunc(path);
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Authors></Authors>
|
<Authors></Authors>
|
||||||
<Company></Company>
|
<Company></Company>
|
||||||
<Version>0.1.11.0</Version>
|
<Version>0.1.12.0</Version>
|
||||||
<Description></Description>
|
<Description></Description>
|
||||||
<Copyright></Copyright>
|
<Copyright></Copyright>
|
||||||
<PackageProjectUrl>https://github.com/Penumbra-Sync/client</PackageProjectUrl>
|
<PackageProjectUrl>https://github.com/Penumbra-Sync/client</PackageProjectUrl>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue