damiaotorres 0 Posted February 1, 2019 Share Posted February 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 to comment Share on other sites More sharing options...
Diretor Yan Liima 577 Posted February 12, 2019 Diretor Share Posted February 12, 2019 Qual o erro que aparece na distro ? Link to comment Share on other sites More sharing options...
damiaotorres 0 Posted February 16, 2019 Author Share Posted February 16, 2019 (edited) 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. Edited February 16, 2019 by damiaotorres Link to comment Share on other sites More sharing options...
Benny 735 Posted February 20, 2019 Share Posted February 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 to comment Share on other sites More sharing options...
Recommended Posts