waaaks!
Zinctified
- Reaction score
- 256
Here are some simple spells in DotA Allstars
Includes
-Rot
-Death Pulse
-Earth Bind
JASS
JESP
MUI
uses the caster system
Rot: Engulfs the caster with disease clouds, dealing damage to itself and enemy units nearby, also slowing enemy units for 20%
of their move speed
Death Pulse: Creates death coils to nearby enemy units or friendly units, dealing damage to enemy units while healing friendlies
Earth Bind: Throws a net to the target location, binding all units inside 350 radius for 5 seconds
feedbacks are welcome
EDIT: Update 1 finish
EDIT: Update 2 finish
Includes
-Rot
-Death Pulse
-Earth Bind
JASS
JESP
MUI
uses the caster system
Rot: Engulfs the caster with disease clouds, dealing damage to itself and enemy units nearby, also slowing enemy units for 20%
of their move speed
JASS:
//*****************************************************************************************************
//*
//* Rot
//*
//* Spell by waaaks!
//* Give credit when you used this spell
//*
//*****************************************************************************************************
//*
//* Copy the "Rot" Spell
//* Copy the "Rot (Slow)" Spell
//* Copy the "Rot" Buff
//* Copy the "Rot (Caster)" Buff
//* Copy the "Rot (Slow Aura)" Buff
//*
//* Be sure to change the correct raw codes of the spell
//*
//*****************************************************************************************************
constant function RotSpell takes nothing returns integer
return 'A002' //Raw code for the Rot spell
endfunction
constant function RotSlow takes nothing returns integer
return 'A007' //Raw code for the Rot(Slow) Spell
endfunction
function RootSpell takes nothing returns boolean
return GetUnitAbilityLevel(GetTriggerUnit(), RotSpell())>0
endfunction
function RootMain takes nothing returns nothing
local unit cast = GetTriggerUnit()
if(GetIssuedOrderId()==OrderId("immolation"))then
call UnitAddAbility(cast,RotSlow())
endif
if(GetIssuedOrderId()==OrderId("unimmolation"))then
call UnitRemoveAbility(cast,RotSlow())
endif
set cast = null
endfunction
function InitTrig_Rot takes nothing returns nothing
local trigger t=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(t,EVENT_PLAYER_UNIT_ISSUED_ORDER)
call TriggerAddCondition(t,Condition(function RootSpell))
call TriggerAddAction(t,function RootMain)
set t = null
endfunction
Death Pulse: Creates death coils to nearby enemy units or friendly units, dealing damage to enemy units while healing friendlies
JASS:
//*****************************************************************************************************
//*
//* Death Pulse
//*
//* Spell by waaaks!
//* Give credit when you used this spell
//*
//*****************************************************************************************************
//*
//* Copy the "Death Pulse" Spell
//* Copy the "Death Pulse (Heal)" Spell
//*
//* Be sure to change the correct raw codes of the spell
//*
//*****************************************************************************************************
constant function DPspell takes nothing returns integer
return 'A008' //Spell Id
endfunction
constant function DPspell2 takes nothing returns integer
return 'A009' //Dummy Spell Id
endfunction
function DeathPulseActions takes nothing returns nothing
local unit cast = GetTriggerUnit()
local location loc = GetUnitLoc(cast)
local integer l = GetUnitAbilityLevel(cast, DPspell())
call CasterSetRecycleDelay(3.0)
call CasterSetCastSourceLoc(loc)
call CasterCastAbilityLevelPoint(GetOwningPlayer(cast), DPspell2(), l, "fanofknives", GetUnitX(cast), GetUnitY(cast), true)
call RemoveLocation(loc)
set loc = null
set cast = null
endfunction
//===========================================================================
function InitTrig_Death_Pulse takes nothing returns nothing
call OnAbilityEffect(DPspell(), "DeathPulseActions")
endfunction
Earth Bind: Throws a net to the target location, binding all units inside 350 radius for 5 seconds
JASS:
//*****************************************************************************************************
//*
//* Earth Bind
//*
//* Spell by waaaks!
//* Give credit when you used this spell
//*
//*****************************************************************************************************
//*
//* Copy the "Earth Bind" Spell
//* Copy the "Earth Snare" Spell
//*
//* Be sure to change the correct raw codes of the spell
//*
//*****************************************************************************************************
constant function EarthSpell takes nothing returns integer
return 'A001' //Earth Bind Raw code
endfunction
constant function EarthSnare takes nothing returns integer
return 'A004' //Earth Snare Raw code
endfunction
constant function EarthMissile takes nothing returns string
return "Abilities\\Spells\\Orc\\Ensnare\\EnsnareMissile.mdl"
//Missile model
endfunction
constant function EarthSpeed takes nothing returns real
return 1000.0 //Missile Speed
endfunction
constant function EarthRad takes nothing returns real
return 350.0 //Missile Radius
endfunction
function EarthStart takes nothing returns nothing
local unit cast = GetTriggerUnit()
local location loc1 = GetUnitLoc(cast)
local location loc2 = GetSpellTargetLoc()
local unit m
local integer dopt
local real xx = GetUnitX(cast)-GetLocationX(loc2)
local real yy = GetUnitY(cast)-GetLocationY(loc2)
local real d = SquareRoot(xx*xx+yy*yy)
local real wait = d/EarthSpeed()
set dopt = DamageTypes(ATTACK_TYPE_SIEGE,DAMAGE_TYPE_FORCE)
set dopt = dopt + DamageOnlyTo(UNIT_TYPE_GROUND) + DamageOnlyVisibles()
set m = DamagingProjectileLaunchAOELoc(cast, EarthMissile(), EarthSpeed(), 0.0, loc1, 100, loc2, 100, EarthRad(), 0, false, dopt)
call SetUnitScale(m, 3, 3, 3)
call PolledWait(wait)
call CasterCastAbilityAOELoc(GetOwningPlayer(cast), EarthSnare(), "ensnare", loc2, EarthRad(), false, false)
call RemoveLocation(loc1)
call RemoveLocation(loc2)
set loc1 = null
set loc2 = null
set cast = null
set m = null
endfunction
//===========================================================================
function InitTrig_EarthBind takes nothing returns nothing
call OnAbilityEffect(EarthSpell(), "EarthStart")
endfunction
feedbacks are welcome
EDIT: Update 1 finish
EDIT: Update 2 finish
Attachments
-
278.2 KB Views: 1,073