Network Packets
This script shows how to use network packets:
// Listen to a player event, in this case item right-click
// This goes in either server or client script, depending on which side you want to send the data packet to
onEvent('item.right_click', event => {
// Check if item was right-clicked on client or server side
if (event.server) {
// Send data {test: 123} to channel "test_channel_1". Channel ID can be any string, but it's recommended to keep it to snake_case [a-z_0-9].
// Receiving side will be client (because its fired from server).
event.player.sendData('test_channel_1', { test: 123 })
} else {
// It's not required to use a different channel ID, but it's recommended.
// Receiving side will be server (because its fired from client).
event.player.sendData('test_channel_2', { test: 456 })
}
})
// Listen to event that gets fired when network packet is received from server.
// This goes in a client script
onEvent('player.data_from_server.test_channel_1', event => {
log.info(event.data.test) // Prints 123
})
// Listen to event that gets fired when network packet is received from client.
// This goes in a server script
onEvent('player.data_from_client.test_channel_2', event => {
log.info(event.data.test) // Prints 456
})