Да, параметров конечно в самом деле много

но т.к. как они все нужны вижу только один способ - сделать какую-нить подфункцию ...
По первому коду - да, она то останавливается, но работает не так как нужно... с дерганием, как-будто перекрывается
А про рут, это уже были отчаянные действия.... так как функция в упор не видела эту переменную