Beowulfv

XM8 app GUI

5 posts in this topic

I'm working on converting an XM8 App right now to work with ExAd. I have all the changes done and the App works great, however the Apps GUI needs to be shifted to the left and up a little. What tool should I use to get the positioning?

  • Like 1

Share this post


Link to post
Share on other sites

Not quite sure if i understand correctly but this might help:

Spoiler

        class Controls {
                        class App11 : RscExileXM8AppButton1x1 {
                            idc = 5001;
                            x = (4 - 3) * (0.025);
                            y = (4 - 2) * (0.04);
                            textureNoShortcut = "\exile_assets\texture\ui\xm8_app_settings_ca.paa";
                            text = "Settings";
                            onButtonClick = "['settings', 0] call ExileClient_gui_xm8_slide";
                        };
                        
                        class App12 : RscExileXM8AppButton1x1 {
                            idc = 5002;
                            x = (10.5 - 3) * (0.025);
                            y = (4 - 2) * (0.04);
                            textureNoShortcut = "\exile_assets\texture\ui\xm8_app_health_scanner_ca.paa";
                            text = "Health Scanner";
                            onButtonClick = "['healthScanner', 0] call ExileClient_gui_xm8_slide";
                        };
                        
                        class App13 : RscExileXM8AppButton1x1 {
                            idc = 5003;
                            x = (17 - 3) * (0.025);
                            y = (4 - 2) * (0.04);
                            textureNoShortcut = "\exile_assets\texture\ui\xm8_app_boom_ca.paa";
                            text = "BOOM!";
                            onButtonClick = "call ExileClient_system_breaching_detonate";
                        };
                        
                        class App14 : RscExileXM8AppButton1x1 {
                            idc = 5004;
                            x = (23.5 - 3) * (0.025);
                            y = (4 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App15 : RscExileXM8AppButton1x1 {
                            idc = 5005;
                            x = (30 - 3) * (0.025);
                            y = (4 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App21 : RscExileXM8AppButton1x1 {
                            idc = 5006;
                            x = (4 - 3) * (0.025);
                            y = (9.5 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App22 : RscExileXM8AppButton1x1 {
                            idc = 5007;
                            x = (10.5 - 3) * (0.025);
                            y = (9.5 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App23 : RscExileXM8AppButton1x1 {
                            idc = 5008;
                            x = (17 - 3) * (0.025);
                            y = (9.5 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App24 : RscExileXM8AppButton1x1 {
                            idc = 5009;
                            x = (23.5 - 3) * (0.025);
                            y = (9.5 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App25 : RscExileXM8AppButton1x1 {
                            idc = 5010;
                            x = (30 - 3) * (0.025);
                            y = (9.5 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App31 : RscExileXM8AppButton1x1 {
                            idc = 5011;
                            x = (4 - 3) * (0.025);
                            y = (15 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App32 : RscExileXM8AppButton1x1 {
                            idc = 5012;
                            x = (10.5 - 3) * (0.025);
                            y = (15 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App33 : RscExileXM8AppButton1x1 {
                            idc = 5013;
                            x = (17 - 3) * (0.025);
                            y = (15 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class App34 : RscExileXM8AppButton1x1 {
                            idc = 5014;
                            x = (23.5 - 3) * (0.025);
                            y = (15 - 2) * (0.04);
                            textureNoShortcut = "";
                            text = "";
                            onButtonClick = "";
                        };
                        
                        class GoBackButton : RscExileXM8ButtonMenu {
                            idc = -1;
                            text = "GO BACK";
                            x = (30 - 3) * (0.025);
                            y = (19 - 2) * (0.04);
                            w = 6 * (0.025);
                            h = 1 * (0.04);
                            onButtonClick = "['apps', 1] call ExileClient_gui_xm8_slide";
                        };
                    };
                };
                

If i just have to move one app, i usually do it manually by playing around with the positions. if i wan't to change more stuff in xm8 and need to get more positions, i usually use that tool:

https://native-network.net/attachment/1835-gui-editor-a3-zip/

I then rebuilded the xm8 roughly, just with correct size of frame, buttons and position - after that i can play around in the gui editor, save it and just change position/height/weight what ever.

Edit: I just saw, you where talkin about the Apps GUI not the button to launch it. What app are we talkin about? Anyways, stuff above might be helpfull, not sure :)

 

Edited by WURSTKETTE

Share this post


Link to post
Share on other sites
Advertisement

I rewrote andrews Respect Transfer to be compatible with ExAd.

The app works just fine, but with one little issue, everything was shifted down and to the right. 49f47c6dedb738706ad119fa8f45bc72.png

I've since corrected the problem and re-defined all the ctrlSetPosition in the script. But I was thinking the entire time that there has to be a faster and easier way of figuring out those points. I know all about Bohemias tools and how to use them, but I couldn't find one of their tools that would help speed up the process.

  • Like 1

Share this post


Link to post
Share on other sites

Gotcha, if you find something lemme know - i always feelt like the workflow on creating/modify gui is horrible but maybe i just lack of skills or not knowing the right tools :)

Edited by WURSTKETTE
  • Like 1

Share this post


Link to post
Share on other sites

If the controls are all created with ctrlCreate and not defined in a file then no its all manual. 
If you have a dialog in a file in future though you can open the gui editor then ctrl + i then enter the path to the dialog class like

missionConfigFile >> "myDialogThatSucks"

 

Edited by Shix
  • Like 2

Share this post


Link to post
Share on other sites
Advertisement

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.