Name | Type | is_array | initial_value |
BadDialog | dialog | No | |
BaneUser | unit | No | |
BanishBaneOwner | unit | No | |
BanishBaneTarget | unit | No | |
Banisher | unit | No | |
BloodOwner | unit | No | |
BloodTarget | unit | No | |
Button | button | Yes | |
Caster1 | unit | No | |
ChanceToDropRune | integer | No | |
EffectDummy | unit | No | |
ExpCaster | unit | No | |
ExpInLoc | group | Yes | |
ExpPoint | location | No | |
Firewall_Caster | unit | No | |
Firewall_Target | location | No | |
FlameHeaterOwner | unit | No | |
FlameHeaterTarget | unit | No | |
FloatText | texttag | Yes | |
GoodDialog | dialog | No | |
Hero | unit | Yes | |
Info | boolean | No | |
InfoHero | unit | No | |
Informator | player | No | |
LightCaster | unit | No | |
MassPoisned | unit | No | |
PaladAddDamage | integer | Yes | |
PaladinTarget | unit | Yes | |
RndFlameHeater | integer | No | |
RuneNumber | integer | No | |
SkyStaffOwner | unit | No | |
SkyStaffTarget | unit | No | |
ThunderAxeOwner | unit | No | |
ThunderAxeTarget | unit | No | |
time_wind | timerdialog | Yes | |
timer_ress | timer | Yes | |
VengOwner | unit | No | |
WaveLvl | integer | No | |
ZombieGlovesOwner | unit | No | |
ZombieGlovesTarget | unit | No |
function GetItemCount takes unit u, integer it returns integer
local integer res = 0
local integer i = 0
loop
exitwhen i > 5
if (GetItemTypeId(UnitItemInSlot(u, i)) == it) then
set res = res + 1
endif
set i = i + 1
endloop
return res
endfunction
function Trig_OneItem_Conditions takes nothing returns boolean
return (2 == GetItemCount(GetTriggerUnit(), GetItemTypeId(GetManipulatedItem())))
endfunction
function Trig_OneItem_Actions takes nothing returns nothing
call DisplayTimedTextToPlayer( GetOwningPlayer(GetTriggerUnit()), 0, 0, 5.00, "You can't equp 2 same items" )
call UnitRemoveItemSwapped( GetManipulatedItem(), GetTriggerUnit() )
endfunction
//===========================================================================
function InitTrig_OneItem takes nothing returns nothing
set gg_trg_OneItem = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_OneItem, EVENT_PLAYER_UNIT_PICKUP_ITEM )
call TriggerAddCondition( gg_trg_OneItem, Condition( function Trig_OneItem_Conditions ) )
call TriggerAddAction( gg_trg_OneItem, function Trig_OneItem_Actions )
endfunction
function Trig_Vengeance_Conditions takes nothing returns boolean
if ( not ( GetItemTypeId(GetManipulatedItem()) == 'rlif' ) ) then
return false
endif
return true
endfunction
function Trig_Vengeance_Actions takes nothing returns nothing
if GetLocalPlayer() == (GetOwningPlayer(GetTriggerUnit())) then
call StartSound(gg_snd_curs)
call DisplayTimedTextToPlayer( GetOwningPlayer(GetTriggerUnit()), 0, 0, 5.00, "You got |c00ff0000Bloody Vengeance|r. First strike can be deadly..." )
endif
endfunction
//===========================================================================
function InitTrig_Vengeance takes nothing returns nothing
set gg_trg_Vengeance = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Vengeance, EVENT_PLAYER_UNIT_PICKUP_ITEM )
call TriggerAddCondition( gg_trg_Vengeance, Condition( function Trig_Vengeance_Conditions ) )
call TriggerAddAction( gg_trg_Vengeance, function Trig_Vengeance_Actions )
endfunction