Skip to content

Commit a7e872b

Browse files
committed
Add IPlayer RemoveHeadBlendData
1 parent 822b451 commit a7e872b

File tree

7 files changed

+42
-7
lines changed

7 files changed

+42
-7
lines changed

api/AltV.Net.Async/Elements/Entities/AsyncPlayer.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1221,6 +1221,15 @@ public void SetHeadBlendData(uint shapeFirstID, uint shapeSecondID, uint shapeTh
12211221
}
12221222
}
12231223

1224+
public void RemoveHeadBlendData()
1225+
{
1226+
lock (Player)
1227+
{
1228+
if (!AsyncContext.CheckIfExistsNullable(Player)) return;
1229+
Player.RemoveHeadBlendData();
1230+
}
1231+
}
1232+
12241233
public bool SetEyeColor(ushort eyeColor)
12251234
{
12261235
lock (Player)

api/AltV.Net.CApi/Libraries/ClientLibrary.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -886,7 +886,7 @@ public unsafe interface IClientLibrary
886886

887887
public unsafe class ClientLibrary : IClientLibrary
888888
{
889-
public readonly uint Methods = 1735;
889+
public readonly uint Methods = 1738;
890890
public delegate* unmanaged[Cdecl]<nint, nint, void> Audio_AddOutput { get; }
891891
public delegate* unmanaged[Cdecl]<nint, nint> Audio_GetBaseObject { get; }
892892
public delegate* unmanaged[Cdecl]<nint, double> Audio_GetCurrentTime { get; }
@@ -3512,7 +3512,7 @@ private IntPtr GetUnmanagedPtr<T>(IDictionary<ulong, IntPtr> funcTable, ulong ha
35123512
public ClientLibrary(Dictionary<ulong, IntPtr> funcTable)
35133513
{
35143514
if (!funcTable.TryGetValue(0, out var capiHash)) Outdated = true;
3515-
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 4677548953854785821UL) Outdated = true;
3515+
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 13325244553859733034UL) Outdated = true;
35163516
Audio_AddOutput = (delegate* unmanaged[Cdecl]<nint, nint, void>) GetUnmanagedPtr<Audio_AddOutputDelegate>(funcTable, 9914412815391408844UL, Audio_AddOutputFallback);
35173517
Audio_GetBaseObject = (delegate* unmanaged[Cdecl]<nint, nint>) GetUnmanagedPtr<Audio_GetBaseObjectDelegate>(funcTable, 6330360502401226894UL, Audio_GetBaseObjectFallback);
35183518
Audio_GetCurrentTime = (delegate* unmanaged[Cdecl]<nint, double>) GetUnmanagedPtr<Audio_GetCurrentTimeDelegate>(funcTable, 2944324482134975819UL, Audio_GetCurrentTimeFallback);

api/AltV.Net.CApi/Libraries/ServerLibrary.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,7 @@ public unsafe interface IServerLibrary
221221
public delegate* unmanaged[Cdecl]<nint, byte, void> Player_RemoveAllWeapons { get; }
222222
public delegate* unmanaged[Cdecl]<nint, uint, uint, void> Player_RemoveDecoration { get; }
223223
public delegate* unmanaged[Cdecl]<nint, byte, byte> Player_RemoveFaceFeature { get; }
224+
public delegate* unmanaged[Cdecl]<nint, void> Player_RemoveHeadBlendData { get; }
224225
public delegate* unmanaged[Cdecl]<nint, byte, byte> Player_RemoveHeadOverlay { get; }
225226
public delegate* unmanaged[Cdecl]<nint, uint, byte> Player_RemoveWeapon { get; }
226227
public delegate* unmanaged[Cdecl]<nint, uint, uint, void> Player_RemoveWeaponComponent { get; }
@@ -479,7 +480,7 @@ public unsafe interface IServerLibrary
479480

480481
public unsafe class ServerLibrary : IServerLibrary
481482
{
482-
public readonly uint Methods = 1735;
483+
public readonly uint Methods = 1738;
483484
public delegate* unmanaged[Cdecl]<nint, nint, void> BaseObject_DeleteSyncedMetaData { get; }
484485
public delegate* unmanaged[Cdecl]<nint, nint[], nint[], ulong, void> BaseObject_SetMultipleSyncedMetaData { get; }
485486
public delegate* unmanaged[Cdecl]<nint, nint, nint, void> BaseObject_SetSyncedMetaData { get; }
@@ -691,6 +692,7 @@ public unsafe class ServerLibrary : IServerLibrary
691692
public delegate* unmanaged[Cdecl]<nint, byte, void> Player_RemoveAllWeapons { get; }
692693
public delegate* unmanaged[Cdecl]<nint, uint, uint, void> Player_RemoveDecoration { get; }
693694
public delegate* unmanaged[Cdecl]<nint, byte, byte> Player_RemoveFaceFeature { get; }
695+
public delegate* unmanaged[Cdecl]<nint, void> Player_RemoveHeadBlendData { get; }
694696
public delegate* unmanaged[Cdecl]<nint, byte, byte> Player_RemoveHeadOverlay { get; }
695697
public delegate* unmanaged[Cdecl]<nint, uint, byte> Player_RemoveWeapon { get; }
696698
public delegate* unmanaged[Cdecl]<nint, uint, uint, void> Player_RemoveWeaponComponent { get; }
@@ -1367,6 +1369,8 @@ public unsafe class ServerLibrary : IServerLibrary
13671369
private static void Player_RemoveDecorationFallback(nint _player, uint _collection, uint _overlay) => throw new Exceptions.OutdatedSdkException("Player_RemoveDecoration", "Player_RemoveDecoration SDK method is outdated. Please update your module nuget");
13681370
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate byte Player_RemoveFaceFeatureDelegate(nint _player, byte _index);
13691371
private static byte Player_RemoveFaceFeatureFallback(nint _player, byte _index) => throw new Exceptions.OutdatedSdkException("Player_RemoveFaceFeature", "Player_RemoveFaceFeature SDK method is outdated. Please update your module nuget");
1372+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void Player_RemoveHeadBlendDataDelegate(nint _player);
1373+
private static void Player_RemoveHeadBlendDataFallback(nint _player) => throw new Exceptions.OutdatedSdkException("Player_RemoveHeadBlendData", "Player_RemoveHeadBlendData SDK method is outdated. Please update your module nuget");
13701374
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate byte Player_RemoveHeadOverlayDelegate(nint _player, byte _overlayID);
13711375
private static byte Player_RemoveHeadOverlayFallback(nint _player, byte _overlayID) => throw new Exceptions.OutdatedSdkException("Player_RemoveHeadOverlay", "Player_RemoveHeadOverlay SDK method is outdated. Please update your module nuget");
13721376
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate byte Player_RemoveWeaponDelegate(nint _player, uint _weapon);
@@ -1884,7 +1888,7 @@ private IntPtr GetUnmanagedPtr<T>(IDictionary<ulong, IntPtr> funcTable, ulong ha
18841888
public ServerLibrary(Dictionary<ulong, IntPtr> funcTable)
18851889
{
18861890
if (!funcTable.TryGetValue(0, out var capiHash)) Outdated = true;
1887-
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 4677548953854785821UL) Outdated = true;
1891+
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 13325244553859733034UL) Outdated = true;
18881892
BaseObject_DeleteSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint, void>) GetUnmanagedPtr<BaseObject_DeleteSyncedMetaDataDelegate>(funcTable, 8228424877092269355UL, BaseObject_DeleteSyncedMetaDataFallback);
18891893
BaseObject_SetMultipleSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint[], nint[], ulong, void>) GetUnmanagedPtr<BaseObject_SetMultipleSyncedMetaDataDelegate>(funcTable, 1390762125822890831UL, BaseObject_SetMultipleSyncedMetaDataFallback);
18901894
BaseObject_SetSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint, nint, void>) GetUnmanagedPtr<BaseObject_SetSyncedMetaDataDelegate>(funcTable, 8002999088966424231UL, BaseObject_SetSyncedMetaDataFallback);
@@ -2096,6 +2100,7 @@ public ServerLibrary(Dictionary<ulong, IntPtr> funcTable)
20962100
Player_RemoveAllWeapons = (delegate* unmanaged[Cdecl]<nint, byte, void>) GetUnmanagedPtr<Player_RemoveAllWeaponsDelegate>(funcTable, 2232062854990357196UL, Player_RemoveAllWeaponsFallback);
20972101
Player_RemoveDecoration = (delegate* unmanaged[Cdecl]<nint, uint, uint, void>) GetUnmanagedPtr<Player_RemoveDecorationDelegate>(funcTable, 3139723963307924640UL, Player_RemoveDecorationFallback);
20982102
Player_RemoveFaceFeature = (delegate* unmanaged[Cdecl]<nint, byte, byte>) GetUnmanagedPtr<Player_RemoveFaceFeatureDelegate>(funcTable, 1204109734587833282UL, Player_RemoveFaceFeatureFallback);
2103+
Player_RemoveHeadBlendData = (delegate* unmanaged[Cdecl]<nint, void>) GetUnmanagedPtr<Player_RemoveHeadBlendDataDelegate>(funcTable, 8805714842908729165UL, Player_RemoveHeadBlendDataFallback);
20992104
Player_RemoveHeadOverlay = (delegate* unmanaged[Cdecl]<nint, byte, byte>) GetUnmanagedPtr<Player_RemoveHeadOverlayDelegate>(funcTable, 12300710546613769705UL, Player_RemoveHeadOverlayFallback);
21002105
Player_RemoveWeapon = (delegate* unmanaged[Cdecl]<nint, uint, byte>) GetUnmanagedPtr<Player_RemoveWeaponDelegate>(funcTable, 6739305111416325852UL, Player_RemoveWeaponFallback);
21012106
Player_RemoveWeaponComponent = (delegate* unmanaged[Cdecl]<nint, uint, uint, void>) GetUnmanagedPtr<Player_RemoveWeaponComponentDelegate>(funcTable, 937601034617427157UL, Player_RemoveWeaponComponentFallback);

api/AltV.Net.CApi/Libraries/SharedLibrary.cs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,8 @@ public unsafe interface ISharedLibrary
189189
public delegate* unmanaged[Cdecl]<byte> Core_GetEventTypeSize { get; }
190190
public delegate* unmanaged[Cdecl]<nint, ulong*, nint> Core_GetMarkers { get; }
191191
public delegate* unmanaged[Cdecl]<nint, nint, nint> Core_GetMetaData { get; }
192+
public delegate* unmanaged[Cdecl]<nint, nint[], int, ulong> Core_GetMValueArgsSize { get; }
193+
public delegate* unmanaged[Cdecl]<nint, nint, ulong> Core_GetMValueSize { get; }
192194
public delegate* unmanaged[Cdecl]<nint, int> Core_GetNetTime { get; }
193195
public delegate* unmanaged[Cdecl]<nint, ulong*, nint> Core_GetNetworkObjects { get; }
194196
public delegate* unmanaged[Cdecl]<nint, ulong*, nint> Core_GetPeds { get; }
@@ -410,7 +412,7 @@ public unsafe interface ISharedLibrary
410412

411413
public unsafe class SharedLibrary : ISharedLibrary
412414
{
413-
public readonly uint Methods = 1735;
415+
public readonly uint Methods = 1738;
414416
public delegate* unmanaged[Cdecl]<nint, uint> Audio_GetID { get; }
415417
public delegate* unmanaged[Cdecl]<nint, uint> AudioAttachedOutput_GetID { get; }
416418
public delegate* unmanaged[Cdecl]<nint, uint> AudioFilter_GetID { get; }
@@ -590,6 +592,8 @@ public unsafe class SharedLibrary : ISharedLibrary
590592
public delegate* unmanaged[Cdecl]<byte> Core_GetEventTypeSize { get; }
591593
public delegate* unmanaged[Cdecl]<nint, ulong*, nint> Core_GetMarkers { get; }
592594
public delegate* unmanaged[Cdecl]<nint, nint, nint> Core_GetMetaData { get; }
595+
public delegate* unmanaged[Cdecl]<nint, nint[], int, ulong> Core_GetMValueArgsSize { get; }
596+
public delegate* unmanaged[Cdecl]<nint, nint, ulong> Core_GetMValueSize { get; }
593597
public delegate* unmanaged[Cdecl]<nint, int> Core_GetNetTime { get; }
594598
public delegate* unmanaged[Cdecl]<nint, ulong*, nint> Core_GetNetworkObjects { get; }
595599
public delegate* unmanaged[Cdecl]<nint, ulong*, nint> Core_GetPeds { get; }
@@ -1165,6 +1169,10 @@ public unsafe class SharedLibrary : ISharedLibrary
11651169
private static nint Core_GetMarkersFallback(nint _core, ulong* _size) => throw new Exceptions.OutdatedSdkException("Core_GetMarkers", "Core_GetMarkers SDK method is outdated. Please update your module nuget");
11661170
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate nint Core_GetMetaDataDelegate(nint _core, nint _key);
11671171
private static nint Core_GetMetaDataFallback(nint _core, nint _key) => throw new Exceptions.OutdatedSdkException("Core_GetMetaData", "Core_GetMetaData SDK method is outdated. Please update your module nuget");
1172+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate ulong Core_GetMValueArgsSizeDelegate(nint _core, nint[] args, int _size);
1173+
private static ulong Core_GetMValueArgsSizeFallback(nint _core, nint[] args, int _size) => throw new Exceptions.OutdatedSdkException("Core_GetMValueArgsSize", "Core_GetMValueArgsSize SDK method is outdated. Please update your module nuget");
1174+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate ulong Core_GetMValueSizeDelegate(nint _core, nint _args);
1175+
private static ulong Core_GetMValueSizeFallback(nint _core, nint _args) => throw new Exceptions.OutdatedSdkException("Core_GetMValueSize", "Core_GetMValueSize SDK method is outdated. Please update your module nuget");
11681176
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate int Core_GetNetTimeDelegate(nint _core);
11691177
private static int Core_GetNetTimeFallback(nint _core) => throw new Exceptions.OutdatedSdkException("Core_GetNetTime", "Core_GetNetTime SDK method is outdated. Please update your module nuget");
11701178
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate nint Core_GetNetworkObjectsDelegate(nint _core, ulong* _size);
@@ -1608,7 +1616,7 @@ private IntPtr GetUnmanagedPtr<T>(IDictionary<ulong, IntPtr> funcTable, ulong ha
16081616
public SharedLibrary(Dictionary<ulong, IntPtr> funcTable)
16091617
{
16101618
if (!funcTable.TryGetValue(0, out var capiHash)) Outdated = true;
1611-
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 4677548953854785821UL) Outdated = true;
1619+
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 13325244553859733034UL) Outdated = true;
16121620
Audio_GetID = (delegate* unmanaged[Cdecl]<nint, uint>) GetUnmanagedPtr<Audio_GetIDDelegate>(funcTable, 4464042055475980737UL, Audio_GetIDFallback);
16131621
AudioAttachedOutput_GetID = (delegate* unmanaged[Cdecl]<nint, uint>) GetUnmanagedPtr<AudioAttachedOutput_GetIDDelegate>(funcTable, 17725794901805112189UL, AudioAttachedOutput_GetIDFallback);
16141622
AudioFilter_GetID = (delegate* unmanaged[Cdecl]<nint, uint>) GetUnmanagedPtr<AudioFilter_GetIDDelegate>(funcTable, 8824535635529306325UL, AudioFilter_GetIDFallback);
@@ -1788,6 +1796,8 @@ public SharedLibrary(Dictionary<ulong, IntPtr> funcTable)
17881796
Core_GetEventTypeSize = (delegate* unmanaged[Cdecl]<byte>) GetUnmanagedPtr<Core_GetEventTypeSizeDelegate>(funcTable, 13737530370025977174UL, Core_GetEventTypeSizeFallback);
17891797
Core_GetMarkers = (delegate* unmanaged[Cdecl]<nint, ulong*, nint>) GetUnmanagedPtr<Core_GetMarkersDelegate>(funcTable, 7482854450085275693UL, Core_GetMarkersFallback);
17901798
Core_GetMetaData = (delegate* unmanaged[Cdecl]<nint, nint, nint>) GetUnmanagedPtr<Core_GetMetaDataDelegate>(funcTable, 2139798095052897524UL, Core_GetMetaDataFallback);
1799+
Core_GetMValueArgsSize = (delegate* unmanaged[Cdecl]<nint, nint[], int, ulong>) GetUnmanagedPtr<Core_GetMValueArgsSizeDelegate>(funcTable, 2001253713694863162UL, Core_GetMValueArgsSizeFallback);
1800+
Core_GetMValueSize = (delegate* unmanaged[Cdecl]<nint, nint, ulong>) GetUnmanagedPtr<Core_GetMValueSizeDelegate>(funcTable, 3166577616070768315UL, Core_GetMValueSizeFallback);
17911801
Core_GetNetTime = (delegate* unmanaged[Cdecl]<nint, int>) GetUnmanagedPtr<Core_GetNetTimeDelegate>(funcTable, 15652019729912249391UL, Core_GetNetTimeFallback);
17921802
Core_GetNetworkObjects = (delegate* unmanaged[Cdecl]<nint, ulong*, nint>) GetUnmanagedPtr<Core_GetNetworkObjectsDelegate>(funcTable, 8454955647873390265UL, Core_GetNetworkObjectsFallback);
17931803
Core_GetPeds = (delegate* unmanaged[Cdecl]<nint, ulong*, nint>) GetUnmanagedPtr<Core_GetPedsDelegate>(funcTable, 5411021830103603795UL, Core_GetPedsFallback);

api/AltV.Net/Elements/Entities/IPlayer.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -416,6 +416,8 @@ void SetDateTime(int day, int month, int year, int hour,
416416
/// <exception cref="EntityRemovedException">This entity was removed</exception>
417417
void SetHeadBlendData(uint shapeFirstID, uint shapeSecondID, uint shapeThirdID, uint skinFirstID, uint skinSecondID, uint skinThirdID, float shapeMix, float skinMix, float thirdMix);
418418

419+
void RemoveHeadBlendData();
420+
419421
/// <summary>
420422
/// Set Eye Color
421423
/// </summary>

api/AltV.Net/Elements/Entities/Player.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1565,6 +1565,15 @@ public void SetHeadBlendData(uint shapeFirstID, uint shapeSecondID, uint shapeTh
15651565
}
15661566
}
15671567

1568+
public void RemoveHeadBlendData()
1569+
{
1570+
unsafe
1571+
{
1572+
CheckIfEntityExists();
1573+
Core.Library.Server.Player_RemoveHeadBlendData(PlayerNativePointer);
1574+
}
1575+
}
1576+
15681577
public bool SetEyeColor(ushort eyeColor)
15691578
{
15701579
unsafe

runtime

0 commit comments

Comments
 (0)