Skip to content

Commit 27e1e8a

Browse files
committed
update RPC to new answer type
1 parent 3cb72d2 commit 27e1e8a

File tree

16 files changed

+99
-46
lines changed

16 files changed

+99
-46
lines changed

api/AltV.Net.CApi/Events/ClientEvents.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,6 @@ public delegate void PlayerBulletHitModuleDelegate(uint weapon, IntPtr victimPoi
8686

8787
public delegate void VoiceConnectionModuleDelegate(VoiceConnectionState state);
8888

89-
public delegate void ServerScriptRPCAnswerModuleDelegate(ushort answerId, IntPtr answers, ulong size,
89+
public delegate void ServerScriptRPCAnswerModuleDelegate(ushort answerId, IntPtr answer,
9090
string answerError);
9191
}

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3504,7 +3504,7 @@ private IntPtr GetUnmanagedPtr<T>(IDictionary<ulong, IntPtr> funcTable, ulong ha
35043504
public ClientLibrary(Dictionary<ulong, IntPtr> funcTable)
35053505
{
35063506
if (!funcTable.TryGetValue(0, out var capiHash)) Outdated = true;
3507-
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 1071294164973163825UL) Outdated = true;
3507+
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 10439883327927219649UL) Outdated = true;
35083508
Audio_AddOutput = (delegate* unmanaged[Cdecl]<nint, nint, void>) GetUnmanagedPtr<Audio_AddOutputDelegate>(funcTable, 9914412815391408844UL, Audio_AddOutputFallback);
35093509
Audio_GetBaseObject = (delegate* unmanaged[Cdecl]<nint, nint>) GetUnmanagedPtr<Audio_GetBaseObjectDelegate>(funcTable, 6330360502401226894UL, Audio_GetBaseObjectFallback);
35103510
Audio_GetCurrentTime = (delegate* unmanaged[Cdecl]<nint, double>) GetUnmanagedPtr<Audio_GetCurrentTimeDelegate>(funcTable, 2944324482134975819UL, Audio_GetCurrentTimeFallback);

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

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ public unsafe interface IServerLibrary
116116
public delegate* unmanaged[Cdecl]<nint, nint, nint, nint[], int, void> Core_TriggerClientEventUnreliable { get; }
117117
public delegate* unmanaged[Cdecl]<nint, nint, nint[], int, void> Core_TriggerClientEventUnreliableForAll { get; }
118118
public delegate* unmanaged[Cdecl]<nint, nint[], int, nint, nint[], int, void> Core_TriggerClientEventUnreliableForSome { get; }
119-
public delegate* unmanaged[Cdecl]<nint, nint, ushort, nint[], int, nint, void> Core_TriggerClientRPCAnswer { get; }
119+
public delegate* unmanaged[Cdecl]<nint, nint, ushort, nint, nint, void> Core_TriggerClientRPCAnswer { get; }
120120
public delegate* unmanaged[Cdecl]<nint, nint, nint[], int, void> Core_TriggerServerEvent { get; }
121121
public delegate* unmanaged[Cdecl]<nint, nint, void> Core_UnregisterMetric { get; }
122122
public delegate* unmanaged[Cdecl]<nint, nint, ushort, ushort, Vector3, Rotation, byte, byte, void> Entity_AttachToEntity { get; }
@@ -133,7 +133,7 @@ public unsafe interface IServerLibrary
133133
public delegate* unmanaged[Cdecl]<nint, byte, void> Entity_SetStreamed { get; }
134134
public delegate* unmanaged[Cdecl]<nint, nint, nint, void> Entity_SetStreamSyncedMetaData { get; }
135135
public delegate* unmanaged[Cdecl]<nint, byte, void> Entity_SetVisible { get; }
136-
public delegate* unmanaged[Cdecl]<nint, nint, nint[], int, byte> Event_ClientScriptRPCEvent_Answer { get; }
136+
public delegate* unmanaged[Cdecl]<nint, nint, byte> Event_ClientScriptRPCEvent_Answer { get; }
137137
public delegate* unmanaged[Cdecl]<nint, nint, byte> Event_ClientScriptRPCEvent_AnswerWithError { get; }
138138
public delegate* unmanaged[Cdecl]<nint, byte> Event_ClientScriptRPCEvent_WillAnswer { get; }
139139
public delegate* unmanaged[Cdecl]<nint, uint, void> Event_WeaponDamageEvent_SetDamageValue { get; }
@@ -579,7 +579,7 @@ public unsafe class ServerLibrary : IServerLibrary
579579
public delegate* unmanaged[Cdecl]<nint, nint, nint, nint[], int, void> Core_TriggerClientEventUnreliable { get; }
580580
public delegate* unmanaged[Cdecl]<nint, nint, nint[], int, void> Core_TriggerClientEventUnreliableForAll { get; }
581581
public delegate* unmanaged[Cdecl]<nint, nint[], int, nint, nint[], int, void> Core_TriggerClientEventUnreliableForSome { get; }
582-
public delegate* unmanaged[Cdecl]<nint, nint, ushort, nint[], int, nint, void> Core_TriggerClientRPCAnswer { get; }
582+
public delegate* unmanaged[Cdecl]<nint, nint, ushort, nint, nint, void> Core_TriggerClientRPCAnswer { get; }
583583
public delegate* unmanaged[Cdecl]<nint, nint, nint[], int, void> Core_TriggerServerEvent { get; }
584584
public delegate* unmanaged[Cdecl]<nint, nint, void> Core_UnregisterMetric { get; }
585585
public delegate* unmanaged[Cdecl]<nint, nint, ushort, ushort, Vector3, Rotation, byte, byte, void> Entity_AttachToEntity { get; }
@@ -596,7 +596,7 @@ public unsafe class ServerLibrary : IServerLibrary
596596
public delegate* unmanaged[Cdecl]<nint, byte, void> Entity_SetStreamed { get; }
597597
public delegate* unmanaged[Cdecl]<nint, nint, nint, void> Entity_SetStreamSyncedMetaData { get; }
598598
public delegate* unmanaged[Cdecl]<nint, byte, void> Entity_SetVisible { get; }
599-
public delegate* unmanaged[Cdecl]<nint, nint, nint[], int, byte> Event_ClientScriptRPCEvent_Answer { get; }
599+
public delegate* unmanaged[Cdecl]<nint, nint, byte> Event_ClientScriptRPCEvent_Answer { get; }
600600
public delegate* unmanaged[Cdecl]<nint, nint, byte> Event_ClientScriptRPCEvent_AnswerWithError { get; }
601601
public delegate* unmanaged[Cdecl]<nint, byte> Event_ClientScriptRPCEvent_WillAnswer { get; }
602602
public delegate* unmanaged[Cdecl]<nint, uint, void> Event_WeaponDamageEvent_SetDamageValue { get; }
@@ -1143,8 +1143,8 @@ public unsafe class ServerLibrary : IServerLibrary
11431143
private static void Core_TriggerClientEventUnreliableForAllFallback(nint _server, nint _ev, nint[] args, int _size) => throw new Exceptions.OutdatedSdkException("Core_TriggerClientEventUnreliableForAll", "Core_TriggerClientEventUnreliableForAll SDK method is outdated. Please update your module nuget");
11441144
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void Core_TriggerClientEventUnreliableForSomeDelegate(nint _server, nint[] targets, int _targetsSize, nint _ev, nint[] args, int _argsSize);
11451145
private static void Core_TriggerClientEventUnreliableForSomeFallback(nint _server, nint[] targets, int _targetsSize, nint _ev, nint[] args, int _argsSize) => throw new Exceptions.OutdatedSdkException("Core_TriggerClientEventUnreliableForSome", "Core_TriggerClientEventUnreliableForSome SDK method is outdated. Please update your module nuget");
1146-
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void Core_TriggerClientRPCAnswerDelegate(nint _server, nint _target, ushort _answerID, nint[] args, int _size, nint _error);
1147-
private static void Core_TriggerClientRPCAnswerFallback(nint _server, nint _target, ushort _answerID, nint[] args, int _size, nint _error) => throw new Exceptions.OutdatedSdkException("Core_TriggerClientRPCAnswer", "Core_TriggerClientRPCAnswer SDK method is outdated. Please update your module nuget");
1146+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void Core_TriggerClientRPCAnswerDelegate(nint _server, nint _target, ushort _answerID, nint _answer, nint _error);
1147+
private static void Core_TriggerClientRPCAnswerFallback(nint _server, nint _target, ushort _answerID, nint _answer, nint _error) => throw new Exceptions.OutdatedSdkException("Core_TriggerClientRPCAnswer", "Core_TriggerClientRPCAnswer SDK method is outdated. Please update your module nuget");
11481148
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void Core_TriggerServerEventDelegate(nint _server, nint _ev, nint[] args, int _size);
11491149
private static void Core_TriggerServerEventFallback(nint _server, nint _ev, nint[] args, int _size) => throw new Exceptions.OutdatedSdkException("Core_TriggerServerEvent", "Core_TriggerServerEvent SDK method is outdated. Please update your module nuget");
11501150
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void Core_UnregisterMetricDelegate(nint _core, nint _metric);
@@ -1177,8 +1177,8 @@ public unsafe class ServerLibrary : IServerLibrary
11771177
private static void Entity_SetStreamSyncedMetaDataFallback(nint _entity, nint _key, nint _val) => throw new Exceptions.OutdatedSdkException("Entity_SetStreamSyncedMetaData", "Entity_SetStreamSyncedMetaData SDK method is outdated. Please update your module nuget");
11781178
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate void Entity_SetVisibleDelegate(nint _entity, byte _state);
11791179
private static void Entity_SetVisibleFallback(nint _entity, byte _state) => throw new Exceptions.OutdatedSdkException("Entity_SetVisible", "Entity_SetVisible SDK method is outdated. Please update your module nuget");
1180-
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate byte Event_ClientScriptRPCEvent_AnswerDelegate(nint _event, nint _core, nint[] args, int _size);
1181-
private static byte Event_ClientScriptRPCEvent_AnswerFallback(nint _event, nint _core, nint[] args, int _size) => throw new Exceptions.OutdatedSdkException("Event_ClientScriptRPCEvent_Answer", "Event_ClientScriptRPCEvent_Answer SDK method is outdated. Please update your module nuget");
1180+
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate byte Event_ClientScriptRPCEvent_AnswerDelegate(nint _event, nint _answer);
1181+
private static byte Event_ClientScriptRPCEvent_AnswerFallback(nint _event, nint _answer) => throw new Exceptions.OutdatedSdkException("Event_ClientScriptRPCEvent_Answer", "Event_ClientScriptRPCEvent_Answer SDK method is outdated. Please update your module nuget");
11821182
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate byte Event_ClientScriptRPCEvent_AnswerWithErrorDelegate(nint _event, nint _error);
11831183
private static byte Event_ClientScriptRPCEvent_AnswerWithErrorFallback(nint _event, nint _error) => throw new Exceptions.OutdatedSdkException("Event_ClientScriptRPCEvent_AnswerWithError", "Event_ClientScriptRPCEvent_AnswerWithError SDK method is outdated. Please update your module nuget");
11841184
[UnmanagedFunctionPointer(CallingConvention.Cdecl)] private delegate byte Event_ClientScriptRPCEvent_WillAnswerDelegate(nint _event);
@@ -1856,7 +1856,7 @@ private IntPtr GetUnmanagedPtr<T>(IDictionary<ulong, IntPtr> funcTable, ulong ha
18561856
public ServerLibrary(Dictionary<ulong, IntPtr> funcTable)
18571857
{
18581858
if (!funcTable.TryGetValue(0, out var capiHash)) Outdated = true;
1859-
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 1071294164973163825UL) Outdated = true;
1859+
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 10439883327927219649UL) Outdated = true;
18601860
BaseObject_DeleteSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint, void>) GetUnmanagedPtr<BaseObject_DeleteSyncedMetaDataDelegate>(funcTable, 8228424877092269355UL, BaseObject_DeleteSyncedMetaDataFallback);
18611861
BaseObject_SetMultipleSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint[], nint[], ulong, void>) GetUnmanagedPtr<BaseObject_SetMultipleSyncedMetaDataDelegate>(funcTable, 1390762125822890831UL, BaseObject_SetMultipleSyncedMetaDataFallback);
18621862
BaseObject_SetSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint, nint, void>) GetUnmanagedPtr<BaseObject_SetSyncedMetaDataDelegate>(funcTable, 8002999088966424231UL, BaseObject_SetSyncedMetaDataFallback);
@@ -1963,7 +1963,7 @@ public ServerLibrary(Dictionary<ulong, IntPtr> funcTable)
19631963
Core_TriggerClientEventUnreliable = (delegate* unmanaged[Cdecl]<nint, nint, nint, nint[], int, void>) GetUnmanagedPtr<Core_TriggerClientEventUnreliableDelegate>(funcTable, 4821179867491879744UL, Core_TriggerClientEventUnreliableFallback);
19641964
Core_TriggerClientEventUnreliableForAll = (delegate* unmanaged[Cdecl]<nint, nint, nint[], int, void>) GetUnmanagedPtr<Core_TriggerClientEventUnreliableForAllDelegate>(funcTable, 9578627964183564598UL, Core_TriggerClientEventUnreliableForAllFallback);
19651965
Core_TriggerClientEventUnreliableForSome = (delegate* unmanaged[Cdecl]<nint, nint[], int, nint, nint[], int, void>) GetUnmanagedPtr<Core_TriggerClientEventUnreliableForSomeDelegate>(funcTable, 14557546483922608997UL, Core_TriggerClientEventUnreliableForSomeFallback);
1966-
Core_TriggerClientRPCAnswer = (delegate* unmanaged[Cdecl]<nint, nint, ushort, nint[], int, nint, void>) GetUnmanagedPtr<Core_TriggerClientRPCAnswerDelegate>(funcTable, 9224620724544415249UL, Core_TriggerClientRPCAnswerFallback);
1966+
Core_TriggerClientRPCAnswer = (delegate* unmanaged[Cdecl]<nint, nint, ushort, nint, nint, void>) GetUnmanagedPtr<Core_TriggerClientRPCAnswerDelegate>(funcTable, 15767989313971387723UL, Core_TriggerClientRPCAnswerFallback);
19671967
Core_TriggerServerEvent = (delegate* unmanaged[Cdecl]<nint, nint, nint[], int, void>) GetUnmanagedPtr<Core_TriggerServerEventDelegate>(funcTable, 4092140335578989631UL, Core_TriggerServerEventFallback);
19681968
Core_UnregisterMetric = (delegate* unmanaged[Cdecl]<nint, nint, void>) GetUnmanagedPtr<Core_UnregisterMetricDelegate>(funcTable, 17237210604041123822UL, Core_UnregisterMetricFallback);
19691969
Entity_AttachToEntity = (delegate* unmanaged[Cdecl]<nint, nint, ushort, ushort, Vector3, Rotation, byte, byte, void>) GetUnmanagedPtr<Entity_AttachToEntityDelegate>(funcTable, 11965009764904998252UL, Entity_AttachToEntityFallback);
@@ -1980,7 +1980,7 @@ public ServerLibrary(Dictionary<ulong, IntPtr> funcTable)
19801980
Entity_SetStreamed = (delegate* unmanaged[Cdecl]<nint, byte, void>) GetUnmanagedPtr<Entity_SetStreamedDelegate>(funcTable, 6004628797499736605UL, Entity_SetStreamedFallback);
19811981
Entity_SetStreamSyncedMetaData = (delegate* unmanaged[Cdecl]<nint, nint, nint, void>) GetUnmanagedPtr<Entity_SetStreamSyncedMetaDataDelegate>(funcTable, 12798418058428333585UL, Entity_SetStreamSyncedMetaDataFallback);
19821982
Entity_SetVisible = (delegate* unmanaged[Cdecl]<nint, byte, void>) GetUnmanagedPtr<Entity_SetVisibleDelegate>(funcTable, 8026011842118229214UL, Entity_SetVisibleFallback);
1983-
Event_ClientScriptRPCEvent_Answer = (delegate* unmanaged[Cdecl]<nint, nint, nint[], int, byte>) GetUnmanagedPtr<Event_ClientScriptRPCEvent_AnswerDelegate>(funcTable, 11300708773696104108UL, Event_ClientScriptRPCEvent_AnswerFallback);
1983+
Event_ClientScriptRPCEvent_Answer = (delegate* unmanaged[Cdecl]<nint, nint, byte>) GetUnmanagedPtr<Event_ClientScriptRPCEvent_AnswerDelegate>(funcTable, 10935127918561517872UL, Event_ClientScriptRPCEvent_AnswerFallback);
19841984
Event_ClientScriptRPCEvent_AnswerWithError = (delegate* unmanaged[Cdecl]<nint, nint, byte>) GetUnmanagedPtr<Event_ClientScriptRPCEvent_AnswerWithErrorDelegate>(funcTable, 2674464925851684396UL, Event_ClientScriptRPCEvent_AnswerWithErrorFallback);
19851985
Event_ClientScriptRPCEvent_WillAnswer = (delegate* unmanaged[Cdecl]<nint, byte>) GetUnmanagedPtr<Event_ClientScriptRPCEvent_WillAnswerDelegate>(funcTable, 5065438074644693875UL, Event_ClientScriptRPCEvent_WillAnswerFallback);
19861986
Event_WeaponDamageEvent_SetDamageValue = (delegate* unmanaged[Cdecl]<nint, uint, void>) GetUnmanagedPtr<Event_WeaponDamageEvent_SetDamageValueDelegate>(funcTable, 18440396865533386791UL, Event_WeaponDamageEvent_SetDamageValueFallback);

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1592,7 +1592,7 @@ private IntPtr GetUnmanagedPtr<T>(IDictionary<ulong, IntPtr> funcTable, ulong ha
15921592
public SharedLibrary(Dictionary<ulong, IntPtr> funcTable)
15931593
{
15941594
if (!funcTable.TryGetValue(0, out var capiHash)) Outdated = true;
1595-
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 1071294164973163825UL) Outdated = true;
1595+
else if (capiHash == IntPtr.Zero || *(ulong*)capiHash != 10439883327927219649UL) Outdated = true;
15961596
Audio_GetID = (delegate* unmanaged[Cdecl]<nint, uint>) GetUnmanagedPtr<Audio_GetIDDelegate>(funcTable, 4464042055475980737UL, Audio_GetIDFallback);
15971597
AudioAttachedOutput_GetID = (delegate* unmanaged[Cdecl]<nint, uint>) GetUnmanagedPtr<AudioAttachedOutput_GetIDDelegate>(funcTable, 17725794901805112189UL, AudioAttachedOutput_GetIDFallback);
15981598
AudioFilter_GetID = (delegate* unmanaged[Cdecl]<nint, uint>) GetUnmanagedPtr<AudioFilter_GetIDDelegate>(funcTable, 8824535635529306325UL, AudioFilter_GetIDFallback);

api/AltV.Net.Client/Alt.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ public static bool GetBaseObjectById(BaseObjectType type, uint id, [MaybeNullWhe
7272
public static void EmitServerUnreliable(string eventName, params object[] args) => Core.TriggerServerEventUnreliable(eventName, args);
7373
public static void EmitClient(string eventName, params object[] args) => Core.TriggerLocalEvent(eventName, args);
7474

75+
public static ushort EmitRPCEvent(string name, params object[] args) => Core.TriggerServerRPCEvent(name, args);
76+
7577
public static bool HasResource(string name) => Core.HasResource(name);
7678
public static INativeResource GetResource(string name) => Core.GetResource(name);
7779
public static INativeResource[] GetAllResources() => Core.GetAllResources();

api/AltV.Net.Client/Core.Events.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -693,10 +693,10 @@ public void OnAudioEvent(IntPtr audioPtr, string name, IntPtr[] args)
693693
}
694694
}
695695

696-
public void OnServerScriptRPCAnswer(ushort answerid, IntPtr[] args, string answerError)
696+
public void OnServerScriptRPCAnswer(ushort answerid, IntPtr answer, string answerError)
697697
{
698-
var mValues = MValueConst.CreateFrom(this, args);
699-
ServerScriptRPCAnswerHandler.GetEvents().ForEachCatching(fn => fn(answerid, mValues.Select(x => x.ToObject()).ToArray(), answerError), $"event {nameof(OnServerScriptRPCAnswer)}");
698+
var mValue = new MValueConst(this, answer);
699+
ServerScriptRPCAnswerHandler.GetEvents().ForEachCatching(fn => fn(answerid, mValue, answerError), $"event {nameof(OnServerScriptRPCAnswer)}");
700700
}
701701
}
702702
}

api/AltV.Net.Client/Core.cs

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -769,6 +769,50 @@ public void TriggerServerEvent(string eventName, params object[] args)
769769
}
770770
}
771771

772+
public ushort TriggerServerRPCEvent(string name, params object[] args)
773+
{
774+
if (args == null) throw new ArgumentException("Arguments array should not be null.");
775+
var size = args.Length;
776+
var mValues = new MValueConst[size];
777+
CreateMValues(mValues, args);
778+
var result = TriggerServerRPCEvent(name, mValues);
779+
for (var i = 0; i < size; i++)
780+
{
781+
mValues[i].Dispose();
782+
}
783+
784+
return result;
785+
}
786+
787+
public ushort TriggerServerRPCEvent(string eventName, MValueConst[] args)
788+
{
789+
var eventNamePtr = AltNative.StringUtils.StringToHGlobalUtf8(eventName);
790+
var result = TriggerServerRPCEvent(eventNamePtr, args);
791+
Marshal.FreeHGlobal(eventNamePtr);
792+
return result;
793+
}
794+
795+
public ushort TriggerServerRPCEvent(IntPtr eventNamePtr, MValueConst[] args)
796+
{
797+
var size = args.Length;
798+
var mValuePointers = new IntPtr[size];
799+
for (var i = 0; i < size; i++)
800+
{
801+
mValuePointers[i] = args[i].nativePointer;
802+
}
803+
804+
return TriggerServerRPCEvent(eventNamePtr, mValuePointers);
805+
}
806+
807+
[MethodImpl(MethodImplOptions.AggressiveInlining)]
808+
public ushort TriggerServerRPCEvent(IntPtr eventNamePtr, IntPtr[] args)
809+
{
810+
unsafe
811+
{
812+
return Library.Client.Core_TriggerServerRPCEvent(NativePointer, eventNamePtr, args, args.Length);
813+
}
814+
}
815+
772816
public void TriggerServerEventUnreliable(string eventName, MValueConst[] args)
773817
{
774818
var eventNamePtr = AltNative.StringUtils.StringToHGlobalUtf8(eventName);

api/AltV.Net.Client/Events/Events.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ public delegate bool WeaponDamageDelegate(IEntity target, uint weapon, ushort da
6363
public delegate void PlayerBulletHitDelegate(uint weapon, IEntity victim, Position position);
6464
public delegate void VoiceConnectionDelegate(VoiceConnectionState state);
6565

66-
public delegate void ServerScriptRPCAnswerDelegate(ushort answerId, object[] answers, string answerError);
66+
public delegate void ServerScriptRPCAnswerDelegate(ushort answerId, object answer, string answerError);
6767

6868

6969

0 commit comments

Comments
 (0)