Array
(
[scriptVersion] => 7
[oeValues] => Array
(
[RngBuff1] => 250
[MissileHoming] => 1
[Upgrade] => Array
(
)
[targs1] => Array
(
)
[goldcost] => 1650
[weapsOn] => 1
[dice1] => 1
[Missilespeed] => 800
[moveHeight] => 50
[file] => units\human\phoenix\phoenix.mdl
[atkType1] => pierce
[modelScale] => 0.5
[weapTp1] => missile
[Missilearc] => 0.4
[acquire] => 800
[rangeN1] => 850
[upgrades] => Array
(
)
[cool1] => 2.5
[Ubertip] => A phoenix which can burn more than 1 target with its attacks.
[abilList] => Array
(
)
[Name] => Phoenix
[Missileart] => Abilities\Weapons\PhoenixMissile\Phoenix_Missile.mdl
[Art] => ReplaceableTextures\CommandButtons\BTNMarkOfFire.blp
[buildingShadow] => Array
(
)
[turnRate] => 0.5
[sides1] => 1
[uberSplat] => OSMA
[auto] => Array
(
)
[dmgplus1] => 1306
[bldtm] => 1
)
[settings] => Array
(
[author] => Der_kleine_Tomy
[element] => fire
[authorDisplay] => |c00ff0000Der_kleine_Tomy|r
[alpha] => 255
[balanceTip] => |cffFFFF00+20% |rdmg to nature (|cffFFFF00+1%|r/lvl)
[rarity] => rare
[version] => 1.0
[abil_factor] => 0.25
)
[effects] => Array
(
[0] => Array
(
[x] => -2.98478
[y] => 9.09943
[z] => 0
[scale] => 0.4
[rot] => 1.5708
[file] => Doodads\Dungeon\Rocks\Cave_FieryCrator\Cave_FieryCrator.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[1] => Array
(
[x] => -2.92594
[y] => -15.7016
[z] => 0
[scale] => 0.6
[rot] => 0.977384
[file] => Doodads\Dungeon\Props\LavaCracks\LavaCracks3.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[2] => Array
(
[x] => -6.23061
[y] => -12.4456
[z] => 0
[scale] => 0.4
[rot] => 3.28122
[file] => Doodads\Cinematic\FireTrapUp\FireTrapUp.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[3] => Array
(
[x] => -38.3607
[y] => 44.9316
[z] => 0
[scale] => 0.35
[rot] => 1.25664
[file] => Doodads\Dungeon\Rocks\DungeonStalagmite\DungeonStalagmite3.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[4] => Array
(
[x] => 39.2711
[y] => 38.6789
[z] => 0
[scale] => 0.35
[rot] => 0.767945
[file] => Doodads\Dungeon\Rocks\DungeonStalagmite\DungeonStalagmite3.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
[5] => Array
(
[x] => -6.20037
[y] => -36.8264
[z] => 0
[scale] => 0.35
[rot] => 3.83973
[file] => Doodads\Outland\Rocks\Outland_Rock\Outland_Rock0.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
)
)
[dmgTable] => Array
(
[0] => Array
(
[id] => MOD_DMG_TO_NATURE
[base] => 0.2
[add] => 0.01
)
)
[triggers] => Array
(
[0] => Array
(
[name] => On Tower Creation
[code] => set tower.userInt = 2 // Save the family member (1 = first member)
set tower.userInt2 = 0 // Used to save the buff (double linked list)
call AddUnitAnimationProperties(tower.getUnit(), "stand alternate", false)
[values] => Array
(
[icon] =>
[visible] => false
[name] =>
[short_explain] =>
[long_explain] =>
)
)
[1] => Array
(
[name] => On Damage
[code] => local Unit target = Event.getTarget()
local Buff b = target.getBuffOfType(tomy_PhoenixFireBuff)
local integer level = tower.getLevel()
local real armorLoss = 0.60 + 0.015 * level
if b != 0 then
call tomy_PhoenixFireBuff.apply(tower, target, b.getPower() + R2I(armorLoss * 100.0))
else
call tomy_PhoenixFireBuff.apply(tower, target, R2I(armorLoss * 100.0))
endif
[values] => Array
(
[ONDAMAGE_chance] => 1.0
[icon] =>
[visible] => false
[name] =>
[short_explain] =>
[ONDAMAGE_chanceLevelAdd] => 0.0
[long_explain] =>
)
)
[2] => Array
(
[name] => Header
[code] => globals
//@import
ProjectileType tomy_PhoenixPT
//@import
BuffType tomy_PhoenixFireBuff
endglobals
//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
endfunction
[values] => Array
(
[icon] =>
[visible] => false
[name] =>
[short_explain] =>
[long_explain] =>
)
)
[3] => Array
(
[name] => Autocast
[code] => local Buff b
local Iterate it = Iterate.overUnitsInRangeOfCaster(tower, TARGET_TYPE_CREEPS, 3000.0)
local Unit u
loop
set u = it.next()
exitwhen u == 0
set b = u.getBuffOfType(tomy_PhoenixFireBuff)
if b != 0 then
call b.removeBuff()
endif
endloop
[values] => Array
(
[caster_art] =>
[icon] => ReplaceableTextures\CommandButtons\BTNWallOfFire.blp
[AUTOCAST_cooldown] => 1.0
[AUTOCAST_numBuffsBeforeIdle] => 0
[AUTOCAST_isExtended] => false
[long_explain] => When Phoenixfire expires, it erupts and deals |cffFFFF80260|r elemental damage per armor point the creep is missing in |cffFFFF80200|r range around its target. Additionally the target regains only |cffFFFF8060%|r of its armor. Creeps further away recieve less damage. This ability can be cast to make Phoenixfire expire immediately.|n|n|cffFF8000Level Bonus:|r|n|cffFFFF80-1.5%|r armor regain
[AUTOCAST_autocastType] => AC_TYPE_NOAC_IMMEDIATE
[AUTOCAST_manacost] => 0
[AUTOCAST_range] => 0.0
[AUTOCAST_buffType] => 0
[name] => Eruption
[AUTOCAST_targetSelf] => true
[short_explain] => When Phoenixfire expires, this tower deals elemental damage in an AoE.
[AUTOCAST_targetType] => 0
[target_art] =>
[AUTOCAST_autoRange] => 0.0
)
)
[4] => Array
(
[name] => On Attack
[code] => local integer attacks = 2
local boolean add = false
local Unit maintarget = Event.getTarget()
local Unit target
local Iterate it = Iterate.overUnitsInRangeOfUnit(tower,TARGET_TYPE_CREEPS,maintarget,450)
local real sidearc = 0.20
local boolean itDestroyed = false
if tower.getLevel() >= 15 then
set attacks = attacks + 1
endif
loop
exitwhen attacks == 0 // Exit when all attacks are fired
// If the Iterate is not destroyed, get the next target
if not itDestroyed then
set target = it.next()
// If there are no more targets
if target == 0 then
set itDestroyed = true // Iterate is destroyed (auto destroy)
set target = maintarget // target is the maintarget now
endif
endif
// If there are no more units, shoot at the maintarget (itDestroyed). If there are units then don't shoot at the maintarget
if itDestroyed or target != maintarget then
call Projectile.createBezierInterpolationFromUnitToUnit(tomy_PhoenixPT,tower,0,0,tower,target,0,sidearc,0,true).setScale(0.40)
set attacks = attacks - 1
set sidearc = -sidearc
if add then
set sidearc = sidearc + 0.20
endif
set add = not add
endif
endloop
// If the Iterate is not destroyed yet, destroy it
if not itDestroyed then
call it.destroy()
endif
[values] => Array
(
[icon] => ReplaceableTextures\CommandButtons\BTNOrbOfFire.blp
[visible] => true
[name] => Phoenixfire
[short_explain] => This tower attacks multiple targets and melts their armor.
[ONATTACK_chance] => 1.0
[ONATTACK_chanceLevelAdd] => 0.0
[long_explain] => The Phoenix attacks up to |cffFFFF803|r targets at once. If there are less creeps than attacks, the remaining attacks will hit the main target. The armor of attacked creeps melts, reducing it by |cffFFFF800.6|r for |cffFFFF805|r seconds. This buff is stackable.|n|n|cffFF8000Level Bonus:|r|n|cffFFFF80+0.015|r armor reduction|n|cffFFFF80+1|r target at level |cffFFFF8015|r
)
)
)
[abilities] => Array
(
)
[buffs] => Array
(
)
[units] => Array
(
)
[references] => Array
(
[0] => Array
(
[export] => false
[category] => global
[typ] => ProjectileType
[name] => tomy_PhoenixPT
)
[1] => Array
(
[export] => false
[category] => global
[typ] => BuffType
[name] => tomy_PhoenixFireBuff
)
)
)