Ir para conteúdo

Featured Replies

Postado

 

Opa, belezinha?? Minha dúvida é como eu faço para reposicionar o efeito da spell, digamos que quero que a efeito saia mais < ou até >, quero fazer isso em várias spells, porém não consigo, já usei outros modelos para reposicionar mas fica dando erro na spell no geral. Ficaria grato se alguém me auxiliasse!

 

Spoiler

 

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_LIGHTGREEN)
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 494)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -250.0, 0, -275.0, 0)

 

local function onCastSpell1(parameters)
doCombat(parameters.cid, parameters.combat1, parameters.var)
end
 
function onCastSpell(cid, var)
local parameters = { cid = cid, var = var, combat1 = combat1 }
addEvent(onCastSpell1, 0, parameters)
return true
end

 

 

Aqui é um exemplo, ele sai digamos do lado do target, mas queria saber como reposicionar a vontade, no caso dele até ir em cima do target.

Screenshot_1.png

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

Resolvido por L3K0T

Ir para solução
  • Respostas 6
  • Visualizações 584
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Olá! faça um teste, veja se isso funciona:    

  • Posta qual erro que deu no console.

  • Não testei    local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_LIGHTGREEN) setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) se

Posted Images

Postado

Olá! faça um teste, veja se isso funciona:

 

Spoiler

local effect = 494
local effectOffset = {x=1, y=0, z=0}

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_LIGHTGREEN)
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -250.0, 0, -275.0, 0)
 
function onTargetCreature(cid, target)
    local position = {x=getThingPosition(target).x + effectOffset.x ,y=getThingPosition(target).y + effectOffset.y, z=getThingPosition(target).z + effectOffset.z}
    doSendMagicEffect(position, effect)
end

setCombatCallback(combat1, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature")

function onCastSpell(cid, var)
    return doCombat(cid, var)
end

 

 

Postado
  • Autor
1 hora atrás, samueldev disse:

Olá! faça um teste, veja se isso funciona:

 

  Mostrar conteúdo oculto


local effect = 494
local effectOffset = {x=1, y=0, z=0}

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_LIGHTGREEN)
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -250.0, 0, -275.0, 0)
 
function onTargetCreature(cid, target)
    local position = {x=getThingPosition(target).x + effectOffset.x ,y=getThingPosition(target).y + effectOffset.y, z=getThingPosition(target).z + effectOffset.z}
    doSendMagicEffect(position, effect)
end

setCombatCallback(combat1, CALLBACK_PARAM_TARGETCREATURE, "onTargetCreature")

function onCastSpell(cid, var)
    return doCombat(cid, var)
end

 

 

 

Vish maninho, não deu muito certo, coloquei isso no script, porém quando vou usar a habilidade em jogo ele simplesmente fecha o OTX, tentei mudar de effect porém nada.

Postado
Em 13/03/2023 em 16:51, Grogu disse:

 

Vish maninho, não deu muito certo, coloquei isso no script, porém quando vou usar a habilidade em jogo ele simplesmente fecha o OTX, tentei mudar de effect porém nada.

 

Posta qual erro que deu no console.

Postado
  • Diretor
  • Solução

Não testei 

 

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_LIGHTGREEN)
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 494) -- adiciona o efeito 494
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -250.0, 0, -275.0, 0)

local function onCastSpell1(parameters)
  local targetPos = getCreaturePosition(parameters.target)
  if targetPos then
    doSendMagicEffect(targetPos, 494) -- exibe o efeito 494 na posição do alvo
    doCombat(parameters.cid, parameters.combat1, positionToVariant(targetPos))
  end
end

function onCastSpell(cid, var)
  local parameters = { cid = cid, var = var, combat1 = combat1, target = getCreatureTarget(cid) }
  addEvent(onCastSpell1, 0, parameters)
  return true
end

 

 

Versão otimizada:

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_HITCOLOR, COLOR_LIGHTGREEN)
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 494)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -250, 0, -275, 0)

function onCastSpell(cid, var)
  local target = getCreatureTarget(cid)
  if not target then
    return false
  end
  
  local targetPos = getCreaturePosition(target)
  if not targetPos then
    return false
  end
  
  doSendMagicEffect(targetPos, 494)
  doCombat(cid, combat1, positionToVariant(targetPos))
  return true
end
 

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

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.6k

Informação Importante

Confirmação de Termo