@@ -14,19 +14,12 @@ Callbacks.id = 0
1414-- MARK: Internal Functions
1515-- =============================================
1616
17- function Callbacks :Trigger (event , cb , invoker , ...)
1817
19- self .requests [self .id ] = {
20- await = type (cb ) == " boolean" ,
21- cb = cb or promise :new ()
18+ function Callbacks :Register (name , resource , cb )
19+ self .storage [name ] = {
20+ resource = resource ,
21+ cb = cb
2222 }
23- local table = self .requests [self .id ]
24-
25- TriggerServerEvent (" esx:triggerServerCallback" , event , self .id , invoker , ... )
26-
27- self .id += 1
28-
29- return table .cb
3023end
3124
3225function Callbacks :Execute (cb , id , ...)
@@ -39,6 +32,20 @@ function Callbacks:Execute(cb, id, ...)
3932 end
4033end
4134
35+ function Callbacks :Trigger (event , cb , invoker , ...)
36+ self .requests [self .id ] = {
37+ await = type (cb ) == " boolean" ,
38+ cb = cb or promise :new ()
39+ }
40+ local table = self .requests [self .id ]
41+
42+ TriggerServerEvent (" esx:triggerServerCallback" , event , self .id , invoker , ... )
43+
44+ self .id += 1
45+
46+ return table .cb
47+ end
48+
4249function Callbacks :ServerRecieve (requestId , invoker , ...)
4350 if not self .requests [requestId ] then
4451 return error ((" Server Callback with requestId ^5%s^1 Was Called by ^5%s^1 but does not exist." ):format (requestId , invoker ))
@@ -49,21 +56,13 @@ function Callbacks:ServerRecieve(requestId, invoker, ...)
4956 self .requests [requestId ] = nil
5057
5158 if callback .await then
52- callback .cb :resolve ({... })
59+ callback .cb :resolve ({ ... })
5360 else
5461 self :Execute (callback .cb , requestId , ... )
5562 end
5663end
5764
58- function Callbacks :Register (name , resource , cb )
59- self .storage [name ] = {
60- resource = resource ,
61- cb = cb
62- }
63- end
64-
6565function Callbacks :ClientRecieve (eventName , requestId , invoker , ...)
66-
6766 if not self .storage [eventName ] then
6867 return error ((" Client Callback with requestId ^5%s^1 Was Called by ^5%s^1 but does not exist." ):format (eventName , invoker ))
6968 end
@@ -130,14 +129,14 @@ end
130129-- MARK: Events
131130-- =============================================
132131
133- ESX .SecureNetEvent (" esx:triggerClientCallback" , function (...)
134- Callbacks :ClientRecieve (... )
135- end )
136-
137132ESX .SecureNetEvent (" esx:serverCallback" , function (...)
138133 Callbacks :ServerRecieve (... )
139134end )
140135
136+ ESX .SecureNetEvent (" esx:triggerClientCallback" , function (...)
137+ Callbacks :ClientRecieve (... )
138+ end )
139+
141140AddEventHandler (" onResourceStop" , function (resource )
142141 for k , v in pairs (Callbacks .storage ) do
143142 if v .resource == resource then
0 commit comments