Gargoyle Wing v1 640
lvl: 47
|
ID: 40
Author: Boekie
Rarity: common
Status: Approved
|
Specials:
+100% dmg to air (+1%/lvl) |
Download
|
Crit Blade v1 644
lvl: 16
|
ID: 250
Author: Ranakastrasz
Rarity: unique
Status: Approved
|
Description: This blade improves chance of critical strikes.
Specials:
Specials: +x0.8 crit damage
Critical Accumulation
On attack, increases critical strike chance by 2% up to a maximum of 40%. The bonus is lost when a critical strike is made. The bonus is bound to the item. |
Download
Toggle Triggers Header
goldcost: 0
globals
MultiboardValues CritBlade_multiboard
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
set CritBlade_multiboard = MultiboardValues.create(1)
call CritBlade_multiboard.setKey(0,"Crit Gained")
endfunction
On Attack
goldcost: 50
ONATTACK_chance: 1.0
ONATTACK_chanceLevelAdd: 0.0
function onAttack takes Item itm returns nothing
if (itm.getCarrier().getNumberOfCrits() > 0)then
call itm.getCarrier().modifyProperty( MOD_ATK_CRIT_CHANCE , -itm.userReal )
//call itm.getCarrier().modifyProperty( MOD_ATK_CRIT_DAMAGE , -itm.userReal )
set itm.userReal = 0
//call itm.setCharges(0)
else
//call itm.setCharges(itm.getCharges()+R2I(0.02*100))
if itm.userReal < 0.40 then
set itm.userReal = itm.userReal + 0.02
call itm.getCarrier().modifyProperty( MOD_ATK_CRIT_CHANCE, 0.02 )
//call itm.getCarrier().modifyProperty( MOD_ATK_CRIT_DAMAGE, 0.02 )
endif
endif
endfunction
On Item Creation
goldcost: 0
function onCreate takes Item itm returns nothing
set itm.userReal = 0.00
endfunction
On Item Drop
goldcost: 0
function onDrop takes Item itm returns nothing
call itm.getCarrier().modifyProperty( MOD_ATK_CRIT_CHANCE , -itm.userReal )
//call itm.getCarrier().modifyProperty( MOD_ATK_CRIT_DAMAGE , -itm.userReal )
endfunction
On Item Pickup
goldcost: 0
function onPickup takes Item itm returns nothing
call itm.getCarrier().modifyProperty( MOD_ATK_CRIT_CHANCE , itm.userReal )
//call itm.getCarrier().modifyProperty( MOD_ATK_CRIT_DAMAGE , itm.userReal )
endfunction
On Tower Details
goldcost: 0
function onTowerDetails takes Item itm returns MultiboardValues
call CritBlade_multiboard.setValue(0,R2S(itm.userReal*100)+"%")
return CritBlade_multiboard
endfunction
|
Optimist's Preserved Face v1 650
lvl: 24
|
ID: 202
Author: cedi
Rarity: rare
Status: Approved
|
Description: The thing above my fireplace? Ye, that was my first optimist.
Optimist Hunting Season
The carrier of this item's damage is modified by the amount of hp the creep has left. The range goes from +75% damage when the creep has full hp to -50% damage when the creep has no hp left. |
Download
Toggle Triggers On Damage
ONDAMAGE_chance: 1.0
goldcost: 650
ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Item itm returns nothing
local unit u = Event.getTarget().getUnit()
local real r = GetUnitState( u, UNIT_STATE_LIFE ) / GetUnitState( u, UNIT_STATE_MAX_LIFE )
set Event.damage = Event.damage * ( 1.75 - ( 1.25 * ( 1 - r ) ) )
set u = null
endfunction
|
Lunar Essence v2 650
lvl: 16
|
ID: 227
Author: Finger of Destiny
Rarity: unique
Status: Approved
|
Description: A powerful knowledge is captured into this essence.
Sacred Wisdom
Grants 200 flat experience to the holder. The experience is bound to the item and lost on drop. If the tower has less than 200 experience when the item is dropped, the item will drain experience from the next tower it is placed in, up to 200 experience. |
Download
Toggle Triggers On Item Creation
goldcost: 0
function onCreate takes Item itm returns nothing
set itm.userReal = 200
endfunction
On Item Drop
goldcost: 0
function onDrop takes Item itm returns nothing
local Tower tower = itm.getCarrier()
set itm.userReal = tower.removeExpFlat(200)
endfunction
On Item Pickup
goldcost: 650
function onPickup takes Item itm returns nothing
local Tower tower = itm.getCarrier()
local real r = itm.userReal
if r > 0 then
call tower.addExpFlat(r)
endif
endfunction
|
Mask of Sanity v1 656
lvl: 36
|
ID: 44
Author: SymphonyX
Rarity: uncommon
Status: Approved
|
Description: This mask alters the wearers sanity in different ways.
Specials:
+20% dmg to normals +10% dmg to champions -25% dmg to air +10% attackspeed (+0.25%/lvl) |
Download
|
Heavy Crossbow v3 680
lvl: 50
|
ID: 189
Author: drol
Rarity: common
Status: Approved
|
Description: Bolts of this crossbow deliver quite a punch to your enemies.
Specials:
+10% attackspeed +215 dps |
Download
|
Dagger of Bane v1 700
lvl: 18
|
ID: 132
Author: F12ight
Rarity: unique
Status: Approved
|
Description: The dagger oozes out deadly green poison.
Deadly Poison
Applies a deadly poison on damage to the main target of the attack. Each second the poison deals 15% of the tower's base damage as spell damage to the target. The spell damage is always critical. Lasts 4 seconds. |
Download
Toggle Triggers Header
goldcost: 0
globals
BuffType fright_poison_dagger_buff
endglobals
function dealDamage takes Buff b returns nothing
local Tower tower = b.getCaster()
if tower == b.userInt then
call tower.doSpellDamage(b.getBuffedUnit(),tower.getCurrentAttackDamageBase()*0.15,tower.getProp_SpellCritDamage())
else
call b.removeBuff()
endif
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 fright_poison_dagger_buff = BuffType.create(4.01,0,false) // + 0.01 seconds is a dirty hack to make damage tick 4 times with 100% duration
call fright_poison_dagger_buff.setBuffIcon('@@0@@')
call fright_poison_dagger_buff.addPeriodicEvent(EventHandler.dealDamage,1)
endfunction
On Damage
ONDAMAGE_chance: 1.0
goldcost: 700
ONDAMAGE_chanceLevelAdd: 0.0
function onDamage takes Item itm returns nothing
local Buff P
local Unit u
if Event.isMainTarget() then
set u = Event.getTarget()
set P = u.getBuffOfType( fright_poison_dagger_buff )
if P != 0 then
call fright_poison_dagger_buff.apply(itm.getCarrier(), Event.getTarget(), 0)
else
set fright_poison_dagger_buff.apply(itm.getCarrier(), Event.getTarget(), 0).userInt = itm.getCarrier()
endif
endif
endfunction
|
Description: