Multiboard help

Nina

New Member
Reaction score
8
I need some help with setting up my multiboard, I'm just loosing myself in lots of if's and I can't seem to find out how to setup my multiboard the way I want it. Hopefully someone can help me.

This is how it's supposed to look: (the pink should always be there but lets say if theres no one in team one it just has to say Northeast and then directly under it the next team Southeast.

Examples are in attachments.

This is my trigger:

JASS:
globals
    integer NErow = 2
    integer SErow
    integer SWrow
    integer NWrow
    boolean plays0
    boolean plays1
    boolean plays2
    boolean plays3
    boolean plays4
    boolean plays5
    boolean plays6
    boolean plays7
    boolean plays8
    boolean plays9
    boolean plays10
    boolean plays11
endglobals

function CountPlayers takes nothing returns integer//counts all players who are playing and are users(not computers)
    local integer i = 0
    local integer p = 0
    loop
        exitwhen i > 12
        if((GetPlayerSlotState(Player(i)) == PLAYER_SLOT_STATE_PLAYING)and(GetPlayerController(Player(i)) == MAP_CONTROL_USER))then
            set p = p + 1
        endif
        set i = i + 1
    endloop
    return p
endfunction

function IsPlaying takes player p returns boolean//checks if the player is playing
    local integer i = GetPlayerId(p)
    return(((GetPlayerSlotState(Player(i)) == PLAYER_SLOT_STATE_PLAYING)and(GetPlayerController(Player(i)) == MAP_CONTROL_USER)) == true)
endfunction

function SetUpMultiboard takes nothing returns nothing
    local integer i = 0
    local multiboard m = CreateMultiboard()//from here
    call MultiboardSetRowCount(m, 5 + CountPlayers())
    call MultiboardSetColumnCount(m, 4)
    call MultiboardSetTitleText(m, "title")
    call MultiboardDisplay(m, true)//to here is in gui create multiboard with title,rows,columns blablabla
    
    call MultiboardSetItemValueBJ(m, 2, 1, "[copper]")
    call MultiboardSetItemValueBJ(m, 3, 1, "[silver]")
    call MultiboardSetItemValueBJ(m, 4, 1, "[gold]")
    
    
    //Norhteast team
    call MultiboardSetItemValueBJ(m, 1, NErow, "[North East]")
    if(IsPlaying(Player(0)))then
        set plays0 = true
        call MultiboardSetItemValueBJ(m, 1,NErow + 1, GetPlayerName(Player(0)))
    elseif(IsPlaying(Player(1)))then
        set plays0 = false
        set plays1 = true
        call MultiboardSetItemValueBJ(m,  1,NErow + 1, GetPlayerName(Player(1)))
    elseif(IsPlaying(Player(2)))then
        set plays0 = false
        set plays1 = false
        set plays2 = true
        call MultiboardSetItemValueBJ(m,  1,NErow + 1, GetPlayerName(Player(2)))
    else
        set plays0 = false
        set plays1 = false
        set plays2 = false
        set SErow = NErow + 1
    endif
    if(plays0)then
        if(IsPlaying(Player(1)))then
            set plays1 = true
            call MultiboardSetItemValueBJ(m, 1, NErow + 2, GetPlayerName(Player(1)))
        elseif(IsPlaying(Player(2)))then
            set plays1 = false
            set plays2 = true
            call MultiboardSetItemValueBJ(m, 1, NErow + 2, GetPlayerName(Player(2)))
        else
            set plays1 = false
            set plays2 = false
            set SErow = NErow + 2
        endif
    elseif(plays1)then
        if(IsPlaying(Player(2)))then
            call MultiboardSetItemValueBJ(m, 1, NErow + 3, GetPlayerName(Player(2)))
            set plays2 = true
        else
            set plays2 = false
            set SErow = NErow + 3
        endif
    endif
    
    //Southeast team
    call MultiboardSetItemValueBJ(m, 1, SErow, "[South East]")
    
    if(IsPlaying(Player(3)))then
        set plays3 = true
        call MultiboardSetItemValueBJ(m,  1,SErow + 1, GetPlayerName(Player(3)))
    elseif(IsPlaying(Player(4)))then
        set plays3 = false
        set plays4 = true
        call MultiboardSetItemValueBJ(m,  1, SErow +1, GetPlayerName(Player(4)))
    elseif(IsPlaying(Player(5)))then

        set plays3 = false
        set plays4 = false
        set plays5 = true
        call MultiboardSetItemValueBJ(m,  1,SErow + 1, GetPlayerName(Player(5)))
    else
        set plays3 = false
        set plays4 = false
        set plays5 = false
        set SWrow = SErow + 1
    endif
    if(plays3)then
        if(IsPlaying(Player(4)))then
            set plays4 = true
            call MultiboardSetItemValueBJ(m, 1, SErow + 2, GetPlayerName(Player(4)))
        elseif(IsPlaying(Player(5)))then
            set plays4 = false
            set plays5 = true
            call MultiboardSetItemValueBJ(m, 1, SErow + 2, GetPlayerName(Player(5)))
        else
            set plays4 = false
            set plays5 = false
            set SWrow = SErow + 2
        endif
    elseif(plays4)then
        if(IsPlaying(Player(5)))then
            set plays5 = true
            call MultiboardSetItemValueBJ(m, 1, SErow + 3, GetPlayerName(Player(5)))
        else
            set plays5 = false
            set SWrow = SErow + 3
        endif
    endif
    ////////////////
    loop// turns off all icons and sets width
        exitwhen i > 17
        call MultiboardSetItemStyleBJ( m, i, i, true, false )
        call MultiboardSetItemStyleBJ( m, i, i, true, false )
        call MultiboardSetItemStyleBJ( m, i, i, true, false )
        call MultiboardSetItemStyleBJ( m, i, i, true, false )
        
        call MultiboardSetItemWidthBJ(m, i, 1, 8.0)
        call MultiboardSetItemWidthBJ(m, i, 2, 5.0)
        call MultiboardSetItemWidthBJ(m, i, 3, 5.0)
        call MultiboardSetItemWidthBJ(m, i, 4, 5.0)
    endloop
endfunction

//===========================================================================
function InitTrig_Multiboard takes nothing returns nothing
    local trigger t = CreateTrigger(  )
    call TriggerRegisterTimerEvent(t, 0.01, false)
    call TriggerAddAction( t, function SetUpMultiboard )
endfunction
 

Attachments

  • example1dwarfmap.PNG
    example1dwarfmap.PNG
    4.5 KB · Views: 191
  • example2dwarfmap.PNG
    example2dwarfmap.PNG
    4.2 KB · Views: 220
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top