diff --git a/core/assets-raw/sprites/units/toxopid-joint-base.png b/core/assets-raw/sprites/units/toxopid-joint-base.png new file mode 100644 index 0000000000..921a27e55c Binary files /dev/null and b/core/assets-raw/sprites/units/toxopid-joint-base.png differ diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java index 2b4da903c4..8719d6311d 100644 --- a/core/src/mindustry/content/Blocks.java +++ b/core/src/mindustry/content/Blocks.java @@ -1504,12 +1504,13 @@ public class Blocks implements ContentList{ hasPower = true; size = 2; - force = 3f; + force = 4f; scaledForce = 5.5f; range = 170f; - damage = 0.08f; + damage = 0.1f; health = 160 * size * size; rotateSpeed = 10; + range = 85f; consumes.powerCond(3f, (TractorBeamEntity e) -> e.target != null); }}; @@ -1560,11 +1561,12 @@ public class Blocks implements ContentList{ segment = new PointDefenseTurret("segment"){{ requirements(Category.turret, with(Items.silicon, 130, Items.thorium, 80, Items.phasefabric, 25)); + range = 95f; hasPower = true; consumes.power(3f); size = 2; shootLength = 5f; - bulletDamage = 12f; + bulletDamage = 16f; reloadTime = 20f; health = 190 * size * size; }}; diff --git a/core/src/mindustry/net/BeControl.java b/core/src/mindustry/net/BeControl.java index 8fddbebaa4..a30308ed52 100644 --- a/core/src/mindustry/net/BeControl.java +++ b/core/src/mindustry/net/BeControl.java @@ -44,6 +44,17 @@ public class BeControl{ } }, updateInterval, updateInterval); } + + if(System.getProperties().contains("becopy")){ + try{ + Fi dest = Fi.get(System.getProperty("becopy")); + Fi self = Fi.get(BeControl.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath()); + + self.copyTo(dest); + }catch(Throwable e){ + e.printStackTrace(); + } + } } /** asynchronously checks for updates. */ @@ -87,14 +98,17 @@ public class BeControl{ boolean[] cancel = {false}; float[] progress = {0}; int[] length = {0}; - Fi file = Fi.get(BeControl.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath()); + Fi file = bebuildDirectory.child("client-be-" + updateBuild + ".jar"); + Fi fileDest = System.getProperties().contains("becopy") ? + Fi.get(System.getProperty("becopy")) : + Fi.get(BeControl.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath()); BaseDialog dialog = new BaseDialog("@be.updating"); download(updateUrl, file, i -> length[0] = i, v -> progress[0] = v, () -> cancel[0], () -> { try{ Runtime.getRuntime().exec(OS.isMac ? - new String[]{"java", "-XstartOnFirstThread", "-DlastBuild=" + Version.build, "-Dberestart", "-jar", file.absolutePath()} : - new String[]{"java", "-DlastBuild=" + Version.build, "-Dberestart", "-jar", file.absolutePath()} + new String[]{"java", "-XstartOnFirstThread", "-DlastBuild=" + Version.build, "-Dberestart", "-Dbecopy=" + fileDest.absolutePath(), "-jar", file.absolutePath()} : + new String[]{"java", "-DlastBuild=" + Version.build, "-Dberestart", "-Dbecopy=" + fileDest.absolutePath(), "-jar", file.absolutePath()} ); System.exit(0); }catch(IOException e){