the link below will be usefull for you to get started on fixing your problem.
It will explain how to move and resize the default inventory icons that you want to move. 6 slot inventory tutorial
If you still have any questions after reading that just ask away, and I'll reply when I have more time ;)
Now on to the questions. I have a line in the first trigger: "Dialog - Hide Display Achievements Dialog Labels[i] for (Active Players)". If I use (Player Group (Triggering Player)) then when I click the achievement button, I get all of the labels at once on top of each other. If I just click through, then it is fine after it goes through all 4 pages. I have no idea why that is, but when I use (Active Players) it works fine.
you forget to check which page to display, or on creation to hide everything except what is on the first page.
Next question. I create all of the image files in the first trigger. Do I then need to do a show/hide with an IF THEN statement to show or hide them all depending on what "Display Achievements Current Page" is equal to, or is there an easier way?
Mark achievements per player for visible/not visible. Then just check it with a loop over the full achievements array for that page.
in the second trigger you are creating 2 images per page, but you are setting them to the same variable: e.g.
image[1] = image 1 page 1
image[2] = image 2 page 1
image[1] = image 1 page 2
image[2] = image 2 page 2
if you now try to use image[1] to hide the image on page 1 you will fail, because it is set to the image on page 2. same goes for image[2].
solution:
make the variable "Display Achievements Image Zergling" a 2 Dimensional array, first value is page, second value is image nr.:
image[1][1] = image 1 page 1
image[1][2] = image 2 page 1
image[2][1] = image 1 page 2
image[2][2] = image 2 page 2
now you can hide the images on page 1 with image[1][1] and image[1][2]
Also in the last trigger you are using (All players) several times instead of (Player group((Triggering player)).
The Hide Display Achievements .... and Show Display Achievements .... actions.
And finally you are recreating the dialogs each time the button is pressed, bit of overkill if you ask me. ain't it simpler to just create them once and then just hide/show that single dialog for the specific player that presses the button?
Ah, tutorials... If you think about the problem for a while, you'll definitely figure out a good solution that makes sense to you.
I have no idea how you coded up the thing but in your case I would manage each dialog independently per-player. That means an array of 16 dialogs, and other arrays of 16 dialog items for buttons and such. Each dialog would only be visible to the corresponding player and only he could interact with it.
Beyond that, it doesn't sound too complex. If it works for a single player, it will work in multiplayer with each player having his dialog.
no need to create it 16 times. As long as the structure is the same, the displayed info can be managed on a per player basis. e.g. show/hide dialog item for player X (or was it for player group (Convert player X to player group))
your best bet would be to make either both UI's with dialogs, or 1 with layout other with dialogs. afaik you cannot swap between different SC2Layout UI's on the go.
Concerning the text change this is just a find and replace action. Let me know if you want me to find the specific string code or whatever it uses for it.
The one that I would suggest to use is adding a requirement like "Not available in legacy mode" orso, and add this requirement to all locations where it is needed.
Then make this requirement check if an upgrade or research is active (name this upgrade/research thing 'legacy mode disabled' orso), and at the trigger you stated above give the players the upgrade if legacy mode is disabled.
This is at least one of the methods, there are no doubt more methods available to do this.
@Hakuzen: Go
You are right that I missed the fact that you were talking about rendering dialogs below UI elements.
The answer to that question is no. But if you want to add a background border image to an UI element you can do so by adding an image frame in the sc2layout file and position this to be right behind the UI element and set the border image on that frame.
Hope that this answers your question correctly.
Ps. If someone does find a method to place a dialog behind an UI element I will be interested in the method.
Is there anyway I could frame the minimap and portrait panel?! I'm getting mad to this.
I have tried everything but none of them work and if I do frames with dialog items they are all different on different screen resolution and I have no idea how to scale it with user resolution. :(
Please help thank you! :)
See the example layout file that adds a border to the minimap-panel and moves it.
Doing it for the portrait panel is done like the minimap just different anchors.
0
@xxxNEARBYxxx: Go
Normal Commandcard:
00 01 02 03 04
05 06 07 08 09
10 11 12 13 14
When everything is on 1 line (as in my tutorial):
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14
Now adding the commandcard panel as brackets around it:
[00 01 02 03 04 05 06 07 08 09 10 11 12 13 14]
Now when you tell it that the command card starts at button05 it becomes: 00 01 02 03 04[05 06 07 08 09 10 11 12 13 14]
Since the first 5 buttons (00 through 04) are not visible on the command card, they don't get displayed.
What XML do you currently have for the commandpanel adjustments?
0
@xxxNEARBYxxx: Go
see my tutorial about creating a commandpanel of 1x15, and make it 1x10 starting at the 6th position (so 6 through 15 shows).
ps. I currently don't have time to give a greater explanation on the howto.
0
@xxxNEARBYxxx: Go
How are you trying to change it? Which layout code?
0
the link below will be usefull for you to get started on fixing your problem.
It will explain how to move and resize the default inventory icons that you want to move.
6 slot inventory tutorial
If you still have any questions after reading that just ask away, and I'll reply when I have more time ;)
0
@Taintedwisp: Go
what do you mean exactly? (perhaps add an image of the minimap showing the problem?)
0
you forget to check which page to display, or on creation to hide everything except what is on the first page.
Mark achievements per player for visible/not visible. Then just check it with a loop over the full achievements array for that page.
Yes.
Action Definition examples: (not all might be useful for you to implement)
0
in the second trigger you are creating 2 images per page, but you are setting them to the same variable: e.g.
image[1] = image 1 page 1
image[2] = image 2 page 1
image[1] = image 1 page 2
image[2] = image 2 page 2
if you now try to use image[1] to hide the image on page 1 you will fail, because it is set to the image on page 2. same goes for image[2].
solution:
make the variable "Display Achievements Image Zergling" a 2 Dimensional array, first value is page, second value is image nr.:
image[1][1] = image 1 page 1
image[1][2] = image 2 page 1
image[2][1] = image 1 page 2
image[2][2] = image 2 page 2
now you can hide the images on page 1 with image[1][1] and image[1][2]
Also in the last trigger you are using (All players) several times instead of (Player group((Triggering player)). The Hide Display Achievements .... and Show Display Achievements .... actions.
And finally you are recreating the dialogs each time the button is pressed, bit of overkill if you ask me. ain't it simpler to just create them once and then just hide/show that single dialog for the specific player that presses the button?
0
Moved Thread: this is about dialogs and not about UI (SC2Layout)
no need to create it 16 times. As long as the structure is the same, the displayed info can be managed on a per player basis. e.g. show/hide dialog item for player X (or was it for player group (Convert player X to player group))
0
@TwoDie: Go
your best bet would be to make either both UI's with dialogs, or 1 with layout other with dialogs. afaik you cannot swap between different SC2Layout UI's on the go.
0
@Zolden: Go
The following references are used in the Assets.txt file for the icon of the idle worker:
Concerning the text change this is just a find and replace action. Let me know if you want me to find the specific string code or whatever it uses for it.
0
@zjat: Go
there are probably several options for this.
The one that I would suggest to use is adding a requirement like "Not available in legacy mode" orso, and add this requirement to all locations where it is needed. Then make this requirement check if an upgrade or research is active (name this upgrade/research thing 'legacy mode disabled' orso), and at the trigger you stated above give the players the upgrade if legacy mode is disabled.
This is at least one of the methods, there are no doubt more methods available to do this.
0
@Antimatterthunder: Go
Why not use: UnitWeapon(Triggering Unit, 1) to get the weapon?
Edit: I just reread the trigger and the only thing that I can think off that goes wrong is that it can not get the weapon id orso...
0
@Hakuzen: Go You are right that I missed the fact that you were talking about rendering dialogs below UI elements.
The answer to that question is no. But if you want to add a background border image to an UI element you can do so by adding an image frame in the sc2layout file and position this to be right behind the UI element and set the border image on that frame.
Hope that this answers your question correctly.
Ps. If someone does find a method to place a dialog behind an UI element I will be interested in the method.
0
updated my layout frame-list with the new layout files.
link to the list
0
See the example layout file that adds a border to the minimap-panel and moves it.
Doing it for the portrait panel is done like the minimap just different anchors.
the Assets.txt files contain these. but you can also place a direct dds file name there without prefixing it with @@.
this is the frame location you need to use.