Further updates, change Actor to other words in most places, change to Penumbra IPC-API.

This commit is contained in:
Ottermandias 2021-08-27 17:50:37 +02:00
parent d4a00dca0c
commit ebcd1ea795
18 changed files with 358 additions and 347 deletions

View file

@ -7,26 +7,26 @@ namespace Glamourer.Customization
{
public unsafe struct LazyCustomization
{
public ActorCustomization* Address;
public CharacterCustomization* Address;
public LazyCustomization(IntPtr actorPtr)
=> Address = (ActorCustomization*) (actorPtr + ActorCustomization.CustomizationOffset);
public LazyCustomization(IntPtr characterPtr)
=> Address = (CharacterCustomization*) (characterPtr + CharacterCustomization.CustomizationOffset);
public ref ActorCustomization Value
public ref CharacterCustomization Value
=> ref *Address;
public LazyCustomization(ActorCustomization data)
public LazyCustomization(CharacterCustomization data)
=> Address = &data;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct ActorCustomization
public struct CharacterCustomization
{
public const int CustomizationOffset = 0x1898;
public const int CustomizationBytes = 26;
public static ActorCustomization Default = new()
public static CharacterCustomization Default = new()
{
Race = Race.Hyur,
Gender = Gender.Male,
@ -150,13 +150,13 @@ namespace Glamourer.Customization
}
}
public void Read(Character actor)
=> Read(actor.Address + CustomizationOffset);
public void Read(Character character)
=> Read(character.Address + CustomizationOffset);
public ActorCustomization(Character actor)
public CharacterCustomization(Character character)
: this()
{
Read(actor.Address + CustomizationOffset);
Read(character.Address + CustomizationOffset);
}
public byte this[CustomizationId id]
@ -278,11 +278,11 @@ namespace Glamourer.Customization
}
}
public unsafe void Write(IntPtr actorAddress)
public unsafe void Write(IntPtr characterAddress)
{
fixed (Race* ptr = &Race)
{
Buffer.MemoryCopy(ptr, (byte*) actorAddress + CustomizationOffset, CustomizationBytes, CustomizationBytes);
Buffer.MemoryCopy(ptr, (byte*) characterAddress + CustomizationOffset, CustomizationBytes, CustomizationBytes);
}
}