Postado Dezembro 31, 2020 4 anos Olá eu tenho esse script de death list normal, queria uma modificaçao nele, o player para ver a mortes dele ele precisa colocar !deathlist (nome), mas se ele colocar apenas o comando !deathlist sem nome nao funciona, eu queria que quando ele colocasse somente !deathlist sem nome aparecesse as mortes dele e quando ele colocar um nome aparecesse tbm as mortes de outros. @Vodkart local config = { deathAssistCount = getConfigValue('deathAssistCount') + 1, maxDeathRecords = getConfigValue('maxDeathRecords'), limit = "5" } 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, "") 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 .. "Morto 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 .. "Morto 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 = "Nenhuma morte registrada." end doPlayerPopupFYI(cid, "Lista de mortes de: " .. targetName .. ".\n\n" .. str) return true end Editado Dezembro 31, 2020 4 anos por doido (veja o histórico de edições)
Postado Dezembro 31, 2020 4 anos abaixo da função main: function onSay(cid, words, param, channel) adicione: local param = not param or param == "" and getCreatureName(cid) or param [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.