damiaotorres 0 Postado Fevereiro 1, 2019 Share Postado Fevereiro 1, 2019 Boa noite, (versão é 0.1.0 (Beta Version)) Essa quest que tenho ela tá dando erro na distro no "cleararea", não ta removendo os boss e nem os player quando o tempo acaba e não ta mostrando o time nas position indicada nela. Spoiler local config = { storage = 9721, time = 2, --Tempo para fazer a quest, em minutos. interval = 2, --Tempo para poder usar a alavanca novamente, em minutos. timerPos = { {x = 1127, y = 1152, z = 7}, --Posições onde o tempo restante aparecerá. {x = 1129, y = 1150, z = 8}, {x = 1129, y = 1156, z = 8}, {x = 1121, y = 1150, z = 8}, {x = 1121, y = 1156, z = 8}, }, monster = { name = "Annihilon", --Nome do monstro. pos = { {x = 1121, y = 1151, z = 8}, --Posições onde ele vai nascer. {x = 1121, y = 1153, z = 8}, {x = 1121, y = 1155, z = 8}, {x = 1129, y = 1151, z = 8}, {x = 1129, y = 1153, z = 8}, {x = 1129, y = 1155, z = 8}, }, }, player = { {{x = 1126, y = 1152, z = 7}, {x = 1127, y = 1153, z = 8}}, --{{posição onde o player deve ficar}, {para onde será teleportado}}, {{x = 1125, y = 1152, z = 7}, {x = 1126, y = 1153, z = 8}}, {{x = 1124, y = 1152, z = 7}, {x = 1125, y = 1153, z = 8}}, {{x = 1123, y = 1152, z = 7}, {x = 1124, y = 1153, z = 8}}, {{x = 1122, y = 1152, z = 7}, {x = 1123, y = 1153, z = 8}}, }, area = {{x = 1121, y = 1150, z = 8}, {x = 1129, y = 1156, z = 8}}, --{{posição superior esquerda da área}, {posição inferior direita da área}}, } local cidPos = {} function clearArea() for x = config.area[1].x, config.area[2].x do for y = config.area[1].y, config.area[2].y do local pos = {x = x, y = y, z = config.area[1].z} local pid = getTopCreature(pos).uid if pid > 0 then if isPlayer(pid) then doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid))) doPlayerSendTextMessage(pid, MESSAGE_STATUS_CONSOLE_RED, "Você não conseguiu completar a Quest.") else doRemoveCreature(pid) end end end end setGlobalStorageValue(config.storage, os.time() + config.interval * 60) end function checkPlayer() for x = config.area[1].x, config.area[2].x do for y = config.area[1].y, config.area[2].y do local pos = {x = x, y = y, z = config.area[1].z} local pid = getTopCreature(pos).uid if isPlayer(pid) then return true end end end return false end function convert(time) return {minutes = math.floor(time / 60), seconds = time - math.floor(time / 60) * 60} end function timer(time) if time < 0 or not checkPlayer() then return true end for i = 1, #config.timerPos do doSendAnimatedText(config.timerPos, convert(time).minutes..":"..convert(time).seconds, 215) end addEvent(timer, 1000, time - 1) end function onUse(cid) if getGlobalStorageValue(config.storage) > os.time() then return doPlayerSendCancel(cid, "Wait "..convert(getGlobalStorageValue(config.storage) - os.time()).minutes.."min and "..convert(getGlobalStorageValue(config.storage) - os.time()).seconds.."secs.") elseif checkPlayer() then return doPlayerSendCancel(cid, "Tem Player fazendo a Quest,Aguarde!.") end local p = {} for _, pos in pairs(config.player) do local pid = getTopCreature(pos[1]).uid if isPlayer(pid) then p[#p + 1] = pid cidPos[pid] = _ end end if #p < #config.player then return doPlayerSendCancel(cid, "Não tem 5 Player necessarios.") end for i = 1, #p do doTeleportThing(p, config.player[cidPos[p]][2]) doPlayerSendTextMessage(p, 27, "Boa sorte!") end for _, pos in pairs(config.monster.pos) do doCreateMonster(config.monster.name, pos) end timer(config.time * 60) addEvent(function() clearArea() end, config.time * 60 * 1000) return true end Link para o comentário Compartilhar em outros sites More sharing options...
Diretor Yan Liima 577 Postado Fevereiro 12, 2019 Diretor Share Postado Fevereiro 12, 2019 Qual o erro que aparece na distro ? Link para o comentário Compartilhar em outros sites More sharing options...
damiaotorres 0 Postado Fevereiro 16, 2019 Autor Share Postado Fevereiro 16, 2019 (editado) Esse erro. Spoiler [15/02/2019 23:46:38] [Error - Action Interface] [15/02/2019 23:46:38] In a timer event called from: [15/02/2019 23:46:38] data/actions/scripts/one/anihilation/anihi.lua:onUse [15/02/2019 23:46:38] Description: [15/02/2019 23:46:38] data/actions/scripts/portaarena.lua:33: attempt to perform arithmetic on local 'rangex' (a nil value) [15/02/2019 23:46:38] stack traceback: [15/02/2019 23:46:38] data/actions/scripts/portaarena.lua:33: in function 'clearArea' [15/02/2019 23:46:38] data/actions/scripts/one/anihilation/anihi.lua:96: in function <data/actions/scripts/one/anihilation/anihi.lua:95> O interessante que se eu colocar esse script em outro mapa, ele funciona normalmente Conseguir ajeitar, outro script tava dando erro nele devido ao uso do clearArea, tiver como ajudar a ajeitar isso. E no script da anihi o time não ta aparecendo nas position indicada no script. Editado Fevereiro 16, 2019 por damiaotorres Link para o comentário Compartilhar em outros sites More sharing options...
Benny 735 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