Array
(
[scriptVersion] => 7
[oeValues] => Array
(
[Name] => Staff of the Wild Equus
[Art] => ReplaceableTextures\CommandButtons\BTNStaffOfPurification.blp
[Ubertip] => While wielding this staff a vast power becomes part of you.
[abilList] => Array
(
)
)
[settings] => Array
(
[author] => drol
[authorDisplay] => |cffcc6600drol|r
[balanceTip] => Array
(
)
[rarity] => rare
[goldcost] => 350
[version] => 1.0
)
[dmgTable] => Array
(
)
[triggers] => Array
(
[0] => Array
(
[name] => On Damage
[code] => local Tower tower = itm.getCarrier()
local integer size = Event.getTarget().getSize()
if Event.isMainTarget() and tower.calcChance(0.08 * tower.getBaseAttackspeed()) and (size == SIZE_MASS or size == SIZE_MASS_CHALLENGE or size == SIZE_NORMAL) then
call drol_liftBuff.apply(tower, Event.getTarget(), tower.getLevel())
endif
[values] => Array
(
[ONDAMAGE_chance] => 1.0
[visible] => false
[name] =>
[goldcost] => 0
[ONDAMAGE_chanceLevelAdd] => 0.0
[explain] =>
)
)
[1] => Array
(
[name] => Header
[code] => globals
BuffType drol_liftBuff
endglobals
// Event on lift up
private function drol_lift_up takes Buff b returns nothing
local Creep c = b.getBuffedUnit()
set b.userInt = Effect.createSimpleOnUnit("Abilities\\Weapons\\SpiritOfVengeanceMissile\\SpiritOfVengeanceMissile.mdl", c, "origin")
call c.adjustHeight(300, 150)
endfunction
// Periodic event (0.1 sec)
private function drol_lift_period takes Buff b returns nothing
local Creep c = b.getBuffedUnit()
call c.moveToPoint(c.getX() + GetRandomReal(-5, 5), c.getY() + GetRandomReal(-5, 5), true)
call SetUnitFacing(c.getUnit(), GetUnitFacing(c.getUnit()) + 125)
endfunction
// Event on expire
private function drol_lift_down takes Buff b returns nothing
local Creep c = b.getBuffedUnit()
call c.adjustHeight(-300, 2500)
call Effect(b.userInt).destroy()
call Effect.createSimpleAtUnit("Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl", c).destroy()
call c.reorder()
endfunction
//Do not remove or rename this function!
//Put your initialization tasks here, this function will be called on map init
private function init takes nothing returns nothing
local Modifier m = Modifier.create()
call m.addModification(MOD_EXP_GRANTED, 0.2, 0.008)
set drol_liftBuff = BuffType.createDuplicate(cb_stun, 2., 0., false)
call drol_liftBuff.addEventOnCreate(drol_lift_up)
call drol_liftBuff.addPeriodicEvent(drol_lift_period, 0.1)
call drol_liftBuff.addEventOnCleanup(drol_lift_down)
call drol_liftBuff.setBuffModifier(m)
call drol_liftBuff.setBuffIcon('@@0@@')
endfunction
[values] => Array
(
[visible] => true
[name] => Ascension
[goldcost] => 350
[explain] => Each attack has an |cffFFFF808%|r base attackspeed adjusted chance to ascend the target creep, lifting it up for |cffFFFF802|r seconds and making it grant |cffFFFF8020%|r more experience when killed in the air. Only works on normal and mass creeps.|n|n|cffFF8000Level Bonus:|r|n|cffFFFF80+0.8%|r experience
)
)
)
[abilities] => Array
(
)
[buffs] => Array
(
[0] => Array
(
[id] => @@0@@
[derivedFrom] => BUdd
[oeValues] => Array
(
[Bufftip] => Ascended
[Targetattach] => chest
[Buffubertip] => This unit is immobilized and will grant additional experience if killed while in the air.
[Buffart] => ReplaceableTextures\CommandButtons\BTNStaffOfPurification.blp
[TargetArt] => Abilities\Spells\Human\Feedback\ArcaneTowerAttack.mdl
)
)
)
[units] => Array
(
)
[references] => Array
(
)
)