• logo_cipsoft
    Nowe serwery zostały otwarte 27 Paź 2025:
    Idyllia (Optional PvP) Hostera (Open PvP) us_logo Dracobra (Open PvP)

Skrypty & Kody Czar atakuj?cy kilka razy

Status
Zamknięty.

Ibnel

New User
Witam, pr?buj? napisa? czar atakuj?cy kilka razy z rz?du. Narazie napisa?em co? takiego
Kod:
-- Created by Siguard --
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 28)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -0.0, -0, -0.0, -0)


local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 3)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -9.9, -0, -9.3, -0)


local combat3 = createCombatObject()
setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
setCombatParam(combat3, COMBAT_PARAM_EFFECT, 3)
setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -9.9, -0, -9.3, -0)

local combat4 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 3)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -9.9, -0, -9.3, -0)

arr1 = {
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 2, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
};
arr2 = {
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 1, 3, 1, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
};
arr3 = {
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 1, 0, 0, 0, 0,},
{0, 0, 0, 3, 0, 0, 0,},
{0, 0, 0, 0, 1, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
};

arr4 = {
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 1, 0, 0, 0,},
{0, 0, 0, 3, 0, 0, 0,},
{0, 0, 0, 1, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
{0, 0, 0, 0, 0, 0, 0,},
};




local area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)
local area3 = createCombatArea(arr3)
local area4 = createCombatArea(arr4)


setCombatArea(combat1, area1)
setCombatArea(combat2, area2)
setCombatArea(combat3, area3)
setCombatArea(combat4, area4)


local function onCastSpell1(parameters)
doCombat(parameters.cid, parameters.combat1, parameters.var)
end


local function onCastSpell2(parameters)
doCombat(parameters.cid, parameters.combat2, parameters.var)
end


local function onCastSpell3(parameters)
doCombat(parameters.cid, parameters.combat3, parameters.var)
end

local function onCastSpell4(parameters)
doCombat(parameters.cid, parameters.combat4, parameters.var)
end


function onCastSpell(cid, var)
local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2, combat3 = combat3 }
addEvent(onCastSpell1, 8, parameters)
addEvent(onCastSpell2, 17, parameters)
addEvent(onCastSpell3, 35, parameters)
addEvent(onCastSpell4, 71, parameters)
return doCombat(cid, combat1, var)
end

Niestety, wszystkie animacje robi? si? w tym samym momencie. Pytanie brzmi, jak ustawi? je tak, ?eby ka?da uderza?a po kolei w kr?tkich odst?pach czasowych i zadawa?a osobny dmg (pierwsza arena1, potem arena2 itd)?
 
Odp: Czar atakuj?cy kilka razy

Kod:
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 42)
setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 21)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -7.4, 0, -7.4, 0)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 42)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, 21)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -7.4, 0, -7.4, 0)

local combat3 = createCombatObject()
setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat3, COMBAT_PARAM_EFFECT, 42)
setCombatParam(combat3, COMBAT_PARAM_DISTANCEEFFECT, 21)
setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -7.4, 0, -7.4, 0)


local function onCastSpell1(parameters)
    doCombat(parameters.cid, parameters.combat1, parameters.var)
end

local function onCastSpell2(parameters)
    doCombat(parameters.cid, parameters.combat2, parameters.var)
end

local function onCastSpell3(parameters)
    doCombat(parameters.cid, parameters.combat3, parameters.var)
end




function onCastSpell(cid, var)
local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2, combat3 = combat3 }
addEvent(onCastSpell1, 0, parameters)    
addEvent(onCastSpell2, 300, parameters)       
addEvent(onCastSpell3, 600, parameters)       
 

end

spells.xml
Kod:
<instant name="xxx" words="xxx lvl="150" maglv="80" mana="14500" exhaustion="1500" prem="0" needtarget="1" needlearn="0" blockwalls="0" aggressive="1" event="script" value="skrypt.lua">
 
Status
Zamknięty.
Back
Do góry Bottom