Postado Abril 22, 2019 6 anos Estou com um pequeno problema numa spell no meu game, é o seguinte, ela é uma spell que vai em linha reta, mas antes dela ser lançada ela é carregada por 0.5 segundos, porém, se o jogador se mover nesses 0.5 segundos a spell buga, saindo no lugar que o jogador usou O script da spell estará aí em baixo, se alguém souber como solucionar dou aquela repzinha marota! obrigado. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -27, 1, -32, 1) arr1 = { {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) setCombatArea(combat1, area1) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end function onCastSpell(cid, var) local waittime = 5 local storage = 586899 local eff2 = 743 local parameters = { cid = cid, var = var} if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.") return false end local p2 = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y+1, z=getPlayerPosition(cid).z} local p = getCreaturePosition(cid) local x = { [0] = {x=p.x+2, y=p.y-1, z=p.z}, [1] = {x=p.x+7, y=p.y+2, z=p.z}, [2] = {x=p.x+2, y=p.y+7, z=p.z}, [3] = {x=p.x-1, y=p.y+2, z=p.z} } local y = { [0] = 725, [1] = 724, [2] = 723, [3] = 722 } pos = x[getCreatureLookDirection(cid)] eff = y[getCreatureLookDirection(cid)] doCreatureSay(cid, "Ultimate Bijuu Dama!!!", TALKTYPE_MONSTER) exhaustion.set(cid, storage, waittime) doSendMagicEffect(p2, eff2) addEvent(doSendMagicEffect, 500, pos, eff) addEvent(onCastSpell1, 500, parameters) end
Postado Abril 27, 2019 6 anos @ZeeroBR Tenta assim Spoiler local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -27, 1, -32, 1) arr1 = { {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) setCombatArea(combat1, area1) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end local waittime = 5 local storage = 586899 local eff2 = 743 function onCastSpell(cid, var) local parameters = { cid = cid, var = var} if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.") return false end local p2 = {x=getThingPos(cid).x+1, y=getThingPos(cid).y+1, z=getThingPos(cid).z} local p = getThingPos(cid) local x = { [0] = {x=p.x+2, y=p.y-1, z=p.z}, [1] = {x=p.x+7, y=p.y+2, z=p.z}, [2] = {x=p.x+2, y=p.y+7, z=p.z}, [3] = {x=p.x-1, y=p.y+2, z=p.z} } local y = { [0] = 725, [1] = 724, [2] = 723, [3] = 722 } pos = x[getCreatureLookDirection(cid)] eff = y[getCreatureLookDirection(cid)] doCreatureSay(cid, "Ultimate Bijuu Dama!!!", TALKTYPE_MONSTER) exhaustion.set(cid, storage, waittime) doSendMagicEffect(p2, eff2) addEvent(doSendMagicEffect, 500, pos, eff) addEvent(onCastSpell1, 500, parameters) end Editado Abril 27, 2019 6 anos por Storm (veja o histórico de edições)
Postado Abril 27, 2019 6 anos Autor 1 minuto atrás, Storm disse: @ZeeroBR Tenta assim Ocultar conteúdo A Spell parou de funcionar 3 minutos atrás, Storm disse: @ZeeroBR Tenta assim Ocultar conteúdo local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -27, 1, -32, 1) arr1 = { {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) setCombatArea(combat1, area1) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end local waittime = 5 local storage = 586899 local eff2 = 743 function onCastSpell(cid, var) local parameters = { cid = cid, var = var} if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.") return false end local p2 = {x=getThingPos(cid).x+1, y=getThingPos(cid).y+1, z=getThingPos(cid).z} local p = getThingPos(cid) local x = { [0] = {x=p.x+2, y=p.y-1, z=p.z}, [1] = {x=p.x+7, y=p.y+2, z=p.z}, [2] = {x=p.x+2, y=p.y+7, z=p.z}, [3] = {x=p.x-1, y=p.y+2, z=p.z} } local y = { [0] = 725, [1] = 724, [2] = 723, [3] = 722 } pos = x[getCreatureLookDirection(cid)] eff = y[getCreatureLookDirection(cid)] doCreatureSay(cid, "Ultimate Bijuu Dama!!!", TALKTYPE_MONSTER) exhaustion.set(cid, storage, waittime) doSendMagicEffect(p2, eff2) addEvent(doSendMagicEffect, 500, pos, eff) addEvent(onCastSpell1, 500, parameters) end Opa, foi um pequeno erro ao copiar, testei novamente e continua a mesma coisa
Postado Abril 27, 2019 6 anos @ZeeroBR Se aparecer algum erro me manda Spoiler local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -27, 1, -32, 1) arr1 = { {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) setCombatArea(combat1, area1) local function onCastSpell1(parameters) return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var) end local waittime = 5 local storage = 586899 local eff2 = 743 function onCastSpell(cid, var) local parameters = { cid = cid, var = var} if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar a spell novamente.") return false end local p2 = {x=getThingPosition(cid).x+1, y=getThingPosition(cid).y+1, z=getThingPosition(cid).z} local p = getThingPosition(cid) local x = { [0] = {x=p.x+2, y=p.y-1, z=p.z}, [1] = {x=p.x+7, y=p.y+2, z=p.z}, [2] = {x=p.x+2, y=p.y+7, z=p.z}, [3] = {x=p.x-1, y=p.y+2, z=p.z} } local y = { [0] = 725, [1] = 724, [2] = 723, [3] = 722 } pos = x[getCreatureLookDirection(cid)] eff = y[getCreatureLookDirection(cid)] doCreatureSay(cid, "Ultimate Bijuu Dama!!!", TALKTYPE_MONSTER) exhaustion.set(cid, storage, waittime) doSendMagicEffect(p2, eff2) addEvent(doSendMagicEffect, 500, pos, eff) addEvent(onCastSpell1, 500, parameters) return true end
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.