Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2017-05-28, 20:16


Gravgor







Wiek: 22
Na forum: 3620 dni
Posty: 380
Nick w MP: 1944

Piwa: 702

Respekt: 57,8

Mam taki blad
http://imgur.com/a/DP14n

Kod

c.lua

local screenWscreenH guiGetScreenSize()

foNte dxCreateFont("font.ttf",12) or "defaul-bold"
foNte2 dxCreateFont("SLANT.ttf",15) or "defaul-bold"
foNte3 dxCreateFont("SLANT.ttf",13) or "defaul-bold"
foNte4 dxCreateFont("font.ttf",9) or "defaul-bold"

function showDxGUIWarsztatTuning()
     local r1,g1,b1 interpolateBetween(33,33,33,0,255,0,(getTickCount()-GD1)/1500,"Linear")   
     local r2,g2,b2 interpolateBetween(33,33,33,0,255,0,(getTickCount()-GD2)/1500,"Linear")
rectangleCircle2(screenW 0.3039screenH 0.2917screenW 0.3922screenH 0.4383tocolor(000199), tocolor(000199))
   
rectangleCircle(screenW 0.2883screenH 0.2283screenW 0.4234screenH 0.0633tocolor(255040252), tocolor(255040252))
        
dxDrawBorderedText("Montowanie Tuningu"screenW 0.2875screenH 0.2283screenW 0.7117screenH 0.2917tocolor(255255255255), 1.00foNte2"center""center"falsefalsefalsefalsefalse)
        

if not cursorPosition(screenW 0.6828screenH 0.2283screenW 0.0289screenH 0.0633then -- close
     rectangleCircle(screenW 0.6828screenH 0.2283screenW 0.0289screenH 0.0633tocolor(333333255), tocolor(333333255), true)
    GD1 getTickCount()
else 
     rectangleCircle(screenW 0.6828screenH 0.2283screenW 0.0289screenH 0.0633tocolor(r1,g1,b1255), tocolor(r1,g1,b1255), true)
end
if not cursorPosition(screenW 0.3508screenH 0.6200screenW 0.1508screenH 0.0767then -- zamontuj
     rectangleCircle(screenW 0.3508screenH 0.6200screenW 0.1508screenH 0.0767tocolor(333333255), tocolor(333333255), true)
    GD2 getTickCount()
else 
     rectangleCircle(screenW 0.3508screenH 0.6200screenW 0.1508screenH 0.0767tocolor(r2,g2,b2255), tocolor(r2,g2,b2255), true)
end
    
dxDrawBorderedText("Zamontuj"screenW 0.3500screenH 0.6200screenW 0.5016screenH 0.6967tocolor(255255255255), 1.00foNte3"center""center"falsefalsefalsefalsefalse)
        
dxDrawBorderedText("Koszt tuningu: #00DD00"..kosztTuningu.." PLN"screenW 0.3039screenH 0.5067screenW 0.5437screenH 0.5967tocolor(255255255255), 1.00foNte"center""center"falsefalsefalsefalsefalse)
        
dxDrawBorderedText("Wybierz kategorie a nast?pnie cz??? jak?\nchcesz zamontowa? do pojazdu. Mo?esz zrobi?\npodgl?d cz?s?i na pojezdzie naciskaj??\n1 raz na dan? cze??."screenW 0.3039screenH 0.2933screenW 0.5430screenH 0.5067tocolor(255255255255), 1.00foNte4"center""center"falsefalsefalsefalsefalse)
dxDrawBorderedText("✖"screenW 0.6828screenH 0.2283screenW 0.7117screenH 0.2917tocolor(255255255255), 1.00foNte"center""center"falsefalsefalsefalsefalse)
end

gui_tuning = {}            
gui_tuning[3] = guiCreateGridList(0.540.310.150.41true)
guiGridListSetSortingEnabled(gui_tuning[3], false)
gui_tuning[4] = guiGridListAddColumn(gui_tuning[3], "Kategoria"0.9)
gui_tuning[5] = guiCreateGridList(0.540.310.150.41true)
guiGridListSetSortingEnabled(gui_tuning[5], false)
gui_tuning[6] = guiGridListAddColumn(gui_tuning[5], "Cze??"0.5)
gui_tuning[7] = guiGridListAddColumn(gui_tuning[5], "Koszt"0.4)    
guiSetVisible(gui_tuning[5], false)
guiSetVisible(gui_tuning[3], false)

function showGUIWarsztatTuning(veh)
    guiGridListClear(gui_tuning[3])
    
    saveVeh veh --zapis pojazdu
    tuning = {} --zapis kategorii ktore mozemy zainstalowac w naszym pojezdzie
    saveTuning getVehicleUpgrades(veh) --zapis aktualnego tuningu
    dodane = {} --zapis czesi ktore dodalismy
    
    local upgrades getVehicleCompatibleUpgrades(veh)
        for k,v in ipairs (upgrades) do
        local slot getVehicleUpgradeSlotName(v)
            if not tuning[slotthen
            tuning[slot] = {}
            
            local row guiGridListAddRow(gui_tuning[3])
            guiGridListSetItemText (gui_tuning[3], rowgui_tuning[4], slotfalsefalse)
            end
        table.insert(tuning[slot], v)
        end

    --//    
    aktualizujCene()
    guiSetVisible(gui_tuning[3], true)
    guiSetVisible(gui_tuning[5], false)
    showCursor(true)
        panelTuning true

end

function onKategoriaTuningClick()
local kategoria guiGridListGetSelectedItem (gui_tuning[3])
    if (kategoria ~= -1then
    local kat guiGridListGetItemText (gui_tuning[3], kategoria1)
    wybKatTuningu kategoria 1
    
    --pokazuje mozliwe czesci
    guiGridListClear(gui_tuning[5])
    
    local row guiGridListAddRow (gui_tuning[5])
    guiGridListSetItemText (gui_tuning[5], rowgui_tuning[6], "..."falsefalse)
    guiGridListSetItemText (gui_tuning[5], rowgui_tuning[7], ""falsefalse)
    
        for i,v in pairs(tuning[kat]) do
        local v tonumber(v)
        local row guiGridListAddRow (gui_tuning[5])
        local nazwa saveUpgr[v][2] or v
        local cena saveUpgr[v][3] or 1000
        
        guiGridListSetItemText (gui_tuning[5], rowgui_tuning[6], nazwafalsefalse)
        guiGridListSetItemData (gui_tuning[5], rowgui_tuning[6], v)
               guiGridListSetItemText (gui_tuning[5], rowgui_tuning[7], cena.." PLN"falsefalse)
        
            if dodane[wybKatTuninguthen
                if tonumber(dodane[wybKatTuningu][2]) == tonumber(vthen
                guiGridListSetItemColor(gui_tuning[5], row12302020)
                end
            end
            
            if isElement(saveVehthen
            local upgrades getVehicleUpgrades (saveVeh)
                for kk,vv in ipairs (upgrades) do
                    if tonumber(v) == tonumber(vvthen
                    dodane[wybKatTuningu] = {rowvv}
                    guiGridListSetItemColor(gui_tuning[5], row12302020)
                    end
                end
            end
        end
        --chowam starepokazuje nowe
        guiSetVisible(gui_tuning[3], false)
        guiSetVisible(gui_tuning[5], true)
    end
end
addEventHandler ("onClientGUIDoubleClick"gui_tuning[3], onKategoriaTuningClick)

function onCzescTuningClick()
local czesc guiGridListGetSelectedItem (gui_tuning[5])
    if (czesc ~= -1then
    local nazwa guiGridListGetItemText (gui_tuning[5], czesc1)
        if nazwa == "..." then --powrot do listy
        guiSetVisible(gui_tuning[3], true)
        guiSetVisible(gui_tuning[5], false)
        else --czesc
        local id_czesc guiGridListGetItemData(gui_tuning[5], czescgui_tuning[6])
        local rgguiGridListGetItemColor(gui_tuning[5], czesc1)
            if (== 255 and == 255 and == 255then --montujemy czesc
                --usuwamy ewinna zaznaczona wczesniej
                if dodane[wybKatTuninguthen
                local row dodane[wybKatTuningu][1]
                local czesc dodane[wybKatTuningu][2]
                triggerServerEvent("removeUpgrade"localPlayerczesc)
                guiGridListSetItemColor(gui_tuning[5], row1255255255)
                end
            --dodajemy czesc
            triggerServerEvent("addUpgrade"localPlayerid_czesc)
            guiGridListSetItemColor(gui_tuning[5], czesc12302020)
            dodane[wybKatTuningu] = {czescid_czesc}
            else --usuwamy czesc
            triggerServerEvent("removeUpgrade"localPlayerid_czesc)
            guiGridListSetItemColor(gui_tuning[5], czesc1255255255)            
            dodane[wybKatTuningu] = nil
            end
                  aktualizujCene()
        end
    end
end
addEventHandler ("onClientGUIDoubleClick"gui_tuning[5], onCzescTuningClick) 

function aktualizujCene()
        cena 0
    for i,v in pairs(dodane) do
    local id_czesci tonumber(v[2])
    local koszt saveUpgr[id_czesci][3]
    cena cena koszt
    end
    kosztTuningu ""..cena..""
end

function onWarsztatTuningZamknij(buttonstate)
  if panelTuning and button == "left" and state == "down" then
    if cursorPosition(screenW 0.6828screenH 0.2283screenW 0.0289screenH 0.0633then
triggerServerEvent("removeUpgradeOnClose"localPlayer)
triggerServerEvent("addUpgradeOnClose"localPlayer)
    
guiSetVisible(gui_tuning[3], false)
guiSetVisible(gui_tuning[5], false)
showCursor(false)
panelTuning false    
wyczyszDane()
removeEventHandler("onClientRender"rootshowDxGUIWarsztatTuning)
        end
    end
end
addEventHandler("onClientClick"getRootElement(), onWarsztatTuningZamknij)

function onWarsztatTuningZamontuj(buttonstate)
  if panelTuning and button == "left" and state == "down" then
    if cursorPosition(screenW 0.3508screenH 0.6200screenW 0.1508screenH 0.0767then
    if cena 0 then --wybralismy chociaz jedna czesc
                local kasa getElementData(localPlayer"user:money")
        if tonumber(kasa) >= cena then
        triggerServerEvent("zabierzPieniadzeZaTuning"getLocalPlayer(), cena)
        
guiSetVisible(gui_tuning[3], false)
guiSetVisible(gui_tuning[5], false)
panelTuning false
removeEventHandler("onClientRender"rootshowDxGUIWarsztatTuning)
showCursor(false)
        wyczyszDane()
        else
        outputChatBox("Nie masz wystarczaj?co pieni?dzy na zamontowanie tych cze?ci!"255255255true)
        end
    else
    outputChatBox("Nie wybra?e? ?adnej cz??ci."255255255true)
    end
        end
    end
end
addEventHandler("onClientClick"getRootElement(), onWarsztatTuningZamontuj)

function wyczyszDane()
saveVeh nil
tuning nil
saveTuning nil
dodane nil
saveUpgr nil
cena nil
triggerServerEvent("clearDataTuning"getLocalPlayer())
end

addEvent("pokazGUITuningu"true)
addEventHandler("pokazGUITuningu"getRootElement(),
function(pojazdupgr)
saveUpgr = {}
guiSetVisible(gui_tuning[3], true)
showGUIWarsztatTuning(pojazd)
addEventHandler("onClientRender"rootshowDxGUIWarsztatTuning)
    GD1 getTickCount()
    GD2 getTickCount()

    for i,v in pairs(upgr) do
    local item v[1]
    local name v[2]
    local price v[3]
    
    saveUpgr[tonumber(item)] = {itemnameprice}
    end
end)

addEvent("zamknijGUITuninguTune"true)
addEventHandler("zamknijGUITuninguTune"getRootElement(),
function()
guiSetVisible(gui_tuning[3], false)
guiSetVisible(gui_tuning[5], false)
panelTuning false
removeEventHandler("onClientRender"rootshowDxGUIWarsztatTuning)
showCursor(false)
end)


function cursorPosition(xywh)
    if (not isCursorShowing()) then
        return false
    end
    local mxmy getCursorPosition()
    local fullxfully guiGetScreenSize()
    cursorxcursory mx*fullxmy*fully
    if cursorx and cursorx and cursory and cursory h then
        return true
    else
        return false
    end
end

function rectangleCircle2(hou_xhou_yhou_sxhou_sycolorcolor2)
    exports.IL_DxBlure:dxDrawBluredRectanglehou_x 5hou_yhou_sx 101,  tocolor (255,255,255,255))
    exports.IL_DxBlure:dxDrawBluredRectanglehou_x 3hou_y 1hou_sx 61tocolor (255,255,255,255))
    exports.IL_DxBlure:dxDrawBluredRectanglehou_x 2hou_y 2hou_sx 41tocolor (255,255,255,255))
    exports.IL_DxBlure:dxDrawBluredRectanglehou_x 1hou_y 3hou_sx 22tocolor (255,255,255,255))
    exports.IL_DxBlure:dxDrawBluredRectanglehou_xhou_y 5hou_sx1tocolor (255,255,255,255))
    
    exports.IL_DxBlure:dxDrawBluredRectanglehou_xhou_y 6hou_sxhou_sy 11tocolor (255,255,255,255))
    
    exports.IL_DxBlure:dxDrawBluredRectanglehou_x 5hou_y hou_syhou_sx 101tocolor (255,255,255,255))
    exports.IL_DxBlure:dxDrawBluredRectanglehou_x 3hou_y hou_sy 1hou_sx 61tocolor (255,255,255,255))
    exports.IL_DxBlure:dxDrawBluredRectanglehou_x 2hou_y hou_sy 2hou_sx 41tocolor (255,255,255,255))
    exports.IL_DxBlure:dxDrawBluredRectanglehou_x 1hou_y hou_sy 4hou_sx 22tocolor (255,255,255,255))
    exports.IL_DxBlure:dxDrawBluredRectanglehou_xhou_y hou_sy 5hou_sx1tocolor (255,255,255,255))

    dxDrawRectangle hou_x 5hou_yhou_sx 101color )
    dxDrawRectangle hou_x 3hou_y 1hou_sx 61color )
    dxDrawRectangle hou_x 2hou_y 2hou_sx 41color )
    dxDrawRectangle hou_x 1hou_y 3hou_sx 22color )
    dxDrawRectangle hou_xhou_y 5hou_sx1color )
    
    dxDrawRectangle hou_xhou_y 6hou_sxhou_sy 11color )
    
    dxDrawRectangle hou_x 5hou_y hou_syhou_sx 101color )
    dxDrawRectangle hou_x 3hou_y hou_sy 1hou_sx 61color )
    dxDrawRectangle hou_x 2hou_y hou_sy 2hou_sx 41color )
    dxDrawRectangle hou_x 1hou_y hou_sy 4hou_sx 22color )
    dxDrawRectangle hou_xhou_y hou_sy 5hou_sx1color )
    
    dxDrawRectangle hou_x 5hou_yhou_sx 101color2)
    dxDrawRectangle hou_x 3hou_y 121color2)
    dxDrawRectangle hou_x 2hou_y 211color2)
    dxDrawRectangle hou_x 1hou_y 312color2 )
    dxDrawRectangle hou_xhou_y 511color2)
            
    dxDrawRectangle hou_xhou_y 61hou_sy 11color2)
    dxDrawRectangle hou_x hou_sx 1hou_y 61hou_sy 11color2 )
            
    dxDrawRectangle hou_x hou_sx 5hou_y 121color2)
    dxDrawRectangle hou_x hou_sx 3hou_y 211color2 )
    dxDrawRectangle hou_x hou_sx 2hou_y 312color2 )
    dxDrawRectangle hou_x hou_sx 1hou_y 511color2)
            
    dxDrawRectangle hou_x 5hou_y hou_syhou_sx 101color2 )
    dxDrawRectangle hou_x 3hou_y hou_sy 121color2 )
    dxDrawRectangle hou_x 2hou_y hou_sy 211color2 )
    dxDrawRectangle hou_x 1hou_y hou_sy 412color2 )
    dxDrawRectangle hou_xhou_y hou_sy 511color2 )
            
    dxDrawRectangle hou_x hou_sx 5hou_y hou_sy 121color2 )
    dxDrawRectangle hou_x hou_sx 3hou_y hou_sy 211color2 )
    dxDrawRectangle hou_x hou_sx 2hou_y hou_sy 412color2 )
    dxDrawRectangle hou_x hou_sx 1hou_y hou_sy 511color2 )
end

function rectangleCircle(hou_xhou_yhou_sxhou_sycolorcolor2)

    dxDrawRectangle hou_x 5hou_yhou_sx 101color )
    dxDrawRectangle hou_x 3hou_y 1hou_sx 61color )
    dxDrawRectangle hou_x 2hou_y 2hou_sx 41color )
    dxDrawRectangle hou_x 1hou_y 3hou_sx 22color )
    dxDrawRectangle hou_xhou_y 5hou_sx1color )
    
    dxDrawRectangle hou_xhou_y 6hou_sxhou_sy 11color )
    
    dxDrawRectangle hou_x 5hou_y hou_syhou_sx 101color )
    dxDrawRectangle hou_x 3hou_y hou_sy 1hou_sx 61color )
    dxDrawRectangle hou_x 2hou_y hou_sy 2hou_sx 41color )
    dxDrawRectangle hou_x 1hou_y hou_sy 4hou_sx 22color )
    dxDrawRectangle hou_xhou_y hou_sy 5hou_sx1color )
    
    dxDrawRectangle hou_x 5hou_yhou_sx 101color2)
    dxDrawRectangle hou_x 3hou_y 121color2)
    dxDrawRectangle hou_x 2hou_y 211color2)
    dxDrawRectangle hou_x 1hou_y 312color2 )
    dxDrawRectangle hou_xhou_y 511color2)
            
    dxDrawRectangle hou_xhou_y 61hou_sy 11color2)
    dxDrawRectangle hou_x hou_sx 1hou_y 61hou_sy 11color2 )
            
    dxDrawRectangle hou_x hou_sx 5hou_y 121color2)
    dxDrawRectangle hou_x hou_sx 3hou_y 211color2 )
    dxDrawRectangle hou_x hou_sx 2hou_y 312color2 )
    dxDrawRectangle hou_x hou_sx 1hou_y 511color2)
            
    dxDrawRectangle hou_x 5hou_y hou_syhou_sx 101color2 )
    dxDrawRectangle hou_x 3hou_y hou_sy 121color2 )
    dxDrawRectangle hou_x 2hou_y hou_sy 211color2 )
    dxDrawRectangle hou_x 1hou_y hou_sy 412color2 )
    dxDrawRectangle hou_xhou_y hou_sy 511color2 )
            
    dxDrawRectangle hou_x hou_sx 5hou_y hou_sy 121color2 )
    dxDrawRectangle hou_x hou_sx 3hou_y hou_sy 211color2 )
    dxDrawRectangle hou_x hou_sx 2hou_y hou_sy 412color2 )
    dxDrawRectangle hou_x hou_sx 1hou_y hou_sy 511color2 )
end

function dxDrawBorderedTexttextxywhcolorscalefontalignXalignYclipwordBreakpostGUI )
    dxDrawText text:gsub('#%x%x%x%x%x%x'''), 1111tocolor 000255 ), scalefontalignXalignYclipwordBreakfalse )
    dxDrawText text:gsub('#%x%x%x%x%x%x'''), 1111tocolor 000255 ), scalefontalignXalignYclipwordBreakfalse )
    dxDrawText text:gsub('#%x%x%x%x%x%x'''), 1111tocolor 000255 ), scalefontalignXalignYclipwordBreakfalse )
    dxDrawText text:gsub('#%x%x%x%x%x%x'''), 1111tocolor 000255 ), scalefontalignXalignYclipwordBreakfalse )
    dxDrawText text:gsub('#%x%x%x%x%x%x'''), 1y1htocolor 000255 ), scalefontalignXalignYclipwordBreakfalse )
    dxDrawText text:gsub('#%x%x%x%x%x%x'''), 1y1htocolor 000255 ), scalefontalignXalignYclipwordBreakfalse )
    dxDrawText text:gsub('#%x%x%x%x%x%x'''), x1w1tocolor 000255 ), scalefontalignXalignYclipwordBreakfalse )
    dxDrawText text:gsub('#%x%x%x%x%x%x'''), x1w1tocolor 000255 ), scalefontalignXalignYclipwordBreakfalse )
    dxDrawText textxywhcolorscalefontalignXalignYclipwordBreakpostGUItrue )
end



s.lua
vehInCol = {}
tuningTable = {}

local stanowiskaTunera = {
    stanowiska={
        mpos={1936.0498046875, -1984.476562513.553544044495,0},
        cpos={1934.5571, -1986.125912.5535441002},
        job_id="Tuner LS",
    },
}

for i,v in pairs(stanowiskaTunera) do
    v.cuboid=createColSphere(unpack(v.cpos))
    v.marker=createMarker(v.mpos[1], v.mpos[2], v.mpos[3], "cylinder"166119244255)
    setElementData(v.marker,"marker:duty",v.job_id)
    setElementData(v.marker,"marker:cuboid",v.cuboid)
        addEventHandler("onColShapeLeave"v.cuboidonColLeave)
    t=createElement("text")
    setElementData(t,"text",v.text)
    setElementPosition(t,v.mpos[1], v.mpos[2], v.mpos[3]+0.6)
    addEventHandler("onMarkerHit"v.marker, function(el,md)
    if getElementType(el)~= "player" then return end
    local cs=getElementData(source"marker:cuboid")
    if not cs then return end
    local job=getElementData(source,"marker:duty")
    local ljob=getElementData(el,"player:duty")
    local veh getPedOccupiedVehicle(el)
    if not veh then
--[[
    if job ~= ljob then
        outputChatBox(" Nie jeste? zatrudniony w tym warsztacie."el25500)
        return
    end
--]]
    local vehicles=getElementsWithinColShape(cs,"vehicle")
    if #vehicles < 1 then
        outputChatBox(" Na stanowisku monta?u nie ma ?adnego pojazdu."el,25500)
        return
    end
    if #vehicles > 1 then
        outputChatBox(" Na stanowisku monta?u jest zbyt du?o pojazd?w."el,25500)
        return
    end
    if getElementHealth(vehicles[1]) < 900 then
        outputChatBox(" Pojazd jest zbyt uszkodzony aby zamontowa? ?wiat?a."el25500)
        return
    end
    if not tuningTable[elthen
                        local veh vehicles[1]
                        local aktualnyTuning getVehicleUpgrades(veh)
                    
                        tuningTable[el] = {vehaktualnyTuning}
                        triggerClientEvent(el"showDxGUIWarsztatTuning"rootvehupgradesVeh)
                        setElementData(el"warsztat"true)
                        
                        vehInCol = {}
                        vehInCol[veh] = el
    end
end
end)
end

function onColLeave(hitElement)
    if getElementType (hitElement) == "pojazd" then
    local player vehInCol[hitElement]
        if player then
            if isElement(playerthen
            removeUpgradeOnClose(player)
            addUpgradeOnClose(player)
            clearData(player)
            triggerClientEvent(player"zamknijGUITuninguTune"root)
            end
        end
    vehInCol[hitElement] = nil
   end
end

addEvent("zabierzPieniadzeZaTuning"true)
addEventHandler("zabierzPieniadzeZaTuning"getRootElement(),
function(cena)
local kasa getElementData(source"user:money")
setElementData(source"user:money"kasa-cena)
outputChatBox("* Zainstalowa?e? nowe cze?ci w poje?dzie, cena "..cena.." $."source255255255true)
end)

--[[
dodaje czesc do pojazdu
--]]
function addUpgrade(czesc)
local veh tuningTable[source][1]

    if not isElement(vehthen
    return false
    end
    
addVehicleUpgrade(vehczesc)
end
addEvent("addUpgrade"true)
addEventHandler("addUpgrade"getRootElement(), addUpgrade)

--[[
usuwa dana czesc z pojazdu
--]]
function removeUpgrade(czesc)
local veh tuningTable[source][1]

    if not isElement(vehthen
    return false
    end

removeVehicleUpgrade(vehczesc)
end
addEvent("removeUpgrade"true)
addEventHandler("removeUpgrade"getRootElement(), removeUpgrade)

--[[
usuwa wszystkie zainstalowane przy tym tuningu czesci
--]]
function removeUpgradeOnClose(player)
local source player or source
    if getElementData(source"warsztat"then
    local veh tuningTable[source][1]
    local upgrades getVehicleUpgrades(veh)
        for k,v in ipairs (upgrades) do
        removeVehicleUpgrade(vehv)
        end
    end
end
addEvent("removeUpgradeOnClose"true)
addEventHandler("removeUpgradeOnClose"getRootElement(), removeUpgradeOnClose)

--[[
dodaje stare czesci do pojazdu
--]]
function addUpgradeOnClose(player)
local source player or source
    if getElementData(source"warsztat"then
    local veh tuningTable[source][1]
    local tuning tuningTable[source][2]
        for i,v in pairs(tuning) do
        addVehicleUpgrade(vehv)
        end
    end
end
addEvent("addUpgradeOnClose"true)
addEventHandler("addUpgradeOnClose"getRootElement(), addUpgradeOnClose)

--[[
usuwa daneprzywraca tuning przy wyjsciu z serwera wyjsciu z gui
--]]
function clearData(player)
local player source or player
tuningTable[player] = nil
removeElementData(player"warsztat")
end
addEvent("clearDataTuning"true)
addEventHandler("clearDataTuning"getRootElement(), clearData)

function przywrocDane()
removeUpgradeOnClose(source)
addUpgradeOnClose(source)
clearData(source)
resetLight(source)
end
addEventHandler("onPlayerQuit"getRootElement(), przywrocDane)


--laduje itemy do tablicy po stronie serwerapotem to przenosze do klienta
upgradesVeh = {}

function loadItems()
local file_root xmlLoadFile("moditems.xml")
local sub_node xmlFindChild(file_root"item"0)
0
    while sub_node do
    item xmlNodeGetAttribute(sub_node"itemid")
    name xmlNodeGetAttribute(sub_node"name")
    price xmlNodeGetAttribute(sub_node"price")
    upgradesVeh[i] = {itemnameprice}
    
    1
    sub_node xmlFindChild(file_root"item"i)
    end
i nil
sub_node nil
end
addEventHandler("onResourceStart"getResourceRootElement(getThisResource()), loadItems)
--Blip

--createBlip ( -1973.97,494.09,36.7627 )


Podpis
Portfolio marceliborowczak.me
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-05-28, 20:51


Yakub







Wiek: 24
Na forum: 4322 dni
Posty: 44
Nick w MP: Yakub

Piwa: 8

Respekt: 60

Po prostu w s-side masz trigger kt?rego nie doda?e? do c-side.

Podpis


Yakub

GTAO Member: 2014-08-04, 14:42

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-05-28, 20:57


Gravgor







Wiek: 22
Na forum: 3620 dni
Posty: 380
Nick w MP: 1944

Piwa: 702

Respekt: 57,8

Wiem tylko nie wiem w jakim miejscu go dac.

Podpis
Portfolio marceliborowczak.me
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-05-29, 14:04


neku^







Wiek: 24
Na forum: 3521 dni
Posty: 461
Nick w MP: neku^

Piwa: 1186

Respekt: 320,5
Respekt: 320,5Respekt: 320,5Respekt: 320,5

Dodajesz w stronie c-side oboj?tnie gdzie. Najlepiej na dole.

Postaw piwo autorowi tego posta
 

 
Tagi: server :: triggered
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku