jvt619
J
jvt619
can someone make a Pudge Hook, Mirana's Arrow and Clockwerk's Missile.... and can u put how to import the skills or make a full guide... PATY[Please and Thank You]
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.

Sorry for the necrobump, but I really need the first and last one D:
And to repost:
- I'll accept GUI with Hashtables
D)
- I'll not accept JASS or vJass or anyother scripting language besides GUI.
Thank you once more.
Bumpzors
[rainbow]bump[/rainbow]

1)Litany
a multicaster spell (the one X-Omg-X made for me didn't suit my needs)
there are two methods to make it: 1 being the harder method, the 2nd is easier
but I would like you to use method 1
Method 1:
It will check if the player is currently selecting 3 Priest, then the spell will be available (when the player is not selecting 3 priest, the spell will be unavailable with a requirement of "3 Priests Needed".
Method 2:
When casted, the priest (caster) will call 2 other priests, so the 3 priests will also cast it
What the spell does-
The spell is channeling. Increases movement speed (15%) of every friendly unit and adds some spell damage resistance (30%). The 3 priests will lose 75 mana per second.
The channel will stop when
-One of the priest has insufficient mana
-One of the priest move
function GroupCast_Ability takes nothing returns integer
return 'A000'
endfunction
function GroupCast_IsPriest takes nothing returns boolean
return GetUnitTypeId(GetFilterUnit()) == 'hmpr'
endfunction
function GroupCast_Range takes nothing returns real
return 500.00
endfunction
function GroupCast_Count takes nothing returns integer
return 3
endfunction
function GroupCast_SpellId takes nothing returns integer
return OrderId("channel")
endfunction
function GroupCast_Filter takes nothing returns boolean
if GetWidgetLife(GetFilterUnit()) > 0.405 and GroupCast_IsPriest() and GetOwningPlayer(udg_u) == GetOwningPlayer(GetFilterUnit()) and IsUnitSelected(GetFilterUnit(), GetOwningPlayer(udg_u)) then
set udg_i = udg_i + 1
return true
endif
return false
endfunction
function GroupCast_LoopActions takes nothing returns nothing
set udg_u = GetEnumUnit()
if GetUnitCurrentOrder(udg_u) != GroupCast_SpellId() then
set udg_i = 0
call GroupEnumUnitsInRange(udg_g, GetUnitX(udg_u), GetUnitY(udg_u), GroupCast_Range(), Condition(function GroupCast_Filter))
if udg_i == GroupCast_Count() then
call UnitAddAbility (udg_u, GroupCast_Ability())
else
call UnitRemoveAbility(udg_u, GroupCast_Ability())
endif
endif
endfunction
function GroupCast_Check takes nothing returns nothing
call ForGroup(udg_GroupCast_Check, function GroupCast_LoopActions)
endfunction
function GoupCast_Select takes nothing returns nothing
call GroupAddUnit(udg_GroupCast_Check, GetTriggerUnit())
call EnableTrigger(gg_trg_GroupCast)
endfunction
function GroupCast_Deselect takes nothing returns nothing
call GroupRemoveUnit(udg_GroupCast_Check, GetTriggerUnit())
if FirstOfGroup(udg_GroupCast_Check) == null then
call DisableTrigger(gg_trg_GroupCast)
endif
endfunction
function InitTrig_GroupCast takes nothing returns nothing
local trigger select = CreateTrigger()
local trigger deselect = CreateTrigger()
set gg_trg_GroupCast = CreateTrigger()
call TriggerRegisterTimerEvent(gg_trg_GroupCast, 0.1, true)
call TriggerAddAction(gg_trg_GroupCast, function GroupCast_Check)
call TriggerAddAction( select, function GoupCast_Select)
call TriggerAddAction(deselect, function GroupCast_Deselect)
set udg_i = 0
loop
call TriggerRegisterPlayerUnitEvent( select, Player(udg_i), EVENT_PLAYER_UNIT_SELECTED, Condition(function GroupCast_IsPriest))
call TriggerRegisterPlayerUnitEvent(deselect, Player(udg_i), EVENT_PLAYER_UNIT_DESELECTED, Condition(function GroupCast_IsPriest))
call TriggerRegisterPlayerUnitEvent(deselect, Player(udg_i), EVENT_PLAYER_UNIT_DEATH, Condition(function GroupCast_IsPriest))
set udg_i = udg_i + 1
exitwhen udg_i >= bj_MAX_PLAYER_SLOTS
endloop
endfunction
