THE_X
New Member
- Reaction score
- 49
In this spell its a spear that is being slid with triggers and when it comes into contact with a unit it implaes that unit onto the spear draging it along with the spear, i have everything to work eccpet the damaging of the impaled unit and it sliding along with the spear, heres my triggers.
the special effect of the ! above the unit was just a test to see if the unit is indeed in the unit group, i never saw a ! when it came into contact with a unit so im thinking it not adding the unit to the unit group and i cant figure out why
Code:
Impaling Spear Actiave
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Impaling Spear
Actions
Set Point[1] = (Position of (Triggering unit))
Set Point[2] = (Target point of ability being cast)
Unit - Create 1 Imapling Spear Dummy for (Owner of (Triggering unit)) at Point[1] facing (Angle from Point[1] to Point[2]) degrees
Set MUI = (MUI + 1)
Unit - Set the custom value of (Last created unit) to MUI
Set Impaling_Spear_Caster[(Custom value of (Last created unit))] = (Triggering unit)
Code:
Impaling Spear Move
Events
Time - Every 0.03 seconds of game time
Conditions
Actions
Set Group[1] = (Units of type Imapling Spear Dummy)
Unit Group - Pick every unit in Group[1] and do (Actions)
Loop - Actions
Set Unit = (Picked unit)
Set Point[1] = (Position of (Picked unit))
Set Point[2] = (Point[1] offset by 26.00 towards (Facing of (Picked unit)) degrees)
Unit - Move (Picked unit) instantly to Point[2]
Unit Group - Pick every unit in Implaing_Spear_Group[(Custom value of (Picked unit))] and do (Actions)
Loop - Actions
Unit - Move (Picked unit) instantly to Point[2]
Set Impaling_Spear_Range[(Custom value of (Picked unit))] = (Impaling_Spear_Range[(Custom value of (Picked unit))] + 26.00)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Impaling_Spear_Range[(Custom value of (Picked unit))] Greater than or equal to 3000.00
Then - Actions
Unit - Kill (Picked unit)
Else - Actions
Set Group[2] = (Units within 150.00 of Point[1] matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of Unit)) Equal to True))))
Unit Group - Pick every unit in Group[2] and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Picked unit) is in Implaing_Spear_Group[(Custom value of Unit)]) Equal to False
Then - Actions
Unit - Turn collision for (Picked unit) Off
Unit Group - Add (Picked unit) to Implaing_Spear_Group[(Custom value of Unit)]
Unit Group - Pick every unit in Implaing_Spear_Group[(Custom value of Unit)] and do (Actions)
Loop - Actions
Floating Text - Create floating text that reads ! above (Picked unit) with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
Unit - Cause Impaling_Spear_Caster[(Custom value of Unit)] to damage (Triggering unit), dealing (40.00 + (120.00 x (Real((Level of Impaling Spear for Impaling_Spear_Caster[(Custom value of (Picked unit))]))))) damage of attack type Normal and damage type Normal
Special Effect - Create a special effect attached to the origin of (Picked unit) using Objects\Spawnmodels\Human\HumanBlood\BloodElfSpellThiefBlood.mdl
Special Effect - Destroy (Last created special effect)
Destructible - Pick every destructible within 80.00 of Point[2] and do (Actions)
Loop - Actions
Unit - Kill (Picked unit)
Custom script: call RemoveLocation (udg_Point[1])
Custom script: call RemoveLocation (udg_Point[2])
Else - Actions
Custom script: call DestroyGroup (udg_Group[1])
Custom script: call DestroyGroup (udg_Group[2])
Code:
Remove Impaling Spear
Events
Unit - A unit Dies
Conditions
(Unit-type of (Triggering unit)) Equal to Imapling Spear Dummy
Actions
Unit - Remove (Triggering unit) from the game
Set Point[1] = (Position of (Triggering unit))
Special Effect - Create a special effect at Point[1] using Abilities\Spells\Human\FlakCannons\FlakTarget.mdl
Special Effect - Destroy (Last created special effect)
Unit Group - Pick every unit in Implaing_Spear_Group[(Custom value of (Triggering unit))] and do (Actions)
Loop - Actions
Unit - Turn collision for (Picked unit) On
Custom script: call RemoveLocation (udg_Point[1])
the special effect of the ! above the unit was just a test to see if the unit is indeed in the unit group, i never saw a ! when it came into contact with a unit so im thinking it not adding the unit to the unit group and i cant figure out why