ReVolver
Mega Super Ultra Cool Member
- Reaction score
- 609
Unlimited Hero Selection System
by Orc_Tamer
Features:
In GUI (Jass version may be released)
Requires:
Next - Hero Unit
Hero - Unit Type Variable
Start - Integer Variable
TimerStart - Timer Variable (If you want to use it)
Here is a nice little system that will make any of your maps unique by making a tavern, altar, or any building be able to train/summon unlimited heroes. Array limit is 8191 so it's "almost" unlimited =P
Instructions:
Replace "Tavern 0002 <gen>" with any pre-placed building in the game and has "Sell Units" unit ability.
Add the hero to your "Set Heroes"
Use this as your template to add 4 new heroes
Code:
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Next Equal to [COLOR="Blue"][U]Your Next Variable Number[/U][/COLOR]
Then - Actions
For each (Integer A) from Your [COLOR="Blue"][U]Last Heroes Made[/U][/COLOR], do (Actions)
Loop - Actions
Neutral Building - Remove Hero[(Integer A)] from Tavern 0002 <gen>
Neutral Building - Add Next to Tavern 0002 <gen> with 1 in stock and a max stock of 1
For each (Integer A) from [COLOR="Blue"][U]Your New 4 Heroes[/U][/COLOR], do (Actions)
Loop - Actions
Neutral Building - Add Hero[(Integer A)] to Tavern 0002 <gen> with 1 in stock and a max stock of 1
Else - Actions
Code:
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Next Equal to [COLOR="Blue"][U]Your Last Next Variable Number[/U][/COLOR]
Then - Actions
Set Next = 1
For each (Integer A) from [COLOR="Blue"][U]Your Last Heroes[/U][/COLOR], do (Actions)
Loop - Actions
Neutral Building - Remove Hero[(Integer A)] from Tavern 0002 <gen>
Neutral Building - Add Next to Tavern 0002 <gen> with 1 in stock and a max stock of 1
For each (Integer A) from [COLOR="Blue"][U]Your First 4 Heroes[/U][/COLOR], do (Actions)
Loop - Actions
Neutral Building - Add Hero[(Integer A)] to Tavern 0002 <gen> with 1 in stock and a max stock of 1
Else - Actions
Game Triggers:
Code:
Set Heroes
Events
Map initialization
Conditions
Actions
-------- Set Up Our Heroes --------
Set Hero[1] = Paladin
Set Hero[2] = Archmage
Set Hero[3] = Mountain King
Set Hero[4] = Blood Mage
Set Hero[5] = Blademaster
Set Hero[6] = Far Seer
Set Hero[7] = Tauren Chieftain
Set Hero[8] = Shadow Hunter
Set Hero[9] = Death Knight
Set Hero[10] = Lich
Set Hero[11] = Dreadlord
Set Hero[12] = Crypt Lord
Set Hero[13] = Keeper of the Grove
Set Hero[14] = Priestess of the Moon
Set Hero[15] = Demon Hunter
Set Hero[16] = Warden
Code:
Start Hero
Events
Time - StartTimer expires
Conditions
Actions
-------- Change event to "Time Elapsed" if you don't want to use the timer --------
Set Next = 1
Neutral Building - Add Next to Tavern 0002 <gen> with 1 in stock and a max stock of 1
For each (Integer A) from 1 to 4, do (Actions)
Loop - Actions
Neutral Building - Add Hero[(Integer A)] to Tavern 0002 <gen> with 1 in stock and a max stock of 1
Code:
Next
Events
Unit - A unit Sells a unit
Conditions
(Unit-type of (Sold unit)) Equal to Next
Actions
Unit - Remove (Sold unit) from the game
Set Next = (Next + 1)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Next Equal to 2
Then - Actions
For each (Integer A) from 1 to 4, do (Actions)
Loop - Actions
Neutral Building - Remove Hero[(Integer A)] from Tavern 0002 <gen>
Neutral Building - Add Next to Tavern 0002 <gen> with 1 in stock and a max stock of 1
For each (Integer A) from 5 to 8, do (Actions)
Loop - Actions
Neutral Building - Add Hero[(Integer A)] to Tavern 0002 <gen> with 1 in stock and a max stock of 1
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Next Equal to 3
Then - Actions
For each (Integer A) from 5 to 8, do (Actions)
Loop - Actions
Neutral Building - Remove Hero[(Integer A)] from Tavern 0002 <gen>
Neutral Building - Add Next to Tavern 0002 <gen> with 1 in stock and a max stock of 1
For each (Integer A) from 9 to 12, do (Actions)
Loop - Actions
Neutral Building - Add Hero[(Integer A)] to Tavern 0002 <gen> with 1 in stock and a max stock of 1
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Next Equal to 4
Then - Actions
For each (Integer A) from 9 to 12, do (Actions)
Loop - Actions
Neutral Building - Remove Hero[(Integer A)] from Tavern 0002 <gen>
Neutral Building - Add Next to Tavern 0002 <gen> with 1 in stock and a max stock of 1
For each (Integer A) from 13 to 16, do (Actions)
Loop - Actions
Neutral Building - Add Hero[(Integer A)] to Tavern 0002 <gen> with 1 in stock and a max stock of 1
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Next Equal to 5
Then - Actions
Set Next = 1
For each (Integer A) from 13 to 16, do (Actions)
Loop - Actions
Neutral Building - Remove Hero[(Integer A)] from Tavern 0002 <gen>
Neutral Building - Add Next to Tavern 0002 <gen> with 1 in stock and a max stock of 1
For each (Integer A) from 1 to 4, do (Actions)
Loop - Actions
Neutral Building - Add Hero[(Integer A)] to Tavern 0002 <gen> with 1 in stock and a max stock of 1
Else - Actions
Why is this Unlimited?
Because normal taverns or any buildings uses 12 slots max and this can be used more than that.
Why use this?
1. Uses less buildings (Taverns, Altars, ect)
2. It's unique
3. Faster to add heroes to your Tavern