Ir para conteúdo
Propaganda

Posts Recomendados

Boa noite, amigos!

Estou criando um servidor poketibia com meus amigos e estamos tendo dificuldade em criar um código.

o código precisa funcionar desta forma: criar um teleport em que o player somente poder entrar nele a cada 24 horas.

Alguém poderia nos ajudar com isso?

Link para o comentário
https://tibiadevs.com/forums/topic/197-boss-24-horas/
Compartilhar em outros sites

  • Administrador
Agora, Surts disse:

Boa noite, amigos!

Estou criando um servidor poketibia com meus amigos e estamos tendo dificuldade em criar um código.

o código precisa funcionar desta forma: criar um teleport em que o player somente poder entrar nele a cada 24 horas.

Alguém poderia nos ajudar com isso?

Movido para a área correta, e aprovado !

  • Like 1
Link para o comentário
https://tibiadevs.com/forums/topic/197-boss-24-horas/#findComment-844
Compartilhar em outros sites

Adiciona o ActionId no teleport
Coloca a tag em movements.xml

<movevent type="StepIn" actionid="20000" event="script" value="boss24h.lua"/>

Cria um arquivo em movements boss24h.lua e coloca o script dentro

local config = {
    pos = {x=100, y=100, z=7},
    time = 24, -- o tempo aqui é em horas, então 24 = 24horas
    storage = 99999,
}

function onStepIn(cid, item, position, fromPosition)
    if isMonster(cid) then
        return false
    end
    if getPlayerStorageValue(cid, config.storage) >= os.time() then
        doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
        doPlayerPopupFYI(cid, "Você só pode usar o Portal novamente em " .. os.date("%d %B %Y %X ", getPlayerStorageValue(cid, config.storage)) .. ".")
        return false
    end
    doTeleportThing(cid, config.pos)
    setPlayerStorageValue(cid, config.storage, os.time() + config.time * 60 * 60)
    return true
end

 

Editado por conexaodemafia
a tag estava errada
  • Thanks 1
Link para o comentário
https://tibiadevs.com/forums/topic/197-boss-24-horas/#findComment-846
Compartilhar em outros sites

Muito obrigada pela contribuição!

Update:

Conseguimos usar o script e adaptá-lo muito bem sobre a parte dos horários que nós estávamos bem confusos sobre. 

Nota 10/10.

Link para o comentário
https://tibiadevs.com/forums/topic/197-boss-24-horas/#findComment-858
Compartilhar em outros sites

O cara fez o script para você, que está usando uma versão inferior do TFS 0.x. Recomendo que você poste informações sobre o seu servidor e qual versão está utilizando. Assim, poderemos ajudá-lo mais facilmente. Eu notei que você mencionou em outro lugar que estava usando o TFS 1.2 Pota, Então, peguei o script do cara e adaptei para o TFS 1.x+.

 

local config = {
    pos = {x=100, y=100, z=7},
    time = 24, -- o tempo aqui é em horas, então 24 = 24 horas
    storage = 99999,
}

function onStepIn(cid, item, position, fromPosition)
    local player = Player(cid)
    
    if isMonster(cid) then
        return false
    end
    
    if player:getStorageValue(config.storage) >= os.time() then
        doTeleportThing(cid, player:getTown():getTemplePosition())
        player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Você só pode usar o Portal novamente em " .. os.date("%d %B %Y %X ", player:getStorageValue(config.storage)) .. ".")
        return false
    end
    
    doTeleportThing(cid, config.pos)
    player:setStorageValue(config.storage, os.time() + config.time * 60 * 60)
    return true
end

 

<movevent type="StepIn" actionid="20000" script="boss24h.lua"/>

Sobre a tag XML, repare que existe apenas 'value' e 'event' nas versões TFS 0.x e inferiores. O correto é usar a tag sem 'value' e 'event'. Basta apagar os dois, e o script estará funcionando normalmente! Espero ter ajudado.

  • Thanks 1
Link para o comentário
https://tibiadevs.com/forums/topic/197-boss-24-horas/#findComment-870
Compartilhar em outros sites

Próxima vez tomarei cuidado e adicionarei a versão.

Muito obrigada pela contribuição e pelas diferenças de escrever as versões! 🙂

  • Haha 1
Link para o comentário
https://tibiadevs.com/forums/topic/197-boss-24-horas/#findComment-873
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
  • Criar Novo...