Postado Maio 11, 2018 7 anos Queria uma spell que ao usa-la apareça x effect no player por 30 seg (esse também sera o tempo da spell, quanto vai durar), e o char fique totalmente paralisado sem poder se mover ou usar spells e que a vida do player fique se regenerando x quantidade de hp a cada 2 seg, 30 seg como falei sera o tempo de duração da spell quando os 30 segundos acabarem o effect desaparece e o player volta a usar spells, movimentar-se normalmente e a regeneração acaba. quem poder me ajudar agradeço
Postado Maio 11, 2018 7 anos Armei essa gambiarra aqui : local function LoopEff(time2, time3, uid, effect, position, health) if isCreature(uid) then for i= 1, #effect do local position = {x = getCreaturePosition(uid).x, y = getCreaturePosition(uid).y, z = getCreaturePosition(uid).z } doSendMagicEffect(position, effect[i]) doCreatureAddHealth(uid, health) end end end function doLoopEffect(uid, effect, time, position, health) local time2 = 0 while (time2 ~= (time*1000)) do addEvent(LoopEff, time2, time2, time3, uid, effect, position) time2 = time2 + 300 end return true end function onCastSpell(cid, var) local effect = 200 -- Efeito local time = 30 -- em segundos local health = 200 -- Quanto ganhará de vida em aproximadamente alguns segundos quebrados if isPlayer(cid) then doLoopEffect(cid, effect, time, getCreaturePosition(cid), health) doCreatureSetNoMove(cid, true) addEvent(doCreatureSetNoMove, time * 1000, cid, false) return true end return true end
Postado Maio 12, 2018 7 anos Autor @Sttorm deu esse probleminha aqui: [11/05/2018 21:01:13] [Error - Spell Interface] [11/05/2018 21:01:13] In a timer event called from: [11/05/2018 21:01:13] data/spells/scripts/minato/lvl3.lua:onCastSpell [11/05/2018 21:01:13] Description: [11/05/2018 21:01:14] data/spells/scripts/minato/lvl3.lua:5: attempt to get length of local 'effect' (a number value) [11/05/2018 21:01:14] stack traceback: [11/05/2018 21:01:14] data/spells/scripts/minato/lvl3.lua:5: in function <data/spells/scripts/minato/lvl3.lua:1>
Postado Maio 16, 2018 7 anos function repeatEff(cid, eff, tempo, health) local pos = {x = getCreaturePosition(cid).x + 0, y = getCreaturePosition(cid).y + 0, z = getCreaturePosition(cid).z} if not isCreature(cid) or tempo == 0 then return end doSendMagicEffect(pos, eff) doCreatureAddHealth(cid, health) addEvent(repeatEff, 1000, cid, eff, tempo-1) end function onCastSpell(cid, var) local eff = 7 -- Efeito local tempo = 30 -- em segundos local health = 200 -- Quanto ganhará de vida em aproximadamente alguns segundos quebrados if isPlayer(cid) then doCreatureSetNoMove(cid, true) repeatEff(cid, eff, tempo, health) addEvent(doCreatureSetNoMove, tempo * 1000, cid, false) return true end return true end
Postado Maio 16, 2018 7 anos Autor @Sttorm a spell funcionou sem erros porém quando eu uso a spell o hp heala apenas 1 vez eu queria que o player ficasse healando o hp de 2 em 2 seg até o tempo da spell acabar, o char ficou paralisado mais ainda da pra usar os atacks eu queria que tb n fosse possivel usar atacks até o tempo da spell acabar
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.