[Feature Request] Specific-Case Hotkey Stacking
ElvenChaos opened this issue · 1 comments
Problem: There are too many mods that add their own hotkey for two certain basic functionalities: Toggling and Cycling, and with each toggle/cycle wanting its own key bind, they key map gets cluttered fairly quickly, on top of remembering what cycles what gets confusing.
Obstacle: Each hotkey tends to want its own keybind. Yes, you can spread them out across modifiers, but that still leads to clutter and unintuitive placement of keybinds. You can not simply stack hotkeys that cycle items from different mods onto the same keybind.
Solution: Make your own hotkeys that press other hotkeys! Register your own configurable hotkeys that don't do much on their own other than activate other hotkeys. Let the player create the following hotkeys by defining what other hotkeys should be activated when pressed:
•Hotkey Type 1 -- Item Cycle (includes toggle): This hotkey will look at the item in the player's main hand (optional off hand instead) and grab the mod that the item comes from, matches the mod to the pre-selected hotkey from that mod, then tell the client/server that that hotkey was pressed. This hotkey type only supports 1 hotkey per mod, though in the instance a mod implements a cycle forward and a cycle back, you could allow a second Hotkey type 1 to exist with a separate list, just bound to a different configurable key.
•Hotkey Type 2 -- Use It All!: This hotkey is a much simpler approach, in that it will attempt to use any and all hotkeys in its hotkey list in succession. This is good for when there isn't an item to hold in your hand, but you want to condense similar functionality to one key. For example, multiple mods could implement a Magnet hotkey that doesn't involve holding a magnet, or multiple mods may include a hotkey to affect each of their new armor sets, and players could condense each of those functionalities into their own keybinds.
If you would like some example mods that have item cycling keybinds:
- Exchangers
- /dank/null
- Mekanism Not sure if this one functions properly
- Better Builder's Wands
- PlusTiC
- CoFH Mods Not sure under which mod exactly the keybinds are registered, as they are labeled under "CoFH Keys."
Summary: Please create client-side hotkeys that, depending on what the player is holding and what the player has assigned to the "list" for that hotkey, "presses" the hotkey of another mod. If possible, this should function while leaving the hotkey from the "other mod" unbound.