From 4cd90dc1d8888c3e9a9892f7279ff7bfef0ac889 Mon Sep 17 00:00:00 2001 From: MiddleSkillz Date: Thu, 6 May 2021 02:21:31 -0600 Subject: [PATCH] refactor: Optimize death module --- client/main.lua | 18 ++++++++---------- client/modules/death.lua | 10 ++++++++-- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/client/main.lua b/client/main.lua index 94ad977d..d9023ef9 100644 --- a/client/main.lua +++ b/client/main.lua @@ -405,17 +405,15 @@ function StartServerSyncLoops() end) end -Citizen.CreateThread(function() - while Config.EnableDefaultInventory do - Citizen.Wait(9) - - if IsControlJustReleased(0, 289) then - if IsInputDisabled(0) and not isDead and not ESX.UI.Menu.IsOpen('default', 'es_extended', 'inventory') then - ESX.ShowInventory() - end +if Config.EnableDefaultInventory then + RegisterCommand('showinv', function() + if not isDead and not ESX.UI.Menu.IsOpen('default', 'es_extended', 'inventory') then + ESX.ShowInventory() end - end -end) + end) + + RegisterKeyMapping('showinv', _U('keymap_showinventory'), 'keyboard', 'F2') +end Citizen.CreateThread(function() while true do diff --git a/client/modules/death.lua b/client/modules/death.lua index b7cd047a..baa2e727 100644 --- a/client/modules/death.lua +++ b/client/modules/death.lua @@ -2,13 +2,15 @@ Citizen.CreateThread(function() local isDead = false while true do - Citizen.Wait(150) + Citizen.Wait(0) + local letSleep = 0 local player = PlayerId() if NetworkIsPlayerActive(player) then local playerPed = PlayerPedId() if IsPedFatallyInjured(playerPed) and not isDead then + letSleep = false isDead = true local killerEntity, deathCause = GetPedSourceOfDeath(playerPed), GetPedCauseOfDeath(playerPed) @@ -20,10 +22,14 @@ Citizen.CreateThread(function() PlayerKilled(deathCause) end - elseif not IsPedFatallyInjured(playerPed) then + elseif not IsPedFatallyInjured(playerPed) and isDead then + letSleep = false isDead = false end end + if letSleep then + Citizen.Wait(500) + end end end)