Ir para conteúdo
Banner com Efeitos

Featured Replies

  • Respostas 13
  • Visualizações 705
  • Created
  • Última resposta

Top Posters In This Topic

Postado

Brother isto sempre acontece com spells com mais de um turno. Pois ele manda por exemplo 10 efeitos. Cada um de 1 em 1 segundo digamos assim.

Nos 3 primeiros segundos, você esta olhando pra cima.

 

Agora se você se mexer nos proximos segundos a spell vai pegar a posição nova, e então ira mudar. Fazendo com que pareça estar errada.

 

Não sei se consegui explicar direito, é algo complicadinho.

z_WL63_Tt.png

Postado
  • Autor

E você sabe como fazer ele não mudar a posição? 

E sabe porque a combinação de soltar para cima e mover para baixo não altera o efeito?
@Edit: Soltar para o lado direito e mover para o esquerdo/vice-versa também não altera

Editado por Danves (veja o histórico de edições)



 tumblr_mwfeg45FIV1qk4cb3o4_500.gif

  • 3 weeks later...
Postado
  • Autor

Cara, eu já pus pro boneco não poder se mexer enquanto executa a spell, mas se ele usar enquanto se move clicando em alguma parte do mapa ou tiver de follow em alguém, a direção sai errada. (Já usei andando constantemente pela seta, não atrapalha)

 

Como eu faria para a spell pegar a posição minha só depois de tipo 200ms? Daí ele não erraria por algum motivo(apesar de que ele vai em direção errada mesmo clicando em um sentido contínuo, sem mudar)..

Spell:

-- Areas/Combat for 200ms
local combat2_Brush = createCombatObject()
setCombatParam(combat2_Brush, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat2_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2_Brush, COMBAT_PARAM_BLOCKARMOR, true)
setCombatArea(combat2_Brush,createCombatArea({{3}}))
function onGetFormulaValues(cid, level, maglevel)
min = -((level*0.2) + (maglevel*1.3)+10)
max = -((level*0.2) + (maglevel*1.7)+20)
return min, max
end
 
setCombatCallback(combat2_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
 
local con_Fire__combat2_Brush = createConditionObject(CONDITION_FIRE)
addDamageCondition(con_Fire__combat2_Brush, 3, 500, -15)
setCombatCondition(combat2_Brush, con_Fire__combat2_Brush)
 
-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat4_Brush, COMBAT_PARAM_BLOCKARMOR, true)
setCombatArea(combat4_Brush,createCombatArea({{1, 1, 1},
{0, 2, 0}}))
function onGetFormulaValues(cid, level, maglevel)
min = -((level*0.2) + (maglevel*1.3)+10)
max = -((level*0.2) + (maglevel*1.7)+20)
return min, max
end
 
setCombatCallback(combat4_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
local con_Fire__combat4_Brush = createConditionObject(CONDITION_FIRE)
addDamageCondition(con_Fire__combat4_Brush, 3, 500, -15)
setCombatCondition(combat4_Brush, con_Fire__combat4_Brush)
 
-- Areas/Combat for 600ms
local combat6_Brush = createCombatObject()
setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat6_Brush, COMBAT_PARAM_BLOCKARMOR, true)
setCombatArea(combat6_Brush,createCombatArea({{1, 1, 1, 1, 1},
{0, 0, 0, 0, 0},
{0, 0, 2, 0, 0}}))
function onGetFormulaValues(cid, level, maglevel)
min = -((level*0.2) + (maglevel*1.3)+10)
max = -((level*0.2) + (maglevel*1.7)+20)
return min, max
end
 
setCombatCallback(combat6_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
local con_Fire__combat6_Brush = createConditionObject(CONDITION_FIRE)
addDamageCondition(con_Fire__combat6_Brush, 3, 500, -15)
setCombatCondition(combat6_Brush, con_Fire__combat6_Brush)
 
-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat8_Brush, COMBAT_PARAM_BLOCKARMOR, true)
setCombatArea(combat8_Brush,createCombatArea({{1, 1, 1, 1, 1, 1, 1},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0}}))
function onGetFormulaValues(cid, level, maglevel)
min = -((level*0.2) + (maglevel*1.3)+10)
max = -((level*0.2) + (maglevel*1.7)+20)
return min, max
end
 
setCombatCallback(combat8_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
local con_Fire__combat8_Brush = createConditionObject(CONDITION_FIRE)
addDamageCondition(con_Fire__combat8_Brush, 3, 500, -15)
setCombatCondition(combat8_Brush, con_Fire__combat8_Brush)
 
-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat10_Brush, COMBAT_PARAM_BLOCKARMOR, true)
setCombatArea(combat10_Brush,createCombatArea({{1, 1, 1, 1, 1},
{0, 0, 0, 0, 0},
{0, 0, 2, 0, 0}}))
function onGetFormulaValues(cid, level, maglevel)
min = -((level*0.2) + (maglevel*1.3)+10)
max = -((level*0.2) + (maglevel*1.7)+20)
return min, max
end
 
setCombatCallback(combat10_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
local con_Fire__combat10_Brush = createConditionObject(CONDITION_FIRE)
addDamageCondition(con_Fire__combat10_Brush, 3, 500, -15)
setCombatCondition(combat10_Brush, con_Fire__combat10_Brush)
 
-- Areas/Combat for 1200ms
local combat12_Brush = createCombatObject()
setCombatParam(combat12_Brush, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat12_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat12_Brush, COMBAT_PARAM_BLOCKARMOR, true)
setCombatArea(combat12_Brush,createCombatArea({{1, 1, 1},
{0, 2, 0}}))
function onGetFormulaValues(cid, level, maglevel)
min = -((level*0.2) + (maglevel*1.3)+10)
max = -((level*0.2) + (maglevel*1.7)+20)
return min, max
end
 
setCombatCallback(combat12_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
local con_Fire__combat12_Brush = createConditionObject(CONDITION_FIRE)
addDamageCondition(con_Fire__combat12_Brush, 3, 500, -15)
setCombatCondition(combat12_Brush, con_Fire__combat12_Brush)
 
-- Areas/Combat for 1400ms
local combat14_Brush = createCombatObject()
setCombatParam(combat14_Brush, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat14_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat14_Brush, COMBAT_PARAM_BLOCKARMOR, true)
setCombatArea(combat14_Brush,createCombatArea({{3}}))
function onGetFormulaValues(cid, level, maglevel)
min = -((level*0.2) + (maglevel*1.3)+10)
max = -((level*0.2) + (maglevel*1.7)+20)
return min, max
end
 
setCombatCallback(combat14_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
local con_Fire__combat14_Brush = createConditionObject(CONDITION_FIRE)
addDamageCondition(con_Fire__combat14_Brush, 3, 500, -15)
setCombatCondition(combat14_Brush, con_Fire__combat14_Brush)
 
-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos,startDir) -- Part
if (isCreature(cid)) then
doCombat(cid, c, var)
if (dirList ~= nil) then -- Emit distance effects
local i = 2;
while (i < #dirList) do
if (startDir == 0) then -- N
doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
elseif (startDir == 2) then -- S
doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x+dirList,y=dirEmitPos.y+dirList[i+1],z=dirEmitPos.z},dirList[1])
elseif (startDir == 1) then -- E
doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x+dirList[i+1],y=dirEmitPos.y+dirList,z=dirEmitPos.z},dirList[1])
else -- W / Something weird happened
doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList[i+1],y=dirEmitPos.y-dirList,z=dirEmitPos.z},dirList[1])
end
i = i + 2
end
end
end
end
 
function onCastSpell(cid, var)
doCreatureSetNoMove(cid, true)
addEvent(doCreatureSetNoMove, 1800, cid, false)
local startPos = getCreaturePosition(cid)
local startDir = getCreatureLookDirection(cid)
addEvent(RunPart,200,combat2_Brush,cid,var)
addEvent(RunPart,400,combat4_Brush,cid,var)
addEvent(RunPart,600,combat6_Brush,cid,var)
addEvent(RunPart,800,combat8_Brush,cid,var)
addEvent(RunPart,1000,combat10_Brush,cid,var)
addEvent(RunPart,1200,combat12_Brush,cid,var)
addEvent(RunPart,1400,combat14_Brush,cid,var)
return true
end



 tumblr_mwfeg45FIV1qk4cb3o4_500.gif

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo