Eu sou iniciante em SQLite.. Faz umas semanas que tou praticando, fiz uma savesystem com sqlite.. mais quando eu vou iniciar o script ele dar erro em muitas linhas.. na print não dar pra mostrar.. mais dar pra saber mais ou menos como fica.. eu também fiz outro mod com sqlite mais também tá com erro do mesmo tipo, mais o problema está no dbPoll é dbQuery porque esses não sei usar muito bem, se alguém pode ajudar ficarei muito agradecido
function ResourceStart()
local db = dbConnect("sqlite", "Contas.db")
dbExec(db, "CREATE TABLE IF NOT EXISTS Dados (Login, Money, Skin, Vida, Colete, Tag, Posicao, Interior, Dimensao, Procurado, Armas)")
if db then
print("DataBase: SaveSystem Conectado!")
for i, v in ipairs(getElementsByType("player")) do
local acc = getPlayerAccount(v)
if not isGuestAccount(acc) then
CarregarDados(v)
end
end
else
print("DataBase: SaveSystem Falhou!")
end
end
addEventHandler("onResourceStart", resourceRoot, ResourceStart)
Armas = {}
function SalvarDados(source)
local conta = getAccountName(getPlayerAccount(source))
local money = getPlayerMoney(source)
local roupa = getElementModel(source)
local vida = getElementHealth(source)
local colete = getPedArmor(source)
local r,g,b = getPlayerNametagColor(source)
local x,y,z = getElementPosition(source)
local dimensao = getElementDimension(source)
local interior = getElementInterior(source)
local procurado = getPlayerWantedLevel(source)
local tableTag = toJSON(r,g,b)
local tablePos = toJSON(x,y,z)
for i = 0,12 do
local arma = getPedWeapon(source, i)
local muni = getPedTotalAmmo(source, i)
if arma > 0 then
table.insert(Armas,{arma,muni})
end
end
local tableArmas = toJSON(Armas)
local result = dbPoll(dbQuery(db, "SELECT * FROM Dados WHERE Login = ?", conta), -1)
if result ~= 0 then
dbExec(db, "UPDATE Dados SET Money = ?, Dinheiro = ?, Skin = ?, Vida = ?, Colete = ?, Tag = ?, Posicao = ?, Interior = ?, Dimensao = ?, Procurado = ?, Armas = ?, WHERE Login = ?", money, roupa, vida, colete, tableTag, tablePos, dimensao, interior, procurado, tableArmas, conta)
else
dbExec(db, "INSERT INTO Dados VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", money, roupa, vida, colete, tableTag, tablePos, dimensao, interior, procurado, tableArmas)
end
end
function CarregarDados(source)
local accName = getAccountName(getPlayerAccount(source))
local result = dbPoll(dbQuery(db, "SELECT * FROM Dados WHERE Login = ?",accName),-1)
if #result ~= 0 then
local Money = result[1]["Money"]
local Skin = result[1]["Skin"]
local Vida = result[1]["Vida"]
local Colete = result[1]["Colete"]
local Tag = fromJSON(result[1]["Tag"])
local r,g,b = Tag[1],Tag[2],Tag[3]
local Pos = fromJSON(result[1]["Posicao"])
local x,y,z = Pos[1],Pos[2],Pos[3]
local interior = result[1]["Interior"]
local dimensao = result[1]["Dimensao"]
local procurado = result[1]["Procurado"]
local weapons = fromJSON(result[1]["Armas"])
spawnPlayer(source, x, y, z, 0, Skin, interior, dimensao, nil)
setPlayerMoney(source, Money)
setElementHealth(source, Vida)
setPedArmor(source, Colete)
setPlayerNametagColor(source, r,g,b)
setPlayerWantedLevel(source, procurado)
fadeCamera(source, true, 5)
setCameraTarget(source, source)
if #weapons ~= 0 then
for i,v in ipairs(weapons) do
giveWeapon(source, v[1], v[2])
end
end
else
ComecarDados(source)
SalvarDados(source)
end
end
function ComecarDados(source)
local Dinheiro = 5000
local x1, y1, z1 = 1177.95886, -1323.29858, 14.09641
spawnPlayer(source, x1, y1, z1, 0)
setPlayerMoney(source, Dinheiro)
fadeCamera(source)
setCameraTarget(source, source)
end
function MorrerDados(source)
local RMoney = 200
local x2, y2, z2 = 1480.93555, -1768.83215, 18.79576
setTimer(spawnPlayer, 3000, 1, source, x2, y2, z2, 0)
setCameraTarget(source, source)
takeAllWeapons(source)
takePlayerMoney(source, RMoney)
end
function EntrarDados(_, acc)
local player = getAccountPlayer(acc)
outputChatBox("#FF0000SaveSystem #FFFFFFFeito Por UserMs!", acc, 255, 255, 255, true)
CarregarDados(player)
end
addEventHandler("onPlayerLogin", root, EntrarDados)
function SairDados()
local acc = getPlayerAccount(source)
if not isGuestAccount(acc) then
SalvarDados(source)
end
end
addEventHandler("onPlayerQuit", root, SairDados)
function ResourceStop()
for i,v in ipairs(getElementsByType("player")) do
local acc = getPlayerAccount(v)
if not isGuestAccount(acc) then
SalvarDados(v)
end
end
end
addEventHandler("onResourceStop", resourceRoot, ResourceStop)
b