Problem With this Multiboard?

DiFm

New Member
Reaction score
35
this is suppossed to show only for 1 player however it removes the my other Multiboard why and how to prevent it?

Trigger:
  • Creep Kill
    • Events
      • Player - Player 1 (Red) types a chat message containing -cs as An exact match
      • Player - Player 2 (Blue) types a chat message containing -cs as An exact match
      • Player - Player 3 (Teal) types a chat message containing -cs as An exact match
      • Player - Player 4 (Purple) types a chat message containing -cs as An exact match
      • Player - Player 5 (Yellow) types a chat message containing -cs as An exact match
      • Player - Player 7 (Green) types a chat message containing -cs as An exact match
      • Player - Player 8 (Pink) types a chat message containing -cs as An exact match
      • Player - Player 9 (Gray) types a chat message containing -cs as An exact match
      • Player - Player 10 (Light Blue) types a chat message containing -cs as An exact match
      • Player - Player 11 (Dark Green) types a chat message containing -cs as An exact match
    • Conditions
      • AllowCS[(Player number of (Triggering player))] Equal to False
    • Actions
      • Set CSPlayer = (Triggering player)
      • Set AllowCS[(Player number of (Triggering player))] = True
      • Multiboard - Create a multiboard with 2 columns and 1 rows, titled Creeps Killed
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row 1 to CS:
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 1 to (String(Counter_CS[(Player number of (Triggering player))]))
      • Custom script: if GetLocalPlayer() == udg_CSPlayer then
      • Multiboard - Show (Last created multiboard)
      • Custom script: endif
      • Set CreepKilled[(Player number of (Triggering player))] = (Last created multiboard)


Trigger:
  • Creeps Killed
    • Events
      • Unit - A unit Dies
    • Conditions
      • Or - Any (Conditions) are true
        • Conditions
          • (Unit-type of (Triggering unit)) Equal to Footman (EVIL)
          • (Unit-type of (Triggering unit)) Equal to Footman (GOOD)
      • ((Triggering unit) belongs to an enemy of (Owner of (Killing unit))) Equal to True
    • Actions
      • Set Counter_CS[(Player number of (Owner of (Killing unit)))] = (Counter_CS[(Player number of (Owner of (Killing unit)))] + 1)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • AllowCS[(Player number of (Owner of (Killing unit)))] Equal to True
        • Then - Actions
          • Multiboard - Set the text for CreepKilled[(Player number of (Owner of (Killing unit)))] item in column 2, row 1 to (String(Counter_CS[(Player number of (Owner of (Killing unit)))]))
        • Else - Actions


So that's how it is but wehne you type -cs the other multiboard that's shown to everyone about kills deaths and revive time dissaperas.
 

AceHart

Your Friendly Neighborhood Admin
Reaction score
1,497
"Multiboard - Create ..." automatically shows the board to all players.
As such, given you can only have one visible board at a time, whatever is there will go...

To get this to work, you need to create all needed boards on "time elapsed 0 seconds",
then hide them all for all players,
and, finally, show as needed with some help from GetLocalPlayer.
 

DiFm

New Member
Reaction score
35
Now It looks like this

Trigger:
  • MultiBoard
    • Events
      • Time - Elapsed game time is 5.00 seconds
    • Conditions
    • Actions
      • Set Colours[0] = |cffffcc00
      • Set Colours[1] = |cffFF0202
      • Set Colours[2] = |cff0041FF
      • Set Colours[3] = |cff1BE6B8
      • Set Colours[4] = |cff530080
      • Set Colours[5] = |cffFFFC00
      • Set Colours[6] = |cffFE890D
      • Set Colours[7] = |cff1FBF00
      • Set Colours[8] = |cffE55AAF
      • Set Colours[9] = |cff949596
      • Set Colours[10] = |cff7DBEF1
      • Set Colours[11] = |cff0F6145
      • Set Colours[12] = |cff4D2903
      • Set End_tag = |r
      • Multiboard - Create a multiboard with 4 columns and ((Number of players in All_Players) + 1) rows, titled Ultimate Showdown
      • Multiboard - Set the text for (Last created multiboard) item in column 1, row 1 to (Colours[0] + (Fighters + End_tag))
      • Multiboard - Set the text for (Last created multiboard) item in column 2, row 1 to (Colours[0] + (Revive + End_tag))
      • Multiboard - Set the text for (Last created multiboard) item in column 3, row 1 to (Colours[0] + (Kills + End_tag))
      • Multiboard - Set the text for (Last created multiboard) item in column 4, row 1 to (Colours[0] + (Deaths + End_tag))
      • For each (Integer A) from 1 to ((Number of players in All_Players) + 1), do (Actions)
        • Loop - Actions
          • For each (Integer B) from 1 to 4, do (Actions)
            • Loop - Actions
              • Multiboard - Set the display style for (Last created multiboard) item in column (Integer B), row (Integer A) to Show text and Hide icons
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Integer B) Equal to 1
                • Then - Actions
                  • Multiboard - Set the width for (Last created multiboard) item in column (Integer B), row (Integer A) to 10.00% of the total screen width
                • Else - Actions
                  • Multiboard - Set the width for (Last created multiboard) item in column (Integer B), row (Integer A) to 5.00% of the total screen width
      • Set ScooreBoard = (Last created multiboard)
      • Player Group - Pick every player in All_Players and do (Actions)
        • Loop - Actions
          • Set MultiBoard = (MultiBoard + 1)
          • Set String_Name[(Player number of (Picked player))] = (Colours[(Player number of (Picked player))] + ((Name of (Picked player)) + End_tag))
          • Multiboard - Set the text for (Last created multiboard) item in column 1, row MultiBoard to String_Name[(Player number of (Picked player))]
          • Multiboard - Set the text for (Last created multiboard) item in column 3, row MultiBoard to (String(Hero_Kills[(Player number of (Picked player))]))
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row MultiBoard to (String(Hero_Deaths[(Player number of (Picked player))]))
      • Player Group - Pick every player in All_Players and do (Actions)
        • Loop - Actions
          • Set CSPlayer = (Picked player)
          • Multiboard - Create a multiboard with 2 columns and 1 rows, titled Creeps Killed
          • Multiboard - Set the text for (Last created multiboard) item in column 1, row 1 to CS:
          • 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 2, row 1 to Show text and Hide icons
          • Multiboard - Set the text for (Last created multiboard) item in column 2, row 1 to (String(Counter_CS[(Player number of (Triggering player))]))
          • Custom script: if GetLocalPlayer() == udg_CSPlayer then
          • Multiboard - Hide (Last created multiboard)
          • Custom script: endif
          • Set CreepKilled[(Player number of (Triggering player))] = (Last created multiboard)
      • Trigger - Run Multiboard Display <gen> (checking conditions)


Trigger:
  • Multiboard Display
    • Events
    • Conditions
    • Actions
      • Player Group - Pick every player in All_Players and do (Actions)
        • Loop - Actions
          • Set CSPlayer = (Picked player)
          • Custom script: if GetLocalPlayer() == udg_CSPlayer then
          • Multiboard - Show ScooreBoard
          • Custom script: endif
Trigger:
  • Creep Kill
    • Events
      • Player - Player 1 (Red) types a chat message containing -cs as An exact match
      • Player - Player 2 (Blue) types a chat message containing -cs as An exact match
      • Player - Player 3 (Teal) types a chat message containing -cs as An exact match
      • Player - Player 4 (Purple) types a chat message containing -cs as An exact match
      • Player - Player 5 (Yellow) types a chat message containing -cs as An exact match
      • Player - Player 7 (Green) types a chat message containing -cs as An exact match
      • Player - Player 8 (Pink) types a chat message containing -cs as An exact match
      • Player - Player 9 (Gray) types a chat message containing -cs as An exact match
      • Player - Player 10 (Light Blue) types a chat message containing -cs as An exact match
      • Player - Player 11 (Dark Green) types a chat message containing -cs as An exact match
    • Conditions
      • AllowCS[(Player number of (Triggering player))] Equal to False
    • Actions
      • Set AllowCS[(Player number of (Triggering player))] = True
      • For each (Integer A) from 1 to 10, do (Actions)
        • Loop - Actions
          • Set CSPlayer = (Player((Integer A)))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • CSPlayer Equal to (Triggering player)
            • Then - Actions
              • Custom script: if GetLocalPlayer() == udg_CSPlayer then
              • Multiboard - Show CreepKilled[(Integer A)]
              • Custom script: endif
            • Else - Actions


This does remove My old Multiboard so i must be doing something wrong could you post using this trigger exactly how it should look like to work or pinpoint the wrongs?
 

lbebusiness

New Member
Reaction score
3
can you send me the map?
Im going to be editing this post as I add changes I would make.

move:

Trigger:
  • Set ScooreBoard = (Last created multiboard)


up right after you create the multiboard
then change every (last created multiboard)
to
(ScooreBoard)

Move:

Trigger:
  • Set CreepKilled[(Player number of (Triggering player))] = (Last created multiboard)


up right after you create the second multiboard
then change every (last created multiboard)
to
CreepKilled[(Player number of (Triggering player))]

You might as well merge trigger 1 and 2. (example below)

and something else I see:

JASS:
Set AllowCS[(Player number of (Triggering player))] = True


what if they type -cs again?

your condition is set to = false
which wont let that trigger run again...
what does the last trigger do exactly?


Here a visual:
Trigger:
  • MultiBoard
    • Events
      • Time - Elapsed game time is 5.00 seconds
    • Conditions
    • Actions
      • Set Colours[0] = |cffffcc00
      • Set Colours[1] = |cffFF0202
      • Set Colours[2] = |cff0041FF
      • Set Colours[3] = |cff1BE6B8
      • Set Colours[4] = |cff530080
      • Set Colours[5] = |cffFFFC00
      • Set Colours[6] = |cffFE890D
      • Set Colours[7] = |cff1FBF00
      • Set Colours[8] = |cffE55AAF
      • Set Colours[9] = |cff949596
      • Set Colours[10] = |cff7DBEF1
      • Set Colours[11] = |cff0F6145
      • Set Colours[12] = |cff4D2903
      • Set End_tag = |r
      • Multiboard - Create a multiboard with 4 columns and ((Number of players in All_Players) + 1) rows, titled Ultimate Showdown
      • Set ScooreBoard = (Last created multiboard)
      • Multiboard - Set the text for (ScooreBoard) item in column 1, row 1 to (Colours[0] + (Fighters + End_tag))
      • Multiboard - Set the text for (ScooreBoard) item in column 2, row 1 to (Colours[0] + (Revive + End_tag))
      • Multiboard - Set the text for (ScooreBoard) item in column 3, row 1 to (Colours[0] + (Kills + End_tag))
      • Multiboard - Set the text for (ScooreBoard) item in column 4, row 1 to (Colours[0] + (Deaths + End_tag))
      • For each (Integer A) from 1 to ((Number of players in All_Players) + 1), do (Actions)
        • Loop - Actions
          • For each (Integer B) from 1 to 4, do (Actions)
            • Loop - Actions
              • Multiboard - Set the display style for (ScooreBoard) item in column (Integer B), row (Integer A) to Show text and Hide icons
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Integer B) Equal to 1
                • Then - Actions
                  • Multiboard - Set the width for (ScooreBoard) item in column (Integer B), row (Integer A) to 10.00% of the total screen width
                • Else - Actions
                  • Multiboard - Set the width for (ScooreBoard) item in column (Integer B), row (Integer A) to 5.00% of the total screen width
      • Player Group - Pick every player in All_Players and do (Actions)
        • Loop - Actions
          • Set MultiBoard = (MultiBoard + 1)
          • Set String_Name[(Player number of (Picked player))] = (Colours[(Player number of (Picked player))] + ((Name of (Picked player)) + End_tag))
          • Multiboard - Set the text for (ScooreBoard) item in column 1, row MultiBoard to String_Name[(Player number of (Picked player))]
          • Multiboard - Set the text for (ScooreBoard) item in column 3, row MultiBoard to (String(Hero_Kills[(Player number of (Picked player))]))
          • Multiboard - Set the text for (ScooreBoard) item in column 4, row MultiBoard to (String(Hero_Deaths[(Player number of (Picked player))]))
      • Player Group - Pick every player in All_Players and do (Actions)
        • Loop - Actions
          • Set CSPlayer = (Picked player)
          • Multiboard - Create a multiboard with 2 columns and 1 rows, titled Creeps Killed
          • Set CreepKilled[(Player number of (Triggering player))] = (Last created multiboard)
          • Multiboard - Set the text for (CreepKilled[(Player number of (Triggering player))]) item in column 1, row 1 to CS:
          • Multiboard - Set the display style for (CreepKilled[(Player number of (Triggering player))]) item in column 1, row 1 to Show text and Hide icons
          • Multiboard - Set the display style for (CreepKilled[(Player number of (Triggering player))]) item in column 2, row 1 to Show text and Hide icons
          • Multiboard - Set the text for (CreepKilled[(Player number of (Triggering player))]) item in column 2, row 1 to (String(Counter_CS[(Player number of (Triggering player))]))
          • Custom script: if GetLocalPlayer() == udg_CSPlayer then
          • Multiboard - Hide (CreepKilled[(Player number of (Triggering player))])
          • Custom script: endif
          • Player Group - Pick every player in All_Players and do (Actions)
            • Loop - Actions
              • Set CSPlayer = (Picked player)
              • Custom script: if GetLocalPlayer() == udg_CSPlayer then
              • Multiboard - Show ScooreBoard
              • Custom script: endif
 

DiFm

New Member
Reaction score
35
They shouldn't be able to type Cs again that's why it exist... when they type Cs there should be a multiboard showing how many creeps they've killed and it shall be there till the end of the game.

and also It tells if the trigger in the first post should set a value in the multiboard or not.

oke I could add an attached map soon but I would like more answers =)
 

lbebusiness

New Member
Reaction score
3
err.. did you try changing the trigger like I posted? I changed them anyways taking into consideration that the -cs "bug" was on purpose. So try it out and tell me what happens. (make a backup of your triggers, that way you can just restore it if it doesn't work without manually reverting every trigger you changed, or use ctrl+z )

Now do you want the players to type -cs? is it there choice?
why not do it automaticly?

If you want Ill rearrange it into 1 trigger...

done.
Trigger:
  • MultiBoard
    • Events
      • Time - Elapsed game time is 5.00 seconds
    • Conditions
    • Actions
      • Set Colours[0] = |cffffcc00
      • Set Colours[1] = |cffFF0202
      • Set Colours[2] = |cff0041FF
      • Set Colours[3] = |cff1BE6B8
      • Set Colours[4] = |cff530080
      • Set Colours[5] = |cffFFFC00
      • Set Colours[6] = |cffFE890D
      • Set Colours[7] = |cff1FBF00
      • Set Colours[8] = |cffE55AAF
      • Set Colours[9] = |cff949596
      • Set Colours[10] = |cff7DBEF1
      • Set Colours[11] = |cff0F6145
      • Set Colours[12] = |cff4D2903
      • Set End_tag = |r
      • -------- Makes first multiboard --------
        • Multiboard - Create a multiboard with 4 columns and ((Number of players in All_Players) + 1) rows, titled Ultimate Showdown
      • -------- Stores first multiboard as ScoreBoard --------
        • Set ScoreBoard = (Last created multiboard)
      • -------- Sets All the settings and formatting for ScoreBoard --------
        • Multiboard - Set the text for (ScoreBoard) item in column 1, row 1 to (Colours[0] + (Fighters + End_tag))
        • Multiboard - Set the text for (ScoreBoard) item in column 2, row 1 to (Colours[0] + (Revive + End_tag))
        • Multiboard - Set the text for (ScoreBoard) item in column 3, row 1 to (Colours[0] + (Kills + End_tag))
        • Multiboard - Set the text for (ScoreBoard) item in column 4, row 1 to (Colours[0] + (Deaths + End_tag))
        • For each (Integer A) from 1 to ((Number of players in All_Players) + 1), do (Actions)
          • Loop - Actions
            • For each (Integer B) from 1 to 4, do (Actions)
              • Loop - Actions
                • Multiboard - Set the display style for (Scoreboard) item in column (Integer B), row (Integer A) to Show text and Hide icons
                • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                  • If - Conditions
                    • (Integer B) Equal to 1
                  • Then - Actions
                    • Multiboard - Set the width for (Scoreboard) item in column (Integer B), row (Integer A) to 10.00% of the total screen width
                  • Else - Actions
                    • Multiboard - Set the width for (Scoreboard) item in column (Integer B), row (Integer A) to 5.00% of the total screen width
        • Player Group - Pick every player in All_Players and do (Actions)
          • Loop - Actions
            • Set MultiBoard = (MultiBoard + 1)
            • Set String_Name[(Player number of (Picked player))] = (Colours[(Player number of (Picked player))] + ((Name of (Picked player)) + End_tag))
            • Multiboard - Set the text for (ScooreBoard) item in column 1, row MultiBoard to String_Name[(Player number of (Picked player))]
            • Multiboard - Set the text for (ScooreBoard) item in column 3, row MultiBoard to (String(Hero_Kills[(Player number of (Picked player))]))
            • Multiboard - Set the text for (ScooreBoard) item in column 4, row MultiBoard to (String(Hero_Deaths[(Player number of (Picked player))]))
        • Player Group - Pick every player in All_Players and do (Actions)
          • Loop - Actions
            • Set CSPlayer = (Picked player)
      • -------- Hides first multiboard --------
        • Multiboard - Hide (ScooreBoard)
      • -------- Makes Second multiboard --------
        • Multiboard - Create a multiboard with 2 columns and 1 rows, titled Creeps Killed
      • -------- Stores second multiboard as CreepKilled[(Player number of (Triggering player))]--------
        • Set CreepKilled[(Player number of (Triggering player))] = (Last created multiboard)
      • ------- Sets All the settings and formatting for CreepKilled[(Player number of (Triggering player))]-------
    • Multiboard - Set the text for (CreepKilled[(Player number of (Triggering player))]) item in column 1, row 1 to CS:
      • Multiboard - Set the display style for (CreepKilled[(Player number of (Triggering player))]) item in column 1, row 1 to Show text and Hide icons
      • Multiboard - Set the display style for (CreepKilled[(Player number of (Triggering player))]) item in column 2, row 1 to Show text and Hide icons
      • Multiboard - Set the text for (CreepKilled[(Player number of (Triggering player))]) item in column 2, row 1 to (String(Counter_CS[(Player number of (Triggering player))]))
      • Custom script: if GetLocalPlayer() == udg_CSPlayer then
      • ------- Shows (CreepKilled[(Player number of (Triggering player))]) for each player-------
        • Multiboard - Show (CreepKilled[(Player number of (Triggering player))])
        • Custom script: endif

Okay...done. from what I take it you want to create 2 multiboards but only show the last multiboard to every player
(CreepKilled[(Player number of (Triggering player))])
which is unique to each player
Btw you do remember that you can only show 1 mutliboard at any time right?

Heres a simplified version of what I think your trying to do:
Trigger:
  • Untitled Trigger 001
    • Events
      • Time - Elapsed game time is 5.00 seconds
    • Conditions
    • Actions
      • Multiboard - Create a multiboard with 1 columns and 1 rows, titled first
      • Set firstmb = firstmb
      • -------- Hides first multiboard --------
      • Multiboard - Hide firstmb
      • Multiboard - Create a multiboard with 1 columns and 1 rows, titled Second
      • Multiboard - Hide (Last created multiboard)
      • -------- Hides second multiboard --------
      • Player Group - Pick every player in (All players) and do (Actions)
        • Loop - Actions
          • Set secondmb[(Player number of (Picked player))] = firstmb
          • ------- Shows custom multiboard for each player-------
      • Player Group - Pick every player in (All players) and do (Actions)
        • Loop - Actions
          • Multiboard - Show secondmb[(Player number of (Picked player))]
 

DiFm

New Member
Reaction score
35
Oke But i have seen this working in some maps. Like 3rd Shinobi Wars. WEll i need them to be sown similtanously.
 

lbebusiness

New Member
Reaction score
3
I take it you already tried opening that map and seeing how its done?
try deprotecting it? find the triggers with the key-word multiboard. Find everything you think belongs to it and post it here and I will try to convert it to GUI if you can't.
Unless you understand jass. lol then you could look at the code yourself and figure it out. lol
OR
Just post the map and I will look at it.
 

Dameon

"All the power in the world resides in the eyes"
Reaction score
127
I know this isn't exacly what you had in mind, but check it out, you might like it.
 

Attachments

  • Kill Count.w3x
    18 KB · Views: 151

lbebusiness

New Member
Reaction score
3
There is only one multiboard in that map you posted shinobi wars...
so its not that version...
can't help you till you find it...
 

DiFm

New Member
Reaction score
35
There is but you have to Wait 1 min until you can type the -cs Command. to show it.

Or its a Leaderboard can you fix so a Leaderboard is only visible for 1 player and you can make one for every player?
 
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