add minion sync (experimental)

This commit is contained in:
Stanley Dimant
2022-07-20 22:59:19 +02:00
parent 627efdd012
commit b6862bcb20
3 changed files with 43 additions and 5 deletions

View File

@@ -195,10 +195,24 @@ public class CharacterDataFactory
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);
AddReplacementSkeleton(((HumanExt*)human)->Human.RaceSexId, cache);
var minion = ((Character*)_dalamudUtil.PlayerPointer)->CompanionObject;
if (minion != null)
{
var minionDrawObj = ((CharacterBase*)minion->Character.GameObject.GetDrawObject());
for (var mdlIdx = 0; mdlIdx < minionDrawObj->SlotCount; mdlIdx++)
{
var mdl = (RenderModel*)minionDrawObj->ModelArray[mdlIdx];
if (mdl == null || mdl->ResourceHandle == null)
{
continue;
}
AddReplacementsFromRenderModel(mdl, cache, 0, "Companion");
}
}
st.Stop();
Logger.Verbose("Building Character Data took " + st.Elapsed);