Files
cfx-server-data/resources/[gameplay]/playernames/playernames_sv.lua
T
Mathu-lmnandGitHub 39b91b14ce Code modernize (#234)
* refactor: declare exports at runtime and drop the player-data provides alias

Signed-off-by: Mathu-lmn <[email protected]>

* refactor: pass handlers directly to RegisterNetEvent

Signed-off-by: Mathu-lmn <[email protected]>

* refactor: use CreateThread/Wait without the Citizen prefix

Signed-off-by: Mathu-lmn <[email protected]>

* chore: remove trailing whitespace, stray lines and unused locals

Signed-off-by: Mathu-lmn <[email protected]>

---------

Signed-off-by: Mathu-lmn <[email protected]>
2026-09-23 21:00:01 +02:00

46 lines
1.0 KiB
Lua

local curTemplate
local curTags = {}
local activePlayers = {}
local function detectUpdates()
SetTimeout(500, detectUpdates)
local template = GetConvar('playerNames_template', '[{{id}}] {{name}}')
if curTemplate ~= template then
setNameTemplate(-1, template)
curTemplate = template
end
template = GetConvar('playerNames_svTemplate', '[{{id}}] {{name}}')
for v, _ in pairs(activePlayers) do
local newTag = formatPlayerNameTag(v, template)
if newTag ~= curTags[v] then
setName(v, newTag)
curTags[v] = newTag
end
end
for i, tag in pairs(curTags) do
if not activePlayers[i] then
curTags[i] = nil -- in case curTags doesnt get cleared when the player left, clear it now.
end
end
end
AddEventHandler('playerDropped', function()
curTags[source] = nil
activePlayers[source] = nil
end)
RegisterNetEvent('playernames:init', function()
reconfigure(source)
activePlayers[source] = true
end)
detectUpdates()