- Joined
- Apr 9, 2004
- Messages
- 502
I've been combing this ability for a while but for some reason i can't find a bug that cuases one of my dummy units to spontaniously die
every time at one point, ususally when i cast and it hits enemy units with enabled attacks, the right "fan" missle dies and just goes away so i don't lnow why since i only have 1 function that kills and removes it
Code:
Fan Movement
Events
Time - Every 0.03 seconds of game time
Conditions
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
FanTravel_DIST Less than or equal to 0.00
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
FanRotationCounter Greater than or equal to 279.00
Then - Actions
Set CurrentFanLeftPoint = ((Position of FanLeft) offset by 30.00 towards (Angle from (Position of FanLeft) to (Position of WindEnchantress)) degrees)
Unit - Move FanLeft instantly to CurrentFanLeftPoint, facing Default building facing degrees
Set CurrentFanRightPoint = ((Position of FanRight) offset by 30.00 towards (Angle from (Position of FanRight) to (Position of WindEnchantress)) degrees)
Unit - Move FanRight instantly to CurrentFanRightPoint, facing Default building facing degrees
Set TrackWE_Point = (Position of WindEnchantress)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Distance between CurrentFanLeftPoint and TrackWE_Point) Less than or equal to 20.00
Then - Actions
Unit - Kill FanLeft
Unit - Remove FanLeft from the game
Unit - Kill FanRight
Unit - Remove FanRight from the game
Unit Group - Remove all units from PotentialTargetsFanLeft
Unit Group - Remove all units from PotentialTargetsFanRight
Unit Group - Remove all units from SafeTargetsFanLeft
Unit Group - Remove all units from SafeTargetsFanRight
Custom script: call RemoveLocation(udg_TrackWE_Point)
Custom script: call RemoveLocation(udg_CurrentFanLeftPoint)
Custom script: call RemoveLocation(udg_CurrentFanRightPoint)
Custom script: call RemoveLocation(udg_Fan_Left_Point_1)
Custom script: call RemoveLocation(udg_Fan_Right_Point_1)
Trigger - Turn off (This trigger)
Else - Actions
Do nothing
Else - Actions
Set CurrentFanLeftPoint = (Fan_Left_Point_1 offset by 250.00 towards ((Angle from Fan_Left_Point_1 to (Position of FanLeft)) + 9.00) degrees)
Set CurrentFanRightPoint = (Fan_Right_Point_1 offset by 250.00 towards ((Angle from Fan_Right_Point_1 to (Position of FanRight)) - 9.00) degrees)
Unit - Move FanLeft instantly to CurrentFanLeftPoint, facing Default building facing degrees
Unit - Move FanRight instantly to CurrentFanRightPoint, facing Default building facing degrees
Set FanRotationCounter = (FanRotationCounter + 9.00)
Else - Actions
Set CurrentFanLeftPoint = ((Position of FanLeft) offset by 30.00 towards FanLeftAngle degrees)
Set CurrentFanRightPoint = ((Position of FanRight) offset by 30.00 towards FanRightAngle degrees)
Set FanTravel_DIST = (FanTravel_DIST - 30.00)
Unit - Move FanLeft instantly to CurrentFanLeftPoint, facing Default building facing degrees
Unit - Move FanRight instantly to CurrentFanRightPoint, facing Default building facing degrees
Set PotentialTargetsFanLeft = (Units within 100.00 of CurrentFanLeftPoint matching (((((Matching unit) is A structure) Equal to False) and (((Matching unit) is in SafeTargetsFanLeft) Equal to False)) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) is A ground unit)
Unit Group - Pick every unit in PotentialTargetsFanLeft and do (Actions)
Loop - Actions
Unit - Cause WindEnchantress to damage (Picked unit), dealing (25.00 + (20.00 x (Real((Level of Fan Toss for WindEnchantress))))) damage of attack type Spells and damage type Normal
Special Effect - Create a special effect attached to the overhead of (Picked unit) using Objects\Spawnmodels\Critters\Albatross\CritterBloodAlbatross.mdl
Special Effect - Destroy (Last created special effect)
Unit Group - Remove (Picked unit) from PotentialTargetsFanLeft
Unit Group - Add (Picked unit) to SafeTargetsFanLeft
Custom script: call RemoveLocation(udg_CurrentFanLeftPoint)
Set PotentialTargetsFanRight = (Units within 100.00 of CurrentFanRightPoint matching (((((Matching unit) is A structure) Equal to False) and (((Matching unit) is in SafeTargetsFanRight) Equal to False)) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) is A ground unit
Unit Group - Pick every unit in PotentialTargetsFanRight and do (Actions)
Loop - Actions
Unit - Cause WindEnchantress to damage (Picked unit), dealing (25.00 + (20.00 x (Real((Level of Fan Toss for WindEnchantress))))) damage of attack type Spells and damage type Normal
Special Effect - Create a special effect attached to the overhead of (Picked unit) using Objects\Spawnmodels\Critters\Albatross\CritterBloodAlbatross.mdl
Special Effect - Destroy (Last created special effect)
Unit Group - Remove (Picked unit) from PotentialTargetsFanRight
Unit Group - Add (Picked unit) to SafeTargetsFanRight
Custom script: call RemoveLocation(udg_CurrentFanRightPoint)
Custom script: call RemoveLocation(udg_TrackWE_Point)
every time at one point, ususally when i cast and it hits enemy units with enabled attacks, the right "fan" missle dies and just goes away so i don't lnow why since i only have 1 function that kills and removes it