House Clean

Vodkart
em Globalevents e Spells

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

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>

bossisg.png

Demonbholder

avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 13/10/08Posts: 1551Char no Tibia: Demonbholder

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.

Oie :D

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

hmmmm valeu por avisar, vou remover aquela linha já '-'

abraços

bossisg.png

joao33

avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 24/01/11Posts: 254Char no Tibia: Zemekiz

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"/>

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

@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

bossisg.png

Beeki

Ex-Coordenador XDev
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 12/03/11Posts: 1900Gênero: MasculinoChar no Tibia: Nokte

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

Fabio Augustus - Infraestrutura

Skype: guhsvasc

Demonbholder

avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 13/10/08Posts: 1551Char no Tibia: Demonbholder

quem sabe vc lê o meu post

Oie :D

noobprego

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 29/11/08Posts: 36Char no Tibia: Elmon Ledius

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.

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

Obrigado amigo, acho que o fórum que bugou, outra coisa é que é pra direita em vez da esquerda o "/"

vlw

bossisg.png

Demonbholder

avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 13/10/08Posts: 1551Char no Tibia: Demonbholder

eu não lembro bem como é pra fechar a tag (e to com preguiça de ver aqui), mas com certeza o \ ou / não fica dentro da string do nome do arquivo.

Oie :D

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

que eu saiba a barra tem um padrão, e é para direita

bossisg.png

Demonbholder

avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 13/10/08Posts: 1551Char no Tibia: Demonbholder

acho que é isso mesmo

Oie :D

cs007

Vim de longe
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 10/07/08Posts: 574Gênero: MasculinoChar no Tibia: Hebi Of Amera

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

Rajas

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 30/12/07Posts: 132Gênero: MasculinoChar no Tibia: Hannibol

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

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

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?

bossisg.png