Ir para conteúdo
  • Cadastre-se

(Resolvido)[Spell] Addevent - MagicEffect acabando antes do time


Ir para solução Resolvido por FlavioHulk,

Posts Recomendados

  • Solução
local config = {
	cooldown = 20, -- tempo entre uma magia e outra
	duration = 10, --- duração
	storage = 3482101,
	effect = 34 --- efeito que vai sair
}

function onCastSpell(cid, var)
	if os.time() - getPlayerStorageValue(cid, 55695) >= config.cooldown then
		setPlayerStorageValue(cid, 55695, os.time())
		for i = 1, config.duration do
			addEvent(function(cid, effect)
				 if not isCreature(cid) then
				 	return false
				 end

				local pos = {x=getPlayerPosition(cid).x+2, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
				doSendMagicEffect(pos, effect)
			end, 1000 * i, cid, config.effect)
		end
		doPlayerSendTextMessage(cid, 27, "Seu kaiten vai durar ".. config.duration .." segundos.")
		setPlayerStorageValue(cid, config.storage, os.time() + config.duration)
	else
		doPlayerSendChannelMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Voce tem que esperar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, 55695))).." segundos para usar novamente.", TALKTYPE_CHANNEL_O, CHANNEL_SPELL)
		return false
	end
    return true
end

 

Link para o post
Compartilhar em outros sites
  • Respostas 13
  • Created
  • Última resposta

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Popular Posts

local config = { cooldown = 20, -- tempo entre uma magia e outra duration = 10, --- duração storage = 3482101, effect = 34 --- efeito que vai sair } function onCastSpell(cid, var) if os.time() - getPlayerStorageValue(cid, 55695) >= config.cooldown then setPlayerStorageValue(cid, 55695, os.time()) for i = 1, config.duration do addEvent(function(cid, effect) if not isCreature(cid) then return false end local pos = {x=getPlayerPosition(cid).x+2, y=getPlayerPosit

local config = { cooldown = 20, -- tempo entre uma magia e outra duration = 10, --- duração storage = 3482101, effect = 34 --- efeito que vai sair } local function effect(cid) if not isCreature(cid) or getPlayerStorageValue(cid, config.storage) - os.time() <= 0 then return LUA_ERROR end local pos = {x=getPlayerPosition(cid).x+2, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(pos, config.effect) addEvent(effect, 400, cid) end fu

@Vodkart amostradinho, tomou meu brilho ?

@FlavioHulk funcionou perfeitamente só uma coisa tem como colocar pra aumentar a velocidade com que aparece o magic effect tipo ta de 1 em 1 segundo gostaria de aumentar a velocidade com que aparece ele ... se for muito trabalhoso deixa queto ^^ 

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Link para o post
Compartilhar em outros sites

@FlavioHulk sim, para o magic effect aparecer mais vezes eu tentei diminuir o 1000 * i, cid, config.effect) porém ao diminuir faz com que o magic effect fique por menos tempo aparecendo no caso eu mudei pra 600 que é a velocidade que eu precisava.

 

Exemplo: no caso ta 1000 ai o magic effect aparece termina a animação e some ai aparece quase logo em seguida porém tem uma lacuna nesse meio tempo que fica sem nada com a velocidade 600 no caso ele fica aparecendo constantemente porém diminui o tempo que ele fica ou seja ele fica menos que 10 segundos aparecendo

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Link para o post
Compartilhar em outros sites
local config = {
	cooldown = 20, -- tempo entre uma magia e outra
	duration = 10, --- duração
	storage = 3482101,
	effect = 34 --- efeito que vai sair
}
			local function effect(cid)
				 if not isCreature(cid) or getPlayerStorageValue(cid, config.storage) - os.time() <= 0  then
				 	return LUA_ERROR
				 end
				local pos = {x=getPlayerPosition(cid).x+2, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
				doSendMagicEffect(pos, config.effect)
				addEvent(effect, 400, cid)
			end
function onCastSpell(cid, var)
	if os.time() - getPlayerStorageValue(cid, 55695) >= config.cooldown then
		setPlayerStorageValue(cid, 55695, os.time())
		doPlayerSendTextMessage(cid, 27, "Seu kaiten vai durar ".. config.duration .." segundos.")
		setPlayerStorageValue(cid, config.storage, os.time() + config.duration)
		effect(cid)
	else
		doPlayerSendChannelMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Voce tem que esperar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, 55695))).." segundos para usar novamente.", TALKTYPE_CHANNEL_O, CHANNEL_SPELL)
		return false
	end
    return true
end

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Estatísticas dos Fóruns

    96850
    Tópicos
    519614
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo