RegisterServerEvent('mr-admin:server:getplayers')
AddEventHandler('mr-admin:server:getplayers', function()
local players = {}
for k, player in pairs(GetActivePlayers()) do
local playerId = GetPlayerServerId(player)
players[k] = {
['ped'] = GetPlayerPed(player),
['name'] = GetPlayerName(player),
['id'] = player,
['serverid'] = playerId,
}
end
table.sort(players, function(a, b)
return a.serverid < b.serverid
end)
return players
end)
Client:
elseif WarMenu.IsMenuOpened('playerMan') then
TriggerServerEvent("mr-admin:server:getplayers", playerId)
for k, v in pairs(players) do
WarMenu.CreateSubMenu(v["id"], 'playerMan', v["serverid"].." | "..v["name"])
end
I used this code to make it work with my server, but the player id still gives all the players id and i don’t know how get one player id to make it work.
Server:
Citizen.CreateThread(function()
while true do
Citizen.Wait(3000)
local userids = {}
for t,v in pairs(GetPlayers()) do
table.insert(userids, {
name = GetPlayerName(v),
id = v,
getped = GetPlayerPed(v),
getcoords = GetEntityCoords(getped)
})
end TriggerClientEvent('mello:players', -1, userids)
end
end)
Client
local userids = {}
RegisterNetEvent("mello:players")
AddEventHandler("mello:players", function(players)
userids = players
end)
--Function or loop
for _, player in ipairs(userids) do
-- your code
end