Ir para conteúdo
  • Cadastre-se

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


Ir para solução Resolvido por FlavioHulk,

Posts Recomendados

Salve galera bom eu e um amigo meu editamos um script e aparentemente esta funcionando normalmente porém tem um problema o efeito da storage não ta saindo no time correto e o efeito do addevent - magiceffect ta saindo antes do time correto.

 

O magic effect e a config.storage tem que durar 10 segundos porém a storage esta durando mais e o effect esta saindo bem antes do time acabar

 

Script

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()
 if isCreature(cid) then
 local pos = {x=getPlayerPosition(cid).x+2, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}	
				doSendMagicEffect(pos, config.effect)
				setPlayerStorageValue(cid, config.storage, os.time() + config.duration)
end
end, 1000*i)
end
doPlayerSendTextMessage(cid, 27, "Seu kaiten vai durar ".. config.duration .." segundos.")
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

Alguém poderia dar uma analisada eu não consegui entender onde esta o problema

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
  • 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 ?

Cara, não entendi bem... O efeito tem que durar 10 segundos ou sair após 10 segundos? Porque seu addEvent ali, você tá multiplicando o i * 1000, e tá acontecendo que o effect tá saindo a cada segundo durante 10 segundos...
E seu cooldown está de 20 segundos no config, o que não baterá com os 10 segundos do effect...

Você está utilizando uma storage dentro do addEvent, e utilizando outra storage para check de time.

Link para o post
Compartilhar em outros sites

@FlavioHulk isso eu quero que o effect fique se repitindo durante 10 segundos e a config.storage dure 10 segundos ai tem a storage pra chegar o cooldown de 20 segundos pra poder usar a spell novamente porém o magic effect dura menos que 10 segundos e a config.storage dura mais que 10 segundos a storage de check a cooldown ta funcionando normalmente

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
}

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

@FlavioHulk 

[18/10/2018 14:31:55] [Error - LuaScriptInterface::loadFile] data/spells/scripts/nejins/controle/kaiten def.lua:25: 'end' expected (to close 'function' at line 8) near 'else'
[18/10/2018 14:31:55] [Warning - Event::loadScript] Cannot load script (data/spells/scripts/nejins/controle/kaiten def.lua)
[18/10/2018 14:31:55] data/spells/scripts/nejins/controle/kaiten def.lua:25: 'end' expected (to close 'function' at line 8) near 'else'

 

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

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

    96851
    Tópicos
    519617
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo