Thanks for the suggestion
Could you explain a bit more about how I'd do that, please?
Here's a part of a script from Enhanced Economy, where the mod opens and immediately closes the haggle menu (a trick forcing the engine to re-calculate prices):
Begin MenuMode 1025 if autoCloseHaggle ClickMenuButton "negotiate_background\negotiate_button_okay\" 1025 DebugPrint "EE:Auto-close haggle menu" ...
Note that I here used the fullly qualified name of the button instead of the ID.
But how do I identify the ID of a button in a MessageBox?
Look up the xml, or make a quest script something like this:
ScriptName showUIdatastring_var fullPathshort currentMenufloat fQuestDelayTimeBegin MenuMode let fQuestDelayTime := 0.001 if OnKeyDown 38 ; when L is pressed let fullPath := GetActiveUIComponentFullName let currentMenu := GetActiveMenuMode PrintC "Menumode %.0f: %z", currentMenu, fullPath PrintTileInfo $fullPath currentMenu endifEnd
To use it, point at a button and press "L", and all the info you need will be printed to the console.
And if I do it like this, can I still have user input for another button, if necessary?
Of course, and of that specific button as well, if you want.