Ir para conteúdo
  • 0

Tiagotwos

Pergunta

Boa noite pessoal, me desculpe se estou na sessão errada.

 

Estou atrás de um script anti-afk nos trainers, pois o pessoal clica lá e da exit ... e ja tomei ban no otservlist creio eu por este motivo ..

 

uso tfs svn 0.4 , ot versão 8.60

 

os tiles ja estão com o action id 9002 e 9000 aonde é o sqm que o char fica parado treinando, só da para ir para trás, do lado tem paredes e os trainers a frente, queria um script para kikar se caso ele ficasse lá parado durante 30 minutos, ele tem que SAIR do sqm dentro desses 30 min e voltar, se ficar rodando, e etc... ele será kikado do mesmo jeito, teria este script ? obrigado pela atenção desde já !

 

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
  • Diretor

Vá na pasta do seu OT \data\creaturescripts\creaturescript.xml e adiciona essa tag:

<event type="think" name="Idle" event="script" value="idle.lua"/>

Agora em \data\creaturescripts\scripts crie um arquivo chamado idle.lua e cole isto dentro:

local config = {
idleWarning = getConfigValue('idleWarningTime'),
idleKick = getConfigValue('idleKickTime')
}
function onThink(cid, interval)
if(getTileInfo(getCreaturePosition(cid)).nologout or getCreatureNoMove(cid) or
getPlayerCustomFlagValue(cid, PlayerCustomFlag_AllowIdle)) then
return true
end
local idleTime = getPlayerIdleTime(cid) + interval
doPlayerSetIdleTime(cid, idleTime)
if(config.idleKick > 0 and idleTime > config.idleKick) then
doRemoveCreature(cid)
elseif(config.idleWarning > 0 and idleTime == config.idleWarning) then
local message = "You have been idle for " .. math.ceil(config.idleWarning / 60000) .. " minutes"
if(config.idleKick > 0) then
message = message .. ", you will be disconnected in "
local diff = math.ceil((config.idleWarning - config.idleKick) / 60000)
if(diff > 1) then
message = message .. diff .. " minutes"
else
message = message .. "one minute"
end
message = message .. " if you are still idle"
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, message .. ".")
end
return true
end

Para finalizar, agora vai em \data\creaturescripts\scripts\login.lua e adicione isto:

registerCreatureEvent(cid, "Idle")

Para você alterar o tempo do exit, basta você abrir o config.lua e adicionar isto, caso já tenha é so configurar:

idleWarningTime = 9 * 60 * 1000
idleKickTime = 10 * 60 * 1000
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...