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

Trade system + multiboard!

Status
Not open for further replies.
Level 2
Joined
Jun 18, 2012
Messages
24
Hi, new problems to share with you! ;)

Ait, i followed a guide how to make a multiboard, it works fine etc.
also i found a trade system for gold/lumber
Now, i want to show the lumber cost in the multiboard ( a good example is the one you have in trolls & elves!

Here is "my" trade system
  • Events
    • Unit - A unit Begins casting an ability
  • Actions
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • (Ability being cast) Equal to Buy Wood 10
      • Then - Actions
        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • ((Triggering player) Current gold) Greater than or equal to Gold[1]
          • Then - Actions
            • Player - Set (Triggering player) Current gold to (((Triggering player) Current gold) - Gold[1])
            • Player - Add Lumber[1] to (Triggering player) Current lumber
            • Set Gold[1] = (Gold[1] + 15)
            • -------- made the gold arithmetic myself, so the price increases by 15 everytime you buy --------
          • Else - Actions
            • Game - Display to (All players) the text: You do not have eno...
      • Else - Actions
        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • (Ability being cast) Equal to Sell wood 10
          • Then - Actions
            • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              • If - Conditions
                • ((Triggering player) Current lumber) Greater than or equal to Lumber[2]
              • Then - Actions
                • Player - Set (Triggering player) Current lumber to (((Triggering player) Current lumber) - Lumber[2])
                • Player - Add Gold[2] to (Triggering player) Current gold
                • Set Gold[2] = (Gold[2] - 10)
                • -------- same here, i want the price to go down by 10 when you sell lumber --------
              • Else - Actions
                • Game - Display to (All players) the text: You do not have eno...
          • Else - Actions
  • Events
    • Map initialization
  • Actions
    • -------- Gold > Lumber --------
    • -------- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --------
    • -------- How much gold needed to trade. --------
    • Set Gold[1] = 215
    • Set Gold200[1] = 4300
    • -------- How much lumber you get for trade. --------
    • Set Lumber[1] = 10
    • Set Lumber200[1] = 200
    • -------- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --------
    • -------- Lumber > Gold --------
    • -------- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --------
    • -------- How much gold you get for trade. --------
    • Set Gold[2] = 200
    • Set Gold200[2] = 4000
    • -------- How much lumber needed for trade, --------
    • Set Lumber[2] = 10
    • Set Lumber200[2] = 200
    • -------- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --------
And finally my multiboard trigger
  • Events
    • Time - Elapsed game time is 5.00 seconds
  • Actions
    • Set PlayerCount = (Number of players in (All players matching ((((Matching player) controller) Equal to User) and (((Matching player) slot status) Equal to Is playing))))
    • Multiboard - Create a multiboard with 3 columns and (1 + PlayerCount) rows, titled Scoreboard
    • Multiboard - Set the text for (Last created multiboard) item in column 2, row 1 to Players:
    • Multiboard - Set the text for (Last created multiboard) item in column 3, row 1 to Income
    • For each (Integer A) from 1 to (1 + PlayerCount), do (Actions)
      • Loop - Actions
        • 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 (Integer A) to Show text and Hide icons
        • Multiboard - Set the display style for (Last created multiboard) item in column 2, row (Integer A) to Show text and Hide icons
        • Multiboard - Set the display style for (Last created multiboard) item in column 3, row (Integer A) to Show text and Hide icons
        • Multiboard - Set the width for (Last created multiboard) item in column 1, row (Integer A) to 1.00% of the total screen width
        • Multiboard - Set the width for (Last created multiboard) item in column 2, row (Integer A) to 8.00% of the total screen width
        • Multiboard - Set the width for (Last created multiboard) item in column 3, row (Integer A) to 5.00% of the total screen width
    • Set List = 2
    • Player Group - Pick every player in (All players matching ((((Matching player) controller) Equal to User) and (((Matching player) slot status) Equal to Is playing))) and do (Actions)
      • Loop - Actions
        • Set Multiboard_Spots[(Player number of (Picked player))] = List
        • Multiboard - Set the text for (Last created multiboard) item in column 2, row List to (Player_Colors[(Player number of (Picked player))] + ((Name of (Picked player)) + |r))
        • Multiboard - Set the text for (Last created multiboard) item in column 3, row List to 0
        • Multiboard - Set the color for (Last created multiboard) item in column 3, row (Player number of (Matching player)) to (100.00%, 100.00%, 0.00%) with 0.00% transparency
        • Multiboard - Set the color for (Last created multiboard) item in column 2, row (Player number of (Matching player)) to (0.00%, 100.00%, 0.00%) with 0.00% transparency
        • Multiboard - Set the icon for (Last created multiboard) item in column 1, row List to ReplaceableTextures\CommandButtons\BTNVillagerMan.blp
        • Set List = (List + 1)
    • Multiboard - Show (Last created multiboard)
As i said above, i want the gold/lumber cost to be displayed in the multiboard, i managed to show on the board what income you have by this trigger:
  • Multiboard - Set the text for (Last created multiboard) item in column 3, row Multiboard_Spots[(Player number of (Triggering player))] to +4
But i want a column for the lumber/gold itself, like this
Lumber cost:
buy: 215 (216 = variable gold[1] wich will be changed if somone buys)
sell: 210 (same as above, but this is variable gold[2])
 
Status
Not open for further replies.
Top