From d97420491862f421a31b9b3fd5b38ea0b33cc241 Mon Sep 17 00:00:00 2001 From: Mycroft Date: Tue, 30 Aug 2022 20:10:29 +0100 Subject: [PATCH] tweak: remove exploitable events & fix max weight --- [esx]/es_extended/client/main.lua | 12 ++++++------ [esx]/es_extended/server/classes/player.lua | 7 ++++--- [esx]/es_extended/server/functions.lua | 10 ++++++---- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/[esx]/es_extended/client/main.lua b/[esx]/es_extended/client/main.lua index fc34ee86..d3c65325 100644 --- a/[esx]/es_extended/client/main.lua +++ b/[esx]/es_extended/client/main.lua @@ -17,7 +17,7 @@ RegisterNetEvent('esx:playerLoaded') AddEventHandler('esx:playerLoaded', function(xPlayer, isNew, skin) ESX.PlayerLoaded = true ESX.PlayerData = xPlayer - + ESX.PlayerData.ped = PlayerPedId() FreezeEntityPosition(ESX.PlayerData.ped, true) if Config.Multichar then @@ -132,7 +132,7 @@ AddEventHandler('esx:onPlayerLogout', function() end) RegisterNetEvent('esx:setMaxWeight') -AddEventHandler('esx:setMaxWeight', function(newMaxWeight) ESX.PlayerData.maxWeight = newMaxWeight end) +AddEventHandler('esx:setMaxWeight', function(newMaxWeight) ESX.SetPlayerData("maxWeight", newMaxWeight) end) local function onPlayerSpawn() if ESX.PlayerLoaded then @@ -244,23 +244,23 @@ if not Config.OxInventory then RegisterNetEvent('esx:addWeapon') AddEventHandler('esx:addWeapon', function(weapon, ammo) - GiveWeaponToPed(ESX.PlayerData.ped, joaat(weapon), ammo, false, false) + print("[WARNING] event 'esx:addWeapon' is deprecated. Please use xPlayer.addWeapon Instead!") end) RegisterNetEvent('esx:addWeaponComponent') AddEventHandler('esx:addWeaponComponent', function(weapon, weaponComponent) - local componentHash = ESX.GetWeaponComponent(weapon, weaponComponent).hash - GiveWeaponComponentToPed(ESX.PlayerData.ped, joaat(weapon), componentHash) + print("[WARNING] event 'esx:addWeaponComponent' is deprecated. Please use xPlayer.addWeaponComponent Instead!") end) RegisterNetEvent('esx:setWeaponAmmo') AddEventHandler('esx:setWeaponAmmo', function(weapon, weaponAmmo) - SetPedAmmo(ESX.PlayerData.ped, joaat(weapon), weaponAmmo) + print("[WARNING] event 'esx:setWeaponAmmo' is deprecated. Please use xPlayer.addWeaponComponent Instead!") end) RegisterNetEvent('esx:setWeaponTint') AddEventHandler('esx:setWeaponTint', function(weapon, weaponTintIndex) SetPedWeaponTintIndex(ESX.PlayerData.ped, joaat(weapon), weaponTintIndex) + end) RegisterNetEvent('esx:removeWeapon') diff --git a/[esx]/es_extended/server/classes/player.lua b/[esx]/es_extended/server/classes/player.lua index aef0d756..a6dac0e2 100644 --- a/[esx]/es_extended/server/classes/player.lua +++ b/[esx]/es_extended/server/classes/player.lua @@ -366,7 +366,7 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, tintIndex = 0 }) - self.triggerEvent('esx:addWeapon', weaponName, ammo) + GiveWeaponToPed(GetPlayerPed(self.source), joaat(weaponName), ammo, false, false) self.triggerEvent('esx:addInventoryItem', weaponLabel, false, true) end end @@ -380,7 +380,8 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, if component then if not self.hasWeaponComponent(weaponName, weaponComponent) then self.loadout[loadoutNum].components[#self.loadout[loadoutNum].components + 1] = weaponComponent - self.triggerEvent('esx:addWeaponComponent', weaponName, weaponComponent) + local componentHash = ESX.GetWeaponComponent(weapon, weaponComponent).hash + GiveWeaponComponentToPed(GetPlayerPed(self.source), joaat(weapon), componentHash) self.triggerEvent('esx:addInventoryItem', component.label, false, true) end end @@ -392,7 +393,7 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, if weapon then weapon.ammo = weapon.ammo + ammoCount - self.triggerEvent('esx:setWeaponAmmo', weaponName, weapon.ammo) + SetPedAmmo(GetPlayerPed(self.source), joaat(weaponName), weapon.ammo) end end diff --git a/[esx]/es_extended/server/functions.lua b/[esx]/es_extended/server/functions.lua index 7668d7f9..a80b3c61 100644 --- a/[esx]/es_extended/server/functions.lua +++ b/[esx]/es_extended/server/functions.lua @@ -339,14 +339,16 @@ function ESX.SetPlayerFunctionOverride(index) end function ESX.GetItemLabel(item) - if ESX.Items[item] then - return ESX.Items[item].label - end - if Config.OxInventory then item = exports.ox_inventory:Items(item) if item then return item.label end end + + if ESX.Items[item] then + return ESX.Items[item].label + else + print('[^3WARNING^7] Attemting to get invalid Item -> '..item ) + end end function ESX.GetJobs()