Ir para conteúdo

Featured Replies

Postado
function onCastSpell(cid, var)
local combat = createCombatObject()
local area = createCombatArea(AREA_ENCHANT)
setCombatArea(combat, area)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 86)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_SUBID, 3)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setConditionParam(condition, CONDITION_PARAM_TICKS, 30 * 1000)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, 15)

local config = {
    baseMana = 120,
    hardcoreManaSpent = getConfigValue("addManaSpentInPvPZone")
}


    if exhaustion.check(cid, 13118) == TRUE then
        doPlayerSendCancel(cid, "Podera usar novamente dentro de 60 segundos.")
        doSendMagicEffect(getCreaturePosition(cid), 2)
        return false
    end
    local pos, membersList = getCreaturePosition(cid), getPartyMembers(cid)
    if(membersList == nil or type(membersList) ~= 'table' or table.maxn(membersList) <= 1) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end

    local affectedList = {}
    for _, pid in ipairs(membersList) do
        if(getDistanceBetween(getCreaturePosition(pid), pos) <= 36) then
            table.insert(affectedList, pid)
        end
    end

    local tmp = table.maxn(affectedList)
    if(tmp <= 1) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end

    local mana = math.ceil((0.9 ^ (tmp - 1) * config.baseMana) * tmp)
    if(getCreatureMana(cid) < mana) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTENOUGHMANA)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end

    if(not doCombat(cid, combat, var)) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end

    doCreatureAddMana(cid, -(mana - config.baseMana), false)
    if(not getPlayerFlagValue(cid, PlayerFlag_NotGainMana) and (not getTileInfo(getThingPosition(cid)).hardcore or config.hardcoreManaSpent)) then
        doPlayerAddSpentMana(cid, (mana - config.baseMana))
    end

    for _, pid in ipairs(affectedList) do
        doAddCondition(pid, condition)
    end
    exhaustion.set(cid, 13118, 60.0)
    return true
end

 

  • Respostas 9
  • Visualizações 674
  • Created
  • Última resposta

Top Posters In This Topic

Postado
  • Autor
5 minutos atrás, Gnius disse:

function onCastSpell(cid, var)
local combat = createCombatObject()
local area = createCombatArea(AREA_ENCHANT)
setCombatArea(combat, area)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 86)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_SUBID, 3)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setConditionParam(condition, CONDITION_PARAM_TICKS, 30 * 1000)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, 15)

local config = {
    baseMana = 120,
    hardcoreManaSpent = getConfigValue("addManaSpentInPvPZone")
}


    if exhaustion.check(cid, 13118) == TRUE then
        doPlayerSendCancel(cid, "Podera usar novamente dentro de 60 segundos.")
        doSendMagicEffect(getCreaturePosition(cid), 2)
        return false
    end
    local pos, membersList = getCreaturePosition(cid), getPartyMembers(cid)
    if(membersList == nil or type(membersList) ~= 'table' or table.maxn(membersList) <= 1) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end

    local affectedList = {}
    for _, pid in ipairs(membersList) do
        if(getDistanceBetween(getCreaturePosition(pid), pos) <= 36) then
            table.insert(affectedList, pid)
        end
    end

    local tmp = table.maxn(affectedList)
    if(tmp <= 1) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end

    local mana = math.ceil((0.9 ^ (tmp - 1) * config.baseMana) * tmp)
    if(getCreatureMana(cid) < mana) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTENOUGHMANA)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end

    if(not doCombat(cid, combat, var)) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end

    doCreatureAddMana(cid, -(mana - config.baseMana), false)
    if(not getPlayerFlagValue(cid, PlayerFlag_NotGainMana) and (not getTileInfo(getThingPosition(cid)).hardcore or config.hardcoreManaSpent)) then
        doPlayerAddSpentMana(cid, (mana - config.baseMana))
    end

    for _, pid in ipairs(affectedList) do
        doAddCondition(pid, condition)
    end
    exhaustion.set(cid, 13118, 60.0)
    return true
end

 

o Bug de nao aparecer nada ainda continua..

Postado

@douglasfamil1 Testa Essa

 

Citar

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 5)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
setCombatParam(combat, COMBAT_PARAM_TARGETPLAYERSORSUMMONS, true)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 60, 39, 65, 68)

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

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

 

 

                     Projeto    Nto Myth

 

" Eu to disposto a lutar e que se foda todo mundo que duvida que eu vou tocar o terror na porra toda! "

 

 

                                                                                                    bang.gif.bfc77cb73cf3065add6e416ceba6dc90.gif

 

 

  • 4 years later...
Postado
Em 06/01/2018 em 20:16, douglasfamil1 disse:

Cara essa ai, funcionou só que ficou assim

 

https://prnt.sc/hx01td

 

e Eu quero que Cure KI (MANA) e nao vida, E em area

 

Tente usar essa:
 

local combat = createCombatObject()
local area = createCombatArea(AREA_ENCHANT)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_MANADRAIN)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 86)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 0.6, -30, 1.2, 0)
setCombatArea(combat, area)

function onCastSpell(cid, var)
return doCombat(cid, combat, var)
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.

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