diff --git a/[esx]/es_extended/client/modules/death.lua b/[esx]/es_extended/client/modules/death.lua
index 54b478fb..75361ba0 100644
--- a/[esx]/es_extended/client/modules/death.lua
+++ b/[esx]/es_extended/client/modules/death.lua
@@ -1,32 +1,17 @@
-CreateThread(function()
- local isDead = false
-
- while true do
- local sleep = 1500
- local player = PlayerId()
-
- if NetworkIsPlayerActive(player) then
- local playerPed = PlayerPedId()
-
- if IsPedFatallyInjured(playerPed) and not isDead then
- sleep = 0
- isDead = true
-
- local killerEntity, deathCause = GetPedSourceOfDeath(playerPed), GetPedCauseOfDeath(playerPed)
- local killerClientId = NetworkGetPlayerIndexFromPed(killerEntity)
-
- if killerEntity ~= playerPed and killerClientId and NetworkIsPlayerActive(killerClientId) then
- PlayerKilledByPlayer(GetPlayerServerId(killerClientId), killerClientId, deathCause)
- else
- PlayerKilled(deathCause)
- end
-
- elseif not IsPedFatallyInjured(playerPed) and isDead then
- sleep = 0
- isDead = false
- end
+AddEventHandler('gameEventTriggered', function(event, data)
+ if event ~= 'CEventNetworkEntityDamage' then return end
+ local victim, victimDied = data[1], data[4]
+ if not IsPedAPlayer(victim) then return end
+ local player = PlayerId()
+ local playerPed = PlayerPedId()
+ if victimDied and NetworkGetPlayerIndexFromPed(victim) == player and IsPedDeadOrDying(victim, true) then
+ local killerEntity, deathCause = GetPedSourceOfDeath(playerPed), GetPedCauseOfDeath(playerPed)
+ local killerClientId = NetworkGetPlayerIndexFromPed(killerEntity)
+ if killerEntity ~= playerPed and killerClientId and NetworkIsPlayerActive(killerClientId) then
+ PlayerKilledByPlayer(GetPlayerServerId(killerClientId), killerClientId, deathCause)
+ else
+ PlayerKilled(deathCause)
end
- Wait(sleep)
end
end)
diff --git a/[esx]/es_extended/server/classes/player.lua b/[esx]/es_extended/server/classes/player.lua
index f086e224..e15ec671 100644
--- a/[esx]/es_extended/server/classes/player.lua
+++ b/[esx]/es_extended/server/classes/player.lua
@@ -300,10 +300,14 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory,
end
function self.canCarryItem(name, count, metadata)
- local currentWeight, itemWeight = self.weight, ESX.Items[name].weight
- local newWeight = currentWeight + (itemWeight * count)
+ if ESX.Items[name] then
+ local currentWeight, itemWeight = self.weight, ESX.Items[name].weight
+ local newWeight = currentWeight + (itemWeight * count)
- return newWeight <= self.maxWeight
+ return newWeight <= self.maxWeight
+ else
+ print(('[^3WARNING^7] Item ^5"%s"^7 was used but does not exist!'):format(name))
+ end
end
function self.canSwapItem(firstItem, firstItemCount, testItem, testItemCount)
diff --git a/[esx]/esx_context/index.html b/[esx]/esx_context/index.html
index c44b7d3e..fa50034e 100644
--- a/[esx]/esx_context/index.html
+++ b/[esx]/esx_context/index.html
@@ -1,7 +1,8 @@
+
-
+
@@ -9,7 +10,7 @@
ESX Context HUD
-
+
-
+
Unselectable ItemTesting, testing a description here.
-
+
Disabled ItemTesting, testing a description here.
-
+
ItemTesting, testing a description here. Generic words to force overflow.
-
+
+
\ No newline at end of file
diff --git a/[esx_addons]/esx_banking/client/main.lua b/[esx_addons]/esx_banking/client/main.lua
index 2c60fe9f..342eefb9 100644
--- a/[esx_addons]/esx_banking/client/main.lua
+++ b/[esx_addons]/esx_banking/client/main.lua
@@ -172,11 +172,11 @@ local function StartThread()
PedHandler(closestPed)
end
- if not isInMenu and IsPedOnFoot(PlayerPedId()) then
+ if IsPedOnFoot(PlayerPedId()) then
local closestBank = {}
for i = 1, #Config.AtmModels do
- local atm = GetClosestObjectOfType(_GetEntityCoords, 3.0, Config.AtmModels[i], false)
+ local atm = GetClosestObjectOfType(_GetEntityCoords, 8.0, Config.AtmModels[i], false)
if atm ~= 0 then
local atmOffset = GetOffsetFromEntityInWorldCoords(atm, 0.0, -0.7, 0.0)
local atmHeading = GetEntityHeading(atm)
diff --git a/[esx_addons]/esx_banking/server/main.lua b/[esx_addons]/esx_banking/server/main.lua
index 3b9f3d76..110c19d9 100644
--- a/[esx_addons]/esx_banking/server/main.lua
+++ b/[esx_addons]/esx_banking/server/main.lua
@@ -48,7 +48,7 @@ AddEventHandler('esx_banking:doingType', function(typeData)
end
amount = ESX.Math.Round(amount)
- if amount == nil or amount <= 0 then
+ if amount == nil or (not typeData.pincode and amount <= 0) then
TriggerClientEvent("esx:showNotification", source, TranslateCap('invalid_amount'), "error")
else
if typeData.deposit and amount <= money then
@@ -79,7 +79,7 @@ AddEventHandler('esx_banking:doingType', function(typeData)
TriggerClientEvent("esx:showNotification", source,
TranslateCap(string.format('%s_money', key), amount, typeData.transfer.playerId), "success")
else
- TriggerClientEvent("esx:showNotification", source, TranslateCap(string.format('%s_money', key), amount), "success")
+ TriggerClientEvent("esx:showNotification", source, TranslateCap(string.format('%s_money', key), typeData.pincode and (string.format("%04d", amount)) or amount), "success")
end
if not typeData.pincode then
BANK.LogTransaction(source, string.upper(key), amount, bankMoney)
diff --git a/[esx_addons]/esx_lscustom/client/main.lua b/[esx_addons]/esx_lscustom/client/main.lua
index b598f9b8..c5c79fd6 100644
--- a/[esx_addons]/esx_lscustom/client/main.lua
+++ b/[esx_addons]/esx_lscustom/client/main.lua
@@ -17,6 +17,15 @@ AddEventHandler('esx_lscustom:installMod', function()
TriggerServerEvent('esx_lscustom:refreshOwnedVehicle', myCar)
end)
+RegisterNetEvent('esx_lscustom:restoreMods', function(netId, props)
+ local xVehicle = NetworkGetEntityFromNetworkId(netId)
+ if props ~= nil then
+ if DoesEntityExist(xVehicle) then
+ ESX.Game.SetVehicleProperties(xVehicle, props)
+ end
+ end
+end)
+
RegisterNetEvent('esx_lscustom:cancelInstallMod')
AddEventHandler('esx_lscustom:cancelInstallMod', function()
local vehicle = GetVehiclePedIsIn(PlayerPedId(), false)
@@ -51,7 +60,6 @@ AddEventHandler('onResourceStop', function(resource)
end
end)
-
function OpenLSMenu(elems, menuName, menuTitle, parent)
ESX.UI.Menu.Open('default', GetCurrentResourceName(), menuName, {
title = menuTitle,
@@ -82,7 +90,7 @@ function OpenLSMenu(elems, menuName, menuTitle, parent)
break
end
end
-
+
if isRimMod then
price = math.floor(vehiclePrice * data.current.price / 100)
TriggerServerEvent('esx_lscustom:buyMod', price)
@@ -120,6 +128,7 @@ function OpenLSMenu(elems, menuName, menuTitle, parent)
lsMenuIsShowed = false
local vehicle = GetVehiclePedIsIn(PlayerPedId(), false)
FreezeEntityPosition(vehicle, false)
+ TriggerServerEvent('esx_lscustom:stopModing', myCar.plate)
myCar = {}
end
end, function(data, menu) -- on change
@@ -170,7 +179,6 @@ function GetAction(data)
local playerPed = PlayerPedId()
local vehicle = GetVehiclePedIsIn(playerPed, false)
local currentMods = ESX.Game.GetVehicleProperties(vehicle)
-
if data.value == 'modSpeakers' or data.value == 'modTrunk' or data.value == 'modHydrolic' or data.value ==
'modEngineBlock' or data.value == 'modAirFilter' or data.value == 'modStruts' or data.value == 'modTank' then
SetVehicleDoorOpen(vehicle, 4, false)
@@ -503,6 +511,9 @@ CreateThread(function()
local vehicle = GetVehiclePedIsIn(playerPed, false)
FreezeEntityPosition(vehicle, true)
myCar = ESX.Game.GetVehicleProperties(vehicle)
+
+ local netId = NetworkGetNetworkIdFromEntity(vehicle)
+ TriggerServerEvent('esx_lscustom:startModing', myCar, netId)
ESX.UI.Menu.CloseAll()
GetAction({
diff --git a/[esx_addons]/esx_lscustom/server/main.lua b/[esx_addons]/esx_lscustom/server/main.lua
index 5d95fe1f..a2f41376 100644
--- a/[esx_addons]/esx_lscustom/server/main.lua
+++ b/[esx_addons]/esx_lscustom/server/main.lua
@@ -1,4 +1,40 @@
local Vehicles
+local Customs = {}
+
+RegisterNetEvent('esx_lscustom:startModing', function(props, netId)
+ local src = tostring(source)
+ if Customs[src] then
+ Customs[src][props.plate] = {props = props, netId = netId}
+ else
+ Customs[src] = {}
+ Customs[src][props.plate] = {props = props, netId = netId}
+ end
+end)
+
+RegisterNetEvent('esx_lscustom:stopModing', function(plate)
+ local src = tostring(source)
+ if Customs[src] then
+ Customs[src][tostring(plate)] = nil
+ end
+end)
+
+AddEventHandler('esx:playerDropped', function(src)
+ src = tostring(src)
+ local playersCount = #ESX.GetExtendedPlayers()
+ if Customs[src] then
+ for k,v in pairs(Customs[src]) do
+ local entity = NetworkGetEntityFromNetworkId(v.netId)
+ if DoesEntityExist(entity) then
+ if players > 0 then
+ TriggerClientEvent('esx_lscustom:restoreMods', -1, v.netId, v.props)
+ else
+ DeleteEntity(entity)
+ end
+ end
+ end
+ Customs[src] = nil
+ end
+end)
RegisterServerEvent('esx_lscustom:buyMod')
AddEventHandler('esx_lscustom:buyMod', function(price)
@@ -41,9 +77,9 @@ AddEventHandler('esx_lscustom:refreshOwnedVehicle', function(vehicleProps)
function(result)
if result then
local vehicle = json.decode(result.vehicle)
-
if vehicleProps.model == vehicle.model then
MySQL.update('UPDATE owned_vehicles SET vehicle = ? WHERE plate = ?', {json.encode(vehicleProps), vehicleProps.plate})
+ Customs[tostring(source)][tostring(vehicleProps.plate)].props = props
else
print(('[^3WARNING^7] Player ^5%s^7 Attempted To upgrade with mismatching vehicle model'):format(xPlayer.source))
end
diff --git a/[esx_addons]/esx_property/client/cctv.lua b/[esx_addons]/esx_property/client/cctv.lua
index 6d0ec39e..05b46c25 100644
--- a/[esx_addons]/esx_property/client/cctv.lua
+++ b/[esx_addons]/esx_property/client/cctv.lua
@@ -14,7 +14,7 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see .
-]]
+]]
function CCTV(PropertyID)
DoScreenFadeOut(500)
Wait(500)
@@ -70,7 +70,7 @@ function CCTV(PropertyID)
PushScaleformMovieFunctionParameterInt(4)
N_0xe83a3e3557a56640(GetControlInstructionalButton(1, Config.CCTV.Controls.ZoomOut, true))
N_0xe83a3e3557a56640(GetControlInstructionalButton(1, Config.CCTV.Controls.ZoomIn, true))
- InstructionButtonMessage(TranslateCap("Zoom"))
+ InstructionButtonMessage(TranslateCap("zoom"))
PopScaleformMovieFunctionVoid()
PushScaleformMovieFunction(scaleform, "SET_DATA_SLOT")
diff --git a/[esx_addons]/esx_property/client/furniture.lua b/[esx_addons]/esx_property/client/furniture.lua
index 7ca92e14..52314fc2 100644
--- a/[esx_addons]/esx_property/client/furniture.lua
+++ b/[esx_addons]/esx_property/client/furniture.lua
@@ -103,14 +103,14 @@ if Config.Furniture.Enabled then
PushScaleformMovieFunctionParameterInt(5)
N_0xe83a3e3557a56640(GetControlInstructionalButton(1, Config.Furniture.Controls.Up, true))
N_0xe83a3e3557a56640(GetControlInstructionalButton(1, Config.Furniture.Controls.Down, true))
- InstructionButtonMessage(TranslateCap("Height"))
+ InstructionButtonMessage(TranslateCap("height"))
PopScaleformMovieFunctionVoid()
PushScaleformMovieFunction(scaleform, "SET_DATA_SLOT")
PushScaleformMovieFunctionParameterInt(7)
N_0xe83a3e3557a56640(GetControlInstructionalButton(1, Config.Furniture.Controls.RotateLeft, true))
N_0xe83a3e3557a56640(GetControlInstructionalButton(1, Config.Furniture.Controls.RotateRight, true))
- InstructionButtonMessage(TranslateCap("Rotation"))
+ InstructionButtonMessage(TranslateCap("rotate"))
PopScaleformMovieFunctionVoid()
PushScaleformMovieFunction(scaleform, "SET_DATA_SLOT")
diff --git a/[esx_addons]/esx_property/client/main.lua b/[esx_addons]/esx_property/client/main.lua
index 4aa41e29..9c2fd4f2 100644
--- a/[esx_addons]/esx_property/client/main.lua
+++ b/[esx_addons]/esx_property/client/main.lua
@@ -281,7 +281,7 @@ function PropertyMenuElements(PropertyId)
value = 'property_wardrobe'})
end
table.insert(elements,
- {title = TranslateCap("Furniture_title"), description = TranslateCap("Furniture_desc"), icon = "fas fa-boxes-stacked", value = 'property_furniture'})
+ {title = TranslateCap("furniture_title"), description = TranslateCap("furniture_desc"), icon = "fas fa-boxes-stacked", value = 'property_furniture'})
end
end
if (not Property.Locked or Config.OwnerCanAlwaysEnter and ESX.PlayerData.identifier == Property.Owner) and not InProperty then
@@ -454,7 +454,7 @@ function OpenPropertyMenu(PropertyId)
local eles = PropertyMenuElements(PropertyId)
exports["esx_context"]:Refresh(eles)
else
- ESX.ShowNotification(TranslateCap("cannot_Sell"), "error")
+ ESX.ShowNotification(TranslateCap("cannot_sell"), "error")
end
end, PropertyId, element.value)
end
@@ -476,7 +476,7 @@ function OpenPropertyMenu(PropertyId)
local eles = PropertyMenuElements(PropertyId)
exports["esx_context"]:Refresh(eles)
else
- ESX.ShowNotification(TranslateCap("cannot_Sell"), "error")
+ ESX.ShowNotification(TranslateCap("cannot_sell"), "error")
end
end, PropertyId)
end
diff --git a/[esx_addons]/esx_property/locales/en.lua b/[esx_addons]/esx_property/locales/en.lua
index 6cd3347b..217c1206 100644
--- a/[esx_addons]/esx_property/locales/en.lua
+++ b/[esx_addons]/esx_property/locales/en.lua
@@ -4,8 +4,8 @@ Locales['en'] = {
["take_picture"] = "Take Picture",
["rot_left_right"] = "Left/Right",
["rot_up_down"] = "Up/Down",
- ["Zoom"] = "Zoom In/Out",
- ["Zoom_level"] = "Zoom Level: %s %",
+ ["zoom"] = "Zoom In/Out",
+ ["zoom_level"] = "Zoom Level: %s %",
["night_vision"] = "Toggle Night Vision",
["clipboard"] = "Link Copied To ~b~Cipboard",
["picture_taken"] = "Picture Taken!",
@@ -14,7 +14,7 @@ Locales['en'] = {
--- Furniture Strings ------
- ["Height"] = "Height",
+ ["height"] = "Height",
["rotate"] = "Rotation",
["place"] = "Place Furniture",
["delete_furni"] = "Delete",
@@ -41,7 +41,7 @@ Locales['en'] = {
["menu_edit"] = "Edit",
["menu_edit_desc"] = "Move and/or Delete furniture items",
["furni_command"] = "furniture",
- ["furni_Command_desc"] = "(ESX Property) Open Furniture Menu",
+ ["furni_command_desc"] = "(ESX Property) Open Furniture Menu",
["furni_command_permission"] = "You ~r~Cannot~s~ Access This Menu!",
["furni_reset_success"] = "Furniture Reset!",
["furni_cannot_afford"] = "You Cannot Afford Todo this!",
@@ -113,8 +113,8 @@ Locales['en'] = {
["inventory_desc"] = "Change Position of Property Storage.",
["wardrobe_title"] = "Wardrobe",
["wardrobe_desc"] = "Change Position of Property Wardrobe.",
- ["Furniture_title"] = "Furniture",
- ["Furniture_desc"] = "Change Position of Property Furniture.",
+ ["furniture_title"] = "Furniture",
+ ["furniture_desc"] = "Change Position of Property Furniture.",
["enter_title"] = "Enter",
["knock_title"] = "Knock On Door",
["buy_title"] = "Buy",
@@ -139,11 +139,11 @@ Locales['en'] = {
["please_finish"] = "Please Finish Setting ~b~%s~s~ Position",
["cannot_afford"] = "You Cannot Purchase This Property!",
["select_player"] = "Select Player",
- ["cannot_Sell"] = "Cannot Sell To This Player!",
+ ["cannot_sell"] = "Cannot Sell To This Player!",
["knock_on_door"] = "Knocking On Door...",
["nobody_home"] = "It Seems Nobody is home...",
- ---------- General Strings ----------------
+ ---------- General Strings ----------------
["enabled"] = "Enabled",
["disabled"] = "Disabled",
@@ -166,7 +166,7 @@ Locales['en'] = {
["cannot_access_property"] = 'You ~r~Cannot~s~ Access this property.',
- ----------------- Creation Menu Strings ----------------
+ ----------------- Creation Menu Strings ----------------
["menu_title"] = "Property Creation",
["element_title1"] = "Street Number",
diff --git a/[esx_addons]/esx_property/locales/nl.lua b/[esx_addons]/esx_property/locales/nl.lua
index b2669538..aa7bc704 100644
--- a/[esx_addons]/esx_property/locales/nl.lua
+++ b/[esx_addons]/esx_property/locales/nl.lua
@@ -4,8 +4,8 @@ Locales['nl'] = {
["take_picture"] = "Neem foto",
["rot_left_right"] = "Links/Rechts",
["rot_up_down"] = "Omhoog/Omblaag",
- ["Zoom"] = "Zoom In/Uit",
- ["Zoom_level"] = "Zoom Level: %s %",
+ ["zoom"] = "Zoom In/Uit",
+ ["zoom_level"] = "Zoom Level: %s %",
["night_vision"] = "Nachtcamera aanzetten",
["clipboard"] = "Link gekopierd naar ~b~klembord",
["picture_taken"] = "Foto genomen!",
@@ -14,7 +14,7 @@ Locales['nl'] = {
--- Furniture Strings ------
- ["Height"] = "Hoogte",
+ ["height"] = "Hoogte",
["rotate"] = "Rotatie",
["place"] = "Plaats Meubel",
["delete_furni"] = "Verwijder",
@@ -41,7 +41,7 @@ Locales['nl'] = {
["menu_edit"] = "Aanpassen",
["menu_edit_desc"] = "Verplaats en/of verwijder meubels",
["furni_command"] = "meubel",
- ["furni_Command_desc"] = "(ESX Property) Open meubel menu",
+ ["furni_command_desc"] = "(ESX Property) Open meubel menu",
["furni_command_permission"] = "Je ~r~Kan dit~s~ menu niet betreden!",
["furni_reset_success"] = "Meubel Reset!",
["furni_cannot_afford"] = "Je kan dit niet betalen!",
@@ -113,8 +113,8 @@ Locales['nl'] = {
["inventory_desc"] = "Verander positie van de berging.",
["wardrobe_title"] = "Kledingkast",
["wardrobe_desc"] = "Verander de positie van de kledingkast.",
- ["Furniture_title"] = "Meubels",
- ["Furniture_desc"] = "Verander de positie van een meubel",
+ ["furniture_title"] = "Meubels",
+ ["furniture_desc"] = "Verander de positie van een meubel",
["enter_title"] = "Ga naar binnen",
["knock_title"] = "Klop op de deur",
["buy_title"] = "Koop",
@@ -139,11 +139,11 @@ Locales['nl'] = {
["please_finish"] = "Maak het plaatsen van ~b~%s~s~ eerst af.",
["cannot_afford"] = "Je kan dit gebouw niet kopen!",
["select_player"] = "Selecteer speler",
- ["cannot_Sell"] = "Kan niet aan deze speler verkopen!",
+ ["cannot_sell"] = "Kan niet aan deze speler verkopen!",
["knock_on_door"] = "Op deur kloppen...",
["nobody_home"] = "Lijkt erop alsof niemand thuis is...",
- ---------- General Strings ----------------
+ ---------- General Strings ----------------
["enabled"] = "Aan",
["disabled"] = "Uit",
@@ -166,7 +166,7 @@ Locales['nl'] = {
["cannot_access_property"] = 'Je ~r~kan niet~s~ dit gebouw betreden.',
- ----------------- Creation Menu Strings ----------------
+ ----------------- Creation Menu Strings ----------------
["menu_title"] = "Gebouw creatie",
["element_title1"] = "Straat nummer",
diff --git a/[esx_addons]/esx_property/locales/tc.lua b/[esx_addons]/esx_property/locales/tc.lua
index a9f75943..30db8f83 100644
--- a/[esx_addons]/esx_property/locales/tc.lua
+++ b/[esx_addons]/esx_property/locales/tc.lua
@@ -4,8 +4,8 @@ Locales['tc'] = {
["take_picture"] = "拍攝照片",
["rot_left_right"] = "左/右",
["rot_up_down"] = "上/下",
- ["Zoom"] = "放大/縮小",
- ["Zoom_level"] = "縮放等級: %s %",
+ ["zoom"] = "放大/縮小",
+ ["zoom_level"] = "縮放等級: %s %",
["night_vision"] = "切換夜視模式",
["clipboard"] = "圖片連結已複製至 ~b~剪貼簿",
["picture_taken"] = "已拍攝照片!",
@@ -14,7 +14,7 @@ Locales['tc'] = {
--- Furniture Strings ------
- ["Height"] = "高度",
+ ["height"] = "高度",
["rotate"] = "角度",
["place"] = "放置家具",
["delete_furni"] = "移除",
@@ -41,7 +41,7 @@ Locales['tc'] = {
["menu_edit"] = "編輯",
["menu_edit_desc"] = "移動、移除家具物品",
["furni_command"] = "furniture",
- ["furni_Command_desc"] = "(ESX Property) 打開家具選單",
+ ["furni_command_desc"] = "(ESX Property) 打開家具選單",
["furni_command_permission"] = "你 ~r~沒有~s~ 此選單的權限!",
["furni_reset_success"] = "家具已重設!",
["furni_cannot_afford"] = "你沒有足夠的金錢進行此操作!",
@@ -113,8 +113,8 @@ Locales['tc'] = {
["inventory_desc"] = "移動房產儲物櫃的位置",
["wardrobe_title"] = "衣櫃",
["wardrobe_desc"] = "移動房產衣櫃的位置",
- ["Furniture_title"] = "家具",
- ["Furniture_desc"] = "移動房產家具的位置",
+ ["furniture_title"] = "家具",
+ ["furniture_desc"] = "移動房產家具的位置",
["enter_title"] = "進入",
["knock_title"] = "敲門",
["buy_title"] = "購買",
@@ -139,7 +139,7 @@ Locales['tc'] = {
["please_finish"] = "請完成 ~b~%s~s~ 的位置設定",
["cannot_afford"] = "你無法購買這個房產!",
["select_player"] = "選擇對象",
- ["cannot_Sell"] = "無法賣給對方!",
+ ["cannot_sell"] = "無法賣給對方!",
["knock_on_door"] = "敲門…",
["nobody_home"] = "看起來沒人在家…",