Array
(
    [scriptVersion] => 8
    [oeValues] => Array
        (
            [auto] => Array
                (
                )

            [Art] => ReplaceableTextures\CommandButtons\BTNRockGolem.blp
            [turnRate] => 3
            [dmgplus1] => 266
            [bldtm] => 1
            [goldcost] => 175
            [sides1] => 20
            [manaN] => 30
            [acquire] => 900
            [upgrades] => Array
                (
                )

            [Upgrade] => Array
                (
                )

            [Name] => Sparking Golem
            [weapTp1] => missile
            [MissileHoming] => 1
            [file] => units\creeps\RockGolem\RockGolem.mdl
            [uberSplat] => OSMA
            [Missilespeed] => 1500
            [dice1] => 1
            [RngBuff1] => 250
            [regenMana] => 1.5
            [modelScale] => 0.3
            [rangeN1] => 900
            [atkType1] => siege
            [cool1] => 1.75
            [Ubertip] => Not the brightest spark, but it conducts itself well.
            [abilList] => Array
                (
                )

            [buildingShadow] => Array
                (
                )

            [targs1] => Array
                (
                )

            [weapsOn] => 1
        )

    [settings] => Array
        (
            [balanceTip] => |cffFFFF00+10% |rdmg to bosses (|cffFFFF00+1%|r/lvl)
            [abil_factor] => 0.83
            [author] => Moppy
            [alpha] => 255
            [authorDisplay] => |c006969FFMoppy|r
            [version] => 1.0
            [element] => storm
            [rarity] => uncommon
        )

    [effects] => Array
        (
            [0] => Array
                (
                    [x] => -0.319347
                    [y] => 13.793
                    [z] => -6.4
                    [scale] => 0.5
                    [rot] => 4.71239
                    [file] => Abilities\Spells\Orc\Purge\PurgeBuffTarget.mdl
                    [red] => 255
                    [green] => 255
                    [blue] => 255
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

                    [aniSpeed] => 50
                    [pcolor] => 255
                )

            [1] => Array
                (
                    [x] => -32.6028
                    [y] => 41.1024
                    [z] => -32
                    [scale] => 0.5
                    [rot] => 3.01942
                    [file] => Doodads\Barrens\Rocks\RockPillar\RockPillar2.mdl
                    [red] => 255
                    [green] => 255
                    [blue] => 255
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

                    [aniSpeed] => 50
                    [pcolor] => 255
                )

            [2] => Array
                (
                    [x] => 6.05197
                    [y] => 37.0998
                    [z] => -38.4
                    [scale] => 0.5
                    [rot] => 1.5708
                    [file] => Doodads\Barrens\Rocks\RockPillar\RockPillar1.mdl
                    [red] => 255
                    [green] => 255
                    [blue] => 255
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

                    [aniSpeed] => 50
                    [pcolor] => 255
                )

            [3] => Array
                (
                    [x] => 41.1925
                    [y] => -25.2889
                    [z] => -57.6
                    [scale] => 0.5
                    [rot] => 1.5708
                    [file] => Doodads\Barrens\Rocks\RockPillar\RockPillar1.mdl
                    [red] => 255
                    [green] => 255
                    [blue] => 255
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

                    [aniSpeed] => 50
                    [pcolor] => 255
                )

            [4] => Array
                (
                    [x] => -33.3287
                    [y] => -26.5848
                    [z] => -57.6
                    [scale] => 0.5
                    [rot] => 3.10669
                    [file] => Doodads\Barrens\Rocks\RockPillar\RockPillar0.mdl
                    [red] => 255
                    [green] => 255
                    [blue] => 255
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

                    [aniSpeed] => 50
                    [pcolor] => 255
                )

            [5] => Array
                (
                    [x] => -13.6277
                    [y] => -44.2591
                    [z] => -64
                    [scale] => 0.5
                    [rot] => 2.0944
                    [file] => Doodads\Barrens\Rocks\RockPillar\RockPillar1.mdl
                    [red] => 255
                    [green] => 255
                    [blue] => 255
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

                    [aniSpeed] => 50
                    [pcolor] => 255
                )

        )

    [dmgTable] => Array
        (
            [0] => Array
                (
                    [id] => MOD_DMG_TO_BOSS
                    [base] => 0.1
                    [add] => 0.01
                )

        )

    [triggers] => Array
        (
            [0] => Array
                (
                    [name] => On Attack
                    [code] => local Unit c = Event.getTarget()
    local Projectile p

    if tower.getBuffOfType(moppy_overcharge_buff) != 0 then
        set p = Projectile.createFromUnitToUnit(moppy_golem_energy_shot, tower, 1, 0, tower, c, true, false, false)
        call p.setScale(0.30)
    else
        set p = Projectile.createFromUnitToUnit(moppy_golem_physical_shot, tower, 1, 0, tower, c, true, false, false)
        call p.setScale(0.30)
    endif
                    [values] => Array
                        (
                            [visible] => false
                            [icon] => 
                            [name] => 
                            [short_explain] => 
                            [ONATTACK_chance] => 1.0
                            [ONATTACK_chanceLevelAdd] => 0.0
                            [long_explain] => 
                        )

                )

            [1] => Array
                (
                    [name] => Header
                    [code] => globals
    //@export
    BuffType moppy_overcharge_buff
    //@export
    ProjectileType moppy_golem_energy_shot
    //@export
    ProjectileType moppy_golem_physical_shot
    endglobals
    
    function moppy_golem_energy_projectile takes Projectile p, Unit c returns nothing
        local Tower t = p.getCaster()
        call t.doCustomAttackDamage(c, t.getCurrentAttackDamageWithBonus(), t.calcAttackMulticrit(0.0, 0.0, 0), AttackType.ENERGY)
    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()
    set moppy_overcharge_buff = BuffType.create(4.0, 0.0, true)
    call m.addModification(MOD_ATTACKSPEED, 0.0, 0.001)
    call moppy_overcharge_buff.setBuffModifier(m)
    call moppy_overcharge_buff.setBuffIcon('@@0@@')
    
    set moppy_golem_energy_shot = ProjectileType.create("Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl", 4, 1500)
    call moppy_golem_energy_shot.enableHoming(moppy_golem_energy_projectile, 0.0)
    
    set moppy_golem_physical_shot = ProjectileType.create("Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl", 4, 1500)  
	endfunction
                    [values] => Array
                        (
                            [visible] => false
                            [icon] => 
                            [name] => 
                            [short_explain] => 
                            [long_explain] => 
                        )

                )

            [2] => Array
                (
                    [name] => On Damage
                    [code] => if tower.getBuffOfType(moppy_overcharge_buff) != 0 then
        set Event.damage = 0
    endif
                    [values] => Array
                        (
                            [ONDAMAGE_chance] => 1.0
                            [visible] => false
                            [icon] => 
                            [name] => 
                            [short_explain] => 
                            [ONDAMAGE_chanceLevelAdd] => 0.0
                            [long_explain] => 
                        )

                )

            [3] => Array
                (
                    [name] => Autocast
                    [code] => call SFXAtUnit("Abilities\\Spells\\Orc\\LightningShield\\LightningShieldTarget.mdl", tower.getUnit())
    call moppy_overcharge_buff.applyCustomPower(tower, Event.getTarget(), tower.getLevel(), 500 + tower.getLevel() * 10)
                    [values] => Array
                        (
                            [AUTOCAST_cooldown] => 4
                            [AUTOCAST_autoRange] => 900
                            [AUTOCAST_manacost] => 20
                            [icon] => ReplaceableTextures\CommandButtons\BTNPurge.blp
                            [AUTOCAST_range] => 900
                            [AUTOCAST_targetType] => 0
                            [AUTOCAST_numBuffsBeforeIdle] => 1
                            [caster_art] => 
                            [long_explain] => Increases the tower's attack speed by |cffFFFF8050%|r and changes its attack type to |cff00FFFFEnergy|r. Lasts |cffFFFF804|r seconds.|n|n|cffFF8000Level Bonus:|r|n|cffFFFF80+1%|r attack speed
                            [target_art] => 
                            [AUTOCAST_autocastType] => AC_TYPE_OFFENSIVE_IMMEDIATE
                            [AUTOCAST_buffType] => moppy_overcharge_buff
                            [AUTOCAST_isExtended] => false
                            [name] => Overcharge
                            [AUTOCAST_targetSelf] => true
                            [short_explain] => Increases the tower's attack speed and changes its attack type to |cff00FFFFEnergy|r for a short duration.
                        )

                )

        )

    [abilities] => Array
        (
        )

    [buffs] => Array
        (
            [0] => Array
                (
                    [id] => @@0@@
                    [derivedFrom] => BNab
                    [oeValues] => Array
                        (
                            [Targetattach] => hand,right
                            [EditorName] => Overcharge
                            [Targetattach1] => hand,left
                            [Buffubertip] => Attack speed increased; attack type changed to Energy.
                            [TargetArt] => Abilities\Weapons\FarseerMissile\FarseerMissile.mdl
                            [Targetattachcount] => 2
                            [Bufftip] => Overcharge
                            [Buffart] => ReplaceableTextures\CommandButtons\BTNPurge.blp
                        )

                )

        )

    [units] => Array
        (
        )

    [references] => Array
        (
            [0] => Array
                (
                    [export] => true
                    [category] => global
                    [typ] => BuffType
                    [name] => moppy_overcharge_buff
                )

            [1] => Array
                (
                    [export] => true
                    [category] => global
                    [typ] => ProjectileType
                    [name] => moppy_golem_energy_shot
                )

            [2] => Array
                (
                    [export] => true
                    [category] => global
                    [typ] => ProjectileType
                    [name] => moppy_golem_physical_shot
                )

        )

    [lightning] => Array
        (
        )

)