diff --git a/core/src/mindustry/world/blocks/distribution/BaseConveyor.java b/core/src/mindustry/world/blocks/distribution/BaseConveyor.java index 149ed59188..30f0143e9a 100644 --- a/core/src/mindustry/world/blocks/distribution/BaseConveyor.java +++ b/core/src/mindustry/world/blocks/distribution/BaseConveyor.java @@ -24,14 +24,16 @@ abstract public class BaseConveyor extends Block implements Autotiler{ rotate = true; update = true; + layer = Layer.overlay; + group = BlockGroup.transportation; hasItems = true; itemCapacity = 4; - unloadable = false; - layer = Layer.overlay; - idleSoundVolume = 0.004f; conveyorPlacement = true; + entityType = BaseConveyorEntity::new; + idleSound = Sounds.conveyor; - group = BlockGroup.transportation; + idleSoundVolume = 0.004f; + unloadable = false; } @Override @@ -86,7 +88,7 @@ abstract public class BaseConveyor extends Block implements Autotiler{ return true; } - static abstract class BaseConveyorEntity extends TileEntity{ + static class BaseConveyorEntity extends TileEntity{ int blendbits; int blendsclx, blendscly; diff --git a/core/src/mindustry/world/blocks/distribution/CraterConveyor.java b/core/src/mindustry/world/blocks/distribution/CraterConveyor.java index 6cb2db970f..7e9aa3b3d1 100644 --- a/core/src/mindustry/world/blocks/distribution/CraterConveyor.java +++ b/core/src/mindustry/world/blocks/distribution/CraterConveyor.java @@ -22,6 +22,7 @@ public class CraterConveyor extends BaseConveyor{ public CraterConveyor(String name){ super(name); + entityType = CraterConveyorEntity::new; } @@ -43,8 +44,8 @@ public class CraterConveyor extends BaseConveyor{ public void setStats(){ super.setStats(); - stats.add(BlockStat.boostEffect, "$blocks.itemcapacity"); stats.add(BlockStat.itemsMoved, speed * 60, StatUnit.perSecond); + stats.add(BlockStat.boostEffect, "$blocks.itemcapacity"); } @Override diff --git a/core/src/mindustry/world/blocks/distribution/ItemConveyor.java b/core/src/mindustry/world/blocks/distribution/ItemConveyor.java index 8df13383b4..d042a513f0 100644 --- a/core/src/mindustry/world/blocks/distribution/ItemConveyor.java +++ b/core/src/mindustry/world/blocks/distribution/ItemConveyor.java @@ -32,12 +32,14 @@ public class ItemConveyor extends BaseConveyor implements Autotiler{ protected ItemConveyor(String name){ super(name); + entityType = ItemConveyorEntity::new; } @Override public void setStats(){ super.setStats(); + //have to add a custom calculated speed, since the actual movement speed is apparently not linear stats.add(BlockStat.itemsMoved, displayedSpeed, StatUnit.itemsSecond); stats.add(BlockStat.boostEffect, "$blocks.itemsmoved"); @@ -164,10 +166,10 @@ public class ItemConveyor extends BaseConveyor implements Autotiler{ public Block getReplacement(BuildRequest req, Array requests){ Boolf cont = p -> requests.contains(o -> o.x == req.x + p.x && o.y == req.y + p.y && o.rotation == req.rotation && (req.block instanceof ItemConveyor || req.block instanceof Junction)); return cont.get(Geometry.d4(req.rotation)) && - cont.get(Geometry.d4(req.rotation - 2)) && - req.tile() != null && - req.tile().block() instanceof ItemConveyor && - Mathf.mod(req.tile().rotation() - req.rotation, 2) == 1 ? Blocks.junction : this; + cont.get(Geometry.d4(req.rotation - 2)) && + req.tile() != null && + req.tile().block() instanceof ItemConveyor && + Mathf.mod(req.tile().rotation() - req.rotation, 2) == 1 ? Blocks.junction : this; } @Override @@ -266,11 +268,6 @@ public class ItemConveyor extends BaseConveyor implements Autotiler{ int lastInserted, mid; float minitem = 1; - int blendbits; - int blendsclx, blendscly; - - float clogHeat = 0f; - final void add(int o){ for(int i = Math.max(o + 1, len); i > o; i--){ ids[i] = ids[i - 1];