Basics of Calculus v1
425
lvl: 14
ID:
165
Author:
drol
Rarity:
rare
Status:
Approved

Description:

Contains all information you need to perfect your attack, in a very abstract way.
Learn
Grants a tower 1 experience.

Level Bonus:
+0.04 experience

AC_TYPE_ALWAYS_BUFF
15s cooldown
Download

Toggle Triggers

Autocast

caster_art: AUTOCAST_cooldown: 15 AUTOCAST_numBuffsBeforeIdle: 0 goldcost: 425 AUTOCAST_isExtended: false AUTOCAST_autocastType: AC_TYPE_ALWAYS_BUFF AUTOCAST_manacost: 0 AUTOCAST_range: 200 AUTOCAST_buffType: 0 AUTOCAST_targetSelf: true AUTOCAST_targetType: TARGET_TYPE_TOWERS target_art: Abilities\Spells\Items\AIim\AIimTarget.mdl AUTOCAST_autoRange: 200
    call Event.getTarget().addExp(1. + itm.getCarrier().getLevel() * 0.04)
Unyielding Maul v1
437
lvl: 22
ID:
280
Author:
drol
Rarity:
uncommon
Status:
Approved

Description:

Being unbendable this weapon can give the wielder an advantage or a disadvantage.
Specials:
+25% damage
Miss
The wielder has a 10% chance to miss an attack.
Download

Toggle Triggers

On Attack

goldcost: -195 ONATTACK_chance: 1.0 ONATTACK_chanceLevelAdd: 0.0
function onAttack takes Item itm returns nothing
    local Unit tower = itm.getCarrier()
    
    if not tower.calcChance(0.90) then
        set Event.damage = 0
        call tower.getOwner().displayFloatingTextX("Miss",tower,255, 0, 0,255,0.05,0.0,2.0)
    endif
endfunction
Liquid Gold v1
447
lvl: 15
ID:
186
Author:
drol
Rarity:
rare
Status:
Approved

Description:

Boosts damage with a drawback.
Specials:
+35% damage
Hangover
Each attack has a 10% attackspeed adjusted chance to give the user a hangover, slowing its attackspeed by 30% for 8 seconds and stunning it for 3 seconds when it expires.

Level Bonus:
+1% attackspeed
-0.1 second stun duration
Download

Toggle Triggers

Header

goldcost: 0
    globals
        BuffType drol_hangover
    endglobals
    
    function drolDrunk takes Buff b returns nothing
        local Unit tower = b.getCaster()
        call cb_stun.applyOnlyTimed(tower,tower,3-tower.getLevel()*0.1)
    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()
        call m.addModification(MOD_ATTACKSPEED,-0.30,0.01)
        set drol_hangover = BuffType.create(8,0,false)
        call drol_hangover.setBuffModifier(m)
        call drol_hangover.setBuffIcon('@@0@@')
        call drol_hangover.setEventOnExpire(EventHandler.drolDrunk)
    
    endfunction

On Attack

goldcost: -600 ONATTACK_chance: 1.0 ONATTACK_chanceLevelAdd: 0.0
function onAttack takes Item itm returns nothing
    local Tower tower = itm.getCarrier()
    local real speed = tower.getBaseAttackspeed()
    
    if tower.calcBadChance(0.1 * speed) then
        call drol_hangover.apply(tower,tower,tower.getLevel())
    endif
endfunction
Lich Mask v1
450
lvl: 16
ID:
213
Author:
cedi
Rarity:
rare
Status:
Approved

Description:

They make great party favor! Although they do melt your face off.
Breath of Decay
On attack, this item can change the carrier's attacktype to Decay at the cost of 100 charges. Regenerates 50 charges per attack. This effect is not visible on the tower itself.

Level Bonus:
+1 charge regenerated
Download

Toggle Triggers

On Attack

goldcost: 0 ONATTACK_chance: 1.0 ONATTACK_chanceLevelAdd: 0.0
function onAttack takes Item itm returns nothing
    set itm.userReal = itm.userReal + 50.0 + 1.0 * itm.getCarrier().getLevel()
    call itm.setCharges( R2I( itm.userReal ) )
endfunction

On Damage

ONDAMAGE_chance: 1.0 goldcost: 450 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Item itm returns nothing
    local Tower T = itm.getCarrier()
    local Creep C = Event.getTarget()   //Remove original dmg bonus                                 |Add
    
    if itm.userReal >= 100.0 then
        set Event.damage = Event.damage     / T.getAttackType().getDamageAgainst( C.getArmorType() )    * AttackType.DECAY.getDamageAgainst( C.getArmorType() )
        call SFXOnUnit( "Abilities\\Spells\\Undead\\DeathandDecay\\DeathandDecayTarget.mdl", C.getUnit(), "chest" )
        set itm.userReal = itm.userReal - 100.0
        call itm.setCharges( R2I( itm.userReal ) )
    endif
endfunction

On Item Pickup

goldcost: 0
function onPickup  takes Item itm returns nothing
    set itm.userReal = 0.0
    call itm.setCharges( 0 )
endfunction
Brimstone Helmet v1
450
lvl: 16
ID:
214
Author:
cedi
Rarity:
rare
Status:
Approved

Description:

Never ask an abstinent dwarfen smith for a custom-fitted helmet.
Breath of Fire
On attack, this item can change the carrier's attacktype to Elemental at the cost of 100 charges. Regenerates 50 charges per attack. This effect is not visible on the tower itself.

Level Bonus:
+1 charge regenerated
Download

Toggle Triggers

On Attack

goldcost: 0 ONATTACK_chance: 1.0 ONATTACK_chanceLevelAdd: 0.0
function onAttack takes Item itm returns nothing
    set itm.userReal = itm.userReal + 50.0 + 1.0 * itm.getCarrier().getLevel()
    call itm.setCharges( R2I( itm.userReal ) )
endfunction

On Damage

ONDAMAGE_chance: 1.0 goldcost: 450 ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Item itm returns nothing
    local Tower T = itm.getCarrier()
    local Creep C = Event.getTarget()   //Remove original dmg bonus                                 |Add
    
    if itm.userReal >= 100.0 then
        set Event.damage = Event.damage     / T.getAttackType().getDamageAgainst( C.getArmorType() )    * AttackType.ELEMENTAL.getDamageAgainst( C.getArmorType() )
        call SFXOnUnit( "Abilities\\Spells\\Other\\Incinerate\\IncinerateBuff.mdl", C.getUnit(), "chest" )
        set itm.userReal = itm.userReal - 100.0
        call itm.setCharges( R2I( itm.userReal ) )
    endif
endfunction

On Item Pickup

goldcost: 0
function onPickup  takes Item itm returns nothing
    set itm.userReal = 0.0
    call itm.setCharges( 0 )
endfunction
Circle of Power v1
450
lvl: 10
ID:
245
Author:
Deemzul
Rarity:
unique
Status:
Approved

Description:

Power! Unlimited power!
Circle of Power
Every 5 seconds, if the carrier of this item has less mana than it had 5 seconds ago, the carrier has a 25% chance to restore mana to what it was before.
Download

Toggle Triggers

On Item Pickup

goldcost: 0
function onPickup  takes Item itm returns nothing
    set itm.userReal = GetUnitState(itm.getCarrier().getUnit(),UNIT_STATE_MANA)
endfunction

Periodic

goldcost: 450 PERIODIC_period: 5
function periodic takes Item itm returns nothing
    local Unit u = itm.getCarrier()
    local real curMana = GetUnitState(u.getUnit(),UNIT_STATE_MANA)
    if curMana < itm.userReal and u.calcChance(0.25) then
        call SetUnitState(u.getUnit(), UNIT_STATE_MANA, itm.userReal)
        call Effect.createSimpleAtUnit("Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl",u).destroy()
    else    //had more mana or failed chance
        set itm.userReal = curMana
    endif
endfunction
Magical Essence v1
452
lvl: 32
ID:
12
Author:
Boekie
Rarity:
common
Status:
Approved

Description:

This essence is used by the nightelfs to increase their mana.
Specials:
+20% mana
+20% mana regen
Download