JE
pedido

[Pedido] spell de área que só aparece efeito no mostro

Por Jefferson14789, 01 de ago. de 2015 em Scripts

spell
nto
10
1.5k
01 de agosto de 2015 às 17:17

Boa tarde galera, vim aqui pedir a vocês uma spell de área que só aparece efeito no mostro, como o tito já diz tentei fazer mas não obtive resultados, para facilitar vou mandar um video de exemplo,

a spell começa em +-3min

Editado Agosto 1 por Jefferson14789

zipter98Z
01 de agosto de 2015 às 18:20

Por acaso é a magia Chakra Impulse?

01 de agosto de 2015 às 19:09

é ela mesma!! Dou rep +

zipter98Z
01 de agosto de 2015 às 20:18
Melhor resposta

Se você não tiver a função getPosfromArea no seu servidor, recomendo instalá-la.

local config = {
    effect = xxx,                   --Efeito.
    combat = xxx,      --Combat/elemento da spell.
    area = {                        --Área da spell.
        {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
        {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
        {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
        {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
        {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
        {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1},
        {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
        {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
        {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
        {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
        {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
    }
}
 
local combat = createCombatObject()
setCombatArea(combat, createCombatArea(config.area))
setCombatParam(combat, COMBAT_PARAM_TYPE, config.combat)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -xx.x, x, -xx.x, x)
 
function onCastSpell(cid, var)
    doCombat(cid, combat, var)
    for _, pos in pairs(getPosfromArea(cid, config.area)) do
        local pid = getTopCreature(pos).uid
        if isMonster(pid) then
            doSendMagicEffect(getThingPos(pid), config.effect)
        end
    end
    return true
end

Editado Agosto 1 por zipter98

01 de agosto de 2015 às 20:47

Tem como converter para o dano de COMBAT_FORMULA_LEVELMAGIC, -xx.x, x, -xx.x, x)? invés de dano max e min ?

deu esse erro eu fiz como mandou

post-303619-0-87486900-1438472884_thumb.png

Editado Agosto 1 por Jefferson14789

zipter98Z
01 de agosto de 2015 às 20:57

Tem sim. Daqui a pouco edito.

Editado Agosto 1 por zipter98

01 de agosto de 2015 às 21:00

local config = {
effect = 34, --Efeito.
combat = COMBAT_ICEDAMAGE, --Combat/elemento da spell.
damage = {2000, 4000}, --{dano mínimo, dano máximo}
area = { --Área da spell.
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
}
}
function onCastSpell(cid)
doAreaCombatHealth(cid, config.combat, getThingPos(cid), config.area, -config.damage[1], -config.damage[2])
for _, pos in pairs(getPosfromArea(cid, config.area)) do
local pid = getTopCreature(pos).uid
if isMonster(pid) then
doSendMagicEffect(getThingPos(pid), config.effect)
end
end
return true
end

 

 

 

Nem aparece efeito nem o hit

Editado Agosto 1 por Jefferson14789

zipter98Z
01 de agosto de 2015 às 21:04

Código alterado, como você pediu.

01 de agosto de 2015 às 21:13

Parabéns, muito obrigado !! Rep+ funcionou perfeitamente !! otimo trabalho !!

SkyLighS
02 de agosto de 2015 às 00:48

Movido para seção de resolvidos.