minikrampan
Ultra Cool Member
- Reaction score
- 28
I have a fear ability that is a nova type, Unit comes in range of nova they get feared, simple. But it does lagg
first trigger:
Second:
The bold part is the laggy one.. The fear ability is used to place a buff on target thats triggering the third trigger.
Third:
Fourth:
Optional, not needed but if anyone can solve why this crashes the game.
first trigger:
Trigger:
- Intimidate Soul
- Events
- Unit - A unit Starts the effect of an ability
- Conditions
- (Ability being cast) Equal to Intimidate Soul
- Actions
- Set fear_caster = (Casting unit)
- Set fear_level = (Level of Intimidate Soul for (Casting unit))
- Set fear_missile_lifetime = 1.00
- Set fear_facing = (Facing of fear_caster)
- Set fear_facing_add = 0.00
- Set fear_speed = 10.00
- Set fear_int = 0
- For each (Integer A) from 1 to 36, do (Actions)
- Loop - Actions
- Set temp_point = (Position of fear_caster)
- Unit - Create 1 Fear dummy for (Owner of fear_caster) at temp_point facing fear_facing degrees
- Unit - Add a fear_missile_lifetime second Generic expiration timer to (Last created unit)
- Set fear_facing = fear_facing_add
- Set fear_facing_add = (fear_facing_add + 10.00)
- Custom script: call RemoveLocation(udg_temp_point)
- Loop - Actions
- Events
Second:
Trigger:
- Intimidate Soul move
- Events
- Time - Every 0.03 seconds of game time
- Conditions
- Actions
- Set temp_group = (Units of type Fear dummy)
- Unit Group - Pick every unit in temp_group and do (Actions)
- Loop - Actions
- Set temp_point = (Position of (Picked unit))
- Set temp_point2 = (temp_point offset by fear_speed towards (Facing of (Picked unit)) degrees)
- Unit - Move (Picked unit) instantly to temp_point2
- Set temp_group2 = (Units within 100.00 of temp_point2 matching ((((Matching unit) belongs to an enemy of (Owner of fear_caster)) Equal to True) and (((Matching unit) is alive) Equal to True)))
- Unit Group - Pick every unit in temp_group2 and do (Actions)
- <b> Loop - Actions
- Unit - Create 1 Dummy orginal for (Owner of fear_caster) at temp_point facing Default building facing degrees
- Unit - Add Fear to (Last created unit)
- Unit - Set level of Fear for (Last created unit) to fear_level
- Unit - Order (Last created unit) to Human</b> Priest - Inner Fire (Picked unit)
- <b> Loop - Actions
- Custom script: call DestroyGroup(udg_temp_group2)
- Custom script: call RemoveLocation(udg_temp_point)
- Custom script: call RemoveLocation(udg_temp_point2)
- Loop - Actions
- Custom script: call DestroyGroup(udg_temp_group)
- Events
The bold part is the laggy one.. The fear ability is used to place a buff on target thats triggering the third trigger.
Third:
Trigger:
- Intimidate Soul fear
- Events
- Time - Every 1.00 seconds of game time
- Conditions
- Actions
- Set temp_group3 = (Units in (Playable map area) matching (((Matching unit) has buff Fear ) Equal to True))
- Unit Group - Pick every unit in temp_group3 and do (Actions)
- Loop - Actions
- Set temp_point = (Position of fear_caster)
- Set temp_point2 = (Position of (Picked unit))
- Set temp_point3 = (temp_point2 offset by 1000.00 towards (Angle from temp_point to temp_point2) degrees)
- Unit - Order (Picked unit) to Move To temp_point3
- Custom script: call RemoveLocation(udg_temp_point)
- Custom script: call RemoveLocation(udg_temp_point2)
- Custom script: call RemoveLocation(udg_temp_point3)
- Loop - Actions
- Custom script: call DestroyGroup(udg_temp_group3)
- Events
Fourth:
Trigger:
- Intimidate Soul order deny
- Events
- Unit - A unit Is issued an order targeting an object
- Unit - A unit Is issued an order targeting a point
- Unit - A unit Is issued an order with no target
- Conditions
- ((Triggering unit) has buff Fear ) Equal to True
- Actions
- Set temp_point = (Position of fear_caster)
- Set temp_point2 = (Position of (Triggering unit))
- Set temp_point3 = (temp_point2 offset by 1000.00 towards (Angle from temp_point to temp_point2) degrees)
- Unit - Order (Ordered unit) to Move To temp_point3
- Custom script: call RemoveLocation(udg_temp_point)
- Custom script: call RemoveLocation(udg_temp_point2)
- Custom script: call RemoveLocation(udg_temp_point3)
- Events
Optional, not needed but if anyone can solve why this crashes the game.