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

Wysłany: 2015-03-08, 11:25


piotr172







Wiek: 26
Na forum: 4417 dni
Posty: 130

Piwa: 2329

Respekt: 105,3
Respekt: 105,3

Witam. Mam kod na zapis aut w SQL, ale chcia?bym aby zapisywa?o te? zepsute cz??ci auta (np. maska itp). Pr?bowa?em ju? to robi? ale si? nie uda?o. Bardzo prosi?bym o dodanie do kodu odpowiedniej funkcji. Z g?ry dzi?kuje.

Kod:


test_db dbConnect"sqlite""auta.db" )
function save()
    dbQuerytest_db,"DROP TABLE auta")
    dbQuerytest_db,"CREATE TABLE auta (VehicleID INTEGER,ID INTEGER, px REAL, py REAL, pz REAL, rx REAL, ry REAL, rz REAL, Color1 INTEGER, Color2 INTEGER, Health REAL, upgrades TEXT, paintjob INTEGER, PALIWO TEXT, PRZEBIEG TEXT, Zarejstrowany TEXT, NaKogo1 TEXT, NaKogo2 TEXT)")
    for ivehicle in pairs (getElementsByType("vehicle")) do
    if getElementData(vehicle,"Pojazd_zapis") == true then
        local pxpypz getElementPosition(vehicle)
        local rxryrz getElementRotation(vehicle)
        local color1color2color3color4 getVehicleColor(vehicle)
        local model getElementModel(vehicle)
        local health getElementHealth (vehicle)
        local tableUpgrades getVehicleUpgrades(vehicle)
        local upgrades table.concat(tableUpgrades",")
        local paintjob getVehiclePaintjob(vehicle)
        local id1 tostring(getElementData(vehicle,"id"))
        local paliwo tostring(getElementData(vehicle,"fuel"))
        local przebieg tostring(getElementData(vehicle,"przebieg"))
        local zarejstrowany tostring(getElementData(vehicle,"Zarejstrowany"))
        local x getElementData(vehicle,"Zarejstrowany-Na")
        local x2 getElementData(vehicle,"Zarejstrowany-Na2")
        if x then
        na1 getElementData(vehicle,"Zarejstrowany-Na")
        else
        na1 ""
        end
        if x2 then
        na2 getElementData(vehicle,"Zarejstrowany-Na2")
        else
        na2 ""
        end
        dbQuerytest_db"INSERT INTO auta VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)",model,id1,px,py,pz,rx,ry,rz,color1,color2,health,upgrades,paintjob,paliwo,przebieg,zarejstrowany,na1,na2 )
    end
    end
    end
addEventHandler("onResourceStop"getResourceRootElement(getThisResource()), save)
addCommandHandler("zapis",save)

function zapisujemy()
    local pojazdy getElementsByType("vehicle"root)
    for i,v in ipairs(pojazdy) do
        save(v)
    end
end
setTimer(zapisujemy3601)
addEventHandler("onResourceStop"rootzapisujemy)

-- Zapisujemy pojazd
addEventHandler("onVehicleExit"root, function(playerseatjacked)
    if seat==0 then
        save(player)
    end
end)


function Database()
    dbQuerytest_db,"CREATE TABLE auta (VehicleID INTEGER,ID INTEGER, px REAL, py REAL, pz REAL, rx REAL, ry REAL, rz REAL, Color1 INTEGER, Color2 INTEGER, Health REAL, upgrades TEXT, paintjob INTEGER, PALIWO TEXT, PRZEBIEG TEXT, Zarejstrowany TEXT, NaKogo1 TEXT, NaKogo2 TEXT)")
    

    
    qh dbQuery(test_db,"SELECT * FROM auta")
    local resultnum_affected_rowserrmsg dbPoll qh, -)
    for iv in pairs (result) do
        local vehicle createVehiclev.VehicleIDv.pxv.pyv.pzv.rxv.ryv.rz )
        setElementHealth vehiclev.Health )
        setElementFrozen vehicletrue )
        setVehicleEngineState vehiclefalse )
        setVehicleColor vehiclev.Color1v.Color20)
        if ( v.paintjob then
            setVehiclePaintjobvehiclev.paintjob )
        end
        local upgrades splitv.upgrades44 )
        for indexupgrade in pairs (upgrades) do
            addVehicleUpgradevehicleupgrade )
        end
        setElementData(vehicle,"przebieg",v.PRZEBIEG)
        setElementData(vehicle,"fuel",v.PALIWO)
        if v.Zarejstrowany == "brak" then
        else
        setElementData(vehicle,"Zarejstrowany",v.Zarejstrowany)
        setElementData(vehicle,"Zarejstrowany-Na",v.NaKogo1)
        setElementData(vehicle,"Zarejstrowany-Na2",v.NaKogo2)
        setElementData(vehicle,"Pojazd_zapis",true)
        setElementData(vehicle,"id",v.ID)
        end
            
        
    end
    
end
addEventHandler("onResourceStart"getResourceRootElement(getThisResource()), Database)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-03-08, 23:07


Piorun







Wiek: 32
Na forum: 6712 dni
Posty: 1837
Nick w MP: Piorun

Piwa: 516

Respekt: 480,7
Respekt: 480,7

"piotr172" napisał/a:

Bardzo prosi?bym o dodanie do kodu odpowiedniej funkcji. Z g?ry dzi?kuje.


Chyba kpisz :x ...

Co do zapisu zepsutych cz??ci to ja to widz? tak - ka?da cz??? to osobna kolumna. W MTA jest fukcja:


Więcej informacji znajdziesz w Wikipedii MTA:

GetVehicleDoorState


Ona zwraca nam int'a w zale?no?ci od tego jak bardzo zniszczona jest dana cz???. Skoro zrobi?e? zapis do bazy pojazd?w to bez problemu si? z tym uporasz.

Podpis
Możesz mnie znaleźć na: Facebook
Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-03-08, 23:13


MeeShuffle

Programista/Grafik






Wiek: 32
Na forum: 4394 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

Respekt: 535,3
Respekt: 535,3

damage = {}
for i=0,do table.insert(damagegetVehiclePanelState(vi)) end
        local uszkodzenia table.concat damage"," )


Podpis

https://shufflecode.pl
Static Codes and Graphics - Join our discord!
Postaw piwo autorowi tego posta
 

 
Tagi: zniszczone :: czesci :: auta. :: jak :: dodac?
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Zniszczone czesci auta. Jak dodac? 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