Fixed Universal macerator UI
This commit is contained in:
parent
ba2882b5f8
commit
8f77bf6164
6 changed files with 37 additions and 87 deletions
|
@ -31,7 +31,6 @@ public class GT_ContainerMetaTile_Machine extends GT_Container {
|
||||||
if (mTileEntity != null && mTileEntity.getMetaTileEntity() != null) {
|
if (mTileEntity != null && mTileEntity.getMetaTileEntity() != null) {
|
||||||
addSlots(aInventoryPlayer);
|
addSlots(aInventoryPlayer);
|
||||||
if (doesBindPlayerInventory()) bindPlayerInventory(aInventoryPlayer);
|
if (doesBindPlayerInventory()) bindPlayerInventory(aInventoryPlayer);
|
||||||
// detectAndSendChanges(); // FIXME check all UIs
|
|
||||||
} else {
|
} else {
|
||||||
aInventoryPlayer.player.closeScreen();
|
aInventoryPlayer.player.closeScreen();
|
||||||
}
|
}
|
||||||
|
@ -75,19 +74,6 @@ public class GT_ContainerMetaTile_Machine extends GT_Container {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// @Override
|
|
||||||
// public void prepareChanges(JsonObject data, boolean force) {
|
|
||||||
// super.prepareChanges(data, force);
|
|
||||||
//
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// @SideOnly(Side.CLIENT)
|
|
||||||
// public void processChanges(JsonObject data) {
|
|
||||||
// super.processChanges(data);
|
|
||||||
//
|
|
||||||
// }
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Server side method to write changes to data object
|
* Server side method to write changes to data object
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -42,26 +42,30 @@ public class GT_Container_BasicMachine extends GT_ContainerMetaTile_Machine {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ItemStack slotClick(int aSlotIndex, int aMouseclick, int aShifthold, EntityPlayer aPlayer) {
|
public ItemStack slotClick(int aSlotIndex, int aMouseclick, int aShifthold, EntityPlayer aPlayer) {
|
||||||
if (aSlotIndex < 5) return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
|
if (aSlotIndex < getSlotCount()) return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
|
||||||
|
return this.handleClick(aSlotIndex, aMouseclick, aShifthold, aPlayer) ? null : super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Custom slotClick to handle buttons and etc
|
||||||
|
* @return true if super call is not needed
|
||||||
|
*/
|
||||||
|
public boolean handleClick(int aSlotIndex, int aMouseclick, int aShifthold, EntityPlayer aPlayer) {
|
||||||
Slot tSlot = (Slot)inventorySlots.get(aSlotIndex);
|
Slot tSlot = (Slot)inventorySlots.get(aSlotIndex);
|
||||||
if (tSlot != null) {
|
if (mTileEntity.getMetaTileEntity() != null && tSlot != null) {
|
||||||
if (mTileEntity.getMetaTileEntity() == null) return null;
|
|
||||||
if (aSlotIndex == 5) {
|
if (aSlotIndex == 5) {
|
||||||
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bOutput = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bOutput;
|
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bOutput = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bOutput;
|
||||||
return null;
|
return true;
|
||||||
}
|
} else if (aSlotIndex == 6) {
|
||||||
if (aSlotIndex == 6) {
|
|
||||||
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bItemTransfer = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bItemTransfer;
|
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bItemTransfer = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bItemTransfer;
|
||||||
return null;
|
return true;
|
||||||
}
|
} else if (aSlotIndex == 7) {
|
||||||
if (aSlotIndex == 7) {
|
|
||||||
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bSeperatedInputs = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bSeperatedInputs;
|
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bSeperatedInputs = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bSeperatedInputs;
|
||||||
return null;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -26,7 +26,7 @@ public class GT_Container_ElectricInventoryManager extends GT_ContainerMetaTile_
|
||||||
public final SyncedField<Integer> mTargetEnergy = new SyncedField<>("mTargetEnergy" , new Integer(0));
|
public final SyncedField<Integer> mTargetEnergy = new SyncedField<>("mTargetEnergy" , new Integer(0));
|
||||||
|
|
||||||
public GT_Container_ElectricInventoryManager(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
|
public GT_Container_ElectricInventoryManager(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
|
||||||
super(aInventoryPlayer, aTileEntity); // FIXME TEST THIS
|
super(aInventoryPlayer, aTileEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addSlots(InventoryPlayer aInventoryPlayer) {
|
public void addSlots(InventoryPlayer aInventoryPlayer) {
|
||||||
|
|
|
@ -16,7 +16,7 @@ import cpw.mods.fml.relauncher.*;
|
||||||
|
|
||||||
public class GT_Container_ElectricRetrieverAdvanced extends GT_ContainerMetaTile_Machine
|
public class GT_Container_ElectricRetrieverAdvanced extends GT_ContainerMetaTile_Machine
|
||||||
{
|
{
|
||||||
public final SyncedField<Integer[]> mTargetSlots; // FIXME TEST this
|
public final SyncedField<Integer[]> mTargetSlots;
|
||||||
|
|
||||||
public GT_Container_ElectricRetrieverAdvanced(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity) {
|
public GT_Container_ElectricRetrieverAdvanced(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity) {
|
||||||
super(aInventoryPlayer, aTileEntity);
|
super(aInventoryPlayer, aTileEntity);
|
||||||
|
|
|
@ -1,11 +1,8 @@
|
||||||
package gregtechmod.common.containers;
|
package gregtechmod.common.containers;
|
||||||
|
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
import gregtechmod.api.gui.GT_Container_BasicMachine;
|
||||||
import cpw.mods.fml.relauncher.SideOnly;
|
|
||||||
import gregtechmod.api.gui.GT_ContainerMetaTile_Machine;
|
|
||||||
import gregtechmod.api.gui.GT_Slot_Holo;
|
import gregtechmod.api.gui.GT_Slot_Holo;
|
||||||
import gregtechmod.api.gui.GT_Slot_Output;
|
import gregtechmod.api.gui.GT_Slot_Output;
|
||||||
import gregtechmod.api.interfaces.IGregTechTileEntity;
|
import gregtechmod.api.interfaces.IGregTechTileEntity;
|
||||||
|
@ -14,7 +11,6 @@ import gregtechmod.api.metatileentity.implementations.GT_MetaTileEntity_BasicMac
|
||||||
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.entity.player.InventoryPlayer;
|
import net.minecraft.entity.player.InventoryPlayer;
|
||||||
import net.minecraft.inventory.ICrafting;
|
|
||||||
import net.minecraft.inventory.Slot;
|
import net.minecraft.inventory.Slot;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
|
@ -22,9 +18,7 @@ import net.minecraft.item.ItemStack;
|
||||||
* @author TheDarkDnKTv
|
* @author TheDarkDnKTv
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class UniversalMacerator extends GT_ContainerMetaTile_Machine {
|
public class UniversalMacerator extends GT_Container_BasicMachine {
|
||||||
|
|
||||||
public boolean mOutputting = false, mItemTransfer = false, mSeperatedInputs = false;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param aInventoryPlayer
|
* @param aInventoryPlayer
|
||||||
|
@ -51,58 +45,24 @@ public class UniversalMacerator extends GT_ContainerMetaTile_Machine {
|
||||||
addSlotToContainer(new GT_Slot_Holo(mTileEntity, 0, 44, 63, false, true, 1));
|
addSlotToContainer(new GT_Slot_Holo(mTileEntity, 0, 44, 63, false, true, 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ItemStack slotClick(int aSlotIndex, int aMouseclick, int aShifthold, EntityPlayer aPlayer) {
|
public boolean handleClick(int aSlotIndex, int aMouseclick, int aShifthold, EntityPlayer aPlayer) {
|
||||||
if (aSlotIndex < 7) return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
|
|
||||||
|
|
||||||
Slot tSlot = (Slot)inventorySlots.get(aSlotIndex);
|
Slot tSlot = (Slot)inventorySlots.get(aSlotIndex);
|
||||||
if (tSlot != null) {
|
if (mTileEntity.getMetaTileEntity() != null && tSlot != null) {
|
||||||
if (mTileEntity.getMetaTileEntity() == null) return null;
|
GT_MetaTileEntity_BasicMachine mte = (GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity();
|
||||||
if (aSlotIndex == 7) {
|
if (aSlotIndex == 7) {
|
||||||
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bOutput = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bOutput;
|
mte.bOutput = !mte.bOutput;
|
||||||
return null;
|
return true;
|
||||||
}
|
} else if (aSlotIndex == 8) {
|
||||||
if (aSlotIndex == 8) {
|
mte.bItemTransfer = !mte.bItemTransfer;
|
||||||
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bItemTransfer = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bItemTransfer;
|
return true;
|
||||||
return null;
|
} else if (aSlotIndex == 9) {
|
||||||
}
|
mte.bSeperatedInputs = !mte.bSeperatedInputs;
|
||||||
if (aSlotIndex == 9) {
|
return true;
|
||||||
((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bSeperatedInputs = !((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bSeperatedInputs;
|
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
|
return false;
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void detectAndSendChanges() {
|
|
||||||
super.detectAndSendChanges();
|
|
||||||
if (mTileEntity.isClientSide() || mTileEntity.getMetaTileEntity() == null) return;
|
|
||||||
|
|
||||||
mOutputting = ((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bOutput;
|
|
||||||
mItemTransfer = ((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bItemTransfer;
|
|
||||||
mSeperatedInputs = ((GT_MetaTileEntity_BasicMachine)mTileEntity.getMetaTileEntity()).bSeperatedInputs;
|
|
||||||
|
|
||||||
@SuppressWarnings("rawtypes")
|
|
||||||
Iterator var2 = this.crafters.iterator();
|
|
||||||
while (var2.hasNext()) {
|
|
||||||
ICrafting var1 = (ICrafting)var2.next();
|
|
||||||
var1.sendProgressBarUpdate(this, 101, mOutputting?1:0);
|
|
||||||
var1.sendProgressBarUpdate(this, 102, mItemTransfer?1:0);
|
|
||||||
var1.sendProgressBarUpdate(this, 103, mSeperatedInputs?1:0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@SideOnly(Side.CLIENT)
|
|
||||||
public void updateProgressBar(int par1, int par2) {
|
|
||||||
super.updateProgressBar(par1, par2);
|
|
||||||
switch (par1) {
|
|
||||||
case 101: mOutputting = (par2 != 0); break;
|
|
||||||
case 102: mItemTransfer = (par2 != 0); break;
|
|
||||||
case 103: mSeperatedInputs = (par2 != 0); break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -37,9 +37,9 @@ public class GUI_UniversalMacerator extends GT_GUIContainerMetaTile_Machine {
|
||||||
int y = (height - ySize) / 2;
|
int y = (height - ySize) / 2;
|
||||||
drawTexturedModalRect(x, y, 0, 0, xSize, ySize);
|
drawTexturedModalRect(x, y, 0, 0, xSize, ySize);
|
||||||
if (mContainer != null) {
|
if (mContainer != null) {
|
||||||
if (((UniversalMacerator)mContainer).mOutputting) drawTexturedModalRect(x + 7, y + 62, 176, 18, 18, 18);
|
if (((UniversalMacerator)mContainer).mOutputting.get()) drawTexturedModalRect(x + 7, y + 62, 176, 18, 18, 18);
|
||||||
if (((UniversalMacerator)mContainer).mItemTransfer) drawTexturedModalRect(x + 25, y + 62, 176, 36, 18, 18);
|
if (((UniversalMacerator)mContainer).mItemTransfer.get()) drawTexturedModalRect(x + 25, y + 62, 176, 36, 18, 18);
|
||||||
if (((UniversalMacerator)mContainer).mSeperatedInputs) drawTexturedModalRect(x + 43, y + 62, 176, 54, 18, 18);
|
if (((UniversalMacerator)mContainer).mSeperatedInputs.get()) drawTexturedModalRect(x + 43, y + 62, 176, 54, 18, 18);
|
||||||
|
|
||||||
if (mContainer.mMaxProgressTime.get() > 0) {
|
if (mContainer.mMaxProgressTime.get() > 0) {
|
||||||
int tSize = 20, tProgress = Math.max(1, Math.min(tSize, (mContainer.mProgressTime.get()>0?1:0) + (mContainer.mProgressTime.get() * tSize) / mContainer.mMaxProgressTime.get())) % (tSize+1);
|
int tSize = 20, tProgress = Math.max(1, Math.min(tSize, (mContainer.mProgressTime.get()>0?1:0) + (mContainer.mProgressTime.get() * tSize) / mContainer.mMaxProgressTime.get())) % (tSize+1);
|
||||||
|
|
Loading…
Reference in a new issue