diff --git a/core/src/io/anuke/mindustry/content/blocks/PowerBlocks.java b/core/src/io/anuke/mindustry/content/blocks/PowerBlocks.java index 6a193ef9ef..925bea179e 100644 --- a/core/src/io/anuke/mindustry/content/blocks/PowerBlocks.java +++ b/core/src/io/anuke/mindustry/content/blocks/PowerBlocks.java @@ -65,11 +65,15 @@ public class PowerBlocks extends BlockList implements ContentList{ battery = new PowerDistributor("battery"){{ powerCapacity = 320f; + outputsPower = true; + consumesPower = true; }}; batteryLarge = new PowerDistributor("battery-large"){{ size = 3; powerCapacity = 2000f; + outputsPower = true; + consumesPower = true; }}; powerNode = new PowerNode("power-node"){{ diff --git a/core/src/io/anuke/mindustry/world/BaseBlock.java b/core/src/io/anuke/mindustry/world/BaseBlock.java index f6c986c0a3..9010a45361 100644 --- a/core/src/io/anuke/mindustry/world/BaseBlock.java +++ b/core/src/io/anuke/mindustry/world/BaseBlock.java @@ -12,7 +12,6 @@ import io.anuke.mindustry.type.Liquid; import io.anuke.mindustry.world.consumers.ConsumeItem; import io.anuke.mindustry.world.consumers.ConsumeLiquid; import io.anuke.mindustry.world.consumers.Consumers; -import io.anuke.mindustry.world.meta.PowerType; import io.anuke.mindustry.world.meta.Producers; import io.anuke.ucore.core.Effects; import io.anuke.ucore.core.Timers; @@ -26,7 +25,8 @@ public abstract class BaseBlock extends MappableContent{ public boolean outputsLiquid = false; public boolean singleLiquid = true; - public PowerType powerType = PowerType.consumer; + public boolean consumesPower = true; + public boolean outputsPower; public int itemCapacity; public float liquidCapacity = 10f; diff --git a/core/src/io/anuke/mindustry/world/Block.java b/core/src/io/anuke/mindustry/world/Block.java index cb1fb74339..f00253ab17 100644 --- a/core/src/io/anuke/mindustry/world/Block.java +++ b/core/src/io/anuke/mindustry/world/Block.java @@ -155,7 +155,7 @@ public class Block extends BaseBlock { public Array getPowerConnections(Tile tile, Array out){ out.clear(); for(Tile other : tile.entity.proximity()){ - if(other.entity.power != null && !(powerType == PowerType.consumer && other.block().powerType == PowerType.consumer)){ + if(other.entity.power != null && !(consumesPower && other.block().consumesPower)){ out.add(other); } } diff --git a/core/src/io/anuke/mindustry/world/blocks/power/PowerDistributor.java b/core/src/io/anuke/mindustry/world/blocks/power/PowerDistributor.java index b95edca0de..d7011f7261 100644 --- a/core/src/io/anuke/mindustry/world/blocks/power/PowerDistributor.java +++ b/core/src/io/anuke/mindustry/world/blocks/power/PowerDistributor.java @@ -2,13 +2,13 @@ package io.anuke.mindustry.world.blocks.power; import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.PowerBlock; -import io.anuke.mindustry.world.meta.PowerType; public class PowerDistributor extends PowerBlock{ public PowerDistributor(String name){ super(name); - powerType = PowerType.producer; + consumesPower = false; + outputsPower = true; } @Override diff --git a/core/src/io/anuke/mindustry/world/blocks/power/PowerGraph.java b/core/src/io/anuke/mindustry/world/blocks/power/PowerGraph.java index 42a0ec2305..9fd5432b05 100644 --- a/core/src/io/anuke/mindustry/world/blocks/power/PowerGraph.java +++ b/core/src/io/anuke/mindustry/world/blocks/power/PowerGraph.java @@ -4,7 +4,6 @@ import com.badlogic.gdx.utils.Array; import com.badlogic.gdx.utils.ObjectSet; import com.badlogic.gdx.utils.Queue; import io.anuke.mindustry.world.Tile; -import io.anuke.mindustry.world.meta.PowerType; import static io.anuke.mindustry.Vars.threads; @@ -74,9 +73,12 @@ public class PowerGraph{ public void add(Tile tile){ tile.entity.power.graph = this; all.add(tile); - if(tile.block().powerType == PowerType.producer){ + + if(tile.block().outputsPower){ producers.add(tile); - }else if(tile.block().powerType == PowerType.consumer){ + } + + if(tile.block().consumesPower){ consumers.add(tile); } } diff --git a/core/src/io/anuke/mindustry/world/blocks/power/PowerNode.java b/core/src/io/anuke/mindustry/world/blocks/power/PowerNode.java index a6fc63da95..264581ba63 100644 --- a/core/src/io/anuke/mindustry/world/blocks/power/PowerNode.java +++ b/core/src/io/anuke/mindustry/world/blocks/power/PowerNode.java @@ -14,7 +14,6 @@ import io.anuke.mindustry.world.Edges; import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.PowerBlock; import io.anuke.mindustry.world.meta.BlockStat; -import io.anuke.mindustry.world.meta.PowerType; import io.anuke.mindustry.world.meta.StatUnit; import io.anuke.ucore.core.Settings; import io.anuke.ucore.core.Timers; @@ -51,7 +50,8 @@ public class PowerNode extends PowerBlock{ layer = Layer.power; powerCapacity = 5f; configurable = true; - powerType = PowerType.bridge; + consumesPower = false; + outputsPower = false; } @Remote(targets = Loc.both, called = Loc.server, forward = true)