From 3a81bb6e122a4d51a8cb77e84475a6d9777cd547 Mon Sep 17 00:00:00 2001 From: NotEvil Date: Tue, 14 Apr 2026 02:28:42 +0200 Subject: [PATCH] fix(D-01): clamp component config values to valid ranges (RISK-003) - LockableComponent: lock_resistance clamped to >= 0 - ResistanceComponent: base resistance clamped to >= 0 - GaggingComponent: comprehension clamped to [0.0, 1.0], range to >= 0.0 Prevents nonsensical negative values from malformed JSON configs. --- .../tiedup/remake/v2/bondage/component/GaggingComponent.java | 2 ++ .../tiedup/remake/v2/bondage/component/LockableComponent.java | 1 + .../tiedup/remake/v2/bondage/component/ResistanceComponent.java | 1 + 3 files changed, 4 insertions(+) diff --git a/src/main/java/com/tiedup/remake/v2/bondage/component/GaggingComponent.java b/src/main/java/com/tiedup/remake/v2/bondage/component/GaggingComponent.java index 1f09123..0e401a5 100644 --- a/src/main/java/com/tiedup/remake/v2/bondage/component/GaggingComponent.java +++ b/src/main/java/com/tiedup/remake/v2/bondage/component/GaggingComponent.java @@ -28,6 +28,8 @@ public class GaggingComponent implements IItemComponent { range = config.get("range").getAsDouble(); } } + comprehension = Math.max(0.0, Math.min(1.0, comprehension)); + range = Math.max(0.0, range); return new GaggingComponent(comprehension, range); } diff --git a/src/main/java/com/tiedup/remake/v2/bondage/component/LockableComponent.java b/src/main/java/com/tiedup/remake/v2/bondage/component/LockableComponent.java index c2f4722..3a57c71 100644 --- a/src/main/java/com/tiedup/remake/v2/bondage/component/LockableComponent.java +++ b/src/main/java/com/tiedup/remake/v2/bondage/component/LockableComponent.java @@ -29,6 +29,7 @@ public class LockableComponent implements IItemComponent { if (config != null && config.has("lock_resistance")) { resistance = config.get("lock_resistance").getAsInt(); } + resistance = Math.max(0, resistance); return new LockableComponent(resistance); } diff --git a/src/main/java/com/tiedup/remake/v2/bondage/component/ResistanceComponent.java b/src/main/java/com/tiedup/remake/v2/bondage/component/ResistanceComponent.java index e7abad7..d59f838 100644 --- a/src/main/java/com/tiedup/remake/v2/bondage/component/ResistanceComponent.java +++ b/src/main/java/com/tiedup/remake/v2/bondage/component/ResistanceComponent.java @@ -20,6 +20,7 @@ public class ResistanceComponent implements IItemComponent { if (config != null && config.has("base")) { base = config.get("base").getAsInt(); } + base = Math.max(0, base); return new ResistanceComponent(base); }