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

Wysłany: 2017-03-31, 19:16


Qwertick

Coming soon...






Wiek: 23
Na forum: 3718 dni
Posty: 472
Nick w MP: Qwertick

Piwa: 2727

Respekt: 215,8
Respekt: 215,8Respekt: 215,8

Witam mam problem z mechanikiem chodzi mi g??wnie o GUI, poniewa? gdy wchodz? w marker to mi si? nie pokazuje prosz? o pomoc. W DB3 nie ma b??du.

Server:


createBlip(1924.66,-1866.15,13.56, 27,2,255,0,0,255,0,100)

local t = createElement('text')
setElementPosition(t,1903.51,-1871.14,13.55+0.5)
setElementData(t,"name","Samoobs?ugowa\nNaprawa Pojazdu")

local t = createElement('text')
setElementPosition(t,1903.63,-1857.14,13.56+0.5)
setElementData(t,"name","Samoobs?ugowa\nNaprawa Pojazdu")

local strefyNapraw={

   -- LS
  warsztatIdlewoodStanowsko11={
    cuboid={1910.76,-1870.64,13.29,359.7,359.6,89.6}, -- miejsce gdzie znajduje si? pojazd
    mpos={1903.51,-1871.14,13.55}, -- pozycja markera w ktorym gracz bedzie stal aby naprawiac
    faction_id=3, -- id frakcji ktora ma do tego dostep
  },
  warsztatIdlewoodStanowsko12={
    cuboid={1910.32,-1857.18,13.29,359.7,0.0,88.9}, -- miejsce gdzie znajduje si? pojazd
    mpos={1903.63,-1857.14,13.56}, -- pozycja markera w ktorym gracz bedzie stal aby naprawiac
    faction_id=3,
  },
}

for i,v in pairs(strefyNapraw) do
  v.cs=createColCuboid(v.cuboid[1], v.cuboid[2], v.cuboid[3], v.cuboid[4], v.cuboid[5], v.cuboid[6])
  v.marker=createMarker(v.mpos[1], v.mpos[2], v.mpos[3]-1, "cylinder", 1.2, 32,200,0,50)
  setElementData(v.marker,"cs",v.cs)
  setElementData(v.marker,"faction_id",v.faction_id)
  
end

addEvent("naprawaElementu", true)
addEventHandler("naprawaElementu", resourceRoot, function(pojazd, czesc, koszt)
  outputDebugString("Naprawa elementu " .. czesc .. " za " .. koszt)
  takePlayerMoney( client, koszt )
  if koszt>getPlayerMoney(client) then
    return
  end

  if (czesc==-1) then

    local vps={}
    local vds={}
    local vls={}

    for i=0,6 do          vps[i]=getVehiclePanelState(pojazd,i)     end
    for i=0,3 do          vds[i]=getVehicleDoorState(pojazd,i) end
    for i=0,3 do          vls[i]=getVehicleLightState(pojazd,i) end

    fixVehicle(pojazd)

    for i=0,6 do      setVehiclePanelState(pojazd, i, vps[i])    end
    for i=0,3 do      setVehicleDoorState(pojazd, i, vds[i])    end
    for i=0,3 do      setVehicleLightState(pojazd, i, vls[i])    end

    triggerClientEvent(client, "refreshVehicleData", resourceRoot, pojazd)
  elseif czesc>=0 and czesc<=6 then
    setVehiclePanelState(pojazd, czesc, 0)
    triggerClientEvent(client, "refreshVehicleData", resourceRoot, pojazd)
  elseif czesc>=10 and czesc<20 then
    local drzwi=czesc-10
    setVehicleDoorState(pojazd, drzwi, 0)
    triggerClientEvent(client, "refreshVehicleData", resourceRoot, pojazd)
  elseif czesc>=20 then
    local swiatlo=czesc-20
    setVehicleLightState(pojazd, swiatlo, 0)
    triggerClientEvent(client, "refreshVehicleData", resourceRoot, pojazd)
  end
end)

local warsztatyid = {
    [3]=true,
}

for i,v in ipairs(punkty_brania_kol) do
  v.marker=createMarker(v[1],v[2],v[3],"cylinder", v[4], 0,0,0,100)
  setElementData(v.marker, "braniekola", true)
  setElementData(v.marker, "faction:id", v.faction_id)
end


local function czyPracownikWarsztatu(gracz)
  local lfid=getElementData(gracz,"faction:id") or -1
  if not warsztatyid[lfid] then return false end
  return true
end

local function najblizszeKolo(gracz,pojazd)
  -- easy peasy
  local xg,yg,zg=getElementPosition(gracz)
  local najblizszeKolo=nil
  local najblizszeDist=1000

  local x,y,z=getElementPosition(pojazd)
  local _,_,rz=getElementRotation(pojazd)

  for i=1,4 do
    local rrz=math.rad(rz+45+(i-1)*90)
    local x= x + (1 * math.sin(-rrz))
    local y= y + (1 * math.cos(-rrz))
    if not najblizszeKolo or getDistanceBetweenPoints2D(x,y,xg,yg)<najblizszeDist then
      najblizszeDist=getDistanceBetweenPoints2D(x,y,xg,yg)
      najblizszeKolo=i
    end
  end
  -- ugly
  if not najblizszeKolo then return nil end
  if najblizszeKolo==4 then return 3
  elseif najblizszeKolo==3 then return 4 end
  return najblizszeKolo
end

local function zalozKolo(plr)

  local x,y,z=getElementPosition(plr)
  local _,_,rz=getElementRotation(plr)

  local rrz=math.rad(rz)
  local x= x + (1.5 * math.sin(-rrz))
  local y= y + (1.5 * math.cos(-rrz))

  local cs=createColSphere(x,y,z,2.5)
  local pojazdy=getElementsWithinColShape(cs,"vehicle")
  destroyElement(cs)
  if (#pojazdy~=1) then
    return false
  end

  -- okreslamy, kolo ktorego kola jest gracz

  local k1,k2,k3,k4=getVehicleWheelStates(pojazdy[1])
  if (k1==0) and (k2==0) and (k3==0) and (k4==0) then return end
  local kolo=najblizszeKolo(plr,pojazdy[1])
  if not kolo then return end

  setPedAnimation(plr, "MISC", "pickup_box", 1, false, false, true, true)
  toggleControl(plr, "forward", false)
  setTimer(setPedAnimationProgress, 600, 1, plr, "pickup_box", 0.5)
  setElementData(plr, "blockSettingAnimation", true) --blokujemy ENTER
  if kolo==1 then
    k1=0
  elseif kolo==2 then
    k2=0
  elseif kolo==3 then
    k3=0
  elseif kolo==4 then
    k4=0
  end
  
  setTimer(setPedAnimation, 9000, 1, plr, "ped", "phone_in")
  setTimer(setPedAnimation, 9300, 1, plr)
  setTimer(setVehicleWheelStates, 9000, 1, pojazdy[1], k1, k2, k3, k4)
  setTimer(setElementData, 9000, 1, plr, "blockSettingAnimation", true)
  setTimer(toggleControl, 9000, 1, plr, "forward", true)
  zabierzKolo(plr,9000)
end

function zabierzKolo(el,delay)
  local niesionyObiekt=getElementData(el,"niesioneKolo")
  if niesionyObiekt then
    
    if isElement(niesionyObiekt) then
      if delay then
        setTimer(destroyElement, delay, 1, niesionyObiekt)
      else
        destroyElement(niesionyObiekt)
      end
    end

    removeElementData(el,"niesioneKolo")
    setPedWalkingStyle(el,0)
    unbindKey(el, "fire", "down", zalozKolo)
    return true
  end
  return false
end



addEventHandler("onMarkerHit", resourceRoot, function(el,md)
  if not md or getElementType(el)~="player" then return end
  if not getElementData(source, "braniekola") then return end

  if zabierzKolo(el) then return end

  local kolo=createObject(1098,0,0,0)
  setObjectScale(kolo, 0.7)
  setElementData(el,"niesioneKolo", kolo,false)
--  attachElements(kolo, el, 0,0.4,-0.2,0,0,90)
  bindKey(el, "fire", "down", zalozKolo)
  exports["bone_attach"]:attachElementToBone(kolo, el, 11, 0.1,-0.1,0)
  setPedWalkingStyle(el,66)
end)

addEventHandler ( "onPickupHit", pickup, function(element)
    local result = exports.MNSDB:dbGet("SELECT * FROM konta WHERE tuner=? and login=?", 1, getPlayerName(element))
    if #result > 0 then
        if getElementData(element, "tunerfc") then
            exports.notyfikacje:outputNotificationBox(element, "Zwolniles sie z pracy tunera.", 255,255, 255)
            setElementData(element, "tunerfc", false)
        else
            exports.notyfikacje:outputNotificationBox(element, "Zatrudniles sie na prace tunera.", 255,255, 255)
            setElementData(element, "tunerfc", true)
        end
    else
        exports.notyfikacje:outputNotificationBox(element, "Nie jestes zatrudniony jako Tuner SF w urzedzie!", 255, 0, 0)
    end
   end)--POGO!!!
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    --[[    
    
    myMarker3 = createMarker( -2039.64,174.76,28.84-0.9, 'cylinder', 1, 0, 0, 0)
    bra3 = createObject ( 11416, -2038.88,178.76,29.84, 0, 0, 0 )
function MarkerHit3  (hitPlayer, matchingDimension)
local playera = hitPlayer
local easing = "OutBounce"
local time = 5000
if getElementType( playera ) == "player" then
if isObjectInACLGroup( 'user.'..getAccountName( getPlayerAccount( playera ) ), aclGetGroup( "Mechanik" ) )  then  
moveObject ( bra3, time, -2038.88,178.76,29.84-5.5, 0, 0, 0, easing)
end
    end
        end


function MarkerLeave3 ()
local easing2 = "OutBounce"
local time = 5000
moveObject ( bra3, time, -2038.88,178.76,29.84, 0, 0, 0, easing2)
end
addEventHandler ( "onMarkerHit", myMarker3, MarkerHit3 )
addEventHandler ( "onMarkerLeave", myMarker3, MarkerLeave3 )
--]]


addEventHandler("onVehicleEnter", resourceRoot, function(plr, seat)
    if seat == 0 then
        setElementFrozen(source, false)
        setElementData(source, "pojazd_paliwo", 100)
    end
end)


Client:

local w_m={}



--utils
function math.round(number, decimals, method)
        decimals = decimals or 0
        local factor = 10 ^ decimals
        if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor
        else return tonumber(("%."..decimals.."f"):format(number)) end
end

function string:split(sep)
    local sep, fields = sep or ":", {}
    local pattern = string.format("([^%s]+)", sep)
    self:gsub(pattern, function(c) fields[#fields+1] = c end)
    return fields
end






w_m.wnd = guiCreateWindow(496, 179, 637, 742, "Naprawa Pojazdu", false)
w_m.btn_napraw = guiCreateButton(14, 602, 300, 130, "Napraw", false,w_m.wnd)

w_m.btn_zamknij = guiCreateButton(334, 604, 293, 128, "Zamknij", false,w_m.wnd)
w_m.lbl_info = guiCreateLabel(0.6, 0.8395, 0.35, 0.1327, "", true, w_m.wnd)
w_m.lbl_costinfo = guiCreateLabel(0.6, 0.8395, 0.35, 0.1327, "", true, w_m.wnd)
guiLabelSetHorizontalAlign(w_m.lbl_info, "center", true)
guiLabelSetVerticalAlign(w_m.lbl_info, "center")


w_m.grid = guiCreateGridList(9, 24, 618, 573, false,w_m.wnd)
guiGridListSetSelectionMode(w_m.grid,1)
guiGridListSetSortingEnabled(w_m.grid,false)
w_m.grid_nazwa = guiGridListAddColumn ( w_m.grid, "Nazwa cz??ci", 0.3 )
w_m.grid_stan = guiGridListAddColumn ( w_m.grid, "Stan cz??ci", 0.3 )
w_m.grid_koszt = guiGridListAddColumn ( w_m.grid, "Koszt naprawy", 0.3 )
guiSetVisible(w_m.wnd,false)

local naprawiany_pojazd=nil

local function kosztNaprawySilnika(v)
    local vhp=1000-getElementHealth(v)
    local cenapojazdu=getVehicleHandling(v).monetary or 10000
    local przebieg=(10000-math.min(getElementData(v,"przebieg") or 5000,9999))/10000
    return vhp/1000*cenapojazdu*przebieg*0.002 -- it's that simple
end

local function kosztNaprawyElementu(v)
    local cenapojazdu=getVehicleHandling(v).monetary or 10000
    local przebieg=(10000-math.min(getElementData(v,"przebieg") or 5000,9999))/10000
    return cenapojazdu*przebieg*0.002 -- it's that simple
end

local panele={
    [0]="Karoseria lewy prz?d",
    [1]="Karoseria prawy prz?d",
    [2]="Karoseria lewy ty?",
    [3]="Karoseria prawy ty?",
    [4]="Szyba przednia",
    [5]="Zderzak z przodu",
    [6]="Zderzak z ty?u"
}
local stanyPaneli={
    [0]="100%",
    [1]="74%",
    [2]="66%",
    [3]="33%",
    [4]="0%"
}
local nazwyDrzwi={
    [0]="Maska",
    [1]="Baga?nik",
    [2]="Drzwi lewy prz?d",
    [3]="Drzwi prawy prz?d",
    [4]="Drzwi lewy ty?",
    [5]="Drzwi prawy ty?"
}

local nazwySwiatel={
    [0]="?wiat?o lewy prz?d",
    [1]="?wiat?o prawy prz?d",
    [2]="?wiat?o lewy ty?",
    [3]="?wiat?o prawy ty?"
}

local function fillVehicleData(v)
    guiGridListClear(w_m.grid)
    do
    if getElementHealth(v) ~= 1000 then
        local row=guiGridListAddRow(w_m.grid)
        guiGridListSetItemText(w_m.grid,row, 1, "Silnik",false,false)
        guiGridListSetItemData(w_m.grid,row, 1, -1)
        guiGridListSetItemText(w_m.grid,row, 2, math.round(getElementHealth(v)/10).."%", false, true)
        guiGridListSetItemText(w_m.grid,row, 3, math.round(math.abs(kosztNaprawySilnika(v))+2).." PLN", false, true)
    end
    
    end
    for i,panel in pairs(panele) do
    local stan = getVehiclePanelState(v, i)
    if stan ~= 0 then
        local koszt=kosztNaprawyElementu(v)*(getVehiclePanelState(v,i))/6
        local row=guiGridListAddRow(w_m.grid)
        guiGridListSetItemText(w_m.grid,row, 1, panel,false,false)
        guiGridListSetItemData(w_m.grid,row, 1, i)
        local stan=stanyPaneli[getVehiclePanelState(v,i)]
        guiGridListSetItemText(w_m.grid,row, 2, stan, false, true)
        guiGridListSetItemText(w_m.grid,row, 3, math.round(koszt+2).." PLN", false, true)
    end
    end
    -- drzwi
    for i=0,5 do
        local stan=getVehicleDoorState(v, i)
        if stan==2 or stan==3 or stan==4 then
            local koszt=kosztNaprawyElementu(v)*2/6
            local row=guiGridListAddRow(w_m.grid)
            guiGridListSetItemText(w_m.grid,row, 1, nazwyDrzwi[i],false,false)
            guiGridListSetItemData(w_m.grid,row, 1, i+10)
            guiGridListSetItemText(w_m.grid,row, 2, "0%", false, true)
            guiGridListSetItemText(w_m.grid,row, 3, math.round(koszt+2).." PLN", false, true)
        end
    end
    for i=0,3 do
        local stan=getVehicleLightState(v, i)
        if stan==1 then
            local koszt=kosztNaprawyElementu(v)*2/6
            local row=guiGridListAddRow(w_m.grid)
            guiGridListSetItemText(w_m.grid,row, 1, nazwySwiatel[i],false,false)
            guiGridListSetItemData(w_m.grid,row, 1, i+20)
            guiGridListSetItemText(w_m.grid,row, 2, "0%", false, true)
            guiGridListSetItemText(w_m.grid,row, 3, math.round(koszt+2).." PLN", false, true)
        end
    end


end


addEventHandler("onClientMarkerHit", resourceRoot, function(el,md)
    if not md or el~=localPlayer then return end


    local cs=getElementData(source, "cs")
    if not cs then return end
    if getElementData(source, "braniekola") then return end
   
    local pojazdy=getElementsWithinColShape(cs,"vehicle")

    if #pojazdy<1 then
        --outputChatBox("#cc0000Na stanowisku naprawczym nie ma ?adnego pojazdu!")
        --outputChatBox("#cc0000B??d")
        return
    end
    if #pojazdy>1 then
       outputChatBox("#cc0000Na stanowisku naprawczym znajduje si? zbyt wiele pojazd?w!")
        --outputChatBox("#cc0000B??d")
        return
    end
    allCost = setTimer(function(plr) 
        
    end, 1000, 0, el)
    fillVehicleData(pojazdy[1])
    showCursor(true)
    guiSetEnabled(w_m.btn_napraw, false)
    guiSetText(w_m.lbl_info,"")
    guiSetVisible(w_m.wnd, true)
    guiSetText(w_m.btn_napraw, string.format("Napraw (%s)", getVehicleName(pojazdy[1])) )
    naprawiany_pojazd=pojazdy[1]
end)

addEventHandler("onClientMarkerLeave", resourceRoot, function(el,md)
    if el~=localPlayer then return end
    guiSetVisible(w_m.wnd, false)
    showCursor(false)
    naprawiany_pojazd=nil
    if allCost and isTimer(allCost) then killTimer(allCost) end
end)

addEventHandler("onClientGUIClick", w_m.btn_zamknij, function()
    guiSetVisible(w_m.wnd, false)
    showCursor(false)
    naprawiany_pojazd=nil
    if allCost and isTimer(allCost) then killTimer(allCost) end
end, false)

addEventHandler("onClientGUIClick", w_m.grid, function()
        guiSetText(w_m.lbl_info,"")
        selectedRow= guiGridListGetSelectedItem ( w_m.grid) or -1
        if (selectedRow<0) then
            guiSetEnabled(w_m.btn_napraw,false)
            return
        end
        
        local multirepair = {}
        local rows = guiGridListGetSelectedItems(w_m.grid)
        for k,v in ipairs(rows) do
            if (k/3 == math.round(k/3)) then --kazde 3 wyniki sa takie same, pomijamy je
                table.insert(multirepair,v)
            end
        end
        
        totalkoszt = 0
        
        for k,v in ipairs(multirepair) do
            local koszt = guiGridListGetItemText(w_m.grid, v.row, 3)
            local koszt = koszt:split(" PLN")
            local koszt = tonumber(koszt[1])
            totalkoszt = totalkoszt+koszt
        end
        
        guiSetText(w_m.lbl_info, string.format("W sumie do zap?aty: %s PLN",totalkoszt))
        guiSetEnabled(w_m.btn_napraw, true)
end)

local napraw_lu=getTickCount()
    
addEventHandler("onClientGUIClick", w_m.btn_napraw, function()
    if getTickCount()-napraw_lu<1000 then return end

    if not naprawiany_pojazd or not isElement(naprawiany_pojazd) then return end

    selectedRow= guiGridListGetSelectedItem ( w_m.grid) or -1
    if selectedRow<0 then return end
    local rows = guiGridListGetSelectedItems(w_m.grid)
    
    local multirepair = {}
    --musimy sprawdzic, czy gracz zaznaczyl KILKA rowow, czy JEDEN  //karer - takie male udogodnienie
    for k,v in ipairs(rows) do
        if (k/3 == math.round(k/3)) then --kazde 3 wyniki sa takie same, pomijamy je
            table.insert(multirepair,v)
        end
    end
    
    guiSetText(w_m.lbl_info,"")
    if #multirepair == 1 then
        local koszt = guiGridListGetItemText(w_m.grid, selectedRow, 3)
        local koszt = koszt:split(" PLN")
        local koszt = tonumber(koszt[1])
        if not koszt then return end
        if koszt<=0 then
        guiSetText(w_m.lbl_info,"Ta cz??? jest sprawna.")
        return
        end
        -- if koszt>getPlayerMoney(localPlayer) then
        -- guiSetText(w_m.lbl_info,"Nie masz tyle got?wki!")
        -- return
        -- end
        local czesc=guiGridListGetItemData(w_m.grid, selectedRow, 1) -- numer panelu lub -1==silnik
        napraw_lu=getTickCount()
        triggerServerEvent("naprawaElementu", resourceRoot, naprawiany_pojazd, czesc, koszt)    
    elseif #multirepair > 1 then
        for i,v in ipairs(multirepair) do
            local selectedRow = v.row
            local koszt = guiGridListGetItemText(w_m.grid, selectedRow, 3)
            local koszt = koszt:split(" PLN")
            local koszt = tonumber(koszt[1])
            if not koszt then return end
            if koszt<=0 then
                break
            end
            -- if koszt>getPlayerMoney(localPlayer) then
            -- guiSetText(w_m.lbl_info,"Nie masz tyle got?wki!")
            -- return
            -- end
            local czesc=guiGridListGetItemData(w_m.grid, selectedRow, 1) -- numer panelu lub -1==silnik
            napraw_lu=getTickCount()
            triggerServerEvent("naprawaElementu", resourceRoot, naprawiany_pojazd, czesc, koszt)  
        end
    else
        outputDebugScript("lss-naprawapojazdow> inna wartosc countRows, should't happen.")
    end
end, false)

-- triggerClientEvent(client, "refreshVehicleData", resourceRoot, pojazd)
addEvent("refreshVehicleData", true)
addEventHandler("refreshVehicleData", resourceRoot, function(pojazd)
    naprawiany_pojazd=pojazd
    fillVehicleData(pojazd)
end)


Stawiam :piwo: oraz R* ;) :D

Podpis

Kontakt
Discord: Qwertick#1210

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Chrystek.
Wysłany: 2017-03-31, 19:36


Remix110

Pewna osóbka :3






Wiek: 41
Na forum: 3804 dni
Posty: 291
Nick w MP: GoodNight

Piwa: 15

Respekt: 51

A da?e? ?eby si? wy?wietla??

[ Dodano: 2017-03-31, 19:36 ]
(chodzi o GUI)

Podpis
pomogłem? :P Możesz dać piwko, przyda się na imprezę :D
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-03-31, 19:38


Qwertick

Coming soon...






Wiek: 23
Na forum: 3718 dni
Posty: 472
Nick w MP: Qwertick

Piwa: 2727

Respekt: 215,8
Respekt: 215,8Respekt: 215,8

Tak jest to zrobione

Podpis

Kontakt
Discord: Qwertick#1210

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Chrystek.
Wysłany: 2017-03-31, 20:02


Remix110

Pewna osóbka :3






Wiek: 41
Na forum: 3804 dni
Posty: 291
Nick w MP: GoodNight

Piwa: 15

Respekt: 51

hmm
A to musi by? pod blipa?

Podpis
pomogłem? :P Możesz dać piwko, przyda się na imprezę :D
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-03-31, 20:05


Qwertick

Coming soon...






Wiek: 23
Na forum: 3718 dni
Posty: 472
Nick w MP: Qwertick

Piwa: 2727

Respekt: 215,8
Respekt: 215,8Respekt: 215,8

Remix110, Ty ?lepy jeste?? Napisane jest
Wercio. napisał/a:

gdy wchodz? w marker


Podpis

Kontakt
Discord: Qwertick#1210

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Chrystek.
Wysłany: 2017-03-31, 20:19


Remix110

Pewna osóbka :3






Wiek: 41
Na forum: 3804 dni
Posty: 291
Nick w MP: GoodNight

Piwa: 15

Respekt: 51

createBlip(1924.66,-1866.15,13.56, 27,2,255,0,0,255,0,100)
a to to co?

Podpis
pomogłem? :P Możesz dać piwko, przyda się na imprezę :D
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-03-31, 20:33


Qwertick

Coming soon...






Wiek: 23
Na forum: 3718 dni
Posty: 472
Nick w MP: Qwertick

Piwa: 2727

Respekt: 215,8
Respekt: 215,8Respekt: 215,8

Remix110, Ale ty jeste? g?upi to jest tworzenie blipu
 mpos={1903.51,-1871.14,13.55}, -- pozycja markera w ktorym gracz bedzie stal aby naprawiac

Polecam nauczy? si? czyta?.

Komentarz HazeMaFaze dodany 2017-03-31, 21:25Troche kultury, ochłoń
Podpis

Kontakt
Discord: Qwertick#1210

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Chrystek.
Tagi: mechanik
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