Ir para conteúdo
Banner com Efeitos

Featured Replies

  • 8 years later...
  • Respostas 17
  • Visualizações 965
  • Created
  • Última resposta

Top Posters In This Topic

Postado
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1)

local area = createCombatArea(AREA_CIRCLE3X3)
setCombatArea(combat, area)

function onCastSpell(cid, var)
    local pos = getCreaturePosition(cid)  
    local creatures = getSpectators(pos, 3, 3, false)  

    if creatures then
        local validTargets = {}  


        for _, target in ipairs(creatures) do
            if isCreature(target) and (isPlayer(target) or isMonster(target)) then
                table.insert(validTargets, target) 
            end
        end

        if #validTargets > 0 then
            doCreatureSay(cid, "Prepare to be drained!", TALKTYPE_MONSTER)
            for _, target in ipairs(validTargets) do
                local first = getCreatureHealth(target)
                doCreatureSay(target, "Uh-oh, I'm getting drained!", TALKTYPE_MONSTER)
                if doCombat(cid, combat, var) == LUA_NO_ERROR then
                    local second = getCreatureHealth(target)
                    local damage = first - second
                    if damage > 0 then
                        local addhealth = damage * 0.5
                        doCreatureAddHealth(cid, addhealth)
                        doSendAnimatedText(getCreaturePosition(target), "+" .. addhealth, TEXTCOLOR_GREEN)
                        doSendMagicEffect(getCreaturePosition(target), CONST_ME_MAGIC_GREEN)
                        doSendDistanceShoot(getCreaturePosition(target), pos, 40)
                    end
                end
            end
        else
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Nenhum alvo válido encontrado.")
        end
    else
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Nenhum alvo válido encontrado.")
    end

    return true
end

 

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

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