DaniloUBC 0 Postado Janeiro 24, 2009 Share Postado Janeiro 24, 2009 Quero Adicionar o Comando que aparece os Highscores no Jogo.... para 8.4 ! Valeuu :smile_positivo: Link para o comentário Compartilhar em outros sites More sharing options...
BillyBola 1 Postado Janeiro 27, 2009 Share Postado Janeiro 27, 2009 Amigo eu achei, mas nao sei se é pra 8.4, mas deve ser: http://www.xtibia.com/forum/Comando-Highscores-t103432.html Link para o comentário Compartilhar em outros sites More sharing options...
gnomow157 0 Postado Fevereiro 3, 2009 Share Postado Fevereiro 3, 2009 Se seu server eh tfs funciona. em talkactions adicione: <talkaction words="!ranks" script="highscores.lua"/> Em talkactions\scripts copie algum arquivo e renomeie para hightscores.lua, abra, apague tudo e cole isso: function onSay(cid, words, param)dofile("./config.lua") local players = 20 -- The amount of players that is shown in the list local maxgroupid = 1 -- Players in groups above this is not shown in the list if sqlType == "mysql" then env = assert(luasql.mysql()) con = assert(env:connect(mysqlDatabase, mysqlUser, mysqlPass, mysqlHost, mysqlPort)) else -- sqlite env = assert(luasql.sqlite3()) con = assert(env:connect(sqliteDatabase)) end local str = "" if param == "level" or param == "exp" or param == "lvl" or param == "" then cur = assert(con:execute("SELECT `name`, `level`, `experience` FROM `players` WHERE `group_id` <= "..maxgroupid.." ORDER BY `experience` DESC LIMIT 0,"..players..";")) row = cur:fetch({}, "a") str = "# [Level] - Name - (Experience)\n" local i = 0 while row do str = str.."\n#"..(i+1).." ["..row.level.."] - "..row.name.." - ("..row.experience..")" row = cur:fetch (row, "a") i = i+1 end elseif param == "maglevel" or param == "magic" or param == "ml" then cur = assert(con:execute("SELECT `name`, `maglevel` FROM `players` WHERE `group_id` <= "..maxgroupid.." ORDER BY `maglevel` DESC LIMIT 0,"..players..";")) row = cur:fetch({}, "a") str = "# [Magic Level] - Name\n" local i = 0 while row do str = str.."\n#"..(i+1).." ["..row.maglevel.."] - "..row.name.."" row = cur:fetch (row, "a") i = i+1 end elseif param == "fist" then cur = assert(con:execute("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = 0 ORDER BY `value` DESC;")) row = cur:fetch({}, "a") str = "# [Fist Fighting] - Name\n" local i = 0 while row do if i == players then break end query = assert(con:execute("SELECT `name` FROM `players` WHERE `group_id` <= "..maxgroupid.." AND `id` = "..row.player_id.."")) sql = query:fetch({}, "a") if sql ~= nil then str = str.."\n#"..(i+1).." ["..row.value.."] - "..sql.name.."" i = i+1 end row = cur:fetch (row, "a") end elseif param == "club" then cur = assert(con:execute("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = 1 ORDER BY `value` DESC;")) row = cur:fetch({}, "a") str = "# [Club Fighting] - Name\n" local i = 0 while row do if i == players then break end query = assert(con:execute("SELECT `name` FROM `players` WHERE `group_id` <= "..maxgroupid.." AND `id` = "..row.player_id.."")) sql = query:fetch({}, "a") if sql ~= nil then str = str.."\n#"..(i+1).." ["..row.value.."] - "..sql.name.."" i = i+1 end row = cur:fetch (row, "a") end elseif param == "sword" then cur = assert(con:execute("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = 2 ORDER BY `value` DESC;")) row = cur:fetch({}, "a") str = "# [sword Fighting] - Name\n" local i = 0 while row do if i == players then break end query = assert(con:execute("SELECT `name` FROM `players` WHERE `group_id` <= "..maxgroupid.." AND `id` = "..row.player_id.."")) sql = query:fetch({}, "a") if sql ~= nil then str = str.."\n#"..(i+1).." ["..row.value.."] - "..sql.name.."" i = i+1 end row = cur:fetch (row, "a") end elseif param == "axe" then cur = assert(con:execute("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = 3 ORDER BY `value` DESC;")) row = cur:fetch({}, "a") str = "# [Axe Fighting] - Name\n" local i = 0 while row do if i == players then break end query = assert(con:execute("SELECT `name` FROM `players` WHERE `group_id` <= "..maxgroupid.." AND `id` = "..row.player_id.."")) sql = query:fetch({}, "a") if sql ~= nil then str = str.."\n#"..(i+1).." ["..row.value.."] - "..sql.name.."" i = i+1 end row = cur:fetch (row, "a") end elseif param == "dist" or param == "distance" then cur = assert(con:execute("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = 4 ORDER BY `value` DESC;")) row = cur:fetch({}, "a") str = "# [Distance Fighting] - Name\n" local i = 0 while row do if i == players then break end query = assert(con:execute("SELECT `name` FROM `players` WHERE `group_id` <= "..maxgroupid.." AND `id` = "..row.player_id.."")) sql = query:fetch({}, "a") if sql ~= nil then str = str.."\n#"..(i+1).." ["..row.value.."] - "..sql.name.."" i = i+1 end row = cur:fetch (row, "a") end elseif param == "shield" or param == "shielding" then cur = assert(con:execute("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = 5 ORDER BY `value` DESC;")) row = cur:fetch({}, "a") str = "# [shielding] - Name\n" local i = 0 while row do if i == players then break end query = assert(con:execute("SELECT `name` FROM `players` WHERE `group_id` <= "..maxgroupid.." AND `id` = "..row.player_id.."")) sql = query:fetch({}, "a") if sql ~= nil then str = str.."\n#"..(i+1).." ["..row.value.."] - "..sql.name.."" i = i+1 end row = cur:fetch (row, "a") end elseif param == "fish" or param == "fishing" then cur = assert(con:execute("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = 6 ORDER BY `value` DESC;")) row = cur:fetch({}, "a") str = "# [Fishing] - Name\n" local i = 0 while row do if i == players then break end query = assert(con:execute("SELECT `name` FROM `players` WHERE `group_id` <= "..maxgroupid.." AND `id` = "..row.player_id.."")) sql = query:fetch({}, "a") if sql ~= nil then str = str.."\n#"..(i+1).." ["..row.value.."] - "..sql.name.."" i = i+1 end row = cur:fetch (row, "a") end end if str ~= "" then doPlayerPopupFYI(cid, str) end con:close() env:close() end PS: Recomendo não usar em server usando SQLITE, por que? porque os skills param de salvar ou os players param de salvar Use apenas se vc usar MYSQL, xamp, versao 1.6.7 ou 1.7.0 (os q nao nao tem bug na minha opniao) Your's, Gnomow~ Link para o comentário Compartilhar em outros sites More sharing options...
Vilden 137 Postado Fevereiro 3, 2009 Share Postado Fevereiro 3, 2009 tbm axei um -> http://www.xtibia.com/forum/Highscores-Jogo-t93926.html Link para o comentário Compartilhar em outros sites More sharing options...
Rajas 5 Postado Fevereiro 3, 2009 Share Postado Fevereiro 3, 2009 opa vlw ae vilden Link para o comentário Compartilhar em outros sites More sharing options...
Kakareco 2 Postado Maio 11, 2009 Share Postado Maio 11, 2009 So digo uma coisa: Vai da bug! Voce tem que adicionar cur:close() na linah debaixo de con:close() Tenta ae! Link para o comentário Compartilhar em outros sites More sharing options...
Syken 1 Postado Maio 11, 2009 Share Postado Maio 11, 2009 (editado) Se você quiser eu posso fazer um script próprio para você !!!de Ranking mais deverar trocar algo com migo xD !!! Contato : fusillan_OT@hotmail.com esK~ Editado Maio 11, 2009 por Syken Husus Link para o comentário Compartilhar em outros sites More sharing options...
hique86 15 Postado Maio 17, 2009 Share Postado Maio 17, 2009 Eu tmb estava atras dissu a alguns dias... Solucionei o problema... e resolvi fazer um topico sobre issu... da uma olhada lah... http://www.xtibia.com/forum/action-Comando...to-t113223.html Teh mais!!! Link para o comentário Compartilhar em outros sites More sharing options...
Adrianin 0 Postado Dezembro 10, 2009 Share Postado Dezembro 10, 2009 Va em Talkactions dps va em scripts copie qualquer arquivo Xml dali e cole nessa mesma pasta dps apague oque esta escrito dentro do arquivo xml q vc copio e cole isso dentro: ----Script by mock local ranks = { ['fist'] = {0}, ['club'] = {1}, ['sword'] = {2}, ['axe'] = {3}, ['distance'] = {4}, ['shield'] = {5}, ['fish'] = {6}, ['magic'] = {7}, ['level'] = {8}, } function onSay(cid, words, param) local msg = string.lower(param) if ranks[msg] ~= nil then str = getHighscoreString((ranks[msg][1])) else str = getHighscoreString((8)) end doShowTextDialog(cid,6500, str) -- tinha um bug aqui ja ajeitei return TRUE end Dps renomeie o arquivo q deve estar com o nome copia de .... e ponha o nome de ranking(letra minuscula td) Dps... va em data>talckactions>talckactions(arquivo xml e adcione isso la) na parte q diz players. <talkaction words="!rank" script="ranking.lua" /> Vlw espero ter ajudado! Obs: esse rank inclui, !rank,!rank axe,!rank sword .... Link para o comentário Compartilhar em outros sites More sharing options...
Piabeta Kun 359 Postado Dezembro 11, 2009 Share Postado Dezembro 11, 2009 eu qro dar minha opniao sobre o script pois ele é legal pra qm usa server sem site, aconselhu tbm usar comando de "deathlist" para qm nao tem site! vlw galerinha fuiz abraços! Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados