| 11-26-2004, 02:28 PM | #1 |
Can anyone see anything wrong with this? Psi Blast Events Unit - A unit Finishes casting an ability Conditions (Ability being cast) Equal to Psi Blast Actions Set PsiBlast_TempPoint[(Player number of (Owner of (Triggering unit)))] = (Position of (Triggering unit)) Unit Group - Pick every unit in (Units within (225.00 + ((Real((Level of Psi Blast for (Triggering unit)))) x 25.00)) of (Center of (Playable map area)) matching ((Owner of (Triggering unit)) Not equal to (Owner of (Matching unit)))) and do (Actions) Loop - Actions For each (Integer A) from 1 to 300, do (Actions) Loop - Actions Unit - Move (Picked unit) instantly to (PsiBlast_TempPoint[(Player number of (Owner of (Triggering unit)))] offset by (Real((Integer A))) towards (Angle from PsiBlast_TempPoint[(Player number of (Owner of (Triggering unit)))] to (Position of (Picked unit))) degrees) Custom script: call RemoveLocation( udg_PsiBlast_TempPoint[GetConvertedPlayerId(GetOwningPlayer(GetTriggerUnit()))] ) the error is that the units aren't moving at all |
| 11-26-2004, 03:58 PM | #2 |
1: Be specific in your triggering. Where possible, use the exact event response instead of "triggering unit" in this case the event response is "casting unit". 2: This line: Code:
Unit Group - Pick every unit in (Units within (225.00 + ((Real((Level of Psi Blast for (Triggering unit)))) x 25.00)) of (Center of (Playable map area)) matching ((Owner of (Triggering unit)) Not equal to (Owner of (Matching unit)))) and do (Actions) 3: Loops are instant, moving the picked units (if you actually picked anything) 300 times using a loop is just going to move it to its final destination instantly. There are plenty of threads that discuss methods to make units slide across smoothly. 4: That trigger leaks worse than a faucet made of tissue paper. You're leaking 600 locations per unit affected and 1 unit group each time you run this trigger. The location leaks are caused by you using polar projections without using an extra location variable and you using the "position of picked unit" function without cleaning that up. |
| 11-26-2004, 05:09 PM | #3 |
you can't possibly link me to one? or say what i should search on? or, just tell me what i should change and to what. |
| 11-26-2004, 05:41 PM | #4 |
It's much more complicated than that. Since the minimum time for a wait action is 0.25 seconds you have to use a separate trigger that runs on a 0.01 second periodic timer event move the affected units a little bit of the way each time that periodic trigger runs. |
| 11-27-2004, 04:14 AM | #5 |
I belive that the minimum wait time for an action is .01, but maybe I am mistaken. I know for a fact that I set one to .1, sooo.... |
| 11-27-2004, 06:50 AM | #6 |
Yea you can set it to 0.01 but so what? It still only runs after 0.25 seconds. |
| 11-27-2004, 01:57 PM | #7 |
OH, ok I didn't know that, cool. |
