bilaux 0 Postado Dezembro 21, 2018 Share Postado Dezembro 21, 2018 boa tarde, meu ot está dando esse erro, quando eu dou look em certas pessoas, como resolver ?? [14:3:49.427] [Error - CreatureScript Interface] [14:3:49.427] domodlib("ranks") [14:3:49.427] function onLook(cid, thing, position, lookDistance) [14:3:49.427] if(isPlayer(thing.uid)) then [14:3:49.427] local rank = {rank = "Private", frags = 0} [14:3:49.427] for k, v in pairs(titles) do [14:3:49.427] if(math.max(0, getPlayerStorageValue(thing.uid, fragsStorage)) > k - 1) then [14:3:49.427] if(k - 1 > rank.frags) then [14:3:49.427] rank.rank, rank.frags = v, k - 1 [14:3:49.427] end [14:3:49.427] end [14:3:49.427] end [14:3:49.427] doPlayerSetSpecialDescription(thing.uid, "\n Military rank: " .. rank.rank) [14:3:49.427] end [14:3:49.427] return true [14:3:49.427] end [14:3:49.427] :onLook [14:3:49.427] Description: [14:3:49.427] [string "LuaInterface::loadBuffer"]:6: bad argument #2 to 'max' (number expected, got string) [14:3:49.427] stack traceback: [14:3:49.427] [C]: in function 'max' [14:3:49.427] [string "LuaInterface::loadBuffer"]:6: in function <[string "LuaInterface::loadBuffer"]:2> Link para o comentário Compartilhar em outros sites More sharing options...
Diretor Yan Liima 577 Postado Dezembro 21, 2018 Diretor Share Postado Dezembro 21, 2018 13 minutos atrás, bilaux disse: Versão do Servidor: TFS - 0.4 Tipo de Script: creaturescript boa tarde, meu ot está dando esse erro, quando eu dou look em certas pessoas, como resolver ?? [14:3:49.427] [Error - CreatureScript Interface] [14:3:49.427] domodlib("ranks") [14:3:49.427] function onLook(cid, thing, position, lookDistance) [14:3:49.427] if(isPlayer(thing.uid)) then [14:3:49.427] local rank = {rank = "Private", frags = 0} [14:3:49.427] for k, v in pairs(titles) do [14:3:49.427] if(math.max(0, getPlayerStorageValue(thing.uid, fragsStorage)) > k - 1) then [14:3:49.427] if(k - 1 > rank.frags) then [14:3:49.427] rank.rank, rank.frags = v, k - 1 [14:3:49.427] end [14:3:49.427] end [14:3:49.427] end [14:3:49.427] doPlayerSetSpecialDescription(thing.uid, "\n Military rank: " .. rank.rank) [14:3:49.427] end [14:3:49.427] return true [14:3:49.427] end [14:3:49.427] :onLook [14:3:49.427] Description: [14:3:49.427] [string "LuaInterface::loadBuffer"]:6: bad argument #2 to 'max' (number expected, got string) [14:3:49.427] stack traceback: [14:3:49.427] [C]: in function 'max' [14:3:49.427] [string "LuaInterface::loadBuffer"]:6: in function <[string "LuaInterface::loadBuffer"]:2> Me manda o script de look do seu creaturescript. Link para o comentário Compartilhar em outros sites More sharing options...
bilaux 0 Postado Dezembro 21, 2018 Autor Share Postado Dezembro 21, 2018 (editado) boa tarde, único arquivo de look q tem lá, q eu vi pelo creaturescripts.xml é o do kills and death function getDeaths(cid) local query, d = db.getResult("SELECT `player_id` FROM `player_killers` WHERE `player_id` = " ..getPlayerGUID(cid)), 0 if (query:getID() ~= -1) then repeat d = d+1 until not query:next() query:free() end return d end function getPlayerFrags(cid) local time = os.time() local times = {today = (time - 86400), week = (time - (7 * 86400))} local contents, result = {day = {}, week = {}, month = {}}, db.getResult("SELECT `pd`.`date`, `pd`.`level`, `p`.`name` FROM `player_killers` pk LEFT JOIN `killers` k ON `pk`.`kill_id` = `k`.`id` LEFT JOIN `player_deaths` pd ON `k`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `pk`.`player_id` = " .. getPlayerGUID(cid) .. " AND `k`.`unjustified` = 1 AND `pd`.`date` >= " .. (time - (30 * 86400)) .. " ORDER BY `pd`.`date` DESC") if(result:getID() ~= -1) then repeat local content = {date = result:getDataInt("date")} if(content.date > times.today) then table.insert(contents.day, content) elseif(content.date > times.week) then table.insert(contents.week, content) else table.insert(contents.month, content) end until not result:next() result:free() end local size = { day = table.maxn(contents.day), week = table.maxn(contents.week), month = table.maxn(contents.month) } return size.day + size.week + size.month end function onLook(cid, thing, position, lookDistance) if isPlayer(thing.uid) and thing.uid ~= cid then return doPlayerSetSpecialDescription(thing.uid, '\n'.. '[Frags: ' .. getPlayerFrags(thing.uid) .. ' - Frags Totais: ' .. getDeaths(thing.uid) .. ']') elseif thing.uid == cid then local string = 'You see yourself.' if getPlayerFlagValue(cid, PLAYERFLAG_SHOWGROUPINSTEADOFVOCATION) then string = string..' You are '.. getPlayerGroupName(cid) ..'.' elseif getPlayerVocation(cid) ~= 0 then string = string..' You are '.. getPlayerVocationName(cid) ..'.' else string = string..' You have no vocation.' end if getPlayerGuildId(cid) > 0 then string = string..' You are ' .. (getPlayerGuildRank(cid) == '' and 'a member' or getPlayerGuildRank(cid)) ..' of the '.. getPlayerGuildName(cid) string = getPlayerGuildNick(cid) ~= '' and string..' ('.. getPlayerGuildNick(cid) ..').' or string..'.' end string = string..'\n'.. '[Matou: ' .. getPlayerFrags(cid) .. ' - Morreu: ' .. getDeaths(cid) .. ']' if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEECREATUREDETAILS) then string = string..'\nHealth: ['.. getCreatureHealth(cid) ..' / '.. getCreatureMaxHealth(cid) ..'], Mana: ['.. getCreatureMana(cid) ..' / '.. getCreatureMaxMana(cid) ..'].' string = string..'\nIP: '.. doConvertIntegerToIp(getPlayerIp(cid)) ..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEEPOSITION) then string = string..'\nPosition: [X:'.. position.x..'] [Y:'.. position.y..'] [Z:'.. position.z..'].' end return false, doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string) end return 1 end Editado Dezembro 21, 2018 por bilaux Link para o comentário Compartilhar em outros sites More sharing options...
Diretor Yan Liima 577 Postado Dezembro 21, 2018 Diretor Share Postado Dezembro 21, 2018 (editado) Então amigo verifiquei aqui e não tem nenhum problema com esse script. Talvez você esteja usando mais um script de Look e por conta disso deve estar dando conflito. Da uma olhada na sua pasta mods Editado Dezembro 21, 2018 por nedroesdoksdja Link para o comentário Compartilhar em outros sites More sharing options...
bilaux 0 Postado Dezembro 21, 2018 Autor Share Postado Dezembro 21, 2018 boa tarde, tem o military rank lá e o rankx Spoiler <?xml version="1.0" encoding="UTF-8"?> <mod name="other ranks" version="1.0" author="Vodkart" contact="xtibia.com" enabled="yes"> <config name="rankf_func"><![CDATA[ function getPlayerFrags(cid) local time = os.time() local times = {today = (time - 86400), week = (time - (7 * 86400))} local contents, result = {day = {}, week = {}, month = {}}, db.getResult("SELECT `pd`.`date`, `pd`.`level`, `p`.`name` FROM `player_killers` pk LEFT JOIN `killers` k ON `pk`.`kill_id` = `k`.`id` LEFT JOIN `player_deaths` pd ON `k`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `pk`.`player_id` = " .. getPlayerGUID(cid) .. " AND `k`.`unjustified` = 1 AND `pd`.`date` >= " .. (time - (30 * 86400)) .. " ORDER BY `pd`.`date` DESC") if(result:getID() ~= -1) then repeat local content = {date = result:getDataInt("date")} if(content.date > times.today) then table.insert(contents.day, content) elseif(content.date > times.week) then table.insert(contents.week, content) else table.insert(contents.month, content) end until not result:next() result:free() end local size = {day = table.maxn(contents.day),week = table.maxn(contents.week),month = table.maxn(contents.month)} return size.day + size.week + size.month end function setFrags(cid) return db.executeQuery("UPDATE `players` SET `frags` = "..getPlayerFrags(cid).." WHERE `id` = "..getPlayerGUID(cid)) end ]]></config> <event type="login" name="RankfLogin" event="script"><![CDATA[ function onLogin(cid) registerCreatureEvent(cid, "RankfKill") registerCreatureEvent(cid, "RankfLogin") setFrags(cid) return true end]]></event> <event type="kill" name="RankfKill" event="script"><![CDATA[ domodlib('rankf_func') function onKill(cid, target, lastHit) if isPlayer(cid) and isPlayer(target) then addEvent(setFrags, 50, cid) end return true end]]></event> </mod> Spoiler <?xml version = "1.0" encoding = "UTF-8"?> <mod name = "Military Ranks" version = "1.0" author = "Teckman" enabled = "yes"> <config name = "ranks"><![CDATA[ titles = { [5] = "Private First Class", [10] = "Specialist", [15] = "Corporal", [20] = "Sergeant", [25] = "Staff Sergeant", [30] = "Sergeant First Class", [35] = "Master Sergeant", [40] = "First Sergeant", [45] = "Sergeant Major", [50] = "Command Sergeant Major", [55] = "Sergeant Major of the Army", [60] = "Second Lieutenant", [65] = "First Lieutenant", [70] = "Captain", [75] = "Major", [80] = "Lieutenant Colonel", [90] = "Colonel", [100] = "Brigadier General", [110] = "Major General", [120] = "Lieutenant General", [140] = "General", [170] = "General of the Army" } fragsStorage = 600 ]]></config> <event type = "look" name = "ranksLook" event = "script"><![CDATA[ domodlib("ranks") function onLook(cid, thing, position, lookDistance) if(isPlayer(thing.uid)) then local rank = {rank = "Private", frags = 0} for k, v in pairs(titles) do if(math.max(0, getPlayerStorageValue(thing.uid, fragsStorage)) > k - 1) then if(k - 1 > rank.frags) then rank.rank, rank.frags = v, k - 1 end end end doPlayerSetSpecialDescription(thing.uid, "\n Military rank: " .. rank.rank) end return true end ]]></event> <event type = "kill" name = "ranksKill" event = "script"><![CDATA[ domodlib("ranks") function onKill(cid, target) if(isPlayer(target)) then setPlayerStorageValue(cid, fragsStorage, math.max(0, getPlayerStorageValue(cid, fragsStorage) + 1)) if(titles[getPlayerStorageValue(cid, fragsStorage)]) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You advanced to military rank: " .. titles[getPlayerStorageValue(cid, fragsStorage)] .. ". Congratulations " .. titles[getPlayerStorageValue(cid, fragsStorage)] .. "!") end end return true end ]]></event> <event type = "login" name = "ranksLogin" event = "script"><![CDATA[ function onLogin(cid) registerCreatureEvent(cid, "ranksKill") registerCreatureEvent(cid, "ranksLook") return true end ]]></event> </mod> Link para o comentário Compartilhar em outros sites More sharing options...
Diretor Yan Liima 577 Postado Dezembro 21, 2018 Diretor Share Postado Dezembro 21, 2018 (editado) Qual a REV da sua TFS 0.4? Bom... Talvez o mods não funcione com a versão da sua TFS, não sei dizer o que está ocorrendo exatamente. Reparei em um pequeno problema. Em seu mods de rankx está assim: db.executeQuery E na TFS 0.4 essa função muda para: db.query Talvez o problema não seja este, mas ao tentar executar a query na database não dará certo, então seria bom corrigir isso ai rsrs. A não ser que sua TFS 0.4 esteja com executeQuery mesmo... Tente remover um desses dois mods ai e testa. Creio que o problema esteja no mods Miltar mesmo Editado Dezembro 21, 2018 por nedroesdoksdja Link para o comentário Compartilhar em outros sites More sharing options...
Marshmello 270 Postado Fevereiro 20, 2019 Share Postado Fevereiro 20, 2019 A questão neste suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta. + Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda. * Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado. Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados