Skip to main content

Callbacks Component

Component Available
ServerYes
ClientYes

This component allows you to easily trigger server events and get a value returned from it without having to create 3 different events yourself. Simply have to register the Callback on the server and then call it from the Client passing whatever ID you assigned to it.

Required Attributes​


Server​

  • RegisterServerCallback: function

Client​

  • ServerCallback: function

Methods​


Server​

RegisterServerCallback​

  • Parameters: event: string, cb: function
  • Return: None
  • Description: Registers event ID to function for server callbacks

DoServerCallback​

  • Parameters: source: int, event: string, data: any
  • Return: val: any
  • Description: Executes registered function associated with given event ID.

Client​

ServerCallback​

  • Parameters: event: string, data: any, cb: function
  • Return: None
  • Description: Calls registered server callback with given event ID.

Events​


Server​

Callbacks:Server:TriggerEvent​

  • Sent Values: event: string, data: any
  • Description: Executes function registered to the callback event.

Client​

Callbacks:Client:ReceiveCallback​

  • Sent Values: event: string, data: any
  • Description: Executes function passed to the ServerCallback function to use the value the server returns.

Examples​


Below is a simple example of how the callback system works.

Server-Side​

exports['bs_base']:FetchComponent('Callbacks'):RegisterServerCallback('Component:Action', function(source, data, cb)
cb(Config.SomeServerValue)
end)

Client-Side​

exports['bs_base']:FetchComponent('Callbacks'):ServerCallback('Component:Action', data.character.id, function(value)
print(value)
end)