Ajuda Com Db.query

Shuzzyp
em Scripts

Shuzzyp

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 13/08/12Posts: 40

Olá :)

Preciso de um "db.query" que atualize um valor na database para "x + valor ja existente na database".

Ex: Na database o valor é 35. O novo valor que o player conseguiu é 7. O valor na database fica 42.

O que precisa ser editado é o valor do "pontos", na parte de players.

Ps: não preciso de um script inteiro, apenas a linha do db.query. A variavel da quantidade de pontos a ser adicionada é " .. (points) .. ".

Obrigado desde já.

LuckOake

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 23/07/12Posts: 1104Gênero: MasculinoChar no Tibia: Luck Oake

Tó:

 

db.executeQuery("UPDATE `players` SET `pontos` = `pontos` + '"..points.."' WHERE `id` = '"..getPlayerGUID(cid).."';")

Skymagnum

Hamburguer
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 02/08/12Posts: 1025Char no Tibia: Maurolkit

function getPontos(cid)

local points = db.getResult("SELECT `pontos` FROM `players` WHERE `id` = " .. getPlayerGUID(cid) .. ";")


return getDataInt(points)
end

function updatePoints(cid, value)


return db.executeQuery("UPDATE `players` SET `pontos` = " .. getPontos(cid) + value .. " WHERE `id` = " .. getPlayerGUID(cid) .. ";")
end

 

acho que o valor inicial vai ser -1 então em

/data/creaturescripts/scripts/login.lua coloque isto antes do último return true:

if getPontos(cid) < 0 then
updatePoints(cid, 1)
end

jeoz.png

Shuzzyp

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 13/08/12Posts: 40

@LuckOake Obrigado, funcionou! :)

@Skymagnum Desculpe, nao cheguei porque parece nao ser o que eu quero e a resposta do LuckOake é bem mais simples, e tudo que eu preciso é aquela linha, mas obrigado! :)