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

Wysłany: 2016-03-24, 19:35


Daisu

Programista Lua






Wiek: 26
Na forum: 4444 dni
Posty: 193
SPONSOR
Nick w MP: Daisu

Piwa: 24

Respekt: 90

Witam tworze system pojazd?w oparty na MYSQL i jak zrobi? aby po uruchomieniu skryptu stworzy?o wszystkie auta z bazy a nie tylko jedno. Mam taki kod:


function respawnAuto()
local idAuta getElementData(source"Auto:ID")
local theModel getElementModel(source)
local fuelAuta getElementData(source"fuel")
local przebiegAuta getElementData(source"przebieg")
execute("UPDATE pojazdy SET przebieg=?,paliwo=? WHERE id",przebiegAuta,fuelAuta,idAuta)
local accData singleQuery("SELECT * FROM pojazdy WHERE id=?",idAuta)

if (accDatathen
if accData.modelid == theModel then
local createcar createVehicle accData.modelidaccData.xaccData.yaccData.z00accData.rotationaccData.tablica )
local colorauta setVehicleColor(createcaraccData.r1accData.g1accData.b1accData.r2accData.g2accData.b2accData.r3accData.g3accData.b3accData.r4accData.g4accData.b4)
local colorswiatel setVehicleHeadLightColor(createcaraccData.lraccData.lgaccData.lb)
local rejka setElementData(createcar,"Auto:Rejka",accData.Rejka)
local owner1 setElementData(createcar,"Auto:Owner1",accData.Owner1)
local owner2 setElementData(createcar,"Auto:Owner2",accData.Owner2)
local ID setElementData(createcar,"Auto:ID",accData.id)
local paliwo setElementData(createcar,"fuel",accData.paliwo)
local przebieg setElementData(createcar,"przebieg",accData.przebieg)
else
outputDebugString("Pojazd o ID " .. idAuta .. " i modelu " .. theModel .. " jest nie zgodny z autem z bazy o danym ID.")
end
else
end
end
addEventHandler("onVehicleExplode"getRootElement(), respawnAuto)



Wygl?d bazy MYSQL: Obrazek Kliknij Tutaj

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 19:40


_Wicek_

Majstersztyk






Wiek: 25
Na forum: 4260 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1841

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
for _,v in ipairs (accData) do
---reszta kodu


Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 19:45


Daisu

Programista Lua






Wiek: 26
Na forum: 4444 dni
Posty: 193
SPONSOR
Nick w MP: Daisu

Piwa: 24

Respekt: 90

Dzi?ki ale mam 2 pytanie bo ten kod co da?em to on nie ma sensu to mojego pytania. Jak pobra? za pomoc? kodu patrz ni?ej wszystkie auta a nie tylko a danym id ?

local accData singleQuery("SELECT * FROM pojazdy WHERE id=?",id


Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 19:51


_Wicek_

Majstersztyk






Wiek: 25
Na forum: 4260 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1841

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
for i,v in pairs(getElementsByType("vehicle",resourceRoot)) do
        local pojazd_id getElementData(v"id")



I potem dodajesz

local accData singleQuery("SELECT * FROM pojazdy WHERE id=?",id)


Czy co tam masz :)

Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 19:54


Daisu

Programista Lua






Wiek: 26
Na forum: 4444 dni
Posty: 193
SPONSOR
Nick w MP: Daisu

Piwa: 24

Respekt: 90

Tylko ?e mi chodzi o to jak na serwerze nie ma ?adnego auta bo np. by? restart i po w??czeniu skrypty on je wszystkie z bazy pobiera i tworzy.

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 19:57


_Wicek_

Majstersztyk






Wiek: 25
Na forum: 4260 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1841

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
Tylko to starczy

local accData singleQuery("SELECT * FROM pojazdy "


Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 20:12


Daisu

Programista Lua






Wiek: 26
Na forum: 4444 dni
Posty: 193
SPONSOR
Nick w MP: Daisu

Piwa: 24

Respekt: 90


function sysStartSpawn()
local accData singleQuery("SELECT * FROM pojazdy "local createcar createVehicle accData.modelidaccData.xaccData.yaccData.z00accData.rotationaccData.tablica )
local colorauta setVehicleColor(createcaraccData.r1accData.g1accData.b1accData.r2accData.g2accData.b2accData.r3accData.g3accData.b3accData.r4accData.g4accData.b4)
local colorswiatel setVehicleHeadLightColor(createcaraccData.lraccData.lgaccData.lb)
local rejka setElementData(createcar,"Auto:Rejka",accData.Rejka)
local owner1 setElementData(createcar,"Auto:Owner1",accData.Owner1)
local owner2 setElementData(createcar,"Auto:Owner2",accData.Owner2)
local ID setElementData(createcar,"Auto:ID",accData.id)
local paliwo setElementData(createcar,"fuel",accData.paliwo)
local przebieg setElementData(createcar,"przebieg",accData.przebieg)
end
addCommandHandler ("rsr"sysStartSpawn)

Mam taki kod i tak tylko tworzy pierwszy pojazd z bazy a drugiego ju? nie.

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 20:15


_Wicek_

Majstersztyk






Wiek: 25
Na forum: 4260 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1841

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
function sysStartSpawn()
local accData singleQuery("SELECT * FROM pojazdy ")
for _,v in ipairs (accData) do
local createcar createVehicle v.modelidv.xv.yva.z00v.rotationv.tablica )
----- reszta kodu
end
end
addCommandHandler ("rsr"sysStartSpawn)


Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 20:19


Daisu

Programista Lua






Wiek: 26
Na forum: 4444 dni
Posty: 193
SPONSOR
Nick w MP: Daisu

Piwa: 24

Respekt: 90

Mam ten kod i nie tworzy ?adnego.



function sysStartSpawn()
local accData singleQuery("SELECT * FROM pojazdy ")
for _,v in ipairs (accData) do
local createcar createVehicle v.modelidv.xv.yv.z00v.rotationv.tablica )
local colorauta setVehicleColor(createcarv.r1v.g1v.b1v.r2v.g2v.b2v.r3v.g3v.b3v.r4v.g4v.b4)
local colorswiatel setVehicleHeadLightColor(createcarv.lrv.lgv.lb)
local rejka setElementData(createcar,"Auto:Rejka",v.Rejka)
local owner1 setElementData(createcar,"Auto:Owner1",v.Owner1)
local owner2 setElementData(createcar,"Auto:Owner2",v.Owner2)
local ID setElementData(createcar,"Auto:ID",v.id)
local paliwo setElementData(createcar,"fuel",v.paliwo)
local przebieg setElementData(createcar,"przebieg",v.przebieg)
end
end
addCommandHandler ("rsr"sysStartSpawn)



Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-24, 22:55


Jurandovsky

Kurdebele






Wiek: 17
Na forum: 4838 dni
Posty: 915

Piwa: 2697

Respekt: 955,3
Respekt: 955,3Respekt: 955,3

Co to za funkcja, singleQuery? Poka? jej source.

Podpis
Jedyny kontakt ze mną to PW forum

Kod:


local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-03-25, 00:56


Daisu

Programista Lua






Wiek: 26
Na forum: 4444 dni
Posty: 193
SPONSOR
Nick w MP: Daisu

Piwa: 24

Respekt: 90

local db_host "*********" 
local db_username "root" 
local db_password "**************" 
local db_table "systemaut"
local db_port "3306"
local connection false

function connect()
    connection dbConnect("mysql","dbname="..db_table..";host="..db_host..";port="..db_port,db_username,db_password)
    if (connectionthen
        outputConsole("Po??czono z baz? danych.")
        return true
    else
        outputConsole("B??d podczas ??czenia z baz? danych. ERROR CarSystemQ1. Ponowna pr?ba po??czenie nast?pi za 5 sekund...")
        setTimer(connect,5000,1)
    end
end
addEventHandler("onResourceStart",resourceRoot,connect)


function singleQuery(str,...)
    if (connectionthen
        local query dbQuery(connection,str,...)
        local result dbPoll(query,-1)
        if (type(result == "table")) then
            return result[1]
        else
            return result
        end
    else
        return false
    end
end

function execute(str,...)
    if (connectionthen
        local query dbExec(connection,str,...)
        return query
    else
        return false
    end
end


[ Dodano: 2016-03-25, 20:38 ]
@Ref

[ Dodano: 2016-03-27, 23:09 ]
Pomo?e kto? ?

Podpis
Postaw piwo autorowi tego posta
 

 
Tagi: respawn :: pojazdów.
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