Ir para conteúdo
  • 0

Piso especial..


Lumus

Pergunta

Galera, tudo bom?

 

Preciso de um piso que enquanto o player estiver em cima dele, ele vai recebendo uma quantia aleatória de mana entre 1 e 25... neste mesmo piso, ele vai recuperando pontos de stamina(menos a bônus)... se for possível é claro!

 

Uso tfs 1.1. Grato.

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Funcionou em partes.

 

Ao sair do piso continua enchendo a mana o.O achei estranho porque tem o stepout.

 

Teria como(se possível é claro) colocar pra mostrar a quantia que está sendo curada?

 

@EDIT

Caraleo: BUGOU geral....

 

qualquer player tá recebendo a mana, o cara pode ta em outra cidade e ta recebendo a mana o.O

 

@EDIT2

Se o mlk deslogar com o efeito da mana curando, da bug e o ot fecha. -> creio que é só por no logout. Mas caso ele for banido, não terá como de qualquer forma ele deslogará.

Tento ctz que agora funciona:

local config = {
	minimo = 1, -- Recuperação mínima de mana
	maximo = 25, -- Recuperação máxima de mana
	stamina = 1, -- Minutos de stamina a serem recuperados
	tempo = 10 -- Tempo em segundos da recuperação fica se repetindo
}

function Player.autoRege(self)
	if self:getStamina() < 2400 then
		self:setStamina(self:getStamina() + config.stamina)
	end
	
	if self:getMana() ~= self:getMaxMana() then
		self:addMana(math.random(config.minimo, config.maximo))
	end
	self:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE)
	event = addEvent(function() self:autoRege() end, config.tempo* 1000)
end
 
function onStepIn(creature, item, position, fromPosition)
	if not creature:isPlayer() then
		return false
	end
	creature:autoRege()
	return true
end
 
function onStepOut(creature, item, position, fromPosition)
	if not creature:isPlayer() then
		return false
	end
	return stopEvent(event)
end
Link para o comentário
Compartilhar em outros sites

  • 0

Agora sim 100%

 

A msg não teve como colocar?

Está ai um exemplo com mensagem:

local config = {
	minimo = 1, -- Recuperação mínima de mana
	maximo = 25, -- Recuperação máxima de mana
	stamina = 1, -- Minutos de stamina a serem recuperados
	tempo = 10 -- Tempo em segundos da recuperação fica se repetindo
}

function Player.autoRege(self)
	if self:getStamina() < 2400 then
		self:setStamina(self:getStamina() + config.stamina)
	end
	
	local mana = math.random(config.minimo, config.maximo)
	if self:getMana() ~= self:getMaxMana() then
		self:addMana(mana)
		self:say(mana, TALKTYPE_MONSTER_SAY)
		self:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE)
	end
	event = addEvent(function() self:autoRege() end, config.tempo* 1000)
end
 
function onStepIn(creature, item, position, fromPosition)
	if not creature:isPlayer() then
		return false
	end
	creature:autoRege()
	return true
end
 
function onStepOut(creature, item, position, fromPosition)
	if not creature:isPlayer() then
		return false
	end
	return stopEvent(event)
end
Tópico movido para a seção de dúvidas e pedidos resolvidos. Editado por Bruno Minervino
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...