Postado Setembro 14, 2020 4 anos Autor 57 minutos atrás, Naze disse: É o mesmo script, so tirei uma função q ja existe na tfs 1.3, e mudei a checagem de tempo pra funções da lib q uso vou passa ela tbm. <movevent event="StepIn" actionid="14876" script="treiner_in.lua"/> <movevent event="StepIn" actionid="14877" script="treiner_out.lua"/> treiner_in.lua local posSend = Position(565, 2699, 6) -- posicao da primeira pos (linha 1 coluna 1) local storage = 18481 -- storage que salva a ultima vez que o player entrou (pra evitar spams) local config = { distX= 19, -- distancia em X entre cada sala (de uma mesma linha) distY= 13, -- distancia em Y entre cada sala (de uma mesma coluna) rX= 21, -- numero de colunas rY= 10 -- numero de linhas } local function heartScript(player, pos, i, j) -- isso é o coração do nosso script, nao mexa nisso j = j or 0 p = i or 0 if p >= config.rX then p = 0 j = j < config.rY -1 and j + 1 or false end if j then posi = Position(pos.x + ( p * config.distX), pos.y + (j * config.distY), pos.z) if Tile(posi):isWalkable() then player:teleportTo(posi) posi:sendMagicEffect(11) else heartScript(player, pos, p + 1, j) end else player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Treiners esgotados.") end end function onStepIn(player, item, position, fromPosition) if not player:exhaustCheck(storage) then heartScript(player, posSend) else player:teleportTo(fromPosition) player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Aguarde "..player:exhaustTime(storage).." para entrar novamente nos treiners.") end return true end treiner_out.lua local npos = Position(160, 54, 7) -- posição que ele vai ao sair da sala local storage = 18481 -- storage que salva a ultima vez que o player entrou (pra evitar spams) function onStepIn(player, item, pos, lastPos, fromPos, toPos, actor) player:teleportTo(npos) npos:sendMagicEffect(11) player:exhaustSet(storage, 5) return true end exhausted.lua -- coloca em lib/core, e adiciona dofile('data/lib/core/exhausted.lua') no core.lua Mostrar conteúdo oculto function Player:exhaustCheck(storage) if self:getStorageValue(storage) - os.time(t) > 0 then return true end return false end function Player:exhaustGet(storage) local exhaust = (self:getStorageValue(storage) - os.time(t)) return exhaust end function Player:exhaustSet(storage, time) self:setStorageValue(storage, os.time(t) + time) end function Player:exhaustTime(storage) return convertTime(self:getStorageValue(storage) - os.time()) end creditos a night wolf, apenas passei pra 1.3 fiz tudo certinho, coloquei os scripts certinhos nos lugares, porém quando entro no tp para ir pros trainers não acontece nada, parece que não está configurado, eu fico em cima do tp. Apareceu esses erros: Editado Setembro 14, 2020 4 anos por yuriowns adicionei o erro (veja o histórico de edições)
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.