DXtibiaXD 1 Postado Junho 21, 2010 Share Postado Junho 21, 2010 galera alguem me passa 1 rank com reset fazeno favor? serio mermo tentei fazer n consegui Link para o comentário Compartilhar em outros sites More sharing options...
0 matheus1000 11 Postado Junho 21, 2010 Share Postado Junho 21, 2010 va em data/talkactions/script e crie uma pasta chamada rank.lua e bote isso: function getPlayerNameByGUID2(n) local c = db.getResult("SELECT `name` FROM `players` WHERE `id` = "..n..";") if c:getID() == -1 then return "SQL_ERROR["..n.."]" end return c:getDataString("name") end function onSay(cid, words, param) local max = 10 local letters_to_next = 20 local skills = { ['fist'] = 0, ['club'] = 1, ['sword'] = 2, ['axe'] = 3, ['distance'] = 4, ['shielding'] = 5, ['fishing'] = 6, ['dist'] = 4, ['shield'] = 5, ['fish'] = 6, } local name_now local name = "Highscore for level\n" local rkn = 0 local no_break = 0 param = string.lower(param) dofile('config.lua') if param == "" or param == "level" and ( param ~= "magic" and param == "ml") and skills[param] == nil then name = name.."\n" name = name.."Rank Level - Nome do Jogador\n" local v = db.getResult("SELECT `name`, `level`, `experience` FROM `players` WHERE `group_id` <= 2 ORDER BY `experience` DESC LIMIT 0,"..(max)..";") repeat no_break = no_break +1 if v:getID() == -1 then break end rkn = rkn+1 name_now, l = v:getDataString("name"), string.len(v:getDataString("name")) space = "" for i=1, letters_to_next-l do space = space.." " end name = name..rkn..". "..v:getDataInt("level") .." - "..name_now..space.." ".."\n" if no_break >= 20 then break end until v:next() == false elseif param == "magic" or param == "ml" then name = name.."\n" name = name.."Rank Magic - Nome do Jogador\n" local v = db.getResult("SELECT `name`, `level`, `maglevel` FROM `players` WHERE `group_id` <= 2 ORDER BY `maglevel` DESC LIMIT 0,"..(max)..";") repeat if v:getID() == -1 then break end rkn = rkn+1 name_now, l = v:getDataString("name"), string.len(v:getDataString("name")) space = "" for i=1, letters_to_next-l do space = space.." " end name = name..rkn..". "..v:getDataInt("maglevel").." - "..name_now..space.." ".." ".."".."\n" until v:next() == false elseif param == "reset" or param == "resets" then name = name.."\n" name = name.."Rank Reset - Nome do Jogador\n" local v = db.getResultlocal v = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 1020 ORDER BY cast(value as INTEGER) DESC;) local kk = 0 repeat if kk == max or v:getID() == -1 then break end kk = kk+1 name_now, l = getPlayerNameByGUID2(v:getDataInt("player_id")), string.len(getPlayerNameByGUID2(v:getDataInt("play er_id"))) space = "" for i=1, letters_to_next-l do space = space.." " end if name_now == nil then name_now = 'sql error['..v:getDataInt("player_id")..']' end name = name..kk..". "..v:getDataInt("value").." - "..name_now..space.." \n" until v:next() == false elseif skills[param] ~= nil then name = name.."\n" name = name.."Rank "..param.." fighting - Nome do Jogador\n" local v = db.getResult("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = "..skills[param].." ORDER BY `value` DESC;") local kk = 0 repeat if kk == max or v:getID() == -1 then break end kk = kk+1 name_now, l = getPlayerNameByGUID2(v:getDataInt("player_id")), string.len(getPlayerNameByGUID2(v:getDataInt("play er_id"))) space = "" for i=1, letters_to_next-l do space = space.." " end if name_now == nil then name_now = 'sql error['..v:getDataInt("player_id")..']' end name = name..kk..". "..v:getDataInt("value").." - "..name_now..space.." \n" until v:next() == false end if name ~= "Highscore\n" then doPlayerPopupFYI(cid, name) end return TRUE end depois data/talkactions/talkactions.xml e bote isso: <talkaction words="!rank" script="rank.lua"/> Link para o comentário Compartilhar em outros sites More sharing options...
0 DXtibiaXD 1 Postado Junho 21, 2010 Autor Share Postado Junho 21, 2010 (editado) vo testa digo se deu em 1 menuto calma aew n deu [Error - LuaScriptInterface::loadFile] data/talkactions/scripts/rest ranks.lua:72: unfinished string near '"SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 1020 ORDER BY cast(value as INTEGER) DESC;)' [21/06/2010 12:03:59] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/rest ranks.lua) [21/06/2010 12:03:59] data/talkactions/scripts/rest ranks.lua:72: unfinished string near '"SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 1020 ORDER BY cast(value as INTEGER) DESC;)' [21/06/2010 12:03:59] Reloaded talk actions. Editado Junho 21, 2010 por AmemJesus Link para o comentário Compartilhar em outros sites More sharing options...
0 matheus1000 11 Postado Junho 21, 2010 Share Postado Junho 21, 2010 acho que você boto no lugar errado, tenta a tag assim: <talkaction words="!rank" script="rest/rank.lua"/> Link para o comentário Compartilhar em outros sites More sharing options...
0 DXtibiaXD 1 Postado Junho 21, 2010 Autor Share Postado Junho 21, 2010 (editado) vc tenta oks [21/06/2010 12:20:13] [Error - LuaScriptInterface::loadFile] data/talkactions/scripts/rank.lua:72: unfinished string near '"SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 1020 ORDER BY cast(value as INTEGER) DESC;)' [21/06/2010 12:20:13] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/rank.lua) [21/06/2010 12:20:13] data/talkactions/scripts/rank.lua:72: unfinished string near '"SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 1020 ORDER BY cast(value as INTEGER) DESC;)' [21/06/2010 12:20:13] [Error - LuaScriptInterface::loadFile] cannot open data/talkactions/scripts/rest/rank.lua: No such file or directory [21/06/2010 12:20:13] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/rest/rank.lua) [21/06/2010 12:20:13] cannot open data/talkactions/scripts/rest/rank.lua: No such file or directory Editado Junho 21, 2010 por AmemJesus Link para o comentário Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Junho 21, 2010 Share Postado Junho 21, 2010 (editado) @UP qual a versao do seu servidor? ------------------------------- agr não está achando o diretorio(arquivo)... such file or directory coloca tudo certinhu ai Editado Junho 21, 2010 por Vodkart Link para o comentário Compartilhar em outros sites More sharing options...
0 MatheusGlad 424 Postado Junho 21, 2010 Share Postado Junho 21, 2010 Script sem erro: function getPlayerNameByGUID2(n) local c = db.getResult("SELECT `name` FROM `players` WHERE `id` = "..n..";") if c:getID() == -1 then return "SQL_ERROR["..n.."]" end return c:getDataString("name") end function onSay(cid, words, param) local max = 10 local letters_to_next = 20 local skills = { ['fist'] = 0, ['club'] = 1, ['sword'] = 2, ['axe'] = 3, ['distance'] = 4, ['shielding'] = 5, ['fishing'] = 6, ['dist'] = 4, ['shield'] = 5, ['fish'] = 6, } local name_now local name = "Highscore for level\n" local rkn = 0 local no_break = 0 param = string.lower(param) dofile('config.lua') if param == "" or param == "level" and ( param ~= "magic" and param == "ml") and skills[param] == nil then name = name.."\n" name = name.."Rank Level - Nome do Jogador\n" local v = db.getResult("SELECT `name`, `level`, `experience` FROM `players` WHERE `group_id` <= 2 ORDER BY `experience` DESC LIMIT 0,"..(max)..";") repeat no_break = no_break +1 if v:getID() == -1 then break end rkn = rkn+1 name_now, l = v:getDataString("name"), string.len(v:getDataString("name")) space = "" for i=1, letters_to_next-l do space = space.." " end name = name..rkn..". "..v:getDataInt("level") .." - "..name_now..space.." ".."\n" if no_break >= 20 then break end until v:next() == false elseif param == "magic" or param == "ml" then name = name.."\n" name = name.."Rank Magic - Nome do Jogador\n" local v = db.getResult("SELECT `name`, `level`, `maglevel` FROM `players` WHERE `group_id` <= 2 ORDER BY `maglevel` DESC LIMIT 0,"..(max)..";") repeat if v:getID() == -1 then break end rkn = rkn+1 name_now, l = v:getDataString("name"), string.len(v:getDataString("name")) space = "" for i=1, letters_to_next-l do space = space.." " end name = name..rkn..". "..v:getDataInt("maglevel").." - "..name_now..space.." ".." ".."".."\n" until v:next() == false elseif param == "reset" or param == "resets" then name = name.."\n" name = name.."Rank Reset - Nome do Jogador\n" local v = db.getResultlocal v = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 1020 ORDER BY cast(value as INTEGER) DESC;") local kk = 0 repeat if kk == max or v:getID() == -1 then break end kk = kk+1 name_now, l = getPlayerNameByGUID2(v:getDataInt("player_id")), string.len(getPlayerNameByGUID2(v:getDataInt("play er_id"))) space = "" for i=1, letters_to_next-l do space = space.." " end if name_now == nil then name_now = 'sql error['..v:getDataInt("player_id")..']' end name = name..kk..". "..v:getDataInt("value").." - "..name_now..space.." \n" until v:next() == false elseif skills[param] ~= nil then name = name.."\n" name = name.."Rank "..param.." fighting - Nome do Jogador\n" local v = db.getResult("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = "..skills[param].." ORDER BY `value` DESC;") local kk = 0 repeat if kk == max or v:getID() == -1 then break end kk = kk+1 name_now, l = getPlayerNameByGUID2(v:getDataInt("player_id")), string.len(getPlayerNameByGUID2(v:getDataInt("play er_id"))) space = "" for i=1, letters_to_next-l do space = space.." " end if name_now == nil then name_now = 'sql error['..v:getDataInt("player_id")..']' end name = name..kk..". "..v:getDataInt("value").." - "..name_now..space.." \n" until v:next() == false end if name ~= "Highscore\n" then doPlayerPopupFYI(cid, name) end return TRUE end Link para o comentário Compartilhar em outros sites More sharing options...
0 DXtibiaXD 1 Postado Junho 21, 2010 Autor Share Postado Junho 21, 2010 (editado) deu certo agora aprendi vlw duvida sanada Editado Junho 21, 2010 por AmemJesus Link para o comentário Compartilhar em outros sites More sharing options...
0 admpaktuz 0 Postado Outubro 22, 2010 Share Postado Outubro 22, 2010 MatheusMkalo , tipo eu colokei isso no Ranking , dai eu falo !rank reset so que nao aparece o nome dos player nem os reset oque faço ? Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
DXtibiaXD 1
galera alguem me passa 1 rank com reset fazeno favor? serio mermo tentei fazer n consegui
Link para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados