ME

[Function]Doremovecreatureinseconds(Cid, Seconds)

Por meubk, 14 de fev. de 2011 em Mods, funções e outros

otserv
tibia
script
12
3.3k
meubkM
14 de fevereiro de 2011 às 22:18

Função feita por min que kicka o player de acordo com os segundos :

 

function doRemoveCreatureInSeconds(cid, seconds)

if type(seconds) ~= "number" then return print("[ERROR] Seconds is not a number.") end
if seconds < 0 then seconds = 1 end
if seconds == 1 then
	return doRemoveCreature(cid)
else
	for i = 1, seconds do
		x = seconds - i
		if i == 1 and x ~= 0 then
			doPlayerSendTextMessage(cid, 27, "You will be kicked in ".. x .. " seconds.")
		elseif i <= seconds and i ~= 1 and x ~= 0 then
			addEvent(doPlayerSendTextMessage, i * 1000, cid, 27, "You will be kicked in ".. x .. " seconds.")
		end
	end
	addEvent(doRemoveCreature, 1000*seconds, cid)
end

return true
end

 

Exemplo de uso :

 

function onSay(cid, words, param, channel)

doRemoveCreatureInSeconds(cid, 10)

return true
end

 

Resultado :

 

22:16 You will be kicked in 9 seconds.

22:16 You will be kicked in 8 seconds.

22:16 You will be kicked in 7 seconds.

22:16 You will be kicked in 6 seconds.

22:16 You will be kicked in 5 seconds.

22:16 You will be kicked in 4 seconds.

22:16 You will be kicked in 3 seconds.

22:16 You will be kicked in 2 seconds.

22:16 You will be kicked in 1 seconds.

 

Para usar ao logar segue o tuto..

 

Cooldown para logar.

Editado Fevereiro 15 por xotservx

Henrique MouraH
14 de fevereiro de 2011 às 22:25

Legal mesmo se fosse implantado no sistema de logout, modificando as sources ou algo do tipo. Pra quem não entendeu minha ideia, é só observar os outros mmo's. Você clica para efetuar logout e inicia-se um countdown. Ou também um sistema afk/kick, bot kick etc. Realmente bem útil.

 

Abraços.

 

 

meubkM
14 de fevereiro de 2011 às 22:35

Bela idéia henrique mais preferia algo mais simples em lua mesmo, Obrigado.

Saymon14S
15 de fevereiro de 2011 às 07:42

sabe o que é mais legal nela é que ela é bem simples, muito bom

 

Abraços

15 de fevereiro de 2011 às 10:35

Mt boa a ideia, mt simples o script e é de bastante uso.

 

 

Ótimo ;)

 

Abços.

15 de fevereiro de 2011 às 16:50

aonde eu coloco isso? desculpa a ignorancia

EskyloE
15 de fevereiro de 2011 às 18:26

Legal mesmo se fosse implantado no sistema de logout, modificando as sources ou algo do tipo. Pra quem não entendeu minha ideia, é só observar os outros mmo's. Você clica para efetuar logout e inicia-se um countdown. Ou também um sistema afk/kick, bot kick etc. Realmente bem útil.

 

Abraços.

 

 

 

 

É possível fazer isso por lua! Dá pra criar um creaturescript de logout que use essa função e retorne falso! ;) Vou deixar a idéia para vocês tentarem e por que estou com preguiça ocupado.

meubkM
15 de fevereiro de 2011 às 20:01

Dito e feito Eskylo.

 

Cooldown para logar.

1 mês depois...
04 de março de 2011 às 19:32

Se o player fizer logout ou morrer durante a função enche o console de erros, e no fundo pode dar um lag...

Henrique MouraH
04 de março de 2011 às 20:07

Da pra fazer o player não atacavel?

VodkartV
04 de março de 2011 às 20:15

acho que dá sim,fazendo algo com storage ;X

e tbm usando base no onCombat(cid, target)

 

ex:

     if (getPlayerStorageValue(target, STORAGE) >= os.time()) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUMAYNOTATTACKTHISPLAYER)  
        ...

Editado Março 4 por Vodkart

BryanModestoB
06 de março de 2011 às 22:22

Muito bom cara, gostei bem pensado

:D