Postado Agosto 13, 2016 9 anos A explicação é meio simples, seria um comando que listaria os 10 maiores jogadores com uma certa storage Editado Agosto 13, 2016 9 anos por Farathor (veja o histórico de edições) [progress=green]50[/progress]
Postado Agosto 15, 2016 9 anos function getRankStorage(value, max, RankName) local str = "--[".. (RankName == nil and "RANK STORAGE" or ""..RankName.."") .."]--\n\n" local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;") if (query:getID() ~= -1) then k = 1 repeat str = str .. "\n " .. k .. ". "..getPlayerNameByGUID(query:getDataString("player_id")).." - [" .. query:getDataInt("value") .. "]" k = k + 1 until k > max or not query:next() end return str end function onSay(cid, words, param) local storage = 15000 -- valor da storage local max = 10 -- quantos jogadores irao aparecer no rank local name = "Rank Of Quest" -- nome que vai aparecer no rank return doShowTextDialog(cid, 2529, getRankStorage(storage, max, name)) end Editado Agosto 22, 2016 9 anos por Vodkart (veja o histórico de edições) [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Postado Agosto 27, 2016 9 anos Autor Deu erro no distro [27/8/2016 15:29:7] mysql_real_query(): SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 268440806 ORDER BY cast(value as INTEGER) DESC; - 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 'INTEGER) DESC' at line 1 (1064 [progress=green]50[/progress]
Postado Agosto 27, 2016 9 anos troca 'INTEGER' por 'SIGNED' function getRankStorage(value, max, RankName) local str = "--[".. (RankName == nil and "RANK STORAGE" or ""..RankName.."") .."]--\n\n" local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as SIGNED) DESC;") if (query:getID() ~= -1) then k = 1 repeat str = str .. "\n " .. k .. ". "..getPlayerNameByGUID(query:getDataString("player_id")).." - [" .. query:getDataInt("value") .. "]" k = k + 1 until k > max or not query:next() end return str end function onSay(cid, words, param) local storage = 15000 -- valor da storage local max = 10 -- quantos jogadores irao aparecer no rank local name = "Rank Of Quest" -- nome que vai aparecer no rank return doShowTextDialog(cid, 2529, getRankStorage(storage, max, name)) end [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
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.