Merge remote-tracking branch 'remotes/origin/master' into 1.8.8
# Conflicts: # src/main/java/techreborn/client/gui/GuiGrinder.java # src/main/java/techreborn/tiles/TileGrinder.java
This commit is contained in:
commit
eedabb9e7d
5 changed files with 54 additions and 20 deletions
|
@ -1,6 +1,9 @@
|
|||
package techreborn.client.container;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.ICrafting;
|
||||
import net.minecraft.inventory.Slot;
|
||||
import reborncore.client.gui.SlotOutput;
|
||||
import techreborn.tiles.TileGrinder;
|
||||
|
@ -11,7 +14,7 @@ public class ContainerGrinder extends ContainerCrafting {
|
|||
|
||||
TileGrinder tile;
|
||||
|
||||
public int tickTime;
|
||||
public int connectionStatus;
|
||||
|
||||
public ContainerGrinder(TileGrinder tileGrinder,
|
||||
EntityPlayer player) {
|
||||
|
@ -50,4 +53,29 @@ public class ContainerGrinder extends ContainerCrafting {
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void detectAndSendChanges() {
|
||||
super.detectAndSendChanges();
|
||||
for (int i = 0; i < this.crafters.size(); i++) {
|
||||
ICrafting icrafting = (ICrafting) this.crafters.get(i);
|
||||
if (this.connectionStatus != tile.connectionStatus) {
|
||||
icrafting.sendProgressBarUpdate(this, 10, tile.connectionStatus);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addCraftingToCrafters(ICrafting crafting) {
|
||||
super.addCraftingToCrafters(crafting);
|
||||
crafting.sendProgressBarUpdate(this, 10, tile.connectionStatus);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
@Override
|
||||
public void updateProgressBar(int id, int value) {
|
||||
if (id == 10) {
|
||||
this.connectionStatus = value;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -13,12 +13,14 @@ public class GuiGrinder extends GuiContainer {
|
|||
private static final ResourceLocation texture = new ResourceLocation("techreborn", "textures/gui/industrial_grinder.png");
|
||||
|
||||
TileGrinder grinder;
|
||||
ContainerGrinder containerGrinder;
|
||||
|
||||
public GuiGrinder(EntityPlayer player, TileGrinder tilegrinder) {
|
||||
super(new ContainerGrinder(tilegrinder, player));
|
||||
this.xSize = 176;
|
||||
this.ySize = 167;
|
||||
grinder = tilegrinder;
|
||||
containerGrinder = (ContainerGrinder) this.inventorySlots;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -40,7 +42,7 @@ public class GuiGrinder extends GuiContainer {
|
|||
this.drawTexturedModalRect(k + 132, l + 63 + 12 - j, 176, 12 - j, 14, j + 2);
|
||||
}
|
||||
|
||||
if (grinder.getMutliBlock() != true) {
|
||||
if (containerGrinder.connectionStatus != 1) {
|
||||
// GuiDraw.drawTooltipBox(k + 30, l + 50 + 12 - j, 114, 10);
|
||||
this.fontRendererObj.drawString(StatCollector.translateToLocal("techreborn.message.missingmultiblock"), k + 38, l + 52 + 12 - j, -1);
|
||||
}
|
||||
|
|
|
@ -16,12 +16,24 @@ public class MultiBlockCasing extends RectangularMultiblockControllerBase {
|
|||
|
||||
public boolean hasLava;
|
||||
public boolean isStar = false;
|
||||
public int height = 0;
|
||||
|
||||
public MultiBlockCasing(World world) {
|
||||
super(world);
|
||||
}
|
||||
|
||||
|
||||
public String getInfo(){
|
||||
String value = "Intact";
|
||||
try {
|
||||
isMachineWhole();
|
||||
} catch (MultiblockValidationException e) {
|
||||
e.printStackTrace();
|
||||
value = e.getLocalizedMessage();
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return True if the machine is "whole" and should be assembled. False
|
||||
* otherwise.
|
||||
|
@ -83,7 +95,7 @@ public class MultiBlockCasing extends RectangularMultiblockControllerBase {
|
|||
"Machine is too small, it must be at least %d blocks in the Z dimension",
|
||||
minZ));
|
||||
}
|
||||
|
||||
height = deltaY;
|
||||
|
||||
// if(checkIfStarShape(minimumCoord.x, minimumCoord.y, minimumCoord.z)){
|
||||
// isStar = true;
|
||||
|
@ -92,7 +104,7 @@ public class MultiBlockCasing extends RectangularMultiblockControllerBase {
|
|||
// isStar = false;
|
||||
// }
|
||||
|
||||
if (deltaY < 4) {
|
||||
if (deltaY < minY) {
|
||||
throw new MultiblockValidationException(
|
||||
String.format(
|
||||
"Machine is too small, it must be at least %d blocks in the Y dimension",
|
||||
|
|
|
@ -120,16 +120,16 @@ public class TileAesu extends TilePowerAcceptor implements IWrenchable {
|
|||
return dropStack;
|
||||
}
|
||||
|
||||
public void writeToNBTWithoutCoords(NBTTagCompound tagCompound) {
|
||||
super.writeToNBTWithoutCoords(tagCompound);
|
||||
public void writeToNBT(NBTTagCompound tagCompound) {
|
||||
super.writeToNBT(tagCompound);
|
||||
tagCompound.setDouble("euChange", euChange);
|
||||
tagCompound.setDouble("euLastTick", euLastTick);
|
||||
tagCompound.setInteger("output", OUTPUT);
|
||||
inventory.writeToNBT(tagCompound);
|
||||
}
|
||||
|
||||
public void readFromNBTWithoutCoords(NBTTagCompound nbttagcompound) {
|
||||
super.readFromNBTWithoutCoords(nbttagcompound);
|
||||
public void readFromNBT(NBTTagCompound nbttagcompound) {
|
||||
super.readFromNBT(nbttagcompound);
|
||||
this.euChange = nbttagcompound.getDouble("euChange");
|
||||
this.euLastTick = nbttagcompound.getDouble("euLastTick");
|
||||
this.OUTPUT = nbttagcompound.getInteger("output");
|
||||
|
|
|
@ -29,6 +29,7 @@ public class TileGrinder extends TilePowerAcceptor implements IWrenchable, IFlui
|
|||
public Inventory inventory = new Inventory(6, "TileGrinder", 64, this);
|
||||
public Tank tank = new Tank("TileGrinder", 16000, this);
|
||||
public RecipeCrafter crafter;
|
||||
public int connectionStatus;
|
||||
|
||||
public TileGrinder() {
|
||||
super(ConfigTechReborn.CentrifugeTier);
|
||||
|
@ -85,21 +86,13 @@ public class TileGrinder extends TilePowerAcceptor implements IWrenchable, IFlui
|
|||
for (EnumFacing direction : EnumFacing.values()) {
|
||||
TileEntity tileEntity = worldObj.getTileEntity(new BlockPos(getPos().getX() + direction.getFrontOffsetX(), getPos().getY() + direction.getFrontOffsetY(), getPos().getZ() + direction.getFrontOffsetZ()));
|
||||
if (tileEntity instanceof TileMachineCasing) {
|
||||
if(!((TileMachineCasing) tileEntity).isConnected()){
|
||||
return false;
|
||||
}
|
||||
if ((tileEntity.getBlockType() instanceof BlockMachineCasing)) {
|
||||
BlockMachineCasing machineCasing = (BlockMachineCasing) tileEntity.getBlockType();
|
||||
int heat = machineCasing.getHeatFromState(tileEntity.getWorld().getBlockState(tileEntity.getPos()));
|
||||
Location location = new Location(getPos().getX(), getPos().getY(), getPos().getZ(), direction);
|
||||
location.modifyPositionFromSide(direction, 1);
|
||||
if (worldObj.getBlockState(new BlockPos(location.getX(), location.getY(), location.getZ())).getBlock().getUnlocalizedName().equals("tile.lava")) {
|
||||
heat += 500;
|
||||
}
|
||||
if(((TileMachineCasing) tileEntity).isConnected() && ((TileMachineCasing) tileEntity).getMultiblockController().isAssembled() && ((TileMachineCasing) tileEntity).getMultiblockController().height == 3){
|
||||
connectionStatus = 1;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
connectionStatus = 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -220,7 +213,6 @@ public class TileGrinder extends TilePowerAcceptor implements IWrenchable, IFlui
|
|||
inventory.closeInventory(player);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int getField(int id) {
|
||||
return inventory.getField(id);
|
||||
|
|
Loading…
Reference in a new issue