-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathclient.lua
81 lines (67 loc) · 2.57 KB
/
client.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
ESX = exports["es_extended"]:getSharedObject()
local canAddKill = true
RegisterNetEvent('esx:playerLoaded')
AddEventHandler('esx:playerLoaded',function()
loadDatas()
SendNUIMessage({action = 'loadConfig', colorTheme = config.colorTheme})
end)
RegisterCommand('show_kd', function()
SendNUIMessage({action='showKD'})
end)
RegisterCommand('hide_kd', function()
SendNUIMessage({action='hideKD'})
end)
RegisterCommand('leaderboard', function()
ESX.TriggerServerCallback('leaderboard:getAllPlayerData', function(playersData, myRank)
SendNUIMessage({action = 'allPlayerDataActive', allPlayerData = playersData, myRank = myRank})
end)
SetNuiFocus(true, true)
SendNUIMessage({action='leaderboardEnable'})
end)
RegisterKeyMapping('leaderboard', 'Open leaderboard', 'keyboard', config.openKey)
RegisterNUICallback('hideLeaderboard', function()
SendNUIMessage({action='leaderboardDisable'})
SetNuiFocus(false, false)
end)
RegisterNUICallback('setNuiFocusDisable', function()
SetNuiFocus(false, false)
end)
Citizen.CreateThread(function()
while true do
local entity = GetPedSourceOfDeath(PlayerPedId())
if entity ~= 0 and canAddKill then
local id = GetPlayerServerId(NetworkGetEntityOwner(entity))
ESX.TriggerServerCallback('leaderboard:addKill', function() end, id)
ESX.TriggerServerCallback('leaderboard:addDeath', function() end)
canAddKill = false
end
if IsPlayerDead(PlayerId()) == false then
canAddKill = true
end
ESX.TriggerServerCallback('leaderboard:getPlayerData', function(playerData)
if playerData ~= null then
SendNUIMessage({action = 'playerDataActive', playerDataActive = playerData})
end
end)
Wait(config.updateTime)
end
end)
function loadDatas()
ESX.TriggerServerCallback('leaderboard:setPlayerData', function() end)
Wait(1000)
ESX.TriggerServerCallback('leaderboard:getPlayerData', function(playerData)
if playerData ~= null then
SendNUIMessage({action = 'playerDataActive', playerDataActive = playerData})
end
end)
end
Citizen.CreateThread(function()
ESX.TriggerServerCallback('leaderboard:setPlayerData', function()
SendNUIMessage({action = 'loadConfig', colorTheme = config.colorTheme})
end)
ESX.TriggerServerCallback('leaderboard:getPlayerData', function(playerData)
if playerData ~= null then
SendNUIMessage({action = 'playerDataActive', playerDataActive = playerData})
end
end)
end)