Ir para conteúdo

Deathlist


rodrygosos

Posts Recomendados

Galera da uma olhada nesse script ai para mim ele esta funcionando direitinho só que ele não mostra por quem o plyaer foi morto Só aparece quando morreu e em que level mais não aparece para quem e a data esta errada, ele estava em 1900 e alguma coisa, alguem concerta esse script para mim foi o unico que servio no meu server ele é 8.60

 

Exemplo: !deathlist Player

Aparece o seguinte:

31 Debember 1969 22:00:00 Died at Level 614 by a.

A data esta errada e não mostra para oq ele morreu.

Espero que alguem posso mim ajudar.

 

E da o seguinte erro no distro:

[27/08/2010 22:04:12] Error during getDataInt(time).

[27/08/2010 22:04:12] Error during getDataString(killed_by).

[27/08/2010 22:04:12] Error during getDataString(altkilled_by).

 

 

-- [( Created by: GT Thionix, edited by: DoidinMapper for XTibia.com )] --

function onSay(cid, words, param, channel)
local config = {displayLimit = 10}
local target = db.getResult("SELECT `name`, `id` FROM `players` WHERE `name` = " .. db.escapeString(param) .. ";")
if(target:getID() == -1) then
doPlayerSendCancel(cid, "Esse Player nao Existe.")
return TRUE
end
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 n = 0
local breakline = ""
repeat
n = n + 1
if(str ~= "") then
breakline = "\n"
end
local time = os.date("%d %B %Y %X ", deaths:getDataInt("time"))
local level = deaths:getDataInt("level")
local lastHitKiller = deaths:getDataString("killed_by")
local mostDamageKiller = deaths:getDataString("altkilled_by")
local killed = ""
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 .. "."
until not(deaths:next()) or n > config.displayLimit
deaths:free()
else
str = "No deaths recorded."
end
doPlayerPopupFYI(cid, "Deathlist for player: " .. targetName .. ".\n\n" .. str)
return TRUE
end

 

 

Desculpa por esta postado novamente, não sei bem mais acho que é errado, mais é como forma de prostesto pois não tenho respostas, meu pedido esta aqui a alguns dias e até agora nada, se alguem estiver testando pelo menos deixe alguma coisa aqui para mim saber que tem alguem tentando fazer algo para mim ajudar, fiquei abismado, pois sempre que pedia ajuda aqui rapidamente a recebia oque esta acontecendo aqui? cade a qualidade que fez o Xtibia ser meu forum preferido?

como eu configuro a stamina tipo para a primeira hora dar mais xp somente para premium.

Sem mais.

 

O TIME EU JA ARRUMEI APENAS MUDEI NO SCRIPT A PALAVRA TIME PELA PALAVRA DATE E ESTA FUNCIONANDO PERFEITAMENTE AGORA FALTA APARECER O NOME DE QUEM MATOU O PLAYER. AGUARDO AJUDA QUE NÃO RECEBI ATÉ HJ. ESTOU ME VIRANDO SOZINHO =S

 

O USUARIOS DO XTIBIA ESTÃO MUITO MAL, A QUALIDADE ESTA CADA VEZ MENOR.

ESTOU COM ESSE PROBLEMA A 3 MESES E POSTEI VARIOS TOPICOS E NENHUMA RESPOSTA ATÉ HOJÉ.

SÓ LAMENTO.

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

sim ja tentei trocar de distro ja tentei varios scripts e nada cara o erro me parece uma coisa simple tipo a data ficava errada eu só mudei o nome 'time' para o nome 'date' no script e ai a data ficou certinha, to suando o the diamond server 8.60 ja baixei varios servidores e todos estão com a deathlist bugada. =/

Link para o comentário
Compartilhar em outros sites

vo faze um script pa você e ja edito esse post.

nao gostei muito da sua base vo faze um melhorzin ake =d

 

edit:

testa isso:

 

function onSay(cid, words, param, channel)
local target = db.getResult("SELECT `name`, `id` FROM `players` WHERE `name` = " .. getPlayerGUIDByName(param) .. ";")
if(target:getID() == -1) then
doPlayerSendCancel(cid, "Esse Player nao Existe.")
return TRUE
end


local str = ""
local deaths = db.getResult("SELECT `date`, `level`, `killed_by`, `altkilled_by` FROM `player_deaths` WHERE `player_id` = " .. getPlayerGUIDByName(param) .. ";")
local n = 0
local breakline = ""

repeat
n = n + 1
 if(str ~= "") then
 breakline = "\n"
 end

local time = os.date("%d %B %Y %X ", deaths:getDataInt("date"))
local level = deaths:getDataInt("level")
local lastHitKiller = deaths:getDataString("killed_by")
local mostDamageKiller = deaths:getDataString("altkilled_by")
local killed = ""
     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 .. "."
until not(deaths:next()) or n > 10

doPlayerPopupFYI(cid, "Deathlist for player: " .. param .. ".\n\n" .. str)
return TRUE
end

 

é uma talkaction.. fale a palavra que vc coloca no xml espaço nome do player..

 

 

exemplo:

 

!deaths "Ronaldo

 

 

testei aqui e funcionou.. se ai nao funcionar é seu distro =d

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

[11/10/2010 22:33:53] [Error - TalkAction Interface]

[11/10/2010 22:33:53] data/talkactions/scripts/deathlist.lua:onSay

[11/10/2010 22:33:53] Description:

[11/10/2010 22:33:53] data/talkactions/scripts/deathlist.lua:2: attempt to concatenate a nil value

[11/10/2010 22:33:53] stack traceback:

[11/10/2010 22:33:53] data/talkactions/scripts/deathlist.lua:2: in function <data/talkactions/scripts/deathlist.lua:1>

 

Deu esse erro ai mano no distro.

 

To usando o The Diamond Server 8.60

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...