Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local show = false
- local triggered = false
- local itemElement = nil
- local isCraftShowing = false
- local tooltip_text_color = tocolor( 255, 255, 255, 230 )
- local tooltip_background_color = tocolor( 0, 0, 0, 190 )
- local font = dxCreateFont("files/segoeui.ttf", 20)
- local move = false
- local sx,sy = guiGetScreenSize()
- local wSizeX, wSizeY = 426, 300
- local defX, defY = sx - wSizeX - 10, (sy/2) - (wSizeY/2)
- local defX2 = defX
- local defY2 = defY + 80
- local smallSize = 50
- local activeTab = 1
- local actualItem = 0
- local actualSlot = -1
- local actualValue = 0
- local actualDuty = 0
- local actualID = 0
- local anim = "right"
- --mozgatás
- local movedItemSlot = -1
- local isMove = false
- local movedItem = 0
- local movedItemValue = 0
- local movedItemID = 0
- local movedItemDuty = 0
- local hoverElement = nil
- local switchTo = 0
- local openTrash = true
- --mozgatás vége
- addEventHandler("onClientResourceStart", resourceRoot, function()
- if getElementData(localPlayer,"spawned") then
- triggerServerEvent("loadPlayerItems", localPlayer, localPlayer)
- end
- -- setTimer(function()
- -- if getElementData(localPlayer,"spawned") then
- -- saveItems(localPlayer)
- -- end
- -- end, 300000, 0)
- end)
- addEvent("onClientReceiveItems", true)
- addEventHandler("onClientReceiveItems", root, function(items)
- for i=0,31 do
- setElementData(localPlayer, "items"..i, 0)
- end
- for k,v in pairs(items) do
- local item = v[1]
- local value = v[2]
- local slot = v[3]
- local id = v[4]
- local itemOnSlot = tonumber(getElementData(localPlayer, "items"..slot)) or 0
- if itemOnSlot > 0 or slot == -1 then
- slot = getNextAvailableSlot(localPlayer)
- end
- setElementData(localPlayer, "items"..slot, item)
- setElementData(localPlayer, "itemvalue"..slot..item, value)
- setElementData(localPlayer, "itemid"..slot..item, id)
- end
- end)
- function checkCursor()
- if not guiGetInputEnabled() and not isMTAWindowActive() and isCursorShowing( ) then
- return true
- else
- return false
- end
- end
- local function tooltip( text, text2 )
- if checkCursor() then
- local x,y = getCursorPosition( )
- local x,y = x * sx, y * sy
- text = tostring( text )
- if text2 then
- text2 = tostring( text2 )
- end
- if text == text2 then
- text2 = nil
- end
- local width = dxGetTextWidth( text, 1, "clear" ) + 20
- if text2 then
- width = math.max( width, dxGetTextWidth( text2, 1, "clear" ) + 20 )
- text = text .. "\n" .. text2
- end
- local height = 10 * ( text2 and 5 or 3 )
- x = math.max( 10, math.min( x, sx - width - 10 ) )
- y = math.max( 10, math.min( y, sy - height - 10 ) )
- dxDrawRectangle( x, y, width, height, tooltip_background_color, true )
- dxDrawText( text, x, y, x + width, y + height, tooltip_text_color, 1, "default", "center", "center", false, false, true )
- end
- end
- local function isInBox( x, y, xmin, xmax, ymin, ymax )
- if checkCursor() then
- x = tonumber(x) or 0
- y = tonumber(y) or 0
- xmin = tonumber(xmin) or 0
- xmax = tonumber(xmax) or 0
- ymin = tonumber(ymin) or 0
- ymax = tonumber(ymax) or 0
- return x >= xmin and x <= xmax and y >= ymin and y <= ymax
- else
- return false
- end
- end
- function getCursorPos()
- if checkCursor() then
- cx,cy = getCursorPosition ()
- cx,cy = cx*sx,cy*sy
- else
- cx,cy = -500,-500
- end
- return cx,cy
- end
- local invState = false
- local canOpenCraft = false
- local craftState = false
- bindKey("i", "down", function()
- if getElementData(localPlayer, "spawned") == true and not getElementData(localPlayer, "char:adminJailed") then
- openInventory(localPlayer)
- invState = not invState
- setElementData(localPlayer, "char:inventoryOpened", invState)
- end
- end)
- bindKey("u", "down", function()
- if getElementData(localPlayer, "spawned") == true and not getElementData(localPlayer, "char:adminJailed") and canOpenCraft then
- craftState = not craftState
- end
- end)
- bindKey("m", "down", function()
- showCursor(not isCursorShowing())
- end)
- function clickTrash(button, state, absX, absY, wx, wy, wz, element)
- if getElementData(getLocalPlayer(), "exclusiveGUI") then
- return
- end
- if not cooldown and element and getElementType(element) =="object" and state=="up" and (getElementModel(element) == 2332 or getElementModel(element) == 1359) then
- local px, py, pz = getElementPosition( localPlayer )
- local ax, ay, az = getElementPosition( element )
- if getDistanceBetweenPoints3D( px, py, pz, ax, ay, az ) < 5 and openTrash then
- openInventory(element)
- end
- end
- end
- addEventHandler( "onClientClick", getRootElement(), clickTrash )
- local wait = false
- local weapons = {
- [44] = true,
- [45] = true,
- [46] = true,
- [47] = true,
- [48] = true,
- [49] = true,
- [57] = true,
- [58] = true,
- [59] = true,
- [31] = true,
- [37] = true,
- }
- function openInventory(element)
- if element == localPlayer then
- canOpenCraft = true
- else
- canOpenCraft = false
- end
- clickDown = nil
- movedItem = 0
- movedItemSlot = -1
- movedItemValue = 0
- movedItemID = -1
- movedItemDuty = 0
- if not wait then
- if anim == "right" then
- itemElement = element
- startTick = getTickCount()
- wait = true
- setTimer(function()
- wait = false
- end, 600, 1)
- anim = "left"
- mutat = true
- activeTab = 1
- else
- if getElementType(element) == "vehicle" or getElementType(element) == "object" and not getElementData(element, "food") then
- setTimer(openInventory, 1000, 1, element)
- end
- startTick = getTickCount()
- wait = true
- setTimer(function()
- wait = false
- itemElement = localPlayer
- mutat = false
- end, 600, 1)
- anim = "right"
- activeTab = 1
- end
- end
- end
- addEvent("openInventory", true)
- addEventHandler("openInventory", getRootElement(), openInventory)
- local size = 45
- local spacer = 5
- local tempTable = {}
- --itemid --itemslot
- local actionBarItems = {}
- function removeActionBarItem(slot)
- for i=1,5 do
- if actionBarItems[i] and actionBarItems[i][2] == slot then
- actionBarItems[i] = nil
- end
- end
- end
- addEvent("removeActionBarItem", true)
- addEventHandler("removeActionBarItem", root, removeActionBarItem)
- addEventHandler("onClientResourceStart", resourceRoot, function()
- for i=1,5 do
- local item = getElementData(localPlayer, "char:ActionBarItem"..i)
- if item then
- actionBarItems[i] = {item[1], item[2]}
- end
- end
- end)
- addEvent("onClientReceiveActionBar", true)
- addEventHandler("onClientReceiveActionBar", root, function()
- for i=1,5 do
- local item = getElementData(localPlayer, "char:ActionBarItem"..i)
- if item then
- actionBarItems[i] = {item[1], item[2]}
- end
- end
- end)
- local craftItems = {}
- local notShowInventoryItems = {}
- local activeCraftMenu = -1
- addEventHandler("onClientRender", getRootElement(), function()
- local cursorX, cursorY = getCursorPos()
- if not getElementData(localPlayer, "char:adminJailed") and getElementData(localPlayer, "spawned") then
- local aX = sx/2-(275/2)
- local aY = sy-size-spacer
- dxDrawRectangle(aX-3,aY-2,250,50,tocolor(0,0,0,200))
- if not isInBox(cursorX, cursorY, aX, aX + 265, aY, aY + 50) then
- activeActionBarMenu = 0
- end
- for i=1, 5 do
- dxDrawImage(aX, aY, 20, 20, "files/itemslot.png")
- if isInBox(cursorX, cursorY, aX, aX + size, aY, aY + size) then
- activeActionBarMenu = i
- dxDrawImage(aX, aY, 20, 20, "files/itemslot.png")
- if actionBarItems[i] then
- tooltip(getItemName(actionBarItems[i][1]), "Slot: "..actionBarItems[i][2])
- end
- elseif getKeyState(i) then
- dxDrawImage(aX, aY, 20, 20, "files/itemslot.png")
- end
- if actionBarItems[i] then
- dxDrawImage(aX, aY, 20, 20, "images/"..actionBarItems[i][1]..".png")
- end
- aX = aX+size+spacer
- end
- end
- if mutat and isElement(itemElement) then
- local isMove = clickDown and movedItemSlot and ( getTickCount( ) - clickDown >= 200 )
- local sor
- local regisor
- local hely
- progress = (getTickCount() - startTick) / 700
- if anim == "left" then
- defX = interpolateBetween (
- sx,0,0,
- defX2,0,0,
- progress,"InOutQuad"
- )
- else
- defX = interpolateBetween (
- defX2,0,0,
- sx,0,0,
- progress,"InOutQuad"
- )
- end
- dxDrawImage( defX, defY, 426, 300, "files/invbg.png" )
- if craftState and canOpenCraft then
- activeCraftMenu = -1
- local craftX, craftY = defX-248, defY
- dxDrawImage(craftX, craftY, 248, 300, "files/craftbg.png" )
- --- 1
- local startX, startY = craftX+44, craftY+80
- for i=0,8 do
- sor = math.floor(i/3)
- if(sor ~= regisor) then
- hely = 0
- end
- local xe2 = startX + size * hely + spacer * hely
- local ye2 = startY + size * sor + spacer * sor
- dxDrawImage(xe2, ye2, 20, 20, "files/itemslot.png" )
- if isInBox(cursorX, cursorY, xe2, xe2+size, ye2, ye2+size) then
- dxDrawImage(xe2, ye2, 20, 20, "files/itemslot.png" )
- activeCraftMenu = i
- end
- if craftItems[i] and craftItems[i][1] then
- dxDrawImage(xe2, ye2, size, size, "images/"..craftItems[i][1]..".png" )
- if activeCraftMenu == i then
- tooltip(getItemName(craftItems[i][1]),"A kivételhez kattints!")
- end
- end
- regisor = sor
- hely = hely + 1
- end
- end
- if not isInBox( cursorX, cursorY, defX + 5, defX + 440, defY2, defY2 + 215 ) then
- actualItem = 0
- actualSlot = -1
- actualValue = 0
- actualDuty = 0
- end
- if isInBox( cursorX, cursorY, defX, defX + 446, defY, defY + 310 ) then
- canMoveToWorld = false
- else
- canMoveToWorld = true
- end
- -- if activeTab == 1 then
- defX = defX + 13
- for i=0, 31 do
- sor = math.floor(i/8)
- if(sor ~= regisor) then
- hely = 0
- end
- local xe = defX + size * hely + spacer * hely
- local ye = defY2 + size * sor + spacer * sor
- -- if activeTab == 1 then
- item = tonumber(getElementData(itemElement, "items"..i)) or 0
- value = getElementData(itemElement, "itemvalue"..i..item)
- itemValue = tonumber(value) or 0
- -- if itemValue == 0 then
- -- itemValue = tostring(value) or "Ismeretlen érték"
- -- end
- itemID = tonumber(getElementData(itemElement, "itemid"..i..item)) or 0
- itemDuty = tonumber(getElementData(itemElement, "dutyitem"..i..item)) or 0
- dxDrawImage( xe, ye, 20, 20, "files/itemslot.png" )
- if isInBox( cursorX, cursorY, xe, xe + size, ye, ye + size ) and not notShowInventoryItems[i] then
- actualSlot = i
- actualItem = item
- actualValue = itemValue
- actualDuty = itemDuty
- actualID = itemID
- dxDrawImage( xe, ye, 20, 20, "files/itemslot.png" )
- if item > 0 then
- -- if type(itemValue) == "number" then
- if itemValue > 1 and not weapons[item] then
- tooltip(getItemName(item, itemValue), "Érték: ".. itemValue)
- elseif item == 20 then
- tooltip(getItemName(item, itemValue), "Számod: ".. getElementData(localPlayer, "dbid"))
- elseif weapons[item] then
- if itemValue == 0 then
- itemValue = 0
- else
- itemValue = itemValue - 1
- end
- tooltip(getItemName(item, itemValue), "Lőszer: ".. itemValue)
- else
- tooltip(getItemName(item, itemValue))
- end
- -- else
- -- tooltip(getItemName(item, itemValue), itemValue)
- -- end
- end
- end
- if item > 0 and not notShowInventoryItems[i] then
- itemIMG = fileExists ( "images/" .. item .. ".png" ) and "images/" .. item .. ".png" or "images/48.png"
- if itemIMG then
- if isMove and movedItemSlot == i then
- -- dxDrawImage( cursorX - 25, cursorY - 25, size, size, "files/itemslot.png",0,0,0,tocolor(255,255,255,255), true )
- dxDrawImage( cursorX - 25, cursorY - 25, size, size, itemIMG,0,0,0,tocolor(255,255,255,255), true )
- else
- dxDrawImage( xe, ye, size, size, itemIMG )
- end
- else
- setElementData(itemElement, "items"..i, 0)
- end
- end
- -- end
- regisor = sor
- hely = hely + 1
- end
- -- end
- if checkCursor() then
- local screenx, screeny, worldx, worldy, worldz = getCursorPosition()
- local cameraX, cameraY, cameraZ = getWorldFromScreenPosition( cursorX, cursorY, 0.1 )
- col, x, y, z, hoverElement = processLineOfSight( cameraX, cameraY, cameraZ, worldx, worldy, worldz )
- end
- end
- end)
- addEventHandler("onClientKey", getRootElement(), function(key, state)
- if key == "delete" and state and actualItem > 0 and actualSlot >= 0 then
- if getElementType(itemElement) == "player" and itemElement ~= localPlayer then return end
- outputDebugString(actualID)
- if actualID > 0 then
- triggerServerEvent("delItem", localPlayer, actualID, itemElement, actualSlot)
- end
- setElementData(itemElement, "items"..actualSlot, 0)
- setElementData(itemElement, "itemvalue"..actualSlot..actualItem, 0)
- setElementData(itemElement, "itemid"..actualSlot..actualItem, 0)
- if actualItem == 76 and itemElement == localPlayer then
- setElementData(localPlayer, "char:id_code", nil)
- end
- if itemElement == localPlayer then
- removeActionBarItem(actualSlot)
- end
- setElementData(localPlayer, "lastMeMessage", "megsemmisít egy tárgyat. [".. getItemName(actualItem) .."]")
- elseif key == "delete" and state and activeActionBarMenu > 0 and not isChatBoxInputActive() then
- actionBarItems[activeActionBarMenu] = nil
- setElementData(localPlayer, "char:ActionBarItem"..activeActionBarMenu, nil)
- end
- end)
- for i=1,5 do
- bindKey(i, "down", function()
- if actionBarItems[i] and not isChatBoxInputActive() and not isConsoleActive() and not isMainMenuActive() and not isMTAWindowActive() then
- if not notShowInventoryItems[actionBarItems[i][2]] then
- useItem(actionBarItems[i][1], 0, actionBarItems[i][2])
- end
- end
- end)
- end
- addEventHandler("onClientClick",getRootElement(), function(button, state, cursorX, cursorY, worldX, worldY, worldZ)
- if itemElement and getElementType(itemElement) == "player" and itemElement ~= localPlayer then
- return
- end
- if state == "down" and button == "left" and anim == "left" then
- clickDown = getTickCount( )
- if actualItem > 0 then
- movedItemSlot = actualSlot
- movedItem = actualItem
- movedItemValue = actualValue
- movedItemID = actualID
- movedItemDuty = actualDuty
- if isTimer(trashTimer) then killTimer(trashTimer) end
- openTrash = false
- end
- elseif state == "up" and button == "left" and anim == "left" then
- trashTimer = setTimer(function()
- openTrash = true
- end, 2000,1)
- if activeCraftMenu >= 0 and movedItem > 0 then
- craftItems[activeCraftMenu] = {movedItem,movedItemSlot}
- notShowInventoryItems[movedItemSlot] = true
- elseif activeCraftMenu >= 0 and craftItems[activeCraftMenu][1] > 0 then
- notShowInventoryItems[craftItems[activeCraftMenu][2]] = nil
- craftItems[activeCraftMenu] = nil
- elseif canMoveToWorld and movedItem > 0 and movedItemSlot >= 0 then
- if activeActionBarMenu > 0 and itemElement == localPlayer then
- for i=1,6 do
- if actionBarItems[i] and actionBarItems[i][1] == movedItem then
- actionBarItems[i] = nil
- setElementData(localPlayer, "char:ActionBarItem"..i, nil)
- end
- if i == 6 then
- actionBarItems[activeActionBarMenu] = {movedItem, movedItemSlot}
- setElementData(localPlayer, "char:ActionBarItem"..activeActionBarMenu, {movedItem, movedItemSlot})
- end
- end
- elseif movedItemDuty ~= 1 and isElement(hoverElement) and getElementType(hoverElement) == "player" and hoverElement ~= localPlayer then
- local szam, msg = getNextAvailableSlot(hoverElement)
- if msg then
- if movedItem == 76 then
- triggerServerEvent("onServerShowDocument", localPlayer, localPlayer, hoverElement, 1)
- setElementData(localPlayer, "lastMeMessage", "felmutatja a személyi igazolványát.")
- elseif movedItem == 75 then
- triggerServerEvent("onServerShowDocument", localPlayer, localPlayer, hoverElement, 3)
- setElementData(localPlayer, "lastMeMessage", "felmutatja az útlevelét.")
- elseif movedItem == 111 then
- triggerServerEvent("onServerShowDocument", localPlayer, localPlayer, hoverElement, 4)
- setElementData(localPlayer, "lastMeMessage", "felmutatja a jogosítványát.")
- else
- setElementData(itemElement, "items"..movedItemSlot, 0)
- setElementData(itemElement, "itemvalue"..movedItemSlot..movedItem, 0)
- setElementData(itemElement, "itemid"..movedItemSlot..movedItem, 0)
- setElementData(hoverElement, "items"..szam, movedItem)
- setElementData(hoverElement, "itemvalue"..szam..movedItem, movedItemValue)
- setElementData(hoverElement, "itemid"..szam..movedItem, movedItemID)
- playSound("itemsMoving.mp3")
- setElementData(localPlayer, "lastMeMessage", "átad egy tárgyat ".. exports.ex_core:getAccuratePlayerName(hoverElement) .."-nak/nek. #4f98e1["..getItemName(movedItem).."]")
- if movedItemID > 0 then
- triggerServerEvent("updateItemOwner", localPlayer, movedItemID, hoverElement, szam, localPlayer)
- end
- end
- else
- outputChatBox("#4f98e1[HL]#ffffffEz az inventory tele van!",255,0,0, true)
- end
- elseif movedItemDuty ~= 1 and isElement(hoverElement) and getElementType(hoverElement) == "vehicle" then
- if getElementType(itemElement) == "vehicle" then
- return
- end
- if getElementData(itemElement, "veh:Locked") == 1 then
- outputChatBox("#4f98e1[HL]#ffffffA jármű le van zárva!",255,0,0, true)
- return
- end
- local szam, msg = getNextAvailableSlot(hoverElement)
- if msg then
- setElementData(itemElement, "items"..movedItemSlot, 0)
- setElementData(itemElement, "itemvalue"..movedItemSlot..movedItem, 0)
- setElementData(itemElement, "itemid"..movedItemSlot..movedItem, 0)
- playSound("itemsMoving.mp3")
- setElementData(hoverElement, "items"..szam, movedItem)
- setElementData(hoverElement, "itemvalue"..szam..movedItem, movedItemValue)
- setElementData(hoverElement, "itemid"..szam..movedItem, movedItemID)
- setElementData(localPlayer, "lastMeMessage", "berak egy tárgyat a csomagtartóba. #4f98e1["..getItemName(movedItem).."]")
- if movedItemID > 0 then
- triggerServerEvent("updateItemOwner", localPlayer, movedItemID, hoverElement, szam, localPlayer)
- end
- if isTimer(saveTime) then killTimer(saveTime) end
- saveTime = setTimer(function(veh)
- saveItems(veh)
- end, 5000, 1, hoverElement)
- else
- outputChatBox("#4f98e1[HL]#ffffffEz az inventory tele van!",255,0,0, true)
- end
- elseif movedItemDuty ~= 1 and isElement(hoverElement) and getElementType(hoverElement) == "object" and getElementModel(hoverElement) == 1359 then
- local szam, msg = getNextAvailableSlot(hoverElement)
- if msg then
- setElementData(itemElement, "items"..movedItemSlot, 0)
- setElementData(itemElement, "itemvalue"..movedItemSlot..movedItem, 0)
- setElementData(itemElement, "itemid"..movedItemSlot..movedItem, 0)
- setElementData(hoverElement, "items"..szam, movedItem)
- setElementData(hoverElement, "itemvalue"..szam..movedItem, movedItemValue)
- setElementData(hoverElement, "itemid"..szam..movedItem, movedItemID)
- playSound("itemsMoving.mp3")
- setElementData(localPlayer, "lastMeMessage", "kidob egy tárgyat a kukába. #4f98e1["..getItemName(movedItem).."]")
- if movedItemID > 0 then
- triggerServerEvent("delItem", localPlayer, movedItemID, localPlayer, movedItemSlot)
- end
- else
- outputChatBox("#4f98e1[HL]#ffffffEz a kuka tele van!",255,0,0, true)
- end
- elseif movedItemDuty ~= 1 and isElement(hoverElement) and getElementType(hoverElement) == "ped" then
- if movedItem == 75 and isPedInVehicle(localPlayer) then
- triggerServerEvent("sendLocalMeAction",localPlayer,localPlayer, "kihajol az ablakon és átadja az őrnek a papírjait.")
- triggerServerEvent("sendLocalChatMessage",localPlayer,localPlayer, " Minden rendben uram. További szép napot.")
- triggerServerEvent("openGate", getRootElement(), getElementData(hoverElement, "guard:belongsToGate"))
- elseif not isPedInVehicle(localPlayer) then
- setElementData(localPlayer, "lastMeMessage", "átadja az őrnek a papírjait.")
- triggerServerEvent("sendLocalChatMessage", localPlayer,localPlayer, " Minden rendben uram. További szép napot.")
- end
- elseif movedItemDuty ~= 1 and isElement(hoverElement) and getElementType(hoverElement) == "object" and getElementModel(hoverElement) == 2332 then
- if getElementType(itemElement) == "object" then
- return
- end
- local szam, msg = getNextAvailableSlot(hoverElement)
- if msg then
- setElementData(itemElement, "items"..movedItemSlot, 0)
- setElementData(itemElement, "itemvalue"..movedItemSlot..movedItem, 0)
- setElementData(itemElement, "itemid"..movedItemSlot..movedItem, 0)
- setElementData(hoverElement, "items"..szam, movedItem)
- setElementData(hoverElement, "itemvalue"..szam..movedItem, movedItemValue)
- setElementData(hoverElement, "itemid"..szam..movedItem, movedItemID)
- playSound("itemsMoving.mp3")
- setElementData(localPlayer, "lastMeMessage", "berak egy tárgyat a széfbe. #4f98e1["..getItemName(movedItem).."]")
- if movedItemID > 0 then
- triggerServerEvent("updateItemOwner", localPlayer, movedItemID, hoverElement, szam, localPlayer)
- end
- if isTimer(saveTime) then killTimer(saveTime) end
- saveTime = setTimer(function(veh)
- saveItems(veh)
- end, 5000, 1, hoverElement)
- else
- outputChatBox("#4f98e1[HL]#ffffffEz a széf tele van!",255,0,0, true)
- end
- end
- elseif clickDown and getTickCount() - clickDown < 200 and actualItem > 0 and actualSlot >= 0 then
- if getElementType(itemElement) == "player" then
- useItem(actualItem, actualValue, actualSlot)
- else
- if not isTimer(waitTimer) then
- local szam, msg = getNextAvailableSlot(localPlayer)
- if msg then
- if getElementData(itemElement, "items"..actualSlot) > 0 then
- setElementData(itemElement, "items"..actualSlot, 0)
- setElementData(itemElement, "itemvalue"..actualSlot..actualItem, 0)
- setElementData(itemElement, "itemid"..actualSlot..actualItem, 0)
- setElementData(itemElement, "dutyitem"..actualSlot..actualItem, 0)
- setElementData(localPlayer, "items"..szam, actualItem)
- setElementData(localPlayer, "itemvalue"..szam..actualItem, actualValue)
- setElementData(localPlayer, "itemid"..szam..actualItem, movedItemID)
- setElementData(localPlayer, "dutyitem"..szam..actualItem, actualDuty)
- if getElementType(itemElement) == "vehicle" then
- setElementData(localPlayer, "lastMeMessage", "kivesz egy tárgyat a csomagtartóból.")
- elseif getElementType(itemElement) == "object" and getElementModel(itemElement) == 1359 then
- setElementData(localPlayer, "lastMeMessage", "kivesz egy tárgyat a kukából.")
- elseif getElementType(itemElement) == "object" and getElementModel(itemElement) == 2332 then
- setElementData(localPlayer, "lastMeMessage", "kivesz egy tárgyat a széfből.")
- end
- playSound("itemsMoving.mp3")
- if movedItemID > 0 then
- triggerServerEvent("updateItemOwner", localPlayer, movedItemID, localPlayer, szam, localPlayer)
- end
- waitTimer = setTimer(function() end, 1000, 1)
- end
- end
- end
- end
- elseif movedItemSlot == actualSlot then
- elseif actualItem > 0 then
- elseif movedItemDuty ~= 1 and actualSlot >= 0 and not notShowInventoryItems[actualSlot] then
- local fegyoslot = tonumber(getElementData(itemElement, "weaponslot")) or 0
- if getElementData(itemElement, "items"..movedItemSlot) and getElementData(itemElement, "items"..movedItemSlot) ~= 0 then
- local fegyoslot = tonumber(getElementData(localPlayer, "weaponslot")) or 0
- if fegyoslot == movedItemSlot then
- setElementData(localPlayer, "weaponslot", actualSlot)
- end
- setElementData(itemElement, "items"..movedItemSlot, 0)
- setElementData(itemElement, "itemvalue"..movedItemSlot..movedItem, 0)
- setElementData(itemElement, "itemid"..movedItemSlot..movedItem, 0)
- setElementData(itemElement, "items"..actualSlot, movedItem)
- setElementData(itemElement, "itemvalue"..actualSlot..movedItem, movedItemValue)
- setElementData(itemElement, "itemid"..actualSlot..movedItem, movedItemID)
- playSound("itemsMoving.mp3")
- end
- end
- clickDown = nil
- movedItem = 0
- movedItemSlot = -1
- movedItemValue = 0
- movedItemID = -1
- movedItemDuty = 0
- end
- end)
- function giveItem(player, itemID, itemValue, slot, id, duty)
- if itemID and itemValue then
- local elementID = tonumber(getElementData(player, "dbid")) or 0
- local newItem = tonumber(itemID)
- local newSlot, state
- if not id then
- id = 0
- end
- if not slot then
- newSlot, state = getNextAvailableSlot(player)
- else
- newSlot, state = slot, true
- end
- if state == true then
- if elementID > 0 then
- setElementData(player, "items"..newSlot, newItem)
- setElementData(player, "itemvalue"..newSlot..newItem, itemValue)
- setElementData(player, "itemid"..newSlot..newItem, id)
- if duty then
- setElementData(player, "dutyitem"..newSlot..newItem, 1)
- end
- end
- else
- return false, "Inventory tele."
- end
- return true, "Oda adva."
- end
- end
- addEvent("giveItem",true)
- addEventHandler("giveItem", getRootElement(), giveItem)
- addCommandHandler("giveitem", function(cmd,...)
- local args = {...}
- if getElementData(localPlayer, "user:adminlevel") >= 6 then
- if #args < 3 then
- outputChatBox("#FF4400[HL - Használat]#FFFFFF: /".. cmd .." [Játékos ID] [ItemID] [ItemValue]",0,0,0,true)
- else
- local targetPlayer, targetPlayerName = exports.ex_core:findPlayerByPartialNick(localPlayer, args[1])
- if not targetPlayer then
- else
- args[2] = tonumber(args[2])
- args[3] = tostring(args[3])
- local state,msg = giveItem(targetPlayer, args[2], args[3])
- if state then
- outputChatBox("#FF4400[HL]#FFFFFF: ".. targetPlayerName .." kapott egy ".. getItemName(args[2]) .."-t ".. args[3] .." értékkel.",0,0,0,true)
- else
- outputChatBox("#FF4400[HL]#FFFFFF: ".. targetPlayerName ..": "..msg,0,0,0,true)
- end
- end
- end
- end
- end)
- function saveItems(element)
- local temptable = {}
- if getElementType(element) == "vehicle" and getVehicleType(element) == "BMX" then return end
- local dbid = tonumber(getElementData(element,"dbid")) or 0
- if dbid > 0 then
- for i=0,31 do
- local item = tonumber(getElementData(element,"items"..i)) or 0
- if item > 0 then
- local dutyItem = tonumber(getElementData(element,"dutyitem"..i..item)) or 0
- if dutyItem ~= 1 then
- local itemValue = tostring(getElementData(element,"itemvalue"..i..item)) or 0
- local id = tonumber(getElementData(element,"itemid"..i..item)) or 0
- temptable[#temptable+1] = {id,i,dbid,item,itemValue}
- end
- end
- end
- end
- if #temptable > 0 then
- triggerServerEvent("saveItemsWithMyPC", localPlayer, element, temptable)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement