From afbde49fa2ee4aa2e631dd8ca32b9e367fdda837 Mon Sep 17 00:00:00 2001 From: Anuken Date: Wed, 24 Feb 2021 09:52:53 -0500 Subject: [PATCH] Fixed #4776 / Fixed #4772 --- core/src/mindustry/ai/types/FlyingAI.java | 2 +- core/src/mindustry/entities/comp/BuildingComp.java | 1 + core/src/mindustry/entities/comp/UnitComp.java | 1 + core/src/mindustry/logic/LAccess.java | 1 + .../mindustry/world/blocks/distribution/ItemBridge.java | 8 +++++--- 5 files changed, 9 insertions(+), 4 deletions(-) diff --git a/core/src/mindustry/ai/types/FlyingAI.java b/core/src/mindustry/ai/types/FlyingAI.java index 6df803b1f4..72d7eda4ff 100644 --- a/core/src/mindustry/ai/types/FlyingAI.java +++ b/core/src/mindustry/ai/types/FlyingAI.java @@ -13,7 +13,7 @@ public class FlyingAI extends AIController{ public void updateMovement(){ if(target != null && unit.hasWeapons() && command() == UnitCommand.attack){ if(!unit.type.circleTarget){ - moveTo(target, unit.range() * 0.8f); + moveTo(target, unit.type.range * 0.8f); unit.lookAt(target); }else{ attack(120f); diff --git a/core/src/mindustry/entities/comp/BuildingComp.java b/core/src/mindustry/entities/comp/BuildingComp.java index 9cc2573147..d52e3816a8 100644 --- a/core/src/mindustry/entities/comp/BuildingComp.java +++ b/core/src/mindustry/entities/comp/BuildingComp.java @@ -1339,6 +1339,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc, case enabled -> enabled ? 1 : 0; case controlled -> this instanceof ControlBlock c && c.isControlled() ? 2 : 0; case payloadCount -> getPayload() != null ? 1 : 0; + case size -> block.size; default -> Float.NaN; //gets converted to null in logic }; } diff --git a/core/src/mindustry/entities/comp/UnitComp.java b/core/src/mindustry/entities/comp/UnitComp.java index 47a89e101a..9acc0f8c95 100644 --- a/core/src/mindustry/entities/comp/UnitComp.java +++ b/core/src/mindustry/entities/comp/UnitComp.java @@ -142,6 +142,7 @@ abstract class UnitComp implements Healthc, Physicsc, Hitboxc, Statusc, Teamc, I case controlled -> controller instanceof LogicAI ? 1 : controller instanceof Player ? 2 : controller instanceof FormationAI ? 3 : 0; case commanded -> controller instanceof FormationAI ? 1 : 0; case payloadCount -> self() instanceof Payloadc pay ? pay.payloads().size : 0; + case size -> hitSize / tilesize; default -> Float.NaN; }; } diff --git a/core/src/mindustry/logic/LAccess.java b/core/src/mindustry/logic/LAccess.java index e3403a56be..dad09faf56 100644 --- a/core/src/mindustry/logic/LAccess.java +++ b/core/src/mindustry/logic/LAccess.java @@ -27,6 +27,7 @@ public enum LAccess{ y, shootX, shootY, + size, dead, range, shooting, diff --git a/core/src/mindustry/world/blocks/distribution/ItemBridge.java b/core/src/mindustry/world/blocks/distribution/ItemBridge.java index f4c67825eb..91d25be0c4 100644 --- a/core/src/mindustry/world/blocks/distribution/ItemBridge.java +++ b/core/src/mindustry/world/blocks/distribution/ItemBridge.java @@ -172,9 +172,11 @@ public class ItemBridge extends Block{ public void playerPlaced(Object config){ super.playerPlaced(config); - Tile link = findLink(tile.x, tile.y); - if(linkValid(tile, link) && !proximity.contains(link.build)){ - link.build.configure(tile.pos()); + if(config == null){ + Tile link = findLink(tile.x, tile.y); + if(linkValid(tile, link) && !proximity.contains(link.build)){ + link.build.configure(tile.pos()); + } } lastBuild = this;