This commit is contained in:
Modmuss50 2015-11-23 18:41:29 +00:00
parent 92ca6548c6
commit b88fe49ee2
36 changed files with 407 additions and 417 deletions

View file

@ -1,6 +1,7 @@
package techreborn.tiles.lesu;
import net.minecraft.util.BlockPos;
import net.minecraft.util.EnumFacing;
import reborncore.common.misc.Functions;
import reborncore.common.util.Inventory;
@ -20,7 +21,7 @@ public class TileLesu extends TilePowerAcceptor {//TODO wrench
private int output;
private int maxStorage;
public Inventory inventory = new Inventory(2, "TileAesu", 64);
public Inventory inventory = new Inventory(2, "TileAesu", 64, this);
public TileLesu() {
super(5);
@ -34,10 +35,10 @@ public class TileLesu extends TilePowerAcceptor {//TODO wrench
}
countedNetworks.clear();
connectedBlocks = 0;
for (EnumFacing dir : EnumFacing.VALID_DIRECTIONS) {
if (worldObj.getTileEntity(getPos().getX() + dir.offsetX, getPos().getY() + dir.offsetY, getPos().getZ() + dir.offsetZ) instanceof TileLesuStorage) {
if (((TileLesuStorage) worldObj.getTileEntity(getPos().getX() + dir.offsetX, getPos().getY() + dir.offsetY, getPos().getZ() + dir.offsetZ)).network != null) {
LesuNetwork network = ((TileLesuStorage) worldObj.getTileEntity(getPos().getX() + dir.offsetX, getPos().getY() + dir.offsetY, getPos().getZ() + dir.offsetZ)).network;
for (EnumFacing dir : EnumFacing.values()) {
if (worldObj.getTileEntity(new BlockPos(getPos().getX() + dir.getFrontOffsetX(), getPos().getY() + dir.getFrontOffsetY(), getPos().getZ() + dir.getFrontOffsetZ())) instanceof TileLesuStorage) {
if (((TileLesuStorage) worldObj.getTileEntity(new BlockPos(getPos().getX() + dir.getFrontOffsetX(), getPos().getY() + dir.getFrontOffsetY(), getPos().getZ() + dir.getFrontOffsetZ()))).network != null) {
LesuNetwork network = ((TileLesuStorage) worldObj.getTileEntity(new BlockPos(getPos().getX() + dir.getFrontOffsetX(), getPos().getY() + dir.getFrontOffsetY(), getPos().getZ() + dir.getFrontOffsetZ()))).network;
if (!countedNetworks.contains(network)) {
if (network.master == null || network.master == this) {
connectedBlocks += network.storages.size();

View file

@ -1,5 +1,6 @@
package techreborn.tiles.lesu;
import net.minecraft.util.BlockPos;
import net.minecraft.world.World;
import net.minecraft.util.EnumFacing;
import techreborn.tiles.TileMachineBase;
@ -14,7 +15,7 @@ public class TileLesuStorage extends TileMachineBase {
if (network == null) {
findAndJoinNetwork(worldObj, getPos().getX(), getPos().getY(), getPos().getZ());
} else {
if (network.master != null && network.master.getWorld().getTileEntity(network.master.getPos().getX(), network.master.getPos().getY(), network.master.getPos().getZ()) != network.master) {
if (network.master != null && network.master.getWorld().getTileEntity(new BlockPos(network.master.getPos().getX(), network.master.getPos().getY(), network.master.getPos().getZ())) != network.master) {
network.master = null;
}
}
@ -23,9 +24,9 @@ public class TileLesuStorage extends TileMachineBase {
public final void findAndJoinNetwork(World world, int x, int y, int z) {
network = new LesuNetwork();
network.addElement(this);
for (EnumFacing direction : EnumFacing.VALID_DIRECTIONS) {
if (world.getTileEntity(x + direction.offsetX, y + direction.offsetY, z + direction.offsetZ) instanceof TileLesuStorage) {
TileLesuStorage lesu = (TileLesuStorage) world.getTileEntity(x + direction.offsetX, y + direction.offsetY, z + direction.offsetZ);
for (EnumFacing direction : EnumFacing.values()) {
if (world.getTileEntity(new BlockPos(x + direction.getFrontOffsetX(), y + direction.getFrontOffsetY(), z + direction.getFrontOffsetZ())) instanceof TileLesuStorage) {
TileLesuStorage lesu = (TileLesuStorage) world.getTileEntity(new BlockPos(x + direction.getFrontOffsetX(), y + direction.getFrontOffsetY(), z + direction.getFrontOffsetZ()));
if (lesu.network != null) {
lesu.network.merge(network);
}