I was playing around with the UI Triggers and I came across a couple of problems I couldn't seem to solve.
1. Is there a way to make boss bars only viewable by certain players? I tried to make a hitpoint bar for each player but when I tested the map, all the boss bars stacked up and the bar wouldn't decrease.
ie. I used this action in a trigger which executed at 0.1 seconds of elapsed time
And this trigger to refresh the boss bars of each player.
(the MainUnit Variable is a unit array which holds the players' fighter unit)
Sorry for the long post, since when I used the CODE tag it distorted the layout of the WC3 tag.
2. Is there a way to show a leaderboard while hiding the game UI? I would like to hide the bottom UI bar while showing a leaderboard of some sort, however, the Hide Game UI action hides both. I was wondering if there was a trigger to just hide the bottom UI bar (The one with the unit portrait and command card).
Thanks
1. Is there a way to make boss bars only viewable by certain players? I tried to make a hitpoint bar for each player but when I tested the map, all the boss bars stacked up and the bar wouldn't decrease.
ie. I used this action in a trigger which executed at 0.1 seconds of elapsed time
Trigger:
- UI Setup
- Events
- Timer - Elapsed time is 0.1 Game Time seconds
- Local Variables
- A = 0 <Integer>
- B = 0 <Integer>
- C = 0 <Integer>
- TempGroup = (Empty player group) <Player Group>
- Conditions
- Actions
- General - For each integer A from 1 to 8 with increment 1, do (Actions)
- Actions
- Player Group - Reset TempGroup to have no players
- Player Group - Add player A to TempGroup
- Variable - Set B = 0
- General - For each integer B from 1 to 4 with increment 1, do (Actions)
- Actions
- General - If (Conditions) then do (Actions) else do (Actions)
- If
- B == 1
- Then
- Variable - Set C = (C + 1)
- UI - Display boss bar C with title "Hitpoints", portrait Assets\Textures\btn-unit-terran-reaper.dds and maximum value (Integer((Player[A] Life (Current)))) for TempGroup
- UI - Move boss bar C to Bottom Left of screen with offset (25, 50)
- Variable - Set BossBar[A][1] = C
- Else
- General - If (Conditions) then do (Actions) else do (Actions)
- If
- B == 2
- Then
- Variable - Set C = (C + 1)
- UI - Display boss bar C with title "Mana", portrait Assets\Textures\btn-upgrade-terran-apolloreactor.dds and maximum value (Integer((Player[A] Energy (Current)))) for TempGroup
- UI - Move boss bar C to Bottom Left of screen with offset (550, 50)
- Variable - Set BossBar[A][2] = C
- Else
- General - If (Conditions) then do (Actions) else do (Actions)
- If
- B == 3
- Then
- Variable - Set C = (C + 1)
- UI - Display boss bar C with title "Bullets - Ammo", portrait Assets\Textures\btn-upgrade-terran-u238shells.dds and maximum value Max Ammo[A] for TempGroup
- UI - Move boss bar C to Bottom Right of screen with offset (25, 125)
- Variable - Set BossBar[A][3] = C
- Else
- General - If (Conditions) then do (Actions) else do (Actions)
- If
- B == 4
- Then
- Variable - Set C = (C + 1)
- UI - Display boss bar C with title "Secondary Weapon", portrait Assets\Textures\btn-weapon-terran-longboltmissiles.dds and maximum value Max Second Ammo[A] for TempGroup
- UI - Move boss bar C to Bottom Right of screen with offset (25, 50)
- Variable - Set BossBar[A][4] = C
- Else
- If
- General - If (Conditions) then do (Actions) else do (Actions)
- If
- General - If (Conditions) then do (Actions) else do (Actions)
- If
- General - If (Conditions) then do (Actions) else do (Actions)
- If
- General - If (Conditions) then do (Actions) else do (Actions)
- Actions
- Actions
- General - For each integer A from 1 to 8 with increment 1, do (Actions)
- Events
And this trigger to refresh the boss bars of each player.
Trigger:
- RefreshBossBar
- Events
- Timer - Every 0.25 seconds of Game Time
- Local Variables
- Conditions
- Actions
- Player Group - Pick each player in Humans and do (Actions)
- Actions
- UI - Set boss bar BossBar[(Picked player)][1] current value to (Integer((MainUnit[(Picked player)] Life (Current)))) (Do refresh the boss bar)
- UI - Set boss bar BossBar[(Picked player)][2] current value to (Integer((MainUnit[(Picked player)] Energy (Current)))) (Do refresh the boss bar)
- Actions
- Player Group - Pick each player in Humans and do (Actions)
- Events
Sorry for the long post, since when I used the CODE tag it distorted the layout of the WC3 tag.
2. Is there a way to show a leaderboard while hiding the game UI? I would like to hide the bottom UI bar while showing a leaderboard of some sort, however, the Hide Game UI action hides both. I was wondering if there was a trigger to just hide the bottom UI bar (The one with the unit portrait and command card).
Thanks