• 🏆 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!

Multiboard Template - Here you go!

Status
Not open for further replies.
Level 4
Joined
Feb 6, 2007
Messages
72
Okey so I figured I needed a Multiboard and found out that you need to use dialogs, this is a very dynamic system but a bit confusing in start.

So I wanted to create a multiboard with columns and rows. One instance of a multiboard for each player showing a text in the left column and integers in the right one.

This multiboard template has 9(Rows)x2(Columns) with a dynamic system which makes it easy to change distances between Dialog Items (Texts, Integers etc) very easy.

I made this template for you so that you hopefully will learn from it. This is not a tutorial though.

However, I hope you find it useful!

Yours Faithfully, Ice_bane @ EU


P.S I know this Dialog/Multiboard isn't fully optimised but hopefully you will learn from it anway.



GLOBAL VARIABLES

Code:
        Variables
            Player Group
                <Your Player Group> = (Empty player group) <Player Group>
            Dialog
                Dialog - Initial Dialog = No Dialog <Dialog[14]>
                Dialog - Dialog Items = No Dialog Item <Dialog Item[14][14]>
                Dialog - <Right Column Integers> = 0 <Integer[14][8]>
            Technologies
                <Left Column Text - Row 1> = 0 <Integer[14]>
                <Left Column Text - Row 2> = 0 <Integer[14]>
                <Left Column Text - Row 3> = 0 <Integer[14]>
                <Left Column Text - Row 4> = 0 <Integer[14]>
                <Left Column Text - Row 5> = 0 <Integer[14]>
                <Left Column Text - Row 6> = 0 <Integer[14]>
                <Left Column Text - Row 7> = 0 <Integer[14]>
                <Left Column Text - Row 8> = 0 <Integer[14]>

DIALOG CREATION TRIGGER
Code:
Dialog - Dialog Creation
    Events
        Timer - Elapsed time is 6.0 Game Time seconds
    Local Variables
        Loop Integer A = 0 <Integer>
        Loop Integer B = 0 <Integer>
        Dialog Text Set 01 = No Text <Text[10]>
        ------- -
        Dialog Colums (X) Cordinate = 0 <Integer[8]>
        Dialog Rows (Y) Cordinate = 0 <Integer[8]>
        ------- -
        Dialog Number of Active  Rows = 8 <Integer>
        ------- (Active Rows = the rows I want to update later on, the rows used by Dialog Text Set 01[9] & [10] is static and won't be changed.)
        Dialog Number of Columns = 2 <Integer>
    Conditions
    Actions
        ------- Set Variables
        General - If (Conditions) then do (Actions) else do (Actions)
            If
            Then
                Variable - Set Dialog Text Set 01[1] = "<Left Column Text - Row 2>"
                Variable - Set Dialog Text Set 01[2] = "<Left Column Text - Row 3>"
                Variable - Set Dialog Text Set 01[3] = "<Left Column Text - Row 4>"
                Variable - Set Dialog Text Set 01[4] = "<Left Column Text - Row 5>"
                Variable - Set Dialog Text Set 01[5] = "<Left Column Text - Row 6>"
                Variable - Set Dialog Text Set 01[6] = "<Left Column Text - Row 7>"
                Variable - Set Dialog Text Set 01[7] = "<Left Column Text - Row 8>"
                Variable - Set Dialog Text Set 01[8] = "<Left Column Text - Row 9>"
                Variable - Set Dialog Text Set 01[9] = "<Left Column Topic - Row 1>"
                Variable - Set Dialog Text Set 01[10] = "<Left Column Topic - Row 2>"
                ------- -
                General - For each integer Loop Integer A from 1 to (Number of players in <Your Player Group>) with increment 1, do (Actions)
                    Actions
                        Variable - Set Dialog - <Right Column Integers>[Loop Integer A][1] = <Left Column Text - Row 1>[Loop Integer A]
                        Variable - Set Dialog - <Right Column Integers>[Loop Integer A][2] = <Left Column Text - Row 2>[Loop Integer A]
                        Variable - Set Dialog - <Right Column Integers>[Loop Integer A][3] = <Left Column Text - Row 3>[Loop Integer A]
                        Variable - Set Dialog - <Right Column Integers>[Loop Integer A][4] = <Left Column Text - Row 4>[Loop Integer A]
                        Variable - Set Dialog - <Right Column Integers>[Loop Integer A][5] = <Left Column Text - Row 5>[Loop Integer A]
                        Variable - Set Dialog - <Right Column Integers>[Loop Integer A][6] = <Left Column Text - Row 6>[Loop Integer A]
                        Variable - Set Dialog - <Right Column Integers>[Loop Integer A][7] = <Left Column Text - Row 7>[Loop Integer A]
                        Variable - Set Dialog - <Right Column Integers>[Loop Integer A][8] = <Left Column Text - Row 8>[Loop Integer A]
                ------- Set Cordinate for Columns (X)
                ------- -
                Variable - Set Dialog Colums (X) Cordinate[1] = 50
                Variable - Set Dialog Colums (X) Cordinate[2] = 225
                ------- -
                ------- Set Cordinate for Rows (Y)
                General - For each integer Loop Integer A from 1 to Dialog Number of Active  Rows with increment 1, do (Actions)
                    Actions
                        Variable - Set Dialog Rows (Y) Cordinate[Loop Integer A] = (50 + (25 * Loop Integer A))
            Else

DIALOG REFRESH TRIGGER
Code:
Dialog - Dialog Refresh
    Events
        Timer - Every 0.5 seconds of Game Time
    Local Variables
        Loop Integer A = 0 <Integer>
        Loop Integer B = 0 <Integer>
        Dialog Text Set 01 = No Text <Text[14]>
        ------- -
        Dialog Colums (X) Cordinate = 0 <Integer[8]>
        Dialog Rows (Y) Cordinate = 0 <Integer[8]>
        ------- Comment
        Dialog Number of Rows = 8 <Integer>
        Dialog Number of Columns = 2 <Integer>
    Conditions
    Actions
        General - For each integer Loop Integer A from 1 to (Number of players in <Your Player Group>) with increment 1, do (Actions)
            Actions
                Variable - Set Dialog - <Right Column Integers>[Loop Integer A][1] = <Left Column Text - Row 1>[Loop Integer A]
                Variable - Set Dialog - <Right Column Integers>[Loop Integer A][2] = <Left Column Text - Row 2>[Loop Integer A]
                Variable - Set Dialog - <Right Column Integers>[Loop Integer A][3] = <Left Column Text - Row 3>[Loop Integer A]
                Variable - Set Dialog - <Right Column Integers>[Loop Integer A][4] = <Left Column Text - Row 4>[Loop Integer A]
                Variable - Set Dialog - <Right Column Integers>[Loop Integer A][5] = <Left Column Text - Row 5>[Loop Integer A]
                Variable - Set Dialog - <Right Column Integers>[Loop Integer A][6] = <Left Column Text - Row 6>[Loop Integer A]
                Variable - Set Dialog - <Right Column Integers>[Loop Integer A][7] = <Left Column Text - Row 7>[Loop Integer A]
                Variable - Set Dialog - <Right Column Integers>[Loop Integer A][8] = <Left Column Text - Row 8>[Loop Integer A]
        ------- SET TEXT LABEL
        Player Group - For each player Loop Integer A in <Your Player Group> do (Actions)
            Actions
                ------- Set Text = Integers
                General - For each integer Loop Integer B from 1 to Dialog Number of Rows with increment 1, do (Actions)
                    Actions
                        Dialog - Set Dialog - Dialog Items[Loop Integer A][Loop Integer B] text to (Text(Dialog - <Right Column Integers>[Loop Integer A][Loop Integer B])) for (Player group(Loop Integer A))
 
Status
Not open for further replies.
Top