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

            [Art] => ReplaceableTextures\CommandButtons\BTNINV_Misc_Bomb_01.blp
            [dmgplus1] => 329
            [bldtm] => 1
            [goldcost] => 200
            [sides1] => 1
            [Missilearc] => 0.35
            [launchZ] => 35
            [acquire] => 900
            [upgrades] => Array
                (
                )

            [Upgrade] => Array
                (
                )

            [Name] => Siege Fabricator
            [red] => 185
            [weapTp1] => msplash
            [file] => war3mapImported\CannonHead3.mdl
            [Missileart] => Abilities\Weapons\BoatMissile\BoatMissile.mdl
            [Missilespeed] => 1400
            [dice1] => 1
            [RngBuff1] => 250
            [green] => 185
            [animProps] => ready
            [modelScale] => 0.51
            [rangeN1] => 900
            [atkType1] => siege
            [cool1] => 1.9
            [Ubertip] => Deliver some boom, with extra boom on the side.
            [scaleBull] => 0
            [blue] => 185
            [abilList] => Array
                (
                )

            [moveHeight] => 17
            [buildingShadow] => Array
                (
                )

            [targs1] => ground
            [weapsOn] => 1
        )

    [settings] => Array
        (
            [balanceTip] => |cffFF0000Attacks GROUND only|r|n|cffCCFF00Splash attack:|n   |cffFFFF00175|r AoE: |cff00FF00100%|r damage|r|n|cffFFFF00+4% |rattack speed/lvl
            [abil_factor] => 0.88
            [author] => Ashbringer
            [alpha] => 255
            [authorDisplay] => |cffff6600Ashbringer|r
            [version] => 1.0
            [element] => iron
            [rarity] => uncommon
        )

    [effects] => Array
        (
            [0] => Array
                (
                    [x] => -0.477123
                    [y] => -14.3996
                    [z] => -12.8
                    [scale] => 0.1
                    [rot] => 1.5708
                    [file] => Doodads\Cityscape\Structures\City_ColumnSemiCircle\City_ColumnSemiCircle.mdl
                    [red] => 155
                    [green] => 135
                    [blue] => 115
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

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

            [1] => Array
                (
                    [x] => 0.316704
                    [y] => 14.3531
                    [z] => -12.8
                    [scale] => 0.1
                    [rot] => 4.71239
                    [file] => Doodads\Cityscape\Structures\City_ColumnSemiCircle\City_ColumnSemiCircle.mdl
                    [red] => 155
                    [green] => 135
                    [blue] => 115
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

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

            [2] => Array
                (
                    [x] => 0.0134532
                    [y] => 0.0780962
                    [z] => 0
                    [scale] => 0.27
                    [rot] => 1.5708
                    [file] => Doodads\Cityscape\Props\FountainRuined\FountainRuined.mdl
                    [red] => 75
                    [green] => 75
                    [blue] => 75
                    [alpha] => 255
                    [pitch] => 0
                    [advanced] => false
                    [animation] => Array
                        (
                        )

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

            [3] => Array
                (
                    [x] => -0.297862
                    [y] => -8.16974
                    [z] => 6.4
                    [scale] => 0.1
                    [rot] => 1.5708
                    [file] => Doodads\Cityscape\Structures\Archway1\Archway1.mdl
                    [red] => 155
                    [green] => 135
                    [blue] => 115
                    [alpha] => 255
                    [pitch] => -1.57
                    [advanced] => false
                    [animation] => Array
                        (
                        )

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

            [4] => Array
                (
                    [x] => 0.387533
                    [y] => 10.4651
                    [z] => 6.4
                    [scale] => 0.1
                    [rot] => 4.71239
                    [file] => Doodads\Cityscape\Structures\Archway1\Archway1.mdl
                    [red] => 155
                    [green] => 135
                    [blue] => 115
                    [alpha] => 255
                    [pitch] => -1.57
                    [advanced] => false
                    [animation] => Array
                        (
                        )

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

            [5] => Array
                (
                    [x] => 10.3624
                    [y] => 0.836575
                    [z] => 6.4
                    [scale] => 0.1
                    [rot] => 3.14159
                    [file] => Doodads\Cityscape\Structures\Archway1\Archway1.mdl
                    [red] => 155
                    [green] => 135
                    [blue] => 115
                    [alpha] => 255
                    [pitch] => -1.57
                    [advanced] => false
                    [animation] => Array
                        (
                        )

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

            [6] => Array
                (
                    [x] => -10.9145
                    [y] => 1.18478
                    [z] => 6.4
                    [scale] => 0.1
                    [rot] => 0
                    [file] => Doodads\Cityscape\Structures\Archway1\Archway1.mdl
                    [red] => 155
                    [green] => 135
                    [blue] => 115
                    [alpha] => 255
                    [pitch] => -1.57
                    [advanced] => false
                    [animation] => Array
                        (
                        )

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

        )

    [dmgTable] => Array
        (
            [0] => Array
                (
                    [id] => MOD_ATTACKSPEED
                    [base] => 0
                    [add] => 0.04
                )

        )

    [triggers] => Array
        (
            [0] => Array
                (
                    [name] => On Attack
                    [code] => call ashbringer_siege_launch(tower, Event.getTarget(), tower.getUID(), 175, 0.1 + (tower.getLevel() * 0.004), 5, 52)
                    [values] => Array
                        (
                            [visible] => true
                            [icon] => ReplaceableTextures\CommandButtons\BTNINV_Misc_Bomb_01.blp
                            [name] => Siege Ordnance
                            [short_explain] => Attacks have a chance to fire additional projectiles that are less accurate.
                            [ONATTACK_chance] => 0.1
                            [ONATTACK_chanceLevelAdd] => 0.004
                            [long_explain] => Attacks have a |cffffff8010%|r chance to fire an additional projectile at the target with less accuracy. This effect can repeatedly trigger itself up to a maximum of |cffffff805|r times.|n|n|cffFF8000Level Bonus:|r|n|cffFFFF80+0.4%|r chance
                        )

                )

            [1] => Array
                (
                    [name] => Header
                    [code] => globals
        ProjectileType ashbringer_siege_missile
    endglobals
    
    //@export
    function ashbringer_siege_launch takes Tower tower, Creep target, integer UID, real aoe, real chance, integer max, real z returns nothing
        local real target_x = target.getX()
        local real target_y = target.getY()
        local Projectile p
        local real random_angle = GetRandomReal(0, 360)
        local real random_distance = GetRandomReal(aoe-150, aoe-10)
        
        call TriggerSleepAction(0.05)
        if tower.getUID() == UID then
            set target_x = target_x + random_distance * Cos(Deg2Rad(random_angle))
            set target_y = target_y + random_distance * Sin(Deg2Rad(random_angle))
            set p = Projectile.createLinearInterpolationFromPointToPoint(ashbringer_siege_missile, tower, 0, 0, tower.getX(), tower.getY(), z, target_x, target_y, 0, 0.35)
            set p.userReal = tower.getCurrentAttackDamageWithBonus()
            set p.userReal2 = tower.calcAttackMulticrit(0, 0, 0)
            set p.userReal3 = aoe
            set max = max - 1
            if max > 0 and tower.calcChance(chance) then
                call ashbringer_siege_launch(tower, target, UID, aoe, chance, max, z)
            endif
        endif
    endfunction
    
    function ashbringer_siege_hit takes Projectile p returns nothing
        local Tower tower = p.getCaster()
        local Iterate i
        local Creep next
        
        set i = Iterate.overUnitsInRange(tower, TARGET_TYPE_CREEPS, p.x, p.y, p.userReal3)
        loop
            set next = i.next()
            exitwhen next == 0
            call tower.doAttackDamage(next, p.userReal, p.userReal2)
        endloop
    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 ashbringer_siege_missile = ProjectileType.create("Abilities\\Weapons\\BoatMissile\\BoatMissile.mdl", 5, 1400)
        call ashbringer_siege_missile.setEventOnCleanup(ProjectileEvent.ashbringer_siege_hit)
    endfunction
                    [values] => Array
                        (
                            [visible] => false
                            [icon] => 
                            [name] => 
                            [short_explain] => 
                            [long_explain] => 
                        )

                )

        )

    [abilities] => Array
        (
        )

    [buffs] => Array
        (
        )

    [units] => Array
        (
        )

    [references] => Array
        (
        )

    [lightning] => Array
        (
        )

)