waaaks!
Zinctified
- Reaction score
- 256
MUI
JASS and GUI
Leakless
Ravage (JASS) : Requires New Gen
Slams the ground, causing waves of spikes to ring the hero in all directions. Deals damage and stuns.
Level 1 - Deals 250 damage. 1.2 seconds stun.
Level 2 - Deals 350 damage. 1.5 seconds stun.
Level 3 - Deals 450 damage. 1.8 seconds stun.
Reverse Polarity (GUI)
Through some unknown property of matter, the Magnataur sucks all nearby enemies to his position and stuns them with a powerful slam, dealing damage.
Level 1 - 2 second stun, deals 150 damage.
Level 2 - 3 second stun, dealing 225 damage.
Level 3 - 4 second stun, dealing 300 damage.
Such simple spells Ive made, while theres nothing to do with my project LotAL
credits to Tinki3 for Spell's Test Map Template
feedbacks are welcome
JASS and GUI
Leakless
Ravage (JASS) : Requires New Gen
Slams the ground, causing waves of spikes to ring the hero in all directions. Deals damage and stuns.
Level 1 - Deals 250 damage. 1.2 seconds stun.
Level 2 - Deals 350 damage. 1.5 seconds stun.
Level 3 - Deals 450 damage. 1.8 seconds stun.
JASS:
globals
constant integer RavSpellId = 039;A000039; //Ravage Spell Id
constant integer RavDSpellId = 039;A001039; //Ravage(Dummy) Spell Id
constant string RavOrderId = "impale" //Order string of the Ravage(Dummy) Spell
constant integer RavDummy = 039;u001039; //Your Dummy unit
endglobals
struct Rdata
unit caster
unit dummy
location loc
location pol
integer level
integer n
endstruct
function Trig_Ravage_Conditions takes nothing returns boolean
return GetSpellAbilityId() == RavSpellId
endfunction
function Trig_Ravage_Actions takes nothing returns nothing
local Rdata d = Rdata.create()
set d.caster = GetTriggerUnit()
set d.loc = GetUnitLoc(d.caster)
set d.level = GetUnitAbilityLevel(d.caster, RavSpellId)
set d.n = 1
loop
exitwhen d.n > 36
set d.pol = PolarProjectionBJ(d.loc, 50.0, 10*d.n)
set d.dummy = CreateUnit(GetOwningPlayer(d.caster), RavDummy, GetUnitX(d.caster), GetUnitY(d.caster), 10*d.n)
call UnitApplyTimedLife(d.dummy, 039;BTLF039;, 5.0)
call UnitAddAbility(d.dummy, RavDSpellId)
call SetUnitAbilityLevel(d.dummy, RavDSpellId, d.level)
call IssuePointOrderLoc(d.dummy, RavOrderId, d.pol)
set d.n = d.n + 1
endloop
call d.destroy()
endfunction
//===========================================================================
function InitTrig_Ravage takes nothing returns nothing
set gg_trg_Ravage = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Ravage, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( gg_trg_Ravage, Condition( function Trig_Ravage_Conditions ) )
call TriggerAddAction( gg_trg_Ravage, function Trig_Ravage_Actions )
endfunction
Reverse Polarity (GUI)
Through some unknown property of matter, the Magnataur sucks all nearby enemies to his position and stuns them with a powerful slam, dealing damage.
Level 1 - 2 second stun, deals 150 damage.
Level 2 - 3 second stun, dealing 225 damage.
Level 3 - 4 second stun, dealing 300 damage.
Code:
Reverse Polarity
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Reverse Polarity
Actions
Set Rev_cast = (Triggering unit)
Set Rev_loc = (Position of Rev_cast)
Set Rev_group = (Units within 600.00 of Rev_loc matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an ally of (Owner of Rev_cast)) Equal to False)))
Unit Group - Pick every unit in Rev_group and do (Actions)
Loop - Actions
Unit - Pause (Picked unit)
Unit - Move (Picked unit) instantly to Rev_loc
Unit - Unpause (Picked unit)
Custom script: call RemoveLocation(udg_Rev_loc)
Custom script: call DestroyGroup(udg_Rev_group)
Such simple spells Ive made, while theres nothing to do with my project LotAL
credits to Tinki3 for Spell's Test Map Template
feedbacks are welcome