Postado Junho 25, 2012 13 anos Eu tento usar esse script no meu servidor e da erro , ele funcionaria da seguinte forma 30 mim deslogado enche-se 30 mim de stamina (não adianta o stamina do meu config.lua está bugado tem que ser por aqui) Script: function onThink(interval, lastExecution, thinkInterval) local stamina = db.getResult("SELECT `id`, `stamina` FROM `players` WHERE `group_id` <= 2;") local stamina_hour = 1800000 -- 0.5 hras de stamina, o tempo é calculado em milesegundos. Exemplo: 1 min = 600000 mileseg. repeat if stamina:getID() == -1 then break end id, stamina_now = stamina:getDataInt("id"), stamina:getDataInt("stamina") if stamina_now < 75600000 then stamina_verifica = 75600000 - stamina_now if stamina_verifica < stamina_hour then db.executeQuery("UPDATE `players` SET `stamina` = '"..stamina_now+stamina_verifica.."' WHERE `id` == '"..id.."';") else db.executeQuery("UPDATE `players` SET `stamina` = '"..stamina_now+stamina_hour.."' WHERE `id` == '"..id.."';") end end until stamina:next() == false return true end Erro: [21:25:11.450] mysql_real_query<>: UPDATE 'players' SET 'stamina' = '16772485' WHERE 'id' == '9'; - MYSQL ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '== '9'' at line 1 <1064>
Postado Junho 25, 2012 13 anos Mude isso: db.executeQuery("UPDATE `players` SET `stamina` = '"..stamina_now+stamina_hour.."' WHERE `id` == '"..id.."';") Para isso: db.executeQuery("UPDATE `players` SET `stamina` = "..stamina_now+stamina_hour.." WHERE `id` = "..id..";") Editado Junho 25, 2012 13 anos por Kimoszin (veja o histórico de edições)
Postado Junho 25, 2012 13 anos Autor Tava funcionado e tal,mas qnd eu loguei um char e o script tava on ao msm tempo deu um erro q n paro de da no meu distro,tipo só funcionou com todos off qnd tinha um logado aconteceu isso: mysql_realquert<>: UPDATE 'players' SET 'stamina'75600000' WHERE 'id' == '9'; - MSQL ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=='9'' at line 1<1064>
Postado Junho 25, 2012 13 anos function onThink(interval, lastExecution, thinkInterval) local stamina_hour = 1800000 -- 0.5 hras de stamina, o tempo é calculado em milesegundos. Exemplo: 1 min = 600000 mileseg. local query = db.getResult("SELECT `id`, `stamina` FROM `players` WHERE `id` > 6 AND `group_id` < 3;") local stamina_verifica = 0 if (query:getID() ~= -1) then while true do id, stamina_now = query:getDataInt("id"), query:getDataInt("stamina") if stamina_now < 75600000 then local stamina_verifica = 75600000 - stamina_now local x = stamina_verifica < stamina_hour and stamina_now+stamina_verifica or stamina_now+stamina_hour db.executeQuery("UPDATE `players` SET `stamina` = "..x.." WHERE `id` == '"..id.."';") end if not(query:next()) then break end end query:free() end return true end [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Postado Junho 25, 2012 13 anos Autor function onThink(interval, lastExecution, thinkInterval) local stamina_hour = 1800000 -- 0.5 hras de stamina, o tempo é calculado em milesegundos. Exemplo: 1 min = 600000 mileseg. local query = db.getResult("SELECT `id`, `stamina` FROM `players` WHERE `id` > 6 AND `group_id` < 3;") local stamina_verifica = 0 if (query:getID() ~= -1) then while true do id, stamina_now = query:getDataInt("id"), query:getDataInt("stamina") if stamina_now < 75600000 then local stamina_verifica = 75600000 - stamina_now local x = stamina_verifica < stamina_hour and stamina_now+stamina_verifica or stamina_now+stamina_hour db.executeQuery("UPDATE `players` SET `stamina` = "..x.." WHERE `id` == '"..id.."';") end if not(query:next()) then break end end query:free() end return true end mysql_real_query<>: UPDATE 'players' SET 'stamina' = 75600000 WHERE that corresponds to your MySQL server version for the right syntax to use near '=='9'' at line 1 <1064>
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.