Jump to content

[REQ]MtaDayz inventory system


Recommended Posts

Posted (edited)

İnventory.lua

inventoryItems = {
["Weapons"] = {
["Primary Weapon"] = {
{"M4",3},
{"CZ 550",3},
{"Winchester 1866",3},
{"SPAZ-12 Combat Shotgun",3},
{"Sawn-Off Shotgun",3},
{"AK-47",3},
{"Lee Enfield",3},
--{"Heat-Seeking RPG",5},
--{"M136 Rocket Launcher",5},
},

["Secondary Weapon"] = {
{"M1911",2},
{"M9 SD",2},
{"PDW",2},
--{"TEC-9",2},
{"MP5A5",3},
{"Desert Eagle",2},
{"Hunting Knife",1},
{"Hatchet",2},
{"Baseball Bat",2},
{"Shovel",2},
{"Golf Club",2},
},

["Specially Weapon"] = {
{"Parachute",1},
{"Tear Gas",1},
{"Grenade",1},
{"Binoculars",1}
},

},
["Ammo"] = {
{"M1911 Mag",0.085},
{"M9 SD Mag",0.085},
{"Desert Eagle Mag",0.085},
{"PDW Mag",0.025},
{"MP5A5 Mag",0.025},
{"AK Mag",0.035},
{"M4 Mag",0.035},
{"1866 Slug",0.067},
{"2Rnd. Slug",0.067},
{"SPAZ-12 Pellet",0.067},
{"CZ 550 Mag",0.1},
{"Lee Enfield Mag",0.1},
--{"M136 Rocket",2},
},

["Food"] = {
{"Water Bottle",1},
{"Pasta Can",1},
{"Beans Can",1},
{"Burger",1},
{"Pizza",1},
{"Soda Bottle",1},
{"Milk",1},
{"Cooked Meat",1},
},

["Items"] = {
{"Wood Pile",2},
{"Bandage",1,"Bandage yourself"},
{"Roadflare",1,"Place"},
{"Empty Gas Canister",2},
{"Full Gas Canister",2},
{"Medic Kit",2,"Use"},
{"Heat Pack",1,"Use"},
{"Painkiller",1,"Use"},
{"Morphine",1,"Use"},
{"Blood Bag",1,"Use"},
{"Wire Fence",1,"Build a wire fence"},
{"Raw Meat",1},
{"Tire",2},
{"Engine",5},
{"Tank Parts",3},
{"Tent",3,"Pitch a tent"},
{"Camouflage Clothing",1,"Put clothes on"},
{"Civilian Clothing",1,"Put clothes on"},
{"Survivor Clothing",1,"Put clothes on"},
{"Ghillie Suit",1,"Put clothes on"},
{"Empty Water Bottle",1,"Fill bottle up"}, 
{"Empty Soda Cans",1},
{"Scruffy Burgers",1},
{"Assault Pack (ACU)",1},
{"Alice Pack",1},
{"Czech Backpack",1},
{"Coyote Backpack",1},
},

["Toolbelt"] = {
{"Night Vision Goggles",1},
{"Infrared Goggles",1},
{"Map",1},
{"Box of Matches",1,"Make a Fire"},
{"Watch",1},
{"GPS",1},
{"Toolbox",1},
{"Radio Device",1},
},
}


------------------------------------------------------------------------------
--INVENTORY
local headline = {}
local gridlistItems = {}
local buttonItems = {}


inventoryWindows = guiCreateWindow(0.15, 0.28, 0.72, 0.63, "", true) 
-- inventoryWindows = guiCreateStaticImage(0.25,0.25,0.5,0.5,"bilder/scrollmenu_1.png",true)


headline["loot"] = guiCreateLabel(0.06, 0.05, 0.34, 0.09,"GEAR",true,inventoryWindows)
guiLabelSetHorizontalAlign (headline["loot"],"center")
guiSetFont (headline["loot"], "default-bold-small" )

headline["inventory"] = guiCreateLabel(0.60, 0.05, 0.34, 0.09,"INVENTORY",true,inventoryWindows)
guiLabelSetHorizontalAlign (headline["inventory"],"center")
guiSetFont (headline["inventory"], "default-bold-small" )

gridlistItems["loot"] = guiCreateGridList (0.03, 0.10, 0.39, 0.83,true,inventoryWindows)
gridlistItems["loot_colum"] = guiGridListAddColumn( gridlistItems["loot"], "Loot", 0.7 )
gridlistItems["loot_colum_amount"] = guiGridListAddColumn( gridlistItems["loot"], "", 0.2 )

gridlistItems["inventory"] = guiCreateGridList (0.57, 0.11, 0.39, 0.83,true,inventoryWindows)
gridlistItems["inventory_colum"] = guiGridListAddColumn( gridlistItems["inventory"], "Inventory", 0.7 )
gridlistItems["inventory_colum_amount"] = guiGridListAddColumn( gridlistItems["inventory"], "", 0.2 )

buttonItems["loot"] = guiCreateButton(0.42, 0.17, 0.04, 0.69, "->", true,inventoryWindows)
buttonItems["inventory"] = guiCreateButton(0.53, 0.17, 0.04, 0.69, "<-", true,inventoryWindows)

headline["slots"] = guiCreateLabel(0.62, 0.94, 0.29, 0.04,"SLOTS:",true,inventoryWindows)
guiLabelSetHorizontalAlign (headline["slots"],"center")
guiLabelSetVerticalAlign (headline["slots"],"center")
guiSetFont (headline["slots"], "default-bold-small" )

headline["slots_loot"] = guiCreateLabel(0.07, 0.94, 0.29, 0.04,"SLOTS:",true,inventoryWindows)
guiLabelSetHorizontalAlign (headline["slots_loot"],"center")
guiLabelSetVerticalAlign (headline["slots_loot"],"center")
guiSetFont (headline["slots_loot"], "default-bold-small" )

guiSetVisible(inventoryWindows,false)

function showInventory (key,keyState)
if getElementData(getLocalPlayer(),"logedin") then
    if ( keyState == "down" ) then
        guiSetVisible(inventoryWindows,not guiGetVisible(inventoryWindows))
        showCursor(not isCursorShowing())
        refreshInventory()
        if guiGetVisible(inventoryWindows) == true then
            onClientOpenInventoryStopMenu ()
        else
            hideRightClickInventoryMenu ()
        end
        if isPlayerInLoot() then
            local col = getElementData(getLocalPlayer(),"currentCol")
            local gearName = getElementData(getLocalPlayer(),"lootname")
            refreshLoot(col,gearName)
        end
    end
end    
end
bindKey ( "j", "down", showInventory )

function showInventoryManual ()
        guiSetVisible(inventoryWindows,not guiGetVisible(inventoryWindows))
        showCursor(not isCursorShowing())
        refreshInventory()
        if guiGetVisible(inventoryWindows) == true then
            onClientOpenInventoryStopMenu ()
        end
end

function hideInventoryManual ()
        guiSetVisible(inventoryWindows,false)
        showCursor(false)
        hideRightClickInventoryMenu ()
end
addEvent("hideInventoryManual",true)
addEventHandler("hideInventoryManual",getLocalPlayer(),hideInventoryManual)

function refreshInventoryManual ()
        refreshInventory()
end
addEvent("refreshInventoryManual",true)
addEventHandler("refreshInventoryManual",getLocalPlayer(),refreshInventoryManual)

function refreshLootManual (loot)
        refreshLoot(loot)
end
addEvent("refreshLootManual",true)
addEventHandler("refreshLootManual",getLocalPlayer(),refreshLootManual)

function refreshInventory()
if ( gridlistItems["inventory_colum"] ) then --If the column has been created, fill it with players
    row1,column1 = guiGridListGetSelectedItem ( gridlistItems["inventory"] )
    guiGridListClear(gridlistItems["inventory"])
            local row = guiGridListAddRow ( gridlistItems["inventory"] )
            --guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],"ITEMS", false, false )
            local row = guiGridListAddRow ( gridlistItems["inventory"] )
            guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],"PRIMARY WEAPON", true, false )
        for id, item in ipairs(inventoryItems["Weapons"]["Primary Weapon"]) do
            if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["inventory"] )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum_amount"],getElementData(getLocalPlayer(),item[1]), false, false )
            end
        end
                local row = guiGridListAddRow ( gridlistItems["inventory"] )
            guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],"SECONDARY WEAPON", true, false )
        for id, item in ipairs(inventoryItems["Weapons"]["Secondary Weapon"]) do
            if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["inventory"] )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum_amount"],getElementData(getLocalPlayer(),item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["inventory"] )
            guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],"SPECIAL WEAPON", true, false )
        for id, item in ipairs(inventoryItems["Weapons"]["Specially Weapon"]) do
            if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["inventory"] )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum_amount"],getElementData(getLocalPlayer(),item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["inventory"] )
            guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],"AMMO", true, false )
        for id, item in ipairs(inventoryItems["Ammo"]) do
            if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["inventory"] )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum_amount"],getElementData(getLocalPlayer(),item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["inventory"] )
            guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],"FOOD & DRINKS", true, false )
        for id, item in ipairs(inventoryItems["Food"]) do
            if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["inventory"] )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum_amount"],getElementData(getLocalPlayer(),item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["inventory"] )
            guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],"MISC.", true, false )
        for id, item in ipairs(inventoryItems["Items"]) do
            if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["inventory"] )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum_amount"],getElementData(getLocalPlayer(),item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["inventory"] )
            guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],"TOOLBELT", true, false )
        for id, item in ipairs(inventoryItems["Toolbelt"]) do
            if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["inventory"] )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["inventory"], row, gridlistItems["inventory_colum_amount"],getElementData(getLocalPlayer(),item[1]), false, false )
            end
        end
        if row1 and column1 then
            guiGridListSetSelectedItem ( gridlistItems["inventory"], row1,column1)
        end
        guiSetText(headline["slots"],"SLOTS: "..getPlayerCurrentSlots().."/"..getPlayerMaxAviableSlots())
    end
end

function refreshLoot(loot,gearName)
if loot == false then
    guiGridListClear(gridlistItems["loot"])
    guiSetText(headline["loot"],"Empty")
    return
end
if ( gridlistItems["loot_colum"] ) then
    row2,column2 = guiGridListGetSelectedItem ( gridlistItems["inventory"] )
    guiGridListClear(gridlistItems["loot"])
    if gearName then
        guiSetText(headline["loot"],gearName)
    end    
            local row = guiGridListAddRow ( gridlistItems["loot"] )
            --guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],"Weapons", true, false )
            local row = guiGridListAddRow ( gridlistItems["loot"] )
            guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],"PRIMARY WEAPON", true, false )
        for id, item in ipairs(inventoryItems["Weapons"]["Primary Weapon"]) do
            if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["loot"] )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum_amount"],getElementData(loot,item[1]), false, false )
            end
        end
                local row = guiGridListAddRow ( gridlistItems["loot"] )
            guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],"SECONDARY WEAPON", true, false )
        for id, item in ipairs(inventoryItems["Weapons"]["Secondary Weapon"]) do
            if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["loot"] )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum_amount"],getElementData(loot,item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["loot"] )
            guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],"SPECIAL WEAPON", true, false )
        for id, item in ipairs(inventoryItems["Weapons"]["Specially Weapon"]) do
            if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["loot"] )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum_amount"],getElementData(loot,item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["loot"] )
            guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],"AMMO", true, false )
        for id, item in ipairs(inventoryItems["Ammo"]) do
            if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["loot"] )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum_amount"],getElementData(loot,item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["loot"] )
            guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],"FOOD & DRINKS", true, false )
        for id, item in ipairs(inventoryItems["Food"]) do
            if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["loot"] )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum_amount"],getElementData(loot,item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["loot"] )
            guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],"MISC.", true, false )
        for id, item in ipairs(inventoryItems["Items"]) do
            if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["loot"] )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum_amount"],getElementData(loot,item[1]), false, false )
            end
        end
            local row = guiGridListAddRow ( gridlistItems["loot"] )
            guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],"TOOLBELT", true, false )
        for id, item in ipairs(inventoryItems["Toolbelt"]) do
            if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
                local row = guiGridListAddRow ( gridlistItems["loot"] )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum"],item[1], false, false )
                guiGridListSetItemText ( gridlistItems["loot"], row, gridlistItems["loot_colum_amount"],getElementData(loot,item[1]), false, false )
            end
        end

        if row2 and column2 then
            --guiGridListSetSelectedItem ( gridlistItems["loot"], row2,column2)
        end
        guiSetText(headline["slots_loot"],"SLOTS: "..getLootCurrentSlots(loot).."/"..(getLootMaxAviableSlots(loot)or 0))
    end
end


function getPlayerMaxAviableSlots()
return getElementData(getLocalPlayer(),"MAX_Slots")
end

function getLootMaxAviableSlots(loot)
return getElementData(loot,"MAX_Slots")
end

function getPlayerCurrentSlots()
local current_SLOTS = 0
    for id, item in ipairs(inventoryItems["Weapons"]["Primary Weapon"]) do
        if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(getLocalPlayer(),item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Weapons"]["Secondary Weapon"]) do
        if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(getLocalPlayer(),item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Weapons"]["Specially Weapon"]) do
        if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(getLocalPlayer(),item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Ammo"]) do
        if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(getLocalPlayer(),item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Food"]) do
        if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(getLocalPlayer(),item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Items"]) do
        if getElementData(getLocalPlayer(),item[1]) and getElementData(getLocalPlayer(),item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(getLocalPlayer(),item[1])
        end
    end
    return math.floor(current_SLOTS)
end


function getLootCurrentSlots(loot)
local current_SLOTS = 0
    for id, item in ipairs(inventoryItems["Weapons"]["Primary Weapon"]) do
        if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(loot,item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Weapons"]["Secondary Weapon"]) do
        if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(loot,item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Weapons"]["Specially Weapon"]) do
        if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(loot,item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Ammo"]) do
        if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(loot,item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Food"]) do
        if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(loot,item[1])
        end
    end
    for id, item in ipairs(inventoryItems["Items"]) do
        if getElementData(loot,item[1]) and getElementData(loot,item[1]) >= 1 then
            current_SLOTS = current_SLOTS + item[2]*getElementData(loot,item[1])
        end
    end
    return math.floor(current_SLOTS)
end

function getItemSlots(itema)
local current_SLOTS = 0
    for id, item in ipairs(inventoryItems["Weapons"]["Primary Weapon"]) do
        if itema == item[1] then 
            return item[2]
        end
    end    
    for id, item in ipairs(inventoryItems["Weapons"]["Secondary Weapon"]) do
        if itema == item[1] then 
            return item[2]
        end
    end    
    for id, item in ipairs(inventoryItems["Weapons"]["Specially Weapon"]) do
        if itema == item[1] then 
            return item[2]
        end
    end    
    for id, item in ipairs(inventoryItems["Ammo"]) do
        if itema == item[1] then 
            return item[2]
        end
    end
    for id, item in ipairs(inventoryItems["Food"]) do
        if itema == item[1] then 
            return item[2]
        end
    end
    for id, item in ipairs(inventoryItems["Items"]) do
        if itema == item[1] then 
            return item[2]
        end
    end
    return false
end

function isToolbeltItem(itema)
local current_SLOTS = 0
    for id, item in ipairs(inventoryItems["Toolbelt"]) do
        if itema == item[1] then 
            return true
        end
    end    
    return false
end

vehicleAddonsInfo = {
-- {Model ID, Tires, Engine, Tank Parts}
{422,4,1,1},
{470,4,1,1},
{468,2,1,1},
{433,6,1,1},
{437,6,1,1},
{509,0,0,0},
{487,0,1,1},
{497,0,1,1},
{453,0,1,1},
}

function getVehicleAddonInfos (id)
    for i,veh in ipairs(vehicleAddonsInfo) do
        if veh[1] == id then
            return veh[2],veh[3], veh[4]
        end
    end
end

--OTHER ITEM STUFF
vehicleFuelTable = {
-- {Model ID, Max Fuel}
{422,80},
{470,100},
{468,30},
{433,140},
{437,140},
{509,0},
{487,60},
{497,60},
{453,60},
}

function getVehicleMaxFuel(loot)
    local modelID = getElementModel(getElementData(loot,"parent"))
    for i,vehicle in ipairs(vehicleFuelTable) do
        if modelID == vehicle[1] then
             return vehicle[2]
        end
    end
    return false
end

function onPlayerMoveItemOutOfInventory ()
if playerMovedInInventory then startRollMessage2("Inventory", "Abusing exploits will result in a ban!", 255, 22, 0 ) return end -- [ID:0000005 - Several grammar + spelling mistakes and typos] //L
local itemName = guiGridListGetItemText ( gridlistItems["inventory"], guiGridListGetSelectedItem ( gridlistItems["inventory"] ), 1 )
    if getElementData(getLocalPlayer(),itemName) and getElementData(getLocalPlayer(),itemName) >= 1 then
        if isPlayerInLoot() then
            local isVehicle = getElementData(isPlayerInLoot(),"vehicle")
            local isTent = getElementData(isPlayerInLoot(),"tent")
            if isVehicle and not isTent then
                local veh = getElementData(isPlayerInLoot(),"parent")
                local tires,engine,parts = getVehicleAddonInfos (getElementModel(veh))
                if itemName == "Tire" and (getElementData(isPlayerInLoot(),"Tire_inVehicle") or 0) < tires  or itemName == "Engine" and (getElementData(isPlayerInLoot(),"Engine_inVehicle") or 0)  < engine or itemName == "Tank Parts" and (getElementData(isPlayerInLoot(),"Parts_inVehicle") or 0) < parts then
                    if itemName == "Tank Parts" then itemName = "Parts" end
                    triggerEvent("onPlayerMoveItemOutOFInventory",getLocalPlayer(),itemName.."_inVehicle",isPlayerInLoot())
                    playerMovedInInventory = true
                    setTimer(function()
                        playerMovedInInventory = false
                    end,700,1)
                elseif isToolbeltItem(itemName) then
                    triggerEvent("onPlayerMoveItemOutOFInventory",getLocalPlayer(),itemName,isPlayerInLoot())
                    playerMovedInInventory = true
                    setTimer(function()
                        playerMovedInInventory = false
                    end,700,1)
                elseif getLootCurrentSlots(getElementData(getLocalPlayer(),"currentCol")) + getItemSlots(itemName) <= getLootMaxAviableSlots(isPlayerInLoot()) then
                    triggerEvent("onPlayerMoveItemOutOFInventory",getLocalPlayer(),itemName,isPlayerInLoot())
                    playerMovedInInventory = true
                    setTimer(function()
                        playerMovedInInventory = false
                    end,700,1)
                else
                    startRollMessage2("Inventory", "Inventory is full!", 255, 22, 0 )
                    return
                end
            elseif isToolbeltItem(itemName) then
                    triggerEvent("onPlayerMoveItemOutOFInventory",getLocalPlayer(),itemName,isPlayerInLoot())    
                    playerMovedInInventory = true
                    setTimer(function()
                        playerMovedInInventory = false
                    end,700,1)
            elseif getLootCurrentSlots(getElementData(getLocalPlayer(),"currentCol")) + getItemSlots(itemName) <= getLootMaxAviableSlots(isPlayerInLoot()) then
                triggerEvent("onPlayerMoveItemOutOFInventory",getLocalPlayer(),itemName,isPlayerInLoot())
                playerMovedInInventory = true
                    setTimer(function()
                    playerMovedInInventory = false
                end,700,1)
            else
                startRollMessage2("Inventory", "Inventory is full!", 255, 22, 0 )
                return
            end    
        else
            triggerEvent("onPlayerMoveItemOutOFInventory",getLocalPlayer(),itemName,isPlayerInLoot())
            playerMovedInInventory = true
            setTimer(function()
                playerMovedInInventory = false
            end,700,1)
        end    
    end
    local gearName = guiGetText(headline["loot"])
    local col = getElementData(getLocalPlayer(),"currentCol")
    setTimer(refreshInventory,200,2)
    if isPlayerInLoot() then
        setTimer(refreshLoot,200,2,col,gearName)
    end
end
addEventHandler ( "onClientGUIClick", buttonItems["inventory"], onPlayerMoveItemOutOfInventory )


function onPlayerMoveItemOutOFInventory (itemName,loot)
local itemPlus = 1
if itemName == "M1911 Mag" then
    itemPlus = 7
elseif itemName == "M9 SD Mag" then
    itemPlus = 15
elseif itemName == "Desert Eagle Mag" then
    itemPlus = 7
elseif itemName == "PDW Mag" then
    itemPlus = 30
elseif itemName == "MP5A5 Mag" then
    itemPlus = 20
elseif itemName == "AK Mag" then
    itemPlus = 30
elseif itemName == "M4 Mag" then
    itemPlus = 20
elseif itemName == "1866 Slug" then
    itemPlus = 7
elseif itemName == "2Rnd. Slug" then
    itemPlus = 2
elseif itemName == "SPAZ-12 Pellet" then
    itemPlus = 7
elseif itemName == "CZ 550 Mag" then
    itemPlus = 5
elseif itemName == "Lee Enfield Mag" then
    itemPlus = 10
elseif itemName == "M136 Rocket" then
    itemPlus = 0
elseif itemName == "M4" or itemName == "AK-47" or itemName == "CZ 550" or itemName == "Winchester 1866" or itemName == "SPAZ-12 Combat Shotgun" or itemName == "Sawn-Off Shotgun" or itemName == "Heat-Seeking RPG" or itemName == "M136 Rocket Launcher" or itemName == "Lee Enfield" then
    triggerServerEvent("removeBackWeaponOnDrop",getLocalPlayer())
end
if loot then 
if not getElementData(loot,"itemloot") and getElementType(getElementData(loot,"parent")) == "vehicle" then
    if itemName == "Full Gas Canister" then
        if getElementData(loot,"fuel")+20 < getVehicleMaxFuel(loot) then
            addingfuel = 20
        elseif getElementData(loot,"fuel")+20 > getVehicleMaxFuel(loot)+15 then
            triggerEvent ("displayClientInfo", getLocalPlayer(),"Vehicle","The tank is full!",255,22,0)
            return
        else
            addingfuel = getVehicleMaxFuel(loot)-getElementData(loot,"fuel")
        end
        setElementData(loot,"fuel",getElementData(loot,"fuel")+addingfuel)
        setElementData(getLocalPlayer(),itemName,getElementData(getLocalPlayer(),itemName)-itemPlus)
        setElementData(getLocalPlayer(),"Empty Gas Canister",(getElementData(getLocalPlayer(),"Empty Gas Canister") or 0)+itemPlus)
        triggerEvent ("displayClientInfo", getLocalPlayer(),"Vehicle","Filled gas into vehicle!",22,255,0)
        return
    end
end
end
itemName2 = itemName
if itemName == "Tire_inVehicle" then itemName2 = "Tire" end
if itemName == "Engine_inVehicle" then itemName2 = "Engine" end
if itemName == "Parts_inVehicle" then itemName2 = "Tank Parts" end
if (getElementData(getLocalPlayer(),itemName2) or 0)/itemPlus < 1 then
    triggerEvent ("displayClientInfo", getLocalPlayer(),"Inventory","Can't drop this!",255,22,0)
return
end
    if loot then
        setElementData(loot,itemName,(getElementData(loot,itemName) or 0)+1)
        local players = getElementsWithinColShape (loot,"player")
            if #players > 1 then
                triggerServerEvent("onPlayerChangeLoot",getRootElement(),loot)
            end    
        if not getElementData(loot,"itemloot") and getElementType(getElementData(loot,"parent")) == "vehicle" then
        end
    else
        triggerServerEvent("playerDropAItem",getLocalPlayer(),itemName)
    end
    if itemName == "Tire_inVehicle" then itemName = "Tire" end
    if itemName == "Engine_inVehicle" then itemName = "Engine" end
    if itemName == "Parts_inVehicle" then itemName = "Tank Parts" end
    setElementData(getLocalPlayer(),itemName,getElementData(getLocalPlayer(),itemName)-itemPlus)
    if loot and getElementData(loot,"itemloot") then
        triggerServerEvent("refre:~emLoot",getRootElement(),loot,getElementData(loot,"parent"))
    end
end
addEvent( "onPlayerMoveItemOutOFInventory", true )
addEventHandler( "onPlayerMoveItemOutOFInventory", getRootElement(), onPlayerMoveItemOutOFInventory )

function onPlayerMoveItemInInventory ()
local itemName = guiGridListGetItemText ( gridlistItems["loot"], guiGridListGetSelectedItem ( gridlistItems["loot"] ), 1 )
if isPlayerInLoot() then
    if getElementData(isPlayerInLoot(),itemName) and getElementData(isPlayerInLoot(),itemName) >= 1 then
        if not isToolbeltItem(itemName) then
            if getPlayerCurrentSlots() + getItemSlots(itemName) <= getPlayerMaxAviableSlots() then
                if not playerMovedInInventory then
                    triggerEvent("onPlayerMoveItemInInventory",getLocalPlayer(),itemName,isPlayerInLoot())
                    playerMovedInInventory = true
                    setTimer(function()
                        playerMovedInInventory = false
                    end,700,1)
                else
                    startRollMessage2("Inventory", "Abusing exploits will result in a ban!", 255, 22, 0 )
                    return
                end    
            else
                startRollMessage2("Inventory", "Inventory is full!", 255, 22, 0 )
                return
            end
        else
            playerMovedInInventory = true
            setTimer(function()
                playerMovedInInventory = false
            end,700,1)
            triggerEvent("onPlayerMoveItemInInventory",getLocalPlayer(),itemName,isPlayerInLoot())
        end
    end
    if isPlayerInLoot() then
        local gearName = guiGetText(headline["loot"])
        local col = getElementData(getLocalPlayer(),"currentCol")
        setTimer(refreshInventory,200,2)
        setTimer(refreshLoot,200,2,col,gearName)
    end
end    
end
addEventHandler ( "onClientGUIClick", buttonItems["loot"], onPlayerMoveItemInInventory )


function onPlayerMoveItemInInventory (itemName,loot)
local itemPlus = 1
if itemName == "M1911 Mag" then
    itemPlus = 7
elseif itemName == "M9 SD Mag" then
    itemPlus = 15
elseif itemName == "Desert Eagle Mag" then
    itemPlus = 7
elseif itemName == "PDW Mag" then
    itemPlus = 30
elseif itemName == "MP5A5 Mag" then
    itemPlus = 20
elseif itemName == "AK Mag" then
    itemPlus = 30
elseif itemName == "M4 Mag" then
    itemPlus = 20
elseif itemName == "1866 Slug" then
    itemPlus = 7
elseif itemName == "2Rnd. Slug" then
    itemPlus = 2
elseif itemName == "SPAZ-12 Pellet" then
    itemPlus = 7
elseif itemName == "CZ 550 Mag" then
    itemPlus = 5
elseif itemName == "Lee Enfield Mag" then
    itemPlus = 10
elseif itemName == "M136 Rocket" then
    itemPlus = 0
elseif itemName == "Assault Pack (ACU)" then
    if getElementData(getLocalPlayer(),"MAX_Slots") == 12 then triggerEvent (getLocalPlayer(), "displayClientInfo", getLocalPlayer(),"Inventory","You are using this backpack already!",255,22,0) return end
    if getElementData(getLocalPlayer(),"MAX_Slots") > 12 then triggerEvent (getLocalPlayer(), "displayClientInfo", getLocalPlayer(),"Inventory","The currently equipped backpack has more space!",255,22,0) return end
    setElementData(getLocalPlayer(),"MAX_Slots",12)
    setElementData(loot,itemName,getElementData(loot,itemName)-1)
    itemPlus = 0
elseif itemName == "Alice Pack" then
    if getElementData(getLocalPlayer(),"MAX_Slots") == 16 then triggerEvent (getLocalPlayer(), "displayClientInfo", getLocalPlayer(),"Inventory","You are using this backpack already!",255,22,0) return end
    if getElementData(getLocalPlayer(),"MAX_Slots") > 16 then triggerEvent (getLocalPlayer(), "displayClientInfo", getLocalPlayer(),"Inventory","The currently equipped backpack has more space!",255,22,0) return end
    setElementData(getLocalPlayer(),"MAX_Slots",16)
    setElementData(loot,itemName,getElementData(loot,itemName)-1)
    itemPlus = 0
elseif itemName == "Czech Backpack" then
    if getElementData(getLocalPlayer(),"MAX_Slots") == 26 then triggerEvent (getLocalPlayer(), "displayClientInfo", getLocalPlayer(),"Inventory","You are using this backpack already!",255,22,0) return end
    if getElementData(getLocalPlayer(),"MAX_Slots") > 26 then triggerEvent (getLocalPlayer(), "displayClientInfo", getLocalPlayer(),"Inventory","The currently equipped backpack has more space!",255,22,0) return end
    setElementData(getLocalPlayer(),"MAX_Slots",26)
    setElementData(loot,itemName,getElementData(loot,itemName)-1)
    itemPlus = 0    
elseif itemName == "Coyote Backpack" then
    if getElementData(getLocalPlayer(),"MAX_Slots") == 36 then triggerEvent (getLocalPlayer(), "displayClientInfo", getLocalPlayer(),"Inventory","You already have the best backpack!",255,22,0) return end
    setElementData(getLocalPlayer(),"MAX_Slots",36)
    setElementData(loot,itemName,getElementData(loot,itemName)-1)
    itemPlus = 0    
end
    if loot then
        --if itemPlus > (getElementData(loot,itemName) or 0) then
            --itemPlus = getElementData(loot,itemName) 
        --end
            setElementData(getLocalPlayer(),itemName,(getElementData(getLocalPlayer(),itemName) or 0)+itemPlus) 
            if itemPlus == 0 then
                setElementData(loot,itemName,getElementData(loot,itemName)-0)
            else
                setElementData(loot,itemName,getElementData(loot,itemName)-1)
            end
            local players = getElementsWithinColShape (loot,"player")
            if #players > 1 then
                triggerServerEvent("onPlayerChangeLoot",getRootElement(),loot)
            end
    end
    if getElementData(loot,"itemloot") then
        triggerServerEvent("refre:~emLoot",getRootElement(),loot,getElementData(loot,"parent"))
    end
end
addEvent( "onPlayerMoveItemInInventory", true )
addEventHandler( "onPlayerMoveItemInInventory", getRootElement(), onPlayerMoveItemInInventory )

function onClientOpenInventoryStopMenu ()
triggerEvent("disableMenu",getLocalPlayer())
end

function isPlayerInLoot()
if getElementData(getLocalPlayer(),"loot") then
    return getElementData(getLocalPlayer(),"currentCol")
end
return false
end


------------------------------------------------------------------------------
--right-click menu
function onPlayerPressRightKeyInInventory ()
local itemName = guiGridListGetItemText ( gridlistItems["inventory"], guiGridListGetSelectedItem ( gridlistItems["inventory"] ), 1 )
local itemName,itemInfo = getInventoryInfosForRightClickMenu(itemName)
    if isCursorShowing() and guiGetVisible(inventoryWindows) and itemInfo then
        if itemName == "Box of Matches" then
            if getElementData(getLocalPlayer(),"Wood Pile") == 0 then
                return
            end
        end
        if itemName == "Bandage" then
            if getElementData(getLocalPlayer(),"bleeding") == 0 then
                return
            end
        end    
        if itemName == "Medic Kit" then
            if getElementData(getLocalPlayer(),"blood") > 10500 then
                return
            end
        end    
        if itemName == "Heat Pack" then
            if getElementData(getLocalPlayer(),"temperature") > 35 then
                return
            end
        end    
        if itemName == "Painkiller" then
            if not getElementData(getLocalPlayer(),"pain") then
                return
            end
        end    
        if itemName == "Morphine" then
            if not getElementData(getLocalPlayer(),"brokenbone") then
                return
            end
        end    
        if itemName == "Blood Bag" then
            --if getElementData(getLocalPlayer(),"blood") < 1150 then
                return
            --end
        end    
        showRightClickInventoryMenu (itemName,itemInfo)
    end
end
bindKey("mouse2","down",onPlayerPressRightKeyInInventory)

function getInventoryInfosForRightClickMenu(itemName)
for i,itemInfo in ipairs(inventoryItems["Weapons"]["Primary Weapon"]) do
    if itemName == itemInfo[1] then
        return itemName,"Equip Primary Weapon"
    end    
end
for i,itemInfo in ipairs(inventoryItems["Weapons"]["Secondary Weapon"]) do
    if itemName == itemInfo[1] then
        return itemName,"Equip Secondary Weapon"
    end    
end
for i,itemInfo in ipairs(inventoryItems["Weapons"]["Specially Weapon"]) do
    if itemName == itemInfo[1] then
        return itemName,"Equip Special Weapon"
    end    
end
for i,itemInfo in ipairs(inventoryItems["Ammo"]) do
    if itemName == itemInfo[1] then
        return itemName,false
    end    
end
for i,itemInfo in ipairs(inventoryItems["Food"]) do
    if itemName == itemInfo[1] then
        if itemInfo[1] == "Water Bottle" or itemInfo[1] == "Milk" or itemInfo[1] == "Soda Bottle" then
            info = "Drink"
        else
            info = "Eat"
        end
        return itemName,info
    end    
end
for i,itemInfo in ipairs(inventoryItems["Items"]) do
    if itemName == itemInfo[1] then
        return itemName,itemInfo[3] or false
    end    
end
for i,itemInfo in ipairs(inventoryItems["Toolbelt"]) do
    if itemName == itemInfo[1] then
        return itemName,itemInfo[3] or false
    end
end
end

rightclickWindow = guiCreateStaticImage(0,0,0.05,0.0215,"bilder/scrollmenu_1.png",true)
headline["rightclickmenu"] = guiCreateLabel(0,0,1,1,"",true,rightclickWindow)
guiLabelSetHorizontalAlign (headline["rightclickmenu"],"center")
guiLabelSetVerticalAlign (headline["rightclickmenu"],"center")
guiSetFont (headline["rightclickmenu"], "default-bold-small" )
guiSetVisible(rightclickWindow,false)

function showRightClickInventoryMenu (itemName,itemInfo)
    if itemInfo then
        local screenx, screeny, worldx, worldy, worldz = getCursorPosition()
        guiSetVisible(rightclickWindow,true)
        guiSetText(headline["rightclickmenu"],itemInfo)
        local whith = guiLabelGetTextExtent (headline["rightclickmenu"])
        guiSetPosition(rightclickWindow,screenx,screeny,true)
        local x,y = guiGetSize(rightclickWindow,false)
        guiSetSize(rightclickWindow,whith,y,false)
        guiBringToFront(rightclickWindow)
        setElementData(rightclickWindow,"iteminfo",{itemName,itemInfo})
    end
end

function hideRightClickInventoryMenu ()
    guiSetVisible(rightclickWindow,false)
end


function onPlayerClickOnRightClickMenu (button,state)
    if button == "left" then
        local itemName,itemInfo = getElementData(rightclickWindow,"iteminfo")[1],getElementData(rightclickWindow,"iteminfo")[2]
        hideRightClickInventoryMenu ()
        playerUseItem(itemName,itemInfo)
    end
end
addEventHandler("onClientGUIClick",headline["rightclickmenu"],onPlayerClickOnRightClickMenu,false)

local playerFire = {}
local fireCounter = 0
function playerUseItem(itemName,itemInfo)
    if itemInfo == "Drink" then
        triggerServerEvent("onPlayerRequestChangingStats",getLocalPlayer(),itemName,itemInfo,"thirst")
    elseif itemInfo == "Eat" then
        triggerServerEvent("onPlayerRequestChangingStats",getLocalPlayer(),itemName,itemInfo,"food")    
    elseif itemInfo == "Put clothes on" then
        triggerServerEvent("onPlayerChangeSkin",getLocalPlayer(),itemName)
    elseif itemName == "Empty Water Bottle" then
        triggerServerEvent("onPlayerRefillWaterBottle",getLocalPlayer(),itemName)        
    elseif itemName == "Tent" then
        triggerServerEvent("onPlayerPitchATent",getLocalPlayer(),itemName)
    elseif itemInfo == "Build a wire fence"    then
        triggerServerEvent("onPlayerBuildAWireFence",getLocalPlayer(),itemName)
    elseif itemName == "Roadflare" then
        triggerServerEvent("onPlayerPlaceRoadflare",getLocalPlayer(),itemName)    
    elseif itemInfo == "Make a Fire" then
        triggerServerEvent("onPlayerMakeAFire",getLocalPlayer(),itemName)    
    elseif itemInfo == "Use" then
        triggerServerEvent("onPlayerUseMedicObject",getLocalPlayer(),itemName)
    elseif itemName == "Bandage" then
        triggerServerEvent("onPlayerUseMedicObject",getLocalPlayer(),itemName)    
    elseif itemInfo == "Use Googles" then
        triggerServerEvent("onPlayerChangeView",getLocalPlayer(),itemName)    
    elseif itemInfo == "Equip Primary Weapon" then
        triggerServerEvent("onPlayerRearmWeapon",getLocalPlayer(),itemName,1)
    elseif itemInfo == "Equip Secondary Weapon" then
        triggerServerEvent("onPlayerRearmWeapon",getLocalPlayer(),itemName,2)
    elseif itemInfo == "Equip Special Weapon" then
        triggerServerEvent("onPlayerRearmWeapon",getLocalPlayer(),itemName,3)
    end

end


weaponAmmoTable = {

["M1911 Mag"] = {
{"M1911",22},
},

["M9 SD Mag"] = {
{"M9 SD",23},
},

["Desert Eagle Mag"] = {
{"Desert Eagle",24},
},

["PDW Mag"] = {
{"PDW",28},
},

["MP5A5 Mag"] = {
{"MP5A5",29},
},

["AK Mag"] = {
{"AK-47",30},
},

["M4 Mag"] = {
{"M4",31},
},

["1866 Slug"] = {
{"Winchester 1866",25},
},

["2Rnd. Slug"] = {
{"Sawn-Off Shotgun",26},
},

["SPAZ-12 Pellet"] = {
{"SPAZ-12 Combat Shotgun",27},
},

["CZ 550 Mag"] = {
{"CZ 550",34},
},

["Lee Enfield Mag"] = {
{"Lee Enfield",33},
},

["M136 Rocket"] = {
{"Heat-Seeking RPG",36},
{"M136 Rocket Launcher",35},
},

["others"] = {
{"Parachute",46},
{"Satchel",39},
{"Tear Gas",17},
{"Grenade",16},
{"Hunting Knife",4},
{"Hatchet",8},
{"Binoculars",43},
{"Baseball Bat",5},
{"Shovel",6},
{"Golf Club",2},
},
}

function getWeaponAmmoType2 (weaponName)
    for i,weaponData in ipairs(weaponAmmoTable["others"]) do
        if weaponName == weaponData[2] then
            return weaponData[1],weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["M1911 Mag"]) do
        if weaponName == weaponData[2] then
            return "M1911 Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["M9 SD Mag"]) do
        if weaponName == weaponData[2] then
            return "M9 SD Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["Desert Eagle Mag"]) do
        if weaponName == weaponData[2] then
            return "Desert Eagle Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["PDW Mag"]) do
        if weaponName == weaponData[2] then
            return "PDW Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["MP5A5 Mag"]) do
        if weaponName == weaponData[2] then
            return "MP5A5 Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["AK Mag"]) do
        if weaponName == weaponData[2] then
            return "AK Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["M4 Mag"]) do
        if weaponName == weaponData[2] then
            return "M4 Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["1866 Slug"]) do
        if weaponName == weaponData[2] then
            return "1866 Slug",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["SPAZ-12 Pellet"]) do
        if weaponName == weaponData[2] then
            return "SPAZ-12 Pellet",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["2Rnd. Slug"]) do
        if weaponName == weaponData[2] then
            return "2Rnd. Slug",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["CZ 550 Mag"]) do
        if weaponName == weaponData[2] then
            return "CZ 550 Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["Lee Enfield Mag"]) do
        if weaponName == weaponData[2] then
            return "Lee Enfield Mag",weaponData[2]
        end
    end
    for i,weaponData in ipairs(weaponAmmoTable["M136 Rocket"]) do
        if weaponName == weaponData[2] then
            return "M136 Rocket",weaponData[2]
        end
    end
end


function weaponSwitch (weapon)
    if source == getLocalPlayer() then
        local ammoName,_ = getWeaponAmmoType2 (weapon)
        if getElementData(getLocalPlayer(),ammoName) > 0 then
            setElementData(getLocalPlayer(),ammoName,getElementData(getLocalPlayer(),ammoName)-1)
        end
    end
end
addEventHandler ( "onClientPlayerWeaponFire", getLocalPlayer(), weaponSwitch )

function makeRadioStayOff()
    setRadioChannel(0)
    cancelEvent()
end
addEventHandler("onClientPlayerVehicleEnter",getRootElement(),makeRadioStayOff)
addEventHandler("onClientPlayerRadioSwitch",getRootElement(),makeRadioStayOff)
Edited by eoL|Shady
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...