Postado Março 8, 2021 4 anos Autor 2 horas atrás, 139 disse: Coloca isso na linha acima do return(doCombat...): local rng = math.random(0, 1) local pos = getCreaturePosition(target) local toposA = {x = pos.x + rng-1, y = pos.y + rng, z = pos.z} local toposB = {x = pos.x + rng, y = pos.y + rng-1, z = pos.z} doSendDistanceShoot(pos, toposA, 41) doSendDistanceShoot(pos, toposB, 41) local misseis = 5 -- quantidade de misseis local delay = 100 -- tempo entre o disparo de cada missel (milisegundos) local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -78.2, 1, -88.2, 1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 41) function onTargetCreature(cid, target) for i = 1, misseis do addEvent(function() if isCreature(cid) and isCreature(target) then doCombat(cid, combat2, {type = 2, pos = getCreaturePosition(target)}) end end, delay*i) end end setCombatCallback(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature") function onCastSpell(cid, var) local waittime = 2 -- Tempo de exhaustion local storage = 1000600 if exhaustion.check(cid, storage) then return false end local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z} doSendMagicEffect(position1, 250) exhaustion.set(cid, storage, waittime) local rng = math.random(0, 1) local pos = getCreaturePosition(target) local toposA = {x = pos.x + rng-1, y = pos.y + rng, z = pos.z} local toposB = {x = pos.x + rng, y = pos.y + rng-1, z = pos.z} doSendDistanceShoot(pos, toposA, 41) doSendDistanceShoot(pos, toposB, 41) return doCombat(cid, combat, var) end Agora os mísseis não estão saindo
Postado Março 9, 2021 4 anos Em 06/03/2021 em 19:35, 139 disse: local misseis = 5 -- quantidade de misseis local delay = 100 -- tempo entre o disparo de cada missel (milisegundos) local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -78.2, 1, -88.2, 1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 41) function onTargetCreature(cid, target) for i = 1, misseis do addEvent(function() if isCreature(cid) and isCreature(target) then doCombat(cid, combat2, {type = 2, pos = getCreaturePosition(target)}) end end, delay*i) end end setCombatCallback(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature") function onCastSpell(cid, var) local waittime = 2 -- Tempo de exhaustion local storage = 1000600 if exhaustion.check(cid, storage) then return false end local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z} local position2 = {x=getCreaturePosition(cid).x+3, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} doSendMagicEffect(position1, 106) doSendMagicEffect(position2, 189) exhaustion.set(cid, storage, waittime) return doCombat(cid, combat, var) end local misseis = 5 -- quantidade de misseis local delay = 1 -- tempo entre o disparo de cada missel (milisegundos) local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -78.2, 1, -88.2, 1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 41) function onTargetCreature(cid, target) for i = 1, misseis do addEvent(function() if isCreature(cid) and isCreature(target) then doCombat(cid, combat2, {type = 2, pos = getCreaturePosition(target)}) end end, delay*i) end end setCombatCallback(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature") function onCastSpell(cid, var) local waittime = 2 -- Tempo de exhaustion local storage = 1000600 if exhaustion.check(cid, storage) then return false end local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z} local position2 = {x=getCreaturePosition(cid).x+3, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} doSendMagicEffect(position1, 106) doSendMagicEffect(position2, 189) exhaustion.set(cid, storage, waittime) return doCombat(cid, combat, var) end
Postado Março 9, 2021 4 anos Autor 20 horas atrás, raphadoidera disse: local misseis = 5 -- quantidade de misseis local delay = 100 -- tempo entre o disparo de cada missel (milisegundos) local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -78.2, 1, -88.2, 1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 41) function onTargetCreature(cid, target) for i = 1, misseis do addEvent(function() if isCreature(cid) and isCreature(target) then doCombat(cid, combat2, {type = 2, pos = getCreaturePosition(target)}) end end, delay*i) end end setCombatCallback(combat, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature") function onCastSpell(cid, var) local waittime = 2 -- Tempo de exhaustion local storage = 1000600 if exhaustion.check(cid, storage) then return false end local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z} doSendMagicEffect(position1, 250) exhaustion.set(cid, storage, waittime) local rng = math.random(0, 1) local pos = getCreaturePosition(target) local toposA = {x = pos.x + rng-1, y = pos.y + rng, z = pos.z} local toposB = {x = pos.x + rng, y = pos.y + rng-1, z = pos.z} doSendDistanceShoot(pos, toposA, 41) doSendDistanceShoot(pos, toposB, 41) return doCombat(cid, combat, var) end Agora os mísseis não estão saindo @139
Postado Março 9, 2021 4 anos Solução 53 minutos atrás, raphadoidera disse: @139 Tinha feito o último rapidão pelo celular, agora ta certo: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 41) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -78.2, 1, -88.2, 1) function onCastSpell(cid, var) local waittime = 2 -- Tempo de exhaustion local storage = 1000600 if exhaustion.check(cid, storage) then return false end local mypos = getCreaturePosition(cid) local tpos = getCreaturePosition(getCreatureTarget(cid)) local position1 = {x=tpos.x+1, y=tpos.y+1, z=tpos.z} local position2 = {x=mypos.x+3, y=mypos.y, z=mypos.z} local rng = math.random(0, 1) local toposA = {x = tpos.x + rng-1, y = tpos.y + rng, z = tpos.z} local toposB = {x = tpos.x + rng, y = tpos.y + rng-1, z = tpos.z} doSendMagicEffect(position1, 106) doSendMagicEffect(position2, 189) doSendDistanceShoot(mypos, toposA, 41) doSendDistanceShoot(mypos, toposB, 41) exhaustion.set(cid, storage, waittime) return doCombat(cid, combat, var) end
Postado Março 9, 2021 4 anos Autor 2 horas atrás, 139 disse: Tinha feito o último rapidão pelo celular, agora ta certo: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 41) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -78.2, 1, -88.2, 1) function onCastSpell(cid, var) local waittime = 2 -- Tempo de exhaustion local storage = 1000600 if exhaustion.check(cid, storage) then return false end local mypos = getCreaturePosition(cid) local tpos = getCreaturePosition(getCreatureTarget(cid)) local position1 = {x=tpos.x+1, y=tpos.y+1, z=tpos.z} local position2 = {x=mypos.x+3, y=mypos.y, z=mypos.z} local rng = math.random(0, 1) local toposA = {x = tpos.x + rng-1, y = tpos.y + rng, z = tpos.z} local toposB = {x = tpos.x + rng, y = tpos.y + rng-1, z = tpos.z} doSendMagicEffect(position1, 106) doSendMagicEffect(position2, 189) doSendDistanceShoot(mypos, toposA, 41) doSendDistanceShoot(mypos, toposB, 41) exhaustion.set(cid, storage, waittime) return doCombat(cid, combat, var) end Sempre salvando mano, muito obrigado! Irmão só me tira uma dúvida, o que significa e qual é a função desse "RNG"?
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.