Array
(
[scriptVersion] => 7
[oeValues] => Array
(
[auto] => Array
(
)
[Art] => ReplaceableTextures\CommandButtons\BTNDestroyer.blp
[turnRate] => 1.5
[dmgplus1] => 2784
[bldtm] => 1
[goldcost] => 3100
[sides1] => 1
[manaN] => 450
[acquire] => 800
[upgrades] => Array
(
)
[Upgrade] => Array
(
)
[Name] => Harby
[weapTp1] => missile
[MissileHoming] => 1
[file] => units\undead\ObsidianStatue\ObsidianStatue.mdl
[Missileart] => none.mdl
[Missilespeed] => 1500
[dice1] => 1
[RngBuff1] => 250
[regenMana] => 7.5
[mana0] => 450
[modelScale] => 0.6
[rangeN1] => 800
[atkType1] => hero
[cool1] => 1.4
[Ubertip] => A statue built in honor of the great Obsidian Warrior. Legend often depicts him wearing nothing but a dark shroud, though his true story is shrouded in darkness.
[abilList] => @@0@@
[moveHeight] => 40
[dmgpt1] => 0.6
[buildingShadow] => Array
(
)
[targs1] => Array
(
)
[weapsOn] => 1
)
[settings] => Array
(
[balanceTip] => |cffFFFF00x1.45|r spell crit damage (|cffFFFF00+x0.05|r/lvl)|n|cffFFFF00+55% |rdebuff resistance (|cffFFFF00+1%|r/lvl)|n|cffFFFF00+10 |rmana/lvl
[abil_factor] => 0.5
[author] => Glowackos
[alpha] => 255
[authorDisplay] => |cffff6347Glowackos|r
[version] => 1.0
[element] => darkness
[rarity] => unique
)
[effects] => Array
(
[0] => Array
(
[x] => -61.2563
[y] => -4.72457
[z] => 0
[scale] => 0.6
[rot] => 3.75246
[file] => Doodads\Cityscape\Props\CityGrave\CityGrave2.mdl
[red] => 30
[green] => 50
[blue] => 50
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[1] => Array
(
[x] => 61.0035
[y] => -2.33083
[z] => 0
[scale] => 0.6
[rot] => 3.75246
[file] => Doodads\Cityscape\Props\CityGrave\CityGrave2.mdl
[red] => 30
[green] => 50
[blue] => 50
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[2] => Array
(
[x] => -60.0411
[y] => -6.55925
[z] => 83.2
[scale] => 0.75
[rot] => 4.69494
[file] => Doodads\LordaeronSummer\Props\CauldronWithHeads\CauldronWithHeads.mdl
[red] => 70
[green] => 70
[blue] => 70
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[3] => Array
(
[x] => 62.1396
[y] => 0.288813
[z] => 83.2
[scale] => 0.75
[rot] => 2.44049
[file] => Doodads\LordaeronSummer\Props\CauldronWithHeads\CauldronWithHeads.mdl
[red] => 70
[green] => 70
[blue] => 70
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[4] => Array
(
[x] => -2.22273
[y] => -7.97651
[z] => 0
[scale] => 0.3
[rot] => 4.69494
[file] => Doodads\Northrend\Props\Bats\Bats.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[5] => Array
(
[x] => 0.855494
[y] => -0.525058
[z] => 0
[scale] => 0.5
[rot] => 4.69494
[file] => Doodads\Northrend\Props\Bats\Bats.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[6] => Array
(
[x] => -1.83158
[y] => -56.6214
[z] => 0
[scale] => 1
[rot] => 4.69494
[file] => Doodads\LordaeronSummer\Props\CauldronWithHeads\CauldronWithHeads.mdl
[red] => 70
[green] => 70
[blue] => 70
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[7] => Array
(
[x] => 43.4773
[y] => 39.3682
[z] => 0
[scale] => 0.45
[rot] => 2.88649
[file] => Doodads\Felwood\Plants\Felwood_Thorns\Felwood_Thorns3.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[8] => Array
(
[x] => -37.7514
[y] => 45.4016
[z] => 0
[scale] => 0.45
[rot] => 4.22852
[file] => Doodads\Felwood\Plants\Felwood_Thorns\Felwood_Thorns3.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[9] => Array
(
[x] => -3.67222
[y] => 20.9378
[z] => 0
[scale] => 1
[rot] => 4.69494
[file] => Doodads\Felwood\Plants\Felwood_Thorns\Felwood_Thorns6.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[10] => Array
(
[x] => 55.6472
[y] => -49.6033
[z] => 0
[scale] => 0.3
[rot] => 1.47273
[file] => Doodads\Felwood\Plants\Felwood_Thorns\Felwood_Thorns3.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[11] => Array
(
[x] => -51.6623
[y] => -46.8533
[z] => 0
[scale] => 0.3
[rot] => 4.57606
[file] => Doodads\Felwood\Plants\Felwood_Thorns\Felwood_Thorns3.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[12] => Array
(
[x] => 2.39653
[y] => -5.52039
[z] => 0
[scale] => 0.85
[rot] => 4.69494
[file] => Doodads\Felwood\Plants\Felwood_Thorns\Felwood_Thorns6.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[13] => Array
(
[x] => 1.13941
[y] => -0.72996
[z] => 0
[scale] => 1
[rot] => 2.67335
[file] => Doodads\Felwood\Plants\Felwood_Thorns\Felwood_Thorns6.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
)
[dmgTable] => Array
(
[0] => Array
(
[id] => MOD_SPELL_CRIT_DAMAGE
[base] => 0.2
[add] => 0.05
)
[1] => Array
(
[id] => MOD_DEBUFF_RESISTANCE
[base] => 0.55
[add] => 0.01
)
[2] => Array
(
[id] => MOD_MANA
[base] => 0
[add] => 10
)
)
[triggers] => Array
(
[0] => Array
(
[name] => On Attack
[code] => //Since the tower WILL have the mana most of the time (I assume..), may as well compute these values immediately.
local real dmg = (6 + 0.1 * tower.getLevel()) * GetUnitState(tower.getUnit(), UNIT_STATE_MANA)
local Creep creep = Event.getTarget()
local Projectile p
if tower.getBuffOfType(glow_awaken) != 0 then
// Throw out the attack projectile (tower's real attack does all the work but we hide its projectile model)
set p = Projectile.createFromUnitToUnit(glow_arcaneOrb,tower,1.0,tower.calcSpellCritNoBonus(),tower,creep,true,false,false)
if tower.subtractMana(100, false) == 100 then
if tower.calcChance(0.1 + 0.004 * tower.getLevel()) then
call arcane_manaReplenish(tower)
endif
call tower.getOwner().getTeam().displayFloatingTextX("+" + I2S(R2I(dmg)), tower, 255, 0, 255, 255, 0.05, 2, 3)
set p.userReal = dmg
// Swap out projectile model for arcane-orb-empowered attacks.
call p.setModel("Abilities\\Weapons\\IllidanMissile\\IllidanMissile.mdl")
else
set p.userReal = 0
endif
endif
[values] => Array
(
[visible] => true
[icon] => ReplaceableTextures\CommandButtons\BTNDeathCoil.blp
[name] => Arcane Orb
[short_explain] => Deals additional spelldamage on attack at the cost of mana.
[ONATTACK_chance] => 1.0
[ONATTACK_chanceLevelAdd] => 0.0
[long_explain] => Infuses Harby's attacks with arcane energy at the cost of |cffFFFF80100|r mana per attack. Deals |cffFFFF80[6 x Current Mana]|r as bonus spelldamage. This ability also passively grants |cffFFFF801|r bonus maximum mana for each creep Harby kills.|n|n|cffFF8000Level Bonus:|r|n|cffFFFF80+[0.1 x Current Mana]|r as bonus spelldamage
)
)
[1] => Array
(
[name] => Header
[code] => globals
BuffType glow_arcaneAura
BuffType glow_awaken
ProjectileType glow_arcaneOrb
endglobals
function awakenOnCreate takes Buff b returns nothing
local unit u = b.getBuffedUnit().getUnit()
call SFXAtUnit("Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl", u)
call SFXAtUnit("Objects\\Spawnmodels\\Undead\\UndeadBlood\\ObsidianStatueCrumble2.mdl", u)
call AddUnitAnimationProperties(u, "stand alternate", true)
//Set the unit's height cause it looks dodgy after morphing
call SetUnitFlyHeight(u, 100, 2000)
call UnitRemoveAbility(u, '@@0@@')
set u = null
endfunction
function awakenOnCleanup takes Buff b returns nothing
local unit u = b.getBuffedUnit().getUnit()
call SFXAtUnit("Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl", u)
call AddUnitAnimationProperties(u, "stand alternate", false)
call SetUnitFlyHeight(u, 40, 2000)
call UnitAddAbility(u, '@@0@@')
set u = null
endfunction
function arcane_manaReplenish takes Tower t returns nothing
call Effect.createColored("Abilities\\Spells\\Undead\\ReplenishHealth\\ReplenishHealthCasterOverhead.mdl", t.getX(), t.getY(), t.getZ()+80, 0.0, 1.0, 100, 100, 255, 255).destroy()
call t.addManaPerc(0.1 + 0.002 * t.getLevel())
endfunction
function arcane_onCreate takes Buff b returns nothing
set b.userInt = 0 //Stores when the buff last procced.
endfunction
function arcane_onSpellCast takes Buff b returns nothing
local Tower t = b.getBuffedUnit()
//125 = 5 * 25 ticks = 5 seconds.
if (b.userInt + 125 < Game.getGameTime()) and Event.getAutocastType().getManacost() > 0.0 then
if t.calcChance(0.1 + 0.004 * t.getLevel()) then
call arcane_manaReplenish(t)
set b.userInt = Game.getGameTime()
endif
endif
endfunction
function arcane_orb_hit takes Projectile p, Unit target returns nothing
call p.doSpellDamage(target, p.userReal)
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
set glow_arcaneAura = BuffType.createAuraEffectType(true)
call glow_arcaneAura.setBuffIcon('@@1@@')
call glow_arcaneAura.addEventOnCreate(EventHandler.arcane_onCreate)
call glow_arcaneAura.addEventOnSpellCast(EventHandler.arcane_onSpellCast)
set glow_awaken = BuffType.create(5, 0, true)
call glow_awaken.addEventOnCreate(EventHandler.awakenOnCreate)
call glow_awaken.addEventOnCleanup(EventHandler.awakenOnCleanup)
call glow_awaken.setBuffIcon('@@2@@')
set glow_arcaneOrb = ProjectileType.create("Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl", 10, 1500)
call glow_arcaneOrb.enableHoming(ProjectileTargetEvent.arcane_orb_hit, 0.0)
endfunction
[values] => Array
(
[visible] => false
[icon] =>
[name] =>
[short_explain] =>
[long_explain] =>
)
)
[2] => Array
(
[name] => On Spell Target
[code] => call glow_awaken.apply(tower, tower, 0)
[values] => Array
(
[visible] => true
[icon] => ReplaceableTextures\CommandButtons\BTNObsidianStatue.blp
[name] => Grotesque Awakening
[short_explain] => The statue temporarily comes to life when hit by a spell, allowing it to attack.
[long_explain] => Whenever hit by a spell, the statue comes to life for |cffFFFF805|r seconds, enabling it to attack. This ability is affected by buff duration.
)
)
[3] => Array
(
[name] => On Kill
[code] => call tower.modifyProperty(MOD_MANA, 1)
[values] => Array
(
[visible] => false
[icon] =>
[name] =>
[short_explain] =>
[long_explain] =>
)
)
[4] => Array
(
[name] => Tower Aura
[code] => Array
(
)
[values] => Array
(
[AURA_powerAdd] => 1
[visible] => true
[AURA_auraEffect] => glow_arcaneAura
[AURA_levelAdd] => 1
[AURA_power] => 0
[icon] => ReplaceableTextures\CommandButtons\BTNAntiMagicShell.blp
[AURA_targetType] => TARGET_TYPE_TOWERS
[long_explain] => Towers in |cffFFFF80350|r range have a |cffFFFF8010%|r chance to replenish |cffFFFF8010%|r of their total manapool when casting an ability that costs mana. Cannot retrigger on the same tower within |cffFFFF805|r seconds. This effect will also proc off Harby's Arcane Orb attacks, without the retrigger restriction.|n|n|cffFF8000Level Bonus:|r|n|cffFFFF80+0.4%|r chance|n|cffFFFF80+0.2%|r maximum mana replenished
[AURA_targetSelf] => true
[name] => Arcane Aura
[AURA_level] => 0
[short_explain] => Nearby towers have a small chance to regain a portion of their manapool on cast.
[AURA_auraRange] => 350
)
)
[5] => Array
(
[name] => On Tower Creation
[code] => call AddUnitAnimationProperties(tower.getUnit(), "stand alternate", false)
call tower.modifyProperty(MOD_MANA, tower.getKills())
[values] => Array
(
[visible] => false
[icon] =>
[name] =>
[short_explain] =>
[long_explain] =>
)
)
)
[abilities] => Array
(
[0] => Array
(
[id] => @@0@@
[derivedFrom] => Abun
[oeValues] => Array
(
[Art] => ReplaceableTextures\CommandButtons\BTNScatterRockets.blp
[Unubertip] => -HIDE-
)
)
)
[buffs] => Array
(
[0] => Array
(
[id] => @@1@@
[derivedFrom] => Bslo
[oeValues] => Array
(
[Buffubertip] => This tower has a chance to replenish a portion of its mana when it casts a spell.
[TargetArt] => Array
(
)
[Bufftip] => Arcane Aura
[Buffart] => ReplaceableTextures\CommandButtons\BTNAntiMagicShell.blp
)
)
[1] => Array
(
[id] => @@2@@
[derivedFrom] => Bslo
[oeValues] => Array
(
[Buffubertip] => Harby has been recently targeted by a spell; he is termporarily able to attack.
[TargetArt] => Array
(
)
[Bufftip] => Awakened
[Buffart] => ReplaceableTextures\CommandButtons\BTNObsidianStatue.blp
)
)
)
[units] => Array
(
)
[references] => Array
(
)
)