From f0fac538ac9a27a4fb913091ed10072d240662b3 Mon Sep 17 00:00:00 2001 From: Anuken Date: Fri, 19 Dec 2025 12:04:47 -0500 Subject: [PATCH] Rule dialog entries for logic unit build/deconstruct rules --- core/assets/bundles/bundle.properties | 2 ++ core/src/mindustry/ui/dialogs/CustomRulesDialog.java | 5 ++--- server/src/mindustry/server/ServerControl.java | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index 24200d2e46..ea660c6eaf 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -1483,6 +1483,8 @@ rules.unithealthmultiplier = Unit Health Multiplier rules.unitdamagemultiplier = Unit Damage Multiplier rules.unitcrashdamagemultiplier = Unit Crash Damage Multiplier rules.unitminespeedmultiplier = Unit Mine Speed Multiplier +rules.logicunitbuild = Logic Unit Building +rules.logicunitdeconstruct = Logic Unit Deconstruction rules.solarmultiplier = Solar Power Multiplier rules.unitcapvariable = Cores Contribute To Unit Cap rules.unitpayloadsexplode = Carried Payloads Explode With The Unit diff --git a/core/src/mindustry/ui/dialogs/CustomRulesDialog.java b/core/src/mindustry/ui/dialogs/CustomRulesDialog.java index fe6111b484..18335314d5 100644 --- a/core/src/mindustry/ui/dialogs/CustomRulesDialog.java +++ b/core/src/mindustry/ui/dialogs/CustomRulesDialog.java @@ -189,7 +189,6 @@ public class CustomRulesDialog extends BaseDialog{ check("@rules.hidebannedblocks", b -> rules.hideBannedBlocks = b, () -> rules.hideBannedBlocks); check("@bannedblocks.whitelist", b -> rules.blockWhitelist = b, () -> rules.blockWhitelist); - category("unit"); check("@rules.unitcapvariable", b -> rules.unitCapVariable = b, () -> rules.unitCapVariable); check("@rules.unitpayloadsexplode", b -> rules.unitPayloadsExplode = b, () -> rules.unitPayloadsExplode); @@ -199,14 +198,14 @@ public class CustomRulesDialog extends BaseDialog{ number("@rules.unitminespeedmultiplier", f -> rules.unitMineSpeedMultiplier = f, () -> rules.unitMineSpeedMultiplier); number("@rules.unitbuildspeedmultiplier", f -> rules.unitBuildSpeedMultiplier = f, () -> rules.unitBuildSpeedMultiplier, 0f, 50f); number("@rules.unitcostmultiplier", f -> rules.unitCostMultiplier = f, () -> rules.unitCostMultiplier); - number("@rules.unithealthmultiplier", f -> rules.unitHealthMultiplier = f, () -> rules.unitHealthMultiplier); + check("@rules.logicunitbuild", b -> rules.logicUnitBuild = b, () -> rules.logicUnitBuild); + check("@rules.logicunitdeconstruct", b -> rules.logicUnitDeconstruct = b, () -> rules.logicUnitDeconstruct); if(Core.bundle.get("bannedunits").toLowerCase().contains(ruleSearch)){ current.button("@bannedunits", () -> bannedUnits.show(rules.bannedUnits)).left().width(300f).row(); } check("@bannedunits.whitelist", b -> rules.unitWhitelist = b, () -> rules.unitWhitelist); - category("enemy"); check("@rules.attack", b -> rules.attackMode = b, () -> rules.attackMode); check("@rules.corecapture", b -> rules.coreCapture = b, () -> rules.coreCapture); diff --git a/server/src/mindustry/server/ServerControl.java b/server/src/mindustry/server/ServerControl.java index f64b5bea6a..89ca7b0d02 100644 --- a/server/src/mindustry/server/ServerControl.java +++ b/server/src/mindustry/server/ServerControl.java @@ -115,7 +115,7 @@ public class ServerControl implements ApplicationListener{ "bans", "", "admins", "", "shufflemode", "custom", - "globalrules", "{reactorExplosions: false, logicUnitBuild: false}" + "globalrules", "{reactorExplosions: false, logicUnitBuild: false, logicUnitDeconstruct: false}" ); //update log level