Ir para conteúdo

[Talkactions] Deathlist Funcionando! (Tfs 0.3.6+)


Doidin

Posts Recomendados

Deathlist funcionando! [TFS 0.3.6+]

Fala galera, muitos OTs estão com o comando Death List (!deathlist) bugado, então estava pesquisando algum script semelhante que não bugasse o servidor e achei!

 

Vá até a pasta Talkactions abra o arquivo Talkactions.xml e adicione esta Tag:

<talkaction words="!deathlist" event="script" value="deathlist.lua"/>

Depois de ter adicionado e salvado, vá até a pasta Scripts dentro da pasta Takactions e abra ou faça um script deathlist.lua e adicione isto dentro:

local config = {
deathAssistCount = getConfigValue('deathAssistCount') + 1,
maxDeathRecords = getConfigValue('maxDeathRecords'),
limit = ""
}
if(config.deathAssistCount > 0) then
config.limit = " LIMIT 0, " .. config.deathAssistCount
end
function onSay(cid, words, param, channel)
local target = db.getResult("SELECT `name`, `id` FROM `players` WHERE `name` = " .. db.escapeString(param) .. ";")
if(target:getID() == -1) then
doPlayerSendCancel(cid, "A player with that name does not exist.")
return true
end
local targetName, targetId = target:getDataString("name"), target:getDataInt("id")
target:free()
local str, deaths = "", db.getResult("SELECT `id`, `date`, `level` FROM `player_deaths` WHERE `player_id` = " .. targetId .." ORDER BY `date` DESC LIMIT 0, " .. config.maxDeathRecords)
if(deaths:getID() ~= -1) then
repeat
local killers = db.getResult("SELECT environment_killers.name AS monster_name, players.name AS player_name FROM killers LEFT JOIN environment_killers ON killers.id = environment_killers.kill_id LEFT JOIN player_killers ON killers.id = player_killers.kill_id LEFT JOIN players ON players.id = player_killers.player_id WHERE killers.death_id = " .. deaths:getDataInt("id") .. " ORDER BY killers.final_hit DESC, killers.id ASC" .. config.limit)
if(killers:getID() ~= -1) then
if(str ~= "") then
str = str .. "\n" .. os.date("%d %B %Y %X ", deaths:getDataLong("date"))
else
str = os.date("%d %B %Y %X ", deaths:getDataLong("date"))
end
local count, i = killers:getRows(false), 0
repeat
local monster = killers:getDataString("monster_name")
if(i == 0 or i == (count - 1)) then
monster = string.gsub(monster:gsub("an ", ""), "a ", "")
end
if(killers:getDataString("player_name") ~= "") then
if(i == 0) then
str = str .. "Killed at level " .. deaths:getDataInt("level") .. " by:\n  "
elseif(i == count) then
str = str .. " and by "
elseif(i % 4 == 0) then
str = str .. ",\n  "
else
str = str .. ", "
end
if(monster ~= "") then
str = str .. monster .. " summoned by "
end
str = str .. killers:getDataString("player_name")
else
if(i == 0) then
str = str .. "Died at level " .. deaths:getDataInt("level") .. " by:\n  "
elseif(i == count) then
str = str .. " and by "
elseif(i % 4 == 0) then
str = str .. ",\n  "
else
str = str .. ", "
end
str = str .. monster
end
i = i + 1
if(i == count) then
str = str .. "."
end
until not(killers:next())
killers:free()
end
until not(deaths:next())
deaths:free()
else
str = "No deaths recorded."
end
doPlayerPopupFYI(cid, "Deathlist for player: " .. targetName .. ".\n\n" .. str)
return true
end

Pronto, seu deathlist agora está funcionando normalmente! :bigsmile:

 

Créditos:

Desconhecido.~

Editado por DoidinMapper
Link para o comentário
Compartilhar em outros sites

  • Respostas 31
  • Created
  • Última resposta

Top Posters In This Topic

Hmm parabens

 

o outro que eu havia testado não estava funcionando

valeu por trazer pro xtibia

 

abraços brother :smile_positivo:

Editado por Nicekid
Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...
  • 3 weeks later...
  • 2 weeks later...

quando uso o comando, todas as mortes aparecem como 31 de dezembro de 1969 22:00h e nao fala para o que morreu

 

me ajude por favor

Editado por UndeadHero
Link para o comentário
Compartilhar em outros sites

Bom eu uso MYSQL, e ta dando esse erro aki -----

 

 

[13/06/2010 03:38:14] mysql_real_query(): SELECT `time`, `level`, `killed_by`, `altkilled_by` FROM `player_deaths` WHERE `player_id` = 7 ORDER BY 'time' DESC; - MYSQL ERROR: Unknown column 'time' in 'field list' (1054)

=s

Editado por MarcelloMkez
Link para o comentário
Compartilhar em outros sites

Vlw cara agora funciono, mas tem como almentar o tammanho d PopupFYI, pra fika na mxm linha a msg?

 

ta tipo assim:

Deathlist player: juninho.

13 june 2010 02:23:45 Morreu no level:109 by:

a Ferumbras.

 

teria como fazer fikar assim: Deathlist player: juninho.

13 june 2010 02:23:45 Morreu no level:109 by: a Ferumbras.

 

?

 

=s vlw mano

Link para o comentário
Compartilhar em outros sites

MarcelloMkez,

Putz cara, acho que é impossível aumentar essa janela...

 

UndeadHero,

Cara o script só funciona em TFS 0.3.6+

Abraços...

Link para o comentário
Compartilhar em outros sites


×
×
  • Criar Novo...