aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/tileentities
diff options
context:
space:
mode:
authorBlood-Asp <bloodasphendrik@gmail.com>2017-02-11 01:04:46 +0100
committerBlood-Asp <bloodasphendrik@gmail.com>2017-02-11 01:04:46 +0100
commitb6674c9d96775103322820665046a3d1db508e24 (patch)
treed41936aff74f36a8151317b498c540dedda5deec /src/main/java/gregtech/common/tileentities
parent5e19e7310f550f226bfbc04c792264e9f58c7217 (diff)
downloadGT5-Unofficial-b6674c9d96775103322820665046a3d1db508e24.tar.gz
GT5-Unofficial-b6674c9d96775103322820665046a3d1db508e24.tar.bz2
GT5-Unofficial-b6674c9d96775103322820665046a3d1db508e24.zip
Finish Cleanroom
Diffstat (limited to 'src/main/java/gregtech/common/tileentities')
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java1
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java172
2 files changed, 172 insertions, 1 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java
index bf58418246..e459c69adb 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java
@@ -32,7 +32,6 @@ import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.fluids.FluidStack;
-import sun.text.resources.es.CollationData_es;
public class GT_MetaTileEntity_AdvSeismicProspector extends GT_MetaTileEntity_BasicMachine {
boolean ready = false;
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java
new file mode 100644
index 0000000000..35ea5cdbe0
--- /dev/null
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Cleanroom.java
@@ -0,0 +1,172 @@
+package gregtech.common.tileentities.machines.multi;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Locale;
+
+import gregtech.api.GregTech_API;
+import gregtech.api.enums.Textures;
+import gregtech.api.gui.GT_GUIContainer_MultiMachine;
+import gregtech.api.interfaces.ITexture;
+import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicHull;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
+import gregtech.api.objects.GT_RenderedTexture;
+import gregtech.api.util.GT_Recipe;
+import gregtech.api.util.GT_Utility;
+import net.minecraft.block.Block;
+import net.minecraft.entity.player.InventoryPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraftforge.common.util.ForgeDirection;
+import net.minecraftforge.fluids.FluidStack;
+
+public class GT_MetaTileEntity_Cleanroom
+extends GT_MetaTileEntity_MultiBlockBase {
+private int mHeatingCapacity = 0;
+
+public GT_MetaTileEntity_Cleanroom(int aID, String aName, String aNameRegional) {
+super(aID, aName, aNameRegional);
+}
+
+public GT_MetaTileEntity_Cleanroom(String aName) {
+super(aName);
+}
+
+public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
+return new GT_MetaTileEntity_Cleanroom(this.mName);
+}
+
+public String[] getDescription() {
+return new String[]{
+ "Controller Block for the Cleanroom",
+ "Min(WxHxD): 3x3x3 (Hollow), Max(WxHxD): 15x15x15 (Hollow)",
+ "Controller (Top center), Walls Plascrete",
+ "Top besides contoller and coners filter casings",
+ "1 Reinforced Door",
+ "1x Energy Hatch, 1x Maintainance Hatch",
+ "up to 10 Machine Hull to transfer Items&Energy inside",
+ ""};
+}
+
+public boolean checkRecipe(ItemStack aStack) {
+ this.mEfficiencyIncrease = 1;
+ this.mMaxProgresstime = 100;
+ this.mEUt = 4;
+return true;
+}
+
+public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
+ int x=1;
+ int z=1;
+ int y=1;
+ int mDoorCount=0;
+ int mHullCount=0;
+ int mPlascreteCount=0;
+ for(int i = 1;i<8;i++){
+ Block tBlock = aBaseMetaTileEntity.getBlockOffset(i, 0, 0);
+ int tMeta = aBaseMetaTileEntity.getMetaIDOffset(i, 0, 0);
+ if(tBlock != GregTech_API.sBlockCasings3 || tMeta != 11){
+ if(tBlock ==GregTech_API.sBlockReinforced || tMeta == 2){
+ x=i;
+ z=i;
+ break;
+ }else{return false;}
+ }
+ }
+ for(int i = -1; i>-16;i--){
+ Block tBlock = aBaseMetaTileEntity.getBlockOffset(x, i, z);
+ int tMeta = aBaseMetaTileEntity.getMetaIDOffset(x, i, z);
+ if(tBlock != GregTech_API.sBlockReinforced || tMeta != 2){
+ y = i+1;
+ break;
+ }
+ }
+ if(y>-2){return false;}
+ for(int dX=-x;dX<x;dX++){
+ for(int dZ=-z;dZ<z;dZ++){
+ for(int dY=0;dY>=y;dY--){
+ if(dX==-x||dX==x||dY==-y||dY==y||dZ==-z||dZ==z){
+ Block tBlock = aBaseMetaTileEntity.getBlockOffset(dX, dY, dZ);
+ int tMeta = aBaseMetaTileEntity.getMetaIDOffset(dX, dY, dZ);
+ if(y==0){
+ if(dX==-x||dX==x||dZ==-z||dZ==z){
+ if(tBlock!=GregTech_API.sBlockReinforced||tMeta!=2){return false;}
+ }else if(dX==0&&dZ==0){
+ }else {
+ if(tBlock!=GregTech_API.sBlockCasings3||tMeta!=11){return false;}
+ }
+ }else if(tBlock==GregTech_API.sBlockReinforced&&tMeta==2){
+ mPlascreteCount++;
+ }else{
+ IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(dX, dY, dZ);
+ if((!addMaintenanceToMachineList(tTileEntity, 82)) && (!addEnergyInputToMachineList(tTileEntity, 82))){
+ if(tBlock instanceof ic2.core.block.BlockIC2Door){
+ mDoorCount++;
+ }else{
+ if (tTileEntity == null) {
+ {return false;}
+ }
+ IMetaTileEntity aMetaTileEntity = tTileEntity.getMetaTileEntity();
+ if (aMetaTileEntity == null) {return false;}
+ if (aMetaTileEntity instanceof GT_MetaTileEntity_BasicHull){mHullCount++;
+ }else {return false;}
+ }
+ }
+ }
+ }else{
+
+ }
+ }
+ }
+ }
+ if(mMaintenanceHatches.size()!=1||mEnergyHatches.size()!=1||mDoorCount!=2&&mHullCount<=10){return false;}
+return true;
+}
+
+public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
+if (aSide == 0 || aSide == 1) {
+ return new ITexture[]{new GT_RenderedTexture(Textures.BlockIcons.BLOCK_PLASCRETE), new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_TOP_CLEANROOM_ACTIVE : Textures.BlockIcons.OVERLAY_TOP_CLEANROOM)};
+
+}
+return new ITexture[]{new GT_RenderedTexture(Textures.BlockIcons.BLOCK_PLASCRETE)};
+}
+
+public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
+return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MultiblockDisplay.png");
+}
+
+public GT_Recipe.GT_Recipe_Map getRecipeMap() {
+return null;
+}
+
+public boolean isCorrectMachinePart(ItemStack aStack) {
+return true;
+}
+
+public boolean isFacingValid(byte aFacing) {
+return aFacing > 1;
+}
+
+public int getMaxEfficiency(ItemStack aStack) {
+return 10000;
+}
+
+public int getPollutionPerTick(ItemStack aStack) {
+return 0;
+}
+
+public int getDamageToComponent(ItemStack aStack) {
+return 0;
+}
+
+public int getAmountOfOutputs() {
+return 0;
+}
+
+public boolean explodesOnComponentBreak(ItemStack aStack) {
+return false;
+}
+} \ No newline at end of file