Server

Callbacks provide server-client communication with synchronous-style syntax.

lib.promise.on

Register a callback that clients can await for.

lib.promise.on(name, func)

Parameters

  • name: string
  • func: function

Returns

  • success boolean

Examples

server.lua
lib.promise.on('tr_kit:server:createMultiplePeds', function(source, peds, defaultSettings)
  local createdPeds<const> = createMultiplePeds(source, peds, defaultSettings)
  return createdPeds
end)

lib.promise.await

Await for a registered client callback's result.

lib.promise.await({ timeout, debug }, name, source, ...)

Parameters

  • debug?: boolean
  • timeout?: number
  • name: string
  • source: number
  • ...?: varargs

Returns

  • any

Examples

server.lua
lib.promise.on('tr_kit:server:createSinglePed', function(source, settings)
  local fallback<const> = lib.promise.await({ 2500 }, 'tr_kit:client:getDefaultSettings', source, settings)
  local createdPeds<const> = createSinglePed(settings, fallback)
  return createdPeds
end)