1
0
mirror of https://github.com/citizenfx/cfx-server-data.git synced 2025-01-24 18:32:53 +08:00
cfx-server-data/resources/[system]/rconlog/rconlog_server.lua
tabarra ab4eccec83
Added metadata to all manifest files (#136)
* ton of stuf

* more

* system resources: added fxmanifest meta tags

* manager resources: added fxmanifest meta tags

* gameplay resources: added fxmanifest meta tags

* gamemode resources: added fxmanifest meta tags

* gameplay example resources: reverted descriptions

* test resources: added fxmanifest meta tags

* smol fixes

* added author email + minor changes

* fixed manifest file trailing line inconsistencies

* Update fxmanifest.lua

* Update fxmanifest.lua

* Update fxmanifest.lua

* Update fxmanifest.lua

* Update fxmanifest.lua

* Update fxmanifest.lua

* Update fxmanifest.lua

* Update fxmanifest.lua

* Update __resource.lua

* additional phrasing/branding changes

Co-authored-by: PLOKMJNB <PLOKMJNB@users.noreply.github.com>
Co-authored-by: Danish Khan <61810778+PLOKMJNB@users.noreply.github.com>
Co-authored-by: Technetium <65681715+technetium-cfx@users.noreply.github.com>
Co-authored-by: blattersturm <peachypies@protonmail.ch>
2020-11-22 16:49:22 +01:00

85 lines
2.5 KiB
Lua

RconLog({ msgType = 'serverStart', hostname = 'lovely', maxplayers = 32 })
RegisterServerEvent('rlPlayerActivated')
local names = {}
AddEventHandler('rlPlayerActivated', function()
RconLog({ msgType = 'playerActivated', netID = source, name = GetPlayerName(source), guid = GetPlayerIdentifiers(source)[1], ip = GetPlayerEP(source) })
names[source] = { name = GetPlayerName(source), id = source }
if GetHostId() then
TriggerClientEvent('rlUpdateNames', GetHostId())
end
end)
RegisterServerEvent('rlUpdateNamesResult')
AddEventHandler('rlUpdateNamesResult', function(res)
if source ~= tonumber(GetHostId()) then
print('bad guy')
return
end
for id, data in pairs(res) do
if data then
if data.name then
if not names[id] then
names[id] = data
end
if names[id].name ~= data.name or names[id].id ~= data.id then
names[id] = data
RconLog({ msgType = 'playerRenamed', netID = id, name = data.name })
end
end
else
names[id] = nil
end
end
end)
AddEventHandler('playerDropped', function()
RconLog({ msgType = 'playerDropped', netID = source, name = GetPlayerName(source) })
names[source] = nil
end)
AddEventHandler('chatMessage', function(netID, name, message)
RconLog({ msgType = 'chatMessage', netID = netID, name = name, message = message, guid = GetPlayerIdentifiers(netID)[1] })
end)
-- NOTE: DO NOT USE THIS METHOD FOR HANDLING COMMANDS
-- This resource has not been updated to use newer methods such as RegisterCommand.
AddEventHandler('rconCommand', function(commandName, args)
if commandName == 'status' then
for netid, data in pairs(names) do
local guid = GetPlayerIdentifiers(netid)
if guid and guid[1] and data then
local ping = GetPlayerPing(netid)
RconPrint(netid .. ' ' .. guid[1] .. ' ' .. data.name .. ' ' .. GetPlayerEP(netid) .. ' ' .. ping .. "\n")
end
end
CancelEvent()
elseif commandName:lower() == 'clientkick' then
local playerId = table.remove(args, 1)
local msg = table.concat(args, ' ')
DropPlayer(playerId, msg)
CancelEvent()
elseif commandName:lower() == 'tempbanclient' then
local playerId = table.remove(args, 1)
local msg = table.concat(args, ' ')
TempBanPlayer(playerId, msg)
CancelEvent()
end
end)