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

Wysłany: 2016-04-07, 13:40


amama5







Wiek: 39
Na forum: 4745 dni
Posty: 57
Nick w MP: kamiloooswas

Piwa: 2

Respekt: 40,5

Ostrzeżeń: 100%
Witam mam problem z przechowalnia, ot?? nie zapisuje mi paliwa i przebiegu. Pr?bowa?em na wiele sposob?w lecz nie dzia?a :(
Licze na pomoc

--[[
Code by Riot
]]

--SQL LITE
handler dbConnect("sqlite""przechowywalnia.db")
dbExec(handler"CREATE TABLE IF NOT EXISTS `przechowywalnia` (`id` INTEGER, `model` INTEGER, `wlasciciel` INTEGER)")
dbExec(handler"CREATE TABLE IF NOT EXISTS `puszkodzenia` (`id` INTEGER, `hp` INTEGER, `p0` INTEGER, `p1` INTEGER, `p2` INTEGER, `p3` INTEGER, `p4` INTEGER, `p5` INTEGER, `p6` INTEGER)")

function onStartPrzechowywalnia()
--marker
local maly createMarker( -100.38,1051.10,19.87-0.9"cylinder"1.436255085)
addEventHandler("onMarkerHit"malyonPrzechowywalniaHit)
local przecho createBlip (-96.87,1040.83,19.8735)
duzy createMarker(-96.87,1040.83,19.87-0.9"cylinder"801339980)
end
addEventHandler("onResourceStart"getResourceRootElement(getThisResource()), onStartPrzechowywalnia)

function onPrzechowywalniaHit(hitElement)
    if getElementType(hitElement) == "player" then
    local acc getPlayerAccount(hitElement)
        if acc then
        local veh getPedOccupiedVehicle(hitElement)
            if not veh then
            local login getAccountName(acc)
            local query dbQuery(handler"SELECT * FROM przechowywalnia WHERE wlasciciel='"..login.."'")
            local resultrows dbPoll (query, -1)
            triggerClientEvent(hitElement"showPrzechowywalniaGUI"rootresult or {})
            end
        end
    end
end

addEvent("onPrzywrocPojazdZPrzechowywalni"true)
addEventHandler("onPrzywrocPojazdZPrzechowywalni"getRootElement(),
function(id)
local query dbQuery(handler"SELECT * FROM przechowywalnia WHERE id='"..id.."'")
local resultrows dbPoll (query, -1)
    if #result > 0 then
    dbExec(handler"DELETE FROM przechowywalnia WHERE id='"..id.."'")
    
    --tworze pojazd
    local xygetElementPosition(duzy)
    local zrob exports.systempojazdow:stworzPojazd(idxyz+2)
        if zrob then
        setVehicleDamage(zrob)
        warpPedIntoVehicle(sourcezrob)
        else
        outputChatBox("#919191[#CC0000ERROR#919191]Podane auto #CC0000nie istnieje#919191."source255255255true)
        end
    dbExec(handler"DELETE FROM puszkodzenia WHERE id='"..id.."'")
    else
    outputChatBox("#919191[#CC0000ERROR#919191]Podane auto #CC0000nie istnieje #919191ju? w przechowywalni."source255255255true)
    end
end)

function czyPojazdJestWPrzechowywalni(id)
local query dbQuery(handler"SELECT * FROM przechowywalnia WHERE id='"..id.."'")
local resultrows dbPoll (query, -1)
    if #result > 0 then
    return true
    else
    return false
    end
end
--##
timery = {}

function onPrzechoVehExit(playerseat)
    if seat == 0 then
    local id getElementData(source"car_id")
        if id then
            if isElementWithinMarker(sourceduzythen
            timery[id] = setTimer(oddajPojazdDoPrzechowywalni501sourceplayeridtrue)
            end
        end
    end
end
addEventHandler("onVehicleExit"getRootElement(), onPrzechoVehExit)

function oddajPojazdDoPrzechowywalni(vehplayeridbool)
    if isElement(vehthen
    local acc getPlayerAccount(player)
        if acc then
        local wlasciciel getElementData(veh"car_owner")
        local model getElementModel(veh)
        dbExec(handler"INSERT INTO przechowywalnia VALUES('"..id.."', '"..model.."', '"..wlasciciel.."')")
        
        --<< zniszczenia
        local hpp0p1p2p3p4p5p6 getVehicleDamage(veh)
        dbExec(handler"INSERT INTO puszkodzenia VALUES('"..id.."', '"..hp.."', '"..p0.."', '"..p1.."', '"..p2.."', '"..p3.."', '"..p4.."', '"..p5.."', '"..p6.."')")
        
        --
        if isElement(playerthen
            if bool then
            outputChatBox("#919191Tw?j pojazd #FF9D00"..getVehicleName(veh).." #919191zosta? umieszczony w przechowywalni."player255255255true)
            else
            outputChatBox("#919191Odda?e? pojazd #FF9D00"..getVehicleName(veh).." #919191do przechowywalni."player255255255true)
            end
        end

        destroyElement(veh)
        end
    end
end

function komendaDlaAdmina(player)
local acc getPlayerAccount(player)
    if acc then
    local login getAccountName(acc)    
        if isObjectInACLGroup ("user."..loginaclGetGroup("RCON")) then
        local veh getPedOccupiedVehicle(player)
            if veh then
            local id getElementData(veh"car_id")
                if id then
                oddajPojazdDoPrzechowywalni(vehplayerid)
                end
            end
        end
    end
end
addCommandHandler("oddajauto"komendaDlaAdmina)

function komendaDlaAdmina2(player)
local acc getPlayerAccount(player)
    if acc then
    local login getAccountName(acc)    
        if isObjectInACLGroup ("user."..loginaclGetGroup("Supporter")) then
        local veh getPedOccupiedVehicle(player)
            if veh then
            local id getElementData(veh"car_id")
                if id then
                oddajPojazdDoPrzechowywalni(vehplayerid)
                end
            end
        end
    end
end
addCommandHandler("oddajauto"komendaDlaAdmina2)

function onPrzechoVehEnter(playerseat)
    if seat == 0 then
    local id getElementData(source"car_id")
        if id then
            if isTimer(timery[id]) then
            killTimer(timery[id])
            end
        end
    end
end
addEventHandler("onVehicleEnter"getRootElement(), onPrzechoVehEnter)

function komendaDlaAdmina3(player)
local acc getPlayerAccount(player)
    if acc then
    local login getAccountName(acc)    
        if isObjectInACLGroup ("user."..loginaclGetGroup("Admin2")) then
        local veh getPedOccupiedVehicle(player)
            if veh then
            local id getElementData(veh"car_id")
                if id then
                oddajPojazdDoPrzechowywalni(vehplayerid)
                end
            end
        end
    end
end
addCommandHandler("oddajauto"komendaDlaAdmina3)

--<< Zapis i ustawianie uszkodzen w pojezdzie
function getVehicleDamage(veh)
local id getElementData(veh"car_id")
    if id then
    save = {}
    local hp getElementHealth(veh)
        for i=0do
        local panel getVehiclePanelState (vehi)
        save[i] = panel
        end
    local p0p1p2p3p4p5p6 save[0], save[1], save[2], save[3], save[4], save[5], save[6]
    
    save nil
    return hpp0p1p2p3p4p5p6
    end
end

function setVehicleDamage(veh)
local id getElementData(veh"car_id")
    if id then
    local query dbQuery(handler"SELECT * FROM puszkodzenia WHERE id='"..id.."'")
    local resultrows dbPoll (query, -1)
        if #result > 0 then
        local hpp0p1p2p3p4p5p6 result[1].hpresult[1].p0result[1].p1result[1].p2result[1].p3result[1].p4result[1].p5result[1].p6
        save = {}
        save = {p0p1p2p3p4p5p6}
            for i=0do
            setVehiclePanelState (vehisave[1])
            end
        setElementHealth(vehhp)
        save nil
        end
    end
end

Oczywi?cie za pomoc stawiam :piwo: i R*

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
mariuszszok95
Wysłany: 2016-04-07, 13:52


AteX







Wiek: 26
Na forum: 4015 dni
Posty: 927
Nick w MP: #AteX

Piwa: 8360

Respekt: 775,3
Respekt: 775,3Respekt: 775,3

Nie zapisuje paliwa i przebiegu, bo w skrypcie go nie ma.

Podpis
MultiTheftAuto++ dla MTA 1.5.7 już dostępne.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 13:53


amama5







Wiek: 39
Na forum: 4745 dni
Posty: 57
Nick w MP: kamiloooswas

Piwa: 2

Respekt: 40,5

Ostrzeżeń: 100%
AteX,
a jak go tam doda?? :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 13:58


AteX







Wiek: 26
Na forum: 4015 dni
Posty: 927
Nick w MP: #AteX

Piwa: 8360

Respekt: 775,3
Respekt: 775,3Respekt: 775,3

"amama5" napisał/a:

AteX,
a jak go tam doda?? :)


Pobierasz elementdaty pojazdu z paliwem i przebiegiem. Dodajesz zapisywanie ich do bazy danych w funkcji oddajPojazdDoPrzechowywalni i nast?pnie musisz doda? odczytywanie ich z bazy danych w funkcji onPrzywrocPojazdZPrzechowywalni. Musisz utworzy? jeszcze kolumny z paliwem i przebiegiem.

Podpis
MultiTheftAuto++ dla MTA 1.5.7 już dostępne.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 14:00


amama5







Wiek: 39
Na forum: 4745 dni
Posty: 57
Nick w MP: kamiloooswas

Piwa: 2

Respekt: 40,5

Ostrzeżeń: 100%
AteX, Jestem amatorem i nie wiem o co chodzi :(

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 14:04


AteX







Wiek: 26
Na forum: 4015 dni
Posty: 927
Nick w MP: #AteX

Piwa: 8360

Respekt: 775,3
Respekt: 775,3Respekt: 775,3

Z takim podej?ciem to nigdy nie b?dziesz wiedzia? o co chodzi :mrgreen: . Proponuj? przeanalizowa? kod, poczyta? o potrzebnych funkcjach na wiki, pr?bowa? co? napisa? metod? pr?b i b??d?w. Je?eli co? nie b?dzie dzia?a? to tutaj na pewno jak nie ja to pomo?e kto? inny.


Więcej informacji znajdziesz w Wikipedii MTA:

getElementData


Więcej informacji znajdziesz w Wikipedii MTA:

dbExec


Albo poczytaj m.in te? poradnik o bazach danych.
http://gtao.pl/tut-poradn...te-vt102403.htm

Podpis
MultiTheftAuto++ dla MTA 1.5.7 już dostępne.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 14:07


amama5







Wiek: 39
Na forum: 4745 dni
Posty: 57
Nick w MP: kamiloooswas

Piwa: 2

Respekt: 40,5

Ostrzeżeń: 100%
AteX,
Ehh pr?bowa?em w ten spos?b:
dbExec(handler"CREATE TABLE IF NOT EXISTS `przechowywalnia` (`id` INTEGER, `model` INTEGER, `wlasciciel` INTEGER, `przebieg` FLOAT, `paliwo` FLOAT)")


        dbExec(handler"INSERT INTO przechowywalnia VALUES('"..id.."', '"..model.."', '"..wlasciciel.."', '"..przebieg.."', '"..paliwo.."')")


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 14:09


AteX







Wiek: 26
Na forum: 4015 dni
Posty: 927
Nick w MP: #AteX

Piwa: 8360

Respekt: 775,3
Respekt: 775,3Respekt: 775,3

Nie jest ?le, brakuje ci jeszcze tylko zmiennych przebieg i paliwo i zapis b?dzie gotowy, oraz skrypt musi utworzy? now? baz? danych z tymi kolumnami.

Podpis
MultiTheftAuto++ dla MTA 1.5.7 już dostępne.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 14:10


amama5







Wiek: 39
Na forum: 4745 dni
Posty: 57
Nick w MP: kamiloooswas

Piwa: 2

Respekt: 40,5

Ostrzeżeń: 100%
AteX,
Usuno?em baze danych i zrestartowa?em ale niestety b??d by? :( z tym
'"..przebieg.."''"..paliwo.."')")


PS. Nie wiem co to s? te zmienne xD

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 14:12


AteX







Wiek: 26
Na forum: 4015 dni
Posty: 927
Nick w MP: #AteX

Piwa: 8360

Respekt: 775,3
Respekt: 775,3Respekt: 775,3

Zapewne dlatego ?e te zmienne s? puste, nic pod nie nie podpisujesz.

Tutaj masz poradnik o m.in zmiennych:
http://gtao.pl/poczatki-lua-vt89971.htm

Musisz pod zmienn? nada?

Więcej informacji znajdziesz w Wikipedii MTA:

getElementData


Podpis
MultiTheftAuto++ dla MTA 1.5.7 już dostępne.
Ostatnio zmieniony przez AteX 2016-04-07, 14:13, w całości zmieniany 2 razy  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-04-07, 14:13


amama5







Wiek: 39
Na forum: 4745 dni
Posty: 57
Nick w MP: kamiloooswas

Piwa: 2

Respekt: 40,5

Ostrzeżeń: 100%
AteX,
Nie wiem co dalej :( Nie rozumiem ;c

[ Dodano: 2016-04-07, 14:43 ]
AteX,
A nie m?g? by? mi kodu wys?a?? :( bo przeczyta?em i nadal nie wiem o co chodzi :(

Postaw piwo autorowi tego posta
 

 
Tagi: przechowalnia
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