Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

Salve galerinha do TK.
Hoje vim trazer um script muito útil e buscado hoje em dia nos otservers, é o sistema de !eject.
Como funciona ?

Caso o player fica X dias sem logar (configurável) qualquer outro jogador pode chegar na porta da house dizendo o comando !eject, então a house ficará sem dono e em seugida o player poderá compra-la normalmente, dizendo !buyhouse.

 

É um sript simples e que poderá dar lugar e novas houses a jogadores novos, expulsando os jogadores que não logam mais no seu servidor.

Nota: o script é vendido em uma "empresa" de open tibia onde estou colocando os créditos , disponibilizando aqui minha adaptação e o scrpit para vocês, achou errado? não gostou? ENTÃO COMPRA LÁ =p

Vamos ao que interessa;

 

Abra sua pasta talkactions/scripts e dentro dela crie um arquivo .lua com o nome de: expulse_house.lua e dentro coloque:

function onSay(cid, words, param)
    local position = getPlayerPosition(cid)

    if getPlayerLookDir(cid) == 0 then
        positions = {x=position.x, y=position.y-1, z=position.z}
    elseif getPlayerLookDir(cid) == 1 then
        positions = {x=position.x+1, y=position.y, z=position.z}
    elseif getPlayerLookDir(cid) == 2 then
        positions = {x=position.x, y=position.y+1, z=position.z}
    elseif getPlayerLookDir(cid) == 3 then
        positions = {x=position.x-1, y=position.y, z=position.z}
    end

    if getHouseFromPos(positions) == false then
        doPlayerSendTextMessage(cid, 27, "Voce precisa estar na frente a porta da casa para usar o comando.")
    return true
    end

    local days = 5*24*60*60
    local own = getHouseOwner(getHouseFromPos(positions))
    local qry = db.getResult("SELECT `lastlogin` FROM `players` WHERE `id` = "..own)
    
    if(qry:getID() ~= -1) then
        last = tonumber(qry:getDataInt("lastlogin"))
        if last < os.time() - days then
            setHouseOwner(getHouseFromPos(positions), NO_OWNER_PHRASE,true)
            doPlayerSendTextMessage(cid, 27, "A Casa agora esta sem dono, você ou outro jogador pode compra-la")
        end
        if last > os.time() - days then
            doPlayerSendTextMessage(cid, 27, "O proprierário desta casa ainda está ativo no servidor, tente outra casa.")
        end
    end
    return true
end

Pós ter feito isto, abra o seu arquivo talkactions.xml e coloque debaixo de uma linha qualquer a seguinte linha:

<talkaction words="!eject" event="script" value="expulse_house.lua"/>

Pronto. basta o player chegar na porta da casa e dizer !eject, caso o jogador esteja a 5 dias sem logar, os items do antigo dono irão para o DEPOT e a casa ficará sem dono.

 

 

@Configuração do script:

  local days = 5*24*60*60

Onde está o número 5 é o tanto de dias que o player tem que ficar sem logar para outro jogador executar o comando.

 

 

Para alterar para 3 dias, ficaria como exemplo:

    local days = 3*24*60*60

E assim sucessivamente.

 

 

Qualquer dúvida não deixe de me comunicar, estarei disposto a ajuda-lo.

 

 

 

 

Créditos:

Keilost

  • Respostas 41
  • Visualizações 14.9k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Salve galerinha do TK. Hoje vim trazer um script muito útil e buscado hoje em dia nos otservers, é o sistema de !eject. Como funciona ? Caso o player fica X dias sem logar (configurável) qualqu

  • luanluciano93
    luanluciano93

    Perfeito, eu sempre procurei um script assim, reputado!

  • Muito bom, está de parabéns mesmo!!! Quanto a remover o tópico, nem adianta mais meu caro, já tem 151 visualizações, já foi espalhado, raramente será comprado! 

Posted Images

Postado

Muito bom,assim vai dar oportunidade para os outros players comprarem as houses caso o player dono de uma house fique inativo no servidor.Obrigado por trazer o conteúdo ! ^^

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.6k

Informação Importante

Confirmação de Termo