diff --git a/core/src/mindustry/world/blocks/defense/TargetDummy.java b/core/src/mindustry/world/blocks/defense/TargetDummy.java index e707aebf8d..b2cb7fcaee 100644 --- a/core/src/mindustry/world/blocks/defense/TargetDummy.java +++ b/core/src/mindustry/world/blocks/defense/TargetDummy.java @@ -244,13 +244,16 @@ public class TargetDummy extends Block{ t.check(Core.bundle.get("rules.enemyteam"), unitTeam != team, b -> configureFloat(0, Mathf.num(b))).colspan(3).row(); t.check(Core.bundle.get("stat.flying"), boosting, b -> configureFloat(1, Mathf.num(b))).colspan(3).row(); t.add(Core.bundle.get("stat.armor")); - t.field("" + (int)unitArmor, TextFieldFilter.digitsOnly, s -> configureFloat(2, Strings.parseInt(s))).width(200f).padLeft(8f).colspan(2).row(); + t.field("" + (int)unitArmor, TextFieldFilter.digitsOnly, s -> configureFloat(2, Strings.parseInt(s))).valid(val -> Strings.parseInt(val, Integer.MAX_VALUE) < 100_000).width(200f).padLeft(8f).colspan(2).row(); t.add(Core.bundle.get("stat.resettime")); - t.field(Strings.autoFixed(resetTime / 60f, 2), TextFieldFilter.floatsOnly, s -> configureFloat(3, Strings.parseFloat(s) * 60f)).padLeft(8f).growX(); + t.field(Strings.autoFixed(resetTime / 60f, 2), TextFieldFilter.floatsOnly, s -> configureFloat(3, Strings.parseFloat(s) * 60f)).valid(Strings::canParsePositiveFloat).padLeft(8f).growX(); t.add(StatUnit.seconds.localized()).padLeft(8).row(); t.add(Core.bundle.get("stat.hitsize")); t.field("" + (dummySize/tilesize), TextFieldFilter.floatsOnly, s -> configureFloat(4, Strings.parseFloat(s) * tilesize)) - .valid(val -> Strings.parseFloat(val, Float.MAX_VALUE) <= 50f).padLeft(8f).growX(); + .valid(val -> { + float parsed = Strings.parseFloat(val, Float.MAX_VALUE); + return parsed >= 0.1f && parsed <= 50f; + }).padLeft(8f).growX(); t.add(StatUnit.blocks.localized()).padLeft(8f); }).top().grow().margin(8f); } diff --git a/gradle.properties b/gradle.properties index 1b95be1a50..52c8f4aecc 100644 --- a/gradle.properties +++ b/gradle.properties @@ -26,4 +26,4 @@ org.gradle.caching=true org.gradle.internal.http.socketTimeout=100000 org.gradle.internal.http.connectionTimeout=100000 android.enableR8.fullMode=false -archash=ae321d09e6 +archash=2271e6000e