- Joined
- Apr 4, 2020
- Messages
- 31
Currently working on a basic hero picking system for my map, where you switch in between heroes with arrow keys and chose your hero with esc. Setup looking like this:
It's looking like this (quite identical for right arrow key)
Any help is much appreciated
-
HS Setup
-
Events
-
Time - Elapsed game time is 0.10 seconds
-
-
Conditions
-
Actions
-
Set VariableSet HS_Heroes[1] = Lira Windrun 0036 <gen>
-
Set VariableSet HS_Heroes[2] = Captain of the Guard 0325 <gen>
-
Set VariableSet HS_Heroes[3] = Dagren der Orcschlächter 0056 <gen>
-
Set VariableSet HS_Heroes[4] = Gul'dan 0030 <gen>
-
Set VariableSet HS_Heroes[5] = Bladedancer 0026 <gen>
-
Set VariableSet HS_Heroes[6] = Bestienmeister 0032 <gen>
-
Set VariableSet HS_Heroes[7] = Sylvanas Windrunner 0048 <gen>
-
Set VariableSet HS_Heroes[8] = Chen Sturmbräu 0201 <gen>
-
Set VariableSet HS_Heroes[9] = Ashenvale Protector 0271 <gen>
-
Custom script: set udg_HS_Hero_Descrip[1] = "Stormchaser\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[2] = "Captain of the Guard\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[2] = "Captain of the Guard\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[3] = "Paladin(WIP)\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\n\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[4] = "Warlock\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\n\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[5] = "Bladedancer\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\n\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[6] = "Beastmaster(WIP)\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\n\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[7] = "Sylvanas\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\n\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[8] = "Panda(WIP)\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\n\nInt 24 (+2,9)"
-
Custom script: set udg_HS_Hero_Descrip[9] = "Ashenvale Protector(WIP)\n\nStr: 17 (+1,9)\nAgi: 35 (|cff808000+3,8|r)\n\nInt 24 (+2,9)"
-
Set VariableSet Camera[1] = HPArcher <gen>
-
Set VariableSet Camera[2] = HPGuard <gen>
-
Set VariableSet Camera[3] = HPPaladin <gen>
-
Set VariableSet Camera[4] = HPWarlock <gen>
-
Set VariableSet Camera[5] = HPBladedancer <gen>
-
Set VariableSet Camera[6] = HPBeast <gen>
-
Set VariableSet Camera[7] = HPDarkArcher <gen>
-
Set VariableSet Camera[8] = HPPanda <gen>
-
Set VariableSet Camera[9] = HPGolem <gen>
-
-------- --------
-
Set VariableSet HS_Heroes_Total = 9
-
-------- --------
-
Set VariableSet HS_Players = (All players matching ((((Matching player) controller) Equal to User) and (((Matching player) slot status) Equal to Is playing)).)
-
-------- --------
-
Player Group - Pick every player in HS_Players and do (Actions)
-
Loop - Actions
-
Set VariableSet PN = (Player number of (Picked player))
-
-------- --------
-
Set VariableSet HS_Selected[PN] = 1
-
Selection - Select HS_Heroes[1]
-
Camera - Apply Camera[1] for (Picked player) over 0.20 seconds
-
Game - Display to (All players) for 70.00 seconds the text: HS_Hero_Descrip[1]
-
-------- --------
-
Trigger - Add to HS Left Arrow <gen> the event (Player - (Picked player) Presses the Left Arrow key)
-
Trigger - Add to HS Right Arrow <gen> the event (Player - (Picked player) Presses the Right Arrow key)
-
Trigger - Add to HS Select Hero <gen> the event (Player - (Picked player) skips a cinematic sequence)
-
-
-
Trigger - Turn on HS Camera <gen>
-
-------- --------
-
Countdown Timer - Start HS_Timer as a One-shot timer that will expire in 120.00 seconds
-
-
It's looking like this (quite identical for right arrow key)
-
HS Left Arrow
-
Events
-
Conditions
-
HS_Selected[(Player number of (Triggering player))] Not equal to 0
-
-
Actions
-
Set VariableSet PN = (Player number of (Triggering player))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
HS_Selected[PN] Equal to 1
-
-
Then - Actions
-
Set VariableSet HS_Selected[PN] = HS_Heroes_Total
-
Cinematic - Clear the screen of text messages for HS_Players.
-
Camera - Lock camera target for (Triggering player) to HS_Heroes[HS_Selected[PN]], offset by (0.00, 0.00) using Default rotation
-
Selection - Select HS_Heroes[HS_Selected[PN]] for (Triggering player)
-
Game - Display to HS_Players for 70.00 seconds the text: HS_Hero_Descrip[HS_Selected[PN]]
-
-
Else - Actions
-
Set VariableSet HS_Selected[PN] = (HS_Selected[PN] - 1)
-
Cinematic - Clear the screen of text messages for HS_Players.
-
Camera - Lock camera target for (Triggering player) to HS_Heroes[HS_Selected[PN]], offset by (0.00, 0.00) using Default rotation
-
Selection - Select HS_Heroes[HS_Selected[PN]] for (Triggering player)
-
Game - Display to (All players) for 70.00 seconds the text: HS_Hero_Descrip[HS_Selected[PN]]
-
-
-
-
-
HS Select Hero
-
Events
-
Conditions
-
HS_Selected[(Player number of (Triggering player))] Not equal to 0
-
HS_Hero_Check[HS_Selected[PN]] Not equal to 1.00
-
-
Actions
-
Set VariableSet PN = (Player number of (Triggering player))
-
Set VariableSet HS_Point = (Position of HS_Heroes[HS_Selected[PN]])
-
Set VariableSet HS_Heroes_Total = (HS_Heroes_Total - 1)
-
Set VariableSet HS_Hero_Check[HS_Selected[PN]] = (HS_Hero_Check[HS_Selected[PN]] + 1.00)
-
Unit - Remove HS_Heroes[HS_Selected[PN]] from the game
-
-------- --------
-
Unit - Create 1 (Unit-type of HS_Heroes[HS_Selected[PN]]) for (Triggering player) at HS_Point facing (Facing of HS_Heroes[HS_Selected[PN]]) degrees
-
Hero - Create Ankh der Reinkarnation and give it to (Last created unit)
-
Unit Group - Add (Last created unit) to RealHero
-
Player - Make Player 20 (Lavender) treat (Owner of (Last created unit)) as an Ally with shared vision
-
Player - Make (Owner of (Last created unit)) treat Player 20 (Lavender) as an Ally with shared vision
-
Selection - Clear selection for (Triggering player).
-
Selection - Select (Last created unit) for (Triggering player)
-
Cinematic - Clear the screen of text messages for (All players matching (HS_Hero_Check[HS_Selected[PN]] Equal to 1.00).).
-
Camera - Reset camera for (Triggering player) to standard game-view over 0.00 seconds
-
Camera - Pan camera for (Triggering player) to HS_Point over 0.00 seconds
-
Set VariableSet HS_Selected[PN] = 0
-
-------- Clean up Point memory leak --------
-
Custom script: call RemoveLocation(udg_HS_Point)
-
Set VariableSet HS_Selected[0] = 0
-
Set VariableSet AmountOfHeroes = (AmountOfHeroes + 1)
-
Player Group - Pick every player in HS_Players and do (Actions)
-
Loop - Actions
-
Set VariableSet PN = (Player number of (Picked player))
-
Set VariableSet HS_Selected[0] = (HS_Selected[0] + HS_Selected[PN])
-
-
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
HS_Selected[0] Equal to 0
-
-
Then - Actions
-
Unit Group - Pick every unit in (Units owned by Player 20 (Lavender) matching (((Matching unit) is A Hero) Equal to Wahr).) and do (Actions)
-
Loop - Actions
-
Unit - Remove (Picked unit) from the game
-
Trigger - Turn on GoodMid 1 <gen>
-
Trigger - Turn on GoodLeft1 <gen>
-
Trigger - Turn on GoodRight 1 <gen>
-
Trigger - Turn on BadLeft 1 <gen>
-
Trigger - Turn on BadRight 1 <gen>
-
Trigger - Turn on BadMid 1 <gen>
-
Trigger - Turn off (This trigger)
-
-
-
Trigger - Turn off HS Camera <gen>
-
Trigger - Turn off HS Left Arrow <gen>
-
Trigger - Turn off HS Right Arrow <gen>
-
Countdown Timer - Pause HS_Timer
-
Custom script: call DestroyTimer(udg_HS_Timer)
-
-
Else - Actions
-
-
-
Any help is much appreciated