• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Simple Multiboard System v1.3

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
A simple multiboard system. Shows the Gold, Kills, Death, Player Name, Player Icon.
This multiboard has a unique feature that allows you to have your own player icon which are selectable from a dialog list by typing -icon.
Features:
- Shows gold, kills and death
- Customizable Player Icons
- Colored Names

Triggers:

  • Setting Up
    • Events
      • Time - Elapsed game time is 0.01 seconds
    • Conditions
    • Actions
      • Set MultiboardWidth[1] = 5.00
      • Set MultiboardWidth[2] = 10.00
      • Set MultiboardWidth[3] = 8.00
      • Set MultiboardWidth[4] = 8.00
      • Set MultiboardWidth[5] = 10.00
      • Multiboard - Create a multiboard with 5 columns and 3 rows, titled Multiboard
      • Set Multiboard = (Last created multiboard)
      • Multiboard - Set the width for (Last created multiboard) item in column 1, row 1 to MultiboardWidth[1]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 1, row 2 to MultiboardWidth[1]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 1, row 3 to MultiboardWidth[1]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 2, row 1 to MultiboardWidth[2]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 2, row 2 to MultiboardWidth[2]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 2, row 3 to MultiboardWidth[2]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 3, row 1 to MultiboardWidth[3]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 3, row 2 to MultiboardWidth[3]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 3, row 3 to MultiboardWidth[3]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 4, row 1 to MultiboardWidth[4]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 4, row 2 to MultiboardWidth[4]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 4, row 3 to MultiboardWidth[4]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 5, row 1 to MultiboardWidth[5]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 5, row 2 to MultiboardWidth[5]% of the total screen width
      • Multiboard - Set the width for (Last created multiboard) item in column 5, row 3 to MultiboardWidth[5]% of the total screen width
      • Multiboard - Minimize (Last created multiboard)
      • Multiboard - Maximize (Last created multiboard)
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row 1 to Icon
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 1 to Player Name
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 1 to Kills
      • Multiboard - Set the text for (Last created multiboard) item in column 4, row 1 to Deaths
      • Multiboard - Set the text for (Last created multiboard) item in column 4, row 2 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 2 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 4, row 3 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 3 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 5, row 1 to Gold
      • Multiboard - Set the text for (Last created multiboard) item in column 5, row 2 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 5, row 3 to 0
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 2 to Color[1]
      • Multiboard - Set the icon for (Last created multiboard) item in column 1, row 2 to IconArray[1]
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 3 to Color[2]
      • Multiboard - Set the icon for (Last created multiboard) item in column 1, row 3 to IconArray[2]
      • Multiboard - Set the icon for (Last created multiboard) item in column 5, row 1 to UI\Feedback\Resources\ResourceGold.blp
      • Multiboard - Set the display style for (Last created multiboard) item in column 1, row 1 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 1, row 2 to Show text and Show icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 2, row 1 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 2, row 2 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 3, row 1 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 3, row 2 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 4, row 1 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 4, row 2 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 1, row 3 to Show text and Show icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 2, row 3 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 3, row 3 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 4, row 3 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 5, row 1 to Show text and Show icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 5, row 2 to Show text and Hide icons
      • Multiboard - Set the display style for (Last created multiboard) item in column 5, row 3 to Show text and Hide icons



  • Player Icon
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set IconArray[1] = ReplaceableTextures\CommandButtons\BTNRifleman.blp
      • Set IconArray[2] = ReplaceableTextures\CommandButtons\BTNMarine.blp
      • Set IconArray[3] = ReplaceableTextures\CommandButtons\BTNFlyingMachine.blp
      • Set IconArray[4] = ReplaceableTextures\CommandButtons\BTNHeroMountainKing.blp
      • Set IconArray[5] = ReplaceableTextures\CommandButtons\BTNMortarTeam.blp
      • Set IconArray[6] = ReplaceableTextures\CommandButtons\BTNFootman.blp
      • Set IconArray[9] = ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp
      • Set IconArray[10] = ReplaceableTextures\CommandButtons\BTNHeroArchMage.blp
      • Set IconArray[11] = ReplaceableTextures\CommandButtons\BTNBloodMage2.blp
      • Set IconArray[12] = ReplaceableTextures\CommandButtons\BTNKnight.blp






  • Icon Command
    • Events
      • Player - Player 1 (Red) types a chat message containing -icon as An exact match
      • Player - Player 2 (Blue) types a chat message containing -icon as An exact match
      • Player - Player 3 (Teal) types a chat message containing -icon as An exact match
      • Player - Player 4 (Purple) types a chat message containing -icon as An exact match
      • Player - Player 5 (Yellow) types a chat message containing -icon as An exact match
      • Player - Player 6 (Orange) types a chat message containing -icon as An exact match
      • Player - Player 7 (Green) types a chat message containing -icon as An exact match
      • Player - Player 8 (Pink) types a chat message containing -icon as An exact match
      • Player - Player 9 (Gray) types a chat message containing -icon as An exact match
      • Player - Player 11 (Dark Green) types a chat message containing -icon as An exact match
      • Player - Player 12 (Brown) types a chat message containing -icon as An exact match
    • Conditions
    • Actions
      • Dialog - Clear IconDialog
      • Dialog - Change the title of IconDialog to Change your icon to...
      • Dialog - Create a dialog button for IconDialog labelled Rifleman
      • Set IconButton[1] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Marine
      • Set IconButton[2] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Gyrocopter
      • Set IconButton[3] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Mountain King
      • Set IconButton[4] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Mortar Team
      • Set IconButton[5] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Footman
      • Set IconButton[6] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled More
      • Set IconButton[7] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Cancel
      • Set IconButton[8] = (Last created dialog Button)
      • Dialog - Show IconDialog for (Triggering player)


  • Icon Command Page 2
    • Events
      • Dialog - A dialog button is clicked for IconDialog
    • Conditions
      • (Clicked dialog button) Equal to IconButton[7]
    • Actions
      • Dialog - Hide IconDialog for (Triggering player)
      • Dialog - Clear IconDialog
      • Dialog - Change the title of IconDialog to Change your icon to...
      • Dialog - Create a dialog button for IconDialog labelled Paladin
      • Set IconButton[9] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Archmage
      • Set IconButton[10] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Blood Mage
      • Set IconButton[11] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Knight
      • Set IconButton[12] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Back
      • Set IconButton[13] = (Last created dialog Button)
      • Dialog - Create a dialog button for IconDialog labelled Cancel
      • Set IconButton[8] = (Last created dialog Button)
      • Dialog - Show IconDialog for (Triggering player)


  • Icon Setting Loop
    • Events
      • Dialog - A dialog button is clicked for IconDialog
    • Conditions
    • Actions
      • For each (Integer Integer_Var) from 1 to 9, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) Equal to IconButton[Integer_Var]
            • Then - Actions
              • Set Icon[Integer_Var] = IconArray[Integer_Var]
              • Multiboard - Set the icon for Multiboard item in column 1, row ((Player number of (Triggering player)) + 1) to Icon[Integer_Var]
            • Else - Actions
  • [/hidden]
  • [hidden="Icon Cancel and Back"]
  • [trigger]
  • Icon Cancel
    • Events
      • Dialog - A dialog button is clicked for IconDialog
    • Conditions
      • (Clicked dialog button) Equal to IconButton[8]
    • Actions
      • Dialog - Hide IconDialog for (Triggering player)
Icon Back
  • Icon Back
    • Events
      • Dialog - A dialog button is clicked for IconDialog
    • Conditions
      • (Clicked dialog button) Equal to IconButton[13]
    • Actions
      • Trigger - Run Icon Command <gen> (checking conditions)






  • Player Left
    • Events
      • Player - Player 1 (Red) leaves the game
      • Player - Player 2 (Blue) leaves the game
      • Player - Player 3 (Teal) leaves the game
      • Player - Player 4 (Purple) leaves the game
      • Player - Player 5 (Yellow) leaves the game
      • Player - Player 6 (Orange) leaves the game
      • Player - Player 7 (Green) leaves the game
      • Player - Player 8 (Pink) leaves the game
      • Player - Player 9 (Gray) leaves the game
      • Player - Player 10 (Light Blue) leaves the game
      • Player - Player 11 (Dark Green) leaves the game
      • Player - Player 12 (Brown) leaves the game
    • Conditions
    • Actions
      • Multiboard - Set the text for Multiboard item in column 1, row ((Player number of (Triggering player)) + 1) to ((Name of (Triggering player)) + (left. + |r))


Kills and Deaths
  • Kills
  • Kills and Deaths
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Killing unit) is A Hero) Equal to True
      • ((Triggering unit) is A Hero) Equal to True
    • Actions
      • Set Kills[(Player number of (Owner of (Killing unit)))] = (Kills[(Player number of (Owner of (Killing unit)))] + 1)
      • Multiboard - Set the text for Multiboard item in column 3, row ((Player number of (Owner of (Killing unit))) + 1) to (String(Kills[(Player number of (Owner of (Killing unit)))]))
      • Set Deaths[(Player number of (Triggering player))] = (Deaths[(Player number of (Triggering player))] + 1)
      • Multiboard - Set the text for Multiboard item in column 4, row ((Player number of (Triggering player)) + 1) to (String(Deaths[(Player number of (Triggering player))]))
Gold
  • Gold
    • Events
      • Player - Player 1 (Red)'s Current gold becomes Greater than 0.00
    • Conditions
    • Actions
      • Set PlayerGold[(Player number of (Triggering player))] = ((Triggering player) Current gold)
      • Multiboard - Set the text for Multiboard item in column 5, row ((Player number of (Triggering player)) + 1) to (String(PlayerGold[(Player number of (Triggering player))]))



Changelog:


- Released the system.


- Shortened Icon Setting Loop
- Decreased Icons
- Merged Kills and Deaths


- Edited Icon Setting Loop



Any ideas or comments would be appreciated!

Keywords:
Multiboard, System, Icon, Blindman, Hotdoggers, Dialog, Dialog Button
Contents

Multiboard System (Map)

Reviews
12.12 IcemanBo: For long time as NeedsFix. Rejected. Bribe: What happened to players 7 and 8 in the Player Icon trigger? Dialog still not MPI. Still need to merge all the triggers with "A dialog button is clicked for IconDialog" as an event...

Moderator

M

Moderator

12.12
IcemanBo: For long time as NeedsFix. Rejected.

Bribe:
  • What happened to players 7 and 8 in the Player Icon trigger?
  • Dialog still not MPI.
  • Still need to merge all the triggers with "A dialog button is clicked for IconDialog" as an event.
  • This:
    • Set PlayerNumber[1] = (Player number of (Owner of (Killing unit)))
    • Set PlayerNumber[2] = (Player number of (Triggering player))
    • Set PlayerNumber[3] = (Player number of (Triggering player))
    Is the same as this:
    • Set PlayerNumber[1] = 0
    • Set PlayerNumber[2] = 0
    • Set PlayerNumber[3] = 0
    Because it's run during map initialization. You need to physically run this trigger ("Player Number") each time you want to run those variables. And get rid of the "Map Initialization" event because it's useless as you can see now.
Needs fix.
 
You must use (Triggering Unit) instead of dying unit.
Store triggering unit in a variable and use it so you dont
have to continuously use the function (Triggering Unit)

Trust me. it's faster.

Another thing, the number of columns should be configurable
The number of rows should be equal to the 1 + the number of
players in this case.

  • Icon Setting
  • Events
    • Dialog - A dialog button is clicked for IconDialog
  • Conditions
  • Actions
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • (Clicked dialog button) Equal to IconButton[1]
      • Then - Actions
        • Set Icon[1] = ReplaceableTextures\CommandButtons\BTNRifleman.blp
        • Multiboard - Set the icon for Multiboard item in column 1, row ((Player number of (Triggering player)) + 1) to Icon[1]
      • Else - Actions
        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • (Clicked dialog button) Equal to IconButton[2]
          • Then - Actions
            • Set Icon[2] = ReplaceableTextures\CommandButtons\BTNMarine.blp
            • Multiboard - Set the icon for Multiboard item in column 1, row ((Player number of (Triggering player)) + 1) to Icon[2]
          • Else - Actions
            • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              • If - Conditions
                • (Clicked dialog button) Equal to IconButton[3]
              • Then - Actions
                • Set Icon[3] = ReplaceableTextures\CommandButtons\BTNGyrocopter.blp
                • Multiboard - Set the icon for Multiboard item in column 1, row ((Player number of (Triggering player)) + 1) to Icon[3]
              • Else - Actions
                • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                  • If - Conditions
                    • (Clicked dialog button) Equal to IconButton[4]
                  • Then - Actions
                    • Set Icon[4] = ReplaceableTextures\CommandButtons\BTNHeroMountainKing.blp
                    • Multiboard - Set the icon for Multiboard item in column 1, row ((Player number of (Triggering player)) + 1) to Icon[4]
                  • Else - Actions
                    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                      • If - Conditions
                        • (Clicked dialog button) Equal to IconButton[5]
                      • Then - Actions
                        • Set Icon[5] = ReplaceableTextures\CommandButtons\BTNMortarTeam.blp
                        • Multiboard - Set the icon for Multiboard item in column 1, row ((Player number of (Triggering player)) + 1) to Icon[5]
                      • Else - Actions
                        • ....................
You've got to be kidding ;p
Use a loop (Integer Variable)

You're code should look something like:

  • For each integer i from 1 to NumButtons
    • Loop
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Clicked dialog button) Equal to IconButton[i]
        • Then - Actions
          • Set Icon[i] = ReplaceableTextures\CommandButtons\BTNRifleman.blp
          • Multiboard - Set the icon for Multiboard item in column 1, row ((Player number of (Triggering player)) + 1) to Icon[i]
        • Else - Actions
It'll be MUCH more efficient and compact.

  • Multiboard - Set the width for (Last created multiboard) item in column 1, row 1 to 5.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 1, row 2 to 5.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 1, row 3 to 5.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 2, row 1 to 10.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 2, row 2 to 10.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 2, row 3 to 10.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 3, row 1 to 8.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 3, row 2 to 8.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 3, row 3 to 8.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 4, row 1 to 8.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 4, row 2 to 8.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 4, row 3 to 8.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 5, row 1 to 10.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 5, row 2 to 10.00% of the total screen width
  • Multiboard - Set the width for (Last created multiboard) item in column 5, row 3 to 10.00% of the total screen width
The sizes should be configurable here.

Please fix this system.
I'm not going to give you a low rating now because I dont want to ruin
your chance of fixing it.

Good luck :]
 
Hmm..
I made a small mistake.

Wtvr you want the icons to be should be in a pre-defined variable
So the action would be like this:
Set Icon = IconArray

Make the IconArray consistent with the dialog buttons so that it could work.

For example, IconArray[1] would be referring to something similar to Dialog button #1
IconArray[2] would be referring to something similar to Dialog button #2.

One other thing, you should merge the Kill and Death triggers because they have the EXACT same events and conditions.
 
To FURTHER increase efficiency:

  • Set Kills[(Player number of (Owner of (Killing unit)))] = (Kills[(Player number of (Owner of (Killing unit)))] + 1)
    • Multiboard - Set the text for Multiboard item in column 3, row ((Player number of (Owner of (Killing unit))) + 1) to (String(Kills[(Player number of (Owner of (Killing unit)))]))
    • Set Deaths[(Player number of (Triggering player))] = (Deaths[(Player number of (Triggering player))] + 1)
    • Multiboard - Set the text for Multiboard item in column 4, row ((Player number of (Triggering player)) + 1) to (String(Deaths[(Player number of (Triggering player))]))
Store the player numbers in a variable


AND

  • Icon Cancel
    • Events
      • Dialog - A dialog button is clicked for IconDialog
    • Conditions
      • (Clicked dialog button) Equal to IconButton[8]
    • Actions
      • Dialog - Hide IconDialog for (Triggering player)

  • Icon Back
    • Events
      • Dialog - A dialog button is clicked for IconDialog
    • Conditions
      • (Clicked dialog button) Equal to IconButton[13]
    • Actions
      • Trigger - Run Icon Command &lt;gen&gt; (checking conditions)
Merge these 2 triggers.

You should use something like this:
  • Events
    • Dialog - A dialog button is clicked for IconDialog
  • Conditions
  • Actions
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • (Clicked dialog button) Equal to IconButton[8]
      • Then - Actions
        • Dialog - Hide IconDialog for (Triggering player)
      • Else - Actions
        • If - Conditions
          • (Clicked dialog button) Equal to IconButton[13]
        • Then - Actions
          • Trigger - Run Icon Command <gen> (ignoring conditions)
        • Else - Actions
And notice how it should be (ignoring conditions) -- Its faster this way :)
 
Updated. But I didnt change the triggers in the main post. I did what you said.

Most people like me don't even bother to download the spells :p
We just look at the triggers :p

I think updating the description is just as important as updating the
system/spell because the moderators usually base their rating on the
posted code :p
 
Level 29
Joined
Mar 10, 2009
Messages
5,016
you should learn how to use loops in your multiboard to avoid those long trigger in the setting-up trigger...

also this...

  • Multiboard - Set the width for (Last created multiboard)
should be this...

  • Multiboard - Set the width for (Multiboard)
example of loops...

  • For each (Integer A) from 1 to 3, do (Actions)
    • Multiboard - Set the width for (Multiboard) item in column 1, row Integer A to MultiboardWidth[1]% of the total screen width
Integer A can be used if you only use it one time or instant, like setting up Multiboard but if you're updating it, then that can cause problems...
 
Level 11
Joined
Mar 19, 2008
Messages
799
Also i think it would be better if you would set the multiboard icons to hero icons. You just gotta do a trigger, Hero being equal to Death Knigth Arthas, then it picks the icon of arthas and sets it as icon on multiboard. Also making it work on AOS type of games would be nice, i could use this sort of multiboard but i would need 2 teams for it.
 
Top