eu quero pedir aqui o comando deathlist que mostra o dia a hora e quem matou tal player eu tinha pra 8.42 mas no 8.50 ele da debug e fecha o ot , e ajudem ai !
[pedido] Comando Deathlist 8.50

TFS 0.3.5
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
É por isso que eu gosto de ajudar (pelo menos tentar ajudar) este fórum, os caras sabe Agradecer né?
Att,
ஓ PẫulǾ ஓ
paulo.boc@hotmail.com
cara continua dando o msm erro apos executar o coando o server da debug e cai !
Vá Em Talkactions/Scripts , Copie Um Arquivo .Lua E Depois Cole . Renomeie Ele Para deathlist.lua . E Coloque Esse Script , FICOU BAGUNÇADO PQ PEGUEI AGORA,NAO DEU PRA ARRUMA !.
function onSay(cid, words, param)local target = db.getResult("SELECT `name`, `id` FROM `players` WHERE `name` = " .. db.escapeString(param) .. ";")if(target:getID() ~= -1) thenlocal targetName = target:getDataString("name")local targetGUID = target:getDataInt("id")target:free()local str = ""local deaths = db.getResult("SELECT `time`, `level`, `killed_by`, `altkilled_by` FROM `player_deaths` WHERE `player_id` = " .. targetGUID .. " ORDER BY `time` DESC;")if(deaths:getID() ~= -1) thenlocal breakline = ""while(true) doif(str ~= "") thenbreakline = "\n"endlocal time = os.date("%d %B %Y %X ", deaths:getDataInt("time"))local level = deaths:getDataInt("level")local killed = ""local lastHitKiller = deaths:getDataString("killed_by")local mostDamageKiller = deaths:getDataString("altkilled_by")if(tonumber(lastHitKiller)) thenkilled = getPlayerNameByGUID(tonumber(lastHitKiller))elsekilled = getArticle(lastHitKiller) .. " " .. string.lower(lastHitKiller)endif(mostDamageKiller ~= "") thenif(tonumber(mostDamageKiller)) thenkilled = killed .. " and by " .. getPlayerNameByGUID(tonumber(mostDamageKiller))elsekilled = killed .. " and by " .. getArticle(mostDamageKiller) .. " " .. string.lower(mostDamageKiller)endendstr = str .. breakline .. " " .. time .. " Died at Level " .. level .. " by " .. killed .. "."if not(deaths:next()) thenbreakendenddeaths:free()elsestr = "No deaths recorded."enddoPlayerPopupFYI(cid, "Deathlist for player: " .. targetName .. ".\n\n" .. str)elsedoPlayerSendCancel(cid, "Este Jogador Não Existe")endreturn TRUEend
Voute A Pasta , Va Em Talkactions.XML
Procure Por <!-- Players --> , Quando Achar Coloque Isso :
<talkaction words="!deathlist" script="deathlist.lua"/>
Eu sei tudo que você sabe e mais um pouco.
5 anos de scripting.

Brazilian
-- Trabalhos --
Em breve muito mais scripts, AGUARDEM.
Peguei Aqui no OT Styller Yourots.
Tudo Arrumadinho.
function onSay(cid, words, param)
local target = db.getResult("SELECT `name`, `id` FROM `players` WHERE `name` = " .. db.escapeString(param) .. ";")
if(target:getID() ~= -1) then
local targetName = target:getDataString("name")
local targetGUID = target:getDataInt("id")
target:free()
local str = ""
local deaths = db.getResult("SELECT `time`, `level`, `killed_by`, `altkilled_by` FROM `player_deaths` WHERE `player_id` = " .. targetGUID .. " ORDER BY `time` DESC;")
if(deaths:getID() ~= -1) then
local breakline = ""
while(true) do
if(str ~= "") then
breakline = "\n"
end
local time = os.date("%d %B %Y %X ", deaths:getDataInt("time"))
local level = deaths:getDataInt("level")
local killed = ""
local lastHitKiller = deaths:getDataString("killed_by")
local mostDamageKiller = deaths:getDataString("altkilled_by")
if(tonumber(lastHitKiller)) then
killed = getPlayerNameByGUID(tonumber(lastHitKiller))
else
killed = getArticle(lastHitKiller) .. " " .. string.lower(lastHitKiller)
end
if(mostDamageKiller ~= "") then
if(tonumber(mostDamageKiller)) then
killed = killed .. " and by " .. getPlayerNameByGUID(tonumber(mostDamageKiller))
else
killed = killed .. " and by " .. getArticle(mostDamageKiller) .. " " .. string.lower(mostDamageKiller)
end
end
str = str .. breakline .. " " .. time .. " Died at Level " .. level .. " by " .. killed .. "."
if not(deaths:next()) then
break
end
end
deaths:free()
else
str = "No deaths recorded."
end
doPlayerPopupFYI(cid, "Deathlist for player: " .. targetName .. ".\n\n" .. str)
else
doPlayerSendCancel(cid, "A player with that name does not exist.")
end
return TRUE
end
Abraços .
[/ Construçãao .
[/color] Pessoal Essa Script Ai Tmb Funfa Com Ot 8.52 The Forgotten Server 0.3.5 ?? :smile_positivo:
Abraços.





