Glacier Tongue v1 
                1300
                     
             
                 | 
    
    
              ID:              686 
             Family ID:       
             Author:          SirCoqaLot. 
             Rarity:          uncommon 
             Element:         ice 
            
                 Attack Type:     Energy 
                 Attack Range:    760 
                 Attack CD:       2.3 
                 Damage:  2698-2698 
            
            
             Status:          Approved 
     | 
    
    
    
             
                            Glacial Wrath
                        Attacks of this tower slow the attacked creep by 13% for 3 seconds. Each attack has a 4% to deal 1300 spelldamage and stun the target for 1.0 seconds. The chance to stun the target is increased by 4% per attack and resets after a target is stunned. Level Bonus: +26.0 spelldamage +0.65% slow  | 
    
    
    
            Download
            
            
            
            
             Toggle Triggers Header     globals
    //@import
    BuffType sir_frost_glacier
    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
                        
                    On Damage 
                            
                                ONDAMAGE_chance: 1.0
                            
                                ONDAMAGE_chanceLevelAdd: 0.0
                            
                             
                        
                        
                            function onDamage takes Tower tower returns nothing
    local Creep creep = Event.getTarget()
            
    call sir_frost_glacier.applyCustomTimed(tower,creep,130*(1+tower.getLevel()/20),3)
    call tower.getOwner().displayFloatingTextX(I2S(R2I(tower.userInt))+"% Chance",tower,50,150,255,255,0.05,2,3) 
   
    
        if tower.calcChance(tower.userInt*0.01) == true and not Event.getTarget().isImmune() then
            call cb_stun.applyOnlyTimed(tower,Event.getTarget(),1.0)
            call tower.doSpellDamage(creep,1300*(1+tower.getLevel()*0.02),tower.calcSpellCritNoBonus())
            set tower.userInt = 4
        else 
            set tower.userInt = tower.userInt +4
        endif        
endfunction
                        
                    On Tower Creation function onCreate takes Tower tower returns nothing
set tower.userInt = 4
endfunction
                        
                     | 
            
             
                Cirrus Warrior v1 
                1312
                     
             
                 | 
    
    
              ID:              275 
             Family ID:       
             Author:          i_mOck_death 
             Rarity:          uncommon 
             Element:         storm 
            
                 Attack Type:     Energy 
                 Attack Range:    840 
                 Attack CD:       2.1 
                 Damage:  1076-2387 
            
            
             Status:          Approved 
     | 
    
    
    
             Description: A warrior trained high in the sky.  
                            Specials:
                        Bounce attack:
   2 targets
   -0% damage per bounce
                     
                            Lightning Strike
                        Whenever this tower's attack does not bounce it shoots down a delayed lightning bolt onto the target. The lightning bolt deals 1875 Energy damage. Level Bonus: +93.75 damage  | 
    
    
    
            Download
            
            
            
            
             Toggle Triggers On Damage 
                            
                                ONDAMAGE_chance: 1.0
                            
                                ONDAMAGE_chanceLevelAdd: 0.0
                            
                             
                        
                        
                            function onDamage takes Tower tower returns nothing
    local Unit creep = Event.getTarget()
    local integer cid = creep.getUID()
    if Event.isMainTarget()  == true then
        set tower.userInt = 1
    else
        set tower.userInt = 0
    endif
    call TriggerSleepAction(.4)
    if tower.userInt == 1 and creep.getUID() == cid then
         call SFXAtUnit("Abilities\\Spells\\Other\\Monsoon\\MonsoonBoltTarget.mdl",creep.getUnit())
         call tower.doAttackDamage(creep,1875+(93.75*tower.getLevel()),tower.calcAttackMulticrit(0.0,0.0,0))
    endif
endfunction
                        
                    On Tower Creation function onCreate takes Tower tower returns nothing
set tower.userInt = 0
endfunction
                        
                     | 
            
             
                Blooming Cactus v1 
                1350
                     
             
                 | 
    
    
              ID:              44 
             Family ID:       
             Author:          Lapsus 
             Rarity:          common 
             Element:         nature 
            
                 Attack Type:     Essence 
                 Attack Range:    820 
                 Attack CD:       2.5 
                 Damage:  2496-2496 
            
            
             Status:          Approved 
     | 
    
    
    
             Description: A troublesome desert plant with a high AoE. Efficient against mass creeps and humans.  
                            Specials:
                        Splash attack: 320 AoE: 50% damage +23% dmg to masses (+1.4%/lvl) +23% dmg to humanoids (+1.4%/lvl)  | 
    
    
    
            Download
            
            
             | 
            
             
                Teenage Tuskar v1 
                1350
                     
             
                 | 
    
    
              ID:              143 
             Family ID:       
             Author:          Palandu 
             Rarity:          uncommon 
             Element:         ice 
            
                 Attack Type:     Elemental 
                 Attack Range:    900 
                 Attack CD:       1.9 
                 Damage:  2403-2403 
            
            
             Status:          Approved 
     | 
    
    
    
             Description: Even more of a menace than the child.  
                            Specials:
                        +10% dmg to champions (+0.7%/lvl) +12.5% dmg to bosses (+1.2%/lvl) -20% dmg to air  
                            Vicious Snow Ball
                        Throws a fast snowball on attack at the target's head when it's not facing this tower. But the snowball only has a 20% chance to hit, where it hits is decided by the angle of attack. Temple Crusher : If it hits side-on, does 120% of its attack damage as spell damage and a 0.8 second stun. Knockdown : If it hits the back of the head, does 40% of its attack damage as spell damage and a 0.6 second stun. Level Bonus: +1.25% chance to hit.  | 
    
    
    
            Download
            
            
            
            
             Toggle Triggers Header     globals
        //@import
        ProjectileType billy_SnowBall
    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
                        
                    On Attack 
                            
                                ONATTACK_chance: 1.0
                            
                                ONATTACK_chanceLevelAdd: 0.0
                            
                             
                        
                        
                            function onAttack takes Tower tower returns nothing
        local Unit u = Event.getTarget()
        local real facingDelta
        local real unitToTowerVector = Atan2(tower.getY() - u.getY(), tower.getX() - u.getX())*bj_RADTODEG
        local Projectile p
        
        if (unitToTowerVector < 0) then
           set unitToTowerVector = unitToTowerVector + 360
        endif
        
        set facingDelta = unitToTowerVector - GetUnitFacing(u.getUnit()) 
        
        if (facingDelta < 0) then               
            set facingDelta = facingDelta + 360
        endif
        
        if (facingDelta > 180) then
            set facingDelta = 360 - facingDelta
        endif
        
        if facingDelta >=80 then   //launch
            set p = Projectile.createFromUnitToUnit(billy_SnowBall, tower, 100, 0, tower, Event.getTarget(), true, false, true)
            call p.setScale(1.3)
            if facingDelta <=100 then   //temple shot
                set p.userInt2=1
                set p.userReal=tower.getCurrentAttackDamageWithBonus()*1.2
                set p.userReal2=0.8
            else                        //back of the head
                set p.userInt2=2
                set p.userReal=tower.getCurrentAttackDamageWithBonus()*0.4
                set p.userReal2=0.6
            endif
            
            //decide hit/miss
            if tower.calcChance(0.2+I2R(tower.getLevel())/80) then
                set p.userInt = 1 //hit
            else
                set p.userInt = 0 //miss
            endif
        endif
endfunction
                        
                     | 
            
             
                Harpy Witch v1 
                1350
                     
             
                 | 
    
    
              ID:              145 
             Family ID:       
             Author:          drol 
             Rarity:          rare 
             Element:         storm 
            
                 Attack Type:     Energy 
                 Attack Range:    1000 
                 Attack CD:       2.4 
                 Damage:  1832-1994 
            
            
                 Mana:     30 
                
                     Mana regen:     2 
                
            
             Status:          Approved 
     | 
    
    
    
             Description: Summoner of storms and rain. Harpies are known for their brutality and mercilessness.  
                            Specials:
                        Bounce attack:
   2 targets
   -25% damage per bounce
                     
                            Sparks
                        Increases the spell damage for a tower in 500 range by 15% and it's spell critical strike chance by 10%. Lasts 7.5 seconds. Level Bonus: +0.2% spell damage +0.1% spell critical strike chance +0.3 seconds duration AC_TYPE_OFFENSIVE_BUFF  
                            Twister
                        Attacks have a 8% chance to summon 2 tornados towards two random creeps in attack range of the harpy. Upon hit each tornado deals this tower's attack damage to the target and makes it suffer 10% additional damage from Storm towers for 5 seconds. Level Bonus: +0.3% chance +0.4% additional damage taken  | 
    
    
    
            Download
            
            
            
            
             Toggle Triggers Autocast 
                            
                                AUTOCAST_cooldown: 2
                            
                                AUTOCAST_autoRange: 500
                            
                                AUTOCAST_manacost: 22
                            
                                AUTOCAST_range: 500
                            
                                AUTOCAST_targetType: TARGET_TYPE_TOWERS
                            
                                AUTOCAST_numBuffsBeforeIdle: 1
                            
                                caster_art: 
                            
                                target_art: Abilities\Spells\Other\Monsoon\MonsoonBoltTarget.mdl
                            
                                AUTOCAST_autocastType: AC_TYPE_OFFENSIVE_BUFF
                            
                                AUTOCAST_buffType: drol_harpy
                            
                                AUTOCAST_isExtended: false
                            
                                AUTOCAST_targetSelf: false
                            
                             
                        
                        
                            private function onAutocast takes Tower tower returns nothing
    call drol_harpy.apply(tower, Event.getTarget(), tower.getLevel())
endfunction
                        
                    Header     globals
    
        //@export
        BuffType drol_harpy
        //@export
        BuffType drol_harpyDebuff
        //@export
        ProjectileType drol_harpyMissile 
    
    endglobals
    
    //On Hit function
    private function drol_harpyHit takes Projectile p, Unit creep returns nothing  
        local Tower tower = p.getCaster()
        call tower.doAttackDamage(creep,tower.getCurrentAttackDamageWithBonus(), tower.calcAttackMulticrit(0,0,0))  
        call drol_harpyDebuff.apply(tower, creep, tower.userInt)
    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()
        local Modifier n = Modifier.create()
        
        set drol_harpy = BuffType.create(7.5, 0.3, true)
        set drol_harpyDebuff = BuffType.create(5., 0., false)
        
        call m.addModification(MOD_SPELL_CRIT_CHANCE, 0.1, 0.001)
        call m.addModification(MOD_SPELL_DAMAGE_DEALT, 0.15, 0.002)
        call n.addModification(MOD_DMG_FROM_STORM, 0.10, 0.001)
        
        call drol_harpy.setBuffModifier(m)
        call drol_harpyDebuff.setBuffModifier(n)
        call drol_harpy.setBuffIcon('@@0@@')
        call drol_harpyDebuff.setBuffIcon('@@1@@')
        
        set drol_harpyMissile = ProjectileType.create("Abilities\\Spells\\Other\\Tornado\\TornadoElementalSmall.mdl",4,1000)  
        call drol_harpyMissile.enableHoming(ProjectileTargetEvent.drol_harpyHit, 0)  
    
    endfunction
                        
                    On Attack 
                            
                                ONATTACK_chance: 0.08
                            
                                ONATTACK_chanceLevelAdd: 0.003
                            
                             
                        
                        
                            function onAttack takes Tower tower returns nothing
    local Iterate i = Iterate.overUnitsInRangeOfCaster(tower, TARGET_CREEPS, 1000)  
    local integer k = 2
    local Unit u
    local Projectile p
    
    set tower.userInt = tower.getLevel() * 4
    
    loop
        set u = i.next()
        exitwhen u == 0 or k == 0
        set p = Projectile.createFromUnitToUnit(drol_harpyMissile, tower, 1, 0, tower, u, true, false, false) 
        call p.setScale(0.70)
        set k = k - 1
    endloop
    if u != 0 then
        call i.destroy()
    endif
    set i = 0
        
endfunction
                        
                    On Tower Creation function onCreate takes Tower tower returns nothing
    set tower.userInt = 0
endfunction
                        
                     | 
            
             
                Haunted Silo v1 
                1350
                     
             
                 | 
    
    
              ID:              269 
             Family ID:       
             Author:          Velex 
             Rarity:          common 
             Element:         darkness 
            
                 Attack Type:     Essence 
                 Attack Range:    900 
                 Attack CD:       2 
                 Damage:  2433-2434 
            
            
             Status:          Approved 
     | 
    
    
    
             Description: Tower with a chance to slow the movement speed of a unit on attacks.  
                            Atrophy
                        When this tower attacks a creep it has a 16% (10.67% for bosses) chance to slow it by 24% for 5 seconds. Level Bonus: +0.16% (0.11% for bosses) chance  | 
    
    
    
            Download
            
            
            
            
             Toggle Triggers Header   globals 
    //@import
    BuffType  velex_slow 
  endglobals
//The init function
private function init takes nothing returns nothing
endfunction
                        
                    On Attack 
                            
                                ONATTACK_chance: 1
                            
                                ONATTACK_chanceLevelAdd: 0
                            
                             
                        
                        
                            function onAttack takes Tower tower returns nothing
        local Unit creep = Event.getTarget() 
        local integer size = creep.getSize()
        local boolean calc
        
        if size == SIZE_BOSS then 
            set calc=tower.calcChance((.16+tower.getLevel()*0.0016)*2/3)
        else
            set calc=tower.calcChance(.16+tower.getLevel()*0.0016)
        endif
        if(calc==true) then
                call velex_slow.applyCustomTimed(tower,Event.getTarget(),R2I(0.24*1000),5)
        endif
        
    
endfunction
                        
                     | 
            
             
                Greater Wolves Den v1 
                1350
                     
             
                 | 
    
    
              ID:              472 
             Family ID:       
             Author:          ColdRocker 
             Rarity:          rare 
             Element:         nature 
            
                 Attack Type:     Physical 
                 Attack Range:    700 
                 Attack CD:       1.6 
                 Damage:  1485-1485 
            
            
             Status:          Approved 
     | 
    
    
    
             Description: A supporting tower that increases nearby towers attack speeds.  
                            Wolven Tenacity - Aura
                        The strong physical presence of the wolves encourages nearby towers within a 250 radius, to increase their attack speed by 15%. Level Bonus: +0.75% attack speed  | 
    
    
    
            Download
            
            
            
            
             Toggle Triggers Header     globals
      //@import
      BuffType speed_aura
    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
                        
                    Tower Aura 
                            
                                AURA_auraEffect: speed_aura
                            
                                AURA_power: 1500
                            
                                AURA_level: 1500
                            
                                AURA_auraRange: 250
                            
                                AURA_targetType: TARGET_TYPE_TOWERS
                            
                                AURA_levelAdd: 75
                            
                                AURA_powerAdd: 75
                            
                                AURA_targetSelf: true
                            
                             
                        
                        
                     | 
Description: