Ir para conteúdo

House Clean


Vodkart

Posts Recomendados

Descrição: É para deletar house de players inativos, ou seja, o player que não loga em "X" dias perde a sua house!

 

 

 

houseclean.lua

function onTimer()
local days = 15*24*60*60
doSaveServer()
local query = db.getResult("SELECT `owner`,`id` FROM `houses`;")
if (query:getID() ~= -1) then
while true do
local own,houseid = query:getDataInt("owner"),query:getDataInt("id")
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(houseid, NO_OWNER_PHRASE,true)
end
end
if not(query:next()) then
break
end
end
query:free()
end
return true
end

 

globalevents.xml

<globalevent name="HouseClean" time="03:00" event="script" value="houseclean.lua"/>

 

na tag está para executar o script as 3 da manhã se quiser alterar só mudar essa parte:

 

time="03:00"

 

para configurar os dias que o player que não logar em "X" dias É aqui:

 

local days = 15*24*60*60

 

no caso está para o jogador que não logar em 15 dias perder a house.</globalevent>

Editado por Vodkart
Link para o comentário
Compartilhar em outros sites

haha, fizemos um script semelhante no globalwar esses tempos.

 

quando vc usa a função setHouseOwner(houseid, 0, true) vc não precisa usar o cleanHouse(houseid), porque o true da função setHouseOwner faz os itens da casa irem para o dp do antigo dono.

 

enfim, parabéns pelo código, falo.

Link para o comentário
Compartilhar em outros sites

Vodkart o meu distro é tfs 0.4 ( acho q isso)

 

ele da error no globalevents.xml quando eu adiciono esse script caso eu ponha assim sera que funciona?

 

 

<globalevent name="houseclean" type="start" event="script" value="houseclean.lua"/>

Link para o comentário
Compartilhar em outros sites

@up

 

mas nesse caso só vai executar o script quando o server abrir

 

tenta colocar o por interval mesmo então, n esquece de mudar a função main no script

 

abraços

Link para o comentário
Compartilhar em outros sites

Tiago é possível fazer um script mande os itens pra o depot do antigo dono? assim evitando prejuízos e players revoltados.

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

Ficou com um erro na sintaxe amigo.

 

 

<globalevent name="HouseClean" time="03:00" event="script" value="houseclean.lua">

Aqui faltou fechar a função:

 

<globalevent name="HouseClean" time="03:00" event="script" value="houseclean.lua\">

Tirando isso ficou ótimo.

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Belo script vou testar aqui vê se vai pegar certinho...Valeu Vodkart =)

 

Uma pequena duvida..Eu tenho um script que limpa players, account, itens e tals,,,so que ele só pega quando liga, se eu quiser por ele para rodar com um horario igual esse da house eu posso? Valeu

Editado por cs007
Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

Belo script vou testar aqui vê se vai pegar certinho...Valeu Vodkart =)

 

Uma pequena duvida..Eu tenho um script que limpa players, account, itens e tals,,,so que ele só pega quando liga, se eu quiser por ele para rodar com um horario igual esse da house eu posso? Valeu

 

sim, pode.

 

 

uma ideia quando execulta o script bem que podia kickar todos os players que estive online menos os da staff

 

qual a finalidade disso?

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...