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

Migrate NPC rules to a new, dedicated imgui menu #74854

Merged
merged 9 commits into from
Jul 2, 2024

Conversation

db48x
Copy link
Contributor

@db48x db48x commented Jul 1, 2024

Summary

Interface "NPC follower rules can now be viewed and modified in a dedicated, mouse-supported window (imgui)"

Purpose of change

Everyone agrees the dialogue menu does its job for this, but it could be so much better...

Describe the solution

Make it better, and with making it better comes mouse support!

There is now a dedicated top-level talk topic which opens this new imgui window, no need to remember which of the sub-menus your specific rule was in. Each rule can be fully adjusted with a dedicated hotkey or mouse-sensitive buttons. For rules with multiple states (e.g. CBM recharge %) keyboard presses of the hotkey will cycle to the next setting, while mouse presses are set directly to the selected % button. Keyboard users also have the option of navigating(standard up/down/left/right inputs) directly to the desired setting and press enter, instantly setting that value without a need to toggle through the proceeding ones.

(Still WIP) Tie the imgui buttons to a specific set of auto-assigned hotkeys, like our dialogue does. This is almost certainly a requirement before this PR can be undrafted.

Describe alternatives you've considered

We originally considered toggle buttons, but checkboxes and radio buttons are much cooler.

Screenshot from 2024-06-30 17-48-35

Closes #74359

@github-actions github-actions bot added NPC / Factions NPCs, AI, Speech, Factions, Ownership Info / User Interface Game - player communication, menus, etc. [JSON] Changes (can be) made in JSON Missions Quests and missions Code: Tests Measurement, self-control, statistics, balancing. [C++] Changes (can be) made in C++. Previously named `Code` <Bugfix> This is a fix for a bug (or closes open issue) astyled astyled PR, label is assigned by github actions json-styled JSON lint passed, label assigned by github actions labels Jul 1, 2024
@db48x db48x changed the title Follower rules UI Migrate NPC rules to a new, dedicated imgui menu Jul 1, 2024
@db48x
Copy link
Contributor Author

db48x commented Jul 1, 2024

/me sighs

I guess I’ll placate clang-tidy too. I need to figure out how to run that locally at some point, so that I’m not surprised by it.

@github-actions github-actions bot added the BasicBuildPassed This PR builds correctly, label assigned by github actions label Jul 1, 2024
clang-tidy was concerned about it so I guess we can use references.
@db48x db48x force-pushed the follower_rules_UI branch from 7008778 to 3b5cd55 Compare July 2, 2024 02:34
@Maleclypse Maleclypse merged commit 3f6bf65 into CleverRaven:master Jul 2, 2024
23 of 27 checks passed
SurFlurer added a commit to SurFlurer/Cataclysm-DDA that referenced this pull request Aug 26, 2024
…s_UI"

This reverts commit 3f6bf65, reversing
changes made to 9a083b3.
this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions <Bugfix> This is a fix for a bug (or closes open issue) [C++] Changes (can be) made in C++. Previously named `Code` Code: Tests Measurement, self-control, statistics, balancing. Info / User Interface Game - player communication, menus, etc. [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions Missions Quests and missions NPC / Factions NPCs, AI, Speech, Factions, Ownership
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants