Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
Melee Initialization

Events


Map initialization

Conditions

Actions


-------- Common Melee Script --------


Melee Game - Use melee time of day (for all players)


Melee Game - Limit Heroes to 1 per Hero-type (for all players)


Melee Game - Give trained Heroes a Scroll of Town Portal (for all players)


Melee Game - Set starting resources (for all players)


Melee Game - Remove creeps and critters from used start locations (for all players)


-------- Check Trigger Comments --------


Melee Game - Create starting units (for all players)


-------- This is to prevent the players to start before the others --------


Set AllUnits = (Units in (Playable map area))


Unit Group - Pick every unit in AllUnits and do (Unit - Pause (Picked unit))
Players

Events


Map initialization

Conditions

Actions


-------- Limit of custom heros and creates a group to show the dialog only to the Human Players --------


Player Group - Pick every player in (All players matching (((Matching player) controller) Equal to User)) and do (Actions)



Loop - Actions




Player Group - Add (Picked player) to PlayersUsers




Player - Limit training of Fathom-Lord to 1 for (Picked player)




Player - Limit training of Mur'gul Hydromancer to 1 for (Picked player)




Player - Limit training of ArchSummoner to 1 for (Picked player)




Player - Limit training of Naga Sea Witch to 1 for (Picked player)


-------- Check Trigger Comment --------


-------- 1.1 --------


If ((Player 1 (Red) slot status) Equal to Is unused) then do (Set DefeatPL1 = True) else do (Do nothing)


-------- 1.2 --------


If ((DefeatPL1 Equal to True) or ((Player 1 (Red) controller) Equal to Computer)) then do (Set ReadyPL1 = True) else do (Do nothing)


-------- Starts to repeat --------


If ((Player 2 (Blue) slot status) Equal to Is unused) then do (Set DefeatPL2 = True) else do (Do nothing)


If ((DefeatPL2 Equal to True) or ((Player 2 (Blue) controller) Equal to Computer)) then do (Set ReadyPL2 = True) else do (Do nothing)


If ((Player 3 (Teal) slot status) Equal to Is unused) then do (Set DefeatPL3 = True) else do (Do nothing)


If ((DefeatPL3 Equal to True) or ((Player 3 (Teal) controller) Equal to Computer)) then do (Set ReadyPL3 = True) else do (Do nothing)


If ((Player 4 (Purple) slot status) Equal to Is unused) then do (Set DefeatPL4 = True) else do (Do nothing)


If ((DefeatPL4 Equal to True) or ((Player 4 (Purple) controller) Equal to Computer)) then do (Set ReadyPL4 = True) else do (Do nothing)


If ((Player 5 (Yellow) slot status) Equal to Is unused) then do (Set DefeatPL5 = True) else do (Do nothing)


If ((DefeatPL5 Equal to True) or ((Player 5 (Yellow) controller) Equal to Computer)) then do (Set ReadyPL5 = True) else do (Do nothing)


-------- Starts to show the Dialog to decide the to use the Nagas or not --------


Trigger - Run Dialog Naga <gen> (checking conditions)
Start Game

Events

Conditions

Actions


-------- Checks if all the units are ready, it all are, then the game can start --------


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




And - All (Conditions) are true





Conditions






ReadyPL1 Equal to True






ReadyPL2 Equal to True






ReadyPL3 Equal to True






ReadyPL4 Equal to True






ReadyPL5 Equal to True



Then - Actions




-------- Tell everyone the game has started --------




Game - Display to (All players) the text: |c00ff0000WARNING|r...




Sound - Play Warning <gen>




Wait 5.00 seconds




-------- Unpause the units so the game can start --------




Game - Display to (All players) the text: |c00ff0000WARNING|r...




Sound - Play Warning <gen>




Unit Group - Pick every unit in AllUnits and do (Unit - Unpause (Picked unit))




-------- Run the AI for computer controlled units --------




Melee Game - Run melee AI scripts (for computer players)



Else - Actions
Dialog Naga

Events

Conditions

Actions


Wait 0.10 seconds


-------- Creates the Dialog and buttons --------


Dialog - Change the title of DialogNaga to Use Naga Race?


Dialog - Create a dialog button for DialogNaga labelled Yes


Set ButtonYes = (Last created dialog Button)


Dialog - Create a dialog button for DialogNaga labelled No


Set ButtonNo = (Last created dialog Button)


-------- Shows the dialog to all the human players --------


Player Group - Pick every player in (All players matching (((Matching player) controller) Equal to User)) and do (Actions)



Loop - Actions




Dialog - Show DialogNaga for (Picked player)
Naga Selected

Events


Dialog - A dialog button is clicked for DialogNaga

Conditions

Actions


-------- A player clics a button, so, the player is ready, check what player clicked and set him ready --------


If ((Triggering player) Equal to Player 1 (Red)) then do (Set ReadyPL1 = True) else do (Do nothing)


If ((Triggering player) Equal to Player 2 (Blue)) then do (Set ReadyPL2 = True) else do (Do nothing)


If ((Triggering player) Equal to Player 3 (Teal)) then do (Set ReadyPL3 = True) else do (Do nothing)


If ((Triggering player) Equal to Player 4 (Purple)) then do (Set ReadyPL4 = True) else do (Do nothing)


If ((Triggering player) Equal to Player 5 (Yellow)) then do (Set ReadyPL5 = True) else do (Do nothing)


-------- Someone decides to use the nagas, so the naga units are created for that player --------


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




(Clicked dialog button) Equal to ButtonYes



Then - Actions




-------- Replaces the units normal workers with naga workers --------




Set TempGroup = (Units owned by (Triggering player) matching (((Matching unit) is A peon-type unit) Equal to True))




Unit Group - Pick every unit in TempGroup and do (Unit - Replace (Picked unit) with a Mur'gul Slave using The new unit's default life and mana)




-------- Replaces the normal town-hall with naga town-hall --------




Set TempGroup = (Units owned by (Triggering player) matching (((Matching unit) is A town-hall-type unit) Equal to True))




Unit Group - Pick every unit in TempGroup and do (Unit - Replace (Picked unit) with a Temple of Tides using The new unit's default life and mana)




-------- Check Trigger Comment --------




-------- 1.1 --------




If ((Race of (Triggering player)) Equal to Undead) then do (Unit - Create 2 Mur'gul Slave for (Triggering player) at ((Triggering player) start location) facing Default building facing degrees) else do (Do nothing)




-------- 1.2 --------




Set TempGroup = (Units owned by (Triggering player) matching ((Unit-type of (Matching unit)) Equal to Ghoul))




Unit Group - Pick every unit in TempGroup and do (Unit - Remove (Picked unit) from the game)




Set TempGroup = (Units owned by (Triggering player) matching ((Unit-type of (Matching unit)) Equal to Haunted Gold Mine))




Unit Group - Pick every unit in TempGroup and do (Unit - Remove (Picked unit) from the game)




-------- 1.3 --------




Set AllUnits = (Units in (Playable map area))




Unit Group - Pick every unit in AllUnits and do (Unit - Pause (Picked unit))



Else - Actions


-------- Run the trigger that decides to start or not the game --------


Trigger - Run Start Game <gen> (checking conditions)
Defeat

Events


Unit - A unit Dies

Conditions


(Owner of (Triggering unit)) Not equal to Neutral Hostile

Actions


Set TempPlayer = (Owner of (Triggering unit))


-------- Check Triggers Comment --------


-------- 1.1 --------


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




Or - Any (Conditions) are true





Conditions






(DefeatPL1 Equal to True) and (Player 1 (Red) Equal to TempPlayer)






(DefeatPL2 Equal to True) and (Player 2 (Blue) Equal to TempPlayer)






(DefeatPL3 Equal to True) and (Player 3 (Teal) Equal to TempPlayer)






(DefeatPL4 Equal to True) and (Player 4 (Purple) Equal to TempPlayer)






(DefeatPL5 Equal to True) and (Player 5 (Yellow) Equal to TempPlayer)



Then - Actions




Skip remaining actions



Else - Actions


-------- Creates a group that checks buldings and workers --------


Set TempGroup = (Units owned by TempPlayer matching ((((Matching unit) is A structure) Equal to True) or (((Matching unit) is A peon-type unit) Equal to True)))


-------- If the units in the group last created are dead... --------


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




(All units of TempGroup are dead) Equal to True



Then - Actions




-------- ...then the player will be defeated --------




Game - Defeat TempPlayer with the message: Defeat!




-------- Tells the other players the player was defeated --------




Game - Display to (All players) the text: ((Name of TempPlayer) + was defeated.)




Set TempGroup = (Units owned by TempPlayer)




Unit Group - Pick every unit in TempGroup and do (Actions)





Loop - Actions






Unit - Order (Picked unit) to Stop




-------- Checks who was the defeated player to set the variable "Defeat" to true for the correct player --------




If (TempPlayer Equal to Player 1 (Red)) then do (Set DefeatPL1 = True) else do (Do nothing)




If (TempPlayer Equal to Player 2 (Blue)) then do (Set DefeatPL2 = True) else do (Do nothing)




If (TempPlayer Equal to Player 3 (Teal)) then do (Set DefeatPL3 = True) else do (Do nothing)




If (TempPlayer Equal to Player 4 (Purple)) then do (Set DefeatPL4 = True) else do (Do nothing)




If (TempPlayer Equal to Player 5 (Yellow)) then do (Set DefeatPL5 = True) else do (Do nothing)




Trigger - Run Victory <gen> (checking conditions)



Else - Actions
Victory

Events

Conditions

Actions


-------- Check Trigger Comments --------


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




And - All (Conditions) are true





Conditions






DefeatPL1 Equal to False






DefeatPL2 Equal to True






DefeatPL3 Equal to True






DefeatPL4 Equal to True






DefeatPL5 Equal to True



Then - Actions




Game - Victory Player 1 (Red) (Show dialogs, Show scores)



Else - Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




And - All (Conditions) are true





Conditions






DefeatPL1 Equal to True






DefeatPL2 Equal to False






DefeatPL3 Equal to True






DefeatPL4 Equal to True






DefeatPL5 Equal to True



Then - Actions




Game - Victory Player 2 (Blue) (Show dialogs, Show scores)



Else - Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




And - All (Conditions) are true





Conditions






DefeatPL1 Equal to True






DefeatPL2 Equal to True






DefeatPL3 Equal to False






DefeatPL4 Equal to True






DefeatPL5 Equal to True



Then - Actions




Game - Victory Player 3 (Teal) (Show dialogs, Show scores)



Else - Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




And - All (Conditions) are true





Conditions






DefeatPL1 Equal to True






DefeatPL2 Equal to True






DefeatPL3 Equal to True






DefeatPL4 Equal to False






DefeatPL5 Equal to True



Then - Actions




Game - Victory Player 4 (Purple) (Show dialogs, Show scores)



Else - Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




And - All (Conditions) are true





Conditions






DefeatPL1 Equal to True






DefeatPL2 Equal to True






DefeatPL3 Equal to True






DefeatPL4 Equal to True






DefeatPL5 Equal to False



Then - Actions




Game - Victory Player 5 (Yellow) (Show dialogs, Show scores)



Else - Actions
