Why not to use something like this for sound spree effects:
-
S Other
-
Events
-
Conditions
-
Actions
-
Set TempFirstBlood = True
-
-------- Setup Spree Sounds --------
-
Set Spree_Sounds[1] = No sound
-
Set Spree_Sounds[2] = No sound
-
Set Spree_Sounds[3] = Killing_Spree <gen>
-
Set Spree_Sounds[4] = Dominating <gen>
-
Set Spree_Sounds[5] = MegaKill <gen>
-
Set Spree_Sounds[6] = Unstoppable <gen>
-
Set Spree_Sounds[7] = WhickedSick <gen>
-
Set Spree_Sounds[8] = MonsterKill <gen>
-
Set Spree_Sounds[9] = GodLike <gen>
-
Set Spree_Sounds[10] = HolyShit <gen>
-
-------- Setup Get Spree Text --------
-
Set Spree_Texts[1] = <Empty String>
-
Set Spree_Texts[2] = <Empty String>
-
Set Spree_Texts[3] = |ris on a |cff00FF00killing spree|r!
-
Set Spree_Texts[4] = |ris |cff551A8Bdominating|r!
-
Set Spree_Texts[5] = |rhas a |cffCD1076mega kill|r!
-
Set Spree_Texts[6] = |ris |cffFF8C00unstoppable|r!!
-
Set Spree_Texts[7] = |ris |cff006400wicked sick|r!!
-
Set Spree_Texts[8] = |rhas a |cffFF6EB4monster kill|r!!
-
Set Spree_Texts[9] = |ris |CFFFF0303GODLIKE|r!!!
-
Set Spree_Texts[10] = |ris |c00ff9900beyond GODLIKE|r!!!! Someone KILL HIM!!!
-
-------- Setup End Spree Text --------
-
Set SpreeEnd_Texts[1] = <Empty String>
-
Set SpreeEnd_Texts[2] = <Empty String>
-
Set SpreeEnd_Texts[3] = |cff00FF00killing spree|r
-
Set SpreeEnd_Texts[4] = |cff551A8Bdominating|r
-
Set SpreeEnd_Texts[5] = |cffCD1076mega kill|r
-
Set SpreeEnd_Texts[6] = |cffFF8C00unstoppable|r
-
Set SpreeEnd_Texts[7] = |cff006400wicked sick|r
-
Set SpreeEnd_Texts[8] = |cffFF6EB4monster kill|r
-
Set SpreeEnd_Texts[9] = |CFFFF0303GODLIKE|r
-
Set SpreeEnd_Texts[10] = |c00ff9900beyond GODLIKE|r
-
Custom script: call DestroyTrigger( GetTriggeringTrigger() )
-
GM Killing System
-
Events
-
Conditions
-
(Owner of (Killing unit)) Not equal to Neutral Hostile
-
(Owner of (Triggering unit)) Not equal to Neutral Hostile
-
((Triggering unit) is A Hero) Equal to True
-
((Triggering unit) is Mechanical) Equal to False
-
((Triggering unit) is an illusion) Equal to False
-
Actions
-
Custom script: local string Message1
-
Custom script: local string Message2
-
Custom script: local string Message3
-
Custom script: local sound Sound1
-
Custom script: local sound Sound2
-
Custom script: local sound Sound3
-
If (Spree_Count[(Player number of (Owner of (Killing unit)))] Less than 10) then do (Set Spree_Count[(Player number of (Owner of (Killing unit)))] = (Spree_Count[(Player number of (Owner of (Killing unit)))] + 1)) else do (Do nothing)
-
-------- Kill Message --------
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Spree_Count[(Player number of (Owner of (Triggering unit)))] Less than or equal to 2
-
Then - Actions
-
-------- You didn't end a spree. --------
-
Set General_Integer[1] = 200
-
Player - Add General_Integer[1] to (Owner of (Killing unit)) Current gold
-
Game - Display to (All players) the text: (TextColor[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + ((|r just pwned + TextColor[(Player number of (Owner of (Triggering unit)))]) + ((Name of (Owner of (Dying unit))) + (|r's head for |CFFFFFF01 + ((String(Genera
-
Else - Actions
-
-------- You did end a spree. --------
-
Set General_Integer[1] = (300 + Spree_Count[(Player number of (Owner of (Triggering unit)))])
-
Game - Display to (All players) the text: (TextColor[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + ((|r has just ended + TextColor[(Player number of (Owner of (Triggering unit)))]) + ((Name of (Owner of (Dying unit))) + ((|r's + SpreeEnd_Texts[Spree_Count[(P
-
Set Spree_Count[(Player number of (Owner of (Triggering unit)))] = 0
-
-------- Power --------
-
Player - Add 1 to (Owner of (Killing unit)) Current lumber
-
-------- First Blood --------
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
FirstBlood Equal to False
-
Then - Actions
-
Set FirstBlood = True
-
Player - Add 200 to (Owner of (Killing unit)) Current gold
-
Set General_String[1] = (TextColor[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + just drew |CFFFF0303first blood!|r (+200 gold))))
-
Custom script: set Message1 = udg_General_String[1]
-
Custom script: set Sound1 = gg_snd_firstblood
-
Else - Actions
-
-------- Spree --------
-
Set General_String[2] = (TextColor[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + Spree_Texts[Spree_Count[(Player number of (Owner of (Killing unit)))]]))
-
Custom script: set Message2 = udg_General_String[2]
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Spree_Count[(Player number of (Owner of (Killing unit)))] Less than or equal to 2
-
Then - Actions
-
Custom script: set Message2 = ""
-
Else - Actions
-
Custom script: set Sound2 = udg_Spree_Sounds[udg_Spree_Count[GetConvertedPlayerId(GetOwningPlayer(GetKillingUnit()))]]
-
-------- Double/Triple Kill --------
-
Set General_Point[1] = (Center of (Playable map area))
-
Unit - Create 1 0 Dummy Unit for (Owner of (Killing unit)) at General_Point[1] facing Default building facing degrees
-
Unit - Add a 10.00 second Generic expiration timer to (Last created unit)
-
-------- Double Kill... --------
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in (Units owned by (Owner of (Killing unit)) of type 0 Dummy Unit)) Equal to 2
-
Then - Actions
-
Set General_String[3] = (TextColor[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + |rjust got a |c00FFFF00Double Kill|r!)))
-
Custom script: set Message3 = udg_General_String[3]
-
Custom script: set Sound2 = gg_snd_Double_Kill
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in (Units owned by (Owner of (Killing unit)) of type 0 Dummy Unit)) Equal to 3
-
Then - Actions
-
Set General_String[3] = (TextColor[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + |rjust got a |c00FEBA0ETriple Kill|r!!!)))
-
Custom script: set Message3 = udg_General_String[3]
-
Custom script: set Sound3 = gg_snd_triple_kill
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in (Units owned by (Owner of (Killing unit)) of type 0 Dummy Unit)) Equal to 4
-
Then - Actions
-
Set General_String[3] = (TextColor[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + |rjust got a |c00FF8000Ultra Kill|r!!!)))
-
Custom script: set Message3 = udg_General_String[3]
-
Custom script: set Sound3 = gg_snd_UltraKill
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in (Units owned by (Owner of (Killing unit)) of type 0 Dummy Unit)) Greater than or equal to 5
-
Then - Actions
-
Set General_String[3] = (TextColor[(Player number of (Owner of (Killing unit)))] + ((Name of (Owner of (Killing unit))) + (|r + |ris FU |c00FF0000Rampage|r!!!)))
-
Custom script: set Message3 = udg_General_String[3]
-
Custom script: set Sound3 = gg_snd_Rampage
-
Else - Actions
-
-------- Display Messages & Play Sounds --------
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
TempFirstBlood Equal to True
-
Then - Actions
-
Set TempFirstBlood = False
-
Custom script: call PlaySoundBJ( Sound1 )
-
Custom script: if Message1 != "" then
-
Custom script: call DisplayTextToForce( GetPlayersAll(), Message1 )
-
Custom script: endif
-
Else - Actions
-
Custom script: call PlaySoundBJ( Sound2 )
-
Custom script: if Message2 != "" then
-
Custom script: call DisplayTextToForce( GetPlayersAll(), Message2 )
-
Custom script: endif
-
Custom script: call PlaySoundBJ( Sound3 )
-
Custom script: if Message3 != "" then
-
Custom script: call DisplayTextToForce( GetPlayersAll(), Message3 )
-
Custom script: endif
Also you should remove Do Nothing trigger action from your triggers!
Another thing, why you bother with so many events?
I loop can spare some time:
-
For each (Integer i) from 1 to 12, do (Actions)
-
Loop - Actions
-
Trigger - Add to CDS Start <gen> the event (Player - (Player(i)) types a chat message containing -start as An exact match)
-
Trigger - Add to CDS Invite <gen> the event (Player - (Player(i)) types a chat message containing -invite as An exact match)
-
..... And so on ....
In triggers like:
-
DGtop
-
Events
-
Unit - A unit owned by Player 11 (Dark Green) Dies
-
Conditions
-
(GuardTower DG1 <gen> contains (Dying unit)) Equal to True
-
(Unit-type of (Dying unit)) Equal to Guard Tower
-
Actions
-
Unit - Make Summoning Circle (large) 0032 <gen> Vulnerable
-
Custom script: call DestroyTrigger( GetTriggeringTrigger() )
Replace (Dying unit) with (Triggering unit).
If you use unit more than 3 times create variable for it
-
Auto1
-
Events
-
Time - Every 1.00 seconds of game time
-
Conditions
-
Actions
-
Set Temp_Group1 = (Units in HealingCircle1 <gen>)
-
Player Group - Pick every player in (All players) and do (Actions)
-
Loop - Actions
-
Unit Group - Pick every unit in Temp_Group1 and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Owner of (Picked unit)) is an ally of Player 11 (Dark Green)) Equal to True
-
((Picked unit) is A Hero) Equal to True
-
Then - Actions
-
Unit - Order Paladin 0203 <gen> to Night Elf Demon Hunter - Mana Burn (Picked unit)
-
Unit - Order Shaman 0205 <gen> to Orc Shadow Hunter - Healing Wave (Picked unit)
-
Else - Actions
-
Custom script: call DestroyGroup (udg_Temp_Group1)
and
-
Auto2
-
Events
-
Time - Every 1.00 seconds of game time
-
Conditions
-
Actions
-
Set Temp_Group1 = (Units in HealingCircle2 <gen>)
-
Player Group - Pick every player in (All players) and do (Actions)
-
Loop - Actions
-
Unit Group - Pick every unit in Temp_Group1 and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Owner of (Picked unit)) is an ally of Player 12 (Brown)) Equal to True
-
((Picked unit) is A Hero) Equal to True
-
Then - Actions
-
Unit - Order Paladin 0206 <gen> to Night Elf Demon Hunter - Mana Burn (Picked unit)
-
Unit - Order Shaman 0207 <gen> to Orc Shadow Hunter - Healing Wave (Picked unit)
-
Else - Actions
-
Custom script: call DestroyGroup (udg_Temp_Group1)
for example use same GLOBAL variable (Temp_Group1), this can make errors.
-
Elixir of Agility
-
Events
-
Unit - A unit Uses an item
-
Conditions
-
(Item-type of (Item being manipulated)) Equal to Elixir of Agility
-
Actions
-
Hero - Modify Agility of (Hero manipulating item): Add 20
-
Wait 240.00 seconds
-
Hero - Modify Agility of (Hero manipulating item): Subtract 20
Will fail if you use same potion with another unit. Replace (Hero manipulating item) with (Triggering unit) to make it MUI.
1 more thing and I won't bother you anymore:
-
Zombie Attack
-
Events
-
Time - Every (Random real number between 300.00 and 1000.00) seconds of game time
-
Conditions
-
Actions
-
Game - Display to (All players) the text: |cffFFCC00Event|r: ...
-
Set Temp_Point1 = (Random point in Zombie Attack <gen>)
-
Cinematic - Ping minimap for (All players) at Temp_Point1 for 3.00 seconds, using a Warning ping of color (100.00%, 0.00%, 0.00%)
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Unit - Create 1 Zombie for Neutral Extra at Temp_Point1 facing (Random angle) degrees
-
Custom script: call RemoveLocation (udg_Temp_Point1)
-
Region - Center Zombie Attack <gen> on (Random point in (Playable map area))
Is really poor, use loop (for function) to create those units.