From 07fef1c70ca994eb7126cf84d1222651bd70d09f Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Tue, 23 Feb 2021 04:56:53 +0100 Subject: [PATCH] regenerate notknot on parameter changes --- rogueviz/notknot.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/rogueviz/notknot.cpp b/rogueviz/notknot.cpp index 5453d451..755d95fd 100644 --- a/rogueviz/notknot.cpp +++ b/rogueviz/notknot.cpp @@ -541,13 +541,21 @@ void create_notknot() { gi.shortname = "notknot"; gi.menu_displayed_name = "notknot"; } + +void regenerate() { + if(geometry == gNotKnot && game_active) { + stop_game(); + start_game(); + } + } auto shot_hooks = addHook(hooks_initialize, 100, create_notknot) + addHook(hooks_configfile, 100, [] { - param_i(loop, "nk_loop"); - param_i(margin, "nk_margin"); - param_i(knotsize, "nk_knotsize"); - param_i(terminate_at, "nk_terminate"); + param_i(loop, "nk_loop")->set_reaction(regenerate); + param_i(margin, "nk_margin")->set_reaction(regenerate); + param_i(knotsize, "nk_knotsize")->set_reaction(regenerate); + param_i(terminate_at, "nk_terminate")->set_reaction(regenerate); + param_b(self_hiding, "selfhide")->set_reaction(regenerate); }); }