Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

develop a standard interface for simple menus #308

Open
ahicks92 opened this issue Oct 31, 2024 · 0 comments
Open

develop a standard interface for simple menus #308

ahicks92 opened this issue Oct 31, 2024 · 0 comments
Labels
ui2 Large improvements to the UI and input systems for efficiency of long-term players

Comments

@ahicks92
Copy link
Member

In the f2.0-dev branch we can see research.lua, which has a number of menu_xxx functions. This then goes out of the way to reimplement things like menu search. In general we have lots of menus that are simple one-offs, possibly but not always over a simple dynamic list. This is true even of the inventory, which is a 1d menu masquerading as a 2d one.

We will be introducing layers. Once that's done, we will have a powerful mechanism for redirecting input and building UI abstractions. But powerful doesn't mean simple. What a lot of code wants is up/down/left/right/a few variations on click. If we then add some functions (I think around 3) to allow search to iterate in a relevant order, we can standardize all our menu code. While one would for now still be writing their own position movement code, that's fine: it's still an improvement, and an improvement we can build better things on top of such as completely static menus that call specific functions with specific labels.

@ahicks92 ahicks92 added the ui2 Large improvements to the UI and input systems for efficiency of long-term players label Oct 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ui2 Large improvements to the UI and input systems for efficiency of long-term players
Projects
None yet
Development

No branches or pull requests

1 participant