Skip to content

Commit 0f66c1a

Browse files
authored
Extend get all functions (#785)
* runtime: added new get all functions * runtime: added new free functions * extend get all functions * extend get all function in alt class * updated librarys * updated libraries * updated libraries
1 parent 736253c commit 0f66c1a

File tree

12 files changed

+228
-8
lines changed

12 files changed

+228
-8
lines changed

api/AltV.Net.CApi.Generator/TypeRegistry.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ public static class TypeRegistry
4040
{ "alt::IAudioFilter*", "nint" },
4141
{ "alt::IObject*", "nint" },
4242
{ "alt::ITextLabel*", "nint" },
43+
{ "alt::ITextLabel**", "nint" },
4344
{ "alt::IVehicle**", "nint" },
4445
{ "alt::IHandlingData*", "nint" },
4546
{ "alt::IHandlingData*&", "nint*" },
@@ -81,7 +82,9 @@ public static class TypeRegistry
8182
{ "alt::MValueConst**", "nint" },
8283
{ "alt::MValueConst*[]", "nint[]" },
8384
{ "alt::ILocalVehicle*", "nint" },
85+
{ "alt::ILocalVehicle**", "nint" },
8486
{ "alt::ILocalPed*", "nint" },
87+
{ "alt::ILocalPed**", "nint" },
8588
{ "int8_t", "sbyte" },
8689
{ "int8_t&", "sbyte*" },
8790
{ "uint8_t", "byte" },

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

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,8 @@ public unsafe interface IClientLibrary
153153
public delegate* unmanaged[Cdecl]<nint, int*, nint> Core_GetLocale { get; }
154154
public delegate* unmanaged[Cdecl]<nint, nint, nint> Core_GetLocalMeta { get; }
155155
public delegate* unmanaged[Cdecl]<nint, uint*, nint> Core_GetLocalObjects { get; }
156+
public delegate* unmanaged[Cdecl]<nint, uint*, nint> Core_GetLocalPeds { get; }
157+
public delegate* unmanaged[Cdecl]<nint, uint*, nint> Core_GetLocalVehicles { get; }
156158
public delegate* unmanaged[Cdecl]<nint, nint, uint*, nint> Core_GetMapZoomDataByAlias { get; }
157159
public delegate* unmanaged[Cdecl]<nint, int> Core_GetMsPerGameMinute { get; }
158160
public delegate* unmanaged[Cdecl]<nint, int, ushort, Vector3*, void> Core_GetPedBonePos { get; }
@@ -305,6 +307,8 @@ public unsafe interface IClientLibrary
305307
public delegate* unmanaged[Cdecl]<nint, ClientEvents.WorldObjectStreamOutModuleDelegate, void> Event_SetWorldObjectStreamOutDelegate { get; }
306308
public delegate* unmanaged[Cdecl]<nint, nint> Font_GetBaseObject { get; }
307309
public delegate* unmanaged[Cdecl]<nint, uint> Font_GetID { get; }
310+
public delegate* unmanaged[Cdecl]<nint, void> FreeLocalPedArray { get; }
311+
public delegate* unmanaged[Cdecl]<nint, void> FreeLocalVehicleArray { get; }
308312
public delegate* unmanaged[Cdecl]<nint, void> FreeRmlElementArray { get; }
309313
public delegate* unmanaged[Cdecl]<nint> GetNativeFuncTable { get; }
310314
public delegate* unmanaged[Cdecl]<uint, float> Handling_GetAcceleration { get; }
@@ -877,7 +881,7 @@ public unsafe interface IClientLibrary
877881

878882
public unsafe class ClientLibrary : IClientLibrary
879883
{
880-
public readonly uint Methods = 1707;
884+
public readonly uint Methods = 1716;
881885
public delegate* unmanaged[Cdecl]<nint, nint, void> Audio_AddOutput { get; }
882886
public delegate* unmanaged[Cdecl]<nint, nint> Audio_GetBaseObject { get; }
883887
public delegate* unmanaged[Cdecl]<nint, double> Audio_GetCurrentTime { get; }
@@ -1021,6 +1025,8 @@ public unsafe class ClientLibrary : IClientLibrary
10211025
public delegate* unmanaged[Cdecl]<nint, int*, nint> Core_GetLocale { get; }
10221026
public delegate* unmanaged[Cdecl]<nint, nint, nint> Core_GetLocalMeta { get; }
10231027
public delegate* unmanaged[Cdecl]<nint, uint*, nint> Core_GetLocalObjects { get; }
1028+
public delegate* unmanaged[Cdecl]<nint, uint*, nint> Core_GetLocalPeds { get; }
1029+
public delegate* unmanaged[Cdecl]<nint, uint*, nint> Core_GetLocalVehicles { get; }
10241030
public delegate* unmanaged[Cdecl]<nint, nint, uint*, nint> Core_GetMapZoomDataByAlias { get; }
10251031
public delegate* unmanaged[Cdecl]<nint, int> Core_GetMsPerGameMinute { get; }
10261032
public delegate* unmanaged[Cdecl]<nint, int, ushort, Vector3*, void> Core_GetPedBonePos { get; }
@@ -1173,6 +1179,8 @@ public unsafe class ClientLibrary : IClientLibrary
11731179
public delegate* unmanaged[Cdecl]<nint, ClientEvents.WorldObjectStreamOutModuleDelegate, void> Event_SetWorldObjectStreamOutDelegate { get; }
11741180
public delegate* unmanaged[Cdecl]<nint, nint> Font_GetBaseObject { get; }
11751181
public delegate* unmanaged[Cdecl]<nint, uint> Font_GetID { get; }
1182+
public delegate* unmanaged[Cdecl]<nint, void> FreeLocalPedArray { get; }
1183+
public delegate* unmanaged[Cdecl]<nint, void> FreeLocalVehicleArray { get; }
11761184
public delegate* unmanaged[Cdecl]<nint, void> FreeRmlElementArray { get; }
11771185
public delegate* unmanaged[Cdecl]<nint> GetNativeFuncTable { get; }
11781186
public delegate* unmanaged[Cdecl]<uint, float> Handling_GetAcceleration { get; }
@@ -2027,6 +2035,10 @@ public unsafe class ClientLibrary : IClientLibrary
20272035
private static nint Core_GetLocalMetaFallback(nint _core, nint _key) => throw new Exceptions.OutdatedSdkException("Core_GetLocalMeta", "Core_GetLocalMeta SDK method is outdated. Please update your module nuget");
20282036
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate nint Core_GetLocalObjectsDelegate(nint _core, uint* _size);
20292037
private static nint Core_GetLocalObjectsFallback(nint _core, uint* _size) => throw new Exceptions.OutdatedSdkException("Core_GetLocalObjects", "Core_GetLocalObjects SDK method is outdated. Please update your module nuget");
2038+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate nint Core_GetLocalPedsDelegate(nint _core, uint* _size);
2039+
private static nint Core_GetLocalPedsFallback(nint _core, uint* _size) => throw new Exceptions.OutdatedSdkException("Core_GetLocalPeds", "Core_GetLocalPeds SDK method is outdated. Please update your module nuget");
2040+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate nint Core_GetLocalVehiclesDelegate(nint _core, uint* _size);
2041+
private static nint Core_GetLocalVehiclesFallback(nint _core, uint* _size) => throw new Exceptions.OutdatedSdkException("Core_GetLocalVehicles", "Core_GetLocalVehicles SDK method is outdated. Please update your module nuget");
20302042
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate nint Core_GetMapZoomDataByAliasDelegate(nint _core, nint _alias, uint* _id);
20312043
private static nint Core_GetMapZoomDataByAliasFallback(nint _core, nint _alias, uint* _id) => throw new Exceptions.OutdatedSdkException("Core_GetMapZoomDataByAlias", "Core_GetMapZoomDataByAlias SDK method is outdated. Please update your module nuget");
20322044
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate int Core_GetMsPerGameMinuteDelegate(nint _core);
@@ -2331,6 +2343,10 @@ public unsafe class ClientLibrary : IClientLibrary
23312343
private static nint Font_GetBaseObjectFallback(nint _font) => throw new Exceptions.OutdatedSdkException("Font_GetBaseObject", "Font_GetBaseObject SDK method is outdated. Please update your module nuget");
23322344
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate uint Font_GetIDDelegate(nint _font);
23332345
private static uint Font_GetIDFallback(nint _font) => throw new Exceptions.OutdatedSdkException("Font_GetID", "Font_GetID SDK method is outdated. Please update your module nuget");
2346+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void FreeLocalPedArrayDelegate(nint _localPedArray);
2347+
private static void FreeLocalPedArrayFallback(nint _localPedArray) => throw new Exceptions.OutdatedSdkException("FreeLocalPedArray", "FreeLocalPedArray SDK method is outdated. Please update your module nuget");
2348+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void FreeLocalVehicleArrayDelegate(nint _localVehicleArray);
2349+
private static void FreeLocalVehicleArrayFallback(nint _localVehicleArray) => throw new Exceptions.OutdatedSdkException("FreeLocalVehicleArray", "FreeLocalVehicleArray SDK method is outdated. Please update your module nuget");
23342350
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void FreeRmlElementArrayDelegate(nint _rmlElementArray);
23352351
private static void FreeRmlElementArrayFallback(nint _rmlElementArray) => throw new Exceptions.OutdatedSdkException("FreeRmlElementArray", "FreeRmlElementArray SDK method is outdated. Please update your module nuget");
23362352
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate nint GetNativeFuncTableDelegate();
@@ -3476,7 +3492,7 @@ private IntPtr GetUnmanagedPtr<T>(IDictionary<ulong, IntPtr> funcTable, ulong ha
34763492
public ClientLibrary(Dictionary<ulong, IntPtr> funcTable)
34773493
{
34783494
if (!funcTable.TryGetValue(0, out var capiHash)) Outdated = true;
3479-
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 878848873631825315UL) Outdated = true;
3495+
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 10796895324229959904UL) Outdated = true;
34803496
Audio_AddOutput = (delegate* unmanaged[Cdecl]<nint, nint, void>) GetUnmanagedPtr<Audio_AddOutputDelegate>(funcTable, 9914412815391408844UL, Audio_AddOutputFallback);
34813497
Audio_GetBaseObject = (delegate* unmanaged[Cdecl]<nint, nint>) GetUnmanagedPtr<Audio_GetBaseObjectDelegate>(funcTable, 6330360502401226894UL, Audio_GetBaseObjectFallback);
34823498
Audio_GetCurrentTime = (delegate* unmanaged[Cdecl]<nint, double>) GetUnmanagedPtr<Audio_GetCurrentTimeDelegate>(funcTable, 2944324482134975819UL, Audio_GetCurrentTimeFallback);
@@ -3620,6 +3636,8 @@ public ClientLibrary(Dictionary<ulong, IntPtr> funcTable)
36203636
Core_GetLocale = (delegate* unmanaged[Cdecl]<nint, int*, nint>) GetUnmanagedPtr<Core_GetLocaleDelegate>(funcTable, 6468969374274395248UL, Core_GetLocaleFallback);
36213637
Core_GetLocalMeta = (delegate* unmanaged[Cdecl]<nint, nint, nint>) GetUnmanagedPtr<Core_GetLocalMetaDelegate>(funcTable, 15640072761507866309UL, Core_GetLocalMetaFallback);
36223638
Core_GetLocalObjects = (delegate* unmanaged[Cdecl]<nint, uint*, nint>) GetUnmanagedPtr<Core_GetLocalObjectsDelegate>(funcTable, 15584342624887125948UL, Core_GetLocalObjectsFallback);
3639+
Core_GetLocalPeds = (delegate* unmanaged[Cdecl]<nint, uint*, nint>) GetUnmanagedPtr<Core_GetLocalPedsDelegate>(funcTable, 11791992986566737666UL, Core_GetLocalPedsFallback);
3640+
Core_GetLocalVehicles = (delegate* unmanaged[Cdecl]<nint, uint*, nint>) GetUnmanagedPtr<Core_GetLocalVehiclesDelegate>(funcTable, 14867651012864451746UL, Core_GetLocalVehiclesFallback);
36233641
Core_GetMapZoomDataByAlias = (delegate* unmanaged[Cdecl]<nint, nint, uint*, nint>) GetUnmanagedPtr<Core_GetMapZoomDataByAliasDelegate>(funcTable, 2945049114999400896UL, Core_GetMapZoomDataByAliasFallback);
36243642
Core_GetMsPerGameMinute = (delegate* unmanaged[Cdecl]<nint, int>) GetUnmanagedPtr<Core_GetMsPerGameMinuteDelegate>(funcTable, 12789007219848936500UL, Core_GetMsPerGameMinuteFallback);
36253643
Core_GetPedBonePos = (delegate* unmanaged[Cdecl]<nint, int, ushort, Vector3*, void>) GetUnmanagedPtr<Core_GetPedBonePosDelegate>(funcTable, 9678094278922411472UL, Core_GetPedBonePosFallback);
@@ -3772,6 +3790,8 @@ public ClientLibrary(Dictionary<ulong, IntPtr> funcTable)
37723790
Event_SetWorldObjectStreamOutDelegate = (delegate* unmanaged[Cdecl]<nint, ClientEvents.WorldObjectStreamOutModuleDelegate, void>) GetUnmanagedPtr<Event_SetWorldObjectStreamOutDelegateDelegate>(funcTable, 1153552198753902363UL, Event_SetWorldObjectStreamOutDelegateFallback);
37733791
Font_GetBaseObject = (delegate* unmanaged[Cdecl]<nint, nint>) GetUnmanagedPtr<Font_GetBaseObjectDelegate>(funcTable, 11379805599200786692UL, Font_GetBaseObjectFallback);
37743792
Font_GetID = (delegate* unmanaged[Cdecl]<nint, uint>) GetUnmanagedPtr<Font_GetIDDelegate>(funcTable, 1376680539423762501UL, Font_GetIDFallback);
3793+
FreeLocalPedArray = (delegate* unmanaged[Cdecl]<nint, void>) GetUnmanagedPtr<FreeLocalPedArrayDelegate>(funcTable, 11757712716565834838UL, FreeLocalPedArrayFallback);
3794+
FreeLocalVehicleArray = (delegate* unmanaged[Cdecl]<nint, void>) GetUnmanagedPtr<FreeLocalVehicleArrayDelegate>(funcTable, 11332368469424147882UL, FreeLocalVehicleArrayFallback);
37753795
FreeRmlElementArray = (delegate* unmanaged[Cdecl]<nint, void>) GetUnmanagedPtr<FreeRmlElementArrayDelegate>(funcTable, 14086618333811829142UL, FreeRmlElementArrayFallback);
37763796
GetNativeFuncTable = (delegate* unmanaged[Cdecl]<nint>) GetUnmanagedPtr<GetNativeFuncTableDelegate>(funcTable, 15955613981878964089UL, GetNativeFuncTableFallback);
37773797
Handling_GetAcceleration = (delegate* unmanaged[Cdecl]<uint, float>) GetUnmanagedPtr<Handling_GetAccelerationDelegate>(funcTable, 13640121750592766571UL, Handling_GetAccelerationFallback);

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -470,7 +470,7 @@ public unsafe interface IServerLibrary
470470

471471
public unsafe class ServerLibrary : IServerLibrary
472472
{
473-
public readonly uint Methods = 1707;
473+
public readonly uint Methods = 1716;
474474
public delegate* unmanaged[Cdecl]<nint, nint, void> BaseObject_DeleteSyncedMetaData { get; }
475475
public delegate* unmanaged[Cdecl]<nint, nint[], nint[], ulong, void> BaseObject_SetMultipleSyncedMetaData { get; }
476476
public delegate* unmanaged[Cdecl]<nint, nint, nint, void> BaseObject_SetSyncedMetaData { get; }
@@ -1848,7 +1848,7 @@ private IntPtr GetUnmanagedPtr<T>(IDictionary<ulong, IntPtr> funcTable, ulong ha
18481848
public ServerLibrary(Dictionary<ulong, IntPtr> funcTable)
18491849
{
18501850
if (!funcTable.TryGetValue(0, out var capiHash)) Outdated = true;
1851-
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 878848873631825315UL) Outdated = true;
1851+
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 10796895324229959904UL) Outdated = true;
18521852
BaseObject_DeleteSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint, void>) GetUnmanagedPtr<BaseObject_DeleteSyncedMetaDataDelegate>(funcTable, 8228424877092269355UL, BaseObject_DeleteSyncedMetaDataFallback);
18531853
BaseObject_SetMultipleSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint[], nint[], ulong, void>) GetUnmanagedPtr<BaseObject_SetMultipleSyncedMetaDataDelegate>(funcTable, 1390762125822890831UL, BaseObject_SetMultipleSyncedMetaDataFallback);
18541854
BaseObject_SetSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint, nint, void>) GetUnmanagedPtr<BaseObject_SetSyncedMetaDataDelegate>(funcTable, 8002999088966424231UL, BaseObject_SetSyncedMetaDataFallback);

0 commit comments

Comments
 (0)