- Joined
- Jul 19, 2007
- Messages
- 857
Yes that's my question and how can I solve it? I imported this spell from a spellpack and it seemed to work perfectly on the spellpack but when imported it to my map, it seemed to cause lag almost everytime it is casted and I also notice the spell sometimes damages enemies twice. Why is this happening!?
This is how the spell works like.
The caster summons a powerful wind to attack it's enemy targets in the target point it causes damage to land units in a line and stunning them for 2 seconds and slowing their movement speed and attack rate for 5 seconds.
The triggers of the spell.
This is how the spell works like.
The caster summons a powerful wind to attack it's enemy targets in the target point it causes damage to land units in a line and stunning them for 2 seconds and slowing their movement speed and attack rate for 5 seconds.
The triggers of the spell.
-
Preload
-
Events
-
Map initialization
-
-
Conditions
-
Actions
-
Hashtable - Create a hashtable
-
Set BYB_HASH = (Last created hashtable)
-
-
-
Iceexplosion Copy Copy 3
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Winds of the South
-
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(BYB_group[0] is empty) Equal to True
-
-
Then - Actions
-
Trigger - Turn on Iceexplosion Copy Copy Copy 2 <gen>
-
-
Else - Actions
-
-
Set BYB_POINT[0] = (Position of (Triggering unit))
-
Set BYB_POINT[1] = (Target point of ability being cast)
-
Unit - Create 1 Big Yellow Blast for (Owner of (Triggering unit)) at BYB_POINT[0] facing (Angle from BYB_POINT[0] to BYB_POINT[1]) degrees
-
Unit - Turn collision for (Last created unit) Off
-
Hashtable - Save Handle OfBYB_POINT[1] as 0 of (Key (Last created unit)) in BYB_HASH
-
Custom script: call RemoveLocation(udg_BYB_POINT[0])
-
Unit Group - Add (Last created unit) to BYB_group[0]
-
-
-
Iceexplosion Copy Copy Copy 2
-
Events
-
Time - Every 0.04 seconds of game time
-
-
Conditions
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(BYB_group[0] is empty) Equal to True
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
Unit Group - Pick every unit in BYB_group[0] and do (Actions)
-
Loop - Actions
-
Set BYB_POINT[0] = (Position of (Picked unit))
-
Set BYB_POINT[1] = (Load 0 of (Key (Picked unit)) in BYB_HASH)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Distance between BYB_POINT[0] and BYB_POINT[1]) Greater than or equal to 10.00
-
-
Then - Actions
-
Set BYB_unit = (Picked unit)
-
Set BYB_POINT[2] = (BYB_POINT[0] offset by 10.00 towards (Angle from BYB_POINT[0] to BYB_POINT[1]) degrees)
-
Unit - Move (Picked unit) instantly to BYB_POINT[2], facing BYB_POINT[1]
-
Set BYB_group[1] = (Units within 150.00 of BYB_POINT[0] matching ((((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True) and (((Matching unit) has buff Winds of the South ) Equal to False)))
-
Custom script: call RemoveLocation(udg_BYB_POINT[0])
-
Unit Group - Pick every unit in BYB_group[1] and do (Actions)
-
Loop - Actions
-
Set BYB_POINT[0] = (Position of (Picked unit))
-
Unit - Create 1 BYB EFFECTS for (Owner of BYB_unit) at BYB_POINT[0] facing BYB_POINT[0]
-
Unit - Set level of Winds of the South (Slow) for (Last created unit) to (Level of Winds of the South for Lord of Khand 0225 <gen>)
-
Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
-
Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
-
Unit - Create 1 BYB EFFECTS for (Owner of BYB_unit) at BYB_POINT[0] facing BYB_POINT[0]
-
Unit - Set level of Winds of the South (Damage/Stun) for (Last created unit) to (Level of Winds of the South for Lord of Khand 0225 <gen>)
-
Unit - Order (Last created unit) to Neutral - Firebolt (Picked unit)
-
Custom script: call RemoveLocation(udg_BYB_POINT[0])
-
-
-
Custom script: call RemoveLocation(udg_BYB_POINT[2])
-
Custom script: call DestroyGroup(udg_BYB_group[1])
-
-
Else - Actions
-
Custom script: call RemoveLocation(udg_BYB_POINT[2])
-
Custom script: call RemoveLocation(udg_BYB_POINT[0])
-
Custom script: call RemoveLocation(udg_BYB_POINT[1])
-
Unit Group - Remove (Picked unit) from BYB_group[0]
-
Unit - Kill (Picked unit)
-
-
-
-
-
-