I have a map in which players can have a lot of triggered items with a bunch of them responding to damage done. It's a hero survival, so every player has just a single hero.
I am using a damage detection system:
GUI-Friendly Damage Detection -- v1.2.1 -- by Weep
And now I wonder if having a shitload of trigers responding to damage instances will really hurt game performances.
Now I could keep track wether a player has one of the items, and turn the trigger off if nobody has the said item, or I can just not mind.
Example of a 'reduces all damage by 20%' item:
Keeping track of items:
Or I can just:
What would be better in regard to game performance?
I am using a damage detection system:
GUI-Friendly Damage Detection -- v1.2.1 -- by Weep
And now I wonder if having a shitload of trigers responding to damage instances will really hurt game performances.
Now I could keep track wether a player has one of the items, and turn the trigger off if nobody has the said item, or I can just not mind.
Example of a 'reduces all damage by 20%' item:
Keeping track of items:
-
EquilibriumAcquired
-
Events
-
Unit - A unit Acquires an item
-
-
Conditions
-
(Item-type of (Item being manipulated)) Equal to Equilibrium
-
-
Actions
-
Set EquilibriumAmount[(Player number of (Owner of (Triggering unit)))] = (EquilibriumAmount[(Player number of (Owner of (Triggering unit)))] + 1)
-
If (((Triggering unit) is in EquilibriumOwners) Equal to False) then do (Unit Group - Add (Triggering unit) to EquilibriumOwners) else do (Do nothing)
-
Trigger - Turn on EquilibriumDamage <gen>
-
Trigger - Turn on EquilibriumLost <gen>
-
-
-
EquilibriumDamage
-
Events
-
Game - GDD_Event becomes Equal to 0.00
-
-
Conditions
-
(GDD_DamagedUnit is in EquilibriumOwners) Equal to True
-
-
Actions
-
Unit - Set life of GDD_DamagedUnit to ((Life of GDD_DamagedUnit) + (0.20 x GDD_Damage))
-
-
-
EquilibriumLost
-
Events
-
Unit - A unit Loses an item
-
-
Conditions
-
(Item-type of (Item being manipulated)) Equal to Equilibrium
-
-
Actions
-
Set EquilibriumAmount[(Player number of (Owner of (Triggering unit)))] = (EquilibriumAmount[(Player number of (Owner of (Triggering unit)))] - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
EquilibriumAmount[(Player number of (Owner of (Triggering unit)))] Equal to 0
-
-
Then - Actions
-
Unit Group - Remove (Triggering unit) from EquilibriumOwners
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(EquilibriumOwners is empty) Equal to True
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
Trigger - Turn off EquilibriumDamage <gen>
-
-
Else - Actions
-
-
-
Else - Actions
-
-
-
Or I can just:
-
EquilibriumDamage Copy
-
Events
-
Game - GDD_Event becomes Equal to 0.00
-
-
Conditions
-
(GDD_DamagedUnit has an item of type Equilibrium) Equal to True
-
-
Actions
-
Unit - Set life of GDD_DamagedUnit to ((Life of GDD_DamagedUnit) + (0.20 x GDD_Damage))
-
-
What would be better in regard to game performance?