Array
(
[scriptVersion] => 8
[oeValues] => Array
(
[auto] => Array
(
)
[Art] => ReplaceableTextures\CommandButtons\BTNWisp.blp
[bldtm] => 1
[dmgplus1] => 337
[goldcost] => 400
[sides1] => 1
[manaN] => 50
[acquire] => 900
[upgrades] => Array
(
)
[Upgrade] => Array
(
)
[Name] => Nature Sprites
[red] => 50
[weapTp1] => missile
[MissileHoming] => 1
[file] => .mdl
[uberSplat] => ESMB
[Missileart] => Abilities\Spells\Items\OrbVenom\OrbVenomMissile.mdl
[Missilespeed] => 1100
[dice1] => 1
[RngBuff1] => 250
[regenMana] => 2.5
[modelScale] => 0.1
[rangeN1] => 900
[atkType1] => chaos
[cool1] => 1.2
[Ubertip] => Friendly spirits that live in the trees.
[blue] => 50
[abilList] => Array
(
)
[buildingShadow] => Array
(
)
[targs1] => Array
(
)
[weapsOn] => 1
)
[settings] => Array
(
[balanceTip] => Array
(
)
[abil_factor] => 0.7
[author] => DaveMatthews
[alpha] => 255
[authorDisplay] => DaveMatthews
[element] => nature
[rarity] => uncommon
)
[effects] => Array
(
[0] => Array
(
[x] => 2.05586
[y] => 37.4154
[z] => 0
[scale] => 0.45
[rot] => 2.61799
[file] => Doodads\Felwood\Plants\FelwoodBush\FelwoodBush1.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[1] => Array
(
[x] => -36.9855
[y] => -19.1171
[z] => 0
[scale] => 0.45
[rot] => 3.31613
[file] => Doodads\Felwood\Plants\FelwoodBush\FelwoodBush1.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[2] => Array
(
[x] => 32.5132
[y] => -23.8192
[z] => 0
[scale] => 0.45
[rot] => 3.31613
[file] => Doodads\Felwood\Plants\FelwoodBush\FelwoodBush1.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[3] => Array
(
[x] => -19.9966
[y] => 17.0159
[z] => 0
[scale] => 0.55
[rot] => 1.65806
[file] => Doodads\Ruins\Plants\Ruins_Flower\Ruins_Flower1.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[4] => Array
(
[x] => 13.5195
[y] => -13.6904
[z] => 0
[scale] => 0.55
[rot] => 4.62512
[file] => Doodads\Ruins\Plants\Ruins_Flower\Ruins_Flower1.mdl
[red] => 255
[green] => 255
[blue] => 255
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[5] => Array
(
[x] => -12.8767
[y] => -37.275
[z] => 44.8
[scale] => 0.6
[rot] => 3.52557
[file] => Abilities\Spells\Human\ManaFlare\ManaFlareTarget.mdl
[red] => 50
[green] => 255
[blue] => 50
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[6] => Array
(
[x] => -24.5618
[y] => 28.4121
[z] => 51.2
[scale] => 0.6
[rot] => 3.52557
[file] => Abilities\Spells\Human\ManaFlare\ManaFlareTarget.mdl
[red] => 50
[green] => 255
[blue] => 50
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[7] => Array
(
[x] => 20.3915
[y] => 20.7577
[z] => 76.8
[scale] => 0.6
[rot] => 3.52557
[file] => Abilities\Spells\Human\ManaFlare\ManaFlareTarget.mdl
[red] => 50
[green] => 255
[blue] => 50
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[8] => Array
(
[x] => 47.4873
[y] => -39.6712
[z] => 70.4
[scale] => 0.6
[rot] => 3.52557
[file] => Abilities\Spells\Human\ManaFlare\ManaFlareTarget.mdl
[red] => 50
[green] => 255
[blue] => 50
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
[9] => Array
(
[x] => 0.14446
[y] => -0.000404939
[z] => 96
[scale] => 0.75
[rot] => 4.71239
[file] => Abilities\Weapons\KeeperGroveMissile\KeeperGroveMissile.mdl
[red] => 50
[green] => 255
[blue] => 50
[alpha] => 255
[pitch] => 0
[advanced] => false
[animation] => Array
(
)
[aniSpeed] => 50
[pcolor] => 255
)
)
[dmgTable] => Array
(
)
[triggers] => Array
(
[0] => Array
(
[name] => Header
[code] => globals
BuffType dave_gift
//@export
ProjectileType dave_sprite
endglobals
function gift_create takes Buff B returns nothing
local Tower target = B.getBuffedUnit()
local Tower tower = B.getCaster()
local integer elem = target.getCategory()
local integer relem
local integer level = B.getLevel()
local real memberModifier = tower.userReal // scale factor based on family member
// Ensure caster is still alive.
if tower == 0 then
return
endif
if elem == Element.ASTRAL then
set B.userInt = MOD_EXP_RECEIVED
set B.userReal = (0.28 + level * 0.008) * memberModifier
elseif elem == Element.DARKNESS then
set B.userInt = MOD_SPELL_DAMAGE_DEALT
set B.userReal = (0.16 + level * 0.004) * memberModifier
elseif elem == Element.NATURE then
set B.userInt = MOD_ATK_CRIT_CHANCE
set B.userReal = (0.04 + level * 0.001) * memberModifier
elseif elem == Element.FIRE then
set B.userInt = MOD_DAMAGE_ADD_PERC
set B.userReal = (0.16 + level * 0.004) * memberModifier
elseif elem == Element.ICE then
set B.userInt = MOD_BUFF_DURATION
set B.userReal = (0.2 + level * 0.006) * memberModifier
elseif elem == Element.STORM then
set B.userInt = MOD_ATTACKSPEED
set B.userReal = (0.08 + level * 0.002) * memberModifier
elseif elem == Element.IRON then
set B.userInt = MOD_ITEM_CHANCE_ON_KILL
set B.userReal = (0.06 + level * 0.0016) * memberModifier
endif
// Apply the modification
call target.modifyProperty(B.userInt, B.userReal)
if tower.calcChance(0.25) then
set relem = GetRandomInt(0,5)
// Relem cannot be 6 (IRON), so we apply iron buff if elem == relem.
if elem == relem then
set B.userInt2 = MOD_ITEM_CHANCE_ON_KILL
set B.userReal2 = (0.06 + level * 0.0016) * memberModifier
elseif relem == Element.ASTRAL then
set B.userInt2 = MOD_EXP_RECEIVED
set B.userReal2 = (0.28 + level * 0.008) * memberModifier
elseif relem == Element.DARKNESS then
set B.userInt2 = MOD_SPELL_DAMAGE_DEALT
set B.userReal2 = (0.16 + level * 0.004) * memberModifier
elseif relem == Element.NATURE then
set B.userInt2 = MOD_ATK_CRIT_CHANCE
set B.userReal2 = (0.04 + level * 0.001) * memberModifier
elseif relem == Element.FIRE then
set B.userInt2 = MOD_DAMAGE_ADD_PERC
set B.userReal2 = (0.16 + level * 0.004) * memberModifier
elseif relem == Element.ICE then
set B.userInt2 = MOD_BUFF_DURATION
set B.userReal2 = (0.2 + level * 0.006) * memberModifier
elseif relem == Element.STORM then
set B.userInt2 = MOD_ATTACKSPEED
set B.userReal2 = (0.08 + level * 0.002) * memberModifier
endif
// Apply the bonus modification
call target.modifyProperty(B.userInt2, B.userReal2)
set B.userInt3 = Effect.createColored("Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl", target.getX(), target.getY(), 150, 0, 0.9, 255, 180, 180, 255)
else
set B.userInt2 = 0
set B.userInt3 = Effect.createScaled("Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl", target.getX(), target.getY(), 150, 0, 0.75)
endif
endfunction
function effect_clean takes Buff B returns nothing
local Tower target = B.getBuffedUnit()
// Remove the modification
call target.modifyProperty(B.userInt, -B.userReal)
if B.userInt2 != 0 then
// Remove the bonus modification
call target.modifyProperty(B.userInt2, -B.userReal2)
endif
if B.userInt3 != 0 then
call Effect(B.userInt3).destroy()
endif
endfunction
function spritehit takes Projectile P, Unit target returns nothing
local Tower tower = P.getCaster()
call dave_gift.apply(tower, target, tower.getLevel())
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 dave_gift = BuffType.create(5,0,true)
call dave_gift.setBuffIcon('@@0@@')
call dave_gift.addEventOnCreate(gift_create)
call dave_gift.addEventOnCleanup(effect_clean)
set dave_sprite = ProjectileType.create("Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl",4,400)
call dave_sprite.enableHoming(ProjectileTargetEvent.spritehit,0)
endfunction
[values] => Array
(
[visible] => false
[icon] =>
[name] =>
[short_explain] =>
[long_explain] =>
)
)
[1] => Array
(
[name] => Autocast
[code] => local Projectile p
set p = Projectile.createFromUnitToUnit(dave_sprite, tower, 0, 0, tower, Event.getTarget(), true, false, false)
call p.setScale(0.75)
call p.color(50,255,50,255)
[values] => Array
(
[AUTOCAST_cooldown] => 2
[AUTOCAST_autoRange] => 500
[AUTOCAST_manacost] => 45
[icon] => ReplaceableTextures\CommandButtons\BTNRejuvenation.blp
[AUTOCAST_range] => 500
[AUTOCAST_targetType] => TARGET_TYPE_TOWERS
[AUTOCAST_numBuffsBeforeIdle] => 5
[caster_art] =>
[long_explain] => One of the spirits flies towards a tower in |cffffff80500|r range and buffs it for |cffffff805|r seconds. The buff has a different effect depending on the tower's element:|n|cffFFFF80+28%|r experience for Astral|n|cffFFFF80+16%|r spell damage for Darkness|n|cffFFFF80+4%|r crit chance for Nature|n|cffFFFF80+16%|r damage for Fire|n|cffFFFF80+20%|r buff duration for Ice|n|cffFFFF80+8%|r attack speed for Storm|n|cffFFFF80+6%|r item chance for Iron|nThe buffed tower has a |cffFFFF8025%|r chance to receive another random effect in addition to the first one.|n|n|cffFF8000Level Bonus:|r|n|cffFFFF80+0.8%|r experience|n|cffFFFF80+0.4%|r spell damage|n|cffFFFF80+0.1%|r crit chance|n|cffFFFF80+0.4%|r damage|n|cffFFFF80+0.6%|r buff duration|n|cffFFFF80+0.2%|r attack speed|n|cffFFFF80+0.14%|r item chance
[target_art] =>
[AUTOCAST_autocastType] => AC_TYPE_OFFENSIVE_BUFF
[AUTOCAST_buffType] => 0
[AUTOCAST_isExtended] => false
[name] => Nature's Gift
[AUTOCAST_targetSelf] => false
[short_explain] => Buffs a tower, increasing stats depending on its element.
)
)
[2] => Array
(
[name] => On Tower Creation
[code] => set tower.userReal = 1.0 //Member buff strength modifier
[values] => Array
(
[visible] => false
[icon] =>
[name] =>
[short_explain] =>
[long_explain] =>
)
)
)
[abilities] => Array
(
)
[buffs] => Array
(
[0] => Array
(
[id] => @@0@@
[derivedFrom] => Bslo
[oeValues] => Array
(
[Buffubertip] => This unit has increased stats depending on its element.
[TargetArt] => Array
(
)
[Bufftip] => Nature's Gift
[Buffart] => ReplaceableTextures\CommandButtons\BTNRejuvenation.blp
)
)
)
[units] => Array
(
)
[references] => Array
(
[0] => Array
(
[export] => true
[category] => global
[typ] => ProjectileType
[name] => dave_sprite
)
)
[lightning] => Array
(
)
)