diff --git a/src/main/java/ru/bclib/mixin/common/NoiseGeneratorSettingsMixin.java b/src/main/java/ru/bclib/mixin/common/NoiseGeneratorSettingsMixin.java index 808f7cf6..d5f6deba 100644 --- a/src/main/java/ru/bclib/mixin/common/NoiseGeneratorSettingsMixin.java +++ b/src/main/java/ru/bclib/mixin/common/NoiseGeneratorSettingsMixin.java @@ -50,6 +50,11 @@ public class NoiseGeneratorSettingsMixin implements SurfaceRuleProvider { } private void bclib_setCustomRules(List rules) { + if (rules.size()==0){ + bclib_clearCustomRules(); + return; + } + RuleSource org = getOriginalSurfaceRule(); if (org instanceof SurfaceRules.SequenceRuleSource sequenceRule){ List currentSequence = sequenceRule.sequence(); @@ -58,6 +63,7 @@ public class NoiseGeneratorSettingsMixin implements SurfaceRuleProvider { } else { rules.add(org); } + setSurfaceRule(SurfaceRules.sequence(rules.toArray(new RuleSource[rules.size()]))); }