OX Inventory

If you use ox inventory, you can learn how to harmonize your inventory in this explanation.

Step 1: Find ox_inventory/client.lua

After opening client.lua with the help of Notepad++ or VSCode, find an empty space and paste the codes below.

rmThrow = function(weapon)
	if GetResourceState("rm_throw") and GetResourceState("rm_throw") == "started" then
		if weapon == "item" and exports["rm_throw"]:useItem() then
			return false
		end
		
		if weapon == GetHashKey("WEAPON_SNOWBALL") then
			return false
		end

		if exports["rm_throw"]:useItem() then
			return false
		end
	end

	if GetResourceState("rm_weaponv") and GetResourceState("rm_weaponv") == "started" then
		return weaponState
	end

	return true
end

Step 2: Find ox_inventory:setPlayerInventory Event

You will find the code block below in the last parts of this event.

if currentWeapon then
	if weaponHash ~= currentWeapon.hash and currentWeapon.timer then
		local weaponCount = Items[currentWeapon.name]?.count

		if weaponCount > 0 then
			SetCurrentPedWeapon(playerPed, currentWeapon.hash, true)
			SetAmmoInClip(playerPed, currentWeapon.hash, currentWeapon.metadata.ammo)
			SetPedCurrentWeaponVisible(playerPed, true, false, false, false)

			weaponHash = GetSelectedPedWeapon(playerPed)
		end

		if weaponHash ~= currentWeapon.hash then
			currentWeapon = Weapon.Disarm(currentWeapon, true)
		end
	end
elseif client.weaponmismatch and not client.ignoreweapons[weaponHash] then
	local weaponType = GetWeapontypeGroup(weaponHash)

	if weaponType ~= 0 and weaponType ~= `GROUP_UNARMED` then
		Weapon.Disarm(currentWeapon, true)
	end
end

Step 3: Replace the code block you found

Edit the code block in step 2 as follows.

if currentWeapon then
    if rmThrow(weaponHash) and weaponHash ~= currentWeapon.hash and currentWeapon.timer then
        local weaponCount = Items[currentWeapon.name]?.count

        if weaponCount > 0 then
            SetCurrentPedWeapon(playerPed, currentWeapon.hash, true)
            SetAmmoInClip(playerPed, currentWeapon.hash, currentWeapon.metadata.ammo)
            SetPedCurrentWeaponVisible(playerPed, true, false, false, false)

            weaponHash = GetSelectedPedWeapon(playerPed)
        end

        if rmThrow("item") and weaponHash ~= currentWeapon.hash then
            currentWeapon = Weapon.Disarm(currentWeapon, true)
        end
    end
elseif client.weaponmismatch and not client.ignoreweapons[weaponHash] then
    local weaponType = GetWeapontypeGroup(weaponHash)

    if weaponType ~= 0 and weaponType ~= `GROUP_UNARMED` and rmThrow("item") then
        Weapon.Disarm(currentWeapon, true)
    end
end

Additional

If you cannot make this change correctly, you can download the file below and replace it with ox_inventory/client.lua.

Last updated