mirror of
https://github.com/Ottermandias/Glamourer.git
synced 2026-02-21 15:07:43 +01:00
Initial Update for multiple stains, some facewear support, and API X
This commit is contained in:
parent
c1d9af2dd0
commit
7caf6cc08a
90 changed files with 654 additions and 537 deletions
|
|
@ -169,13 +169,13 @@ public sealed unsafe class MaterialManager : IRequiredService, IDisposable
|
|||
if (!actor.AsObject->IsCharacter())
|
||||
return false;
|
||||
|
||||
if (actor.AsCharacter->DrawData.WeaponDataSpan[0].DrawObject == characterBase)
|
||||
if (actor.AsCharacter->DrawData.WeaponData[0].DrawObject == characterBase)
|
||||
{
|
||||
type = MaterialValueIndex.DrawObjectType.Mainhand;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (actor.AsCharacter->DrawData.WeaponDataSpan[1].DrawObject == characterBase)
|
||||
if (actor.AsCharacter->DrawData.WeaponData[1].DrawObject == characterBase)
|
||||
{
|
||||
type = MaterialValueIndex.DrawObjectType.Offhand;
|
||||
return true;
|
||||
|
|
@ -199,10 +199,11 @@ public sealed unsafe class MaterialManager : IRequiredService, IDisposable
|
|||
/// </summary>
|
||||
private static CharacterWeapon GetTempSlot(Weapon* weapon)
|
||||
{
|
||||
// TODO: Fix offset
|
||||
var changedData = *(void**)((byte*)weapon + 0x918);
|
||||
if (changedData == null)
|
||||
return new CharacterWeapon(weapon->ModelSetId, weapon->SecondaryId, (Variant)weapon->Variant, (StainId)weapon->ModelUnknown);
|
||||
return new CharacterWeapon(weapon->ModelSetId, weapon->SecondaryId, (Variant)weapon->Variant, StainIds.FromWeapon(*weapon));
|
||||
|
||||
return new CharacterWeapon(weapon->ModelSetId, *(SecondaryId*)changedData, ((Variant*)changedData)[2], ((StainId*)changedData)[3]);
|
||||
return new CharacterWeapon(weapon->ModelSetId, *(SecondaryId*)changedData, ((Variant*)changedData)[2], new StainIds(((StainId*)changedData)[3], ((StainId*)changedData)[4]));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue