Ir para conteúdo

Featured Replies

Postado

Fala galera! Eu estou editando essa spell que cria uma estatua e ataca. A animação do distance vai contra os targets, porém não da dano algum. Já testei varias coisas e ainda não consegui achar a solução.

Citar

 

 

Você tem o código disponível? Se tiver publique-o aqui: 

local config = {
    statue = 2367,
    range = 5,
    max_dmg = -150,
    min_dmg = -50,
    hit_delay = 1000,
    statue_time = 10*1000,
    cd = 20,
    stg = 5570
}

local max_hits = config.statue_time/config.hit_delay

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA)
setCombatFormula(combat, COMBAT_FORMULA_DAMAGE, 0, config.min_dmg, 0, config.max_dmg)

local condition = createConditionObject(CONDITION_INFIGHT)
setConditionParam(condition, CONDITION_PARAM_TICKS, 10 * 1000)

function removeItem(pos)
    doRemoveItem(getTileItemById(pos, config.statue).uid)
end

function attackSpecs(cid, pos, var, hits)
n = hits or 0

    if n >= max_hits then return false end

    local spec = getSpectators(pos, config.range, config.range)
    i = spec[math.random(1, #spec)]
    
if #spec <= 1 then return false end
    while(i == cid) do
        i = spec[math.random(1, #spec)] 
    end
        if isCreature(i) then
            var.pos = getCreaturePosition(i)
            doSendDistanceShoot(pos, var.pos, CONST_ANI_SUDDENDEATH)
            doCombat(cid, combat, var)
        end

    addEvent(attackSpecs, config.hit_delay, cid, pos, var, n+1)
end

function itemInteraction(cid, pos, var)
    attackSpecs(cid, pos, var)
    addEvent(removeItem, config.statue_time, pos)
end

function onCastSpell(cid, var)
    if not isPlayer(cid) then return false end

    if getPlayerStorageValue(cid, config.stg) - os.time() <= 0 then
        doAddCondition(cid, condition)
        setPlayerStorageValue(cid, config.stg, os.time() + config.cd)
        local pos = Position(getCreaturePosition(cid).x+1, getCreaturePosition(cid).y, getCreaturePosition(cid).z)
        doCreateItem(config.statue, 1, pos)
        itemInteraction(cid, pos, var)
    else
        doPlayerSendCancel(cid, "You're exhausted.")
    end
    return true
end

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

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.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.8k

Informação Importante

Confirmação de Termo