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

Wysłany: 2018-02-25, 15:12


MichalskY







Wiek: 31
Na forum: 3546 dni
Posty: 24



Respekt: 20,5

Witam. mam problem z przecho z Owna a mianowicie jak dodam kolejne przecho to one nie chc? dzia?a?. jak doda? kolejne przecho tak by ono dzia?a?o i mo?na by?o odda? auto do przecho. Narazie jak mam tabele "przechowalnie" to tylko pierwsza dzia?a czyli LS a FC ju? nie dzia?a.


local markers = {}

local przechowalnie = {
    ["LS"] = {
        odbior = {1683.4189453125, -1463.4309082031, 14.429717063904-0.98},
        oddaj = {1687.2406005859, -1464.8287353516, 14.061058998108-1},
        respawn = {137.4479675293, 1129.0451660156, 19.870532989502, 90},

    },
    ["FC"] = {
        odbior = {-135.07150268555, 1121.0645751953, 18.7},
        oddaj = {-136.4204864502, 1124.5512695313, 19.749988555908-1},
        respawn = {-137.4479675293, 1129.0451660156, 19.870532989502, 90},
    },
    
}

local vehicles = {}
local vehs = {}

for i,v in pairs(przechowalnie) do
    print("Stworzono przechowalnie w: "..i)
    odbior = createMarker(v.odbior[1], v.odbior[2], v.odbior[3], "corona", 1.1, 255, 255, 255, 75)
    setElementData(odbior, "respawn", v.respawn)
    oddaj = createMarker(v.oddaj[1], v.oddaj[2], v.oddaj[3], "cylinder", 3, 255, 75, 0, 75)

end

addEvent("wyjmij:auto", true)
addEventHandler("wyjmij:auto", resourceRoot, function(player, uid)
    if not markers[player] then return end

    for i,v in ipairs(getElementsByType("vehicle")) do
        local id = getElementData(v, "veh:uid")
        if id and id == tonumber(uid) then
            exports.rpg_noti:createNotification(player, "error", "Pojazd zosta? ju? wyci?gni?ty.")
            return
        end
    end

    if getElementData(player, "user:pjB") == 0 then
        exports.rpg_noti:createNotification(player, "error", "Nie posiadasz prawa jazdy")
        return
    end

    local result = exports.rpg_mysql:mysql_query("SELECT * FROM rpg_prawka WHERE serial=? AND aktywnydo>NOW()", getPlayerSerial(player))
    if #result > 0 then
        outputChatBox("Posiadasz zabrane prawo jazdy od "..result[1].aktywnyod.." do "..result[1].aktywnydo.." zabrane przez "..result[1].admin.." z powodu "..result[1].powod, player, 255, 0, 0)
        return
    else
        exports.rpg_mysql:mysql_query("DELETE FROM rpg_prawka WHERE serial=?", getPlayerSerial(player))
    end

    local result = exports.rpg_mysql:mysql_query("SELECT * FROM rpg_vehicles WHERE uid=?", uid)
    if result[1].mk1 == 1 then
        exports.rpg_noti:createNotification(player, "info", "Uk?ad EP1 zosta? pomy?lnie zaprogramowany")
    end
    if result[1].mk2 == 1 then
        exports.rpg_noti:createNotification(player, "info", "Uk?ad EP2 zosta? pomy?lnie zaprogramowany")
    end
    if result[1].mk3 == 1 then
        exports.rpg_noti:createNotification(player, "info", "Uk?ad EP3 zosta? pomy?lnie zaprogramowany")
    end
    
    local veh = exports.rpg_vehicles:createNewVehicle(uid)
    local respawn = getElementData(markers[player], "respawn")
    local x2,y2,z2,rz = respawn[1], respawn[2], respawn[3], respawn[4]
    setElementPosition(veh, x2, y2, z2)
    setElementRotation(veh, 0, 0, rz)
    warpPedIntoVehicle(player, veh)
    exports.rpg_mysql:mysql_query("UPDATE rpg_vehicles SET przecho=0 WHERE uid=?", uid)
end)

addEventHandler("onMarkerHit", oddaj, function(hit)
    if not hit or not isElement(hit) then return end
    if getElementType(hit) ~= "player" then return end
    local veh = getPedOccupiedVehicle(hit)
    if not veh then return end
    local uid = getElementData(veh, "veh:uid")
    if not uid then return end
    exports.rpg_vehicles:saveVehicle(veh)
    exports.rpg_mysql:mysql_query("update rpg_vehicles set przecho=1 where uid=?", uid)
    exports["rpg_noti"]:createNotification(hit, "success", "Odda?e? pojazd do przechowalni.")
    destroyElement(veh)
end)

function createParkingVehicle(pojazdy, player)
    vehicles[player] = {}
    for i,v in ipairs(pojazdy) do
        table.insert(vehicles[player], v)
    end
    selectParkingVehicle(player, pojazdy[1].uid)
end

local pos = "-110.67529296875, 1132.4750976563, 19.421878814697, 0, 0, 180"

function selectParkingVehicle(player, uid)
    local id = getElementData(player, "user:uid")
    local org = getElementData(player, "user:oname")
    local pojazdy = false
    if org then
        pojazdy = exports.rpg_mysql:mysql_query("select * from rpg_vehicles where (owner=? or organizacja=?) and przecho=1", id, org)
    else
        pojazdy = exports.rpg_mysql:mysql_query("select * from rpg_vehicles where owner=? and przecho=1", id)
    end
    destroyParkingVehicle(player)
    for i,v in ipairs(pojazdy) do
        if v.uid == uid then
            local posi = split(pos, ",")
            vehs[player] = createVehicle(v.model, posi[1], posi[2], posi[3], posi[4], posi[5], posi[6])
            setElementDimension(vehs[player], getElementData(player, "user:tempid"))
            setElementDimension(player, getElementData(player, "user:tempid"))
            setElementFrozen(vehs[player], true)
            local color = split(v.color, ",")
            setVehicleColor(vehs[player], color[1], color[2], color[3], color[4], color[5], color[6])
            local upgrades = split(v.upgrades, ",")
            for i=1,#upgrades do
                addVehicleUpgrade(vehs[player], upgrades[i])
            end
        end
    end
end
addEvent("selectParkingVehicle", true)
addEventHandler("selectParkingVehicle", resourceRoot, selectParkingVehicle)

function destroyParkingVehicle(player)
    setElementDimension(player, 0)
    if vehs[player] and isElement(vehs[player]) then
        destroyElement(vehs[player])
        vehs[player] = false
    end
end
addEvent("destroyParkingVehicle", true)
addEventHandler("destroyParkingVehicle", resourceRoot, destroyParkingVehicle)

addEventHandler("onPlayerQuit", root, function()
    destroyParkingVehicle(source)
end)

addEventHandler("onMarkerHit", odbior, function(hit)
    if getElementType(hit) ~= "player" then return end
    if isPedInVehicle(hit) then return end
    markers[hit] = source
    local uid = getElementData(hit, "user:uid")
    local org = getElementData(hit, "user:oname")
    local pojazdy = false
    if org then
        pojazdy = exports.rpg_mysql:mysql_query("select * from rpg_vehicles where (owner=? or organizacja=?) and przecho=1", uid, org)
    else
        pojazdy = exports.rpg_mysql:mysql_query("select * from rpg_vehicles where owner=? and przecho=1", uid)
    end
    if #pojazdy > 0 then
        createParkingVehicle(pojazdy, hit)
        triggerClientEvent(hit, "lista:aut", resourceRoot, pojazdy)
    else
        exports["rpg_noti"]:createNotification(hit, "success", "Nie posiadasz pojazd?w do odebrania.")
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-25, 18:16


Ciastuuś

As-salamu alaykum






Wiek: 27
Na forum: 3213 dni
Posty: 800
Nick w MP: Ciastuuś

Piwa: 4304

Respekt: 640
Respekt: 640Respekt: 640

"MichalskY" napisał/a:

Witam. mam problem z przecho z Owna a mianowicie jak dodam kolejne przecho to one nie chc? dzia?a?. jak doda? kolejne przecho tak by ono dzia?a?o i mo?na by?o odda? auto do przecho. Narazie jak mam tabele "przechowalnie" to tylko pierwsza dzia?a czyli LS a FC ju? nie dzia?a.


local markers = {}

local przechowalnie = {
    ["LS"] = {
        odbior = {1683.4189453125, -1463.4309082031, 14.429717063904-0.98},
        oddaj = {1687.2406005859, -1464.8287353516, 14.061058998108-1},
        respawn = {137.4479675293, 1129.0451660156, 19.870532989502, 90},

    },
    ["FC"] = {
        odbior = {-135.07150268555, 1121.0645751953, 18.7},
        oddaj = {-136.4204864502, 1124.5512695313, 19.749988555908-1},
        respawn = {-137.4479675293, 1129.0451660156, 19.870532989502, 90},
    },
    
}

local vehicles = {}
local vehs = {}

for i,v in pairs(przechowalnie) do
    print("Stworzono przechowalnie w: "..i)
    odbior = createMarker(v.odbior[1], v.odbior[2], v.odbior[3], "corona", 1.1, 255, 255, 255, 75)
    setElementData(odbior, "respawn", v.respawn)
    oddaj = createMarker(v.oddaj[1], v.oddaj[2], v.oddaj[3], "cylinder", 3, 255, 75, 0, 75)

end

addEvent("wyjmij:auto", true)
addEventHandler("wyjmij:auto", resourceRoot, function(player, uid)
    if not markers[player] then return end

    for i,v in ipairs(getElementsByType("vehicle")) do
        local id = getElementData(v, "veh:uid")
        if id and id == tonumber(uid) then
            exports.rpg_noti:createNotification(player, "error", "Pojazd zosta? ju? wyci?gni?ty.")
            return
        end
    end

    if getElementData(player, "user:pjB") == 0 then
        exports.rpg_noti:createNotification(player, "error", "Nie posiadasz prawa jazdy")
        return
    end

    local result = exports.rpg_mysql:mysql_query("SELECT * FROM rpg_prawka WHERE serial=? AND aktywnydo>NOW()", getPlayerSerial(player))
    if #result > 0 then
        outputChatBox("Posiadasz zabrane prawo jazdy od "..result[1].aktywnyod.." do "..result[1].aktywnydo.." zabrane przez "..result[1].admin.." z powodu "..result[1].powod, player, 255, 0, 0)
        return
    else
        exports.rpg_mysql:mysql_query("DELETE FROM rpg_prawka WHERE serial=?", getPlayerSerial(player))
    end

    local result = exports.rpg_mysql:mysql_query("SELECT * FROM rpg_vehicles WHERE uid=?", uid)
    if result[1].mk1 == 1 then
        exports.rpg_noti:createNotification(player, "info", "Uk?ad EP1 zosta? pomy?lnie zaprogramowany")
    end
    if result[1].mk2 == 1 then
        exports.rpg_noti:createNotification(player, "info", "Uk?ad EP2 zosta? pomy?lnie zaprogramowany")
    end
    if result[1].mk3 == 1 then
        exports.rpg_noti:createNotification(player, "info", "Uk?ad EP3 zosta? pomy?lnie zaprogramowany")
    end
    
    local veh = exports.rpg_vehicles:createNewVehicle(uid)
    local respawn = getElementData(markers[player], "respawn")
    local x2,y2,z2,rz = respawn[1], respawn[2], respawn[3], respawn[4]
    setElementPosition(veh, x2, y2, z2)
    setElementRotation(veh, 0, 0, rz)
    warpPedIntoVehicle(player, veh)
    exports.rpg_mysql:mysql_query("UPDATE rpg_vehicles SET przecho=0 WHERE uid=?", uid)
end)

addEventHandler("onMarkerHit", oddaj, function(hit)
    if not hit or not isElement(hit) then return end
    if getElementType(hit) ~= "player" then return end
    local veh = getPedOccupiedVehicle(hit)
    if not veh then return end
    local uid = getElementData(veh, "veh:uid")
    if not uid then return end
    exports.rpg_vehicles:saveVehicle(veh)
    exports.rpg_mysql:mysql_query("update rpg_vehicles set przecho=1 where uid=?", uid)
    exports["rpg_noti"]:createNotification(hit, "success", "Odda?e? pojazd do przechowalni.")
    destroyElement(veh)
end)

function createParkingVehicle(pojazdy, player)
    vehicles[player] = {}
    for i,v in ipairs(pojazdy) do
        table.insert(vehicles[player], v)
    end
    selectParkingVehicle(player, pojazdy[1].uid)
end

local pos = "-110.67529296875, 1132.4750976563, 19.421878814697, 0, 0, 180"

function selectParkingVehicle(player, uid)
    local id = getElementData(player, "user:uid")
    local org = getElementData(player, "user:oname")
    local pojazdy = false
    if org then
        pojazdy = exports.rpg_mysql:mysql_query("select * from rpg_vehicles where (owner=? or organizacja=?) and przecho=1", id, org)
    else
        pojazdy = exports.rpg_mysql:mysql_query("select * from rpg_vehicles where owner=? and przecho=1", id)
    end
    destroyParkingVehicle(player)
    for i,v in ipairs(pojazdy) do
        if v.uid == uid then
            local posi = split(pos, ",")
            vehs[player] = createVehicle(v.model, posi[1], posi[2], posi[3], posi[4], posi[5], posi[6])
            setElementDimension(vehs[player], getElementData(player, "user:tempid"))
            setElementDimension(player, getElementData(player, "user:tempid"))
            setElementFrozen(vehs[player], true)
            local color = split(v.color, ",")
            setVehicleColor(vehs[player], color[1], color[2], color[3], color[4], color[5], color[6])
            local upgrades = split(v.upgrades, ",")
            for i=1,#upgrades do
                addVehicleUpgrade(vehs[player], upgrades[i])
            end
        end
    end
end
addEvent("selectParkingVehicle", true)
addEventHandler("selectParkingVehicle", resourceRoot, selectParkingVehicle)

function destroyParkingVehicle(player)
    setElementDimension(player, 0)
    if vehs[player] and isElement(vehs[player]) then
        destroyElement(vehs[player])
        vehs[player] = false
    end
end
addEvent("destroyParkingVehicle", true)
addEventHandler("destroyParkingVehicle", resourceRoot, destroyParkingVehicle)

addEventHandler("onPlayerQuit", root, function()
    destroyParkingVehicle(source)
end)

addEventHandler("onMarkerHit", odbior, function(hit)
    if getElementType(hit) ~= "player" then return end
    if isPedInVehicle(hit) then return end
    markers[hit] = source
    local uid = getElementData(hit, "user:uid")
    local org = getElementData(hit, "user:oname")
    local pojazdy = false
    if org then
        pojazdy = exports.rpg_mysql:mysql_query("select * from rpg_vehicles where (owner=? or organizacja=?) and przecho=1", uid, org)
    else
        pojazdy = exports.rpg_mysql:mysql_query("select * from rpg_vehicles where owner=? and przecho=1", uid)
    end
    if #pojazdy > 0 then
        createParkingVehicle(pojazdy, hit)
        triggerClientEvent(hit, "lista:aut", resourceRoot, pojazdy)
    else
        exports["rpg_noti"]:createNotification(hit, "success", "Nie posiadasz pojazd?w do odebrania.")
    end
end)


Nie lepiej zrobi? jedn? tabel? gdzie b?d? i wy??cznie 'odbior' pojazdu, potem kolejn? z 'oddaj' pojazd, a kolejn? 'respawn' pojazd

Przyk?ad

local oddaj = {

{x, y, z},

}

local oddaj = {

{x.y.z},

}


Podpis
As-salamu alaykum
Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-25, 20:59


MichalskY







Wiek: 31
Na forum: 3546 dni
Posty: 24



Respekt: 20,5

chyba to nie bedzie robi?o wi?kszej r??nicy. mi tyko chodzi o to ze drugie miejsce w tabeli (FC) nie dzia?a. wje?d?am autem lecz nie ma ?adnej reakcji :/

Postaw piwo autorowi tego posta
 

 
Tagi: przecho :: nie :: dziala
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