Ir para conteúdo

Featured Replies

Postado
  • 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:

image.thumb.png.b9812d2ccb282c80a89593c2be466630.png

Editado por yuriowns
adicionei o erro (veja o histórico de edições)

  • Respostas 5
  • Visualizações 989
  • Created
  • Última resposta

Top Posters In This Topic

Posted Images

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo