Files
ox_lib/imports/triggerClientEvent/server.lua
Linden fb2225e373 chore: add copyright notices to each file
Some people accidentally, mistakenly, and without any malicious intent forget to attribute code from this resource to its source. This change will hopefully assist people, so that they do not make that mistake again.
2025-03-18 18:46:09 +11:00

32 lines
1.1 KiB
Lua

--[[
https://github.com/overextended/ox_lib
This file is licensed under LGPL-3.0 or higher <https://www.gnu.org/licenses/lgpl-3.0.en.html>
Copyright (c) 2025 Linden <https://github.com/thelindat/fivem>
]]
---Triggers an event for the given playerIds, sending additional parameters as arguments.\
---Implements functionality from [this pending pull request](https://github.com/citizenfx/fivem/pull/1210) and may be deprecated.
---
---Provides non-neglibible performance gains due to msgpacking all arguments _once_, instead of per-target.
---@param eventName string
---@param targetIds number | ArrayLike<number>
---@param ... any
function lib.triggerClientEvent(eventName, targetIds, ...)
local payload = msgpack.pack_args(...)
local payloadLen = #payload
if lib.array.isArray(targetIds) then
for i = 1, #targetIds do
TriggerClientEventInternal(eventName, targetIds[i] --[[@as string]], payload, payloadLen)
end
return
end
TriggerClientEventInternal(eventName, targetIds --[[@as string]], payload, payloadLen)
end
return lib.triggerClientEvent