Ir para conteúdo
  • 0

Globalevents De Stamina


lucas502

Pergunta

Ola galera blz?

 

Então, já que o meu server tem um bug na stamina (mesmo eu editando o rateStaminaGain no config.lua, a stamina recupera muito lentamente, mas muito mesmo!)

 

Eu pensei em fazer um globalevent que, a cada tanto tempo, adicionasse tanto de stamina pra todos os players.

 

 

Talvez em db.excutequery pra adicionar a stamina, ou algum outro jeito que o pessoal conheça ai, desde que adicione tanto X stamina a tanto X tempo pra todos os players.

 

 

 

Vlw galera. Aguardo!

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Tente combinar a função addEvent() com a setPlayerStamina(cid, minutes), usando algum loop, sla...

To meio ocupado aqui com um script, se não eu faria ;x

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

  • 0

Vai em data/globalevents/scripts, cria um arquivo chamado "stamina" sem as aspas e nele cole:

function onThink(interval, lastExecution, thinkInterval)
local stamina = db.getResult("SELECT `id`, `stamina` FROM `players` WHERE `group_id` <= 2;")
local stamina_hour = 3600000 -- 1 hra de stamina, o tempo é calculado em milesegundos. Exemplo: 1 min = 600000 mileseg.
repeat
if stamina:getID() == -1 then
	break
end
id, stamina_now = stamina:getDataInt("id"), stamina:getDataInt("stamina")
if stamina_now < 151200000 then
	stamina_verifica = 151200000 - stamina_now
	if stamina_verifica < stamina_hour then
		db.executeQuery("UPDATE `players` SET `stamina` = '"..stamina_now+stamina_verifica.."' WHERE `id` == '"..id.."';")
	else
		db.executeQuery("UPDATE `players` SET `stamina` = '"..stamina_now+stamina_hour.."' WHERE `id` == '"..id.."';")
	end
end
until stamina:next() == false
return true
end

 

Agora em globalevents.xml a tag:

<globalevent name="stamina" interval="1800" event="script" value="stamina.lua"/>

 

O interval no xml é o tempo em segundos para executar o script.

O script funciona da seguinte maneira, cada vez que ele executar esta configurado no stamina.lua para ser adicionado 1 hra de stamina pra quem ta offline.

 

Caso seu pedido tenha sido resolvido, reporte para um moderador clicando em "Denunciar" logo abaixo do post para que o tópico seja movido para resolvidos.

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

  • 0

Boa Jhon, sempre tu nos ajudando aqui cara, vlw msmo ;)

 

então, vou testar, se tiver funcionando ou tiver algum problema, eu volto pra reportar o topico

 

Já foi reputado ;)

 

A proposito, eu vi ali que você colocou pra checkar se a stamina está menos do que 42:00 certo?

 

eu ia falar isso, por que se o script sempre adicionasse, não ia ter um limite né?

 

Vlw ;)

 

edit --

 

cara, não sei se foi só comigo, mas agora quando o player morre, a stamina desce pra 0:00 !

 

o.O

 

 

será algum problema no script ou nada a ver? (não tava assim..)

 

e se não for no script, pode ser onde?

 

vlw, aguardo

Link para o comentário
Compartilhar em outros sites

  • 0

Creio que não tenha nada a ver com o script. Ve se em algum creaturescript "onDeath", "prepareDeath" ou "onLogin" tem algum setPlayerStamina ou um doPlayerAddStamina, se tiver, remova, se não tiver então não sei onde pode ser o problema.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...