Postado Janeiro 22, 2018 7 anos Spoiler -- SpellCreator generated. -- =============== COMBAT VARS =============== -- Areas/Combat for 0ms local combat0_Brush = createCombatObject() setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat0_Brush,createCombatArea({{3}})) -- Areas/Combat for 100ms local combat1_Brush = createCombatObject() setCombatParam(combat1_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat1_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat1_Brush,createCombatArea({{3}})) -- Areas/Combat for 200ms local combat2_Brush = createCombatObject() setCombatParam(combat2_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat2_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat2_Brush,createCombatArea({{3}})) -- Areas/Combat for 300ms local combat3_Brush = createCombatObject() setCombatParam(combat3_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat3_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat3_Brush,createCombatArea({{3}})) -- Areas/Combat for 400ms local combat4_Brush = createCombatObject() setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat4_Brush,createCombatArea({{3}})) -- Areas/Combat for 500ms local combat5_Brush = createCombatObject() setCombatParam(combat5_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat5_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat5_Brush,createCombatArea({{3}})) -- Areas/Combat for 600ms local combat6_Brush = createCombatObject() setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat6_Brush,createCombatArea({{3}})) -- Areas/Combat for 700ms local combat7_Brush = createCombatObject() setCombatParam(combat7_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat7_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat7_Brush,createCombatArea({{3}})) -- Areas/Combat for 800ms local combat8_Brush = createCombatObject() setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat8_Brush,createCombatArea({{3}})) -- Areas/Combat for 900ms local combat9_Brush = createCombatObject() setCombatParam(combat9_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat9_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat9_Brush,createCombatArea({{3}})) -- Areas/Combat for 1000ms local combat10_Brush = createCombatObject() setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat10_Brush,createCombatArea({{3}})) -- =============== CORE FUNCTIONS =============== local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part if (isCreature(cid)) then doCombat(cid, c, var) if (dirList ~= nil) then -- Emit distance effects local i = 2; while (i < #dirList) do doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1]) i = i + 2 end end end end function onCastSpell(cid, var) local target = getCreatureTarget(cid) local startPos = getCreaturePosition(cid) RunPart(combat0_Brush,cid,var) doCreatureSetNoMove(target, 1) addEvent(RunPart,100,combat1_Brush,cid,var) addEvent(RunPart,200,combat2_Brush,cid,var) addEvent(RunPart,300,combat3_Brush,cid,var) addEvent(RunPart,400,combat4_Brush,cid,var) addEvent(RunPart,500,combat5_Brush,cid,var) addEvent(RunPart,600,combat6_Brush,cid,var) addEvent(RunPart,700,combat7_Brush,cid,var) addEvent(RunPart,800,combat8_Brush,cid,var) addEvent(RunPart,900,combat9_Brush,cid,var) addEvent(RunPart,1000,combat10_Brush,cid,var) addEvent(doCreatureSetNoMove, 2*1000, target, false) return true end Testa agora, foi um erro meu.
Postado Janeiro 22, 2018 7 anos Autor 17 minutos atrás, Luan Zero disse: Testa assim. Ocultar conteúdo -- SpellCreator generated. -- =============== COMBAT VARS =============== -- Areas/Combat for 0ms local combat0_Brush = createCombatObject() setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat0_Brush,createCombatArea({{3}})) -- Areas/Combat for 100ms local combat1_Brush = createCombatObject() setCombatParam(combat1_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat1_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat1_Brush,createCombatArea({{3}})) -- Areas/Combat for 200ms local combat2_Brush = createCombatObject() setCombatParam(combat2_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat2_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat2_Brush,createCombatArea({{3}})) -- Areas/Combat for 300ms local combat3_Brush = createCombatObject() setCombatParam(combat3_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat3_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat3_Brush,createCombatArea({{3}})) -- Areas/Combat for 400ms local combat4_Brush = createCombatObject() setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat4_Brush,createCombatArea({{3}})) -- Areas/Combat for 500ms local combat5_Brush = createCombatObject() setCombatParam(combat5_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat5_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat5_Brush,createCombatArea({{3}})) -- Areas/Combat for 600ms local combat6_Brush = createCombatObject() setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat6_Brush,createCombatArea({{3}})) -- Areas/Combat for 700ms local combat7_Brush = createCombatObject() setCombatParam(combat7_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat7_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat7_Brush,createCombatArea({{3}})) -- Areas/Combat for 800ms local combat8_Brush = createCombatObject() setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat8_Brush,createCombatArea({{3}})) -- Areas/Combat for 900ms local combat9_Brush = createCombatObject() setCombatParam(combat9_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat9_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat9_Brush,createCombatArea({{3}})) -- Areas/Combat for 1000ms local combat10_Brush = createCombatObject() setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL) setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE) setCombatArea(combat10_Brush,createCombatArea({{3}})) -- =============== CORE FUNCTIONS =============== local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part if (isCreature(cid)) then doCombat(cid, c, var) if (dirList ~= nil) then -- Emit distance effects local i = 2; while (i < #dirList) do doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1]) i = i + 2 end end end end function onCastSpell(cid, var) local target = getCreatureTarget(cid) local function No_Move_Target() if isCreature(target) then doCreatureSetNoMove(target, 0) end return TRUE end local startPos = getCreaturePosition(cid) RunPart(combat0_Brush,cid,var) doCreatureSetNoMove(target, 1) addEvent(RunPart,100,combat1_Brush,cid,var) addEvent(RunPart,200,combat2_Brush,cid,var) addEvent(RunPart,300,combat3_Brush,cid,var) addEvent(RunPart,400,combat4_Brush,cid,var) addEvent(RunPart,500,combat5_Brush,cid,var) addEvent(RunPart,600,combat6_Brush,cid,var) addEvent(RunPart,700,combat7_Brush,cid,var) addEvent(RunPart,800,combat8_Brush,cid,var) addEvent(RunPart,900,combat9_Brush,cid,var) addEvent(RunPart,1000,combat10_Brush,cid,var) addEvent(doCreatureSetNoMove, 2*1000, target, false) return true end em vez desse pode me mandar um script que apareça o effect de numero 58 no player e ele fique parado por 2 seg? seria de grande ajuda!
Postado Janeiro 22, 2018 7 anos Spoiler local tempo = 2 -- tempo do paralyze em segundos local effect = 58 -- efeito que vai sair ao redor do player local exausted = 8 -- exhausted em segundos local storage = 13098 -- storage do exausted local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_SPEED, -5000) function onCastSpell(cid, var) local target = getCreatureTarget(cid) local function Efect() if not isCreature(target) then return true end local positions = { [1] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [2] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [3] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [4] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [5] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [6] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [7] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [8] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z} } for i=1, #positions do if isWalkable(positions) then doSendMagicEffect(positions, effect) end end end local function No_Move_Target() if isCreature(target) then doCreatureSetNoMove(target, 0) end return TRUE end if isPlayer(cid) and exhaustion.check(cid, storage) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar novamente.") return false end exhaustion.set(cid, storage, exausted) doCreatureSetNoMove(target, 1) doAddCondition(target, condition) addEvent(No_Move_Target, tempo*1000) local t = 0 while t <= tempo*1000 do addEvent(Efect, t) t = t+300 end return true end pronto
Postado Janeiro 22, 2018 7 anos Autor 3 minutos atrás, Luan Zero disse: Ocultar conteúdo local tempo = 2 -- tempo do paralyze em segundos local effect = 58 -- efeito que vai sair ao redor do player local exausted = 8 -- exhausted em segundos local storage = 13098 -- storage do exausted local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_SPEED, -5000) function onCastSpell(cid, var) local target = getCreatureTarget(cid) local function Efect() if not isCreature(target) then return true end local positions = { [1] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [2] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [3] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [4] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [5] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [6] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [7] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}, [8] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z} } for i=1, #positions do if isWalkable(positions) thendoSendMagicEffect(positions, effect)endendend local function No_Move_Target()if isCreature(target) thendoCreatureSetNoMove(target, 0)endreturn TRUEend if isPlayer(cid) and exhaustion.check(cid, storage) == TRUE thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar novamente.")return falseend exhaustion.set(cid, storage, exausted)doCreatureSetNoMove(target, 1)doAddCondition(target, condition)addEvent(No_Move_Target, tempo*1000)local t = 0while t <= tempo*1000 doaddEvent(Efect, t)t = t+300endreturn trueend pronto Funcionou só não está saindo o effect
Postado Janeiro 22, 2018 7 anos 8 minutos atrás, samuelandrade45 disse: Funcionou só não está saindo o effect O effect é para sair no target? Ou em você?
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.