1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2026-05-17 11:42:07 +00:00

add an option to never/always display keys

This commit is contained in:
Zeno Rogue
2025-11-11 19:55:59 +01:00
parent 00859f037a
commit 0c4f601b0b
2 changed files with 15 additions and 2 deletions
+5
View File
@@ -1099,6 +1099,7 @@ EX void initConfig() {
defaultjoy = false;
dialog::onscreen_keyboard = true;
dialog::dialog_font_scale = 3;
dialog::display_keys = 0;
}
}
}
@@ -1221,6 +1222,9 @@ EX void initConfig() {
->set_sets(sets_sfx_volume);
#endif
param_enum(dialog::display_keys, "dialog_display_keys")
->editable({{"never", ""}, {"when using keyboard", ""}, {"always", ""}}, "display keys in dialogs", 'K');
param_enum(vid.faraway_highlight, parameter_names("faraway_highlight", "highlight faraway monsters"), tlNoThreat)
->editable({{"off", ""}, {"spam", ""}, {"normal monsters", ""}, {"high-threat monsters only", ""}}, "highlight faraway monsters", 'h');
@@ -2597,6 +2601,7 @@ EX void configure_dialogs() {
add_edit(dialog::dialog_font_scale);
add_edit(lands_per_page);
add_edit(use_bool_dialog);
add_edit(dialog::display_keys);
dialog::addBreak(50);
dialog::addBack();
+10 -2
View File
@@ -13,7 +13,7 @@ EX const char* COLORBAR = "###";
EX namespace dialog {
#if HDR
#define IFM(x) (mousing?"":x)
#define IFM(x) (actual_display_keys()?"":x)
static constexpr int DONT_SHOW = 16;
@@ -713,6 +713,14 @@ EX namespace dialog {
EX ld dialog_font_scale = 1;
EX int display_keys = 1;
EX bool actual_display_keys() {
if(display_keys > 1) return true;
if(display_keys == 1) return !mousing;
return false;
}
EX void display() {
callhooks(hooks_display_dialog);
@@ -861,7 +869,7 @@ EX namespace dialog {
displayfr(dcenter, mid, 2, dfsize * I.scale/100, I.body, I.color, 8);
}
else {
if(!mousing)
if(actual_display_keys())
displayfr(keyx, mid, 2, dfsize * I.scale/100, keyname(I.key), I.colork, 16);
displayfr(itemx, mid, 2, dfsize * I.scale/100, I.body, I.color, 0);