Vodkart 1515 Postado Maio 3, 2012 Share Postado Maio 3, 2012 (editado) Atualizado V1.0:Mostra últimas mortes do servidor:você pode usar o comando !deathlist NOMEex: !deathlist Carlin:in your db execute this query: CREATE TABLE death_list ( id INTEGER NOT NULL, player_id INTEGER NOT NULL, date INTEGER NOT NULL, level INTEGER NOT NULL, killer_name INTEGER NOT NULL, PRIMARY KEY ( id ) ); creaturescriptdeath_list.luafunction onDeath(cid, corpse, deathList) local str = "" for _, pid in ipairs(deathList) do if isCreature(pid) == true then str = str.."".. (str == "" and "" or ",") ..""..getCreatureName(pid) else str = str.."".. (str == "" and "" or ",") .." a field item" end end str = str.."." death = str .. " ".. (getPlayerBlessing(cid, 5) and "[Blessed]" or getPlayerSlotItem(cid, 2).itemid == 2173 and "[AOL]" or "") db.executeQuery("INSERT INTO `death_list` (`player_id`, `date`, `level`, `killer_name`) VALUES ('".. getPlayerGUID(cid).."', '".. os.time() .."', '".. getPlayerLevel(cid) .."', '".. death .."');") return true end creaturescript.xml<event type="death" name="DeathList" event="script" value="death_list.lua"/> creaturescript/script/login.luaregisterCreatureEvent(cid, "DeathList") talkactionsdeathlist.lualimit = 5 function onSay(cid, words, param, channel) str = "" if param == "" then local qry = db.getResult("SELECT `player_id`, `date`, `level`, `killer_name` FROM `death_list` ORDER BY `date` DESC LIMIT 0, " .. limit) if(qry:getID() ~= -1) then repeat str = str .."\n "..os.date("%d %B %Y %X ", qry:getDataInt("date")).." "..getPlayerNameByGUID(qry:getDataString("player_id")).." died at level "..qry:getDataInt("level").." by:\n"..qry:getDataString("killer_name") until not(qry:next()) qry:free() else str = "Não há mortes no servidor." end doPlayerPopupFYI(cid, "Last Deaths:\n\n" .. str) return true end local getGuid = getPlayerGUIDByName(param:lower()) if not getGuid then doPlayerSendCancel(cid, "Este Player não existe.") return true end local qry = db.getResult("SELECT `id`, `date`, `level`, `killer_name` FROM `death_list` WHERE `player_id` = " .. getGuid .." ORDER BY `date` DESC LIMIT 0, " .. limit) if(qry:getID() ~= -1) then repeat str = str .."\n "..os.date("%d %B %Y %X ", qry:getDataInt("date")).." died at level "..qry:getDataInt("level").." by:\n"..qry:getDataString("killer_name") until not(qry:next()) qry:free() else str = "Não há mortes." end doPlayerPopupFYI(cid, "Last Deaths of: " .. param .. ".\n\n" .. str) return true end talkactions.xml<talkaction words="!deathlist" script="deathlist.lua"/> Editado Julho 28, 2013 por Vodkart Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/ Compartilhar em outros sites More sharing options...
Zmovir 41 Postado Maio 3, 2012 Share Postado Maio 3, 2012 Otimo script vodkart, parabéns reputado Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1253211 Compartilhar em outros sites More sharing options...
alldakie 160 Postado Maio 3, 2012 Share Postado Maio 3, 2012 Bacana o script Vodkart, com certeza vou usa-lo, +REP Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1253225 Compartilhar em outros sites More sharing options...
jhon992 371 Postado Maio 3, 2012 Share Postado Maio 3, 2012 Tava na hra de alguem postar um deathlist que funcione. Rep+ Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1253235 Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Maio 5, 2012 Autor Share Postado Maio 5, 2012 ATUALIZADO PARA V.1 - Mostra agora se o player morreu [blessed] ou com [Aol] - Mostra últimas mortes do servidor Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1254391 Compartilhar em outros sites More sharing options...
Zmovir 41 Postado Maio 5, 2012 Share Postado Maio 5, 2012 Agora com os bang de [Aol] e [bless] fico melhor ainda Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1254582 Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Maio 8, 2012 Autor Share Postado Maio 8, 2012 obrigado pelos comentários qualquer dúvida só postar Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1256519 Compartilhar em outros sites More sharing options...
Vilden 137 Postado Maio 8, 2012 Share Postado Maio 8, 2012 Rep+, não existe um deathlist que funcione, e agora além de ter esta com funções extras. Parabéns. Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1256545 Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Junho 22, 2012 Autor Share Postado Junho 22, 2012 obrigado pelos comentários Bring Up My Post Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1282454 Compartilhar em outros sites More sharing options...
asgropoldo 0 Postado Junho 22, 2012 Share Postado Junho 22, 2012 Mano sou muito noob nessa parada de script mas gostei muito do seu script e estava querendo colocar no servidor que estou criando. No início da escrito: in your db execute this query <- onde tenho que colocar o que está escrito no retângulo, o que eu tenho que fazer ? Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1282596 Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Junho 22, 2012 Autor Share Postado Junho 22, 2012 Mano sou muito noob nessa parada de script mas gostei muito do seu script e estava querendo colocar no servidor que estou criando. No início da escrito: in your db execute this query <- onde tenho que colocar o que está escrito no retângulo, o que eu tenho que fazer ? 1° Abra o programa Sqlite 2° Selecione a database do seu server, o arquivo é esse ".s3db", por exemplo o "forgottenserver.s3db" 3° na parte superior do programa tem a aba "Tools",clica nela e seleciona "Open SQL query editor" ou (ALT + E) se preferir 4° Vai abrir uma janela branca,nela você coloca isso: CREATE TABLE death_list ( id INTEGER NOT NULL, player_id INTEGER NOT NULL, date INTEGER NOT NULL, level INTEGER NOT NULL, killer_name INTEGER NOT NULL, PRIMARY KEY ( id ) ); 5° Depois clica no ícone do raio ali na parte de cima ou aperta o botão F9 que vai fazer com que a query seja executada. Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1282673 Compartilhar em outros sites More sharing options...
Nathan96 4 Postado Junho 22, 2012 Share Postado Junho 22, 2012 Aqui no meu server só esta mostrando na lista de mortes quem deu o ultimo hit, i não como mostra na imagem morto por warlock, stone golem. Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1282749 Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Junho 22, 2012 Autor Share Postado Junho 22, 2012 então olha se você colocou o script direito do onDeath, porque ta funcionando normal aqui, outra coisa... qual versão do seu ot? Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1282758 Compartilhar em outros sites More sharing options...
Nathan96 4 Postado Junho 22, 2012 Share Postado Junho 22, 2012 fiz tudo igual ta la em cima, 8.60 Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1282761 Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Junho 22, 2012 Autor Share Postado Junho 22, 2012 (editado) tenta usar assim então: function onDeath(cid, corpse, deathList) local str = "" for _, pid in ipairs(deathList) do if isCreature(pid) == true then str = str.."".. (str == "" and "" or ",") ..""..getCreatureName(pid) else str = str.."".. (str == "" and "" or ",") .." a field item" end end str = str.."." death = str .. " ".. (getPlayerBlessing(cid, 5) and "[blessed]" or getPlayerSlotItem(cid, 2).itemid == 2173 and "[AOL]" or "") db.executeQuery("INSERT INTO `death_list` (`player_id`, `date`, `level`, `killer_name`) VALUES ('".. getPlayerGUID(cid).."', '".. os.time() .."', '".. getPlayerLevel(cid) .."', '".. death .."');") return true end Editado Junho 22, 2012 por Vodkart Link para o comentário https://xtibia.com/forum/topic/185506-talk-deathlist-fixedno-crash/#findComment-1282884 Compartilhar em outros sites More sharing options...
Posts Recomendados