aboutsummaryrefslogtreecommitdiff
path: root/src/Java/miscutil/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/miscutil/core')
-rw-r--r--src/Java/miscutil/core/block/ModBlocks.java2
-rw-r--r--src/Java/miscutil/core/common/CommonProxy.java2
-rw-r--r--src/Java/miscutil/core/handler/COMPAT_IntermodStaging.java12
-rw-r--r--src/Java/miscutil/core/handler/GuiHandler.java22
-rw-r--r--src/Java/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java2
-rw-r--r--src/Java/miscutil/core/handler/events/UnbreakableBlockManager.java2
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechConduits.java8
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechEnergyBuffer.java8
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCentrifuge.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCokeOven.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialElectrolyzer.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMacerator.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMassFabricator.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialPlatePress.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialSinter.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialWiremill.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechIronBlastFurnace.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechRocketFuelGenerator.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechSafeBlock.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechSolarGenerators.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechSteamCondenser.java4
-rw-r--r--src/Java/miscutil/core/handler/registration/gregtech/GregtechSuperConductionPoint.java4
-rw-r--r--src/Java/miscutil/core/item/ModItems.java4
-rw-r--r--src/Java/miscutil/core/item/general/ItemCloakingDevice.java21
-rw-r--r--src/Java/miscutil/core/lib/CORE.java10
-rw-r--r--src/Java/miscutil/core/lib/LoadedMods.java4
-rw-r--r--src/Java/miscutil/core/recipe/RECIPES_GREGTECH.java2
-rw-r--r--src/Java/miscutil/core/recipe/RECIPES_LaserEngraver.java2
-rw-r--r--src/Java/miscutil/core/recipe/RECIPES_MachineComponents.java2
-rw-r--r--src/Java/miscutil/core/recipe/RECIPES_Machines.java6
-rw-r--r--src/Java/miscutil/core/recipe/RECIPE_Batteries.java2
-rw-r--r--src/Java/miscutil/core/recipe/RECIPE_CONSTANTS.java2
-rw-r--r--src/Java/miscutil/core/slots/SlotRTG.java25
-rw-r--r--src/Java/miscutil/core/xmod/forestry/HANDLER_FR.java34
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_AlvearyFrameBlock.java45
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_BlockAlveary.java274
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_TileAlveary.java199
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/IAlvearyComponentAdvanced.java28
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/ISidedFrameWearingInventory.java10
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/TileAlvearyFrameHousing.java301
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/CONTAINER_FrameHousing.java98
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/GUI_FrameHousing.java49
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/InventoryFrameHousing.java21
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/items/FR_ItemRegistry.java97
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/items/FR_StringUtil.java24
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/items/MB_FrameType.java119
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/items/MB_ItemFrame.java140
-rw-r--r--src/Java/miscutil/core/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java82
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/HANDLER_GT.java44
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/energy/IC2ElectricItem.java55
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/energy/IC2ElectricItemManager.java95
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechItemList.java221
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechOreDictNames.java39
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechOrePrefixes.java797
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechTextureSet.java144
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechTextures.java199
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechToolDictNames.java7
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_IndustrialCentrifuge.java38
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_IronBlastFurnace.java31
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_MultiMachine.java36
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SafeBlock.java123
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SolarGenerator.java80
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SteamCondenser.java97
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_IndustrialCentrifuge.java65
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_IronBlastFurnace.java30
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_MultiMachine.java64
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SafeBlock.java49
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SolarGenerator.java41
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SteamCondenser.java55
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/interfaces/GregtechItemContainer.java24
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java36
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_IconContainer.java21
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_ItemBehaviour.java41
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_OreRecipeRegistrator.java16
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_OreRecipeRegistrator_GT.java16
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_Texture.java20
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_ToolStats.java160
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_Generic_Item.java186
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem.java323
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem_Base.java559
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem_X32.java204
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaTool.java605
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_Base.java84
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_HardHammer.java127
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_Wrench.java149
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaCondensor.java165
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaEnergyBuffer.java338
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaPipeEntity_Cable.java236
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaPipeEntity_SuperConductor.java239
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaSafeBlock.java76
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaSuperConductorNodeBase.java297
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaPipeEntityBase_Cable.java291
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTileEntity.java67
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java828
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaBoilerBase.java328
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaSolarGenerator.java211
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechRocketFuelGeneratorBase.java263
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechBaseMetaTileEntityLossless.java1849
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaPipeEntity_BaseSuperConductor.java640
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLossless.java66
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLosslessBasicTank.java251
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLosslessTieredMachineBlock.java67
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/MetaTileEntityLossless.java865
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/machines/GregtechMetaSafeBlockBase.java350
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/creative/GregtechMetaCreativeEnergyBuffer.java269
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechFluid.java27
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechItemData.java130
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechMaterialStack.java42
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechRenderedTexture.java162
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java19
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/util/GregtechOreDictUnificator.java366
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/util/GregtechRecipe.java751
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/api/util/GregtechRecipeRegistrator.java339
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/Meta_GT_Proxy.java429
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks.java76
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingBlocksAbstract.java143
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingItems.java11
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaItemCasings1.java33
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaItemCasingsAbstract.java45
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/fluid/GregtechFluidHandler.java39
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/CasingTextureHandler.java66
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/TexturesGregtech58.java441
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/TexturesGregtech59.java442
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java163
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java39
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GT_MetaTileEntity_Boiler_Solar.java144
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityRocketFuelGenerator.java119
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntitySolarGenerator.java174
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntitySuperCondensor.java104
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialCentrifuge.java326
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialCokeOven.java272
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialElectrolyzer.java258
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialMacerator.java278
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialPlatePress.java204
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialSinter.java263
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialWireMill.java246
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIronBlastFurnace.java373
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityMassFabricator.java304
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java168
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_BaseMultiblockItem.java49
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java198
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_MaxEfficiencyMultiBlockItem.java27
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Block.java107
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/loaders/Processing_HotIngots.java23
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Ingot1.java68
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Plate1.java56
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Textures_Items.java10
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/recipes/GregtechRecipeAdder.java136
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/recipes/machines/RECIPEHANDLER_CokeOven.java46
-rw-r--r--src/Java/miscutil/core/xmod/gregtech/recipes/machines/RECIPEHANDLER_MatterFabricator.java45
-rw-r--r--src/Java/miscutil/core/xmod/growthcraft/HANDLER_GC.java28
-rw-r--r--src/Java/miscutil/core/xmod/growthcraft/booze/Register_Booze.java64
-rw-r--r--src/Java/miscutil/core/xmod/ic2/HANDLER_IC2.java28
-rw-r--r--src/Java/miscutil/core/xmod/ic2/item/IC2_ItemGradual.java41
-rw-r--r--src/Java/miscutil/core/xmod/ic2/item/IC2_ItemGradualInteger.java53
-rw-r--r--src/Java/miscutil/core/xmod/ic2/item/IC2_ItemIC2.java104
-rw-r--r--src/Java/miscutil/core/xmod/ic2/item/IC2_Items.java69
-rw-r--r--src/Java/miscutil/core/xmod/ic2/item/RotorBase.java99
-rw-r--r--src/Java/miscutil/core/xmod/ic2/item/RotorIridium.java121
-rw-r--r--src/Java/miscutil/core/xmod/ic2/recipe/RECIPE_IC2.java151
-rw-r--r--src/Java/miscutil/core/xmod/psychedelicraft/HANDLER_Psych.java27
-rw-r--r--src/Java/miscutil/core/xmod/psychedelicraft/fluids/PS_Fluids.java54
-rw-r--r--src/Java/miscutil/core/xmod/thermalfoundation/HANDLER_TF.java37
-rw-r--r--src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Block_Fluid_Cryotheum.java188
-rw-r--r--src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Block_Fluid_Pyrotheum.java181
-rw-r--r--src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Blocks.java26
-rw-r--r--src/Java/miscutil/core/xmod/thermalfoundation/fluid/TF_Fluids.java61
-rw-r--r--src/Java/miscutil/core/xmod/thermalfoundation/item/TF_Items.java79
-rw-r--r--src/Java/miscutil/core/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java62
169 files changed, 113 insertions, 23413 deletions
diff --git a/src/Java/miscutil/core/block/ModBlocks.java b/src/Java/miscutil/core/block/ModBlocks.java
index a59ba21bc7..ce4ad6c19e 100644
--- a/src/Java/miscutil/core/block/ModBlocks.java
+++ b/src/Java/miscutil/core/block/ModBlocks.java
@@ -5,7 +5,7 @@ import miscutil.core.block.general.LightGlass;
import miscutil.core.block.general.fluids.FluidRegistryHandler;
import miscutil.core.lib.CORE;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.common.blocks.GregtechMetaCasingBlocks;
+import miscutil.xmod.gregtech.common.blocks.GregtechMetaCasingBlocks;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraftforge.fluids.Fluid;
diff --git a/src/Java/miscutil/core/common/CommonProxy.java b/src/Java/miscutil/core/common/CommonProxy.java
index 6bad498027..eec65c0bb3 100644
--- a/src/Java/miscutil/core/common/CommonProxy.java
+++ b/src/Java/miscutil/core/common/CommonProxy.java
@@ -18,7 +18,7 @@ import miscutil.core.tileentities.ModTileEntities;
import miscutil.core.util.Utils;
import miscutil.core.util.debug.DEBUG_INIT;
import miscutil.core.util.player.PlayerCache;
-import miscutil.core.xmod.gregtech.common.Meta_GT_Proxy;
+import miscutil.xmod.gregtech.common.Meta_GT_Proxy;
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.MinecraftForge;
diff --git a/src/Java/miscutil/core/handler/COMPAT_IntermodStaging.java b/src/Java/miscutil/core/handler/COMPAT_IntermodStaging.java
index 12cb385604..b9bb097ba4 100644
--- a/src/Java/miscutil/core/handler/COMPAT_IntermodStaging.java
+++ b/src/Java/miscutil/core/handler/COMPAT_IntermodStaging.java
@@ -1,11 +1,11 @@
package miscutil.core.handler;
-import miscutil.core.xmod.forestry.HANDLER_FR;
-import miscutil.core.xmod.gregtech.HANDLER_GT;
-import miscutil.core.xmod.growthcraft.HANDLER_GC;
-import miscutil.core.xmod.ic2.HANDLER_IC2;
-import miscutil.core.xmod.psychedelicraft.HANDLER_Psych;
-import miscutil.core.xmod.thermalfoundation.HANDLER_TF;
+import miscutil.xmod.forestry.HANDLER_FR;
+import miscutil.xmod.gregtech.HANDLER_GT;
+import miscutil.xmod.growthcraft.HANDLER_GC;
+import miscutil.xmod.ic2.HANDLER_IC2;
+import miscutil.xmod.psychedelicraft.HANDLER_Psych;
+import miscutil.xmod.thermalfoundation.HANDLER_TF;
public class COMPAT_IntermodStaging {
diff --git a/src/Java/miscutil/core/handler/GuiHandler.java b/src/Java/miscutil/core/handler/GuiHandler.java
index a1a1ef98c1..b617ef645f 100644
--- a/src/Java/miscutil/core/handler/GuiHandler.java
+++ b/src/Java/miscutil/core/handler/GuiHandler.java
@@ -1,17 +1,17 @@
package miscutil.core.handler;
import miscutil.MiscUtils;
-import miscutil.core.container.Container_Charger;
import miscutil.core.gui.beta.Gui_ID_Registry;
import miscutil.core.gui.beta.MU_GuiId;
-import miscutil.core.gui.machine.GUI_Charger;
import miscutil.core.interfaces.IGuiManager;
import miscutil.core.lib.CORE;
-import miscutil.core.tileentities.machines.TileEntityCharger;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.forestry.bees.alveary.TileAlvearyFrameHousing;
-import miscutil.core.xmod.forestry.bees.alveary.gui.CONTAINER_FrameHousing;
-import miscutil.core.xmod.forestry.bees.alveary.gui.GUI_FrameHousing;
+import miscutil.xmod.forestry.bees.alveary.TileAlvearyFrameHousing;
+import miscutil.xmod.forestry.bees.alveary.gui.CONTAINER_FrameHousing;
+import miscutil.xmod.forestry.bees.alveary.gui.GUI_FrameHousing;
+import miscutil.xmod.ic2.block.RTGGenerator.TileEntityRTG;
+import miscutil.xmod.ic2.block.RTGGenerator.gui.CONTAINER_RadioThermalGenerator;
+import miscutil.xmod.ic2.block.RTGGenerator.gui.GUI_RadioThermalGenerator;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ChunkCoordinates;
@@ -21,8 +21,8 @@ import cpw.mods.fml.common.network.NetworkRegistry;
public class GuiHandler implements IGuiHandler {
- private static final int GUI1 = 0; //Nuclear Helium Gen.
- private static final int GUI2 = 1; //Energy Charger
+ private static final int GUI1 = 0; //Frame Alveary
+ private static final int GUI2 = 1; //RTG
public static void init(){
@@ -45,7 +45,7 @@ public class GuiHandler implements IGuiHandler {
}
}
else if (ID == GUI2){
- return new Container_Charger((TileEntityCharger)te, player);
+ return new CONTAINER_RadioThermalGenerator((TileEntityRTG)te, player);
}
@@ -66,8 +66,8 @@ public class GuiHandler implements IGuiHandler {
}
}
else if (ID == GUI2){
- Utils.LOG_WARNING("Opening Gui with Id: "+ID+" Charger");
- return new GUI_Charger((TileEntityCharger) te, player);
+ Utils.LOG_WARNING("Opening Gui with Id: "+ID+" RTG");
+ return new GUI_RadioThermalGenerator((TileEntityRTG) te, player);
}
}
return null;
diff --git a/src/Java/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java b/src/Java/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java
index dff067d9c7..ddf6372fed 100644
--- a/src/Java/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java
+++ b/src/Java/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java
@@ -8,7 +8,7 @@ import gregtech.api.metatileentity.BaseTileEntity;
import java.util.UUID;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.machines.GregtechMetaSafeBlockBase;
+import miscutil.xmod.gregtech.api.metatileentity.implementations.base.machines.GregtechMetaSafeBlockBase;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
diff --git a/src/Java/miscutil/core/handler/events/UnbreakableBlockManager.java b/src/Java/miscutil/core/handler/events/UnbreakableBlockManager.java
index 4309079d31..14d3d6b177 100644
--- a/src/Java/miscutil/core/handler/events/UnbreakableBlockManager.java
+++ b/src/Java/miscutil/core/handler/events/UnbreakableBlockManager.java
@@ -5,7 +5,7 @@ import gregtech.api.metatileentity.BaseMetaPipeEntity;
import gregtech.api.metatileentity.BaseMetaTileEntity;
import gregtech.api.metatileentity.BaseTileEntity;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaSafeBlock;
+import miscutil.xmod.gregtech.api.metatileentity.implementations.GregtechMetaSafeBlock;
import net.minecraft.block.Block;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechConduits.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechConduits.java
index ed65802d0d..e10780a11d 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechConduits.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechConduits.java
@@ -7,10 +7,10 @@ import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_OreDictUnificator;
import miscutil.core.lib.LoadedMods;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaPipeEntity_Cable;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaPipeEntity_SuperConductor;
+import miscutil.xmod.gregtech.api.enums.GregtechOrePrefixes;
+import miscutil.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
+import miscutil.xmod.gregtech.api.metatileentity.implementations.GregtechMetaPipeEntity_Cable;
+import miscutil.xmod.gregtech.api.metatileentity.implementations.GregtechMetaPipeEntity_SuperConductor;
import net.minecraft.item.ItemStack;
public class GregtechConduits {
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechEnergyBuffer.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechEnergyBuffer.java
index 8766afc097..21e74c1614 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechEnergyBuffer.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechEnergyBuffer.java
@@ -5,10 +5,10 @@ import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOreDictNames;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaEnergyBuffer;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.creative.GregtechMetaCreativeEnergyBuffer;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.enums.GregtechOreDictNames;
+import miscutil.xmod.gregtech.api.metatileentity.implementations.GregtechMetaEnergyBuffer;
+import miscutil.xmod.gregtech.api.metatileentity.implementations.creative.GregtechMetaCreativeEnergyBuffer;
public class GregtechEnergyBuffer
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCentrifuge.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCentrifuge.java
index 9475b213f2..6e0324966f 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCentrifuge.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCentrifuge.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialCentrifuge;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialCentrifuge;
public class GregtechIndustrialCentrifuge
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCokeOven.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCokeOven.java
index 208fb7883f..bd3d9f4d89 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCokeOven.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialCokeOven.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialCokeOven;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialCokeOven;
public class GregtechIndustrialCokeOven
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialElectrolyzer.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialElectrolyzer.java
index 98386cf4b0..c4ad9c122b 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialElectrolyzer.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialElectrolyzer.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialElectrolyzer;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialElectrolyzer;
public class GregtechIndustrialElectrolyzer
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMacerator.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMacerator.java
index ccd81e6dd2..fa3663fb81 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMacerator.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMacerator.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialMacerator;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialMacerator;
public class GregtechIndustrialMacerator
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMassFabricator.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMassFabricator.java
index 72bf99b6b5..cbb4be3115 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMassFabricator.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialMassFabricator.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityMassFabricator;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityMassFabricator;
public class GregtechIndustrialMassFabricator
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialPlatePress.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialPlatePress.java
index 87364565ea..4e25ff3475 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialPlatePress.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialPlatePress.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialPlatePress;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialPlatePress;
public class GregtechIndustrialPlatePress
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialSinter.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialSinter.java
index 0c0ffb8cbd..03ad7cce7f 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialSinter.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialSinter.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialSinter;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialSinter;
public class GregtechIndustrialSinter{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialWiremill.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialWiremill.java
index d5ba679edb..5672775a56 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialWiremill.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIndustrialWiremill.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialWireMill;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialWireMill;
public class GregtechIndustrialWiremill
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIronBlastFurnace.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIronBlastFurnace.java
index 8dea539053..d5271181f9 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechIronBlastFurnace.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechIronBlastFurnace.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIronBlastFurnace;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIronBlastFurnace;
public class GregtechIronBlastFurnace
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechRocketFuelGenerator.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechRocketFuelGenerator.java
index 01cf22e8b1..3a61884782 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechRocketFuelGenerator.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechRocketFuelGenerator.java
@@ -2,8 +2,8 @@ package miscutil.core.handler.registration.gregtech;
import miscutil.core.lib.LoadedMods;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.generators.GregtechMetaTileEntityRocketFuelGenerator;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.generators.GregtechMetaTileEntityRocketFuelGenerator;
public class GregtechRocketFuelGenerator {
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechSafeBlock.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechSafeBlock.java
index 99bb28e8c7..5def5e1a92 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechSafeBlock.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechSafeBlock.java
@@ -6,8 +6,8 @@ import gregtech.api.enums.OreDictNames;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaSafeBlock;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.metatileentity.implementations.GregtechMetaSafeBlock;
public class GregtechSafeBlock
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechSolarGenerators.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechSolarGenerators.java
index e4d9a36fe1..3c58d69209 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechSolarGenerators.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechSolarGenerators.java
@@ -3,8 +3,8 @@ package miscutil.core.handler.registration.gregtech;
import miscutil.core.lib.CORE.configSwitches;
import miscutil.core.lib.LoadedMods;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.generators.GregtechMetaTileEntitySolarGenerator;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.generators.GregtechMetaTileEntitySolarGenerator;
public class GregtechSolarGenerators
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechSteamCondenser.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechSteamCondenser.java
index 64c386dec0..7cd222205d 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechSteamCondenser.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechSteamCondenser.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaCondensor;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.metatileentity.implementations.GregtechMetaCondensor;
public class GregtechSteamCondenser
{
diff --git a/src/Java/miscutil/core/handler/registration/gregtech/GregtechSuperConductionPoint.java b/src/Java/miscutil/core/handler/registration/gregtech/GregtechSuperConductionPoint.java
index b7f5fb6157..d18a9ed3c3 100644
--- a/src/Java/miscutil/core/handler/registration/gregtech/GregtechSuperConductionPoint.java
+++ b/src/Java/miscutil/core/handler/registration/gregtech/GregtechSuperConductionPoint.java
@@ -1,8 +1,8 @@
package miscutil.core.handler.registration.gregtech;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.tileentities.generators.GregtechMetaTileEntitySuperCondensor;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.common.tileentities.generators.GregtechMetaTileEntitySuperCondensor;
public class GregtechSuperConductionPoint
{
diff --git a/src/Java/miscutil/core/item/ModItems.java b/src/Java/miscutil/core/item/ModItems.java
index 7406c3eca6..ef5dc581a7 100644
--- a/src/Java/miscutil/core/item/ModItems.java
+++ b/src/Java/miscutil/core/item/ModItems.java
@@ -166,6 +166,7 @@ public final class ModItems {
public static Item RfEuBattery;
public static Item itemPersonalCloakingDevice;
+ public static Item itemPersonalCloakingDeviceCharged;
public static Item itemPersonalHealingDevice;
@@ -350,7 +351,8 @@ public final class ModItems {
FuelRod_Uranium = new FuelRod_Base("itemFuelRod_Uranium", "Uranium", 2500, 2500);
FuelRod_Plutonium = new FuelRod_Base("itemFuelRod_Plutonium", "Plutonium", 5000, 5000);
RfEuBattery = new RF2EU_Battery();
- itemPersonalCloakingDevice = new ItemCloakingDevice();
+ itemPersonalCloakingDevice = new ItemCloakingDevice(0);
+ //itemPersonalCloakingDeviceCharged = new ItemCloakingDevice(0).set;
itemPersonalHealingDevice = new ItemHealingDevice();
//Registry
//GameRegistry.registerItem(FuelRod_Empty, "itemFuelRod_Empty");
diff --git a/src/Java/miscutil/core/item/general/ItemCloakingDevice.java b/src/Java/miscutil/core/item/general/ItemCloakingDevice.java
index b54bb08a87..afd2fc5c58 100644
--- a/src/Java/miscutil/core/item/general/ItemCloakingDevice.java
+++ b/src/Java/miscutil/core/item/general/ItemCloakingDevice.java
@@ -27,16 +27,21 @@ public class ItemCloakingDevice extends Item implements IElectricItem, IElectric
private final String unlocalizedName = "personalCloakingDevice";
private final ItemStack thisStack;
- private final static int maxValueEU = 8196*20*5*60;
+ private final static int maxValueEU = 10000*20*500;
protected double chargeEU = 0;
- public ItemCloakingDevice(){
+ public ItemCloakingDevice(double charge){
+ this.chargeEU = charge;
this.setCreativeTab(AddToCreativeTab.tabMachines);
this.setUnlocalizedName(unlocalizedName);
this.setMaxStackSize(1);
this.setTextureName(CORE.MODID + ":" + "personalCloakingDevice");
this.thisStack = UtilsItems.getSimpleStack(this);
- GameRegistry.registerItem(this, unlocalizedName);
+ this.charge(thisStack, charge, 3, true, false);
+ if (charge == 10000*20*500){
+ this.setDamage(thisStack, 13);
+ }
+ GameRegistry.registerItem(this, unlocalizedName+"-"+charge);
}
@Override
@@ -119,7 +124,7 @@ public class ItemCloakingDevice extends Item implements IElectricItem, IElectric
public int secondsLeft(ItemStack stack){
double r = 0;
- r = getCharge(stack)/(8196*20);
+ r = getCharge(stack)/(10000*20);
return (int) MathUtils.decimalRounding(r);
}
@@ -127,10 +132,10 @@ public class ItemCloakingDevice extends Item implements IElectricItem, IElectric
public void addInformation(ItemStack stack, EntityPlayer aPlayer, List list, boolean bool) {
list.add("");
list.add(EnumChatFormatting.GREEN+"Worn as a Belt within Baubles."+EnumChatFormatting.GRAY);
- list.add(EnumChatFormatting.GREEN+"Drains 8196Eu/t to provide invisibility."+EnumChatFormatting.GRAY);
+ list.add(EnumChatFormatting.GREEN+"Drains 10,000Eu/t to provide invisibility."+EnumChatFormatting.GRAY);
list.add("");
list.add(EnumChatFormatting.GOLD+"IC2/EU Information"+EnumChatFormatting.GRAY);
- list.add(EnumChatFormatting.GRAY+"Tier: ["+EnumChatFormatting.YELLOW+getTier(thisStack)+EnumChatFormatting.GRAY+"] Transfer Limit: ["+EnumChatFormatting.YELLOW+getTransferLimit(thisStack)+EnumChatFormatting.GRAY +"Eu/t]");
+ list.add(EnumChatFormatting.GRAY+"Tier: ["+EnumChatFormatting.YELLOW+getTier(thisStack)+EnumChatFormatting.GRAY+"] Input Limit: ["+EnumChatFormatting.YELLOW+getTransferLimit(thisStack)+EnumChatFormatting.GRAY +"Eu/t]");
list.add(EnumChatFormatting.GRAY+"Current Power: ["+EnumChatFormatting.YELLOW+(long) getCharge(stack)+EnumChatFormatting.GRAY+"Eu] ["+EnumChatFormatting.YELLOW+MathUtils.findPercentage(getCharge(stack), getMaxCharge(stack))+EnumChatFormatting.GRAY +"%]");
list.add(EnumChatFormatting.GRAY+"Time Remaining: ["+EnumChatFormatting.YELLOW+secondsLeft(stack)+ EnumChatFormatting.GRAY +" seconds]");
super.addInformation(stack, aPlayer, list, bool);
@@ -236,9 +241,9 @@ public class ItemCloakingDevice extends Item implements IElectricItem, IElectric
public void onWornTick(ItemStack arg0, EntityLivingBase arg1) {
//Utils.LOG_INFO("Trying to Tick Belt. 1");
if (!arg1.worldObj.isRemote){
- if (getCharge(arg0) >= 2048){
+ if (getCharge(arg0) >= 10000){
arg1.addPotionEffect(new PotionEffect(Potion.invisibility.id, 10, 2));
- discharge(arg0, 2048, 5, true, true, false);
+ discharge(arg0, 10000, 5, true, true, false);
}
else {
if (arg1.isPotionActive((Potion.invisibility))){
diff --git a/src/Java/miscutil/core/lib/CORE.java b/src/Java/miscutil/core/lib/CORE.java
index a02da08339..057d0f030a 100644
--- a/src/Java/miscutil/core/lib/CORE.java
+++ b/src/Java/miscutil/core/lib/CORE.java
@@ -5,9 +5,9 @@ import java.util.List;
import java.util.Map;
import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.IGregtech_RecipeAdder;
-import miscutil.core.xmod.gregtech.common.Meta_GT_Proxy;
+import miscutil.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
+import miscutil.xmod.gregtech.api.interfaces.internal.IGregtech_RecipeAdder;
+import miscutil.xmod.gregtech.common.Meta_GT_Proxy;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.common.config.Configuration;
@@ -18,8 +18,8 @@ public class CORE {
public static final String name = "GT++";
public static final String MODID = "miscutils";
- public static final String VERSION = "1.4.3.9-release";
- public static boolean DEBUG = true;
+ public static final String VERSION = "1.4.3.11-release";
+ public static boolean DEBUG = false;
public static final boolean LOAD_ALL_CONTENT = false;
public static final int GREG_FIRST_ID = 760;
public static Map PlayerCache;
diff --git a/src/Java/miscutil/core/lib/LoadedMods.java b/src/Java/miscutil/core/lib/LoadedMods.java
index 6b25b197fe..d79f727560 100644
--- a/src/Java/miscutil/core/lib/LoadedMods.java
+++ b/src/Java/miscutil/core/lib/LoadedMods.java
@@ -2,8 +2,8 @@ package miscutil.core.lib;
import miscutil.core.lib.CORE.configSwitches;
import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechTextures;
-import miscutil.core.xmod.gregtech.recipes.GregtechRecipeAdder;
+import miscutil.xmod.gregtech.api.enums.GregtechTextures;
+import miscutil.xmod.gregtech.recipes.GregtechRecipeAdder;
import cpw.mods.fml.common.Loader;
public class LoadedMods {
diff --git a/src/Java/miscutil/core/recipe/RECIPES_GREGTECH.java b/src/Java/miscutil/core/recipe/RECIPES_GREGTECH.java
index e27963150a..724c0a2cac 100644
--- a/src/Java/miscutil/core/recipe/RECIPES_GREGTECH.java
+++ b/src/Java/miscutil/core/recipe/RECIPES_GREGTECH.java
@@ -10,7 +10,7 @@ import miscutil.core.lib.CORE;
import miscutil.core.util.Utils;
import miscutil.core.util.fluid.FluidUtils;
import miscutil.core.util.item.UtilsItems;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
public class RECIPES_GREGTECH {
diff --git a/src/Java/miscutil/core/recipe/RECIPES_LaserEngraver.java b/src/Java/miscutil/core/recipe/RECIPES_LaserEngraver.java
index 8570a0d1b1..ba53337de3 100644
--- a/src/Java/miscutil/core/recipe/RECIPES_LaserEngraver.java
+++ b/src/Java/miscutil/core/recipe/RECIPES_LaserEngraver.java
@@ -7,7 +7,7 @@ import gregtech.api.enums.OrePrefixes;
import gregtech.api.interfaces.IOreRecipeRegistrator;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Utility;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
import net.minecraft.item.ItemStack;
public class RECIPES_LaserEngraver implements IOreRecipeRegistrator {
diff --git a/src/Java/miscutil/core/recipe/RECIPES_MachineComponents.java b/src/Java/miscutil/core/recipe/RECIPES_MachineComponents.java
index 4625263eee..9f9716fbbb 100644
--- a/src/Java/miscutil/core/recipe/RECIPES_MachineComponents.java
+++ b/src/Java/miscutil/core/recipe/RECIPES_MachineComponents.java
@@ -9,7 +9,7 @@ import gregtech.api.util.GT_OreDictUnificator;
import miscutil.core.lib.CORE;
import miscutil.core.util.Utils;
import miscutil.core.util.recipe.UtilsRecipe;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
public class RECIPES_MachineComponents {
diff --git a/src/Java/miscutil/core/recipe/RECIPES_Machines.java b/src/Java/miscutil/core/recipe/RECIPES_Machines.java
index dc1f3caabc..55584cf2ac 100644
--- a/src/Java/miscutil/core/recipe/RECIPES_Machines.java
+++ b/src/Java/miscutil/core/recipe/RECIPES_Machines.java
@@ -6,9 +6,9 @@ import miscutil.core.lib.LoadedMods;
import miscutil.core.util.Utils;
import miscutil.core.util.item.UtilsItems;
import miscutil.core.util.recipe.UtilsRecipe;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.enums.GregtechOrePrefixes;
+import miscutil.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
import net.minecraft.item.ItemStack;
public class RECIPES_Machines {
diff --git a/src/Java/miscutil/core/recipe/RECIPE_Batteries.java b/src/Java/miscutil/core/recipe/RECIPE_Batteries.java
index 9764e4d590..fcd3993745 100644
--- a/src/Java/miscutil/core/recipe/RECIPE_Batteries.java
+++ b/src/Java/miscutil/core/recipe/RECIPE_Batteries.java
@@ -4,7 +4,7 @@ import gregtech.api.enums.ItemList;
import miscutil.core.lib.LoadedMods;
import miscutil.core.util.item.UtilsItems;
import miscutil.core.util.recipe.UtilsRecipe;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
import net.minecraft.item.ItemStack;
public class RECIPE_Batteries {
diff --git a/src/Java/miscutil/core/recipe/RECIPE_CONSTANTS.java b/src/Java/miscutil/core/recipe/RECIPE_CONSTANTS.java
index 9bb1b24bd8..569cd8cf15 100644
--- a/src/Java/miscutil/core/recipe/RECIPE_CONSTANTS.java
+++ b/src/Java/miscutil/core/recipe/RECIPE_CONSTANTS.java
@@ -2,7 +2,7 @@ package miscutil.core.recipe;
import miscutil.core.lib.CORE;
import miscutil.core.util.item.UtilsItems;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
+import miscutil.xmod.gregtech.api.enums.GregtechItemList;
import net.minecraft.item.ItemStack;
public class RECIPE_CONSTANTS {
diff --git a/src/Java/miscutil/core/slots/SlotRTG.java b/src/Java/miscutil/core/slots/SlotRTG.java
new file mode 100644
index 0000000000..b653cc62d1
--- /dev/null
+++ b/src/Java/miscutil/core/slots/SlotRTG.java
@@ -0,0 +1,25 @@
+package miscutil.core.slots;
+
+import ic2.core.Ic2Items;
+import net.minecraft.inventory.IInventory;
+import net.minecraft.inventory.Slot;
+import net.minecraft.item.ItemStack;
+
+public class SlotRTG extends Slot{
+
+ public SlotRTG(IInventory inventory, int x, int y, int z) {
+ super(inventory, x, y, z);
+
+ }
+
+ @Override
+ public boolean isItemValid(ItemStack itemstack) {
+ return itemstack.getItem().getClass() == Ic2Items.RTGPellets.getItem().getClass();
+ }
+
+ @Override
+ public int getSlotStackLimit() {
+ return 1;
+ }
+
+}
diff --git a/src/Java/miscutil/core/xmod/forestry/HANDLER_FR.java b/src/Java/miscutil/core/xmod/forestry/HANDLER_FR.java
deleted file mode 100644
index 8f5426e1fa..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/HANDLER_FR.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package miscutil.core.xmod.forestry;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.lib.LoadedMods;
-import miscutil.core.xmod.forestry.bees.alveary.TileAlvearyFrameHousing;
-import miscutil.core.xmod.forestry.bees.items.FR_ItemRegistry;
-import miscutil.core.xmod.forestry.bees.recipe.FR_Gregtech_Recipes;
-import cpw.mods.fml.common.registry.GameRegistry;
-
-public class HANDLER_FR {
-
- public static void preInit(){
- if (LoadedMods.Forestry){
- FR_ItemRegistry.Register();
- if (CORE.configSwitches.enableCustomAlvearyBlocks){
- GameRegistry.registerTileEntity(TileAlvearyFrameHousing.class, "FrameHousing");
- }
- //FR_BlockRegistryApiculture.RegistryApiculture();
- }
- }
-
- public static void Init(){
- if (LoadedMods.Forestry){
- //FR_TileHandler.init();
- //new FR_GuiIDRegistry();
- }
- }
-
- public static void postInit(){
- if (LoadedMods.Forestry){
- FR_Gregtech_Recipes.registerItems();
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_AlvearyFrameBlock.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_AlvearyFrameBlock.java
deleted file mode 100644
index d8fb9827de..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_AlvearyFrameBlock.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary;
-
-import net.minecraft.util.ChunkCoordinates;
-
-import com.mojang.authlib.GameProfile;
-
-import forestry.api.multiblock.IAlvearyComponent;
-import forestry.api.multiblock.IMultiblockComponent;
-import forestry.api.multiblock.IMultiblockController;
-import forestry.api.multiblock.IMultiblockLogicAlveary;
-
-public class FR_AlvearyFrameBlock implements IAlvearyComponent, IMultiblockComponent{
-
- @Override
- public ChunkCoordinates getCoordinates() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public GameProfile getOwner() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public void onMachineAssembled(IMultiblockController arg0,
- ChunkCoordinates arg1, ChunkCoordinates arg2) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void onMachineBroken() {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public IMultiblockLogicAlveary getMultiblockLogic() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_BlockAlveary.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_BlockAlveary.java
deleted file mode 100644
index ff08464405..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_BlockAlveary.java
+++ /dev/null
@@ -1,274 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import miscutil.MiscUtils;
-import miscutil.core.creative.AddToCreativeTab;
-import net.minecraft.block.Block;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.IIcon;
-import net.minecraft.world.IBlockAccess;
-import net.minecraft.world.World;
-import cpw.mods.fml.common.registry.LanguageRegistry;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import forestry.apiculture.MaterialBeehive;
-import forestry.apiculture.multiblock.TileAlvearyPlain;
-import forestry.core.blocks.BlockStructure;
-import forestry.core.render.TextureManager;
-
-public class FR_BlockAlveary extends BlockStructure
-{
-
- public static enum Type
- {
- PLAIN,
- ERROR,
- FRAME,
- MUTATOR,
-
- //Placeholder Values
- HEATER, HYGRO, STABILIZER, SIEVE;
-
- public static final Type[] VALUES = values();
-
- private Type() {}
- }
-
- public FR_BlockAlveary()
- {
- super(new MaterialBeehive(false));
- setHardness(1.0F);
- setCreativeTab(AddToCreativeTab.tabBlock);
- setHarvestLevel("axe", 0);
-
- }
-
- @Override
- public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float lx, float ly, float lz)
- {
- if (world.isRemote) return true;
-
- TileEntity te = world.getTileEntity(x, y, z);
- if (te != null && te instanceof TileAlvearyFrameHousing)
- {
- player.openGui(MiscUtils.instance, 0, world, x, y, z);
- return true;
- }
- /*else if (te != null && te instanceof TileAlvearyFrameHousing)
- {
- player.openGui(MiscUtils.instance, 0, world, x, y, z);
- return true;
- }*/
- return false;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public void getSubBlocks(Item item, CreativeTabs tab, List list)
- {
- for (int i = 0; i < 4; i++) {
- if (i != 1 && i != 0) {
- list.add(new ItemStack(item, 1, i));
- }
- }
- }
-
- @Override
- public int getRenderType()
- {
- return 0;
- }
-
- @Override
- public boolean renderAsNormalBlock()
- {
- return true;
- }
-
- @Override
- public ArrayList<ItemStack> getDrops(World world, int x, int y, int z, int metadata, int fortune)
- {
- ArrayList<ItemStack> drop = new ArrayList<ItemStack>();
- drop.add(new ItemStack(this, 1, metadata != 1 ? metadata : 0));
- return drop;
- }
-
- @Override
- public int getDamageValue(World world, int x, int y, int z)
- {
- int meta = world.getBlockMetadata(x, y, z);
- return meta != 1 ? meta : 0;
- }
-
- @Override
- public TileEntity createTileEntity(World world, int metadata)
- {
- if ((metadata < 0) || (metadata > Type.VALUES.length)) {
- return null;
- }
-
-
-
- Type type = Type.VALUES[metadata];
- switch (type)
- {
- case FRAME:
- LanguageRegistry.addName(this, "Alveary Frame Housing");
- case MUTATOR:
- LanguageRegistry.addName(this, "Alveary Mutator Block");
- case ERROR:
- LanguageRegistry.addName(this, "Invalid Alveary Block");
- default:
- LanguageRegistry.addName(this, "Unnamed Alveary Block");
- }
- switch (type)
- {
- case FRAME:
- return new TileAlvearyFrameHousing();
- case MUTATOR:
- return new TileAlvearyPlain();
- case ERROR:
- return new TileAlvearyPlain();
- default:
- return new TileAlvearyPlain();
- }
- }
-
- @Override
- public Block setBlockName(String name) {
- //int meta = this.
- return super.setBlockName(name);
- }
-
- @Override
- public TileEntity createNewTileEntity(World world, int meta)
- {
- return createTileEntity(world, meta);
- }
-
- /* ICONS */
- public static final int PLAIN = 0;
- public static final int ENTRANCE = 1;
- public static final int BOTTOM = 2;
- public static final int LEFT = 3;
- public static final int RIGHT = 4;
- public static final int ALVEARY_FRAME_OFF = 5;
- public static final int ALVEARY_FRAME_ON = 6;
- public static final int ALVEARY_MUTATOR_OFF = 7;
- public static final int ALVEARY_MUTATOR_ON = 8;
- @SideOnly(Side.CLIENT)
- private IIcon[] icons;
- @SideOnly(Side.CLIENT)
- @Override
- public void registerBlockIcons(IIconRegister register) {
- icons = new IIcon[9];
- icons[0] = TextureManager.registerTex(register, "apiculture/alveary.plain");
- icons[1] = TextureManager.registerTex(register, "apiculture/alveary.entrance");
- icons[2] = TextureManager.registerTex(register, "apiculture/alveary.bottom");
- icons[3] = TextureManager.registerTex(register, "apiculture/alveary.left");
- icons[4] = TextureManager.registerTex(register, "apiculture/alveary.right");
- icons[5] = TextureManager.registerTex(register, "apiculture/alveary.framehousing.off");
- icons[6] = TextureManager.registerTex(register, "apiculture/alveary.framehousing.on");
- icons[7] = TextureManager.registerTex(register, "apiculture/alveary.mutator.off");
- icons[8] = TextureManager.registerTex(register, "apiculture/alveary.mutator.on");
- }
- @SideOnly(Side.CLIENT)
- @Override
- public IIcon getIcon(int side, int metadata) {
- if ((metadata <= 1
- || metadata == Type.FRAME.ordinal() || metadata == Type.MUTATOR.ordinal())
- && (side == 1 || side == 0)) {
- return icons[BOTTOM];
- }
- Type type = Type.VALUES[metadata];
- switch (type) {
- case ERROR:
- return icons[PLAIN];
- case FRAME:
- return icons[ALVEARY_FRAME_OFF];
- case MUTATOR:
- return icons[ALVEARY_MUTATOR_OFF];
- case HEATER:
- return icons[ALVEARY_MUTATOR_OFF];
- case HYGRO:
- return icons[ALVEARY_MUTATOR_OFF];
- case STABILIZER:
- return icons[PLAIN];
- case SIEVE:
- return icons[PLAIN];
- default:
- return null;
- }
- }
- @SideOnly(Side.CLIENT)
- @Override
- public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) {
- int meta = world.getBlockMetadata(x, y, z);
- if (meta == 1) {
- return this.getIcon(side, meta);
- } else if (meta > 1) {
- return getBlockTextureFromSideAndTile(world, x, y, z, side);
- }
- Block blockXP = world.getBlock(x + 1, y, z);
- Block blockXM = world.getBlock(x - 1, y, z);
- if (blockXP == this && blockXM != this) {
- if (world.getBlockMetadata(x + 1, y, z) == 1) {
- if (world.getBlock(x, y, z + 1) != this) {
- return switchForSide(42, side);
- }
- return switchForSide(41, side);
- }
- return this.getIcon(side, meta);
- } else if (blockXP != this && blockXM == this) {
- if (world.getBlockMetadata(x - 1, y, z) == 1) {
- if (world.getBlock(x, y, z + 1) != this) {
- return switchForSide(41, side);
- }
- return switchForSide(42, side);
- }
- return this.getIcon(side, meta);
- }
- return this.getIcon(side, meta);
- }
- @SideOnly(Side.CLIENT)
- private IIcon getBlockTextureFromSideAndTile(IBlockAccess world, int x, int y, int z, int side) {
- TileEntity tile = world.getTileEntity(x, y, z);
- if (!(tile instanceof FR_TileAlveary)) {
- return getIcon(side, 0);
- }
- return icons[((FR_TileAlveary) tile).getIcon(side)];
- }
- @SideOnly(Side.CLIENT)
- private IIcon switchForSide(int textureId, int side) {
- if (side == 4 || side == 5) {
- if (textureId == 41) {
- return icons[LEFT];
- }
- return icons[RIGHT];
- } else if (textureId == 41) {
- return icons[RIGHT];
- } else {
- return icons[LEFT];
- }
- }
- @Override
- public void onNeighborBlockChange(World world, int x, int y, int z, Block block) {
- super.onNeighborBlockChange(world, x, y, z, block);
- TileEntity tileEntity = world.getTileEntity(x, y, z);
- if (tileEntity instanceof FR_TileAlveary) {
- FR_TileAlveary tileAlveary = (FR_TileAlveary) tileEntity;
- // We must check that the slabs on top were not removed
- tileAlveary.getMultiblockLogic().getController().reassemble();
- }
- }
- public ItemStack get(Type type) {
- return new ItemStack(this, 1, type.ordinal());
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_TileAlveary.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_TileAlveary.java
deleted file mode 100644
index cae1aaba5e..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/FR_TileAlveary.java
+++ /dev/null
@@ -1,199 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary;
-
-import java.io.IOException;
-import java.util.List;
-
-import net.minecraft.util.ChunkCoordinates;
-import net.minecraft.util.Vec3;
-import net.minecraft.world.biome.BiomeGenBase;
-import forestry.api.apiculture.IBeeHousing;
-import forestry.api.apiculture.IBeeHousingInventory;
-import forestry.api.apiculture.IBeeListener;
-import forestry.api.apiculture.IBeeModifier;
-import forestry.api.apiculture.IBeekeepingLogic;
-import forestry.api.core.EnumHumidity;
-import forestry.api.core.EnumTemperature;
-import forestry.api.core.IErrorLogic;
-import forestry.api.multiblock.IAlvearyComponent;
-import forestry.api.multiblock.IMultiblockController;
-import forestry.apiculture.multiblock.MultiblockLogicAlveary;
-import forestry.core.access.EnumAccess;
-import forestry.core.access.IAccessHandler;
-import forestry.core.access.IRestrictedAccess;
-import forestry.core.config.Config;
-import forestry.core.gui.IGuiHandlerForestry;
-import forestry.core.gui.IHintSource;
-import forestry.core.inventory.IInventoryAdapter;
-import forestry.core.multiblock.MultiblockTileEntityForestry;
-import forestry.core.network.DataInputStreamForestry;
-import forestry.core.network.DataOutputStreamForestry;
-import forestry.core.network.IStreamableGui;
-import forestry.core.tiles.IClimatised;
-import forestry.core.tiles.ITitled;
-
-public abstract class FR_TileAlveary
-extends MultiblockTileEntityForestry<MultiblockLogicAlveary>
-implements IBeeHousing, IAlvearyComponent, IRestrictedAccess, IStreamableGui, ITitled, IClimatised, IHintSource, IGuiHandlerForestry
-{
- private final String unlocalizedTitle;
-
- protected FR_TileAlveary()
- {
- this(FR_BlockAlveary.Type.ERROR);
- }
-
- protected FR_TileAlveary(FR_BlockAlveary.Type type)
- {
- super(new MultiblockLogicAlveary());
- this.unlocalizedTitle = ("advanced.tile.for.alveary." + type.ordinal() + ".name");
-
- }
-
- public int getIcon(int side)
- {
- return 0;
- }
-
- @Override
- public void onMachineAssembled(IMultiblockController multiblockController, ChunkCoordinates minCoord, ChunkCoordinates maxCoord)
- {
- if (this.worldObj.isRemote) {
- this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord, this.zCoord);
- }
- this.worldObj.notifyBlocksOfNeighborChange(this.xCoord, this.yCoord, this.zCoord, getBlockType());
- markDirty();
- }
-
- @Override
- public void onMachineBroken()
- {
- if (this.worldObj.isRemote) {
- this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord, this.zCoord);
- }
- this.worldObj.notifyBlocksOfNeighborChange(this.xCoord, this.yCoord, this.zCoord, getBlockType());
- markDirty();
- }
-
- @Override
- public BiomeGenBase getBiome()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBiome();
- }
-
- @Override
- public Iterable<IBeeModifier> getBeeModifiers()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBeeModifiers();
- }
-
- @Override
- public Iterable<IBeeListener> getBeeListeners()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBeeListeners();
- }
-
- @Override
- public IBeeHousingInventory getBeeInventory()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBeeInventory();
- }
-
- @Override
- public IBeekeepingLogic getBeekeepingLogic()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBeekeepingLogic();
- }
-
- @Override
- public Vec3 getBeeFXCoordinates()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBeeFXCoordinates();
- }
-
- @Override
- public EnumTemperature getTemperature()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getTemperature();
- }
-
- @Override
- public EnumHumidity getHumidity()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getHumidity();
- }
-
- @Override
- public int getBlockLightValue()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBlockLightValue();
- }
-
- @Override
- public boolean canBlockSeeTheSky()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().canBlockSeeTheSky();
- }
-
- @Override
- public IErrorLogic getErrorLogic()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getErrorLogic();
- }
-
- @Override
- public IAccessHandler getAccessHandler()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getAccessHandler();
- }
-
- @Override
- public void onSwitchAccess(EnumAccess oldAccess, EnumAccess newAccess)
- {
- ((MultiblockLogicAlveary)getMultiblockLogic()).getController().onSwitchAccess(oldAccess, newAccess);
- }
-
- @Override
- public IInventoryAdapter getInternalInventory()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getInternalInventory();
- }
-
- @Override
- public String getUnlocalizedTitle()
- {
- return this.unlocalizedTitle;
- }
-
- @Override
- public List<String> getHints()
- {
- return Config.hints.get("apiary");
- }
-
- @Override
- public float getExactTemperature()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getExactTemperature();
- }
-
- @Override
- public float getExactHumidity()
- {
- return ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getExactHumidity();
- }
-
- @Override
- public void writeGuiData(DataOutputStreamForestry data)
- throws IOException
- {
- ((MultiblockLogicAlveary)getMultiblockLogic()).getController().writeGuiData(data);
- }
-
- @Override
- public void readGuiData(DataInputStreamForestry data)
- throws IOException
- {
- ((MultiblockLogicAlveary)getMultiblockLogic()).getController().readGuiData(data);
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/IAlvearyComponentAdvanced.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/IAlvearyComponentAdvanced.java
deleted file mode 100644
index 46b65842b1..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/IAlvearyComponentAdvanced.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary;
-
-import forestry.api.apiculture.IBeeModifier;
-import forestry.api.core.IClimateControlled;
-import forestry.api.multiblock.IMultiblockComponent;
-import forestry.api.multiblock.IMultiblockLogicAlveary;
-
-public abstract interface IAlvearyComponentAdvanced<T extends IMultiblockLogicAlveary>
-extends IMultiblockComponent
-{
- @Override
- public abstract T getMultiblockLogic();
-
-
- public static abstract interface FrameHouse
- extends IAlvearyComponentAdvanced
- {
- public abstract void changeClimate(int paramInt, IClimateControlled paramIClimateControlled);
- }
-
-
- public static abstract interface BeeModifier
- extends IAlvearyComponentAdvanced
- {
- public abstract IBeeModifier getBeeModifier();
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/ISidedFrameWearingInventory.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/ISidedFrameWearingInventory.java
deleted file mode 100644
index f618e4f77b..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/ISidedFrameWearingInventory.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary;
-
-import net.minecraft.inventory.ISidedInventory;
-import forestry.api.apiculture.IBeeHousing;
-
-public abstract interface ISidedFrameWearingInventory
- extends ISidedInventory
-{
- public abstract void wearOutFrames(IBeeHousing paramIBeeHousing, int paramInt);
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/TileAlvearyFrameHousing.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/TileAlvearyFrameHousing.java
deleted file mode 100644
index 1500e7dcef..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/TileAlvearyFrameHousing.java
+++ /dev/null
@@ -1,301 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Stack;
-
-import miscutil.core.xmod.forestry.bees.alveary.gui.CONTAINER_FrameHousing;
-import miscutil.core.xmod.forestry.bees.alveary.gui.GUI_FrameHousing;
-import miscutil.core.xmod.forestry.bees.alveary.gui.InventoryFrameHousing;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.inventory.IInventory;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.nbt.NBTTagList;
-import forestry.api.apiculture.BeeManager;
-import forestry.api.apiculture.IBee;
-import forestry.api.apiculture.IBeeHousing;
-import forestry.api.apiculture.IBeeModifier;
-import forestry.api.apiculture.IBeekeepingMode;
-import forestry.api.apiculture.IHiveFrame;
-import forestry.api.multiblock.IAlvearyComponent;
-import forestry.apiculture.ApiaryBeeModifier;
-import forestry.apiculture.multiblock.MultiblockLogicAlveary;
-import forestry.apiculture.network.packets.PacketActiveUpdate;
-import forestry.apiculture.worldgen.Hive;
-import forestry.apiculture.worldgen.HiveDecorator;
-import forestry.apiculture.worldgen.HiveDescriptionSwarmer;
-import forestry.core.inventory.IInventoryAdapter;
-import forestry.core.inventory.wrappers.IInvSlot;
-import forestry.core.inventory.wrappers.InventoryIterator;
-import forestry.core.proxy.Proxies;
-import forestry.core.tiles.IActivatable;
-import forestry.core.utils.ItemStackUtil;
-
-public class TileAlvearyFrameHousing
-extends FR_TileAlveary
-implements ISidedFrameWearingInventory, IActivatable, IAlvearyComponent.Active, IAlvearyComponent.BeeModifier
-{
- private final InventoryFrameHousing inventory;
- private final Stack<ItemStack> pendingSpawns = new Stack<ItemStack>();
- private boolean active;
-
- public TileAlvearyFrameHousing()
- {
- super(FR_BlockAlveary.Type.FRAME);
- this.inventory = new InventoryFrameHousing(this);
-
- }
-
- @Override
- public IInventoryAdapter getInternalInventory()
- {
- return this.inventory;
- }
-
- @Override
- public boolean allowsAutomation()
- {
- return true;
- }
-
- @Override
- public void updateServer(int tickCount)
- {
-
- if (getInternalInventory() == null) {
- return;
- }
-
- if (this.inventory.getStackInSlot(0) != null)
- {
- setActive(true);
- if (tickCount % 1000 == 0) {
- wearOutFrames(this, 1);
- }
- }
- else
- {
- setActive(false);
- }
- if (tickCount % 500 != 0) {
- return;
- }
-
- }
-
- @Override
- public void updateClient(int tickCount) {}
-
- private ItemStack getPrincessStack()
- {
- ItemStack princessStack = ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBeeInventory().getQueen();
- if (BeeManager.beeRoot.isMated(princessStack)) {
- return princessStack;
- }
- return null;
- }
-
- private int consumeInducerAndGetChance()
- {
- if (getInternalInventory() == null) {
- return 0;
- }
- for (Iterator<?> i$ = InventoryIterator.getIterable(getInternalInventory()).iterator(); i$.hasNext();)
- {
- IInvSlot slot = (IInvSlot)i$.next();
- ItemStack stack = slot.getStackInSlot();
- for (Map.Entry<ItemStack, Integer> entry : BeeManager.inducers.entrySet()) {
- if (ItemStackUtil.isIdenticalItem((ItemStack)entry.getKey(), stack))
- {
- slot.decreaseStackInSlot();
- return ((Integer)entry.getValue()).intValue();
- }
- }
- }
- IInvSlot slot;
- ItemStack stack;
- return 0;
- }
-
- private void trySpawnSwarm()
- {
- ItemStack toSpawn = (ItemStack)this.pendingSpawns.peek();
- HiveDescriptionSwarmer hiveDescription = new HiveDescriptionSwarmer(new ItemStack[] { toSpawn });
- Hive hive = new Hive(hiveDescription);
-
- int chunkX = (this.xCoord + this.worldObj.rand.nextInt(80) - 40) / 16;
- int chunkZ = (this.zCoord + this.worldObj.rand.nextInt(80) - 40) / 16;
- if (HiveDecorator.genHive(this.worldObj, this.worldObj.rand, chunkX, chunkZ, hive)) {
- this.pendingSpawns.pop();
- }
- }
-
- @Override
- protected void encodeDescriptionPacket(NBTTagCompound packetData)
- {
- super.encodeDescriptionPacket(packetData);
- packetData.setBoolean("Active", this.active);
- }
-
- @Override
- protected void decodeDescriptionPacket(NBTTagCompound packetData)
- {
- super.decodeDescriptionPacket(packetData);
- setActive(packetData.getBoolean("Active"));
- }
-
- @Override
- public int getIcon(int side)
- {
- if ((side == 0) || (side == 1)) {
- return 2;
- }
- if (this.active) {
- return 6;
- }
- return 5;
- }
-
- @Override
- public void readFromNBT(NBTTagCompound nbttagcompound)
- {
- super.readFromNBT(nbttagcompound);
- setActive(nbttagcompound.getBoolean("Active"));
-
- NBTTagList nbttaglist = nbttagcompound.getTagList("PendingSpawns", 10);
- for (int i = 0; i < nbttaglist.tagCount(); i++)
- {
- NBTTagCompound nbttagcompound1 = nbttaglist.getCompoundTagAt(i);
- this.pendingSpawns.add(ItemStack.loadItemStackFromNBT(nbttagcompound1));
- }
- }
-
- @Override
- public void writeToNBT(NBTTagCompound nbttagcompound)
- {
- super.writeToNBT(nbttagcompound);
- nbttagcompound.setBoolean("Active", this.active);
-
- NBTTagList nbttaglist = new NBTTagList();
- ItemStack[] offspring = (ItemStack[])this.pendingSpawns.toArray(new ItemStack[this.pendingSpawns.size()]);
- for (int i = 0; i < offspring.length; i++) {
- if (offspring[i] != null)
- {
- NBTTagCompound nbttagcompound1 = new NBTTagCompound();
- nbttagcompound1.setByte("Slot", (byte)i);
- offspring[i].writeToNBT(nbttagcompound1);
- nbttaglist.appendTag(nbttagcompound1);
- }
- }
- nbttagcompound.setTag("PendingSpawns", nbttaglist);
- }
-
- @Override
- public boolean isActive()
- {
- return this.active;
- }
-
- @Override
- public void setActive(boolean active)
- {
- if (this.active == active) {
- return;
- }
- this.active = active;
- if (!this.worldObj.isRemote) {
- Proxies.net.sendNetworkPacket(new PacketActiveUpdate(this), this.worldObj);
- }
- }
-
- @Override
- public Object getGui(EntityPlayer player, int data)
- {
- return new GUI_FrameHousing(this, player);
- }
-
- @Override
- public Object getContainer(EntityPlayer player, int data)
- {
- return new CONTAINER_FrameHousing(this, player);
- }
-
- private final IBeeModifier beeModifier = new ApiaryBeeModifier();
- //private final IBeeListener beeListener = new ApiaryBeeListener(this);
-
- @Override
- public Collection<IBeeModifier> getBeeModifiers()
- {
- List<IBeeModifier> beeModifiers = new ArrayList<IBeeModifier>();
-
- beeModifiers.add(this.beeModifier);
- for (IHiveFrame frame : getFrames(this.inventory)) {
- beeModifiers.add(frame.getBeeModifier());
- }
- return beeModifiers;
- }
-
- public Collection<IHiveFrame> getFrames(IInventory inventory)
- {
- Collection<IHiveFrame> hiveFrames = new ArrayList<IHiveFrame>(inventory.getSizeInventory());
- for (int i = 0; i < inventory.getSizeInventory(); i++)
- {
- ItemStack stackInSlot = getStackInSlot(i);
- if (stackInSlot != null)
- {
- Item itemInSlot = stackInSlot.getItem();
- if ((itemInSlot instanceof IHiveFrame)) {
- hiveFrames.add((IHiveFrame)itemInSlot);
- }
- }
- }
- return hiveFrames;
- }
-
- @Override
- public IBeeModifier getBeeModifier() {
- List<IBeeModifier> beeModifiers = new ArrayList<IBeeModifier>();
-
- beeModifiers.add(this.beeModifier);
- for (IHiveFrame frame : getFrames(this.inventory)) {
- beeModifiers.add(frame.getBeeModifier());
- }
- return beeModifiers.get(0);
- }
-
- private ItemStack getQueenStack()
- {
- ItemStack queenStack = ((MultiblockLogicAlveary)getMultiblockLogic()).getController().getBeeInventory().getQueen();
- return queenStack;
- }
-
- @Override
- public void wearOutFrames(IBeeHousing beeHousing, int amount)
- {
- IBeekeepingMode beekeepingMode = BeeManager.beeRoot.getBeekeepingMode(beeHousing.getWorld());
- int wear = Math.round(amount * beekeepingMode.getWearModifier());
- for (int i = 0; i < this.inventory.getSizeInventory(); i++)
- {
- ItemStack hiveFrameStack = getStackInSlot(i);
- if (hiveFrameStack != null)
- {
- Item hiveFrameItem = hiveFrameStack.getItem();
- if ((hiveFrameItem instanceof IHiveFrame))
- {
- IHiveFrame hiveFrame = (IHiveFrame)hiveFrameItem;
-
- ItemStack queenStack = getQueenStack();
- IBee queen = BeeManager.beeRoot.getMember(queenStack);
- ItemStack usedFrame = hiveFrame.frameUsed(beeHousing, hiveFrameStack, queen, wear);
-
- setInventorySlotContents(i, usedFrame);
- }
- }
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/CONTAINER_FrameHousing.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/CONTAINER_FrameHousing.java
deleted file mode 100644
index 7a04b7b05e..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/CONTAINER_FrameHousing.java
+++ /dev/null
@@ -1,98 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary.gui;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.slots.SlotFrame;
-import miscutil.core.xmod.forestry.bees.alveary.TileAlvearyFrameHousing;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.inventory.Container;
-import net.minecraft.inventory.Slot;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.ResourceLocation;
-import forestry.api.apiculture.IHiveFrame;
-import forestry.core.gui.tooltips.ToolTip;
-
-public class CONTAINER_FrameHousing extends Container
-{
- private TileAlvearyFrameHousing te;
-
- public static final int INPUT_1 = 0;
- private final ResourceLocation beeFrameIcon = new ResourceLocation(CORE.MODID, "textures/items/machine_Charger.png");
- public ToolTip newTip = new ToolTip();
- private final SlotFrame beeFrameSlot;
-
- private int slotID = 0;
-
- public CONTAINER_FrameHousing(TileAlvearyFrameHousing te, EntityPlayer player)
- {
- this.te = te;
- this.beeFrameSlot = new SlotFrame(te, slotID++, 80, 35);
-
- //Fuel Slot A
- beeFrameSlot.setBackgroundIconTexture(beeFrameIcon);
-
- addSlotToContainer(beeFrameSlot);
-
- //Inventory
- for (int i = 0; i < 3; i++)
- {
- for (int j = 0; j < 9; j++)
- {
- addSlotToContainer(new Slot(player.inventory, j + i * 9 + 9, 8 + j * 18, 84 + i * 18));
- }
- }
- // Hotbar
- for (int i = 0; i < 9; i++)
- {
- addSlotToContainer(new Slot(player.inventory, i, 8 + i * 18, 142));
- }
- }
-
- @Override
- public ItemStack transferStackInSlot(EntityPlayer player, int slotRaw)
- {
- ItemStack stack = null;
- Slot slot = (Slot)inventorySlots.get(slotRaw);
-
- if (slot != null && slot.getHasStack())
- {
- ItemStack stackInSlot = slot.getStack();
- stack = stackInSlot.copy();
-
-
- //If your inventory only stores certain instances of Items,
- //you can implement shift-clicking to your inventory like this:
- // Check that the item is the right type
- if (!(stack.getItem() instanceof IHiveFrame)){
- return null;
- }
-
- if (slotRaw < 1)
- {
- if (!mergeItemStack(stackInSlot, 3 * 9, inventorySlots.size(), true))
- {
- return null;
- }
- }
- else if (!mergeItemStack(stackInSlot, 0, 3 * 9, false))
- {
- return null;
- }
-
- if (stackInSlot.stackSize == 0)
- {
- slot.putStack((ItemStack)null);
- }
- else
- {
- slot.onSlotChanged();
- }
- }
- return stack;
- }
-
- @Override
- public boolean canInteractWith(EntityPlayer player)
- {
- return te.isUseableByPlayer(player);
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/GUI_FrameHousing.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/GUI_FrameHousing.java
deleted file mode 100644
index f2ab1e1e7e..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/GUI_FrameHousing.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary.gui;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.forestry.bees.alveary.TileAlvearyFrameHousing;
-import net.minecraft.client.Minecraft;
-import net.minecraft.client.gui.inventory.GuiContainer;
-import net.minecraft.client.resources.I18n;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.util.ResourceLocation;
-
-import org.lwjgl.opengl.GL11;
-
-public class GUI_FrameHousing extends GuiContainer
-{
- private ResourceLocation texture = new ResourceLocation(CORE.MODID, "textures/gui/machine_Charger.png");
-
- private InventoryPlayer inventory;
- private TileAlvearyFrameHousing te;
-
- public GUI_FrameHousing(TileAlvearyFrameHousing te, EntityPlayer player)
- {
- super(new CONTAINER_FrameHousing(te, player));
- inventory = player.inventory;
- this.te = te;
- }
-
- @Override
- protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3)
- {
- Minecraft.getMinecraft().renderEngine.bindTexture(texture);
-
- GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
-
- int x = (width - xSize) / 2;
- int y = (height - ySize) / 2;
-
- drawTexturedModalRect(x, y, 0, 0, xSize, ySize);
- }
-
- @Override
- protected void drawGuiContainerForegroundLayer(int par1, int par2)
- {
- fontRendererObj.drawString(I18n.format("Alveary Frame Housing"), (xSize / 2) - (fontRendererObj.getStringWidth(I18n.format("Alveary Frame Housing")) / 2), 6, 4210752, false);
- fontRendererObj.drawString(I18n.format(inventory.getInventoryName()), 8, ySize - 96 + 2, 4210752);
- //fontRendererObj.drawString(I18n.format("Charge:"+te.getCharge()+"~"), 8, ySize - 96 + 2, 4210752);
- //fontRendererObj.drawString(I18n.format("Progress:"+te.getProgress()+"ticks"), 80, ySize - 96 + 2, 4210752);
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/InventoryFrameHousing.java b/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/InventoryFrameHousing.java
deleted file mode 100644
index b9f60efc6c..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/alveary/gui/InventoryFrameHousing.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package miscutil.core.xmod.forestry.bees.alveary.gui;
-
-import miscutil.core.xmod.forestry.bees.alveary.TileAlvearyFrameHousing;
-import net.minecraft.item.ItemStack;
-import forestry.api.apiculture.BeeManager;
-import forestry.core.inventory.InventoryAdapterTile;
-import forestry.core.utils.ItemStackUtil;
-
-public class InventoryFrameHousing extends InventoryAdapterTile<TileAlvearyFrameHousing>
-{
- public InventoryFrameHousing(TileAlvearyFrameHousing alvearyFrame)
- {
- super(alvearyFrame, 1, "FrameHousingInv");
- }
-
- @Override
- public boolean canSlotAccept(int slotIndex, ItemStack itemStack)
- {
- return ItemStackUtil.containsItemStack(BeeManager.inducers.keySet(), itemStack);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/items/FR_ItemRegistry.java b/src/Java/miscutil/core/xmod/forestry/bees/items/FR_ItemRegistry.java
deleted file mode 100644
index 3a9a1e2040..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/items/FR_ItemRegistry.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011-2014 SirSengir.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the GNU Lesser Public License v3
- * which accompanies this distribution, and is available at
- * http://www.gnu.org/licenses/lgpl-3.0.txt
- *
- * Various Contributors including, but not limited to:
- * SirSengir (original work), CovertJaguar, Player, Binnie, MysteriousAges
- ******************************************************************************/
-package miscutil.core.xmod.forestry.bees.items;
-import miscutil.core.lib.CORE;
-import miscutil.core.lib.LoadedMods;
-import miscutil.core.xmod.forestry.bees.alveary.FR_BlockAlveary;
-import net.minecraft.block.Block;
-import net.minecraft.item.EnumRarity;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemBlock;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.WeightedRandomChestContent;
-import net.minecraftforge.common.ChestGenHooks;
-import cpw.mods.fml.common.registry.GameRegistry;
-import forestry.core.items.ItemBlockForestry;
-import forestry.core.utils.StringUtil;
-
-public class FR_ItemRegistry {
-
-
- //----- Apiary Frames ----------------------
- //public static FR_ItemHiveFrame frameUntreated;
- //public static FR_ItemHiveFrame frameImpregnated;
- //public static FR_ItemHiveFrame frameProven;
-
- //Magic Bee Frame Items
- public static MB_ItemFrame hiveFrameAccelerated;
- public static MB_ItemFrame hiveFrameVoid;
- public static MB_ItemFrame hiveFrameMutagenic;
- public static MB_ItemFrame haveFrameBusy;
-
- //Extra Bee Frame Items
- public static MB_ItemFrame hiveFrameCocoa;
- public static MB_ItemFrame hiveFrameCaged;
- public static MB_ItemFrame hiveFrameSoul;
- public static MB_ItemFrame hiveFrameClay;
- public static MB_ItemFrame hiveFrameNova;
-
- //Alveary Stuff
- public static FR_BlockAlveary alveary;
-
- public static void Register() {
-
- //Forestry Frames
- //frameUntreated = registerItem(new FR_ItemHiveFrame(80, 0.9f), "frameUntreated");
- //frameImpregnated = registerItem(new FR_ItemHiveFrame(240, 0.4f), "frameImpregnated");
- //frameProven = registerItem(new FR_ItemHiveFrame(720, 0.3f), "frameProven");
-
- //Magic Bee like Frames
- hiveFrameAccelerated = new MB_ItemFrame(MB_FrameType.ACCELERATED, "Longevity for bees isn't very common.");
- hiveFrameVoid = new MB_ItemFrame(MB_FrameType.VOID, EnumRarity.rare, "??? (Dungeon Loot)");
- hiveFrameMutagenic = new MB_ItemFrame(MB_FrameType.MUTAGENIC, EnumRarity.epic, "Evolution of the fitest, finest and fastest.");
- haveFrameBusy = new MB_ItemFrame(MB_FrameType.BUSY, "Busy bee, Busy Bee, make more honey please for me.");
- ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_CORRIDOR, new WeightedRandomChestContent(new ItemStack(hiveFrameVoid), 1, 1, 18));
- ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_LIBRARY, new WeightedRandomChestContent(new ItemStack(hiveFrameVoid), 1, 3, 23));
- ChestGenHooks.addItem(ChestGenHooks.PYRAMID_DESERT_CHEST, new WeightedRandomChestContent(new ItemStack(hiveFrameMutagenic), 1, 1, 18));
- ChestGenHooks.addItem(ChestGenHooks.PYRAMID_JUNGLE_CHEST, new WeightedRandomChestContent(new ItemStack(hiveFrameMutagenic), 1, 3, 23));
-
- //Extra Bee like Frames
- if (!LoadedMods.ExtraBees){
- hiveFrameCocoa = new MB_ItemFrame(MB_FrameType.COCOA, EnumRarity.common, "");
- hiveFrameCaged = new MB_ItemFrame(MB_FrameType.CAGE, EnumRarity.common, "");
- hiveFrameSoul = new MB_ItemFrame(MB_FrameType.SOUL, EnumRarity.common, "");
- hiveFrameClay = new MB_ItemFrame(MB_FrameType.CLAY, EnumRarity.common, "");
- hiveFrameNova = new MB_ItemFrame(MB_FrameType.NOVA, EnumRarity.epic, "A Creative Only Frame.");
- if (CORE.configSwitches.enableCustomAlvearyBlocks){
- alveary = registerBlock(new FR_BlockAlveary(), ItemBlockForestry.class, "alveary");
- }
- }
-
-
-
-
- }
-
- protected static <T extends Item> T registerItem(T item, String name) {
- item.setUnlocalizedName(name);
- GameRegistry.registerItem(item, StringUtil.cleanItemName(item));
- return item;
- }
-
- protected static <T extends Block> T registerBlock(T block, Class<? extends ItemBlock> itemClass, String name, Object... itemCtorArgs) {
- block.setBlockName("for." + name);
- GameRegistry.registerBlock(block, itemClass, StringUtil.cleanBlockName(block), itemCtorArgs);
- return block;
- }
-}
-
-
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/items/FR_StringUtil.java b/src/Java/miscutil/core/xmod/forestry/bees/items/FR_StringUtil.java
deleted file mode 100644
index 324fd79a55..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/items/FR_StringUtil.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package miscutil.core.xmod.forestry.bees.items;
-
-import net.minecraft.util.StatCollector;
-
-public class FR_StringUtil
-{
- public static String getLocalizedString(String key)
- {
- if(StatCollector.canTranslate(key))
- {
- return StatCollector.translateToLocal(key);
- }
- return StatCollector.translateToFallback(key);
- }
-
- public static String getLocalizedString(String key, Object... objects)
- {
- if(StatCollector.canTranslate(key))
- {
- return String.format(StatCollector.translateToLocal(key), objects);
- }
- return String.format(StatCollector.translateToFallback(key), objects);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/items/MB_FrameType.java b/src/Java/miscutil/core/xmod/forestry/bees/items/MB_FrameType.java
deleted file mode 100644
index 40443dc566..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/items/MB_FrameType.java
+++ /dev/null
@@ -1,119 +0,0 @@
-package miscutil.core.xmod.forestry.bees.items;
-
-import forestry.api.apiculture.IBeeGenome;
-import forestry.api.apiculture.IBeeModifier;
-
-public enum MB_FrameType implements IBeeModifier
-{
- //ExtraBees Clone Frames
- //Name, FrameHP, territory (1f), Mutation rate, lifespan rate, production rate, genetic decay (1f)
- COCOA("Chocolate", 240, 1.0f, 1.0f, 0.50f, 1.50f, 1f),
- CAGE("Restraint", 240, 0.5f, 1.0f, 0.75f, 0.75f, 1f),
- SOUL("Soul", 80, 1.0f, 1.5f, 0.75f, 0.25f, 1f),
- CLAY("Healing", 240, 1.0f, 0.5f, 1.50f, 0.75f, 1f),
- NOVA("Nova", 240, 1.0f, 100.0f, 0.0001f, 1.00f, 1f),
-
-
- //Name, FrameHP, territory (1f), Mutation rate, lifespan rate, production rate, genetic decay (1f)
- ACCELERATED("Accelerated", 175, 1f, 2.5f, 0.9f, 1.8f, 1f),
- VOID("Void", 20, 1f, 1f, 0.0001f, 10f, 1f),
- MUTAGENIC("Mutagenic", 3, 1f, 10f, 0.0001f, 10f, 1f),
- BUSY("Busy", 2000, 1f, 0f, 3f, 4f, 1f);
-
- private final String frameName;
- public final int maxDamage;
-
- private final float territoryMod;
- private final float mutationMod;
- private final float lifespanMod;
- private final float productionMod;
- private final float floweringMod;
- private final float geneticDecayMod;
- private final boolean isSealed;
- private final boolean isLit;
- private final boolean isSunlit;
- private final boolean isHellish;
-
- MB_FrameType(String name, int damage, float territory, float mutation, float lifespan, float production, float geneticDecay) {
- this(name, damage, territory, mutation, lifespan, production, 1f, geneticDecay, false, false, false, false);
- }
-
- MB_FrameType(String name, int damage,
- float territory, float mutation, float lifespan, float production, float flowering, float geneticDecay,
- boolean sealed, boolean lit, boolean sunlit, boolean hellish)
- {
- this.frameName = name;
- this.maxDamage = damage;
-
- this.territoryMod = territory;
- this.mutationMod = mutation;
- this.lifespanMod = lifespan;
- this.productionMod = production;
- this.floweringMod = flowering;
- this.geneticDecayMod = geneticDecay;
- this.isSealed = sealed;
- this.isLit = lit;
- this.isSunlit = sunlit;
- this.isHellish = hellish;
- }
-
- public String getName()
- {
- return this.frameName;
- }
-
- public String getLocalizedName()
- {
- return FR_StringUtil.getLocalizedString("frame." + this.frameName);
- }
-
- @Override
- public float getTerritoryModifier(IBeeGenome genome, float currentModifier) {
- return territoryMod;
- }
-
- @Override
- public float getMutationModifier(IBeeGenome genome, IBeeGenome mate, float currentModifier) {
- return mutationMod;
- }
-
- @Override
- public float getLifespanModifier(IBeeGenome genome, IBeeGenome mate, float currentModifier) {
- return lifespanMod;
- }
-
- @Override
- public float getProductionModifier(IBeeGenome genome, float currentModifier) {
- return productionMod;
- }
-
- @Override
- public float getFloweringModifier(IBeeGenome genome, float currentModifier) {
- return floweringMod;
- }
-
- @Override
- public float getGeneticDecay(IBeeGenome genome, float currentModifier) {
- return geneticDecayMod;
- }
-
- @Override
- public boolean isSealed() {
- return isSealed;
- }
-
- @Override
- public boolean isSelfLighted() {
- return isLit;
- }
-
- @Override
- public boolean isSunlightSimulated() {
- return isSunlit;
- }
-
- @Override
- public boolean isHellish() {
- return isHellish;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/items/MB_ItemFrame.java b/src/Java/miscutil/core/xmod/forestry/bees/items/MB_ItemFrame.java
deleted file mode 100644
index 00aac532fd..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/items/MB_ItemFrame.java
+++ /dev/null
@@ -1,140 +0,0 @@
-package miscutil.core.xmod.forestry.bees.items;
-
-import java.util.List;
-
-import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.lib.CORE;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.EnumRarity;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.EnumChatFormatting;
-import cpw.mods.fml.common.registry.GameRegistry;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import forestry.api.apiculture.IBee;
-import forestry.api.apiculture.IBeeGenome;
-import forestry.api.apiculture.IBeeHousing;
-import forestry.api.apiculture.IBeeModifier;
-import forestry.api.apiculture.IHiveFrame;
-
-public class MB_ItemFrame extends Item implements IHiveFrame
-{
- private MB_FrameType type;
- private EnumRarity rarity_value = EnumRarity.uncommon;
- private final String toolTip;
-
- public MB_ItemFrame(MB_FrameType frameType, String description)
- {
- this(frameType, EnumRarity.uncommon, description);
- }
-
- public MB_ItemFrame(MB_FrameType frameType, EnumRarity rarity, String description)
- {
- super();
- this.type = frameType;
- this.setMaxDamage(this.type.maxDamage);
- this.setMaxStackSize(1);
- this.setCreativeTab(AddToCreativeTab.tabMisc);
- this.setUnlocalizedName("frame" + frameType.getName());
- this.rarity_value = rarity;
- this.toolTip = description;
- GameRegistry.registerItem(this, "frame" + frameType.getName());
- }
-
- @Override
- public void addInformation(ItemStack stack, EntityPlayer aPlayer, List list, boolean bool) {
- if (toolTip != "" || !toolTip.equals("")){
- list.add(EnumChatFormatting.GRAY+toolTip);
- }
- super.addInformation(stack, aPlayer, list, bool);
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public void registerIcons(IIconRegister par1IconRegister)
- {
- this.itemIcon = par1IconRegister.registerIcon(CORE.MODID + ":frame" + type.getName());
- }
-
- // --------- IHiveFrame functions -----------------------------------------
-
- @Override
- public ItemStack frameUsed(IBeeHousing housing, ItemStack frame, IBee queen, int wear) {
- frame.setItemDamage(frame.getItemDamage() + wear);
-
- if (frame.getItemDamage() >= frame.getMaxDamage()) {
- // Break the frame.
- frame = null;
- }
-
- return frame;
- }
-
-
- @Override
- @SideOnly(Side.CLIENT)
- public EnumRarity getRarity(ItemStack par1ItemStack){
- return rarity_value;
- }
-
- @Override
- public boolean hasEffect(ItemStack par1ItemStack){
- if (rarity_value == EnumRarity.uncommon || rarity_value == EnumRarity.common){
- return false;
- }
- return true;
- }
-
- public IBeeModifier getBeeModifier() {
- return type;
- }
-
- @Override
- public boolean isBookEnchantable(ItemStack itemstack1, ItemStack itemstack2)
- {
- return false;
- }
-
- public float getTerritoryModifier(IBeeGenome genome, float currentModifier) {
- return type.getTerritoryModifier(genome, currentModifier);
- }
-
- public float getMutationModifier(IBeeGenome genome, IBeeGenome mate, float currentModifier) {
- return type.getMutationModifier(genome, mate, currentModifier);
- }
-
- public float getLifespanModifier(IBeeGenome genome, IBeeGenome mate, float currentModifier) {
- return type.getLifespanModifier(genome, mate, currentModifier);
- }
-
- public float getProductionModifier(IBeeGenome genome, float currentModifier) {
- return type.getProductionModifier(genome, currentModifier);
- }
-
- public float getFloweringModifier(IBeeGenome genome, float currentModifier) {
- return type.getFloweringModifier(genome, currentModifier);
- }
-
- public float getGeneticDecay(IBeeGenome genome, float currentModifier) {
- return type.getGeneticDecay(genome, currentModifier);
- }
-
- public boolean isSealed() {
- return type.isSealed();
- }
-
- public boolean isSelfLighted() {
- return type.isSelfLighted();
- }
-
- public boolean isSunlightSimulated() {
- return type.isSunlightSimulated();
- }
-
- public boolean isHellish(){
- return type.isHellish();
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java b/src/Java/miscutil/core/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java
deleted file mode 100644
index d707eb89ef..0000000000
--- a/src/Java/miscutil/core/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package miscutil.core.xmod.forestry.bees.recipe;
-
-import miscutil.core.lib.LoadedMods;
-import miscutil.core.util.item.UtilsItems;
-import miscutil.core.util.recipe.UtilsRecipe;
-import miscutil.core.xmod.forestry.bees.items.FR_ItemRegistry;
-import net.minecraft.init.Blocks;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-
-public class FR_Gregtech_Recipes {
-
- private static String rod_ElectrumFlux = "stickElectrumFlux";
- private static String rod_LongElectrumFlux = "stickLongElectrumFlux";
- private static String foil_Electrum = "foilElectrum";
- private static String rod_Uranium = "stickUranium";
- private static String rod_LongUranium = "stickLongUranium";
- private static String foil_Uranium235 = "foilUranium235";
- private static ItemStack hiveFrameAccelerated = UtilsItems.getSimpleStack(FR_ItemRegistry.hiveFrameAccelerated);
- private static ItemStack hiveFrameMutagenic = UtilsItems.getSimpleStack(FR_ItemRegistry.hiveFrameMutagenic);
-
-
- private static ItemStack hiveFrameCocoa = UtilsItems.getSimpleStack(FR_ItemRegistry.hiveFrameCocoa);
- private static ItemStack hiveFrameCaged = UtilsItems.getSimpleStack(FR_ItemRegistry.hiveFrameCaged);
- private static ItemStack hiveFrameSoul = UtilsItems.getSimpleStack(FR_ItemRegistry.hiveFrameSoul);
- private static ItemStack hiveFrameClay = UtilsItems.getSimpleStack(FR_ItemRegistry.hiveFrameClay);
- private static ItemStack hiveFrameNova = UtilsItems.getSimpleStack(FR_ItemRegistry.hiveFrameNova);
-
- private static ItemStack hiveFrameImpregnated = UtilsItems.getItemStack("Forestry:frameImpregnated", 1);
- private static ItemStack blockSoulSand = new ItemStack(Blocks.soul_sand, 1);
- private static ItemStack blockIronBars = new ItemStack (Blocks.iron_bars, 1);
- private static ItemStack itemClayDust = new ItemStack(Items.clay_ball, 1);
- private static ItemStack itemCocoaBeans = new ItemStack(Items.dye, 1, 3);
-
-
- public static void registerItems(){
-
- //Magic Bee Like Frames
- UtilsRecipe.recipeBuilder(
- rod_LongElectrumFlux, rod_ElectrumFlux, rod_LongElectrumFlux,
- rod_LongElectrumFlux, foil_Electrum, rod_LongElectrumFlux,
- rod_ElectrumFlux, rod_ElectrumFlux, rod_ElectrumFlux,
- hiveFrameAccelerated);
-
- UtilsRecipe.recipeBuilder(
- rod_LongUranium, rod_Uranium, rod_LongUranium,
- rod_LongUranium, foil_Uranium235, rod_LongUranium,
- rod_Uranium, rod_Uranium, rod_Uranium,
- hiveFrameMutagenic);
-
- if (!LoadedMods.ExtraBees){
- //Extra Bee Like Frames
- UtilsRecipe.recipeBuilder(
- null, itemCocoaBeans, null,
- itemCocoaBeans, hiveFrameImpregnated, itemCocoaBeans,
- null, itemCocoaBeans, null,
- hiveFrameCocoa);
-
- UtilsRecipe.recipeBuilder(
- hiveFrameImpregnated, blockIronBars, null,
- null, null, null,
- null, null, null,
- hiveFrameCaged);
-
- UtilsRecipe.recipeBuilder(
- hiveFrameImpregnated, blockSoulSand, null,
- null, null, null,
- null, null, null,
- hiveFrameSoul);
-
- UtilsRecipe.recipeBuilder(
- null, itemClayDust, null,
- itemClayDust, hiveFrameImpregnated, itemClayDust,
- null, itemClayDust, null,
- hiveFrameClay);
- }
-
-
-
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/HANDLER_GT.java b/src/Java/miscutil/core/xmod/gregtech/HANDLER_GT.java
deleted file mode 100644
index 6c3d871d33..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/HANDLER_GT.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package miscutil.core.xmod.gregtech;
-
-import gregtech.api.util.GT_Config;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.common.blocks.fluid.GregtechFluidHandler;
-import miscutil.core.xmod.gregtech.common.items.MetaGeneratedGregtechItems;
-
-public class HANDLER_GT {
-
- public static GT_Config mMaterialProperties = null;
-
- public static void preInit(){
- new MetaGeneratedGregtechItems();
- if (mMaterialProperties != null){
- GT_Materials.init(mMaterialProperties);
- GregtechFluidHandler.run();
- //new MetaGeneratedGregtechTools();
- //new Processing_Ingot1();
- //new Processing_Plate1();
- //new Processing_Block();
- }
- //new Processing_HotIngots();
- }
-
- public static void init(){
- /*if (Meta_GT_Proxy.mSortToTheEnd) {
- new GT_ItemIterator().run();
- Meta_GT_Proxy.registerUnificationEntries();
- new GT_FuelLoader().run();
- }*/
- }
-
- public static void postInit(){
- /*Meta_GT_Proxy.activateOreDictHandler();
- if (Meta_GT_Proxy.mSortToTheEnd) {
- Meta_GT_Proxy.registerUnificationEntries();
- } else {
- new GT_ItemIterator().run();
- Meta_GT_Proxy.registerUnificationEntries();
- new GT_FuelLoader().run();
- }*/
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/energy/IC2ElectricItem.java b/src/Java/miscutil/core/xmod/gregtech/api/energy/IC2ElectricItem.java
deleted file mode 100644
index 24b5fa32c8..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/energy/IC2ElectricItem.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package miscutil.core.xmod.gregtech.api.energy;
-
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-
-/**
- * Provides the ability to store energy on the implementing item.
- *
- * The item should have a maximum damage of 13.
- */
-public interface IC2ElectricItem {
- /**
- * Determine if the item can be used in a machine or as an armor part to supply energy.
- *
- * @return Whether the item can supply energy
- */
- boolean canProvideEnergy(ItemStack itemStack);
-
- /**
- * Get the item ID to use for a charge energy greater than 0.
- *
- * @return Item ID to use
- */
- Item getChargedItem(ItemStack itemStack);
-
- /**
- * Get the item ID to use for a charge energy of 0.
- *
- * @return Item ID to use
- */
- Item getEmptyItem(ItemStack itemStack);
-
- /**
- * Get the item's maximum charge energy in EU.
- *
- * @return Maximum charge energy
- */
- double getMaxCharge(ItemStack itemStack);
-
- /**
- * Get the item's tier, lower tiers can't send energy to higher ones.
- * Batteries are Tier 1, Energy Crystals are Tier 2, Lapotron Crystals are Tier 3.
- *
- * @return Item's tier
- */
- int getTier(ItemStack itemStack);
-
- /**
- * Get the item's transfer limit in EU per transfer operation.
- *
- * @return Transfer limit
- */
- double getTransferLimit(ItemStack itemStack);
-}
-
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/energy/IC2ElectricItemManager.java b/src/Java/miscutil/core/xmod/gregtech/api/energy/IC2ElectricItemManager.java
deleted file mode 100644
index 71f31cff46..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/energy/IC2ElectricItemManager.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package miscutil.core.xmod.gregtech.api.energy;
-
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.item.ItemStack;
-
-/**
- * This interface specifies a manager to handle the various tasks for electric items.
- *
- * The default implementation does the following:
- * - store and retrieve the charge
- * - handle charging, taking amount, tier, transfer limit, canProvideEnergy and simulate into account
- * - replace item IDs if appropriate (getChargedItemId() and getEmptyItemId())
- * - update and manage the damage value for the visual charge indicator
- *
- * @note If you're implementing your own variant (ISpecialElectricItem), you can delegate to the
- * default implementations through ElectricItem.rawManager. The default implementation is designed
- * to minimize its dependency on its own constraints/structure and delegates most work back to the
- * more atomic features in the gateway manager.
- */
-public interface IC2ElectricItemManager {
- /**
- * Charge an item with a specified amount of energy.
- *
- * @param itemStack electric item's stack
- * @param amount amount of energy to charge in EU
- * @param tier tier of the charging device, has to be at least as high as the item to charge
- * @param ignoreTransferLimit ignore the transfer limit specified by getTransferLimit()
- * @param simulate don't actually change the item, just determine the return value
- * @return Energy transferred into the electric item
- */
- double charge(ItemStack stack, double amount, int tier, boolean ignoreTransferLimit, boolean simulate);
-
- /**
- * Discharge an item by a specified amount of energy
- *
- * @param itemStack electric item's stack
- * @param amount amount of energy to discharge in EU
- * @param tier tier of the discharging device, has to be at least as high as the item to discharge
- * @param ignoreTransferLimit ignore the transfer limit specified by getTransferLimit()
- * @param externally use the supplied item externally, i.e. to power something else as if it was a battery
- * @param simulate don't actually discharge the item, just determine the return value
- * @return Energy retrieved from the electric item
- */
- double discharge(ItemStack stack, double amount, int tier, boolean ignoreTransferLimit, boolean externally, boolean simulate);
-
- /**
- * Determine the charge level for the specified item.
- *
- * @param itemStack ItemStack containing the electric item
- * @return charge level in EU
- */
- double getCharge(ItemStack stack);
-
- /**
- * Determine if the specified electric item has at least a specific amount of EU.
- * This is supposed to be used in the item code during operation, for example if you want to implement your own electric item.
- * BatPacks are not taken into account.
- *
- * @param itemStack electric item's stack
- * @param amount minimum amount of energy required
- * @return true if there's enough energy
- */
- boolean canUse(ItemStack stack, double amount);
-
- /**
- * Try to retrieve a specific amount of energy from an Item, and if applicable, a BatPack.
- * This is supposed to be used in the item code during operation, for example if you want to implement your own electric item.
- *
- * @param itemStack electric item's stack
- * @param amount amount of energy to discharge in EU
- * @param entity entity holding the item
- * @return true if the operation succeeded
- */
- boolean use(ItemStack stack, double amount, EntityLivingBase entity);
-
- /**
- * Charge an item from the BatPack a player is wearing.
- * This is supposed to be used in the item code during operation, for example if you want to implement your own electric item.
- * use() already contains this functionality.
- *
- * @param itemStack electric item's stack
- * @param entity entity holding the item
- */
- void chargeFromArmor(ItemStack stack, EntityLivingBase entity);
-
- /**
- * Get the tool tip to display for electric items.
- *
- * @param itemStack ItemStack to determine the tooltip for
- * @return tool tip string or null for none
- */
- String getToolTip(ItemStack stack);
-
- // TODO: add tier getter
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechItemList.java b/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechItemList.java
deleted file mode 100644
index 6f8935c51d..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechItemList.java
+++ /dev/null
@@ -1,221 +0,0 @@
-package miscutil.core.xmod.gregtech.api.enums;
-
-import static gregtech.api.enums.GT_Values.W;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.xmod.gregtech.api.interfaces.GregtechItemContainer;
-import net.minecraft.block.Block;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.Fluid;
-
-/**
- * Class containing all non-OreDict Items of GregTech.
- */
-public enum GregtechItemList implements GregtechItemContainer {
-
- Energy_Buffer_CREATIVE,
-
- //Energy Buffers
- Energy_Buffer_1by1_ULV, Energy_Buffer_1by1_LV, Energy_Buffer_1by1_MV, Energy_Buffer_1by1_HV, Energy_Buffer_1by1_EV, Energy_Buffer_1by1_IV, Energy_Buffer_1by1_LuV, Energy_Buffer_1by1_ZPM, Energy_Buffer_1by1_UV, Energy_Buffer_1by1_MAX,
-
- //Cobble Generators
- Cobble_Generator_ULV, Cobble_Generator_LV, Cobble_Generator_MV, Cobble_Generator_HV, Cobble_Generator_EV, Cobble_Generator_IV, Cobble_Generator_LuV, Cobble_Generator_ZPM, Cobble_Generator_UV, Cobble_Generator_MAX,
-
- //The max Steam condenser
- Condensor_MAX,
-
- //Player owned Safes
- GT_Safe_ULV, GT_Safe_LV, GT_Safe_MV, GT_Safe_HV, GT_Safe_EV, GT_Safe_IV, GT_Safe_LuV, GT_Safe_ZPM, GT_Safe_UV, GT_Safe_MAX,
-
- //Rocket Engines
- Rocket_Engine_EV, Rocket_Engine_IV, Rocket_Engine_LuV,
-
- //IronBlastFurnace Machine_Bronze_BlastFurnace
- Machine_Iron_BlastFurnace, Casing_IronPlatedBricks,
-
- //Machine Casings
- Casing_Shielding,
-
- //Large Centrifuge
- Industrial_Centrifuge, Casing_Centrifuge1,
-
- //Coke Oven
- Industrial_CokeOven, Casing_CokeOven, Casing_CokeOven_Coil1, Casing_CokeOven_Coil2,
-
- //Bending Maching // Plate Press // Press
- Casing_MaterialPress, Industrial_PlatePress,
-
- //Gregtech Machine Parts
- Electric_Motor_LuV, Electric_Motor_ZPM, Electric_Motor_UV, Electric_Motor_MAX,
- Electric_Pump_LuV, Electric_Pump_ZPM, Electric_Pump_UV, Electric_Pump_MAX,
- Conveyor_Module_LuV, Conveyor_Module_ZPM, Conveyor_Module_UV, Conveyor_Module_MAX,
- Electric_Piston_LuV, Electric_Piston_ZPM, Electric_Piston_UV, Electric_Piston_MAX,
- Robot_Arm_LuV, Robot_Arm_ZPM, Robot_Arm_UV, Robot_Arm_MAX,
- Field_Generator_LuV, Field_Generator_ZPM, Field_Generator_UV, Field_Generator_MAX,
- Emitter_LuV, Emitter_ZPM, Emitter_UV, Emitter_MAX,
- Sensor_LuV, Sensor_ZPM, Sensor_UV, Sensor_MAX,
-
- //Circuits
- Circuit_Primitive, Circuit_Basic, Circuit_Good, Circuit_Advanced,
- Circuit_Data, Circuit_Elite, Circuit_Master, Tool_DataOrb, Circuit_Ultimate, Tool_DataStick,
- Circuit_IV, Circuit_LuV, Circuit_ZPM,
- //Circuit Parts
- Circuit_Board_IV, Circuit_Board_LuV, Circuit_Board_ZPM,
- Circuit_Parts_Crystal_Chip_IV, Circuit_Parts_Crystal_Chip_LuV, Circuit_Parts_Crystal_Chip_ZPM,
- Circuit_Parts_IV, Circuit_Parts_LuV, Circuit_Parts_ZPM,
- Circuit_Parts_Wiring_IV, Circuit_Parts_Wiring_LuV, Circuit_Parts_Wiring_ZPM,
-
- //Unused Machine Casings
- Casing_MacerationStack, Casing_MatterGen, Casing_MatterFab, Casing_U7,
- //Unused Machine Coils
- Casing_Coil_U1, Casing_Coil_U2, Casing_Coil_U3, Casing_Coil_U4,
-
- //Windmill Shaft Shape for Extruder
- Shape_Extruder_WindmillShaft,
-
- //Batteries
- Battery_RE_EV_Sodium, Battery_RE_EV_Cadmium, Battery_RE_EV_Lithium,
-
- //Industrial Electrolyzer
- Casing_Electrolyzer, Industrial_Electrolyzer,
-
- //Industrial Maceration Stack
- Casing_WireFactory, Industrial_MacerationStack,
-
- //Industrial Wire Factory
- Industrial_WireFactory,
-
- Industrial_MassFab,
-
- //Solar Generators
- GT_Solar_ULV, GT_Solar_LV, GT_Solar_MV,
- GT_Solar_HV, GT_Solar_EV, GT_Solar_IV,
- GT_Solar_LuV, GT_Solar_ZPM, GT_Solar_UV, GT_Solar_MAX,
-
-
-
- Food_Baked_Raisin_Bread,
- Industrial_SinterFurnace,
-
- SuperConductorInputNode;
-
- public static final GregtechItemList[]
- DYE_ONLY_ITEMS = {
- Energy_Buffer_1by1_EV, Energy_Buffer_1by1_EV };
- private ItemStack mStack;
- private boolean mHasNotBeenSet = true;
-
- public static Fluid sOilExtraHeavy, sOilHeavy, sOilMedium, sOilLight, sNaturalGas;
-
- @Override
- public GregtechItemList set(Item aItem) {
- mHasNotBeenSet = false;
- if (aItem == null) return this;
- ItemStack aStack = new ItemStack(aItem, 1, 0);
- mStack = GT_Utility.copyAmount(1, aStack);
- return this;
- }
-
- @Override
- public GregtechItemList set(ItemStack aStack) {
- mHasNotBeenSet = false;
- mStack = GT_Utility.copyAmount(1, aStack);
- return this;
- }
-
- @Override
- public Item getItem() {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- if (GT_Utility.isStackInvalid(mStack)) return null;
- return mStack.getItem();
- }
-
- @Override
- public Block getBlock() {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- return GT_Utility.getBlockFromStack(getItem());
- }
-
- @Override
- public final boolean hasBeenSet() {
- return !mHasNotBeenSet;
- }
-
- @Override
- public boolean isStackEqual(Object aStack) {
- return isStackEqual(aStack, false, false);
- }
-
- @Override
- public boolean isStackEqual(Object aStack, boolean aWildcard, boolean aIgnoreNBT) {
- if (GT_Utility.isStackInvalid(aStack)) return false;
- return GT_Utility.areUnificationsEqual((ItemStack)aStack, aWildcard?getWildcard(1):get(1), aIgnoreNBT);
- }
-
- @Override
- public ItemStack get(long aAmount, Object... aReplacements) {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- if (GT_Utility.isStackInvalid(mStack)) return GT_Utility.copyAmount(aAmount, aReplacements);
- return GT_Utility.copyAmount(aAmount, GT_OreDictUnificator.get(mStack));
- }
-
- @Override
- public ItemStack getWildcard(long aAmount, Object... aReplacements) {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- if (GT_Utility.isStackInvalid(mStack)) return GT_Utility.copyAmount(aAmount, aReplacements);
- return GT_Utility.copyAmountAndMetaData(aAmount, W, GT_OreDictUnificator.get(mStack));
- }
-
- @Override
- public ItemStack getUndamaged(long aAmount, Object... aReplacements) {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- if (GT_Utility.isStackInvalid(mStack)) return GT_Utility.copyAmount(aAmount, aReplacements);
- return GT_Utility.copyAmountAndMetaData(aAmount, 0, GT_OreDictUnificator.get(mStack));
- }
-
- @Override
- public ItemStack getAlmostBroken(long aAmount, Object... aReplacements) {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- if (GT_Utility.isStackInvalid(mStack)) return GT_Utility.copyAmount(aAmount, aReplacements);
- return GT_Utility.copyAmountAndMetaData(aAmount, mStack.getMaxDamage()-1, GT_OreDictUnificator.get(mStack));
- }
-
- @Override
- public ItemStack getWithName(long aAmount, String aDisplayName, Object... aReplacements) {
- ItemStack rStack = get(1, aReplacements);
- if (GT_Utility.isStackInvalid(rStack)) return null;
- rStack.setStackDisplayName(aDisplayName);
- return GT_Utility.copyAmount(aAmount, rStack);
- }
-
- @Override
- public ItemStack getWithCharge(long aAmount, int aEnergy, Object... aReplacements) {
- ItemStack rStack = get(1, aReplacements);
- if (GT_Utility.isStackInvalid(rStack)) return null;
- GT_ModHandler.chargeElectricItem(rStack, aEnergy, Integer.MAX_VALUE, true, false);
- return GT_Utility.copyAmount(aAmount, rStack);
- }
-
- @Override
- public ItemStack getWithDamage(long aAmount, long aMetaValue, Object... aReplacements) {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- if (GT_Utility.isStackInvalid(mStack)) return GT_Utility.copyAmount(aAmount, aReplacements);
- return GT_Utility.copyAmountAndMetaData(aAmount, aMetaValue, GT_OreDictUnificator.get(mStack));
- }
-
- @Override
- public GregtechItemList registerOre(Object... aOreNames) {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- for (Object tOreName : aOreNames) GT_OreDictUnificator.registerOre(tOreName, get(1));
- return this;
- }
-
- @Override
- public GregtechItemList registerWildcardAsOre(Object... aOreNames) {
- if (mHasNotBeenSet) throw new IllegalAccessError("The Enum '" + name() + "' has not been set to an Item at this time!");
- for (Object tOreName : aOreNames) GT_OreDictUnificator.registerOre(tOreName, getWildcard(1));
- return this;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechOreDictNames.java b/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechOreDictNames.java
deleted file mode 100644
index 1e338c70a7..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechOreDictNames.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package miscutil.core.xmod.gregtech.api.enums;
-
-/* Electric Components.
-*
-* usual Materials for this are:
-* Primitive (Tier 1)
-* Basic (Tier 2) as used by UE as well : IC2 Circuit and RE-Battery
-* Good (Tier 3)
-* Advanced (Tier 4) as used by UE as well : Advanced Circuit, Advanced Battery and Lithium Battery
-* Data (Tier 5) : Data Storage Circuit
-* Elite (Tier 6) as used by UE as well : Energy Crystal and Data Control Circuit
-* Master (Tier 7) : Energy Flow Circuit and Lapotron Crystal
-* Ultimate (Tier 8) : Data Orb and Lapotronic Energy Orb
-* Infinite (Cheaty)
-*
-Circuits
- Circuit_Primitive, Circuit_Basic, Circuit_Good, Circuit_Advanced,
- Circuit_Data, Circuit_Elite, Circuit_Master, Tool_DataOrb, Circuit_Ultimate, Tool_DataStick,
- Circuit_IV, Circuit_LuV, Circuit_ZPM,
-Circuit Parts
- Circuit_Board_IV, Circuit_Board_LuV, Circuit_Board_ZPM,
- Circuit_Parts_Crystal_Chip_IV, Circuit_Parts_Crystal_Chip_LuV, Circuit_Parts_Crystal_Chip_ZPM,
- Circuit_Parts_IV, Circuit_Parts_LuV, Circuit_Parts_ZPM,
- Circuit_Parts_Wiring_IV, Circuit_Parts_Wiring_LuV, Circuit_Parts_Wiring_ZPM;
-*/
-public enum GregtechOreDictNames {
- buffer_core, itemGregConduit, Circuit_IV, Circuit_LuV, Circuit_ZPM,
- Circuit_Board_IV, Circuit_Board_LuV, Circuit_Board_ZPM,
- Circuit_Parts_Crystal_Chip_IV, Circuit_Parts_Crystal_Chip_LuV, Circuit_Parts_Crystal_Chip_ZPM,
- Circuit_Parts_IV, Circuit_Parts_LuV, Circuit_Parts_ZPM,
- Circuit_Parts_Wiring_IV, Circuit_Parts_Wiring_LuV, Circuit_Parts_Wiring_ZPM;
-
- public String unlocalisedName;
-
- private void ModObject() {
- unlocalisedName = name();
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechOrePrefixes.java b/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechOrePrefixes.java
deleted file mode 100644
index d06a893377..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechOrePrefixes.java
+++ /dev/null
@@ -1,797 +0,0 @@
-package miscutil.core.xmod.gregtech.api.enums;
-
-import static gregtech.api.enums.GT_Values.B;
-import static gregtech.api.enums.GT_Values.D2;
-import static gregtech.api.enums.GT_Values.M;
-import gregtech.api.enums.ConfigCategories;
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.Element;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.SubTag;
-import gregtech.api.enums.TC_Aspects;
-import gregtech.api.enums.TC_Aspects.TC_AspectStack;
-import gregtech.api.enums.TextureSet;
-import gregtech.api.interfaces.IColorModulationContainer;
-import gregtech.api.interfaces.ICondition;
-import gregtech.api.interfaces.ISubTagContainer;
-import gregtech.api.objects.GT_FluidStack;
-import gregtech.api.objects.MaterialStack;
-import gregtech.api.util.GT_Config;
-import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_OreRecipeRegistrator;
-import miscutil.core.xmod.gregtech.api.objects.GregtechItemData;
-import miscutil.core.xmod.gregtech.api.objects.GregtechMaterialStack;
-import net.minecraft.enchantment.Enchantment;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidStack;
-
-public enum GregtechOrePrefixes {
- /* Electric Components.
- *
- * usual Materials for this are:
- * Primitive (Tier 1)
- * Basic (Tier 2) as used by UE as well : IC2 Circuit and RE-Battery
- * Good (Tier 3)
- * Advanced (Tier 4) as used by UE as well : Advanced Circuit, Advanced Battery and Lithium Battery
- * Data (Tier 5) : Data Storage Circuit
- * Elite (Tier 6) as used by UE as well : Energy Crystal and Data Control Circuit
- * Master (Tier 7) : Energy Flow Circuit and Lapotron Crystal
- * Ultimate (Tier 8) : Data Orb and Lapotronic Energy Orb
- * Infinite (Cheaty)
- */
- ingotHot("Hot Ingots", "Hot ", " Ingot", true, true, false, false, false, false, false, true, false, false, B[1], M * 1, 16, 12), // A hot Ingot, which has to be cooled down by a Vacuum Freezer.
- ingot("Ingots", "", " Ingot", true, true, false, false, false, false, false, true, false, false, B[1], M * 1, 64, 11), // A regular Ingot. Introduced by Eloraam
- dustTiny("Tiny Dusts", "Tiny Pile of ", " Dust", true, true, false, false, false, false, false, true, false, false, B[0] | B[1] | B[2] | B[3], M / 9, 64, 0), // 1/9th of a Dust.
- dustSmall("Small Dusts", "Small Pile of ", " Dust", true, true, false, false, false, false, false, true, false, false, B[0] | B[1] | B[2] | B[3], M / 4, 64, 1), // 1/4th of a Dust.
- dustImpure("Impure Dusts", "Impure Pile of ", " Dust", true, true, false, false, false, false, false, true, false, true, B[3], M * 1, 64, 3), // Dust with impurities. 1 Unit of Main Material and 1/9 - 1/4 Unit of secondary Material
- dustRefined("Refined Dusts", "Refined Pile of ", " Dust", true, true, false, false, false, false, false, true, false, true, B[3], M * 1, 64, 2),
- dustPure("Purified Dusts", "Purified Pile of ", " Dust", true, true, false, false, false, false, false, true, false, true, B[3], M * 1, 64, 4),
- dust("Dusts", "", " Dust", true, true, false, false, false, false, false, true, false, false, B[0] | B[1] | B[2] | B[3], M * 1, 64, 2), // Pure Dust worth of one Ingot or Gem. Introduced by Alblaka.
- nugget("Nuggets", "", " Nugget", true, true, false, false, false, false, false, true, false, false, B[1], M / 9, 64, 9), // A Nugget. Introduced by Eloraam
- plate("Plates", "", " Plate", true, true, false, false, false, false, true, true, false, false, B[1] | B[2], M * 1, 64, 17), // Regular Plate made of one Ingot/Dust. Introduced by Calclavia
- block("Storage Blocks", "Block of ", "", true, true, false, false, false, true, true, false, false, false, 0, M * 9, 64, 71), // Storage Block consisting out of 9 Ingots/Gems/Dusts. Introduced by CovertJaguar
- gem("Gemstones", "", "", true, true, true, false, false, false, true, true, false, false, B[2], M * 1, 64, 8), // A regular Gem worth one Dust. Introduced by Eloraam
- gemChipped("Chipped Gemstones", "Chipped ", "", true, true, true, false, false, false, true, true, false, false, B[2], M / 4, 64, 59), // A regular Gem worth one small Dust. Introduced by TerraFirmaCraft
- gemFlawed("Flawed Gemstones", "Flawed ", "", true, true, true, false, false, false, true, true, false, false, B[2], M / 2, 64, 60), // A regular Gem worth two small Dusts. Introduced by TerraFirmaCraft
- gemFlawless("Flawless Gemstones", "Flawless ", "", true, true, true, false, false, false, true, true, false, false, B[2], M * 2, 32, 61), // A regular Gem worth two Dusts. Introduced by TerraFirmaCraft
- gemExquisite("Exquisite Gemstones", "Exquisite ", "", true, true, true, false, false, false, true, true, false, false, B[2], M * 4, 16, 62), // A regular Gem worth four Dusts. Introduced by TerraFirmaCraft
- stick("Sticks/Rods", "", " Rod", true, true, false, false, false, false, true, true, false, false, B[1] | B[2], M / 2, 64, 23), // Stick made of half an Ingot. Introduced by Eloraam
- type2("16x Wires", "16x ", " Wire", true, true, false, false, false, false, true, false, false, false, 0, M * 8, 64, -1),
-
- toolSkookumChoocher("Skookum Choocher", "", " Skookum Choocher", true, true, false, false, false, false, true, true, false, false, B[6], M * 6, 16, 37), // consisting out of 6 Ingots.
-
-
-
- batterySingleuse("Single Use Batteries", "", "", false, true, false, false, false, false, false, false, false, false, 0, -1, 64, -1),
- battery("Reusable Batteries", "", "", false, true, false, false, false, false, false, false, false, false, 0, -1, 64, -1), // Introduced by Calclavia
- circuit("Circuits", "", "", true, true, false, false, false, false, false, false, false, false, 0, -1, 64, -1), // Introduced by Calclavia
- chipset("Chipsets", "", "", true, true, false, false, false, false, false, false, false, false, 0, -1, 64, -1), // Introduced by Buildcraft
- computer("Computers", "", "", true, true, false, false, true, false, false, false, false, false, 0, -1, 64, -1); // A whole Computer. "computerMaster" = ComputerCube
-
- public static volatile int VERSION = 508;
-
- static {
-
- ingotHot.mHeatDamage = 3.0F;
-
- }
-
- public final ArrayList<ItemStack> mPrefixedItems = new ArrayList<ItemStack>();
- public final short mTextureIndex;
- public final String mRegularLocalName, mLocalizedMaterialPre, mLocalizedMaterialPost;
- public final boolean mIsUsedForOreProcessing, mIsEnchantable, mIsUnificatable, mIsMaterialBased, mIsSelfReferencing, mIsContainer, mDontUnificateActively, mIsUsedForBlocks, mAllowNormalRecycling, mGenerateDefaultItem;
- public final List<TC_AspectStack> mAspects = new ArrayList<TC_AspectStack>();
- public final Collection<GregtechOrePrefixes> mFamiliarPrefixes = new HashSet<GregtechOrePrefixes>();
- /**
- * Used to determine the amount of Material this Prefix contains.
- * Multiply or Divide GregTech_API.MATERIAL_UNIT to get the Amounts in comparision to one Ingot.
- * 0 = Null
- * Negative = Undefined Amount
- */
- public final long mMaterialAmount;
- private final Collection<Materials> mNotGeneratedItems = new HashSet<Materials>(), mIgnoredMaterials = new HashSet<Materials>(), mGeneratedItems = new HashSet<Materials>();
- private final ArrayList<Interface_OreRecipeRegistrator> mOreProcessing = new ArrayList<Interface_OreRecipeRegistrator>();
- public ItemStack mContainerItem = null;
- public ICondition<ISubTagContainer> mCondition = null;
- public byte mDefaultStackSize = 64;
- public GregtechMaterialStack mSecondaryMaterial = null;
- public GregtechOrePrefixes mPrefixInto = this;
- public float mHeatDamage = 0.0F; // Negative for Frost Damage
- /**
- * Yes this Value can be changed to add Bits for the MetaGenerated-Item-Check.
- */
- public int mMaterialGenerationBits = 0;
- private GregtechOrePrefixes(String aRegularLocalName, String aLocalizedMaterialPre, String aLocalizedMaterialPost, boolean aIsUnificatable, boolean aIsMaterialBased, boolean aIsSelfReferencing, boolean aIsContainer, boolean aDontUnificateActively, boolean aIsUsedForBlocks, boolean aAllowNormalRecycling, boolean aGenerateDefaultItem, boolean aIsEnchantable, boolean aIsUsedForOreProcessing, int aMaterialGenerationBits, long aMaterialAmount, int aDefaultStackSize, int aTextureindex) {
- mIsUnificatable = aIsUnificatable;
- mIsMaterialBased = aIsMaterialBased;
- mIsSelfReferencing = aIsSelfReferencing;
- mIsContainer = aIsContainer;
- mDontUnificateActively = aDontUnificateActively;
- mIsUsedForBlocks = aIsUsedForBlocks;
- mAllowNormalRecycling = aAllowNormalRecycling;
- mGenerateDefaultItem = aGenerateDefaultItem;
- mIsEnchantable = aIsEnchantable;
- mIsUsedForOreProcessing = aIsUsedForOreProcessing;
- mMaterialGenerationBits = aMaterialGenerationBits;
- mMaterialAmount = aMaterialAmount;
- mRegularLocalName = aRegularLocalName;
- mLocalizedMaterialPre = aLocalizedMaterialPre;
- mLocalizedMaterialPost = aLocalizedMaterialPost;
- mDefaultStackSize = (byte) aDefaultStackSize;
- mTextureIndex = (short) aTextureindex;
-
- if (name().startsWith("ore")) {
- new TC_AspectStack(TC_Aspects.TERRA, 1).addToAspectList(mAspects);
- } else if (name().startsWith("wire") || name().startsWith("cable")) {
- new TC_AspectStack(TC_Aspects.ELECTRUM, 1).addToAspectList(mAspects);
- } else if (name().startsWith("dust")) {
- new TC_AspectStack(TC_Aspects.PERDITIO, 1).addToAspectList(mAspects);
- } else if (name().startsWith("crushed")) {
- new TC_AspectStack(TC_Aspects.PERFODIO, 1).addToAspectList(mAspects);
- } else if (name().startsWith("ingot") || name().startsWith("nugget")) {
- new TC_AspectStack(TC_Aspects.METALLUM, 1).addToAspectList(mAspects);
- } else if (name().startsWith("armor")) {
- new TC_AspectStack(TC_Aspects.TUTAMEN, 1).addToAspectList(mAspects);
- } else if (name().startsWith("stone")) {
- new TC_AspectStack(TC_Aspects.TERRA, 1).addToAspectList(mAspects);
- } else if (name().startsWith("pipe")) {
- new TC_AspectStack(TC_Aspects.ITER, 1).addToAspectList(mAspects);
- } else if (name().startsWith("gear")) {
- new TC_AspectStack(TC_Aspects.MOTUS, 1).addToAspectList(mAspects);
- new TC_AspectStack(TC_Aspects.MACHINA, 1).addToAspectList(mAspects);
- } else if (name().startsWith("frame") || name().startsWith("plate")) {
- new TC_AspectStack(TC_Aspects.FABRICO, 1).addToAspectList(mAspects);
- } else if (name().startsWith("tool")) {
- new TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2).addToAspectList(mAspects);
- } else if (name().startsWith("gem") || name().startsWith("crystal") || name().startsWith("lens")) {
- new TC_AspectStack(TC_Aspects.VITREUS, 1).addToAspectList(mAspects);
- } else if (name().startsWith("crate")) {
- new TC_AspectStack(TC_Aspects.ITER, 2).addToAspectList(mAspects);
- } else if (name().startsWith("circuit")) {
- new TC_AspectStack(TC_Aspects.COGNITIO, 1).addToAspectList(mAspects);
- } else if (name().startsWith("computer")) {
- new TC_AspectStack(TC_Aspects.COGNITIO, 4).addToAspectList(mAspects);
- } else if (name().startsWith("battery")) {
- new TC_AspectStack(TC_Aspects.ELECTRUM, 1).addToAspectList(mAspects);
- }
- }
-
- public static GregtechOrePrefixes getOrePrefix(String aOre) {
- for (GregtechOrePrefixes tPrefix : values())
- if (aOre.startsWith(tPrefix.toString())) {
- return tPrefix;
- }
- return null;
- }
-
- public static String stripPrefix(String aOre) {
- for (GregtechOrePrefixes tPrefix : values()) {
- if (aOre.startsWith(tPrefix.toString())) {
- return aOre.replaceFirst(tPrefix.toString(), "");
- }
- }
- return aOre;
- }
-
- public static String replacePrefix(String aOre, GregtechOrePrefixes aPrefix) {
- for (GregtechOrePrefixes tPrefix : values()) {
- if (aOre.startsWith(tPrefix.toString())) {
- return aOre.replaceFirst(tPrefix.toString(), aPrefix.toString());
- }
- }
- return "";
- }
-
- public static GregtechOrePrefixes getPrefix(String aPrefixName) {
- return getPrefix(aPrefixName, null);
- }
-
- public static GregtechOrePrefixes getPrefix(String aPrefixName, GregtechOrePrefixes aReplacement) {
- Object tObject = GT_Utility.getFieldContent(GregtechOrePrefixes.class, aPrefixName, false, false);
- if (tObject != null && tObject instanceof GregtechOrePrefixes) return (GregtechOrePrefixes) tObject;
- return aReplacement;
- }
-
- public static Materials getMaterial(String aOre) {
- return Materials.get(stripPrefix(aOre));
- }
-
- public static Materials getMaterial(String aOre, GregtechOrePrefixes aPrefix) {
- return Materials.get(aOre.replaceFirst(aPrefix.toString(), ""));
- }
-
- public static Materials getRealMaterial(String aOre, GregtechOrePrefixes aPrefix) {
- return Materials.getRealMaterial(aOre.replaceFirst(aPrefix.toString(), ""));
- }
-
- public static boolean isInstanceOf(String aName, GregtechOrePrefixes aPrefix) {
- return aName == null ? false : aName.startsWith(aPrefix.toString());
- }
-
- public boolean add(ItemStack aStack) {
- if (aStack == null) return false;
- if (!contains(aStack)) mPrefixedItems.add(aStack);
- while (mPrefixedItems.contains(null)) mPrefixedItems.remove(null);
- return true;
- }
-
- public boolean contains(ItemStack aStack) {
- if (aStack == null) return false;
- for (ItemStack tStack : mPrefixedItems)
- if (GT_Utility.areStacksEqual(aStack, tStack, !tStack.hasTagCompound())) return true;
- return false;
- }
-
- public boolean doGenerateItem(Materials aMaterial) {
- return aMaterial != null && aMaterial != Materials._NULL && ((aMaterial.mTypes & mMaterialGenerationBits) != 0 || mGeneratedItems.contains(aMaterial)) && !mNotGeneratedItems.contains(aMaterial) && (mCondition == null || mCondition.isTrue(aMaterial));
- }
-
- public boolean ignoreMaterials(Materials... aMaterials) {
- for (Materials tMaterial : aMaterials) if (tMaterial != null) mIgnoredMaterials.add(tMaterial);
- return true;
- }
-
- public boolean isIgnored(GT_Materials aMaterial) {
- if (aMaterial != null && (!aMaterial.mUnificatable || aMaterial != aMaterial.mMaterialInto)) return true;
- return mIgnoredMaterials.contains(aMaterial);
- }
-
- public boolean addFamiliarPrefix(GregtechOrePrefixes aPrefix) {
- if (aPrefix == null || mFamiliarPrefixes.contains(aPrefix) || aPrefix == this) return false;
- return mFamiliarPrefixes.add(aPrefix);
- }
-
- public boolean add(Interface_OreRecipeRegistrator aRegistrator) {
- if (aRegistrator == null) return false;
- return mOreProcessing.add(aRegistrator);
- }
-
- public void processOre(GT_Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- if (aMaterial != null && (aMaterial != GT_Materials._NULL || mIsSelfReferencing || !mIsMaterialBased) && GT_Utility.isStackValid(aStack))
- for (Interface_OreRecipeRegistrator tRegistrator : mOreProcessing) {
- if (D2)
- GT_Log.ore.println("Processing '" + aOreDictName + "' with the Prefix '" + name() + "' and the Material '" + aMaterial.name() + "' at " + GT_Utility.getClassName(tRegistrator));
- tRegistrator.registerOre(this, aMaterial, aOreDictName, aModName, GT_Utility.copyAmount(1, aStack));
- }
- }
-
- public Object get(Object aMaterial) {
- if (aMaterial instanceof GT_Materials) return new GregtechItemData(this, (GT_Materials) aMaterial);
- return name() + aMaterial;
- }
-
- public String getDefaultLocalNameForItem(Materials aMaterial) {
-
-
- // Use Standard Localization
- return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + mLocalizedMaterialPost;
- }
-
- public enum GT_Materials implements IColorModulationContainer, ISubTagContainer {
-
-
-
- /**
- * This is the Default Material returned in case no Material has been found or a NullPointer has been inserted at a location where it shouldn't happen.
- * <p/>
- * Mainly for preventing NullPointer Exceptions and providing Default Values.
- *
- * Unknown Material Components. Dead End Section.
- *
- * Alkalus Range 730-799 & 970-998
- * (aMetaItemSubID, TextureSet, aToolSpeed, aToolDurability, aToolQuality, aTypes, R, G, B, Alpha, aLocalName,
- * aFuelType, aFuelPower, aMeltingPoint, aBlastFurnaceTemp, aBlastFurnaceRequired, aTransparent, aOreValue, aDensityMultiplier, aDensityDivider, aColor
- * this(aMetaItemSubID, aIconSet, aToolSpeed, aToolDurability, aToolQuality, true);
- *
- */
- _NULL(-1, TextureSet.SET_NONE, 1.0F, 0, 0, 0, 255, 255, 255, 0, "NULL", 0, 0, 0, 0, false, false, 1, 1, 1, Dyes._NULL, Element._NULL, Arrays.asList(new TC_AspectStack(TC_Aspects.VACUOS, 1))),
-
-
- //Lapis(526, TextureSet.SET_LAPIS, 1.0F, 0, 1, 1 | 4 | 8, 70, 70, 220, 0, "Lapis", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeBlue, 2, Arrays.asList(new MaterialStack(Materials.Lazurite, 12), new MaterialStack(Materials.Sodalite, 2), new MaterialStack(Materials.Pyrite, 1), new MaterialStack(Materials.Calcite, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.SENSUS, 1))),
- Pyrotheum(20, TextureSet.SET_FLUID, 1.0F, 0, 1, 2 | 16 | 32, 255, 128, 0, 0, "Pyrotheum", 0, 0, -1, 0, false, false, 2, 3, 1, Dyes.dyeYellow, 2, Arrays.asList(new MaterialStack(Materials.Coal, 1), new MaterialStack(Materials.Redstone, 1), new MaterialStack(Materials.Blaze, 1), new MaterialStack(Materials.Sulfur, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.PRAECANTATIO, 2), new TC_AspectStack(TC_Aspects.IGNIS, 1))),
- Cryotheum(21, TextureSet.SET_FLUID, 1.0F, 0, 1, 2 | 16 | 32, 102, 178, 255, 0, "Cryotheum", 0, 0, -1, 0, false, false, 2, 3, 1, Dyes.dyeLightBlue, 2, Arrays.asList(new MaterialStack(Materials.Blizz, 1), new MaterialStack(Materials.Redstone, 1), new MaterialStack(Materials.Snow, 1), new MaterialStack(Materials.Niter, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.PRAECANTATIO, 2), new TC_AspectStack(TC_Aspects.GELUM, 1))),
-
- /**
- * Circuitry, Batteries and other Technical things
- */
- Symbiotic(-1, TextureSet.SET_NONE, 1.0F, 0, 0, 0, 255, 255, 255, 0, "IV Tier", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray, Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 4), new TC_AspectStack(TC_Aspects.MACHINA, 4))),
- Neutronic(-1, TextureSet.SET_NONE, 1.0F, 0, 0, 0, 255, 255, 255, 0, "LuV Tier", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray, Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 6), new TC_AspectStack(TC_Aspects.MACHINA, 6))),
- Quantum(-1, TextureSet.SET_NONE, 1.0F, 0, 0, 0, 255, 255, 255, 0, "ZPM Tier", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray, Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 8), new TC_AspectStack(TC_Aspects.MACHINA, 8))),
-
- Superconductor(-1, TextureSet.SET_NONE, 1.0F, 0, 0, 0, 190, 240, 190, 0, "Superconductor", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeGreen, Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 8))),
-
- Staballoy(30, TextureSet.SET_ROUGH, 10.0F, 5120, 4, 1 | 2 | 16 | 32 | 64 | 128, 248, 255, 46, 0, "Staballoy", 0, 0, 1500, 2800, true, false, 1, 3, 1, Dyes.dyeGreen, 2, Arrays.asList(new MaterialStack(Materials.Titanium, 1), new MaterialStack(Materials.Uranium, 9)), Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 8), new TC_AspectStack(TC_Aspects.STRONTIO, 3))),
- Bedrockium(31, TextureSet.SET_FINE, 8.0F, 8196, 3, 1 | 2 | 16 | 32 | 64 | 128, 39, 39, 39, 0, "Bedrockium", 0, 0, -1, 0, false, false, 1, 5, 1, Dyes.dyeLightGray, 2, Arrays.asList(new MaterialStack(Materials.Carbon, 63), new MaterialStack(Materials.Carbon, 56)), Arrays.asList(new TC_AspectStack(TC_Aspects.VACUOS, 8), new TC_AspectStack(TC_Aspects.TUTAMEN, 3))),
- BloodSteel(32, TextureSet.SET_METALLIC, 11.0F, 768, 4, 1 | 2 | 16 | 32 | 64 | 128, 142, 28, 0, 0, "Blood Steel", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeRed, 2, Arrays.asList(new MaterialStack(Materials.Steel, 3)), Arrays.asList(new TC_AspectStack(TC_Aspects.VICTUS, 8), new TC_AspectStack(TC_Aspects.IGNIS, 3))),
- VoidMetal(33, TextureSet.SET_METALLIC, 6.0F, 1280, 3, 1 | 2 | 16 | 32 | 64 | 128, 82, 17, 82, 0, "Void Metal", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeBlack, Arrays.asList(new TC_AspectStack(TC_Aspects.PRAECANTATIO, 5), new TC_AspectStack(TC_Aspects.VACUOS, 7))),
- ConductiveIron(34, TextureSet.SET_METALLIC, 5.0F, 256, 2, 1 | 2, 164, 109, 100, 0, "Conductive Iron", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeRed, 2, Arrays.asList(new MaterialStack(Materials.Iron, 6), new MaterialStack(Materials.Redstone, 2)), Arrays.asList(new TC_AspectStack(TC_Aspects.POTENTIA, 2), new TC_AspectStack(TC_Aspects.METALLUM, 2))),
- ElectricalSteel(35, TextureSet.SET_METALLIC, 7.0F, 768, 3, 1 | 2 | 64 | 128, 194, 194, 194, 0, "Electrical Steel", 0, 0, 1811, 1000, true, false, 3, 1, 1, Dyes.dyeLightGray, 2, Arrays.asList(new MaterialStack(Materials.Iron, 3), new MaterialStack(Materials.Coal, 2), new MaterialStack(Materials.Silicon, 2)), Arrays.asList(new TC_AspectStack(TC_Aspects.MAGNETO, 2), new TC_AspectStack(TC_Aspects.ELECTRUM, 5))),
- EnergeticAlloy(36, TextureSet.SET_SHINY, 5.0F, 512, 3, 1 | 2 | 64 | 128, 252, 152, 45, 0, "Energetic Alloy", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeOrange, 2, Arrays.asList(new MaterialStack(Materials.Gold, 3), new MaterialStack(Materials.Glowstone, 2), new MaterialStack(Materials.Redstone, 2)), Arrays.asList(new TC_AspectStack(TC_Aspects.POTENTIA, 4), new TC_AspectStack(TC_Aspects.LUX, 3))),
- VibrantAlloy(37, TextureSet.SET_SHINY, 7.0F, 1280, 4, 1 | 2 | 64 | 128, 204, 242, 142, 0, "Vibrant Alloy", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeLime, 2, Arrays.asList(new MaterialStack(Materials.EnergeticAlloy, 1), new MaterialStack(Materials.EnderPearl, 3)), Arrays.asList(new TC_AspectStack(TC_Aspects.MACHINA, 5), new TC_AspectStack(TC_Aspects.TELUM, 4))),
- PulsatingIron(38, TextureSet.SET_SHINY, 5.0F, 256, 2, 1 | 2 | 64 | 128, 50, 91, 21, 0, "Pulsating Iron", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeGreen, 2, Arrays.asList(new MaterialStack(Materials.Iron, 2), new MaterialStack(Materials.EnderPearl, 2)), Arrays.asList(new TC_AspectStack(TC_Aspects.ALIENIS, 3), new TC_AspectStack(TC_Aspects.METALLUM, 3))),
- /* TODO*/ RedstoneAlloy(39, TextureSet.SET_METALLIC, 1.0F, 256, 2, 1|2|16|32|64, 178,34,34, 0, "Redstone Alloy", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeRed, 2, Arrays.asList(new MaterialStack(Materials.Iron, 2), new MaterialStack(Materials.Redstone, 4))),
-
- //Needs more Use, I think.
- Tantalloy60(40, TextureSet.SET_DULL, 8.0F, 5120, 3, 1 | 2 | 16 | 32 | 64 | 128, 213, 231, 237, 0, "Tantalloy 60", 0, 0, 3035, 2200, true, false, 1, 2, 1, Dyes.dyeLightGray, 2, Arrays.asList(new MaterialStack(Materials.Tungsten, 1), new MaterialStack(Materials.Tantalum, 9)), Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 8), new TC_AspectStack(TC_Aspects.STRONTIO, 3))),
- Tantalloy61(41, TextureSet.SET_DULL, 7.0F, 5120, 2, 1 | 2 | 16 | 32 | 64 | 128, 193, 211, 217, 0, "Tantalloy 61", 0, 0, 3015, 2150, true, false, 1, 2, 1, Dyes.dyeLightGray, 2, Arrays.asList(new MaterialStack(Materials.Tungsten, 1), new MaterialStack(Materials.Tantalum, 9), new MaterialStack(Materials.Titanium, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 8), new TC_AspectStack(TC_Aspects.STRONTIO, 3)));
-
-
-
- /**
- * List of all Materials.
- */
- public static final Collection<GT_Materials> VALUES = new HashSet<GT_Materials>(Arrays.asList(values()));
-
-
- static {
- /*Primitive.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Basic.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Good.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Advanced.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Data.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Elite.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Master.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Ultimate.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Superconductor.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Infinite.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);*/
- Symbiotic.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Neutronic.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- Quantum.add(SubTag.NO_SMASHING, SubTag.NO_SMELTING);
- }
-
-
- /**
- * This Array can be changed dynamically by a Tick Handler in order to get a glowing Effect on all GT Meta Items out of this Material.
- */
- public final short[] mRGBa = new short[]{255, 255, 255, 0}, mMoltenRGBa = new short[]{255, 255, 255, 0};
- public final TextureSet mIconSet;
- public final int mMetaItemSubID;
- public final boolean mUnificatable;
- public final GT_Materials mMaterialInto;
- public final List<MaterialStack> mMaterialList = new ArrayList<MaterialStack>();
- public final List<GT_Materials> mOreByProducts = new ArrayList<GT_Materials>(), mOreReRegistrations = new ArrayList<GT_Materials>();
- public final List<TC_AspectStack> mAspects = new ArrayList<TC_AspectStack>();
- private final ArrayList<ItemStack> mMaterialItems = new ArrayList<ItemStack>();
- private final Collection<SubTag> mSubTags = new HashSet<SubTag>();
- public Enchantment mEnchantmentTools = null, mEnchantmentArmors = null;
- public byte mEnchantmentToolsLevel = 0, mEnchantmentArmorsLevel = 0;
- public boolean mBlastFurnaceRequired = false;
- public float mToolSpeed = 1.0F, mHeatDamage = 0.0F;
- public String mChemicalFormula = "?", mDefaultLocalName = "null";
- public Dyes mColor = Dyes._NULL;
- public short mMeltingPoint = 0, mBlastFurnaceTemp = 0;
- public int mTypes = 0, mDurability = 16, mFuelPower = 0, mFuelType = 0, mExtraData = 0, mOreValue = 0, mOreMultiplier = 1, mByProductMultiplier = 1, mSmeltingMultiplier = 1;
- public long mDensity = M;
- public Element mElement = null;
- public GT_Materials mDirectSmelting = this, mOreReplacement = this, mMacerateInto = this, mSmeltInto = this, mArcSmeltInto = this, mHandleMaterial = this;
- public byte mToolQuality = 0;
- public Fluid mSolid = null, mFluid = null, mGas = null, mPlasma = null;
- /**
- * This Fluid is used as standard Unit for Molten Materials. 1296 is a Molten Block, what means 144 is one Material Unit worth
- */
- public Fluid mStandardMoltenFluid = null;
-
- private GT_Materials(int aMetaItemSubID, TextureSet aIconSet, float aToolSpeed, int aToolDurability, int aToolQuality, boolean aUnificatable) {
- mUnificatable = aUnificatable;
- mMaterialInto = this;
- mMetaItemSubID = aMetaItemSubID;
- mToolQuality = (byte) aToolQuality;
- mDurability = aToolDurability;
- mToolSpeed = aToolSpeed;
- mIconSet = aIconSet;
- if (aMetaItemSubID >= 0) {
- if (CORE.sMU_GeneratedMaterials[aMetaItemSubID] == null) {
- CORE.sMU_GeneratedMaterials[aMetaItemSubID] = this;
- } else {
- throw new IllegalArgumentException("The Index " + aMetaItemSubID + " is already used!");
- }
- }
- }
-
- private GT_Materials(GT_Materials aMaterialInto, boolean aReRegisterIntoThis) {
- mUnificatable = false;
- mDefaultLocalName = aMaterialInto.mDefaultLocalName;
- mMaterialInto = aMaterialInto.mMaterialInto;
- if (aReRegisterIntoThis) mMaterialInto.mOreReRegistrations.add(this);
- mChemicalFormula = aMaterialInto.mChemicalFormula;
- mMetaItemSubID = -1;
- mIconSet = TextureSet.SET_NONE;
- }
-
- /**
- * @param aMetaItemSubID the Sub-ID used in my own MetaItems. Range 0-1000. -1 for no Material
- * @param aTypes which kind of Items should be generated. Bitmask as follows:
- * 1 = Dusts of all kinds.
- * 2 = Dusts, Ingots, Plates, Rods/Sticks, Machine Components and other Metal specific things.
- * 4 = Dusts, Gems, Plates, Lenses (if transparent).
- * 8 = Dusts, Impure Dusts, crushed Ores, purified Ores, centrifuged Ores etc.
- * 16 = Cells
- * 32 = Plasma Cells
- * 64 = Tool Heads
- * 128 = Gears
- * @param aR, aG, aB Color of the Material 0-255 each.
- * @param aA transparency of the Material Texture. 0 = fully visible, 255 = Invisible.
- * @param aLocalName The Name used as Default for localization.
- * @param aFuelType Type of Generator to get Energy from this Material.
- * @param aFuelPower EU generated. Will be multiplied by 1000, also additionally multiplied by 2 for Gems.
- * @param aAmplificationValue Amount of UUM amplifier gotten from this.
- * @param aUUMEnergy Amount of EU needed to shape the UUM into this Material.
- * @param aMeltingPoint Used to determine the smelting Costs in Furnii.
- * @param aBlastFurnaceTemp Used to determine the needed Heat capactiy Costs in Blast Furnii.
- * @param aBlastFurnaceRequired If this requires a Blast Furnace.
- * @param aColor Vanilla MC Wool Color which comes the closest to this.
- */
- private GT_Materials(int aMetaItemSubID, TextureSet aIconSet, float aToolSpeed, int aToolDurability, int aToolQuality, int aTypes, int aR, int aG, int aB, int aA, String aLocalName, int aFuelType, int aFuelPower, int aMeltingPoint, int aBlastFurnaceTemp, boolean aBlastFurnaceRequired, boolean aTransparent, int aOreValue, int aDensityMultiplier, int aDensityDivider, Dyes aColor) {
- this(aMetaItemSubID, aIconSet, aToolSpeed, aToolDurability, aToolQuality, true);
- mDefaultLocalName = aLocalName;
- mMeltingPoint = (short) aMeltingPoint;
- mBlastFurnaceTemp = (short) aBlastFurnaceTemp;
- mBlastFurnaceRequired = aBlastFurnaceRequired;
- if (aTransparent) add(SubTag.TRANSPARENT);
- mFuelPower = aFuelPower;
- mFuelType = aFuelType;
- mOreValue = aOreValue;
- mDensity = (M * aDensityMultiplier) / aDensityDivider;
- mColor = aColor == null ? Dyes._NULL : aColor;
- if (mColor != null) add(SubTag.HAS_COLOR);
- mRGBa[0] = mMoltenRGBa[0] = (short) aR;
- mRGBa[1] = mMoltenRGBa[1] = (short) aG;
- mRGBa[2] = mMoltenRGBa[2] = (short) aB;
- mRGBa[3] = mMoltenRGBa[3] = (short) aA;
- mTypes = aTypes;
- if ((mTypes & 2) != 0) add(SubTag.SMELTING_TO_FLUID);
- }
-
- private GT_Materials(int aMetaItemSubID, TextureSet aIconSet, float aToolSpeed, int aToolDurability, int aToolQuality, int aTypes, int aR, int aG, int aB, int aA, String aLocalName, int aFuelType, int aFuelPower, int aMeltingPoint, int aBlastFurnaceTemp, boolean aBlastFurnaceRequired, boolean aTransparent, int aOreValue, int aDensityMultiplier, int aDensityDivider, Dyes aColor, List<TC_AspectStack> aAspects) {
- this(aMetaItemSubID, aIconSet, aToolSpeed, aToolDurability, aToolQuality, aTypes, aR, aG, aB, aA, aLocalName, aFuelType, aFuelPower, aMeltingPoint, aBlastFurnaceTemp, aBlastFurnaceRequired, aTransparent, aOreValue, aDensityMultiplier, aDensityDivider, aColor);
- mAspects.addAll(aAspects);
- }
-
- /**
- * @param aElement The Element Enum represented by this Material
- */
- private GT_Materials(int aMetaItemSubID, TextureSet aIconSet, float aToolSpeed, int aToolDurability, int aToolQuality, int aTypes, int aR, int aG, int aB, int aA, String aLocalName, int aFuelType, int aFuelPower, int aMeltingPoint, int aBlastFurnaceTemp, boolean aBlastFurnaceRequired, boolean aTransparent, int aOreValue, int aDensityMultiplier, int aDensityDivider, Dyes aColor, Element aElement, List<TC_AspectStack> aAspects) {
- this(aMetaItemSubID, aIconSet, aToolSpeed, aToolDurability, aToolQuality, aTypes, aR, aG, aB, aA, aLocalName, aFuelType, aFuelPower, aMeltingPoint, aBlastFurnaceTemp, aBlastFurnaceRequired, aTransparent, aOreValue, aDensityMultiplier, aDensityDivider, aColor);
- mElement = aElement;
- //mElement.mLinkedMaterials.add(this);
- if (aElement == Element._NULL) {
- mChemicalFormula = "Empty";
- } else {
- mChemicalFormula = aElement.toString();
- mChemicalFormula = mChemicalFormula.replaceAll("_", "-");
- }
- mAspects.addAll(aAspects);
- }
-
- private GT_Materials(int aMetaItemSubID, TextureSet aIconSet, float aToolSpeed, int aToolDurability, int aToolQuality, int aTypes, int aR, int aG, int aB, int aA, String aLocalName, int aFuelType, int aFuelPower, int aMeltingPoint, int aBlastFurnaceTemp, boolean aBlastFurnaceRequired, boolean aTransparent, int aOreValue, int aDensityMultiplier, int aDensityDivider, Dyes aColor, int aExtraData, List<MaterialStack> aMaterialList) {
- this(aMetaItemSubID, aIconSet, aToolSpeed, aToolDurability, aToolQuality, aTypes, aR, aG, aB, aA, aLocalName, aFuelType, aFuelPower, aMeltingPoint, aBlastFurnaceTemp, aBlastFurnaceRequired, aTransparent, aOreValue, aDensityMultiplier, aDensityDivider, aColor, aExtraData, aMaterialList, null);
- }
-
- private GT_Materials(int aMetaItemSubID, TextureSet aIconSet, float aToolSpeed, int aToolDurability, int aToolQuality, int aTypes, int aR, int aG, int aB, int aA, String aLocalName, int aFuelType, int aFuelPower, int aMeltingPoint, int aBlastFurnaceTemp, boolean aBlastFurnaceRequired, boolean aTransparent, int aOreValue, int aDensityMultiplier, int aDensityDivider, Dyes aColor, int aExtraData, List<MaterialStack> aMaterialList, List<TC_AspectStack> aAspects) {
- this(aMetaItemSubID, aIconSet, aToolSpeed, aToolDurability, aToolQuality, aTypes, aR, aG, aB, aA, aLocalName, aFuelType, aFuelPower, aMeltingPoint, aBlastFurnaceTemp, aBlastFurnaceRequired, aTransparent, aOreValue, aDensityMultiplier, aDensityDivider, aColor);
- mExtraData = aExtraData;
- mMaterialList.addAll(aMaterialList);
- mChemicalFormula = "";
- for (MaterialStack tMaterial : mMaterialList) mChemicalFormula += tMaterial.toString();
- mChemicalFormula = mChemicalFormula.replaceAll("_", "-");
-
- int tAmountOfComponents = 0, tMeltingPoint = 0;
- for (MaterialStack tMaterial : mMaterialList) {
- tAmountOfComponents += tMaterial.mAmount;
- if (tMaterial.mMaterial.mMeltingPoint > 0)
- tMeltingPoint += tMaterial.mMaterial.mMeltingPoint * tMaterial.mAmount;
- if (aAspects == null)
- for (TC_AspectStack tAspect : tMaterial.mMaterial.mAspects) tAspect.addToAspectList(mAspects);
- }
-
- if (mMeltingPoint < 0) mMeltingPoint = (short) (tMeltingPoint / tAmountOfComponents);
-
- tAmountOfComponents *= aDensityMultiplier;
- tAmountOfComponents /= aDensityDivider;
- if (aAspects == null) for (TC_AspectStack tAspect : mAspects)
- tAspect.mAmount = Math.max(1, tAspect.mAmount / Math.max(1, tAmountOfComponents));
- else mAspects.addAll(aAspects);
- }
-
- public static GT_Materials get(String aMaterialName) {
- Object tObject = GT_Utility.getFieldContent(GT_Materials.class, aMaterialName, false, false);
- if (tObject != null && tObject instanceof Materials) return (GT_Materials) tObject;
- return _NULL;
- }
-
- public static GT_Materials getRealMaterial(String aMaterialName) {
- return get(aMaterialName).mMaterialInto;
- }
-
- /**
- * Called in preInit with the Config to set Values.
- *
- * @param aConfiguration
- */
- public static void init(GT_Config aConfiguration) {
- for (GT_Materials tMaterial : VALUES) {
- String tString = tMaterial.toString().toLowerCase();
- tMaterial.mHeatDamage = (float) aConfiguration.get(ConfigCategories.Materials.heatdamage, tString, tMaterial.mHeatDamage);
- if (tMaterial.mBlastFurnaceRequired)
- tMaterial.mBlastFurnaceRequired = aConfiguration.get(ConfigCategories.Materials.blastfurnacerequirements, tString, true);
- if (tMaterial.mBlastFurnaceRequired && aConfiguration.get(ConfigCategories.Materials.blastinductionsmelter, tString, tMaterial.mBlastFurnaceTemp < 1500)){}
- //GT_ModHandler.ThermalExpansion.addSmelterBlastOre(tMaterial);
- //tMaterial.mHandleMaterial = (tMaterial == Desh ? tMaterial.mHandleMaterial : tMaterial == Diamond || tMaterial == Thaumium ? Wood : tMaterial.contains(SubTag.BURNING) ? Blaze : tMaterial.contains(SubTag.MAGICAL) && tMaterial.contains(SubTag.CRYSTAL) && Loader.isModLoaded(MOD_ID_TC) ? Thaumium : tMaterial.getMass() > Element.Tc.getMass() * 2 ? TungstenSteel : tMaterial.getMass() > Element.Tc.getMass() ? Steel : Wood);
- }
- }
-
- public boolean isRadioactive() {
- if (mElement != null) return mElement.mHalfLifeSeconds >= 0;
- for (MaterialStack tMaterial : mMaterialList) if (tMaterial.mMaterial.isRadioactive()) return true;
- return false;
- }
-
- public long getProtons() {
- if (mElement != null) return mElement.getProtons();
- if (mMaterialList.size() <= 0) return Element.Tc.getProtons();
- long rAmount = 0, tAmount = 0;
- for (MaterialStack tMaterial : mMaterialList) {
- tAmount += tMaterial.mAmount;
- rAmount += tMaterial.mAmount * tMaterial.mMaterial.getProtons();
- }
- return (getDensity() * rAmount) / (tAmount * M);
- }
-
- public long getNeutrons() {
- if (mElement != null) return mElement.getNeutrons();
- if (mMaterialList.size() <= 0) return Element.Tc.getNeutrons();
- long rAmount = 0, tAmount = 0;
- for (MaterialStack tMaterial : mMaterialList) {
- tAmount += tMaterial.mAmount;
- rAmount += tMaterial.mAmount * tMaterial.mMaterial.getNeutrons();
- }
- return (getDensity() * rAmount) / (tAmount * M);
- }
-
- public long getMass() {
- if (mElement != null) return mElement.getMass();
- if (mMaterialList.size() <= 0) return Element.Tc.getMass();
- long rAmount = 0, tAmount = 0;
- for (MaterialStack tMaterial : mMaterialList) {
- tAmount += tMaterial.mAmount;
- rAmount += tMaterial.mAmount * tMaterial.mMaterial.getMass();
- }
- return (getDensity() * rAmount) / (tAmount * M);
- }
-
- public long getDensity() {
- return mDensity;
- }
-
- public String getToolTip() {
- return getToolTip(1, false);
- }
-
- public String getToolTip(boolean aShowQuestionMarks) {
- return getToolTip(1, aShowQuestionMarks);
- }
-
- public String getToolTip(long aMultiplier) {
- return getToolTip(aMultiplier, false);
- }
-
- public String getToolTip(long aMultiplier, boolean aShowQuestionMarks) {
- if (!aShowQuestionMarks && mChemicalFormula.equals("?")) return "";
- if (aMultiplier >= M * 2 && !mMaterialList.isEmpty()) {
- return ((mElement != null || (mMaterialList.size() < 2 && mMaterialList.get(0).mAmount == 1)) ? mChemicalFormula : "(" + mChemicalFormula + ")") + aMultiplier;
- }
- return mChemicalFormula;
- }
-
- /**
- * Adds an ItemStack to this Material.
- */
- public GT_Materials add(ItemStack aStack) {
- if (aStack != null && !contains(aStack)) mMaterialItems.add(aStack);
- return this;
- }
-
- /**
- * This is used to determine if any of the ItemStacks belongs to this Material.
- */
- public boolean contains(ItemStack... aStacks) {
- if (aStacks == null || aStacks.length <= 0) return false;
- for (ItemStack tStack : mMaterialItems)
- for (ItemStack aStack : aStacks)
- if (GT_Utility.areStacksEqual(aStack, tStack, !tStack.hasTagCompound())) return true;
- return false;
- }
-
- /**
- * This is used to determine if an ItemStack belongs to this Material.
- */
- public boolean remove(ItemStack aStack) {
- if (aStack == null) return false;
- boolean temp = false;
- for (int i = 0; i < mMaterialItems.size(); i++)
- if (GT_Utility.areStacksEqual(aStack, mMaterialItems.get(i))) {
- mMaterialItems.remove(i--);
- temp = true;
- }
- return temp;
- }
-
- /**
- * Adds a SubTag to this Material
- */
- @Override
- public ISubTagContainer add(SubTag... aTags) {
- if (aTags != null) for (SubTag aTag : aTags)
- if (aTag != null && !contains(aTag)) {
- aTag.addContainerToList(this);
- mSubTags.add(aTag);
- }
- return this;
- }
-
- /**
- * If this Material has this exact SubTag
- */
- @Override
- public boolean contains(SubTag aTag) {
- return mSubTags.contains(aTag);
- }
-
- /**
- * Removes a SubTag from this Material
- */
- @Override
- public boolean remove(SubTag aTag) {
- return mSubTags.remove(aTag);
- }
-
- /**
- * Sets the Heat Damage for this Material (negative = frost)
- */
- public GT_Materials setHeatDamage(float aHeatDamage) {
- mHeatDamage = aHeatDamage;
- return this;
- }
-
- /**
- * Adds a Material to the List of Byproducts when grinding this Ore.
- * Is used for more precise Ore grinding, so that it is possible to choose between certain kinds of Materials.
- */
- public GT_Materials addOreByProduct(GT_Materials aMaterial) {
- if (!mOreByProducts.contains(aMaterial.mMaterialInto)) mOreByProducts.add(aMaterial.mMaterialInto);
- return this;
- }
-
- /**
- * Adds multiple Materials to the List of Byproducts when grinding this Ore.
- * Is used for more precise Ore grinding, so that it is possible to choose between certain kinds of Materials.
- */
- public GT_Materials addOreByProducts(GT_Materials... aMaterials) {
- for (GT_Materials tMaterial : aMaterials) if (tMaterial != null) addOreByProduct(tMaterial);
- return this;
- }
-
- /**
- * If this Ore gives multiple drops of its Main Material.
- * Lapis Ore for example gives about 6 drops.
- */
- public GT_Materials setOreMultiplier(int aOreMultiplier) {
- if (aOreMultiplier > 0) mOreMultiplier = aOreMultiplier;
- return this;
- }
-
- /**
- * If this Ore gives multiple drops of its Byproduct Material.
- */
- public GT_Materials setByProductMultiplier(int aByProductMultiplier) {
- if (aByProductMultiplier > 0) mByProductMultiplier = aByProductMultiplier;
- return this;
- }
-
- /**
- * If this Ore gives multiple drops of its Main Material.
- * Lapis Ore for example gives about 6 drops.
- */
- public GT_Materials setSmeltingMultiplier(int aSmeltingMultiplier) {
- if (aSmeltingMultiplier > 0) mSmeltingMultiplier = aSmeltingMultiplier;
- return this;
- }
-
- /**
- * This Ore should be smolten directly into an Ingot of this Material instead of an Ingot of itself.
- */
- public GT_Materials setDirectSmelting(GT_Materials aMaterial) {
- if (aMaterial != null) mDirectSmelting = aMaterial.mMaterialInto.mDirectSmelting;
- return this;
- }
-
- /**
- * This Material should be the Main Material this Ore gets ground into.
- * Example, Chromite giving Chrome or Tungstate giving Tungsten.
- */
- public GT_Materials setOreReplacement(GT_Materials aMaterial) {
- if (aMaterial != null) mOreReplacement = aMaterial.mMaterialInto.mOreReplacement;
- return this;
- }
-
- /**
- * This Material smelts always into an instance of aMaterial. Used for Magnets.
- */
- public GT_Materials setSmeltingInto(GT_Materials aMaterial) {
- if (aMaterial != null) mSmeltInto = aMaterial.mMaterialInto.mSmeltInto;
- return this;
- }
-
- /**
- * This Material arc smelts always into an instance of aMaterial. Used for Wrought Iron.
- */
- public GT_Materials setArcSmeltingInto(GT_Materials aMaterial) {
- if (aMaterial != null) mArcSmeltInto = aMaterial.mMaterialInto.mArcSmeltInto;
- return this;
- }
-
- /**
- * This Material macerates always into an instance of aMaterial.
- */
- public GT_Materials setMaceratingInto(GT_Materials aMaterial) {
- if (aMaterial != null) mMacerateInto = aMaterial.mMaterialInto.mMacerateInto;
- return this;
- }
-
- public GT_Materials setEnchantmentForTools(Enchantment aEnchantment, int aEnchantmentLevel) {
- mEnchantmentTools = aEnchantment;
- mEnchantmentToolsLevel = (byte) aEnchantmentLevel;
- return this;
- }
-
- public GT_Materials setEnchantmentForArmors(Enchantment aEnchantment, int aEnchantmentLevel) {
- mEnchantmentArmors = aEnchantment;
- mEnchantmentArmorsLevel = (byte) aEnchantmentLevel;
- return this;
- }
-
- public FluidStack getSolid(long aAmount) {
- if (mSolid == null) return null;
- return new GT_FluidStack(mSolid, (int) aAmount);
- }
-
- public FluidStack getFluid(long aAmount) {
- if (mFluid == null) return null;
- return new GT_FluidStack(mFluid, (int) aAmount);
- }
-
- public FluidStack getGas(long aAmount) {
- if (mGas == null) return null;
- return new GT_FluidStack(mGas, (int) aAmount);
- }
-
- public FluidStack getPlasma(long aAmount) {
- if (mPlasma == null) return null;
- return new GT_FluidStack(mPlasma, (int) aAmount);
- }
-
- public FluidStack getMolten(long aAmount) {
- if (mStandardMoltenFluid == null) return null;
- return new GT_FluidStack(mStandardMoltenFluid, (int) aAmount);
- }
-
- @Override
- public short[] getRGBA() {
- return mRGBa;
- }
-
- public static volatile int VERSION = 508;
-
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechTextureSet.java b/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechTextureSet.java
deleted file mode 100644
index c5473ea958..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechTextureSet.java
+++ /dev/null
@@ -1,144 +0,0 @@
-package miscutil.core.xmod.gregtech.api.enums;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.IIconContainer;
-
-public class GregtechTextureSet {
- public static final GregtechTextureSet
- SET_NONE = new GregtechTextureSet("NONE"), SET_DULL = new GregtechTextureSet("DULL"), SET_RUBY = new GregtechTextureSet("RUBY"), SET_OPAL = new GregtechTextureSet("OPAL"), SET_LEAF = new GregtechTextureSet("LEAF"), SET_WOOD = new GregtechTextureSet("WOOD"), SET_SAND = new GregtechTextureSet("SAND"), SET_FINE = new GregtechTextureSet("FINE"), SET_FIERY = new GregtechTextureSet("FIERY"), SET_FLUID = new GregtechTextureSet("FLUID"), SET_ROUGH = new GregtechTextureSet("ROUGH"), SET_PAPER = new GregtechTextureSet("PAPER"), SET_GLASS = new GregtechTextureSet("GLASS"), SET_FLINT = new GregtechTextureSet("FLINT"), SET_LAPIS = new GregtechTextureSet("LAPIS"), SET_SHINY = new GregtechTextureSet("SHINY"), SET_SHARDS = new GregtechTextureSet("SHARDS"), SET_POWDER = new GregtechTextureSet("POWDER"), SET_QUARTZ = new GregtechTextureSet("QUARTZ"), SET_EMERALD = new GregtechTextureSet("EMERALD"), SET_DIAMOND = new GregtechTextureSet("DIAMOND"), SET_LIGNITE = new GregtechTextureSet("LIGNITE"), SET_MAGNETIC = new GregtechTextureSet("MAGNETIC"), SET_METALLIC = new GregtechTextureSet("METALLIC"), SET_NETHERSTAR = new GregtechTextureSet("NETHERSTAR"), SET_GEM_VERTICAL = new GregtechTextureSet("GEM_VERTICAL"), SET_GEM_HORIZONTAL = new GregtechTextureSet("GEM_HORIZONTAL");
-
- public final IIconContainer[] mTextures = new IIconContainer[128];
- public final String mSetName;
-
- public GregtechTextureSet(String aSetName) {
- mSetName = aSetName;
- mTextures[0] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/turbineBlade");
- mTextures[1] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/toolHeadSkookumChoocher");
- mTextures[2] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[3] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[4] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[5] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[6] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[7] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[8] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[9] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[10] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[11] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[12] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[13] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[14] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[15] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[16] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[17] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[18] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[19] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[20] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[21] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[22] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[23] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[24] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[25] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[26] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[27] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[28] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[29] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[30] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[31] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[32] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[33] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[34] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[35] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[36] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[37] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[38] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[39] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[40] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[41] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[42] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[43] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[44] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[45] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[46] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[47] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[48] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[49] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[50] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[51] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[52] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[53] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[54] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[55] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[56] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[57] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[58] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[59] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[60] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[61] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[62] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[63] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[64] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[65] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[66] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[67] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[68] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[69] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[70] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[71] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[72] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[73] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[74] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[75] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[76] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[77] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[78] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[79] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[80] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[81] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[82] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[83] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[84] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[85] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[86] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[87] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[88] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[89] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[90] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[91] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[92] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[93] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[94] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[95] = new Textures.BlockIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[96] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[97] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[98] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[99] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[100] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[101] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[102] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[103] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[104] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[105] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[106] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[107] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[108] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[109] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[110] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[111] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[112] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[113] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[114] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[115] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[116] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[117] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[118] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[119] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[120] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[121] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[122] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[123] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[124] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[125] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[126] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- mTextures[127] = new Textures.ItemIcons.CustomIcon("materialicons/" + mSetName + "/void");
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechTextures.java b/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechTextures.java
deleted file mode 100644
index b11dc385f9..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechTextures.java
+++ /dev/null
@@ -1,199 +0,0 @@
-package miscutil.core.xmod.gregtech.api.enums;
-
-import gregtech.api.GregTech_API;
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_IconContainer;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_Texture;
-import net.minecraft.client.renderer.texture.TextureMap;
-import net.minecraft.util.IIcon;
-import net.minecraft.util.ResourceLocation;
-
-public class GregtechTextures {
- public enum BlockIcons implements Interface_IconContainer, Runnable {
-
- VOID,
-
- LARGECENTRIFUGE1, LARGECENTRIFUGE2, LARGECENTRIFUGE3,
- LARGECENTRIFUGE4, LARGECENTRIFUGE5, LARGECENTRIFUGE6,
- LARGECENTRIFUGE7, LARGECENTRIFUGE8, LARGECENTRIFUGE9,
- LARGECENTRIFUGE_ACTIVE1, LARGECENTRIFUGE_ACTIVE2, LARGECENTRIFUGE_ACTIVE3,
- LARGECENTRIFUGE_ACTIVE4, LARGECENTRIFUGE_ACTIVE5, LARGECENTRIFUGE_ACTIVE6,
- LARGECENTRIFUGE_ACTIVE7, LARGECENTRIFUGE_ACTIVE8, LARGECENTRIFUGE_ACTIVE9;
-
- public static final Interface_IconContainer[]
-
- CENTRIFUGE = new Interface_IconContainer[]{
- LARGECENTRIFUGE1,
- LARGECENTRIFUGE2,
- LARGECENTRIFUGE3,
- LARGECENTRIFUGE4,
- LARGECENTRIFUGE5,
- LARGECENTRIFUGE6,
- LARGECENTRIFUGE7,
- LARGECENTRIFUGE8,
- LARGECENTRIFUGE9
- },
- CENTRIFUGE_ACTIVE = new Interface_IconContainer[]{
- LARGECENTRIFUGE_ACTIVE1,
- LARGECENTRIFUGE_ACTIVE2,
- LARGECENTRIFUGE_ACTIVE3,
- LARGECENTRIFUGE_ACTIVE4,
- LARGECENTRIFUGE_ACTIVE5,
- LARGECENTRIFUGE_ACTIVE6,
- LARGECENTRIFUGE_ACTIVE7,
- LARGECENTRIFUGE_ACTIVE8,
- LARGECENTRIFUGE_ACTIVE9
- };
-
- public static Interface_Texture[]
- GT_CASING_BLOCKS = new Interface_Texture[64];
-
- protected IIcon mIcon;
-
- private BlockIcons() {
- CORE.GT_BlockIconload.add(this);
- }
-
- @Override
- public IIcon getIcon() {
- return mIcon;
- }
-
- @Override
- public IIcon getOverlayIcon() {
- return null;
- }
-
- @Override
- public void run() {
- mIcon = GregTech_API.sBlockIcons.registerIcon(CORE.MODID + ":" + "iconsets/" + this);
- }
-
- @Override
- public ResourceLocation getTextureFile() {
- return TextureMap.locationBlocksTexture;
- }
-
- public static class CustomIcon implements Interface_IconContainer, Runnable {
- protected IIcon mIcon;
- protected String mIconName;
-
- public CustomIcon(String aIconName) {
- mIconName = aIconName;
- CORE.GT_BlockIconload.add(this);
- }
-
- @Override
- public IIcon getIcon() {
- return mIcon;
- }
-
- @Override
- public IIcon getOverlayIcon() {
- return null;
- }
-
- @Override
- public void run() {
- mIcon = CORE.GT_BlockIcons.registerIcon(CORE.MODID + ":" + mIconName);
- }
-
- @Override
- public ResourceLocation getTextureFile() {
- return TextureMap.locationBlocksTexture;
- }
- }
- }
-
-
- public enum ItemIcons implements Interface_IconContainer, Runnable {
- VOID // The Empty Texture
- , RENDERING_ERROR, SKOOKUMCHOOCHER, DURABILITY_BAR_0, DURABILITY_BAR_1, DURABILITY_BAR_2, DURABILITY_BAR_3, DURABILITY_BAR_4, DURABILITY_BAR_5, DURABILITY_BAR_6, DURABILITY_BAR_7, DURABILITY_BAR_8, ENERGY_BAR_0, ENERGY_BAR_1, ENERGY_BAR_2, ENERGY_BAR_3, ENERGY_BAR_4, ENERGY_BAR_5, ENERGY_BAR_6, ENERGY_BAR_7, ENERGY_BAR_8, TURBINE, TURBINE_SMALL, TURBINE_LARGE, TURBINE_HUGE;
-
- public static final Interface_IconContainer[]
- DURABILITY_BAR = new Interface_IconContainer[]{
- DURABILITY_BAR_0,
- DURABILITY_BAR_1,
- DURABILITY_BAR_2,
- DURABILITY_BAR_3,
- DURABILITY_BAR_4,
- DURABILITY_BAR_5,
- DURABILITY_BAR_6,
- DURABILITY_BAR_7,
- DURABILITY_BAR_8,
- },
- ENERGY_BAR = new Interface_IconContainer[]{
- ENERGY_BAR_0,
- ENERGY_BAR_1,
- ENERGY_BAR_2,
- ENERGY_BAR_3,
- ENERGY_BAR_4,
- ENERGY_BAR_5,
- ENERGY_BAR_6,
- ENERGY_BAR_7,
- ENERGY_BAR_8,
- };
-
- //public static final Interface_Texture[] ERROR_RENDERING = new Interface_Texture[]{new GregtechRenderedTexture(RENDERING_ERROR)};
-
- protected IIcon mIcon, mOverlay;
-
- private ItemIcons() {
- GregTech_API.sGTItemIconload.add(this);
- }
-
- @Override
- public IIcon getIcon() {
- return mIcon;
- }
-
- @Override
- public IIcon getOverlayIcon() {
- return mOverlay;
- }
-
- @Override
- public ResourceLocation getTextureFile() {
- return TextureMap.locationItemsTexture;
- }
-
- @Override
- public void run() {
- mIcon = GregTech_API.sItemIcons.registerIcon(CORE.MODID+ ":" + "iconsets/" + this);
- mOverlay = GregTech_API.sItemIcons.registerIcon(CORE.MODID+ ":" + "iconsets/" + this + "_OVERLAY");
- }
-
- public static class CustomIcon implements Interface_IconContainer, Runnable {
- protected IIcon mIcon, mOverlay;
- protected String mIconName;
-
- public CustomIcon(String aIconName) {
- mIconName = aIconName;
- GregTech_API.sGTItemIconload.add(this);
- }
-
- @Override
- public IIcon getIcon() {
- return mIcon;
- }
-
- @Override
- public IIcon getOverlayIcon() {
- return mOverlay;
- }
-
- @Override
- public void run() {
- mIcon = GregTech_API.sItemIcons.registerIcon(CORE.MODID+ ":" + mIconName);
- mOverlay = GregTech_API.sItemIcons.registerIcon(CORE.MODID+ ":" + mIconName + "_OVERLAY");
- }
-
- @Override
- public ResourceLocation getTextureFile() {
- return TextureMap.locationItemsTexture;
- }
- }
- }
-
-}
-
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechToolDictNames.java b/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechToolDictNames.java
deleted file mode 100644
index 25831f9a48..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/enums/GregtechToolDictNames.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package miscutil.core.xmod.gregtech.api.enums;
-
-public enum GregtechToolDictNames {
-
- craftingToolSkookumChoocher;
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_IndustrialCentrifuge.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_IndustrialCentrifuge.java
deleted file mode 100644
index 0741812a74..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_IndustrialCentrifuge.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_ContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.inventory.Slot;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * The Container I use for all my Basic Machines
- */
-public class CONTAINER_IndustrialCentrifuge extends GT_ContainerMetaTile_Machine {
-
- public CONTAINER_IndustrialCentrifuge(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
-
- super(aInventoryPlayer, aTileEntity);
- }
-
- public CONTAINER_IndustrialCentrifuge(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, boolean bindInventory) {
- super(aInventoryPlayer, aTileEntity, bindInventory);
- }
-
- @Override
- public void addSlots(InventoryPlayer aInventoryPlayer) {
- addSlotToContainer(new Slot(mTileEntity, 1, 154, 42));
- }
-
- @Override
- public int getSlotCount() {
- return 1;
- }
-
- @Override
- public int getShiftClickSlotCount() {
- return 1;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_IronBlastFurnace.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_IronBlastFurnace.java
deleted file mode 100644
index facc0769cd..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_IronBlastFurnace.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_ContainerMetaTile_Machine;
-import gregtech.api.gui.GT_Slot_Output;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.inventory.Slot;
-
-public class CONTAINER_IronBlastFurnace extends GT_ContainerMetaTile_Machine {
- public CONTAINER_IronBlastFurnace(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
- super(aInventoryPlayer, aTileEntity);
- }
-
- @Override
- public void addSlots(InventoryPlayer aInventoryPlayer) {
- addSlotToContainer(new Slot(this.mTileEntity, 0, 34, 16));
- addSlotToContainer(new Slot(this.mTileEntity, 1, 34, 34));
- addSlotToContainer(new GT_Slot_Output(this.mTileEntity, 2, 86, 25));
- addSlotToContainer(new GT_Slot_Output(this.mTileEntity, 3, 104, 25));
- }
-
- @Override
- public int getSlotCount() {
- return 4;
- }
-
- @Override
- public int getShiftClickSlotCount() {
- return 2;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_MultiMachine.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_MultiMachine.java
deleted file mode 100644
index 29d734c22c..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_MultiMachine.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_ContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import net.minecraft.entity.player.InventoryPlayer;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * The Container I use for all my Basic Machines
- */
-public class CONTAINER_MultiMachine extends GT_ContainerMetaTile_Machine {
- public CONTAINER_MultiMachine(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
- super(aInventoryPlayer, aTileEntity);
- }
-
- public CONTAINER_MultiMachine(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, boolean bindInventory) {
- super(aInventoryPlayer, aTileEntity, bindInventory);
- }
-}
-
- /*@Override
- public void addSlots(InventoryPlayer aInventoryPlayer) {
- addSlotToContainer(new Slot(mTileEntity, 1, 152, 5));
- }
-
- @Override
- public int getSlotCount() {
- return 1;
- }
-
- @Override
- public int getShiftClickSlotCount() {
- return 0;
- }
-}*/
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SafeBlock.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SafeBlock.java
deleted file mode 100644
index 1145ebfa67..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SafeBlock.java
+++ /dev/null
@@ -1,123 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_ContainerMetaTile_Machine;
-import gregtech.api.gui.GT_Slot_Holo;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-
-import java.util.UUID;
-
-import miscutil.core.util.player.PlayerCache;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaSafeBlock;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.inventory.Slot;
-import net.minecraft.item.ItemStack;
-
-public class CONTAINER_SafeBlock
-extends GT_ContainerMetaTile_Machine {
- public CONTAINER_SafeBlock(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
- super(aInventoryPlayer, aTileEntity);
- }
-
- //public String UUID = ((BaseMetaTileEntity)mTileEntity).getMetaTileEntity().getBaseMetaTileEntity().getOwnerName();
- public UUID ownerUUID = ((GregtechMetaSafeBlock)this.mTileEntity.getMetaTileEntity()).ownerUUID;
- public String tempPlayer = PlayerCache.lookupPlayerByUUID(ownerUUID);
- public boolean blockStatus = ((GregtechMetaSafeBlock)this.mTileEntity.getMetaTileEntity()).bUnbreakable;
-
- @Override
- public void addSlots(InventoryPlayer aInventoryPlayer) {
- for (int y = 0; y < 3; y++) {
- for (int x = 0; x < 9; x++) {
- addSlotToContainer(new Slot(this.mTileEntity, x + y * 9, 8 + x * 18, 5 + y * 18));
- }
- }
- addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 27, 8, 63, false, true, 1));
- addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 27, 26, 63, false, true, 1));
- addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 27, 44, 63, false, true, 1));
- }
-
- @Override
- public ItemStack slotClick(int aSlotIndex, int aMouseclick, int aShifthold, EntityPlayer aPlayer) {
- int runs = 0;
- if (aSlotIndex < 27) {
- return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
- }
- Slot tSlot = (Slot) this.inventorySlots.get(aSlotIndex);
- if (tSlot != null) {
- if (this.mTileEntity.getMetaTileEntity() == null) {
- return null;
- }
- if (aSlotIndex == 27) {
-
-
- /*((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bOutput = (!((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bOutput);
- if (((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bOutput) {
- if (aPlayer != null && aPlayer instanceof EntityPlayerMP && (((GregtechMetaSafeBlock)this.mTileEntity.getMetaTileEntity()).bOutput != false)) {
-
- Utils.LOG_INFO(String.valueOf(Sys.is64Bit()));
- Utils.messagePlayer(aPlayer, "Salmon");
- }
-
- GT_Utility.sendChatToPlayer(aPlayer, "Emit Energy to Outputside");
- } else {
- GT_Utility.sendChatToPlayer(aPlayer, "Don't emit Energy");
- }
- return null;*/
-
-
- }
- if (aSlotIndex == 28) {}
- /* ((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull = (!((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull);
- if (((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull) {
- GT_Utility.sendChatToPlayer(aPlayer, "Emit Redstone if no Slot is free");
- } else {
- GT_Utility.sendChatToPlayer(aPlayer, "Don't emit Redstone");
- }
- return null;
- }*/
- if (aSlotIndex == 29) /*{
- if (((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bUnbreakable) {
- if (((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bUnbreakable) {
- makeIndestructible(aPlayer);
- }
- else {
-
- }
- } else {
- makeIndestructible(aPlayer);
- }
- return null;
- }*/
-
- {
- ((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bUnbreakable = (!((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bUnbreakable);
- blockStatus = ((GregtechMetaSafeBlock)this.mTileEntity.getMetaTileEntity()).bUnbreakable;
- ownerUUID = ((GregtechMetaSafeBlock)this.mTileEntity.getMetaTileEntity()).ownerUUID;
- //Utils.messagePlayer(aPlayer, "Is the safe locked? "+String.valueOf(((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity()).bUnbreakable).toUpperCase());
- /*if (aPlayer != null && aPlayer instanceof EntityPlayerMP && (((GregtechMetaSafeBlock)this.mTileEntity.getMetaTileEntity()).bUnbreakable != false)) {
- UnbreakableBlockManager Xasda = new UnbreakableBlockManager();
- Xasda.setmTileEntity((BaseMetaTileEntity) mTileEntity, aPlayer);
- }
- else {
- UnbreakableBlockManager Xasda = new UnbreakableBlockManager();
- Xasda.setmTileEntity((BaseMetaTileEntity) mTileEntity, aPlayer);
- }*/
- return null;
- }
-
-
- }
- return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
- }
-
- @Override
- public int getSlotCount() {
- return 27;
- }
-
- @Override
- public int getShiftClickSlotCount() {
- return 27;
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SolarGenerator.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SolarGenerator.java
deleted file mode 100644
index a57699ad97..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SolarGenerator.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_ContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-
-import java.util.Iterator;
-
-import miscutil.core.xmod.gregtech.common.tileentities.generators.GregtechMetaTileEntitySolarGenerator;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.inventory.ICrafting;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-public class CONTAINER_SolarGenerator
- extends GT_ContainerMetaTile_Machine {
- private final int mSteamCapacity;
- public int mWaterAmount = 0;
- public int mSteamAmount = 0;
- public int mProcessingEnergy = 0;
- public int mTemperature = 2;
- public CONTAINER_SolarGenerator(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, int aSteamCapacity) {
- super(aInventoryPlayer, aTileEntity);
- this.mSteamCapacity = aSteamCapacity;
- }
-
- public void addSlots(InventoryPlayer aInventoryPlayer) {
- //addSlotToContainer(new Slot(this.mTileEntity, 2, 116, 62));
- //addSlotToContainer(new Slot(this.mTileEntity, 0, 44, 26));
- //addSlotToContainer(new Slot(this.mTileEntity, 1, 44, 62));
- //addSlotToContainer(new Slot(this.mTileEntity, 3, 116, 26));
- }
-
- public int getSlotCount() {
- return 0;
- }
-
- public int getShiftClickSlotCount() {
- return 0;
- }
-
- public void detectAndSendChanges() {
- super.detectAndSendChanges();
- if ((this.mTileEntity.isClientSide()) || (this.mTileEntity.getMetaTileEntity() == null)) {
- return;
- }
- this.mTemperature = ((GregtechMetaTileEntitySolarGenerator) this.mTileEntity.getMetaTileEntity()).mSolarCharge;
- this.mProcessingEnergy = ((GregtechMetaTileEntitySolarGenerator) this.mTileEntity.getMetaTileEntity()).mProcessingEnergy;
-
- this.mTemperature = Math.min(54, Math.max(0, this.mTemperature * 54 / (((GregtechMetaTileEntitySolarGenerator) this.mTileEntity.getMetaTileEntity()).maxProgresstime() - 10)));
- this.mEnergy = (int) Math.min(Integer.MAX_VALUE, mTileEntity.getStoredEU());
- this.mProcessingEnergy = Math.min(14, Math.max(this.mProcessingEnergy > 0 ? 1 : 0, this.mProcessingEnergy * 14 / 1000));
-
- Iterator var2 = this.crafters.iterator();
- while (var2.hasNext()) {
- ICrafting var1 = (ICrafting) var2.next();
- var1.sendProgressBarUpdate(this, 100, this.mTemperature);
- var1.sendProgressBarUpdate(this, 101, this.mProcessingEnergy);
- var1.sendProgressBarUpdate(this, 102, this.mSteamAmount);
- var1.sendProgressBarUpdate(this, 103, this.mWaterAmount);
- }
- }
-
- @SideOnly(Side.CLIENT)
- public void updateProgressBar(int par1, int par2) {
- super.updateProgressBar(par1, par2);
- switch (par1) {
- case 100:
- this.mTemperature = par2;
- break;
- case 101:
- this.mProcessingEnergy = par2;
- break;
- case 102:
- this.mSteamAmount = par2;
- break;
- case 103:
- this.mWaterAmount = par2;
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SteamCondenser.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SteamCondenser.java
deleted file mode 100644
index 0b7d80c940..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/CONTAINER_SteamCondenser.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_ContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-
-import java.util.Iterator;
-
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.generators.GregtechMetaBoilerBase;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.inventory.ICrafting;
-import net.minecraft.inventory.Slot;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-public class CONTAINER_SteamCondenser extends GT_ContainerMetaTile_Machine
-{
- public CONTAINER_SteamCondenser(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, int aSteamCapacity)
- {
- super(aInventoryPlayer, aTileEntity);
- this.mSteamCapacity = aSteamCapacity;
- }
-
- @Override
-public void addSlots(InventoryPlayer aInventoryPlayer)
- {
- addSlotToContainer(new Slot(this.mTileEntity, 2, 116, 62));
- addSlotToContainer(new Slot(this.mTileEntity, 0, 44, 26));
- addSlotToContainer(new Slot(this.mTileEntity, 1, 44, 62));
- addSlotToContainer(new Slot(this.mTileEntity, 3, 116, 26));
- }
-
- @Override
-public int getSlotCount()
- {
- return 4;
- }
-
- @Override
-public int getShiftClickSlotCount()
- {
- return 1;
- }
-
- public int mWaterAmount = 0;
- public int mSteamAmount = 0;
- public int mProcessingEnergy = 0;
- public int mTemperature = 2;
- private final int mSteamCapacity;
- public long mTickingTime = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).RI;
-
- @Override
-public void detectAndSendChanges()
- {
- super.detectAndSendChanges();
- if ((this.mTileEntity.isClientSide()) || (this.mTileEntity.getMetaTileEntity() == null)) {
- return;
- }
- this.mTemperature = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mTemperature;
- this.mProcessingEnergy = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mProcessingEnergy;
- this.mSteamAmount = (((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mSteam == null ? 0 : ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mSteam.amount);
- this.mWaterAmount = (((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mFluid == null ? 0 : ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mFluid.amount);
- this.mTickingTime = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).RI;
-
- this.mTemperature = Math.min(54, Math.max(0, this.mTemperature * 54 / (((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).maxProgresstime() - 10)));
- this.mSteamAmount = Math.min(54, Math.max(0, this.mSteamAmount * 54 / (this.mSteamCapacity - 100)));
- this.mWaterAmount = Math.min(54, Math.max(0, this.mWaterAmount * 54 / 15900));
- this.mProcessingEnergy = Math.min(14, Math.max(this.mProcessingEnergy > 0 ? 1 : 0, this.mProcessingEnergy * 14 / 1000));
-
- Iterator var2 = this.crafters.iterator();
- while (var2.hasNext())
- {
- ICrafting var1 = (ICrafting)var2.next();
- var1.sendProgressBarUpdate(this, 100, this.mTemperature);
- var1.sendProgressBarUpdate(this, 101, this.mProcessingEnergy);
- var1.sendProgressBarUpdate(this, 102, this.mSteamAmount);
- var1.sendProgressBarUpdate(this, 103, this.mWaterAmount);
- }
- }
-
- @Override
-@SideOnly(Side.CLIENT)
- public void updateProgressBar(int par1, int par2)
- {
- super.updateProgressBar(par1, par2);
- switch (par1)
- {
- case 100:
- this.mTemperature = par2; break;
- case 101:
- this.mProcessingEnergy = par2; break;
- case 102:
- this.mSteamAmount = par2; break;
- case 103:
- this.mWaterAmount = par2;
- }
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_IndustrialCentrifuge.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_IndustrialCentrifuge.java
deleted file mode 100644
index 24218d5e13..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_IndustrialCentrifuge.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-
-import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import miscutil.core.lib.CORE;
-import net.minecraft.entity.player.InventoryPlayer;
-
-
-public class GUI_IndustrialCentrifuge extends GT_GUIContainerMetaTile_Machine {
-
- String mName = "";
- private short counter = 0;
-
- public GUI_IndustrialCentrifuge(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aTextureFile) {
- super(new CONTAINER_IndustrialCentrifuge(aInventoryPlayer, aTileEntity), CORE.RES_PATH_GUI + (aTextureFile == null ? "MultiblockDisplay" : aTextureFile));
- mName = aName;
- }
-
- @Override
- protected void drawGuiContainerForegroundLayer(int par1, int par2) {
- fontRendererObj.drawString(mName, 10, 8, 16448255);
- if (counter >= 100){
- counter = 0;
- }
- else {
- counter++;
- }
- if (mContainer != null) {
- if ((((CONTAINER_IndustrialCentrifuge) mContainer).mDisplayErrorCode & 1) != 0)
- fontRendererObj.drawString("Pipe is loose.", 10, 16, 16448255);
- if ((((CONTAINER_IndustrialCentrifuge) mContainer).mDisplayErrorCode & 2) != 0)
- fontRendererObj.drawString("Screws are missing.", 10, 24, 16448255);
- if ((((CONTAINER_IndustrialCentrifuge) mContainer).mDisplayErrorCode & 4) != 0)
- fontRendererObj.drawString("Something is stuck.", 10, 32, 16448255);
- if ((((CONTAINER_IndustrialCentrifuge) mContainer).mDisplayErrorCode & 8) != 0)
- fontRendererObj.drawString("Platings are dented.", 10, 40, 16448255);
- if ((((CONTAINER_IndustrialCentrifuge) mContainer).mDisplayErrorCode & 32) != 0)
- fontRendererObj.drawString("That doesn't belong there.", 10, 56, 16448255);
- if ((((CONTAINER_IndustrialCentrifuge) mContainer).mDisplayErrorCode & 64) != 0)
- fontRendererObj.drawString("Incomplete Structure.", 10, 64, 16448255);
-
- if (((CONTAINER_IndustrialCentrifuge) mContainer).mDisplayErrorCode == 0) {
- if (((CONTAINER_IndustrialCentrifuge) mContainer).mActive == 0) {
- fontRendererObj.drawString("Hit with Soft Hammer", 10, 16, 16448255);
- fontRendererObj.drawString("to (re-)start the Machine", 10, 24, 16448255);
- fontRendererObj.drawString("if it doesn't start.", 10, 32, 16448255);
- } else {
- fontRendererObj.drawString("Running perfectly.", 10, 16, 16448255);
- /*if (CORE.DEBUG){
- fontRendererObj.drawString("Debug Counter: "+counter, 10, 56, 16448255);
- }*/
- }
- }
- }
- }
-
- @Override
- protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) {
- super.drawGuiContainerBackgroundLayer(par1, par2, par3);
- int x = (width - xSize) / 2;
- int y = (height - ySize) / 2;
- drawTexturedModalRect(x, y, 0, 0, xSize, ySize);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_IronBlastFurnace.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_IronBlastFurnace.java
deleted file mode 100644
index fa0f996a63..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_IronBlastFurnace.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import miscutil.core.lib.CORE;
-import net.minecraft.entity.player.InventoryPlayer;
-
-public class GUI_IronBlastFurnace
- extends GT_GUIContainerMetaTile_Machine {
- public GUI_IronBlastFurnace(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
- super(new CONTAINER_IronBlastFurnace(aInventoryPlayer, aTileEntity), CORE.RES_PATH_GUI+"IronBlastFurnace.png");
- }
-
- @Override
- protected void drawGuiContainerForegroundLayer(int par1, int par2) {
- this.fontRendererObj.drawString("Iron Blast Furnace", 8, 4, 4210752);
- }
-
- @Override
- protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) {
- super.drawGuiContainerBackgroundLayer(par1, par2, par3);
- int x = (this.width - this.xSize) / 2;
- int y = (this.height - this.ySize) / 2;
- drawTexturedModalRect(x, y, 0, 0, this.xSize, this.ySize);
- if ((this.mContainer != null) &&
- (this.mContainer.mProgressTime > 0)) {
- drawTexturedModalRect(x + 58, y + 28, 176, 0, Math.max(0, Math.min(20, (this.mContainer.mProgressTime > 0 ? 1 : 0) + this.mContainer.mProgressTime * 20 / (this.mContainer.mMaxProgressTime < 1 ? 1 : this.mContainer.mMaxProgressTime))), 11);
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_MultiMachine.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_MultiMachine.java
deleted file mode 100644
index 7501af3fce..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_MultiMachine.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-
-import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import miscutil.core.lib.CORE;
-import net.minecraft.entity.player.InventoryPlayer;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * The GUI-Container I use for all my Basic Machines
- * <p/>
- * As the NEI-RecipeTransferRect Handler can't handle one GUI-Class for all GUIs I needed to produce some dummy-classes which extend this class
- */
-public class GUI_MultiMachine extends GT_GUIContainerMetaTile_Machine {
-
- String mName = "";
-
- public GUI_MultiMachine(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aTextureFile) {
- super(new CONTAINER_MultiMachine(aInventoryPlayer, aTileEntity), CORE.RES_PATH_GUI + (aTextureFile == null ? "MultiblockDisplay" : aTextureFile));
- mName = aName;
- }
-
- @Override
- protected void drawGuiContainerForegroundLayer(int par1, int par2) {
- fontRendererObj.drawString(mName, 10, 8, 16448255);
-
- if (mContainer != null) {
- if ((((CONTAINER_MultiMachine) mContainer).mDisplayErrorCode & 1) != 0)
- fontRendererObj.drawString("Pipe is loose.", 10, 16, 16448255);
- if ((((CONTAINER_MultiMachine) mContainer).mDisplayErrorCode & 2) != 0)
- fontRendererObj.drawString("Screws are missing.", 10, 24, 16448255);
- if ((((CONTAINER_MultiMachine) mContainer).mDisplayErrorCode & 4) != 0)
- fontRendererObj.drawString("Something is stuck.", 10, 32, 16448255);
- if ((((CONTAINER_MultiMachine) mContainer).mDisplayErrorCode & 8) != 0)
- fontRendererObj.drawString("Platings are dented.", 10, 40, 16448255);
- if ((((CONTAINER_MultiMachine) mContainer).mDisplayErrorCode & 16) != 0)
- fontRendererObj.drawString("Circuitry burned out.", 10, 48, 16448255);
- if ((((CONTAINER_MultiMachine) mContainer).mDisplayErrorCode & 32) != 0)
- fontRendererObj.drawString("That doesn't belong there.", 10, 56, 16448255);
- if ((((CONTAINER_MultiMachine) mContainer).mDisplayErrorCode & 64) != 0)
- fontRendererObj.drawString("Incomplete Structure.", 10, 64, 16448255);
-
- if (((CONTAINER_MultiMachine) mContainer).mDisplayErrorCode == 0) {
- if (((CONTAINER_MultiMachine) mContainer).mActive == 0) {
- fontRendererObj.drawString("Hit with Soft Hammer", 10, 16, 16448255);
- fontRendererObj.drawString("to (re-)start the Machine", 10, 24, 16448255);
- fontRendererObj.drawString("if it doesn't start.", 10, 32, 16448255);
- } else {
- fontRendererObj.drawString("Running perfectly.", 10, 16, 16448255);
- }
- }
- }
- }
-
- @Override
- protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) {
- super.drawGuiContainerBackgroundLayer(par1, par2, par3);
- int x = (width - xSize) / 2;
- int y = (height - ySize) / 2;
- drawTexturedModalRect(x, y, 0, 0, xSize, ySize);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SafeBlock.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SafeBlock.java
deleted file mode 100644
index 71b52a1af5..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SafeBlock.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import miscutil.core.lib.CORE;
-import net.minecraft.entity.player.InventoryPlayer;
-
-public class GUI_SafeBlock
- extends GT_GUIContainerMetaTile_Machine {
- public GUI_SafeBlock(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
- super(new CONTAINER_SafeBlock(aInventoryPlayer, aTileEntity), CORE.RES_PATH_GUI + "SafeBlock.png");
- }
-
- //String UUID = ((CONTAINER_SafeBlock)this.mContainer).ownerUUID.toString();
- boolean blockStatus = ((CONTAINER_SafeBlock)this.mContainer).blockStatus;
- //String tempPlayer;
-
- private void updateVars(){
- //UUID = ((CONTAINER_SafeBlock)this.mContainer).ownerUUID;
- blockStatus = ((CONTAINER_SafeBlock)this.mContainer).blockStatus;
- // tempPlayer = PlayerCache.lookupPlayerByUUID(UUID);
- }
-
- @Override
- protected void drawGuiContainerForegroundLayer(int par1, int par2)
- {
- updateVars();
- //this.fontRendererObj.drawString("Owner: "+ tempPlayer, 64, 72, 4210752);
- //this.fontRendererObj.drawString(": "+ UUID.toLowerCase(), 44, 82, 4210752);
- this.fontRendererObj.drawString("Safe Status", 76, 61, 4210752);
- if (blockStatus){
- this.fontRendererObj.drawString("Locked", 88, 73, 4210752);
- }
- else {
- this.fontRendererObj.drawString("Unlocked", 82, 73, 4210752);
- }
- }
-
- @Override
- protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) {
- super.drawGuiContainerBackgroundLayer(par1, par2, par3);
- int x = (this.width - this.xSize) / 2;
- int y = (this.height - this.ySize) / 2;
- drawTexturedModalRect(x, y, 0, 0, this.xSize, this.ySize);
- /*String UUID = ((CONTAINER_SafeBlock)this.mContainer).UUID;
- this.fontRendererObj.drawString("Owner UUID: "+ UUID, 8, 12, 4210752);*/
-
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SolarGenerator.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SolarGenerator.java
deleted file mode 100644
index 61e29d93cb..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SolarGenerator.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import net.minecraft.entity.player.InventoryPlayer;
-
-public class GUI_SolarGenerator
- extends GT_GUIContainerMetaTile_Machine {
- public GUI_SolarGenerator(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aTextureName, int aSteamCapacity) {
- super(new CONTAINER_SolarGenerator(aInventoryPlayer, aTileEntity, aSteamCapacity), "gregtech:textures/gui/" + aTextureName);
- }
-
- protected void drawGuiContainerForegroundLayer(int par1, int par2) {
- this.fontRendererObj.drawString("Solar Generator", 8, 4, 4210752);
- }
-
- protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) {
- super.drawGuiContainerBackgroundLayer(par1, par2, par3);
- int x = (this.width - this.xSize) / 2;
- int y = (this.height - this.ySize) / 2;
- drawTexturedModalRect(x, y, 0, 0, this.xSize, this.ySize);
- if (this.mContainer != null) {
- int tScale = ((CONTAINER_SolarGenerator) this.mContainer).mProcessingEnergy;
- if (tScale > 0) {
- drawTexturedModalRect(x + 70, y + 25 + 54 - tScale, 194, 54 - tScale, 10, tScale);
- }
- tScale = ((CONTAINER_SolarGenerator) this.mContainer).mEnergy;
- if (tScale > 0) {
- drawTexturedModalRect(x + 83, y + 25 + 54 - tScale, 204, 54 - tScale, 10, tScale);
- }
- tScale = ((CONTAINER_SolarGenerator) this.mContainer).mTemperature;
- if (tScale > 0) {
- drawTexturedModalRect(x + 96, y + 25 + 54 - tScale, 214, 54 - tScale, 10, tScale);
- }
- tScale = ((CONTAINER_SolarGenerator) this.mContainer).mProcessingEnergy;
- if (tScale > 0) {
- drawTexturedModalRect(x + 117, y + 44 + 14 - tScale, 177, 14 - tScale, 15, tScale + 1);
- }
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SteamCondenser.java b/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SteamCondenser.java
deleted file mode 100644
index f75e180a12..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/gui/GUI_SteamCondenser.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package miscutil.core.xmod.gregtech.api.gui;
-
-import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import miscutil.core.lib.CORE;
-import net.minecraft.entity.player.InventoryPlayer;
-
-public class GUI_SteamCondenser extends GT_GUIContainerMetaTile_Machine
-{
- long tickTime = 0;
-
- public GUI_SteamCondenser(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aTextureName, int aSteamCapacity)
- {
- super(new CONTAINER_SteamCondenser(aInventoryPlayer, aTileEntity, aSteamCapacity), CORE.RES_PATH_GUI + aTextureName);
- }
-
- @Override
-protected void drawGuiContainerForegroundLayer(int par1, int par2)
- {
- this.fontRendererObj.drawString("Condenser", 8, 4, 4210752);
- if (CORE.DEBUG){
- tickTime = ((CONTAINER_SteamCondenser)this.mContainer).mTickingTime;
- this.fontRendererObj.drawString("Tick Time: "+tickTime, 8, 12, 4210752);
- }
- }
-
- @Override
-protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3)
- {
- super.drawGuiContainerBackgroundLayer(par1, par2, par3);
- int x = (this.width - this.xSize) / 2;
- int y = (this.height - this.ySize) / 2;
- drawTexturedModalRect(x, y, 0, 0, this.xSize, this.ySize);
- if (this.mContainer != null)
- {
-
- int tScale = ((CONTAINER_SteamCondenser)this.mContainer).mSteamAmount;
- if (tScale > 0) {
- drawTexturedModalRect(x + 70, y + 25 + 54 - tScale, 194, 54 - tScale, 10, tScale);
- }
- tScale = ((CONTAINER_SteamCondenser)this.mContainer).mWaterAmount;
- if (tScale > 0) {
- drawTexturedModalRect(x + 83, y + 25 + 54 - tScale, 204, 54 - tScale, 10, tScale);
- }
- tScale = ((CONTAINER_SteamCondenser)this.mContainer).mTemperature;
- if (tScale > 0) {
- drawTexturedModalRect(x + 96, y + 25 + 54 - tScale, 214, 54 - tScale, 10, tScale);
- }
- tScale = ((CONTAINER_SteamCondenser)this.mContainer).mProcessingEnergy;
- if (tScale > 0) {
- drawTexturedModalRect(x + 115, y + 44 + 2/* - tScale*/, 177, 14 - tScale, 15, 1+tScale);
- }
- }
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/GregtechItemContainer.java b/src/Java/miscutil/core/xmod/gregtech/api/interfaces/GregtechItemContainer.java
deleted file mode 100644
index e118e414f2..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/GregtechItemContainer.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package miscutil.core.xmod.gregtech.api.interfaces;
-
-import net.minecraft.block.Block;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-
-public interface GregtechItemContainer {
- public Item getItem();
- public Block getBlock();
- public boolean isStackEqual(Object aStack);
- public boolean isStackEqual(Object aStack, boolean aWildcard, boolean aIgnoreNBT);
- public ItemStack get(long aAmount, Object... aReplacements);
- public ItemStack getWildcard(long aAmount, Object... aReplacements);
- public ItemStack getUndamaged(long aAmount, Object... aReplacements);
- public ItemStack getAlmostBroken(long aAmount, Object... aReplacements);
- public ItemStack getWithDamage(long aAmount, long aMetaValue, Object... aReplacements);
- public GregtechItemContainer set(Item aItem);
- public GregtechItemContainer set(ItemStack aStack);
- public GregtechItemContainer registerOre(Object... aOreNames);
- public GregtechItemContainer registerWildcardAsOre(Object... aOreNames);
- public ItemStack getWithCharge(long aAmount, int aEnergy, Object... aReplacements);
- public ItemStack getWithName(long aAmount, String aDisplayName, Object... aReplacements);
- public boolean hasBeenSet();
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java b/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java
deleted file mode 100644
index 6ee921f4bf..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package miscutil.core.xmod.gregtech.api.interfaces.internal;
-
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidStack;
-
-public interface IGregtech_RecipeAdder {
- /**
- * Adds a Coke Oven Recipe
- *
- * @param aInput1 = first Input (not null, and respects StackSize)
- * @param aInputb = second Input (can be null, and respects StackSize)
- * @param aFluidOutput = Output of the Creosote (not null, and respects StackSize)
- * @param aFluidInput = fluid Input (can be null, and respects StackSize)
- * @param aOutput = Output of the Coal/coke (can be null, and respects StackSize)
- * @param aDuration = Duration (must be >= 0)
- * @param aEUt = EU needed for heating up (must be >= 0)
- * @return true if the Recipe got added, otherwise false.
- */
- //public boolean addCokeOvenRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue);
- public boolean addCokeOvenRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt);
-
- public boolean addFuel(ItemStack aInput1, ItemStack aOutput1, int aEU, int aType);
-
-
- /**
- * Adds a Matter Fabricator Recipe
- *
- * @param aFluidOutput = Output of the UU-Matter (not null, and respects StackSize)
- * @param aFluidInput = fluid Input (can be UU_Amp or null, and respects StackSize)
- * @param aDuration = Duration (must be >= 0)
- * @param aEUt = EU needed for heating up (must be >= 0)
- * @return true if the Recipe got added, otherwise false.
- */
- public boolean addMattrFabricatorRecipe(FluidStack aFluidInput, FluidStack aFluidOutput, int aDuration, int aEUt);
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_IconContainer.java b/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_IconContainer.java
deleted file mode 100644
index 4609a981dc..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_IconContainer.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package miscutil.core.xmod.gregtech.api.interfaces.internal;
-
-import net.minecraft.util.IIcon;
-import net.minecraft.util.ResourceLocation;
-
-public interface Interface_IconContainer {
- /**
- * @return A regular Icon.
- */
- public IIcon getIcon();
-
- /**
- * @return Icon of the Overlay (or null if there is no Icon)
- */
- public IIcon getOverlayIcon();
-
- /**
- * @return the Default Texture File for this Icon.
- */
- public ResourceLocation getTextureFile();
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_ItemBehaviour.java b/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_ItemBehaviour.java
deleted file mode 100644
index fd6b953f7b..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_ItemBehaviour.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package miscutil.core.xmod.gregtech.api.interfaces.internal;
-
-import gregtech.api.enums.SubTag;
-
-import java.util.List;
-
-import miscutil.core.xmod.gregtech.api.items.Gregtech_MetaItem_Base;
-import net.minecraft.dispenser.IBlockSource;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.projectile.EntityArrow;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.world.World;
-
-public interface Interface_ItemBehaviour<E extends Item> {
- public boolean onLeftClickEntity(E aItem, ItemStack aStack, EntityPlayer aPlayer, Entity aEntity);
-
- public boolean onItemUse(E aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ);
-
- public boolean onItemUseFirst(E aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ);
-
- public ItemStack onItemRightClick(E aItem, ItemStack aStack, World aWorld, EntityPlayer aPlayer);
-
- public List<String> getAdditionalToolTips(E aItem, List<String> aList, ItemStack aStack);
-
- public void onUpdate(E aItem, ItemStack aStack, World aWorld, Entity aPlayer, int aTimer, boolean aIsInHand);
-
- public boolean isItemStackUsable(E aItem, ItemStack aStack);
-
- public boolean canDispense(E aItem, IBlockSource aSource, ItemStack aStack);
-
- public ItemStack onDispense(E aItem, IBlockSource aSource, ItemStack aStack);
-
- public boolean hasProjectile(Gregtech_MetaItem_Base aItem, SubTag aProjectileType, ItemStack aStack);
-
- public EntityArrow getProjectile(E aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, double aX, double aY, double aZ);
-
- public EntityArrow getProjectile(E aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed);
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_OreRecipeRegistrator.java b/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_OreRecipeRegistrator.java
deleted file mode 100644
index a81539df29..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_OreRecipeRegistrator.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package miscutil.core.xmod.gregtech.api.interfaces.internal;
-
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import net.minecraft.item.ItemStack;
-
-public interface Interface_OreRecipeRegistrator {
- /**
- * Contains a Code Fragment, used in the OrePrefix to register Recipes. Better than using a switch/case, like I did before.
- *
- * @param aPrefix always != null
- * @param aMaterial always != null, and can be == _NULL if the Prefix is Self Referencing or not Material based!
- * @param aStack always != null
- */
- public void registerOre(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack);
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_OreRecipeRegistrator_GT.java b/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_OreRecipeRegistrator_GT.java
deleted file mode 100644
index dd9751f4db..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_OreRecipeRegistrator_GT.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package miscutil.core.xmod.gregtech.api.interfaces.internal;
-
-import gregtech.api.enums.OrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import net.minecraft.item.ItemStack;
-
-public interface Interface_OreRecipeRegistrator_GT {
- /**
- * Contains a Code Fragment, used in the OrePrefix to register Recipes. Better than using a switch/case, like I did before.
- *
- * @param aPrefix always != null
- * @param aMaterial always != null, and can be == _NULL if the Prefix is Self Referencing or not Material based!
- * @param aStack always != null
- */
- public void registerOre(OrePrefixes aPrefix, GT_Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack);
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_Texture.java b/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_Texture.java
deleted file mode 100644
index 5e70e9b2b2..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_Texture.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package miscutil.core.xmod.gregtech.api.interfaces.internal;
-
-import net.minecraft.block.Block;
-import net.minecraft.client.renderer.RenderBlocks;
-
-public interface Interface_Texture {
- public void renderXPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ);
-
- public void renderXNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ);
-
- public void renderYPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ);
-
- public void renderYNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ);
-
- public void renderZPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ);
-
- public void renderZNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ);
-
- public boolean isValidTexture();
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_ToolStats.java b/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_ToolStats.java
deleted file mode 100644
index e2a7c4b5cf..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/interfaces/internal/Interface_ToolStats.java
+++ /dev/null
@@ -1,160 +0,0 @@
-package miscutil.core.xmod.gregtech.api.interfaces.internal;
-
-import gregtech.api.interfaces.IIconContainer;
-
-import java.util.List;
-
-import miscutil.core.xmod.gregtech.api.items.Gregtech_MetaTool;
-import net.minecraft.block.Block;
-import net.minecraft.enchantment.Enchantment;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.DamageSource;
-import net.minecraftforge.event.world.BlockEvent;
-
-/**
- * The Stats for GT Tools. Not including any Material Modifiers.
- * <p/>
- * And this is supposed to not have any ItemStack Parameters as these are generic Stats.
- */
-public interface Interface_ToolStats {
- /**
- * Called when aPlayer crafts this Tool
- */
- public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer);
-
- /**
- * Called when this gets added to a Tool Item
- */
- public void onStatsAddedToTool(Gregtech_MetaTool gregtech_MetaTool, int aID);
-
- /**
- * @return Damage the Tool receives when breaking a Block. 100 is one Damage Point (or 100 EU).
- */
- public int getToolDamagePerBlockBreak();
-
- /**
- * @return Damage the Tool receives when converting the drops of a Block. 100 is one Damage Point (or 100 EU).
- */
- public int getToolDamagePerDropConversion();
-
- /**
- * @return Damage the Tool receives when being used as Container Item. 100 is one use, however it is usually 8 times more than normal.
- */
- public int getToolDamagePerContainerCraft();
-
- /**
- * @return Damage the Tool receives when being used as Weapon, 200 is the normal Value, 100 for actual Weapons.
- */
- public int getToolDamagePerEntityAttack();
-
- /**
- * @return Basic Quality of the Tool, 0 is normal. If increased, it will increase the general quality of all Tools of this Type. Decreasing is also possible.
- */
- public int getBaseQuality();
-
- /**
- * @return The Damage Bonus for this Type of Tool against Mobs. 1.0F is normal punch.
- */
- public float getBaseDamage();
-
- /**
- * @return This gets the Hurt Resistance time for Entities getting hit. (always does 1 as minimum)
- */
- public int getHurtResistanceTime(int aOriginalHurtResistance, Entity aEntity);
-
- /**
- * @return This is a multiplier for the Tool Speed. 1.0F = no special Speed.
- */
- public float getSpeedMultiplier();
-
- /**
- * @return This is a multiplier for the Tool Speed. 1.0F = no special Durability.
- */
- public float getMaxDurabilityMultiplier();
-
- public DamageSource getDamageSource(EntityLivingBase aPlayer, Entity aEntity);
-
- public String getMiningSound();
-
- public String getCraftingSound();
-
- public String getEntityHitSound();
-
- public String getBreakingSound();
-
- public Enchantment[] getEnchantments(ItemStack aStack);
-
- public int[] getEnchantmentLevels(ItemStack aStack);
-
- /**
- * @return If this Tool can be used for blocking Damage like a Sword.
- */
- public boolean canBlock();
-
- /**
- * @return If this Tool can be used as an RC Crowbar.
- */
- public boolean isCrowbar();
-
- /**
- * @return If this Tool can be used as an BC Wrench.
- */
- public boolean isWrench();
-
- /**
- * @return If this Tool can be used as Weapon i.e. if that is the main purpose.
- */
- public boolean isWeapon();
-
- /**
- * @return If this Tool is a Ranged Weapon. Return false at isWeapon unless you have a Blade attached to your Bow/Gun or something
- */
- public boolean isRangedWeapon();
-
- /**
- * @return If this Tool can be used as Weapon i.e. if that is the main purpose.
- */
- public boolean isMiningTool();
-
- /**
- * aBlock.getHarvestTool(aMetaData) can return the following Values for example.
- * "axe", "pickaxe", "sword", "shovel", "hoe", "grafter", "saw", "wrench", "crowbar", "file", "hammer", "plow", "plunger", "scoop", "screwdriver", "sense", "scythe", "softhammer", "cutter", "plasmatorch"
- *
- * @return If this is a minable Block. Tool Quality checks (like Diamond Tier or something) are separate from this check.
- */
- public boolean isMinableBlock(Block aBlock, byte aMetaData);
-
- /**
- * This lets you modify the Drop List, when this type of Tool has been used.
- *
- * @return the Amount of modified Items.
- */
- public int convertBlockDrops(List<ItemStack> aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent);
-
- /**
- * @return Returns a broken Version of the Item.
- */
- public ItemStack getBrokenItem(ItemStack aStack);
-
- /**
- * @return the Damage actually done to the Mob.
- */
- public float getNormalDamageAgainstEntity(float aOriginalDamage, Entity aEntity, ItemStack aStack, EntityPlayer aPlayer);
-
- /**
- * @return the Damage actually done to the Mob.
- */
- public float getMagicDamageAgainstEntity(float aOriginalDamage, Entity aEntity, ItemStack aStack, EntityPlayer aPlayer);
-
- public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack);
-
- public short[] getRGBa(boolean aIsToolHead, ItemStack aStack);
-
- /**
- * Called when this gets added to a Tool Item
- */
- //public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID);
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_Generic_Item.java b/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_Generic_Item.java
deleted file mode 100644
index eed3a228cd..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_Generic_Item.java
+++ /dev/null
@@ -1,186 +0,0 @@
-package miscutil.core.xmod.gregtech.api.items;
-
-import gregtech.api.enums.SubTag;
-import gregtech.api.interfaces.IProjectileItem;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-
-import java.util.List;
-
-import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import net.minecraft.block.BlockDispenser;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.dispenser.BehaviorDefaultDispenseItem;
-import net.minecraft.dispenser.BehaviorProjectileDispense;
-import net.minecraft.dispenser.IBlockSource;
-import net.minecraft.dispenser.IPosition;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.IProjectile;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.projectile.EntityArrow;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.EnumFacing;
-import net.minecraft.util.IIcon;
-import net.minecraft.world.World;
-import cpw.mods.fml.common.registry.GameRegistry;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-/**
- * Extended by most Items, also used as a fallback Item, to prevent the accidental deletion when Errors occur.
- */
-public class Gregtech_Generic_Item extends Item implements IProjectileItem {
- private final String mName, mTooltip;
- protected IIcon mIcon;
-
- public Gregtech_Generic_Item(String aUnlocalized, String aEnglish, String aEnglishTooltip) {
- this(aUnlocalized, aEnglish, aEnglishTooltip, true);
- }
-
- public Gregtech_Generic_Item(String aUnlocalized, String aEnglish, String aEnglishTooltip, boolean aWriteToolTipIntoLangFile) {
- super();
- mName = aUnlocalized;
- GT_LanguageManager.addStringLocalization(mName + ".name", aEnglish);
- if (GT_Utility.isStringValid(aEnglishTooltip))
- GT_LanguageManager.addStringLocalization(mTooltip = mName + ".tooltip_main", aEnglishTooltip, aWriteToolTipIntoLangFile);
- else mTooltip = null;
- setCreativeTab(AddToCreativeTab.tabMachines);
- GameRegistry.registerItem(this, mName, CORE.MODID);
- BlockDispenser.dispenseBehaviorRegistry.putObject(this, new GT_Item_Dispense());
- }
-
- @Override
- public final Item setUnlocalizedName(String aName) {
- return this;
- }
-
- @Override
- public final String getUnlocalizedName() {
- return mName;
- }
-
- @Override
- public String getUnlocalizedName(ItemStack aStack) {
- return getHasSubtypes() ? mName + "." + getDamage(aStack) : mName;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public void registerIcons(IIconRegister aIconRegister) {
- mIcon = aIconRegister.registerIcon(CORE.MODID+":"+mName);
- }
-
- @Override
- public boolean doesSneakBypassUse(World aWorld, int aX, int aY, int aZ, EntityPlayer aPlayer) {
- return true;
- }
-
- @Override
- public IIcon getIconFromDamage(int par1) {
- return mIcon;
- }
-
- public int getTier(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public void addInformation(ItemStack aStack, EntityPlayer aPlayer, List aList, boolean aF3_H) {
- if (getMaxDamage() > 0 && !getHasSubtypes())
- aList.add((aStack.getMaxDamage() - getDamage(aStack)) + " / " + aStack.getMaxDamage());
- if (mTooltip != null) aList.add(GT_LanguageManager.getTranslation(mTooltip));
- if (GT_ModHandler.isElectricItem(aStack)) aList.add("Tier: " + getTier(aStack));
- addAdditionalToolTips(aList, aStack);
- }
-
- protected void addAdditionalToolTips(List aList, ItemStack aStack) {
- //
- }
-
- @Override
- public void onCreated(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- isItemStackUsable(aStack);
- }
-
- public boolean isItemStackUsable(ItemStack aStack) {
- return true;
- }
-
- public ItemStack onDispense(IBlockSource aSource, ItemStack aStack) {
- EnumFacing enumfacing = BlockDispenser.func_149937_b(aSource.getBlockMetadata());
- IPosition iposition = BlockDispenser.func_149939_a(aSource);
- ItemStack itemstack1 = aStack.splitStack(1);
- BehaviorDefaultDispenseItem.doDispense(aSource.getWorld(), itemstack1, 6, enumfacing, iposition);
- return aStack;
- }
-
- @Override
- public EntityArrow getProjectile(SubTag aProjectileType, ItemStack aStack, World aWorld, double aX, double aY, double aZ) {
- return null;
- }
-
- @Override
- public EntityArrow getProjectile(SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed) {
- return null;
- }
-
- @Override
- public boolean hasProjectile(SubTag aProjectileType, ItemStack aStack) {
- return false;
- }
-
- @Override
- public ItemStack getContainerItem(ItemStack aStack) {
- return null;
- }
-
- @Override
- public boolean hasContainerItem(ItemStack aStack) {
- return getContainerItem(aStack) != null;
- }
-
- public static class GT_Item_Dispense extends BehaviorProjectileDispense {
- @Override
- public ItemStack dispenseStack(IBlockSource aSource, ItemStack aStack) {
- return ((Gregtech_Generic_Item) aStack.getItem()).onDispense(aSource, aStack);
- }
-
- @Override
- protected IProjectile getProjectileEntity(World aWorld, IPosition aPosition) {
- return null;
- }
- }
-
- @Override
- public int getColorFromItemStack(ItemStack stack, int HEX_OxFFFFFF) {
- if (stack.getDisplayName().contains("LuV")){
- HEX_OxFFFFFF = 0xffffcc;
- }
- else if (stack.getDisplayName().contains("ZPM")){
- HEX_OxFFFFFF = 0xace600;
- }
- else if (stack.getDisplayName().contains("UV")){
- HEX_OxFFFFFF = 0xffff00;
- }
- else if (stack.getDisplayName().contains("MAX")){
- HEX_OxFFFFFF = 0xff0000;
- }
- else if (stack.getDisplayName().contains("Sodium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(0, 0, 150);
- }
- else if (stack.getDisplayName().contains("Cadmium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(50, 50, 60);
- }
- else if (stack.getDisplayName().contains("Lithium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(225, 220, 255);
- }
- else {
- HEX_OxFFFFFF = 0xffffff;
- }
- return HEX_OxFFFFFF;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem.java b/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem.java
deleted file mode 100644
index 37fa2b2a80..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem.java
+++ /dev/null
@@ -1,323 +0,0 @@
-package miscutil.core.xmod.gregtech.api.items;
-
-import static gregtech.api.enums.GT_Values.D1;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.SubTag;
-import gregtech.api.enums.TC_Aspects.TC_AspectStack;
-import gregtech.api.interfaces.IFoodStat;
-import gregtech.api.interfaces.IIconContainer;
-import gregtech.api.interfaces.IItemContainer;
-import gregtech.api.objects.ItemData;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.BitSet;
-import java.util.HashMap;
-import java.util.List;
-
-import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_ItemBehaviour;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.EnumAction;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.IIcon;
-import net.minecraft.world.World;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-public abstract class Gregtech_MetaItem extends Gregtech_MetaItem_Base {
- /**
- * All instances of this Item Class are listed here.
- * This gets used to register the Renderer to all Items of this Type, if useStandardMetaItemRenderer() returns true.
- * <p/>
- * You can also use the unlocalized Name gotten from getUnlocalizedName() as Key if you want to get a specific Item.
- */
- public static final HashMap<String, Gregtech_MetaItem> sInstances = new HashMap<String, Gregtech_MetaItem>();
-
- /* ---------- CONSTRUCTOR AND MEMBER VARIABLES ---------- */
-
- public final short mOffset, mItemAmount;
- public final BitSet mEnabledItems;
- public final BitSet mVisibleItems;
- public final IIcon[][] mIconList;
-
- public final HashMap<Short, IFoodStat> mFoodStats = new HashMap<Short, IFoodStat>();
- public final HashMap<Short, Long[]> mElectricStats = new HashMap<Short, Long[]>();
- public final HashMap<Short, Long[]> mFluidContainerStats = new HashMap<Short, Long[]>();
- public final HashMap<Short, Short> mBurnValues = new HashMap<Short, Short>();
-
- /**
- * Creates the Item using these Parameters.
- *
- * @param aUnlocalized The Unlocalized Name of this Item.
- */
- public Gregtech_MetaItem(String aUnlocalized, short aOffset, short aItemAmount) {
- super(aUnlocalized);
- setCreativeTab(AddToCreativeTab.tabMachines);
- setHasSubtypes(true);
- setMaxDamage(0);
- mEnabledItems = new BitSet(aItemAmount);
- mVisibleItems = new BitSet(aItemAmount);
-
- mOffset = (short) Math.min(32766, aOffset);
- mItemAmount = (short) Math.min(aItemAmount, 32766 - mOffset);
- mIconList = new IIcon[aItemAmount][1];
-
- sInstances.put(getUnlocalizedName(), this);
- }
-
- /**
- * This adds a Custom Item to the ending Range.
- *
- * @param aID The Id of the assigned Item [0 - mItemAmount] (The MetaData gets auto-shifted by +mOffset)
- * @param aEnglish The Default Localized Name of the created Item
- * @param aToolTip The Default ToolTip of the created Item, you can also insert null for having no ToolTip
- * @param aFoodBehavior The Food Value of this Item. Can be null aswell. Just a convenience thing.
- * @param aRandomData The OreDict Names you want to give the Item. Also used for TC Aspects and some other things.
- * @return An ItemStack containing the newly created Item.
- */
- public final ItemStack addItem(int aID, String aEnglish, String aToolTip, Object... aRandomData) {
- if (aToolTip == null) aToolTip = "";
- if (aID >= 0 && aID < mItemAmount) {
- ItemStack rStack = new ItemStack(this, 1, mOffset + aID);
- mEnabledItems.set(aID);
- mVisibleItems.set(aID);
- GT_LanguageManager.addStringLocalization(getUnlocalizedName(rStack) + ".name", aEnglish);
- GT_LanguageManager.addStringLocalization(getUnlocalizedName(rStack) + ".tooltip", aToolTip);
- List<TC_AspectStack> tAspects = new ArrayList<TC_AspectStack>();
- // Important Stuff to do first
- for (Object tRandomData : aRandomData)
- if (tRandomData instanceof SubTag) {
- if (tRandomData == SubTag.INVISIBLE) {
- mVisibleItems.set(aID, false);
- continue;
- }
- if (tRandomData == SubTag.NO_UNIFICATION) {
- GT_OreDictUnificator.addToBlacklist(rStack);
- continue;
- }
- }
- // now check for the rest
- for (Object tRandomData : aRandomData)
- if (tRandomData != null) {
- boolean tUseOreDict = true;
-
- if (tRandomData instanceof Interface_ItemBehaviour) {
- addItemBehavior(mOffset + aID, (Interface_ItemBehaviour<Gregtech_MetaItem_Base>) tRandomData);
- tUseOreDict = false;
- }
- if (tRandomData instanceof IItemContainer) {
- ((IItemContainer) tRandomData).set(rStack);
- tUseOreDict = false;
- }
- if (tRandomData instanceof SubTag) {
- continue;
- }
- if (tRandomData instanceof TC_AspectStack) {
- ((TC_AspectStack) tRandomData).addToAspectList(tAspects);
- continue;
- }
- if (tRandomData instanceof ItemData) {
- if (GT_Utility.isStringValid(tRandomData))
- GT_OreDictUnificator.registerOre(tRandomData, rStack);
- else GT_OreDictUnificator.addItemData(rStack, (ItemData) tRandomData);
- continue;
- }
- if (tUseOreDict) {
- GT_OreDictUnificator.registerOre(tRandomData, rStack);
- continue;
- }
- }
- if (GregTech_API.sThaumcraftCompat != null)
- GregTech_API.sThaumcraftCompat.registerThaumcraftAspectsToItem(rStack, tAspects, false);
- return rStack;
- }
- return null;
- }
-
- /**
- * Sets the Furnace Burn Value for the Item.
- *
- * @param aMetaValue the Meta Value of the Item you want to set it to. [0 - 32765]
- * @param aValue 200 = 1 Burn Process = 500 EU, max = 32767 (that is 81917.5 EU)
- * @return the Item itself for convenience in constructing.
- */
- public final Gregtech_MetaItem setBurnValue(int aMetaValue, int aValue) {
- if (aMetaValue < 0 || aMetaValue >= mOffset + mEnabledItems.length() || aValue < 0) return this;
- if (aValue == 0) mBurnValues.remove((short) aMetaValue);
- else mBurnValues.put((short) aMetaValue, aValue > Short.MAX_VALUE ? Short.MAX_VALUE : (short) aValue);
- return this;
- }
-
- /**
- * @param aMetaValue the Meta Value of the Item you want to set it to. [0 - 32765]
- * @param aMaxCharge Maximum Charge. (if this is == 0 it will remove the Electric Behavior)
- * @param aTransferLimit Transfer Limit.
- * @param aTier The electric Tier.
- * @param aSpecialData If this Item has a Fixed Charge, like a SingleUse Battery (if > 0).
- * Use -1 if you want to make this Battery chargeable (the use and canUse Functions will still discharge if you just use this)
- * Use -2 if you want to make this Battery dischargeable.
- * Use -3 if you want to make this Battery charge/discharge-able.
- * @return the Item itself for convenience in constructing.
- */
- public final Gregtech_MetaItem setElectricStats(int aMetaValue, long aMaxCharge, long aTransferLimit, long aTier, long aSpecialData, boolean aUseAnimations) {
- if (aMetaValue < 0 || aMetaValue >= mOffset + mEnabledItems.length()) return this;
- if (aMaxCharge == 0) mElectricStats.remove((short) aMetaValue);
- else {
- mElectricStats.put((short) aMetaValue, new Long[]{aMaxCharge, Math.max(0, aTransferLimit), Math.max(-1, aTier), aSpecialData});
- if (aMetaValue >= mOffset && aUseAnimations)
- mIconList[aMetaValue - mOffset] = Arrays.copyOf(mIconList[aMetaValue - mOffset], Math.max(9, mIconList[aMetaValue - mOffset].length));
- }
- return this;
- }
-
- /**
- * @param aMetaValue the Meta Value of the Item you want to set it to. [0 - 32765]
- * @param aMaxCharge Maximum Charge. (if this is == 0 it will remove the Electric Behavior)
- * @param aTransferLimit Transfer Limit.
- * @param aTier The electric Tier.
- * @param aSpecialData If this Item has a Fixed Charge, like a SingleUse Battery (if > 0).
- * Use -1 if you want to make this Battery chargeable (the use and canUse Functions will still discharge if you just use this)
- * Use -2 if you want to make this Battery dischargeable.
- * Use -3 if you want to make this Battery charge/discharge-able.
- * @return the Item itself for convenience in constructing.
- */
- public final Gregtech_MetaItem setFluidContainerStats(int aMetaValue, long aCapacity, long aStacksize) {
- if (aMetaValue < 0 || aMetaValue >= mOffset + mEnabledItems.length()) return this;
- if (aCapacity < 0) mElectricStats.remove((short) aMetaValue);
- else mFluidContainerStats.put((short) aMetaValue, new Long[]{aCapacity, Math.max(1, aStacksize)});
- return this;
- }
-
- /**
- * @return if this MetaGenerated Item should use my Default Renderer System.
- */
- public boolean useStandardMetaItemRenderer() {
- return true;
- }
-
- /**
- * @return the Color Modulation the Material is going to be rendered with.
- */
- public short[] getRGBa(ItemStack aStack) {
- return Materials._NULL.getRGBA();
- }
-
- /**
- * @return the Icon the Material is going to be rendered with.
- */
- public IIconContainer getIconContainer(int aMetaData) {
- return null;
- }
-
- /* ---------- INTERNAL OVERRIDES ---------- */
-
- @Override
- public ItemStack onItemRightClick(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- return super.onItemRightClick(aStack, aWorld, aPlayer);
- }
-
- @Override
- public int getMaxItemUseDuration(ItemStack aStack) {
- return mFoodStats.get((short) getDamage(aStack)) == null ? 0 : 32;
- }
-
- @Override
- public EnumAction getItemUseAction(ItemStack aStack) {
- return EnumAction.none;
- }
-
- @Override
- public final ItemStack onEaten(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- IFoodStat tStat = mFoodStats.get((short) getDamage(aStack));
- if (tStat != null) {
-
- }
- return aStack;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public void getSubItems(Item var1, CreativeTabs aCreativeTab, List aList) {
- for (int i = 0, j = mEnabledItems.length(); i < j; i++)
- if (mVisibleItems.get(i) || (D1 && mEnabledItems.get(i))) {
- Long[] tStats = mElectricStats.get((short) (mOffset + i));
- if (tStats != null && tStats[3] < 0) {
- ItemStack tStack = new ItemStack(this, 1, mOffset + i);
- setCharge(tStack, Math.abs(tStats[0]));
- isItemStackUsable(tStack);
- aList.add(tStack);
- }
- if (tStats == null || tStats[3] != -2) {
- ItemStack tStack = new ItemStack(this, 1, mOffset + i);
- isItemStackUsable(tStack);
- aList.add(tStack);
- }
- }
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public final void registerIcons(IIconRegister aIconRegister) {
- for (short i = 0, j = (short) mEnabledItems.length(); i < j; i++)
- if (mEnabledItems.get(i)) {
- for (byte k = 1; k < mIconList[i].length; k++) {
- mIconList[i][k] = aIconRegister.registerIcon(CORE.MODID+":"+getUnlocalizedName() + "/" + i + "/" + k);
- }
- mIconList[i][0] = aIconRegister.registerIcon(CORE.MODID+":"+getUnlocalizedName() + "/" + i);
- }
- }
-
- @Override
- public final Long[] getElectricStats(ItemStack aStack) {
- return mElectricStats.get((short) aStack.getItemDamage());
- }
-
- @Override
- public final Long[] getFluidContainerStats(ItemStack aStack) {
- return mFluidContainerStats.get((short) aStack.getItemDamage());
- }
-
- @Override
- public int getItemEnchantability() {
- return 0;
- }
-
- @Override
- public boolean isBookEnchantable(ItemStack aStack, ItemStack aBook) {
- return false;
- }
-
- @Override
- public boolean getIsRepairable(ItemStack aStack, ItemStack aMaterial) {
- return false;
- }
-
- @Override
- public int getColorFromItemStack(ItemStack stack, int HEX_OxFFFFFF) {
- if (stack.getDisplayName().contains("LuV")){
- HEX_OxFFFFFF = 0xffffcc;
- }
- else if (stack.getDisplayName().contains("ZPM")){
- HEX_OxFFFFFF = 0xace600;
- }
- else if (stack.getDisplayName().contains("UV")){
- HEX_OxFFFFFF = 0xffff00;
- }
- else if (stack.getDisplayName().contains("MAX")){
- HEX_OxFFFFFF = 0xff0000;
- }
- else {
- HEX_OxFFFFFF = 0xffffff;
- }
- return HEX_OxFFFFFF;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem_Base.java b/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem_Base.java
deleted file mode 100644
index 5a05800863..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem_Base.java
+++ /dev/null
@@ -1,559 +0,0 @@
-package miscutil.core.xmod.gregtech.api.items;
-
-import static gregtech.api.enums.GT_Values.D1;
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.enums.SubTag;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-import ic2.api.item.ElectricItem;
-import ic2.api.item.IElectricItem;
-import ic2.api.item.IElectricItemManager;
-import ic2.api.item.ISpecialElectricItem;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_ItemBehaviour;
-import net.minecraft.dispenser.IBlockSource;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.projectile.EntityArrow;
-import net.minecraft.inventory.Container;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.world.World;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.fluids.IFluidContainerItem;
-
-public abstract class Gregtech_MetaItem_Base extends Gregtech_Generic_Item implements ISpecialElectricItem, IElectricItemManager, IFluidContainerItem {
- /* ---------- CONSTRUCTOR AND MEMBER VARIABLES ---------- */
- private final HashMap<Short, ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>>> mItemBehaviors = new HashMap<Short, ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>>>();
-
- /**
- * Creates the Item using these Parameters.
- *
- * @param aUnlocalized The Unlocalized Name of this Item.
- * @param aGeneratedPrefixList The OreDict Prefixes you want to have generated.
- */
- public Gregtech_MetaItem_Base(String aUnlocalized) {
- super(aUnlocalized, "Generated Item", null, false);
- setHasSubtypes(true);
- setMaxDamage(0);
- }
-
- /**
- * Adds a special Item Behaviour to the Item.
- * <p/>
- * Note: the boolean Behaviours sometimes won't be executed if another boolean Behaviour returned true before.
- *
- * @param aMetaValue the Meta Value of the Item you want to add it to. [0 - 32765]
- * @param aBehavior the Click Behavior you want to add.
- * @return the Item itself for convenience in constructing.
- */
- public final Gregtech_MetaItem_Base addItemBehavior(int aMetaValue, Interface_ItemBehaviour<Gregtech_MetaItem_Base> aBehavior) {
- if (aMetaValue < 0 || aMetaValue >= 32766 || aBehavior == null) return this;
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) aMetaValue);
- if (tList == null) {
- tList = new ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>>(1);
- mItemBehaviors.put((short) aMetaValue, tList);
- }
- tList.add(aBehavior);
- return this;
- }
-
- public abstract Long[] getElectricStats(ItemStack aStack);
-
- public abstract Long[] getFluidContainerStats(ItemStack aStack);
-
- @Override
- public boolean hasProjectile(SubTag aProjectileType, ItemStack aStack) {
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- if (tBehavior.hasProjectile(this, aProjectileType, aStack)) return true;
- return super.hasProjectile(aProjectileType, aStack);
- }
-
- @Override
- public EntityArrow getProjectile(SubTag aProjectileType, ItemStack aStack, World aWorld, double aX, double aY, double aZ) {
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList) {
- EntityArrow rArrow = tBehavior.getProjectile(this, aProjectileType, aStack, aWorld, aX, aY, aZ);
- if (rArrow != null) return rArrow;
- }
- return super.getProjectile(aProjectileType, aStack, aWorld, aX, aY, aZ);
- }
-
- @Override
- public EntityArrow getProjectile(SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed) {
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList) {
- EntityArrow rArrow = tBehavior.getProjectile(this, aProjectileType, aStack, aWorld, aEntity, aSpeed);
- if (rArrow != null) return rArrow;
- }
- return super.getProjectile(aProjectileType, aStack, aWorld, aEntity, aSpeed);
- }
-
- @Override
- public ItemStack onDispense(IBlockSource aSource, ItemStack aStack) {
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- if (tBehavior.canDispense(this, aSource, aStack)) return tBehavior.onDispense(this, aSource, aStack);
- return super.onDispense(aSource, aStack);
- }
-
- @Override
- public boolean isItemStackUsable(ItemStack aStack) {
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- if (!tBehavior.isItemStackUsable(this, aStack)) return false;
- return super.isItemStackUsable(aStack);
- }
-
- @Override
- public boolean onLeftClickEntity(ItemStack aStack, EntityPlayer aPlayer, Entity aEntity) {
- use(aStack, 0, aPlayer);
- isItemStackUsable(aStack);
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- try {
- if (tBehavior.onLeftClickEntity(this, aStack, aPlayer, aEntity)) {
- if (aStack.stackSize <= 0) aPlayer.destroyCurrentEquippedItem();
- return true;
- }
- if (aStack.stackSize <= 0) {
- aPlayer.destroyCurrentEquippedItem();
- return false;
- }
- } catch (Throwable e) {
- if (D1) e.printStackTrace(GT_Log.err);
- }
- return false;
- }
-
- @Override
- public boolean onItemUse(ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ) {
- use(aStack, 0, aPlayer);
- isItemStackUsable(aStack);
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- try {
- if (tBehavior.onItemUse(this, aStack, aPlayer, aWorld, aX, aY, aZ, aSide, hitX, hitY, hitZ)) {
- if (aStack.stackSize <= 0) aPlayer.destroyCurrentEquippedItem();
- return true;
- }
- if (aStack.stackSize <= 0) {
- aPlayer.destroyCurrentEquippedItem();
- return false;
- }
- } catch (Throwable e) {
- if (D1) e.printStackTrace(GT_Log.err);
- }
- return false;
- }
-
- @Override
- public boolean onItemUseFirst(ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ) {
- use(aStack, 0, aPlayer);
- isItemStackUsable(aStack);
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- try {
- if (tBehavior.onItemUseFirst(this, aStack, aPlayer, aWorld, aX, aY, aZ, aSide, hitX, hitY, hitZ)) {
- if (aStack.stackSize <= 0) aPlayer.destroyCurrentEquippedItem();
- return true;
- }
- if (aStack.stackSize <= 0) {
- aPlayer.destroyCurrentEquippedItem();
- return false;
- }
- } catch (Throwable e) {
- if (D1) e.printStackTrace(GT_Log.err);
- }
- return false;
- }
-
- @Override
- public ItemStack onItemRightClick(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- use(aStack, 0, aPlayer);
- isItemStackUsable(aStack);
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- try {
- aStack = tBehavior.onItemRightClick(this, aStack, aWorld, aPlayer);
- } catch (Throwable e) {
- if (D1) e.printStackTrace(GT_Log.err);
- }
- return aStack;
- }
-
- @Override
- public final void addInformation(ItemStack aStack, EntityPlayer aPlayer, List aList, boolean aF3_H) {
- String tKey = getUnlocalizedName(aStack) + ".tooltip", tString = GT_LanguageManager.getTranslation(tKey);
- if (GT_Utility.isStringValid(tString) && !tKey.equals(tString)) aList.add(tString);
-
- Long[]
- tStats = getElectricStats(aStack);
- if (tStats != null) {
- if (tStats[3] > 0) {
- aList.add(EnumChatFormatting.AQUA + "Contains " + GT_Utility.formatNumbers(tStats[3]) + " EU Tier: " + (tStats[2] >= 0 ? tStats[2] : 0) + EnumChatFormatting.GRAY);
- } else {
- long tCharge = getRealCharge(aStack);
- if (tStats[3] == -2 && tCharge <= 0) {
- aList.add(EnumChatFormatting.AQUA + "Empty. You should recycle it properly." + EnumChatFormatting.GRAY);
- } else {
- aList.add(EnumChatFormatting.AQUA + "" + GT_Utility.formatNumbers(tCharge) + " / " + GT_Utility.formatNumbers(Math.abs(tStats[0])) + " EU - Voltage: " + V[(int) (tStats[2] >= 0 ? tStats[2] < V.length ? tStats[2] : V.length - 1 : 1)] + EnumChatFormatting.GRAY);
- }
- }
- }
-
- tStats = getFluidContainerStats(aStack);
- if (tStats != null && tStats[0] > 0) {
- FluidStack tFluid = getFluidContent(aStack);
- aList.add(EnumChatFormatting.BLUE + ((tFluid == null ? "No Fluids Contained" : GT_Utility.getFluidName(tFluid, true))) + EnumChatFormatting.GRAY);
- aList.add(EnumChatFormatting.BLUE + ((tFluid == null ? 0 : tFluid.amount) + "L / " + tStats[0] + "L") + EnumChatFormatting.GRAY);
- }
-
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- aList = tBehavior.getAdditionalToolTips(this, aList, aStack);
-
- addAdditionalToolTips(aList, aStack);
- }
-
- @Override
- public void onUpdate(ItemStack aStack, World aWorld, Entity aPlayer, int aTimer, boolean aIsInHand) {
- ArrayList<Interface_ItemBehaviour<Gregtech_MetaItem_Base>> tList = mItemBehaviors.get((short) getDamage(aStack));
- if (tList != null) for (Interface_ItemBehaviour<Gregtech_MetaItem_Base> tBehavior : tList)
- tBehavior.onUpdate(this, aStack, aWorld, aPlayer, aTimer, aIsInHand);
- }
-
- @Override
- public final boolean canProvideEnergy(ItemStack aStack) {
- Long[] tStats = getElectricStats(aStack);
- if (tStats == null) return false;
- return tStats[3] > 0 || (aStack.stackSize == 1 && (tStats[3] == -2 || tStats[3] == -3));
- }
-
- @Override
- public final double getMaxCharge(ItemStack aStack) {
- Long[] tStats = getElectricStats(aStack);
- if (tStats == null) return 0;
- return Math.abs(tStats[0]);
- }
-
- @Override
- public final double getTransferLimit(ItemStack aStack) {
- Long[] tStats = getElectricStats(aStack);
- if (tStats == null) return 0;
- return Math.max(tStats[1], tStats[3]);
- }
-
- @Override
- public final double charge(ItemStack aStack, double aCharge, int aTier, boolean aIgnoreTransferLimit, boolean aSimulate) {
- Long[] tStats = getElectricStats(aStack);
- if (tStats == null || tStats[2] > aTier || !(tStats[3] == -1 || tStats[3] == -3 || (tStats[3] < 0 && aCharge == Integer.MAX_VALUE)) || aStack.stackSize != 1)
- return 0;
- long tChargeBefore = getRealCharge(aStack), tNewCharge = aCharge == Integer.MAX_VALUE ? Long.MAX_VALUE : Math.min(Math.abs(tStats[0]), tChargeBefore + (aIgnoreTransferLimit ? (long) aCharge : Math.min(tStats[1], (long) aCharge)));
- if (!aSimulate) setCharge(aStack, tNewCharge);
- return tNewCharge - tChargeBefore;
- }
-
- @Override
- public final double discharge(ItemStack aStack, double aCharge, int aTier, boolean aIgnoreTransferLimit, boolean aBatteryAlike, boolean aSimulate) {
- Long[] tStats = getElectricStats(aStack);
- if (tStats == null || tStats[2] > aTier) return 0;
- if (aBatteryAlike && !canProvideEnergy(aStack)) return 0;
- if (tStats[3] > 0) {
- if (aCharge < tStats[3] || aStack.stackSize < 1) return 0;
- if (!aSimulate) aStack.stackSize--;
- return tStats[3];
- }
- long tChargeBefore = getRealCharge(aStack), tNewCharge = Math.max(0, tChargeBefore - (aIgnoreTransferLimit ? (long) aCharge : Math.min(tStats[1], (long) aCharge)));
- if (!aSimulate) setCharge(aStack, tNewCharge);
- return tChargeBefore - tNewCharge;
- }
-
- @Override
- public final double getCharge(ItemStack aStack) {
- return getRealCharge(aStack);
- }
-
- @Override
- public final boolean canUse(ItemStack aStack, double aAmount) {
- return getRealCharge(aStack) >= aAmount;
- }
-
- @Override
- public final boolean use(ItemStack aStack, double aAmount, EntityLivingBase aPlayer) {
- chargeFromArmor(aStack, aPlayer);
- if (aPlayer instanceof EntityPlayer && ((EntityPlayer) aPlayer).capabilities.isCreativeMode) return true;
- double tTransfer = discharge(aStack, aAmount, Integer.MAX_VALUE, true, false, true);
- if (tTransfer == aAmount) {
- discharge(aStack, aAmount, Integer.MAX_VALUE, true, false, false);
- chargeFromArmor(aStack, aPlayer);
- return true;
- }
- discharge(aStack, aAmount, Integer.MAX_VALUE, true, false, false);
- chargeFromArmor(aStack, aPlayer);
- return false;
- }
-
- @Override
- public final void chargeFromArmor(ItemStack aStack, EntityLivingBase aPlayer) {
- if (aPlayer == null || aPlayer.worldObj.isRemote) return;
- for (int i = 1; i < 5; i++) {
- ItemStack tArmor = aPlayer.getEquipmentInSlot(i);
- if (GT_ModHandler.isElectricItem(tArmor)) {
- IElectricItem tArmorItem = (IElectricItem) tArmor.getItem();
- if (tArmorItem.canProvideEnergy(tArmor) && tArmorItem.getTier(tArmor) >= getTier(aStack)) {
- double tCharge = ElectricItem.manager.discharge(tArmor, charge(aStack, Integer.MAX_VALUE - 1, Integer.MAX_VALUE, true, true), Integer.MAX_VALUE, true, true, false);
- if (tCharge > 0) {
- charge(aStack, tCharge, Integer.MAX_VALUE, true, false);
- if (aPlayer instanceof EntityPlayer) {
- Container tContainer = ((EntityPlayer) aPlayer).openContainer;
- if (tContainer != null) tContainer.detectAndSendChanges();
- }
- }
- }
- }
- }
- }
-
- public final long getRealCharge(ItemStack aStack) {
- Long[] tStats = getElectricStats(aStack);
- if (tStats == null) return 0;
- if (tStats[3] > 0) return (int) (long) tStats[3];
- NBTTagCompound tNBT = aStack.getTagCompound();
- return tNBT == null ? 0 : tNBT.getLong("GT.ItemCharge");
- }
-
- public final boolean setCharge(ItemStack aStack, long aCharge) {
- Long[] tStats = getElectricStats(aStack);
- if (tStats == null || tStats[3] > 0) return false;
- NBTTagCompound tNBT = aStack.getTagCompound();
- if (tNBT == null) tNBT = new NBTTagCompound();
- tNBT.removeTag("GT.ItemCharge");
- aCharge = Math.min(tStats[0] < 0 ? Math.abs(tStats[0] / 2) : aCharge, Math.abs(tStats[0]));
- if (aCharge > 0) {
- aStack.setItemDamage(getChargedMetaData(aStack));
- tNBT.setLong("GT.ItemCharge", aCharge);
- } else {
- aStack.setItemDamage(getEmptyMetaData(aStack));
- }
- if (tNBT.hasNoTags()) aStack.setTagCompound(null);
- else aStack.setTagCompound(tNBT);
- isItemStackUsable(aStack);
- return true;
- }
-
- public short getChargedMetaData(ItemStack aStack) {
- return (short) aStack.getItemDamage();
- }
-
- public short getEmptyMetaData(ItemStack aStack) {
- return (short) aStack.getItemDamage();
- }
-
- @Override
- public FluidStack getFluid(ItemStack aStack) {
- return getFluidContent(aStack);
- }
-
- @Override
- public int getCapacity(ItemStack aStack) {
- Long[] tStats = getFluidContainerStats(aStack);
- return tStats == null ? 0 : (int) Math.max(0, tStats[0]);
- }
-
- @Override
- public int fill(ItemStack aStack, FluidStack aFluid, boolean doFill) {
- if (aStack == null || aStack.stackSize != 1) return 0;
-
- ItemStack tStack = GT_Utility.fillFluidContainer(aFluid, aStack, false, false);
- if (tStack != null) {
- aStack.setItemDamage(tStack.getItemDamage());
- aStack.func_150996_a(tStack.getItem());
- return GT_Utility.getFluidForFilledItem(tStack, false).amount;
- }
-
- Long[] tStats = getFluidContainerStats(aStack);
- if (tStats == null || tStats[0] <= 0 || aFluid == null || aFluid.getFluid().getID() <= 0 || aFluid.amount <= 0)
- return 0;
-
- FluidStack tFluid = getFluidContent(aStack);
-
- if (tFluid == null || tFluid.getFluid().getID() <= 0) {
- if (aFluid.amount <= tStats[0]) {
- if (doFill) {
- setFluidContent(aStack, aFluid);
- }
- return aFluid.amount;
- }
- if (doFill) {
- tFluid = aFluid.copy();
- tFluid.amount = (int) (long) tStats[0];
- setFluidContent(aStack, tFluid);
- }
- return (int) (long) tStats[0];
- }
-
- if (!tFluid.isFluidEqual(aFluid)) return 0;
-
- int space = (int) (long) tStats[0] - tFluid.amount;
- if (aFluid.amount <= space) {
- if (doFill) {
- tFluid.amount += aFluid.amount;
- setFluidContent(aStack, tFluid);
- }
- return aFluid.amount;
- }
- if (doFill) {
- tFluid.amount = (int) (long) tStats[0];
- setFluidContent(aStack, tFluid);
- }
- return space;
- }
-
- @Override
- public FluidStack drain(ItemStack aStack, int maxDrain, boolean doDrain) {
- if (aStack == null || aStack.stackSize != 1) return null;
-
- FluidStack tFluid = GT_Utility.getFluidForFilledItem(aStack, false);
- if (tFluid != null && maxDrain >= tFluid.amount) {
- ItemStack tStack = GT_Utility.getContainerItem(aStack, false);
- if (tStack == null) {
- aStack.stackSize = 0;
- return tFluid;
- }
- aStack.setItemDamage(tStack.getItemDamage());
- aStack.func_150996_a(tStack.getItem());
- return tFluid;
- }
-
- Long[] tStats = getFluidContainerStats(aStack);
- if (tStats == null || tStats[0] <= 0) return null;
-
- tFluid = getFluidContent(aStack);
- if (tFluid == null) return null;
-
- int used = maxDrain;
- if (tFluid.amount < used) used = tFluid.amount;
- if (doDrain) {
- tFluid.amount -= used;
- setFluidContent(aStack, tFluid);
- }
-
- FluidStack drained = tFluid.copy();
- drained.amount = used;
- return drained;
- }
-
- public FluidStack getFluidContent(ItemStack aStack) {
- Long[] tStats = getFluidContainerStats(aStack);
- if (tStats == null || tStats[0] <= 0) return GT_Utility.getFluidForFilledItem(aStack, false);
- NBTTagCompound tNBT = aStack.getTagCompound();
- return tNBT == null ? null : FluidStack.loadFluidStackFromNBT(tNBT.getCompoundTag("GT.FluidContent"));
- }
-
- public void setFluidContent(ItemStack aStack, FluidStack aFluid) {
- NBTTagCompound tNBT = aStack.getTagCompound();
- if (tNBT == null) tNBT = new NBTTagCompound();
- else tNBT.removeTag("GT.FluidContent");
- if (aFluid != null && aFluid.amount > 0)
- tNBT.setTag("GT.FluidContent", aFluid.writeToNBT(new NBTTagCompound()));
- if (tNBT.hasNoTags()) aStack.setTagCompound(null);
- else aStack.setTagCompound(tNBT);
- isItemStackUsable(aStack);
- }
-
- @Override
- public int getItemStackLimit(ItemStack aStack) {
- Long[] tStats = getElectricStats(aStack);
- if (tStats != null && (tStats[3] == -1 || tStats[3] == -3) && getRealCharge(aStack) > 0) return 1;
- tStats = getFluidContainerStats(aStack);
- if (tStats != null) return (int) (long) tStats[1];
- return 64;
- }
-
- @Override
- public final Item getChargedItem(ItemStack itemStack) {
- return this;
- }
-
- @Override
- public final Item getEmptyItem(ItemStack itemStack) {
- return this;
- }
-
- @Override
- public final int getTier(ItemStack aStack) {
- Long[] tStats = getElectricStats(aStack);
- return (int) (tStats == null ? Integer.MAX_VALUE : tStats[2]);
- }
-
- @Override
- public final String getToolTip(ItemStack aStack) {
- return null;
- } // This has its own ToolTip Handler, no need to let the IC2 Handler screw us up at this Point
-
- @Override
- public final IElectricItemManager getManager(ItemStack aStack) {
- return this;
- } // We are our own Manager
-
- @Override
- public final boolean getShareTag() {
- return true;
- } // just to be sure.
-
- @Override
- public int getItemEnchantability() {
- return 0;
- }
-
- @Override
- public boolean isBookEnchantable(ItemStack aStack, ItemStack aBook) {
- return false;
- }
-
- @Override
- public boolean getIsRepairable(ItemStack aStack, ItemStack aMaterial) {
- return false;
- }
-
- @Override
- public int getColorFromItemStack(ItemStack stack, int HEX_OxFFFFFF) {
- if (stack.getDisplayName().contains("LuV")){
- HEX_OxFFFFFF = 0xffffcc;
- }
- else if (stack.getDisplayName().contains("ZPM")){
- HEX_OxFFFFFF = 0xace600;
- }
- else if (stack.getDisplayName().contains("UV")){
- HEX_OxFFFFFF = 0xffff00;
- }
- else if (stack.getDisplayName().contains("MAX")){
- HEX_OxFFFFFF = 0xff0000;
- }
- else if (stack.getDisplayName().contains("Sodium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(0, 0, 150);
- }
- else if (stack.getDisplayName().contains("Cadmium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(50, 50, 60);
- }
- else if (stack.getDisplayName().contains("Lithium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(225, 220, 255);
- }
- else {
- HEX_OxFFFFFF = 0xffffff;
- }
- return HEX_OxFFFFFF;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem_X32.java b/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem_X32.java
deleted file mode 100644
index c8eca07595..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaItem_X32.java
+++ /dev/null
@@ -1,204 +0,0 @@
-package miscutil.core.xmod.gregtech.api.items;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.interfaces.IIconContainer;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-
-import java.util.Arrays;
-import java.util.List;
-
-import miscutil.core.util.Utils;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.IIcon;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-/**
- * @author Gregorius Techneticies
- * <p/>
- * One Item for everything!
- * <p/>
- * This brilliant Item Class is used for automatically generating all possible variations of Material Items, like Dusts, Ingots, Gems, Plates and similar.
- * It saves me a ton of work, when adding Items, because I always have to make a new Item SubType for each OreDict Prefix, when adding a new Material.
- * <p/>
- * As you can see, up to 32766 Items can be generated using this Class. And the last 766 Items can be custom defined, just to save space and MetaData.
- * <p/>
- * These Items can also have special RightClick abilities, electric Charge or even be set to become a Food alike Item.
- */
-public abstract class Gregtech_MetaItem_X32 extends Gregtech_MetaItem {
-
- protected final OrePrefixes[] mGeneratedPrefixList;
-
- /**
- * Creates the Item using these Parameters.
- *
- * @param aUnlocalized The Unlocalized Name of this Item.
- * @param aGeneratedPrefixList The OreDict Prefixes you want to have generated.
- */
- public Gregtech_MetaItem_X32(String aUnlocalized, OrePrefixes... aGeneratedPrefixList) {
- super(aUnlocalized, (short) 32000, (short) 766);
- mGeneratedPrefixList = Arrays.copyOf(aGeneratedPrefixList, 32);
-
- for (int i = 0; i < 32000; i++) {
- OrePrefixes tPrefix = mGeneratedPrefixList[i / 1000];
- if (tPrefix == null) continue;
- Materials tMaterial = GregTech_API.sGeneratedMaterials[i % 1000];
- if (tMaterial == null) continue;
- if (doesMaterialAllowGeneration(tPrefix, tMaterial)) {
- ItemStack tStack = new ItemStack(this, 1, i);
- GT_LanguageManager.addStringLocalization(getUnlocalizedName(tStack) + ".name", getDefaultLocalization(tPrefix, tMaterial, i));
- GT_LanguageManager.addStringLocalization(getUnlocalizedName(tStack) + ".tooltip", tMaterial.getToolTip(tPrefix.mMaterialAmount / GT_Values.M));
- if (tPrefix.mIsUnificatable) {
- GT_OreDictUnificator.set(tPrefix, tMaterial, tStack);
- } else {
- GT_OreDictUnificator.registerOre(tPrefix.get(tMaterial), tStack);
- }
- if ((tPrefix == OrePrefixes.stick || tPrefix == OrePrefixes.wireFine) && (tMaterial == Materials.Lead || tMaterial == Materials.Tin || tMaterial == Materials.SolderingAlloy)) {
- GregTech_API.sSolderingMetalList.add(tStack);
- }
- }
- }
- }
-
- /* ---------- OVERRIDEABLE FUNCTIONS ---------- */
-
- /**
- * @return the Color Modulation the Material is going to be rendered with.
- */
- @Override
- public short[] getRGBa(ItemStack aStack) {
- Materials tMaterial = GregTech_API.sGeneratedMaterials[getDamage(aStack) % 1000];
- return tMaterial == null ? Materials._NULL.mRGBa : tMaterial.mRGBa;
- }
-
- /**
- * @param aPrefix this can be null, you have to return false in that case
- * @param aMaterial this can be null, you have to return false in that case
- * @return if this Item should be generated and visible.
- */
- public boolean doesMaterialAllowGeneration(OrePrefixes aPrefix, Materials aMaterial) {
- // You have to check for at least these Conditions in every Case! So add a super Call like the following for this before executing your Code:
- // if (!super.doesMaterialAllowGeneration(aPrefix, aMaterial)) return false;
- return aPrefix != null && aMaterial != null && aPrefix.doGenerateItem(aMaterial);
- }
-
- /* ---------- OVERRIDEABLE FUNCTIONS ---------- */
-
- /**
- * @param aPrefix the OreDict Prefix
- * @param aMaterial the Material
- * @param aMetaData a Index from [0 - 31999]
- * @return the Localized Name when default LangFiles are used.
- */
- public String getDefaultLocalization(OrePrefixes aPrefix, Materials aMaterial, int aMetaData) {
- return aPrefix.getDefaultLocalNameForItem(aMaterial);
- }
-
- /**
- * @param aMetaData a Index from [0 - 31999]
- * @param aMaterial the Material
- * @return an Icon Container for the Item Display.
- */
- public final IIconContainer getIconContainer(int aMetaData, Materials aMaterial) {
- return mGeneratedPrefixList[aMetaData / 1000] != null && mGeneratedPrefixList[aMetaData / 1000].mTextureIndex >= 0 ? aMaterial.mIconSet.mTextures[mGeneratedPrefixList[aMetaData / 1000].mTextureIndex] : null;
- }
-
- /**
- * @param aPrefix always != null
- * @param aMaterial always != null
- * @param aDoShowAllItems this is the Configuration Setting of the User, if he wants to see all the Stuff like Tiny Dusts or Crushed Ores as well.
- * @return if this Item should be visible in NEI or Creative
- */
- public boolean doesShowInCreative(OrePrefixes aPrefix, Materials aMaterial, boolean aDoShowAllItems) {
- return true;
- }
-
- /* ---------- INTERNAL OVERRIDES ---------- */
-
- @Override
- public ItemStack getContainerItem(ItemStack aStack) {
- int aDamage = aStack.getItemDamage();
- if (aDamage < 32000 && aDamage >= 0) {
- Materials aMaterial = GregTech_API.sGeneratedMaterials[aDamage % 1000];
- if (aMaterial != null && aMaterial != Materials.Empty && aMaterial != Materials._NULL) {
- OrePrefixes aPrefix = mGeneratedPrefixList[aDamage / 1000];
- if (aPrefix != null) return GT_Utility.copyAmount(1, aPrefix.mContainerItem);
- }
- }
- return null;
- }
-
- @Override
- public final IIconContainer getIconContainer(int aMetaData) {
- return GregTech_API.sGeneratedMaterials[aMetaData % 1000] == null ? null : getIconContainer(aMetaData, GregTech_API.sGeneratedMaterials[aMetaData % 1000]);
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public final void getSubItems(Item var1, CreativeTabs aCreativeTab, List aList) {
- for (int i = 0; i < 32000; i++)
- if (doesMaterialAllowGeneration(mGeneratedPrefixList[i / 1000], GregTech_API.sGeneratedMaterials[i % 1000]) && doesShowInCreative(mGeneratedPrefixList[i / 1000], GregTech_API.sGeneratedMaterials[i % 1000], GregTech_API.sDoShowAllItemsInCreative)) {
- ItemStack tStack = new ItemStack(this, 1, i);
- isItemStackUsable(tStack);
- aList.add(tStack);
- }
- super.getSubItems(var1, aCreativeTab, aList);
- }
-
- @Override
- public final IIcon getIconFromDamage(int aMetaData) {
- if (aMetaData < 0) return null;
- if (aMetaData < 32000) {
- Materials tMaterial = GregTech_API.sGeneratedMaterials[aMetaData % 1000];
- if (tMaterial == null) return null;
- IIconContainer tIcon = getIconContainer(aMetaData, tMaterial);
- if (tIcon != null) return tIcon.getIcon();
- return null;
- }
- return aMetaData - 32000 < mIconList.length ? mIconList[aMetaData - 32000][0] : null;
- }
-
- @Override
- public int getItemStackLimit(ItemStack aStack) {
- int tDamage = getDamage(aStack);
- if (tDamage < 32000 && mGeneratedPrefixList[tDamage / 1000] != null)
- return Math.min(super.getItemStackLimit(aStack), mGeneratedPrefixList[tDamage / 1000].mDefaultStackSize);
- return super.getItemStackLimit(aStack);
- }
-
- @Override
- public int getColorFromItemStack(ItemStack stack, int HEX_OxFFFFFF) {
- if (stack.getDisplayName().contains("LuV")){
- HEX_OxFFFFFF = 0xffffcc;
- }
- else if (stack.getDisplayName().contains("ZPM")){
- HEX_OxFFFFFF = 0xffe600;
- }
- else if (stack.getDisplayName().contains("UV")){
- HEX_OxFFFFFF = 0xffb300;
- }
- else if (stack.getDisplayName().contains("MAX")){
- HEX_OxFFFFFF = 0xff6500;
- }
- else if (stack.getDisplayName().contains("Sodium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(90, 90, 255);
- }
- else if (stack.getDisplayName().contains("Cadmium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(150, 150, 80);
- }
- else if (stack.getDisplayName().contains("Lithium")){
- HEX_OxFFFFFF = Utils.rgbtoHexValue(225, 220, 255);
- }
- else {
- HEX_OxFFFFFF = 0xffffff;
- }
- return HEX_OxFFFFFF;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaTool.java b/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaTool.java
deleted file mode 100644
index dfc9f3161e..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/items/Gregtech_MetaTool.java
+++ /dev/null
@@ -1,605 +0,0 @@
-package miscutil.core.xmod.gregtech.api.items;
-
-import static gregtech.api.enums.GT_Values.MOD_ID_RC;
-import gregtech.api.GregTech_API;
-import gregtech.api.enchants.Enchantment_Radioactivity;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.TC_Aspects.TC_AspectStack;
-import gregtech.api.interfaces.IDamagableItem;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map.Entry;
-import java.util.Random;
-
-import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_ToolStats;
-import mods.railcraft.api.core.items.IToolCrowbar;
-import net.minecraft.block.Block;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.enchantment.Enchantment;
-import net.minecraft.enchantment.EnchantmentHelper;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.SharedMonsterAttributes;
-import net.minecraft.entity.item.EntityMinecart;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.EnumAction;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.potion.Potion;
-import net.minecraft.stats.AchievementList;
-import net.minecraft.stats.StatList;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.util.IIcon;
-import net.minecraft.util.MathHelper;
-import net.minecraft.world.World;
-import net.minecraftforge.event.world.BlockEvent;
-import buildcraft.api.tools.IToolWrench;
-import cpw.mods.fml.common.Optional;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-/**
- * This is an example on how you can create a Tool ItemStack, in this case a Bismuth Wrench:
- * GT_MetaGenerated_Tool.sInstances.get("gt.metatool.01").getToolWithStats(16, 1, Materials.Bismuth, Materials.Bismuth, null);
- */
-@Optional.InterfaceList(value = {@Optional.Interface(iface = "mods.railcraft.api.core.items.IToolCrowbar", modid = MOD_ID_RC), @Optional.Interface(iface = "buildcraft.api.tools.IToolWrench", modid = "BuildCraft")})
-public abstract class Gregtech_MetaTool extends Gregtech_MetaItem_Base implements IDamagableItem, IToolCrowbar, IToolWrench {
- /**
- * All instances of this Item Class are listed here.
- * This gets used to register the Renderer to all Items of this Type, if useStandardMetaItemRenderer() returns true.
- * <p/>
- * You can also use the unlocalized Name gotten from getUnlocalizedName() as Key if you want to get a specific Item.
- */
- public static final HashMap<String, Gregtech_MetaTool> sInstances = new HashMap<String, Gregtech_MetaTool>();
-
- /* ---------- CONSTRUCTOR AND MEMBER VARIABLES ---------- */
-
- public final HashMap<Short, Interface_ToolStats> mToolStats = new HashMap<Short, Interface_ToolStats>();
-
- /**
- * Creates the Item using these Parameters.
- *
- * @param aUnlocalized The Unlocalized Name of this Item.
- */
- public Gregtech_MetaTool(String aUnlocalized) {
- super(aUnlocalized);
- GT_ModHandler.registerBoxableItemToToolBox(this);
- setCreativeTab(AddToCreativeTab.tabMachines);
- setMaxStackSize(1);
- sInstances.put(getUnlocalizedName(), this);
- }
-
- /* ---------- FOR ADDING CUSTOM ITEMS INTO THE REMAINING 766 RANGE ---------- */
-
- public static final Materials getPrimaryMaterial(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) return Materials.getRealMaterial(aNBT.getString("PrimaryMaterial"));
- }
- return Materials._NULL;
- }
-
- public static final Materials getSecondaryMaterial(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) return Materials.getRealMaterial(aNBT.getString("SecondaryMaterial"));
- }
- return Materials._NULL;
- }
-
- /* ---------- INTERNAL OVERRIDES ---------- */
-
- public static final long getToolMaxDamage(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) return aNBT.getLong("MaxDamage");
- }
- return 0;
- }
-
- public static final long getToolDamage(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) return aNBT.getLong("Damage");
- }
- return 0;
- }
-
- public static final boolean setToolDamage(ItemStack aStack, long aDamage) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null) {
- aNBT.setLong("Damage", aDamage);
- return true;
- }
- }
- return false;
- }
-
- /**
- * This adds a Custom Item to the ending Range.
- *
- * @param aID The Id of the assigned Tool Class [0 - 32765] (only even Numbers allowed! Uneven ID's are empty electric Items)
- * @param aEnglish The Default Localized Name of the created Item
- * @param aToolTip The Default ToolTip of the created Item, you can also insert null for having no ToolTip
- * @param aToolStats The Food Value of this Item. Can be null as well.
- * @param aOreDictNamesAndAspects The OreDict Names you want to give the Item. Also used to assign Thaumcraft Aspects.
- * @return An ItemStack containing the newly created Item, but without specific Stats.
- */
- public final ItemStack addTool(int aID, String aEnglish, String aToolTip, Interface_ToolStats aToolStats, Object... aOreDictNamesAndAspects) {
- if (aToolTip == null) aToolTip = "";
- if (aID >= 0 && aID < 32766 && aID % 2 == 0) {
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + aID + ".name", aEnglish);
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + aID + ".tooltip", aToolTip);
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (aID + 1) + ".name", aEnglish + " (Empty)");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + (aID + 1) + ".tooltip", "You need to recharge it");
- mToolStats.put((short) aID, aToolStats);
- mToolStats.put((short) (aID + 1), aToolStats);
- aToolStats.onStatsAddedToTool(this, aID);
- ItemStack rStack = new ItemStack(this, 1, aID);
- List<TC_AspectStack> tAspects = new ArrayList<TC_AspectStack>();
- for (Object tOreDictNameOrAspect : aOreDictNamesAndAspects) {
- if (tOreDictNameOrAspect instanceof TC_AspectStack)
- ((TC_AspectStack) tOreDictNameOrAspect).addToAspectList(tAspects);
- else
- GT_OreDictUnificator.registerOre(tOreDictNameOrAspect, rStack);
- }
- if (GregTech_API.sThaumcraftCompat != null)
- GregTech_API.sThaumcraftCompat.registerThaumcraftAspectsToItem(rStack, tAspects, false);
- return rStack;
- }
- return null;
- }
-
- /**
- * This Function gets an ItemStack Version of this Tool
- *
- * @param aToolID the ID of the Tool Class
- * @param aAmount Amount of Items (well normally you only need 1)
- * @param aPrimaryMaterial Primary Material of this Tool
- * @param aSecondaryMaterial Secondary (Rod/Handle) Material of this Tool
- * @param aElectricArray The Electric Stats of this Tool (or null if not electric)
- */
- public final ItemStack getToolWithStats(int aToolID, int aAmount, Materials aPrimaryMaterial, Materials aSecondaryMaterial, long[] aElectricArray) {
- ItemStack rStack = new ItemStack(this, aAmount, aToolID);
- Interface_ToolStats tToolStats = getToolStats(rStack);
- if (tToolStats != null) {
- NBTTagCompound tMainNBT = new NBTTagCompound(), tToolNBT = new NBTTagCompound();
- if (aPrimaryMaterial != null) {
- tToolNBT.setString("PrimaryMaterial", aPrimaryMaterial.toString());
- tToolNBT.setLong("MaxDamage", 100L * (long) (aPrimaryMaterial.mDurability * tToolStats.getMaxDurabilityMultiplier()));
- }
- if (aSecondaryMaterial != null) tToolNBT.setString("SecondaryMaterial", aSecondaryMaterial.toString());
-
- if (aElectricArray != null) {
- tToolNBT.setBoolean("Electric", true);
- tToolNBT.setLong("MaxCharge", aElectricArray[0]);
- tToolNBT.setLong("Voltage", aElectricArray[1]);
- tToolNBT.setLong("Tier", aElectricArray[2]);
- tToolNBT.setLong("SpecialData", aElectricArray[3]);
- }
-
- tMainNBT.setTag("GT.ToolStats", tToolNBT);
- rStack.setTagCompound(tMainNBT);
- }
- isItemStackUsable(rStack);
- return rStack;
- }
-
- /**
- * Called by the Block Harvesting Event within the GT_Proxy
- */
- public void onHarvestBlockEvent(ArrayList<ItemStack> aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (isItemStackUsable(aStack) && getDigSpeed(aStack, aBlock, aMetaData) > 0.0F)
- doDamage(aStack, tStats.convertBlockDrops(aDrops, aStack, aPlayer, aBlock, aX, aY, aZ, aMetaData, aFortune, aSilkTouch, aEvent) * tStats.getToolDamagePerDropConversion());
- }
-
- @Override
- public boolean onLeftClickEntity(ItemStack aStack, EntityPlayer aPlayer, Entity aEntity) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null || !isItemStackUsable(aStack)) return true;
- GT_Utility.doSoundAtClient(tStats.getEntityHitSound(), 1, 1.0F);
- if (super.onLeftClickEntity(aStack, aPlayer, aEntity)) return true;
- if (aEntity.canAttackWithItem() && !aEntity.hitByEntity(aPlayer)) {
- float tMagicDamage = tStats.getMagicDamageAgainstEntity(aEntity instanceof EntityLivingBase ? EnchantmentHelper.getEnchantmentModifierLiving(aPlayer, (EntityLivingBase) aEntity) : 0.0F, aEntity, aStack, aPlayer), tDamage = tStats.getNormalDamageAgainstEntity((float) aPlayer.getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue() + getToolCombatDamage(aStack), aEntity, aStack, aPlayer);
- if (tDamage + tMagicDamage > 0.0F) {
- boolean tCriticalHit = aPlayer.fallDistance > 0.0F && !aPlayer.onGround && !aPlayer.isOnLadder() && !aPlayer.isInWater() && !aPlayer.isPotionActive(Potion.blindness) && aPlayer.ridingEntity == null && aEntity instanceof EntityLivingBase;
- if (tCriticalHit && tDamage > 0.0F) tDamage *= 1.5F;
- tDamage += tMagicDamage;
- if (aEntity.attackEntityFrom(tStats.getDamageSource(aPlayer, aEntity), tDamage)) {
- if (aEntity instanceof EntityLivingBase)
- aEntity.setFire(EnchantmentHelper.getFireAspectModifier(aPlayer) * 4);
- int tKnockcack = (aPlayer.isSprinting() ? 1 : 0) + (aEntity instanceof EntityLivingBase ? EnchantmentHelper.getKnockbackModifier(aPlayer, (EntityLivingBase) aEntity) : 0);
- if (tKnockcack > 0) {
- aEntity.addVelocity(-MathHelper.sin(aPlayer.rotationYaw * (float) Math.PI / 180.0F) * tKnockcack * 0.5F, 0.1D, MathHelper.cos(aPlayer.rotationYaw * (float) Math.PI / 180.0F) * tKnockcack * 0.5F);
- aPlayer.motionX *= 0.6D;
- aPlayer.motionZ *= 0.6D;
- aPlayer.setSprinting(false);
- }
- if (tCriticalHit) aPlayer.onCriticalHit(aEntity);
- if (tMagicDamage > 0.0F) aPlayer.onEnchantmentCritical(aEntity);
- if (tDamage >= 18.0F) aPlayer.triggerAchievement(AchievementList.overkill);
- aPlayer.setLastAttacker(aEntity);
- if (aEntity instanceof EntityLivingBase)
- EnchantmentHelper.func_151384_a((EntityLivingBase) aEntity, aPlayer);
- EnchantmentHelper.func_151385_b(aPlayer, aEntity);
- if (aEntity instanceof EntityLivingBase)
- aPlayer.addStat(StatList.damageDealtStat, Math.round(tDamage * 10.0F));
- aEntity.hurtResistantTime = Math.max(1, tStats.getHurtResistanceTime(aEntity.hurtResistantTime, aEntity));
- aPlayer.addExhaustion(0.3F);
- doDamage(aStack, tStats.getToolDamagePerEntityAttack());
- }
- }
- }
- if (aStack.stackSize <= 0) aPlayer.destroyCurrentEquippedItem();
- return true;
- }
-
- @Override
- public ItemStack onItemRightClick(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats != null && tStats.canBlock()) aPlayer.setItemInUse(aStack, 72000);
- return super.onItemRightClick(aStack, aWorld, aPlayer);
- }
-
- @Override
- public final int getMaxItemUseDuration(ItemStack aStack) {
- return 72000;
- }
-
- @Override
- public final EnumAction getItemUseAction(ItemStack aStack) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats != null && tStats.canBlock()) return EnumAction.block;
- return EnumAction.none;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public final void getSubItems(Item var1, CreativeTabs aCreativeTab, List aList) {
- for (int i = 0; i < 32766; i += 2)
- if (getToolStats(new ItemStack(this, 1, i)) != null) {
- ItemStack tStack = new ItemStack(this, 1, i);
- isItemStackUsable(tStack);
- aList.add(tStack);
- }
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public final void registerIcons(IIconRegister aIconRegister) {
- //
- }
-
- @Override
- public final IIcon getIconFromDamage(int aMetaData) {
- return null;
- }
-
- @Override
- public void addAdditionalToolTips(List aList, ItemStack aStack) {
- long tMaxDamage = getToolMaxDamage(aStack);
- Materials tMaterial = getPrimaryMaterial(aStack);
- Interface_ToolStats tStats = getToolStats(aStack);
- int tOffset = getElectricStats(aStack) != null ? 2 : 1;
- if (tStats != null) {
- String name = aStack.getUnlocalizedName();
- if (name.equals("gt.metatool.01.170") || name.equals("gt.metatool.01.172") || name.equals("gt.metatool.01.174") || name.equals("gt.metatool.01.176")) {
- aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
- aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.YELLOW + " lvl " + getHarvestLevel(aStack, "") + EnumChatFormatting.GRAY);
- aList.add(tOffset + 2, EnumChatFormatting.WHITE + "Turbine Efficency: " + EnumChatFormatting.BLUE + (50.0F + (10.0F * getToolCombatDamage(aStack))) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 3, EnumChatFormatting.WHITE + "Optimal Steam flow: " + EnumChatFormatting.LIGHT_PURPLE + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 1000) + EnumChatFormatting.GRAY + "L/sec");
- aList.add(tOffset + 3, EnumChatFormatting.WHITE + "Optimal Gas flow(EU burnvalue per tick): " + EnumChatFormatting.LIGHT_PURPLE + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 25) + EnumChatFormatting.GRAY + "EU/t");
- aList.add(tOffset + 3, EnumChatFormatting.WHITE + "Optimal Plasma flow(Plasma energyvalue per tick): " + EnumChatFormatting.LIGHT_PURPLE + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 1000) + EnumChatFormatting.GRAY + "EU/t");
-
- } else {
- aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY);
- aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.YELLOW + " lvl " + getHarvestLevel(aStack, "") + EnumChatFormatting.GRAY);
- aList.add(tOffset + 2, EnumChatFormatting.WHITE + "Attack Damage: " + EnumChatFormatting.BLUE + getToolCombatDamage(aStack) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 3, EnumChatFormatting.WHITE + "Mining Speed: " + EnumChatFormatting.LIGHT_PURPLE + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed) + EnumChatFormatting.GRAY);
- }
- }
- }
-
- @Override
- public Long[] getFluidContainerStats(ItemStack aStack) {
- return null;
- }
-
- @Override
- public Long[] getElectricStats(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) {
- aNBT = aNBT.getCompoundTag("GT.ToolStats");
- if (aNBT != null && aNBT.getBoolean("Electric"))
- return new Long[]{aNBT.getLong("MaxCharge"), aNBT.getLong("Voltage"), aNBT.getLong("Tier"), aNBT.getLong("SpecialData")};
- }
- return null;
- }
-
- public float getToolCombatDamage(ItemStack aStack) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null) return 0;
- return tStats.getBaseDamage() + getPrimaryMaterial(aStack).mToolQuality;
- }
-
- @Override
- public final boolean doDamageToItem(ItemStack aStack, int aVanillaDamage) {
- return doDamage(aStack, aVanillaDamage * 100);
- }
-
- public final boolean doDamage(ItemStack aStack, long aAmount) {
- if (!isItemStackUsable(aStack)) return false;
- Long[] tElectric = getElectricStats(aStack);
- if (tElectric == null) {
- long tNewDamage = getToolDamage(aStack) + aAmount;
- setToolDamage(aStack, tNewDamage);
- if (tNewDamage >= getToolMaxDamage(aStack)) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null || GT_Utility.setStack(aStack, tStats.getBrokenItem(aStack)) == null) {
- if (tStats != null) /*GT_Utility.doSoundAtClient(tStats.getBreakingSound(), 1, 1.0F);*/
- if (aStack.stackSize > 0) aStack.stackSize--;
-
- }
- }
- return true;
- }
- if (use(aStack, (int) aAmount, null)) {
- if (new Random().nextInt(25) == 0) {
- long tNewDamage = getToolDamage(aStack) + aAmount;
- setToolDamage(aStack, tNewDamage);
- if (tNewDamage >= getToolMaxDamage(aStack)) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null || GT_Utility.setStack(aStack, tStats.getBrokenItem(aStack)) == null) {
- if (tStats != null) /*GT_Utility.doSoundAtClient(tStats.getBreakingSound(), 1, 1.0F);*/
- if (aStack.stackSize > 0) aStack.stackSize--;
- }
- }
- }
- return true;
- }
- return false;
- }
-
- @Override
- public float getDigSpeed(ItemStack aStack, Block aBlock, int aMetaData) {
- if (!isItemStackUsable(aStack)) return 0.0F;
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null || Math.max(0, getHarvestLevel(aStack, "")) < aBlock.getHarvestLevel(aMetaData)) return 0.0F;
- return tStats.isMinableBlock(aBlock, (byte) aMetaData) ? Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed) : 0.0F;
- }
-
- @Override
- public final boolean canHarvestBlock(Block aBlock, ItemStack aStack) {
- return getDigSpeed(aStack, aBlock, (byte) 0) > 0.0F;
- }
-
- @Override
- public final int getHarvestLevel(ItemStack aStack, String aToolClass) {
- Interface_ToolStats tStats = getToolStats(aStack);
- return tStats == null ? -1 : tStats.getBaseQuality() + getPrimaryMaterial(aStack).mToolQuality;
- }
-
- @Override
- public boolean onBlockDestroyed(ItemStack aStack, World aWorld, Block aBlock, int aX, int aY, int aZ, EntityLivingBase aPlayer) {
- if (!isItemStackUsable(aStack)) return false;
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null) return false;
- GT_Utility.doSoundAtClient(tStats.getMiningSound(), 1, 1.0F);
- doDamage(aStack, (int) Math.max(1, aBlock.getBlockHardness(aWorld, aX, aY, aZ) * tStats.getToolDamagePerBlockBreak()));
- return getDigSpeed(aStack, aBlock, aWorld.getBlockMetadata(aX, aY, aZ)) > 0.0F;
- }
-
- @Override
- public final ItemStack getContainerItem(ItemStack aStack) {
- return getContainerItem(aStack, true);
- }
-
- @Override
- public final boolean hasContainerItem(ItemStack aStack) {
- return getContainerItem(aStack, false) != null;
- }
-
- private ItemStack getContainerItem(ItemStack aStack, boolean playSound) {
- if (!isItemStackUsable(aStack)) return null;
- aStack = GT_Utility.copyAmount(1, aStack);
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats == null) return null;
- doDamage(aStack, tStats.getToolDamagePerContainerCraft());
- aStack = aStack.stackSize > 0 ? aStack : null;
- if (playSound) {
- //String sound = (aStack == null) ? tStats.getBreakingSound() : tStats.getCraftingSound();
- //GT_Utility.doSoundAtClient(sound, 1, 1.0F);
- }
- return aStack;
- }
-
- public Interface_ToolStats getToolStats(ItemStack aStack) {
- isItemStackUsable(aStack);
- return getToolStatsInternal(aStack);
- }
-
- private Interface_ToolStats getToolStatsInternal(ItemStack aStack) {
- return aStack == null ? null : mToolStats.get((short) aStack.getItemDamage());
- }
-
- @Override
- public boolean canWhack(EntityPlayer aPlayer, ItemStack aStack, int aX, int aY, int aZ) {
- if (!isItemStackUsable(aStack)) return false;
- Interface_ToolStats tStats = getToolStats(aStack);
- return tStats != null && tStats.isCrowbar();
- }
-
- @Override
- public void onWhack(EntityPlayer aPlayer, ItemStack aStack, int aX, int aY, int aZ) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats != null) doDamage(aStack, tStats.getToolDamagePerEntityAttack());
- }
-
- @Override
- public boolean canWrench(EntityPlayer player, int x, int y, int z) {
- System.out.println("canWrench");
- if(player==null)return false;
- if(player.getCurrentEquippedItem()==null)return false;
- if (!isItemStackUsable(player.getCurrentEquippedItem())) return false;
- Interface_ToolStats tStats = getToolStats(player.getCurrentEquippedItem());
- return tStats != null && tStats.isWrench();
- }
-
- @Override
- public void wrenchUsed(EntityPlayer player, int x, int y, int z) {
- if(player==null)return;
- if(player.getCurrentEquippedItem()==null)return;
- Interface_ToolStats tStats = getToolStats(player.getCurrentEquippedItem());
- if (tStats != null) doDamage(player.getCurrentEquippedItem(), tStats.getToolDamagePerEntityAttack());
- }
-
- @Override
- public boolean canLink(EntityPlayer aPlayer, ItemStack aStack, EntityMinecart cart) {
- if (!isItemStackUsable(aStack)) return false;
- Interface_ToolStats tStats = getToolStats(aStack);
- return tStats != null && tStats.isCrowbar();
- }
-
- @Override
- public void onLink(EntityPlayer aPlayer, ItemStack aStack, EntityMinecart cart) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats != null) doDamage(aStack, tStats.getToolDamagePerEntityAttack());
- }
-
- @Override
- public boolean canBoost(EntityPlayer aPlayer, ItemStack aStack, EntityMinecart cart) {
- if (!isItemStackUsable(aStack)) return false;
- Interface_ToolStats tStats = getToolStats(aStack);
- return tStats != null && tStats.isCrowbar();
- }
-
- @Override
- public void onBoost(EntityPlayer aPlayer, ItemStack aStack, EntityMinecart cart) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats != null) doDamage(aStack, tStats.getToolDamagePerEntityAttack());
- }
-
- @Override
- public void onCreated(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- Interface_ToolStats tStats = getToolStats(aStack);
- if (tStats != null && aPlayer != null) tStats.onToolCrafted(aStack, aPlayer);
- super.onCreated(aStack, aWorld, aPlayer);
- }
-
- @Override
- public final boolean doesContainerItemLeaveCraftingGrid(ItemStack aStack) {
- return false;
- }
-
- @Override
- public final int getItemStackLimit(ItemStack aStack) {
- return 1;
- }
-
- @Override
- public boolean isFull3D() {
- return true;
- }
-
- @Override
- public boolean isItemStackUsable(ItemStack aStack) {
- Interface_ToolStats tStats = getToolStatsInternal(aStack);
- if (aStack.getItemDamage() % 2 == 1 || tStats == null) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) aNBT.removeTag("ench");
- return false;
- }
- Materials aMaterial = getPrimaryMaterial(aStack);
- HashMap<Integer, Integer> tMap = new HashMap<Integer, Integer>(), tResult = new HashMap<Integer, Integer>();
- if (aMaterial.mEnchantmentTools != null) {
- tMap.put(aMaterial.mEnchantmentTools.effectId, (int) aMaterial.mEnchantmentToolsLevel);
- if (aMaterial.mEnchantmentTools == Enchantment.fortune)
- tMap.put(Enchantment.looting.effectId, (int) aMaterial.mEnchantmentToolsLevel);
- if (aMaterial.mEnchantmentTools == Enchantment.knockback)
- tMap.put(Enchantment.power.effectId, (int) aMaterial.mEnchantmentToolsLevel);
- if (aMaterial.mEnchantmentTools == Enchantment.fireAspect)
- tMap.put(Enchantment.flame.effectId, (int) aMaterial.mEnchantmentToolsLevel);
- }
- Enchantment[] tEnchants = tStats.getEnchantments(aStack);
- int[] tLevels = tStats.getEnchantmentLevels(aStack);
- for (int i = 0; i < tEnchants.length; i++)
- if (tLevels[i] > 0) {
- Integer tLevel = tMap.get(tEnchants[i].effectId);
- tMap.put(tEnchants[i].effectId, tLevel == null ? tLevels[i] : tLevel == tLevels[i] ? tLevel + 1 : Math.max(tLevel, tLevels[i]));
- }
- for (Entry<Integer, Integer> tEntry : tMap.entrySet()) {
- if (tEntry.getKey() == 33 || (tEntry.getKey() == 20 && tEntry.getValue() > 2) || tEntry.getKey() == Enchantment_Radioactivity.INSTANCE.effectId)
- tResult.put(tEntry.getKey(), tEntry.getValue());
- else
- switch (Enchantment.enchantmentsList[tEntry.getKey()].type) {
- case weapon:
- if (tStats.isWeapon()) tResult.put(tEntry.getKey(), tEntry.getValue());
- break;
- case all:
- tResult.put(tEntry.getKey(), tEntry.getValue());
- break;
- case armor:
- case armor_feet:
- case armor_head:
- case armor_legs:
- case armor_torso:
- break;
- case bow:
- if (tStats.isRangedWeapon()) tResult.put(tEntry.getKey(), tEntry.getValue());
- break;
- case breakable:
- break;
- case fishing_rod:
- break;
- case digger:
- if (tStats.isMiningTool()) tResult.put(tEntry.getKey(), tEntry.getValue());
- break;
- }
- }
- EnchantmentHelper.setEnchantments(tResult, aStack);
- return true;
- }
-
- @Override
- public short getChargedMetaData(ItemStack aStack) {
- return (short) (aStack.getItemDamage() - (aStack.getItemDamage() % 2));
- }
-
- @Override
- public short getEmptyMetaData(ItemStack aStack) {
- NBTTagCompound aNBT = aStack.getTagCompound();
- if (aNBT != null) aNBT.removeTag("ench");
- return (short) (aStack.getItemDamage() + 1 - (aStack.getItemDamage() % 2));
- }
-
- @Override
- public int getItemEnchantability() {
- return 0;
- }
-
- @Override
- public boolean isBookEnchantable(ItemStack aStack, ItemStack aBook) {
- return false;
- }
-
- @Override
- public boolean getIsRepairable(ItemStack aStack, ItemStack aMaterial) {
- return false;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_Base.java b/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_Base.java
deleted file mode 100644
index e0899d22c0..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_Base.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package miscutil.core.xmod.gregtech.api.items.types;
-
-import gregtech.api.enums.SubTag;
-
-import java.util.List;
-
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_ItemBehaviour;
-import miscutil.core.xmod.gregtech.api.items.Gregtech_MetaItem_Base;
-import net.minecraft.block.BlockDispenser;
-import net.minecraft.dispenser.BehaviorDefaultDispenseItem;
-import net.minecraft.dispenser.IBlockSource;
-import net.minecraft.dispenser.IPosition;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.projectile.EntityArrow;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.EnumFacing;
-import net.minecraft.world.World;
-
-public class ToolType_Base implements Interface_ItemBehaviour<Gregtech_MetaItem_Base> {
- @Override
- public boolean onLeftClickEntity(Gregtech_MetaItem_Base aItem, ItemStack aStack, EntityPlayer aPlayer, Entity aEntity) {
- return false;
- }
-
- @Override
- public boolean onItemUse(Gregtech_MetaItem_Base aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ) {
- return false;
- }
-
- @Override
- public boolean onItemUseFirst(Gregtech_MetaItem_Base aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ) {
- return false;
- }
-
- @Override
- public ItemStack onItemRightClick(Gregtech_MetaItem_Base aItem, ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- return aStack;
- }
-
- @Override
- public List<String> getAdditionalToolTips(Gregtech_MetaItem_Base aItem, List<String> aList, ItemStack aStack) {
- return aList;
- }
-
- @Override
- public void onUpdate(Gregtech_MetaItem_Base aItem, ItemStack aStack, World aWorld, Entity aPlayer, int aTimer, boolean aIsInHand) {
- }
-
- @Override
- public boolean isItemStackUsable(Gregtech_MetaItem_Base aItem, ItemStack aStack) {
- return true;
- }
-
- @Override
- public boolean canDispense(Gregtech_MetaItem_Base aItem, IBlockSource aSource, ItemStack aStack) {
- return false;
- }
-
- @Override
- public ItemStack onDispense(Gregtech_MetaItem_Base aItem, IBlockSource aSource, ItemStack aStack) {
- EnumFacing enumfacing = BlockDispenser.func_149937_b(aSource.getBlockMetadata());
- IPosition iposition = BlockDispenser.func_149939_a(aSource);
- ItemStack itemstack1 = aStack.splitStack(1);
- BehaviorDefaultDispenseItem.doDispense(aSource.getWorld(), itemstack1, 6, enumfacing, iposition);
- return aStack;
- }
-
- @Override
- public boolean hasProjectile(Gregtech_MetaItem_Base aItem, SubTag aProjectileType, ItemStack aStack) {
- return false;
- }
-
- @Override
- public EntityArrow getProjectile(Gregtech_MetaItem_Base aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, double aX, double aY, double aZ) {
- return null;
- }
-
- @Override
- public EntityArrow getProjectile(Gregtech_MetaItem_Base aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed) {
- return null;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_HardHammer.java b/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_HardHammer.java
deleted file mode 100644
index ff9ef0a208..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_HardHammer.java
+++ /dev/null
@@ -1,127 +0,0 @@
-package miscutil.core.xmod.gregtech.api.items.types;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Materials;
-import gregtech.api.items.GT_MetaBase_Item;
-import gregtech.api.items.GT_MetaGenerated_Tool;
-import gregtech.api.objects.ItemData;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import gregtech.common.blocks.GT_Block_Ores;
-import gregtech.common.blocks.GT_TileEntity_Ores;
-
-import java.util.List;
-import java.util.Random;
-
-import net.minecraft.block.Block;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.ItemStack;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.IFluidBlock;
-
-public class ToolType_HardHammer
- extends ToolType_Base {
- private final int mVanillaCosts;
- private final int mEUCosts;
- private final String mTooltip = GT_LanguageManager.addStringLocalization("gt.behaviour.prospecting", "Usable for Prospecting");
-
- public ToolType_HardHammer(int aVanillaCosts, int aEUCosts) {
- this.mVanillaCosts = aVanillaCosts;
- this.mEUCosts = aEUCosts;
- }
-
- public boolean onItemUseFirst(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ) {
- if (aWorld.isRemote) {
- return false;
- }
- Block aBlock = aWorld.getBlock(aX, aY, aZ);
- if (aBlock == null) {
- return false;
- }
- byte aMeta = (byte) aWorld.getBlockMetadata(aX, aY, aZ);
-
-
- ItemData tAssotiation = GT_OreDictUnificator.getAssociation(new ItemStack(aBlock, 1, aMeta));
- if ((tAssotiation != null) && (tAssotiation.mPrefix.toString().startsWith("ore"))) {
- GT_Utility.sendChatToPlayer(aPlayer, "This is " + tAssotiation.mMaterial.mMaterial.mDefaultLocalName + " Ore.");
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), 1.0F, -1.0F, aX, aY, aZ);
- return true;
- }
- if ((aBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Blocks.stone)) || (aBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, GregTech_API.sBlockGranites)) || (aBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Blocks.netherrack)) || (aBlock.isReplaceableOreGen(aWorld, aX, aY, aZ, Blocks.end_stone))) {
- if (GT_ModHandler.damageOrDechargeItem(aStack, this.mVanillaCosts, this.mEUCosts, aPlayer)) {
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(1)), 1.0F, -1.0F, aX, aY, aZ);
- int tX = aX;
- int tY = aY;
- int tZ = aZ;
- int tMetaID = 0;
- int tQuality = (aItem instanceof GT_MetaGenerated_Tool) ? ((GT_MetaGenerated_Tool) aItem).getHarvestLevel(aStack, "") : 0;
-
- int i = 0;
- for (int j = 6 + tQuality; i < j; i++) {
- tX -= ForgeDirection.getOrientation(aSide).offsetX;
- tY -= ForgeDirection.getOrientation(aSide).offsetY;
- tZ -= ForgeDirection.getOrientation(aSide).offsetZ;
-
- Block tBlock = aWorld.getBlock(tX, tY, tZ);
- if ((tBlock == Blocks.lava) || (tBlock == Blocks.flowing_lava)) {
- GT_Utility.sendChatToPlayer(aPlayer, "There is Lava behind this Rock.");
- break;
- }
- if ((tBlock == Blocks.water) || (tBlock == Blocks.flowing_water) || ((tBlock instanceof IFluidBlock))) {
- GT_Utility.sendChatToPlayer(aPlayer, "There is a Liquid behind this Rock.");
- break;
- }
- if ((tBlock == Blocks.monster_egg) || (!GT_Utility.hasBlockHitBox(aWorld, tX, tY, tZ))) {
- GT_Utility.sendChatToPlayer(aPlayer, "There is an Air Pocket behind this Rock.");
- break;
- }
- if (tBlock != aBlock) {
- if (i >= 4) {
- break;
- }
- GT_Utility.sendChatToPlayer(aPlayer, "Material is changing behind this Rock.");
- break;
- }
- }
- Random tRandom = new Random(aX ^ aY ^ aZ ^ aSide);
- i = 0;
- for (int j = 9 + 2 * tQuality; i < j; i++) {
- tX = aX - 4 - tQuality + tRandom.nextInt(j);
- tY = aY - 4 - tQuality + tRandom.nextInt(j);
- tZ = aZ - 4 - tQuality + tRandom.nextInt(j);
- Block tBlock = aWorld.getBlock(tX, tY, tZ);
- if ((tBlock instanceof GT_Block_Ores)) {
- TileEntity tTileEntity = aWorld.getTileEntity(tX, tY, tZ);
- if ((tTileEntity instanceof GT_TileEntity_Ores)) {
- Materials tMaterial = GregTech_API.sGeneratedMaterials[(((GT_TileEntity_Ores) tTileEntity).mMetaData % 1000)];
- if ((tMaterial != null) && (tMaterial != Materials._NULL)) {
- GT_Utility.sendChatToPlayer(aPlayer, "Found traces of " + tMaterial.mDefaultLocalName + " Ore.");
- return true;
- }
- }
- } else {
- tMetaID = aWorld.getBlockMetadata(tX, tY, tZ);
- tAssotiation = GT_OreDictUnificator.getAssociation(new ItemStack(tBlock, 1, tMetaID));
- if ((tAssotiation != null) && (tAssotiation.mPrefix.toString().startsWith("ore"))) {
- GT_Utility.sendChatToPlayer(aPlayer, "Found traces of " + tAssotiation.mMaterial.mMaterial.mDefaultLocalName + " Ore.");
- return true;
- }
- }
- }
- GT_Utility.sendChatToPlayer(aPlayer, "No Ores found.");
- }
- return true;
- }
- return false;
- }
-
- public List<String> getAdditionalToolTips(GT_MetaBase_Item aItem, List<String> aList, ItemStack aStack) {
- aList.add(this.mTooltip);
- return aList;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_Wrench.java b/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_Wrench.java
deleted file mode 100644
index ade388b894..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/items/types/ToolType_Wrench.java
+++ /dev/null
@@ -1,149 +0,0 @@
-package miscutil.core.xmod.gregtech.api.items.types;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.items.GT_MetaBase_Item;
-import gregtech.api.items.GT_MetaGenerated_Tool;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-import ic2.api.tile.IWrenchable;
-
-import java.util.Arrays;
-import java.util.List;
-
-import net.minecraft.block.Block;
-import net.minecraft.entity.item.EntityItem;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.ItemStack;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-
-public class ToolType_Wrench
- extends ToolType_Base {
- private final int mCosts;
- private final String mTooltip = GT_LanguageManager.addStringLocalization("gt.behaviour.wrench", "Rotates Blocks on Rightclick");
-
- public ToolType_Wrench(int aCosts) {
- this.mCosts = aCosts;
- }
-
- public boolean onItemUseFirst(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ) {
- if (aWorld.isRemote) {
- return false;
- }
- Block aBlock = aWorld.getBlock(aX, aY, aZ);
- if (aBlock == null) {
- return false;
- }
- byte aMeta = (byte) aWorld.getBlockMetadata(aX, aY, aZ);
- byte aTargetSide = GT_Utility.determineWrenchingSide((byte) aSide, hitX, hitY, hitZ);
- TileEntity aTileEntity = aWorld.getTileEntity(aX, aY, aZ);
- try {
- if ((aTileEntity != null) && ((aTileEntity instanceof IWrenchable))) {
- if (((IWrenchable) aTileEntity).wrenchCanSetFacing(aPlayer, aTargetSide)) {
- if ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts))) {
- ((IWrenchable) aTileEntity).setFacing((short) aTargetSide);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- if (((IWrenchable) aTileEntity).wrenchCanRemove(aPlayer)) {
- int tDamage = ((IWrenchable) aTileEntity).getWrenchDropRate() < 1.0F ? 10 : 3;
- if ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, tDamage * this.mCosts))) {
- ItemStack tOutput = ((IWrenchable) aTileEntity).getWrenchDrop(aPlayer);
- for (ItemStack tStack : aBlock.getDrops(aWorld, aX, aY, aZ, aMeta, 0)) {
- if (tOutput == null) {
- aWorld.spawnEntityInWorld(new EntityItem(aWorld, aX + 0.5D, aY + 0.5D, aZ + 0.5D, tStack));
- } else {
- aWorld.spawnEntityInWorld(new EntityItem(aWorld, aX + 0.5D, aY + 0.5D, aZ + 0.5D, tOutput));
- tOutput = null;
- }
- }
- aWorld.setBlockToAir(aX, aY, aZ);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- return true;
- }
- } catch (Throwable e) {
- }
- if ((aBlock == Blocks.log) || (aBlock == Blocks.log2) || (aBlock == Blocks.hay_block)) {
- if ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts))) {
- aWorld.setBlockMetadataWithNotify(aX, aY, aZ, (aMeta + 4) % 12, 3);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- if ((aBlock == Blocks.powered_repeater) || (aBlock == Blocks.unpowered_repeater)) {
- if ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts))) {
- aWorld.setBlockMetadataWithNotify(aX, aY, aZ, aMeta / 4 * 4 + (aMeta % 4 + 1) % 4, 3);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- if ((aBlock == Blocks.powered_comparator) || (aBlock == Blocks.unpowered_comparator)) {
- if ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts))) {
- aWorld.setBlockMetadataWithNotify(aX, aY, aZ, aMeta / 4 * 4 + (aMeta % 4 + 1) % 4, 3);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- if ((aBlock == Blocks.crafting_table) || (aBlock == Blocks.bookshelf)) {
- if ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts))) {
- aWorld.spawnEntityInWorld(new EntityItem(aWorld, aX + 0.5D, aY + 0.5D, aZ + 0.5D, new ItemStack(aBlock, 1, aMeta)));
- aWorld.setBlockToAir(aX, aY, aZ);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- if (aMeta == aTargetSide) {
- if ((aBlock == Blocks.pumpkin) || (aBlock == Blocks.lit_pumpkin) || (aBlock == Blocks.piston) || (aBlock == Blocks.sticky_piston) || (aBlock == Blocks.dispenser) || (aBlock == Blocks.dropper) || (aBlock == Blocks.furnace) || (aBlock == Blocks.lit_furnace) || (aBlock == Blocks.chest) || (aBlock == Blocks.trapped_chest) || (aBlock == Blocks.ender_chest) || (aBlock == Blocks.hopper)) {
- if ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts))) {
- aWorld.spawnEntityInWorld(new EntityItem(aWorld, aX + 0.5D, aY + 0.5D, aZ + 0.5D, new ItemStack(aBlock, 1, 0)));
- aWorld.setBlockToAir(aX, aY, aZ);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- } else {
- if ((aBlock == Blocks.piston) || (aBlock == Blocks.sticky_piston) || (aBlock == Blocks.dispenser) || (aBlock == Blocks.dropper)) {
- if ((aMeta < 6) && ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts)))) {
- aWorld.setBlockMetadataWithNotify(aX, aY, aZ, aTargetSide, 3);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- if ((aBlock == Blocks.pumpkin) || (aBlock == Blocks.lit_pumpkin) || (aBlock == Blocks.furnace) || (aBlock == Blocks.lit_furnace) || (aBlock == Blocks.chest) || (aBlock == Blocks.ender_chest) || (aBlock == Blocks.trapped_chest)) {
- if ((aTargetSide > 1) && ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts)))) {
- aWorld.setBlockMetadataWithNotify(aX, aY, aZ, aTargetSide, 3);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- if (aBlock == Blocks.hopper) {
- if ((aTargetSide != 1) && ((aPlayer.capabilities.isCreativeMode) || (((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts)))) {
- aWorld.setBlockMetadataWithNotify(aX, aY, aZ, aTargetSide, 3);
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return true;
- }
- }
- if ((Arrays.asList(aBlock.getValidRotations(aWorld, aX, aY, aZ)).contains(ForgeDirection.getOrientation(aTargetSide))) &&
- ((aPlayer.capabilities.isCreativeMode) || (!GT_ModHandler.isElectricItem(aStack)) || (GT_ModHandler.canUseElectricItem(aStack, this.mCosts))) &&
- (aBlock.rotateBlock(aWorld, aX, aY, aZ, ForgeDirection.getOrientation(aTargetSide)))) {
- if (!aPlayer.capabilities.isCreativeMode) {
- ((GT_MetaGenerated_Tool) aItem).doDamage(aStack, this.mCosts);
- }
- GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(Integer.valueOf(100)), 1.0F, -1.0F, aX, aY, aZ);
- }
- return false;
- }
-
- public List<String> getAdditionalToolTips(GT_MetaBase_Item aItem, List<String> aList, ItemStack aStack) {
- aList.add(this.mTooltip);
- return aList;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaCondensor.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaCondensor.java
deleted file mode 100644
index 4ab969c483..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaCondensor.java
+++ /dev/null
@@ -1,165 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations;
-
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import miscutil.core.util.math.MathUtils;
-import miscutil.core.xmod.gregtech.api.gui.CONTAINER_SteamCondenser;
-import miscutil.core.xmod.gregtech.api.gui.GUI_SteamCondenser;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.generators.GregtechMetaBoilerBase;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.fluids.IFluidHandler;
-
-public class GregtechMetaCondensor extends GregtechMetaBoilerBase{
-
- public GregtechMetaCondensor(int aID, String aName, String aNameRegional)
- {
- super(aID, aName, aNameRegional, "A Steam condenser - [IC2->Steam]", new ITexture[0]);
- }
-
- public GregtechMetaCondensor(String aName, int aTier, String aDescription, ITexture[][][] aTextures)
- {
- super(aName, aTier, aDescription, aTextures);
- }
-
- @Override
- public String[] getDescription() {
- return new String[] {mDescription, CORE.GT_Tooltip};
- }
-
- public ITexture[][][] getTextureSet(ITexture[] aTextures)
- {
- ITexture[][][] rTextures = new ITexture[5][17][];
- for (byte i = -1; i < 16; i++){
- rTextures[0][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_VENT, Dyes.getModulation(i, Dyes.MACHINE_METAL.mRGBa))};
- rTextures[1][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_VENT, Dyes.getModulation(i, Dyes.MACHINE_METAL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) };
- rTextures[2][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_VENT, Dyes.getModulation(i, Dyes.MACHINE_METAL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) };
- rTextures[3][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_VENT, Dyes.getModulation(i, Dyes.MACHINE_METAL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_FRONT_POTIONBREWER) };
- rTextures[4][(i + 1)] = new ITexture [] { new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_VENT, Dyes.getModulation(i, Dyes.MACHINE_METAL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_FRONT_POTIONBREWER_ACTIVE) };
- }
- return rTextures;
- }
-
- public int maxProgresstime()
- {
- return 1000;
- }
-
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity)
- {
- return new CONTAINER_SteamCondenser(aPlayerInventory, aBaseMetaTileEntity, 32000);
- }
-
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity)
- {
- return new GUI_SteamCondenser(aPlayerInventory, aBaseMetaTileEntity, "SteelBoiler.png", 32000);
- }
-
- public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity)
- {
- return new GregtechMetaCondensor(this.mName, this.mTier, this.mDescription, this.mTextures);
- }
-
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick)
- {
- this.RI = MathUtils.randLong(5L, 30L);
- if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L))
- {
- if (this.mTemperature <= 5)
- {
- this.mTemperature = 5;
- this.mLossTimer = 0;
- }
- if (++this.mLossTimer > 10)
- {
- this.mTemperature -= 1;
- this.mLossTimer = 0;
- }
- for (byte i = 1; (this.mSteam != null) && (i < 6); i = (byte)(i + 1)) {
- if (i != aBaseMetaTileEntity.getFrontFacing())
- {
- IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i);
- if (tTileEntity != null)
- {
- FluidStack tDrained = aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false);
- if (tDrained != null)
- {
- int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false);
- if (tFilledAmount > 0) {
- tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), tFilledAmount, true), true);
- }
- }
- }
- }
- }
- if (aTick % 10L == 0L) {
- if (this.mTemperature > 5)
- {
- if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0))
- {
- this.mHadNoWater = true;
- }
- else
- {
- if (this.mHadNoWater)
- {
- aBaseMetaTileEntity.doExplosion(2048L);
- return;
- }
- this.mFluid.amount -= 1;
- if (this.mSteam == null) {
- this.mSteam = GT_ModHandler.getSteam(30L);
- } else if (GT_ModHandler.isSteam(this.mSteam)) {
- this.mSteam.amount += 30;
- } else {
- this.mSteam = GT_ModHandler.getSteam(30L);
- }
- }
- }
- else {
- this.mHadNoWater = false;
- }
- }
- if ((this.mSteam != null) &&
- (this.mSteam.amount > 32000))
- {
- sendSound((byte)1);
- this.mSteam.amount = 24000;
- }
- /*if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) &&
- (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.bucket.get(IC2.getItemFromBlock(p_150898_0_)))))
- {
- this.mProcessingEnergy += 1000;
- aBaseMetaTileEntity.decrStackSize(2, 1);
- aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.bucket, Materials.Empty, 1L));
- }*/
- if ((this.mTemperature < 1000) && (this.mProcessingEnergy > 0) && (aTick % RI == 0L))
- {
- this.mProcessingEnergy -= 40;
- this.mTemperature += 2;
- }
- aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0);
- }
- }
-
- public final int fill(FluidStack aFluid, boolean doFill)
- {
- if ((Utils.isIC2Steam(aFluid)) && (this.mProcessingEnergy < 50))
- {
- int tFilledAmount = Math.min(50, aFluid.amount);
- if (doFill) {
- this.mProcessingEnergy += tFilledAmount;
- }
- return tFilledAmount;
- }
- return super.fill(aFluid, doFill);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaEnergyBuffer.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaEnergyBuffer.java
deleted file mode 100644
index 9034a27e70..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaEnergyBuffer.java
+++ /dev/null
@@ -1,338 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations;
-
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.enums.Textures;
-import gregtech.api.gui.GT_Container_1by1;
-import gregtech.api.gui.GT_GUIContainer_1by1;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.items.GT_MetaBase_Item;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-import ic2.api.item.IElectricItem;
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.GregtechMetaTileEntity;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.world.World;
-
-public class GregtechMetaEnergyBuffer extends GregtechMetaTileEntity {
-
- /*
- * public GregtechMetaEnergyBuffer() { super.this
- * setCreativeTab(GregTech_API.TAB_GREGTECH); }
- */
-
- public boolean mCharge = false, mDecharge = false;
- public int mBatteryCount = 1, mChargeableCount = 1;
-
- public GregtechMetaEnergyBuffer(int aID, String aName, String aNameRegional, int aTier, String aDescription, int aSlotCount) {
- super(aID, aName, aNameRegional, aTier, aSlotCount, aDescription);
- }
-
- public GregtechMetaEnergyBuffer(String aName, int aTier, String aDescription, ITexture[][][] aTextures, int aSlotCount) {
- super(aName, aTier, aSlotCount, aDescription, aTextures);
- }
-
- @Override
- public String[] getDescription() {
- return new String[] {mDescription, CORE.GT_Tooltip};
- }
-
- /*
- * MACHINE_STEEL_SIDE
- */
- @Override
- public ITexture[][][] getTextureSet(ITexture[] aTextures) {
- ITexture[][][] rTextures = new ITexture[2][17][];
- for (byte i = -1; i < 16; i++) {
- rTextures[0][i + 1] = new ITexture[] { new GT_RenderedTexture(
- Textures.BlockIcons.MACHINE_HEATPROOFCASING) };
- rTextures[1][i + 1] = new ITexture[] {
- new GT_RenderedTexture(
- Textures.BlockIcons.MACHINE_HEATPROOFCASING),
- mInventory.length > 4 ? Textures.BlockIcons.OVERLAYS_ENERGY_OUT_MULTI[mTier]
- : Textures.BlockIcons.OVERLAYS_ENERGY_OUT[mTier] };
- }
- return rTextures;
- }
-
- /*
- * @Override public ITexture[][][] getTextureSet(ITexture[] aTextures) {
- * ITexture[][][] rTextures = new ITexture[5][17][]; for (byte i = -1; i <
- * 16; i = (byte) (i + 1)) { ITexture[] tmp0 = { new GT_RenderedTexture(
- * Textures.BlockIcons.MACHINE_STEEL_BOTTOM, Dyes.getModulation(i,
- * Dyes._NULL.mRGBa)) }; rTextures[0][(i + 1)] = tmp0; ITexture[] tmp1 = {
- * new GT_RenderedTexture( Textures.BlockIcons.MACHINE_STEEL_TOP) };
- * rTextures[1][(i + 1)] = tmp1; ITexture[] tmp2 = { new GT_RenderedTexture(
- * Textures.BlockIcons.MACHINE_STEEL_SIDE, Dyes.getModulation(i,
- * Dyes._NULL.mRGBa)), new
- * GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE) }; rTextures[2][(i +
- * 1)] = tmp2; ITexture[] tmp4 = { new GT_RenderedTexture(
- * Textures.BlockIcons.MACHINE_STEEL_SIDE, Dyes.getModulation(i,
- * Dyes._NULL.mRGBa)), new
- * GT_RenderedTexture(Textures.BlockIcons.BOILER_FRONT) }; rTextures[3][(i +
- * 1)] = tmp4; ITexture[] tmp5 = { new GT_RenderedTexture(
- * Textures.BlockIcons.MACHINE_STEEL_SIDE, Dyes.getModulation(i,
- * Dyes._NULL.mRGBa)), new GT_RenderedTexture(
- * Textures.BlockIcons.BOILER_FRONT_ACTIVE) }; rTextures[4][(i + 1)] = tmp5;
- * } return rTextures; }
- */
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- return mTextures[aSide == aFacing ? 1 : 0][aColorIndex+1];
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaEnergyBuffer(mName, mTier, mDescription, mTextures, mInventory.length);
- }
-
- @Override public boolean isSimpleMachine() {return false;}
- @Override public boolean isElectric() {return true;}
- @Override public boolean isValidSlot(int aIndex) {return true;}
- @Override public boolean isFacingValid(byte aFacing) {return true;}
- @Override public boolean isEnetInput() {return true;}
- @Override public boolean isEnetOutput() {return true;}
- @Override public boolean isInputFacing(byte aSide) {return aSide!=getBaseMetaTileEntity().getFrontFacing();}
- @Override public boolean isOutputFacing(byte aSide) {return aSide==getBaseMetaTileEntity().getFrontFacing();}
- @Override public boolean isTeleporterCompatible() {return false;}
- @Override public long getMinimumStoredEU() {return V[mTier]*2;}
- @Override public long maxEUStore() {return V[mTier]*250000;}
-
- @Override
- public long maxEUInput() {
- return V[mTier];
- }
-
- @Override
- public long maxEUOutput() {
- return V[mTier];
- }
-
- @Override
- public long maxAmperesIn() {
- return mChargeableCount * 4;
- }
-
- @Override
- public long maxAmperesOut() {
- return mChargeableCount * 4;
- }
- @Override public int rechargerSlotStartIndex() {return 0;}
- @Override public int dechargerSlotStartIndex() {return 0;}
- @Override public int rechargerSlotCount() {return mCharge?mInventory.length:0;}
- @Override public int dechargerSlotCount() {return mDecharge?mInventory.length:0;}
- @Override public int getProgresstime() {return (int)getBaseMetaTileEntity().getUniversalEnergyStored();}
- @Override public int maxProgresstime() {return (int)getBaseMetaTileEntity().getUniversalEnergyCapacity();}
- @Override public boolean isAccessAllowed(EntityPlayer aPlayer) {return true;}
-
- @Override
- public void saveNBTData(NBTTagCompound aNBT) {
- //
- }
-
- @Override
- public void loadNBTData(NBTTagCompound aNBT) {
- //
- }
-
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
- Utils.LOG_WARNING("Right Click on MTE by Player");
- if (aBaseMetaTileEntity.isClientSide()) return true;
- //aBaseMetaTileEntity.openGUI(aPlayer);
-
- Utils.LOG_WARNING("MTE is Client-side");
- showEnergy(aPlayer.getEntityWorld(), aPlayer);
- return true;
- }
-
- private void showEnergy(World worldIn, EntityPlayer playerIn){
- long tempStorage = getStoredEnergy()[0];
- final double c = ((double) tempStorage / maxEUStore()) * 100;
- final double roundOff = Math.round(c * 100.00) / 100.00;
- Utils.messagePlayer(playerIn, "Energy: " + tempStorage + " EU at "+V[mTier]+"v ("+roundOff+"%)");
-
- }
- //Utils.LOG_WARNING("Begin Show Energy");
- /*
- *
- //Utils.LOG_INFO("getProgresstime: "+tempStorage+" maxProgresstime: "+maxEUStore()+" C: "+c);
- Utils.LOG_INFO("getProgressTime: "+getProgresstime());
- Utils.LOG_INFO("maxProgressTime: "+maxProgresstime());
- Utils.LOG_INFO("getMinimumStoredEU: "+getMinimumStoredEU());
- Utils.LOG_INFO("maxEUStore: "+maxEUStore());*/
- /*final long d = (tempStorage * 100L) / maxEUStore();
- Utils.LOG_INFO("getProgresstime: "+tempStorage+" maxProgresstime: "+maxEUStore()+" D: "+d);
- final double roundOff2 = Math.round(d * 100.00) / 100.00;
- Utils.messagePlayer(playerIn, "Energy: " + tempStorage + " EU at "+V[mTier]+"v ("+roundOff2+"%)");
- Utils.LOG_WARNING("Making new instance of Guihandler");
- GuiHandler block = new GuiHandler();
- Utils.LOG_WARNING("Guihandler.toString(): "+block.toString());
- block.getClientGuiElement(1, playerIn, worldIn, (int) playerIn.posX, (int) playerIn.posY, (int) playerIn.posZ);*/
-
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_Container_1by1(aPlayerInventory, aBaseMetaTileEntity);
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_GUIContainer_1by1(aPlayerInventory, aBaseMetaTileEntity, getLocalName());
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
-
- }
-
- @Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return false;
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return false;
- }
-
- public long[] getStoredEnergy(){
- long tScale = getBaseMetaTileEntity().getEUCapacity();
- long tStored = getBaseMetaTileEntity().getStoredEU();
- if (mInventory != null) {
- for (ItemStack aStack : mInventory) {
- if (GT_ModHandler.isElectricItem(aStack)) {
-
- if (aStack.getItem() instanceof GT_MetaBase_Item) {
- Long[] stats = ((GT_MetaBase_Item) aStack.getItem())
- .getElectricStats(aStack);
- if (stats != null) {
- tScale = tScale + stats[0];
- tStored = tStored
- + ((GT_MetaBase_Item) aStack.getItem())
- .getRealCharge(aStack);
- }
- } else if (aStack.getItem() instanceof IElectricItem) {
- tStored = tStored
- + (long) ic2.api.item.ElectricItem.manager
- .getCharge(aStack);
- tScale = tScale
- + (long) ((IElectricItem) aStack.getItem())
- .getMaxCharge(aStack);
- }
- }
- }
-
- }
- return new long[] { tStored, tScale };
- }
-
- private long count=0;
- private long mStored=0;
- private long mMax=0;
-
- @Override
- public String[] getInfoData() {
- count++;
- if(mMax==0||count%20==0){
- long[] tmp = getStoredEnergy();
- mStored=tmp[0];
- mMax=tmp[1];
- }
-
- return new String[] {
- getLocalName(),
- GT_Utility.formatNumbers(mStored)+" EU /",
- GT_Utility.formatNumbers(mMax)+" EU"};
- }
-
- @Override
- public boolean isGivingInformation() {
- return true;
- }
-
- @Override
- public int[] getAccessibleSlotsFromSide(int p_94128_1_) {
- return null;
- }
-
- @Override
- public boolean canInsertItem(int p_102007_1_, ItemStack p_102007_2_, int p_102007_3_) {
- return false;
- }
-
- @Override
- public boolean canExtractItem(int p_102008_1_, ItemStack p_102008_2_, int p_102008_3_) {
- return false;
- }
-
- @Override
- public int getSizeInventory() {
- return 0;
- }
-
- @Override
- public ItemStack getStackInSlot(int p_70301_1_) {
- return null;
- }
-
- @Override
- public ItemStack decrStackSize(int p_70298_1_, int p_70298_2_) {
- return null;
- }
-
- @Override
- public ItemStack getStackInSlotOnClosing(int p_70304_1_) {
- return null;
- }
-
- @Override
- public void setInventorySlotContents(int p_70299_1_, ItemStack p_70299_2_) {
- }
-
- @Override
- public String getInventoryName() {
- return null;
- }
-
- @Override
- public boolean hasCustomInventoryName() {
- return false;
- }
-
- @Override
- public int getInventoryStackLimit() {
- return 0;
- }
-
- @Override
- public void markDirty() {
- }
-
- @Override
- public boolean isUseableByPlayer(EntityPlayer p_70300_1_) {
- return false;
- }
-
- @Override
- public void openInventory() {
- }
-
- @Override
- public void closeInventory() {
- }
-
- @Override
- public boolean isItemValidForSlot(int p_94041_1_, ItemStack p_94041_2_) {
- return false;
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaPipeEntity_Cable.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaPipeEntity_Cable.java
deleted file mode 100644
index 59001bb8cf..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaPipeEntity_Cable.java
+++ /dev/null
@@ -1,236 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations;
-
-import static gregtech.api.enums.GT_Values.VN;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.TextureSet;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntityCable;
-import gregtech.api.interfaces.tileentity.IColoredTileEntity;
-import gregtech.api.interfaces.tileentity.IEnergyConnected;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.BaseMetaPipeEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaPipeEntity_Cable;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Utility;
-import ic2.api.energy.tile.IEnergySink;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-
-import miscutil.core.lib.CORE;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.AxisAlignedBB;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import cofh.api.energy.IEnergyReceiver;
-
-public class GregtechMetaPipeEntity_Cable extends GT_MetaPipeEntity_Cable implements IMetaTileEntityCable {
- public long mTransferredAmperage = 0, mTransferredAmperageLast20 = 0, mTransferredVoltageLast20 = 0;
-
- public final float mThickNess;
- public final Materials mMaterial;
- public final long mCableLossPerMeter, mAmperage, mVoltage;
- public final boolean mInsulated, mCanShock;
- public long mRestRF;
-
- public GregtechMetaPipeEntity_Cable(int aID, String aName, String aNameRegional, float aThickNess, Materials aMaterial, long aCableLossPerMeter, long aAmperage, long aVoltage, boolean aInsulated, boolean aCanShock) {
- super(aID, aName, aNameRegional, 0, aMaterial, aCableLossPerMeter, aAmperage, aVoltage, aInsulated, aCanShock);
- mThickNess = aThickNess;
- mMaterial = aMaterial;
- mAmperage = aAmperage;
- mVoltage = aVoltage;
- mInsulated = aInsulated;
- mCanShock = aCanShock;
- mCableLossPerMeter = aCableLossPerMeter;
- }
-
- public GregtechMetaPipeEntity_Cable(String aName, float aThickNess, Materials aMaterial, long aCableLossPerMeter, long aAmperage, long aVoltage, boolean aInsulated, boolean aCanShock) {
- super(aName, 0, aMaterial, aCableLossPerMeter, aAmperage, aVoltage, aInsulated, aCanShock);
- mThickNess = aThickNess;
- mMaterial = aMaterial;
- mAmperage = aAmperage;
- mVoltage = aVoltage;
- mInsulated = aInsulated;
- mCanShock = aCanShock;
- mCableLossPerMeter = aCableLossPerMeter;
- }
-
- @Override
- public byte getTileEntityBaseType() {
- return (byte)(mInsulated?9:8);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaPipeEntity_Cable(mName, mThickNess, mMaterial, mCableLossPerMeter, mAmperage, mVoltage, mInsulated, mCanShock);
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aConnections, byte aColorIndex, boolean aConnected, boolean aRedstone) {
- if (!mInsulated) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa)};
- if (aConnected) {
- float tThickNess = getThickNess();
- if (tThickNess < 0.37F) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_TINY , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.49F) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_SMALL , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.74F) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_MEDIUM , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.99F) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_LARGE , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_HUGE , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- }
- return new ITexture[] {new GT_RenderedTexture(Textures.BlockIcons.INSULATION_FULL, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- }
-
- @Override
- public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity aEntity) {
- if (mCanShock && (((BaseMetaPipeEntity)getBaseMetaTileEntity()).mConnections & -128) == 0 && aEntity instanceof EntityLivingBase) GT_Utility.applyElectricityDamage((EntityLivingBase)aEntity, mTransferredVoltageLast20, mTransferredAmperageLast20);
- }
-
- @Override
- public AxisAlignedBB getCollisionBoundingBoxFromPool(World aWorld, int aX, int aY, int aZ) {
- if (!mCanShock) return super.getCollisionBoundingBoxFromPool(aWorld, aX, aY, aZ);
- return AxisAlignedBB.getBoundingBox(aX+0.125D, aY+0.125D, aZ+0.125D, aX+0.875D, aY+0.875D, aZ+0.875D);
- }
-
- @Override public boolean isSimpleMachine() {return true;}
- @Override public boolean isFacingValid(byte aFacing) {return false;}
- @Override public boolean isValidSlot(int aIndex) {return true;}
- // @Override public final boolean renderInside(byte aSide) {return false;}
- @Override public int getProgresstime() {return (int)mTransferredAmperage*64;}
- @Override public int maxProgresstime() {return (int)mAmperage*64;}
-
- @Override
- public long injectEnergyUnits(byte aSide, long aVoltage, long aAmperage) {
- if (!getBaseMetaTileEntity().getCoverBehaviorAtSide(aSide).letsEnergyIn(aSide, getBaseMetaTileEntity().getCoverIDAtSide(aSide), getBaseMetaTileEntity().getCoverDataAtSide(aSide), getBaseMetaTileEntity())) return 0;
- return transferElectricity(aSide, aVoltage, aAmperage, new ArrayList<TileEntity>(Arrays.asList((TileEntity)getBaseMetaTileEntity())));
- }
-
- @Override
- public long transferElectricity(byte aSide, long aVoltage, long aAmperage, ArrayList<TileEntity> aAlreadyPassedTileEntityList) {
- long rUsedAmperes = 0;
- aVoltage -= mCableLossPerMeter;
- if (aVoltage > 0) for (byte i = 0; i < 6 && aAmperage > rUsedAmperes; i++) if (i != aSide && (mConnections & (1<<i)) != 0 && getBaseMetaTileEntity().getCoverBehaviorAtSide(i).letsEnergyOut(i, getBaseMetaTileEntity().getCoverIDAtSide(i), getBaseMetaTileEntity().getCoverDataAtSide(i), getBaseMetaTileEntity())) {
- TileEntity tTileEntity = getBaseMetaTileEntity().getTileEntityAtSide(i);
- if (!aAlreadyPassedTileEntityList.contains(tTileEntity)) {
- aAlreadyPassedTileEntityList.add(tTileEntity);
- if (tTileEntity instanceof IEnergyConnected) {
- if (getBaseMetaTileEntity().getColorization() >= 0) {
- byte tColor = ((IEnergyConnected)tTileEntity).getColorization();
- if (tColor >= 0 && tColor != getBaseMetaTileEntity().getColorization()) continue;
- }
- if (tTileEntity instanceof IGregTechTileEntity && ((IGregTechTileEntity)tTileEntity).getMetaTileEntity() instanceof IMetaTileEntityCable && ((IGregTechTileEntity)tTileEntity).getCoverBehaviorAtSide(GT_Utility.getOppositeSide(i)).letsEnergyIn(GT_Utility.getOppositeSide(i), ((IGregTechTileEntity)tTileEntity).getCoverIDAtSide(GT_Utility.getOppositeSide(i)), ((IGregTechTileEntity)tTileEntity).getCoverDataAtSide(GT_Utility.getOppositeSide(i)), ((IGregTechTileEntity)tTileEntity))) {
- if (((IGregTechTileEntity)tTileEntity).getTimer() > 50) rUsedAmperes += ((IMetaTileEntityCable)((IGregTechTileEntity)tTileEntity).getMetaTileEntity()).transferElectricity(GT_Utility.getOppositeSide(i), aVoltage, aAmperage-rUsedAmperes, aAlreadyPassedTileEntityList);
- } else {
- rUsedAmperes += ((IEnergyConnected)tTileEntity).injectEnergyUnits(GT_Utility.getOppositeSide(i), aVoltage, aAmperage-rUsedAmperes);
- }
- // } else if (tTileEntity instanceof IEnergySink) {
- // ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
- // if (((IEnergySink)tTileEntity).acceptsEnergyFrom((TileEntity)getBaseMetaTileEntity(), tDirection)) {
- // if (((IEnergySink)tTileEntity).demandedEnergyUnits() > 0 && ((IEnergySink)tTileEntity).injectEnergyUnits(tDirection, aVoltage) < aVoltage) rUsedAmperes++;
- // }
- } else if (tTileEntity instanceof IEnergySink) {
- ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
- if (((IEnergySink)tTileEntity).acceptsEnergyFrom((TileEntity)getBaseMetaTileEntity(), tDirection)) {
- if (((IEnergySink)tTileEntity).getDemandedEnergy() > 0 && ((IEnergySink)tTileEntity).injectEnergy(tDirection, aVoltage, aVoltage) < aVoltage) rUsedAmperes++;
- }
- } else if(GregTech_API.mOutputRF && tTileEntity instanceof IEnergyReceiver){
- ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
- int rfOut = (int) (aVoltage * GregTech_API.mEUtoRF / 100);
- if(((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, true)==rfOut){
- ((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, false); rUsedAmperes++;
- }else if(((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, true)>0){
- if(mRestRF==0){
- int RFtrans = ((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, (int) rfOut, false);rUsedAmperes++;
- mRestRF = rfOut - RFtrans;
- }else{
- int RFtrans = ((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, (int) mRestRF, false);
- mRestRF = mRestRF - RFtrans;
- }
- }
- if(GregTech_API.mRFExplosions && ((IEnergyReceiver)tTileEntity).getMaxEnergyStored(tDirection) < rfOut * 600){
- if(rfOut > 32 * GregTech_API.mEUtoRF / 100) this.doExplosion(rfOut);
- }
- }
- }
- }
- mTransferredAmperage += rUsedAmperes;
- mTransferredVoltageLast20 = Math.max(mTransferredVoltageLast20, aVoltage);
- mTransferredAmperageLast20 = Math.max(mTransferredAmperageLast20, mTransferredAmperage);
- if (aVoltage > mVoltage || mTransferredAmperage > mAmperage) {
- getBaseMetaTileEntity().setToFire();
- return aAmperage;
- }
- return rUsedAmperes;
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (aBaseMetaTileEntity.isServerSide()) {
- mTransferredAmperage = 0;
-
- if (aTick % 20 == 0) {
- mTransferredVoltageLast20 = 0;
- mTransferredAmperageLast20 = 0;
- mConnections = 0;
- for (byte i = 0, j = 0; i < 6; i++) {
- j = GT_Utility.getOppositeSide(i);
- if (aBaseMetaTileEntity.getCoverBehaviorAtSide(i).alwaysLookConnected(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity) || aBaseMetaTileEntity.getCoverBehaviorAtSide(i).letsEnergyIn(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity) || aBaseMetaTileEntity.getCoverBehaviorAtSide(i).letsEnergyOut(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity)) {
- TileEntity tTileEntity = aBaseMetaTileEntity.getTileEntityAtSide(i);
- if (tTileEntity instanceof IColoredTileEntity) {
- if (aBaseMetaTileEntity.getColorization() >= 0) {
- byte tColor = ((IColoredTileEntity)tTileEntity).getColorization();
- if (tColor >= 0 && tColor != aBaseMetaTileEntity.getColorization()) continue;
- }
- }
- if (tTileEntity instanceof IEnergyConnected && (((IEnergyConnected)tTileEntity).inputEnergyFrom(j) || ((IEnergyConnected)tTileEntity).outputsEnergyTo(j))) {
- mConnections |= (1<<i);
- continue;
- }
- if (tTileEntity instanceof IGregTechTileEntity && ((IGregTechTileEntity)tTileEntity).getMetaTileEntity() instanceof IMetaTileEntityCable) {
- if (((IGregTechTileEntity)tTileEntity).getCoverBehaviorAtSide(j).alwaysLookConnected(j, ((IGregTechTileEntity)tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity)tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity)tTileEntity)) || ((IGregTechTileEntity)tTileEntity).getCoverBehaviorAtSide(j).letsEnergyIn(j, ((IGregTechTileEntity)tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity)tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity)tTileEntity)) || ((IGregTechTileEntity)tTileEntity).getCoverBehaviorAtSide(j).letsEnergyOut(j, ((IGregTechTileEntity)tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity)tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity)tTileEntity))) {
- mConnections |= (1<<i);
- continue;
- }
- }
- if (tTileEntity instanceof IEnergySink && ((IEnergySink)tTileEntity).acceptsEnergyFrom((TileEntity)aBaseMetaTileEntity, ForgeDirection.getOrientation(j))) {
- mConnections |= (1<<i);
- continue;
- }
- if(GregTech_API.mOutputRF && tTileEntity instanceof IEnergyReceiver && ((IEnergyReceiver)tTileEntity).canConnectEnergy(ForgeDirection.getOrientation(j))){
- mConnections |= (1<<i);
- continue;
- }
- /*
- if (tTileEntity instanceof IEnergyEmitter && ((IEnergyEmitter)tTileEntity).emitsEnergyTo((TileEntity)aBaseMetaTileEntity, ForgeDirection.getOrientation(j))) {
- mConnections |= (1<<i);
- continue;
- }*/
- }
- }
- }
- }
- }
-
-
- @Override
- public String[] getDescription() {
- return new String[] {
- "Max Voltage: " + EnumChatFormatting.GREEN + mVoltage + " (" + VN[GT_Utility.getTier(mVoltage)] + ")" + EnumChatFormatting.GRAY,
- "Max Amperage: " + EnumChatFormatting.YELLOW + mAmperage + EnumChatFormatting.GRAY,
- "Loss/Meter/Ampere: " + EnumChatFormatting.RED + mCableLossPerMeter + EnumChatFormatting.GRAY + " EU-Volt",
- CORE.GT_Tooltip
- };
- }
-
-
- @Override
- public float getThickNess() {
- return mThickNess;
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaPipeEntity_SuperConductor.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaPipeEntity_SuperConductor.java
deleted file mode 100644
index 7b6c670be4..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaPipeEntity_SuperConductor.java
+++ /dev/null
@@ -1,239 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations;
-
-import static gregtech.api.enums.GT_Values.VN;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.TextureSet;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntityCable;
-import gregtech.api.interfaces.tileentity.IColoredTileEntity;
-import gregtech.api.interfaces.tileentity.IEnergyConnected;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.BaseMetaPipeEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Utility;
-import ic2.api.energy.tile.IEnergySink;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.GregtechMetaPipeEntityBase_Cable;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.AxisAlignedBB;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import cofh.api.energy.IEnergyReceiver;
-
-public class GregtechMetaPipeEntity_SuperConductor extends GregtechMetaPipeEntityBase_Cable implements IMetaTileEntityCable {
- public long mTransferredAmperage = 0, mTransferredAmperageLast20 = 0, mTransferredVoltageLast20 = 0;
-
- public final float mThickNess;
- public final GT_Materials mMaterial;
- public final long mCableLossPerMeter, mAmperage, mVoltage;
- public final boolean mInsulated, mCanShock;
- public long mRestRF;
-
- public GregtechMetaPipeEntity_SuperConductor(int aID, String aName, String aNameRegional, float aThickNess, GT_Materials aMaterial, long aCableLossPerMeter, long aAmperage, long aVoltage, boolean aInsulated, boolean aCanShock) {
- super(aID, aName, aNameRegional, 0, aMaterial, 0, aAmperage, aVoltage, aInsulated, aCanShock);
- mThickNess = aThickNess;
- mMaterial = aMaterial;
- mAmperage = aAmperage;
- mVoltage = aVoltage;
- mInsulated = aInsulated;
- mCanShock = aCanShock;
- mCableLossPerMeter = 0;
- }
-
- public GregtechMetaPipeEntity_SuperConductor(String aName, float aThickNess, GT_Materials aMaterial, long aCableLossPerMeter, long aAmperage, long aVoltage, boolean aInsulated, boolean aCanShock) {
- super(aName, 0, aMaterial, 0, aAmperage, aVoltage, aInsulated, aCanShock);
- mThickNess = aThickNess;
- mMaterial = aMaterial;
- mAmperage = aAmperage;
- mVoltage = aVoltage;
- mInsulated = aInsulated;
- mCanShock = aCanShock;
- mCableLossPerMeter = 0;
- }
-
- @Override
- public byte getTileEntityBaseType() {
- return (byte)(mInsulated?9:8);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaPipeEntity_SuperConductor(mName, mThickNess, mMaterial, mCableLossPerMeter, mAmperage, mVoltage, mInsulated, mCanShock);
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aConnections, byte aColorIndex, boolean aConnected, boolean aRedstone) {
- if (!mInsulated) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa)};
- if (aConnected) {
- float tThickNess = getThickNess();
- if (tThickNess < 0.37F) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_TINY , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.49F) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_SMALL , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.74F) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_MEDIUM , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.99F) return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_LARGE , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- return new ITexture[] {new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_HUGE , Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- }
- return new ITexture[] {new GT_RenderedTexture(Textures.BlockIcons.INSULATION_FULL, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- }
-
- @Override
- public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity aEntity) {
- if (mCanShock && (((BaseMetaPipeEntity)getBaseMetaTileEntity()).mConnections & -128) == 0 && aEntity instanceof EntityLivingBase) GT_Utility.applyElectricityDamage((EntityLivingBase)aEntity, mTransferredVoltageLast20, mTransferredAmperageLast20);
- }
-
- @Override
- public AxisAlignedBB getCollisionBoundingBoxFromPool(World aWorld, int aX, int aY, int aZ) {
- if (!mCanShock) return super.getCollisionBoundingBoxFromPool(aWorld, aX, aY, aZ);
- return AxisAlignedBB.getBoundingBox(aX+0.125D, aY+0.125D, aZ+0.125D, aX+0.875D, aY+0.875D, aZ+0.875D);
- }
-
- @Override public boolean isSimpleMachine() {return true;}
- @Override public boolean isFacingValid(byte aFacing) {return false;}
- @Override public boolean isValidSlot(int aIndex) {return true;}
- // @Override public final boolean renderInside(byte aSide) {return false;}
- @Override public int getProgresstime() {return (int)mTransferredAmperage*64;}
- @Override public int maxProgresstime() {return (int)mAmperage*64;}
-
- @Override
- public long injectEnergyUnits(byte aSide, long aVoltage, long aAmperage) {
- if (!getBaseMetaTileEntity().getCoverBehaviorAtSide(aSide).letsEnergyIn(aSide, getBaseMetaTileEntity().getCoverIDAtSide(aSide), getBaseMetaTileEntity().getCoverDataAtSide(aSide), getBaseMetaTileEntity())) return 0;
- return transferElectricity(aSide, aVoltage, aAmperage, new ArrayList<TileEntity>(Arrays.asList((TileEntity)getBaseMetaTileEntity())));
- }
-
- @Override
- public long transferElectricity(byte aSide, long aVoltage, long aAmperage, ArrayList<TileEntity> aAlreadyPassedTileEntityList) {
- long rUsedAmperes = 0;
- aVoltage -= mCableLossPerMeter;
- if (aVoltage > 0) for (byte i = 0; i < 6 && aAmperage > rUsedAmperes; i++) if (i != aSide && (mConnections & (1<<i)) != 0 && getBaseMetaTileEntity().getCoverBehaviorAtSide(i).letsEnergyOut(i, getBaseMetaTileEntity().getCoverIDAtSide(i), getBaseMetaTileEntity().getCoverDataAtSide(i), getBaseMetaTileEntity())) {
- TileEntity tTileEntity = getBaseMetaTileEntity().getTileEntityAtSide(i);
- if (!aAlreadyPassedTileEntityList.contains(tTileEntity)) {
- aAlreadyPassedTileEntityList.add(tTileEntity);
- if (tTileEntity instanceof IEnergyConnected) {
- if (getBaseMetaTileEntity().getColorization() >= 0) {
- byte tColor = ((IEnergyConnected)tTileEntity).getColorization();
- if (tColor >= 0 && tColor != getBaseMetaTileEntity().getColorization()) continue;
- }
- if (tTileEntity instanceof IGregTechTileEntity && ((IGregTechTileEntity)tTileEntity).getMetaTileEntity() instanceof IMetaTileEntityCable && ((IGregTechTileEntity)tTileEntity).getCoverBehaviorAtSide(GT_Utility.getOppositeSide(i)).letsEnergyIn(GT_Utility.getOppositeSide(i), ((IGregTechTileEntity)tTileEntity).getCoverIDAtSide(GT_Utility.getOppositeSide(i)), ((IGregTechTileEntity)tTileEntity).getCoverDataAtSide(GT_Utility.getOppositeSide(i)), ((IGregTechTileEntity)tTileEntity))) {
- if (((IGregTechTileEntity)tTileEntity).getTimer() > 50) rUsedAmperes += ((IMetaTileEntityCable)((IGregTechTileEntity)tTileEntity).getMetaTileEntity()).transferElectricity(GT_Utility.getOppositeSide(i), aVoltage, aAmperage-rUsedAmperes, aAlreadyPassedTileEntityList);
- } else {
- rUsedAmperes += ((IEnergyConnected)tTileEntity).injectEnergyUnits(GT_Utility.getOppositeSide(i), aVoltage, aAmperage-rUsedAmperes);
- }
- // } else if (tTileEntity instanceof IEnergySink) {
- // ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
- // if (((IEnergySink)tTileEntity).acceptsEnergyFrom((TileEntity)getBaseMetaTileEntity(), tDirection)) {
- // if (((IEnergySink)tTileEntity).demandedEnergyUnits() > 0 && ((IEnergySink)tTileEntity).injectEnergyUnits(tDirection, aVoltage) < aVoltage) rUsedAmperes++;
- // }
- } else if (tTileEntity instanceof IEnergySink) {
- ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
- if (((IEnergySink)tTileEntity).acceptsEnergyFrom((TileEntity)getBaseMetaTileEntity(), tDirection)) {
- if (((IEnergySink)tTileEntity).getDemandedEnergy() > 0 && ((IEnergySink)tTileEntity).injectEnergy(tDirection, aVoltage, aVoltage) < aVoltage) rUsedAmperes++;
- }
- } else if(GregTech_API.mOutputRF && tTileEntity instanceof IEnergyReceiver){
- ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
- int rfOut = (int) (aVoltage * GregTech_API.mEUtoRF / 100);
- if(((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, true)==rfOut){
- ((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, false); rUsedAmperes++;
- }else if(((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, rfOut, true)>0){
- if(mRestRF==0){
- int RFtrans = ((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, (int) rfOut, false);rUsedAmperes++;
- mRestRF = rfOut - RFtrans;
- }else{
- int RFtrans = ((IEnergyReceiver)tTileEntity).receiveEnergy(tDirection, (int) mRestRF, false);
- mRestRF = mRestRF - RFtrans;
- }
- }
- if(GregTech_API.mRFExplosions && ((IEnergyReceiver)tTileEntity).getMaxEnergyStored(tDirection) < rfOut * 600){
- if(rfOut > 32 * GregTech_API.mEUtoRF / 100) this.doExplosion(rfOut);
- }
- }
- }
- }
- mTransferredAmperage += rUsedAmperes;
- mTransferredVoltageLast20 = Math.max(mTransferredVoltageLast20, aVoltage);
- mTransferredAmperageLast20 = Math.max(mTransferredAmperageLast20, mTransferredAmperage);
- if (aVoltage > mVoltage || mTransferredAmperage > mAmperage) {
- getBaseMetaTileEntity().setToFire();
- return aAmperage;
- }
- return rUsedAmperes;
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (aBaseMetaTileEntity.isServerSide()) {
- mTransferredAmperage = 0;
-
- if (aTick % 20 == 0) {
- mTransferredVoltageLast20 = 0;
- mTransferredAmperageLast20 = 0;
- mConnections = 0;
- for (byte i = 0, j = 0; i < 6; i++) {
- j = GT_Utility.getOppositeSide(i);
- if (aBaseMetaTileEntity.getCoverBehaviorAtSide(i).alwaysLookConnected(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity) || aBaseMetaTileEntity.getCoverBehaviorAtSide(i).letsEnergyIn(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity) || aBaseMetaTileEntity.getCoverBehaviorAtSide(i).letsEnergyOut(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity)) {
- TileEntity tTileEntity = aBaseMetaTileEntity.getTileEntityAtSide(i);
- if (tTileEntity instanceof IColoredTileEntity) {
- if (aBaseMetaTileEntity.getColorization() >= 0) {
- byte tColor = ((IColoredTileEntity)tTileEntity).getColorization();
- if (tColor >= 0 && tColor != aBaseMetaTileEntity.getColorization()) continue;
- }
- }
- if (tTileEntity instanceof IEnergyConnected && (((IEnergyConnected)tTileEntity).inputEnergyFrom(j) || ((IEnergyConnected)tTileEntity).outputsEnergyTo(j))) {
- mConnections |= (1<<i);
- continue;
- }
- if (tTileEntity instanceof IGregTechTileEntity && ((IGregTechTileEntity)tTileEntity).getMetaTileEntity() instanceof IMetaTileEntityCable) {
- if (((IGregTechTileEntity)tTileEntity).getCoverBehaviorAtSide(j).alwaysLookConnected(j, ((IGregTechTileEntity)tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity)tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity)tTileEntity)) || ((IGregTechTileEntity)tTileEntity).getCoverBehaviorAtSide(j).letsEnergyIn(j, ((IGregTechTileEntity)tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity)tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity)tTileEntity)) || ((IGregTechTileEntity)tTileEntity).getCoverBehaviorAtSide(j).letsEnergyOut(j, ((IGregTechTileEntity)tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity)tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity)tTileEntity))) {
- mConnections |= (1<<i);
- continue;
- }
- }
- if (tTileEntity instanceof IEnergySink && ((IEnergySink)tTileEntity).acceptsEnergyFrom((TileEntity)aBaseMetaTileEntity, ForgeDirection.getOrientation(j))) {
- mConnections |= (1<<i);
- continue;
- }
- if(GregTech_API.mOutputRF && tTileEntity instanceof IEnergyReceiver && ((IEnergyReceiver)tTileEntity).canConnectEnergy(ForgeDirection.getOrientation(j))){
- mConnections |= (1<<i);
- continue;
- }
- /*
- if (tTileEntity instanceof IEnergyEmitter && ((IEnergyEmitter)tTileEntity).emitsEnergyTo((TileEntity)aBaseMetaTileEntity, ForgeDirection.getOrientation(j))) {
- mConnections |= (1<<i);
- continue;
- }*/
- }
- }
- }
- }
- }
-
-
- @Override
- public String[] getDescription() {
- return new String[] {
- "Max Voltage: " + EnumChatFormatting.GREEN + mVoltage + " (" + VN[GT_Utility.getTier(mVoltage)] + ")" + EnumChatFormatting.GRAY,
- "Max Amperage: " + EnumChatFormatting.YELLOW + mAmperage + EnumChatFormatting.GRAY,
- "Loss/Meter/Ampere: " + EnumChatFormatting.RED + mCableLossPerMeter + EnumChatFormatting.GRAY + " EU-Volt",
- CORE.GT_Tooltip,
- " ",
- "This Wire is Lossless.",
- "Please, adhere to cooling directions."
- };
- }
-
-
- @Override
- public float getThickNess() {
- return mThickNess;
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaSafeBlock.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaSafeBlock.java
deleted file mode 100644
index abe5832a9e..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaSafeBlock.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.gui.CONTAINER_SafeBlock;
-import miscutil.core.xmod.gregtech.api.gui.GUI_SafeBlock;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.machines.GregtechMetaSafeBlockBase;
-import net.minecraft.entity.player.InventoryPlayer;
-
-public class GregtechMetaSafeBlock
- extends GregtechMetaSafeBlockBase {
-
- @Override
- public String[] getDescription() {
- return new String[] {mDescription, CORE.GT_Tooltip};
- }
-
- public GregtechMetaSafeBlock(int aID, String aName, String aNameRegional, int aTier) {
- super(aID, aName, aNameRegional, aTier, 28, "Protecting your items from sticky fingers.");
- }
-
- public GregtechMetaSafeBlock(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String aDescription) {
- super(aID, aName, aNameRegional, aTier, aInvSlotCount, aDescription);
- }
-
- public GregtechMetaSafeBlock(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, aInvSlotCount, aDescription, aTextures);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaSafeBlock(this.mName, this.mTier, this.mInventory.length, this.mDescription, this.mTextures);
- }
-
- @Override
- public ITexture getOverlayIcon() {
- return new GT_RenderedTexture(Textures.BlockIcons.VOID);
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return aIndex < this.mInventory.length - 1;
- }
-
- /*@Override
- protected void moveItems(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
- fillStacksIntoFirstSlots();
- super.moveItems(aBaseMetaTileEntity, aTimer);
- fillStacksIntoFirstSlots();
- }*/
-
- protected void fillStacksIntoFirstSlots() {
- for (int i = 0; i < this.mInventory.length - 1; i++) {
- for (int j = i + 1; j < this.mInventory.length - 1; j++) {
- if ((this.mInventory[j] != null) && ((this.mInventory[i] == null) || (GT_Utility.areStacksEqual(this.mInventory[i], this.mInventory[j])))) {
- GT_Utility.moveStackFromSlotAToSlotB(getBaseMetaTileEntity(), getBaseMetaTileEntity(), j, i, (byte) 64, (byte) 1, (byte) 64, (byte) 1);
- }
- }
- }
- }
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new CONTAINER_SafeBlock(aPlayerInventory, aBaseMetaTileEntity);
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_SafeBlock(aPlayerInventory, aBaseMetaTileEntity);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaSuperConductorNodeBase.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaSuperConductorNodeBase.java
deleted file mode 100644
index 0c37078646..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/GregtechMetaSuperConductorNodeBase.java
+++ /dev/null
@@ -1,297 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations;
-
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
-import gregtech.api.util.GT_Utility;
-
-import java.util.Collection;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.lossless.GregtechMetaTileEntityLosslessBasicTank;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidStack;
-
-public abstract class GregtechMetaSuperConductorNodeBase extends GregtechMetaTileEntityLosslessBasicTank {
- public GregtechMetaSuperConductorNodeBase(int aID, String aName, String aNameRegional, int aTier, String aDescription, ITexture... aTextures) {
- super(aID, aName, aNameRegional, aTier, 3, aDescription, aTextures);
- }
-
- public GregtechMetaSuperConductorNodeBase(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, 3, aDescription, aTextures);
- }
-
- @Override
- public ITexture[][][] getTextureSet(ITexture[] aTextures) {
- ITexture[][][] rTextures = new ITexture[10][17][];
- for (byte i = -1; i < 16; i++) {
- rTextures[0][i + 1] = getFront(i);
- rTextures[1][i + 1] = getBack(i);
- rTextures[2][i + 1] = getBottom(i);
- rTextures[3][i + 1] = getTop(i);
- rTextures[4][i + 1] = getSides(i);
- rTextures[5][i + 1] = getFrontActive(i);
- rTextures[6][i + 1] = getBackActive(i);
- rTextures[7][i + 1] = getBottomActive(i);
- rTextures[8][i + 1] = getTopActive(i);
- rTextures[9][i + 1] = getSidesActive(i);
- }
- return rTextures;
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- return mTextures[(aActive ? 5 : 0) + (aSide == aFacing ? 0 : aSide == GT_Utility.getOppositeSide(aFacing) ? 1 : aSide == 0 ? 2 : aSide == 1 ? 3 : 4)][aColorIndex + 1];
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{mDescription, "Cooling Efficiency: " + getEfficiency() + "%", CORE.GT_Tooltip};
- }
-
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
- if (aBaseMetaTileEntity.isClientSide()) return true;
- aBaseMetaTileEntity.openGUI(aPlayer);
- return true;
- }
-
- public ITexture[] getFront(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getBack(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getBottom(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getTop(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getSides(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getFrontActive(byte aColor) {
- return getFront(aColor);
- }
-
- public ITexture[] getBackActive(byte aColor) {
- return getBack(aColor);
- }
-
- public ITexture[] getBottomActive(byte aColor) {
- return getBottom(aColor);
- }
-
- public ITexture[] getTopActive(byte aColor) {
- return getTop(aColor);
- }
-
- public ITexture[] getSidesActive(byte aColor) {
- return getSides(aColor);
- }
-
- @Override
- public boolean isFacingValid(byte aSide) {
- return aSide > 1;
- }
-
- @Override
- public boolean isSimpleMachine() {
- return false;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return aIndex < 2;
- }
-
- @Override
- public boolean isEnetInput() {
- return true;
- }
-
- @Override
- public boolean isEnetOutput() {
- return true;
- }
-
- @Override
- public boolean isOutputFacing(byte aSide) {
- return true;
- }
-
- @Override
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return true;
- }
-
- @Override
- public long getMinimumStoredEU() {
- return V[mTier] * 16 * mInventory.length;
- }
-
- @Override
- public long maxEUStore() {
- return V[mTier] * 64;
- }
-
- @Override
- public long maxEUInput() {
- return V[mTier];
- }
-
- @Override
- public long maxEUOutput() {
- return V[mTier];
- }
-
- @Override
- public long maxAmperesIn() {
- return 16;
- }
-
- @Override
- public long maxAmperesOut() {
- return 16;
- }
-
- @Override
- public boolean doesFillContainers() {
- return getBaseMetaTileEntity().isAllowedToWork();
- }
-
- @Override
- public boolean doesEmptyContainers() {
- return getBaseMetaTileEntity().isAllowedToWork();
- }
-
- @Override
- public boolean canTankBeFilled() {
- return getBaseMetaTileEntity().isAllowedToWork();
- }
-
- @Override
- public boolean canTankBeEmptied() {
- return getBaseMetaTileEntity().isAllowedToWork();
- }
-
- @Override
- public boolean displaysItemStack() {
- return true;
- }
-
- @Override
- public boolean displaysStackSize() {
- return false;
- }
-
- @Override
- public boolean isFluidInputAllowed(FluidStack aFluid) {
- return getFuelValue(aFluid) > 0;
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (getEUVar() == maxEUStore() || mFluid == null){
- aBaseMetaTileEntity.disableWorking();
- }
- else {
- aBaseMetaTileEntity.enableWorking();
- }
- if (aBaseMetaTileEntity.isServerSide() && aBaseMetaTileEntity.isAllowedToWork() && aTick % 10 == 0) {
- if (mFluid == null) {
- if (aBaseMetaTileEntity.getUniversalEnergyStored() < maxEUOutput() + getMinimumStoredEU()) {
- mInventory[getStackDisplaySlot()] = null;
- } else {
- if (mInventory[getStackDisplaySlot()] == null)
- mInventory[getStackDisplaySlot()] = new ItemStack(Blocks.fire, 1);
- mInventory[getStackDisplaySlot()].setStackDisplayName("Generating: " + (aBaseMetaTileEntity.getUniversalEnergyStored() - getMinimumStoredEU()) + " EU");
- }
- } else {
- int tFuelValue = getFuelValue(mFluid), tConsumed = consumedFluidPerOperation(mFluid);
- if (tConsumed > 0 && mFluid.amount > tConsumed) {
- long tFluidAmountToUse = Math.min(mFluid.amount / tConsumed, (maxEUOutput() * 20 + getMinimumStoredEU() - aBaseMetaTileEntity.getUniversalEnergyStored()));
- if (tFluidAmountToUse > 0 /*&& aBaseMetaTileEntity.increaseStoredEnergyUnits(tFluidAmountToUse * tFuelValue, true)*/)
- mFluid.amount -= tFluidAmountToUse * tConsumed;
- }
- }
- if (mInventory[getInputSlot()] != null && aBaseMetaTileEntity.getUniversalEnergyStored() < (maxEUOutput() * 20 + getMinimumStoredEU()) && GT_Utility.getFluidForFilledItem(mInventory[getInputSlot()], true) == null) {
- int tFuelValue = getFuelValue(mInventory[getInputSlot()]);
- if (tFuelValue >= 0) {
- ItemStack tEmptyContainer = getEmptyContainer(mInventory[getInputSlot()]);
- if (aBaseMetaTileEntity.addStackToSlot(getOutputSlot(), tEmptyContainer)) {
- //aBaseMetaTileEntity.increaseStoredEnergyUnits(tFuelValue, true);
- aBaseMetaTileEntity.decrStackSize(getInputSlot(), 1);
- }
- }
- }
- }
-
- if (aBaseMetaTileEntity.isServerSide())
- aBaseMetaTileEntity.setActive(aBaseMetaTileEntity.isAllowedToWork() && aBaseMetaTileEntity.getUniversalEnergyStored() >= maxEUOutput() + getMinimumStoredEU());
- }
-
- public abstract GT_Recipe_Map getRecipes();
-
- public abstract int getEfficiency();
-
- public int consumedFluidPerOperation(FluidStack aLiquid) {
- return 1;
- }
-
- public int getFuelValue(FluidStack aLiquid) {
- if (aLiquid == null || getRecipes() == null) return 0;
- FluidStack tLiquid;
- Collection<GT_Recipe> tRecipeList = getRecipes().mRecipeList;
- if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList)
- if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null)
- if (aLiquid.isFluidEqual(tLiquid))
- return 0;
- //return (int) (((long) tFuel.mSpecialValue * getEfficiency() * consumedFluidPerOperation(tLiquid)) / 100);
- return 0;
- }
-
- public int getFuelValue(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return 0;
- GT_Recipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack);
- if (tFuel != null)
- return 0;
- //return (int) ((tFuel.mSpecialValue * 1000L * getEfficiency()) / 100);
- return 0;
- }
-
- public ItemStack getEmptyContainer(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return null;
- GT_Recipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack);
- if (tFuel != null) return GT_Utility.copy(tFuel.getOutput(0));
- return GT_Utility.getContainerItem(aStack, true);
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack) && (getFuelValue(aStack) > 0 || getFuelValue(GT_Utility.getFluidForFilledItem(aStack, true)) > 0);
- }
-
- @Override
- public int getCapacity() {
- return 16000;
- }
-
- @Override
- public int getTankPressure() {
- return -100;
- }
-
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaPipeEntityBase_Cable.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaPipeEntityBase_Cable.java
deleted file mode 100644
index 901dec8457..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaPipeEntityBase_Cable.java
+++ /dev/null
@@ -1,291 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base;
-
-import static gregtech.api.enums.GT_Values.VN;
-import gregtech.GT_Mod;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.TextureSet;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntityCable;
-import gregtech.api.interfaces.tileentity.IColoredTileEntity;
-import gregtech.api.interfaces.tileentity.IEnergyConnected;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.BaseMetaPipeEntity;
-import gregtech.api.metatileentity.MetaPipeEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Utility;
-import ic2.api.energy.tile.IEnergySink;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.AxisAlignedBB;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import cofh.api.energy.IEnergyReceiver;
-
-public class GregtechMetaPipeEntityBase_Cable extends MetaPipeEntity implements IMetaTileEntityCable {
- public final float mThickNess;
- public final GT_Materials mMaterial;
- public final long mCableLossPerMeter, mAmperage, mVoltage;
- public final boolean mInsulated, mCanShock;
- public long mTransferredAmperage = 0, mTransferredAmperageLast20 = 0, mTransferredVoltageLast20 = 0;
- public long mRestRF;
- public short mOverheat;
-
- public GregtechMetaPipeEntityBase_Cable(int aID, String aName, String aNameRegional, float aThickNess, GT_Materials aMaterial, long aCableLossPerMeter, long aAmperage, long aVoltage, boolean aInsulated, boolean aCanShock) {
- super(aID, aName, aNameRegional, 0);
- mThickNess = aThickNess;
- mMaterial = aMaterial;
- mAmperage = aAmperage;
- mVoltage = aVoltage;
- mInsulated = aInsulated;
- mCanShock = aCanShock;
- mCableLossPerMeter = aCableLossPerMeter;
- }
-
- public GregtechMetaPipeEntityBase_Cable(String aName, float aThickNess, GT_Materials aMaterial, long aCableLossPerMeter, long aAmperage, long aVoltage, boolean aInsulated, boolean aCanShock) {
- super(aName, 0);
- mThickNess = aThickNess;
- mMaterial = aMaterial;
- mAmperage = aAmperage;
- mVoltage = aVoltage;
- mInsulated = aInsulated;
- mCanShock = aCanShock;
- mCableLossPerMeter = aCableLossPerMeter;
- }
-
- @Override
- public byte getTileEntityBaseType() {
- return (byte) (mInsulated ? 9 : 8);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaPipeEntityBase_Cable(mName, mThickNess, mMaterial, mCableLossPerMeter, mAmperage, mVoltage, mInsulated, mCanShock);
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aConnections, byte aColorIndex, boolean aConnected, boolean aRedstone) {
- if (!mInsulated)
- return new ITexture[]{new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa)};
- if (aConnected) {
- float tThickNess = getThickNess();
- if (tThickNess < 0.37F)
- return new ITexture[]{new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_TINY, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.49F)
- return new ITexture[]{new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_SMALL, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.74F)
- return new ITexture[]{new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_MEDIUM, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- if (tThickNess < 0.99F)
- return new ITexture[]{new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_LARGE, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- return new ITexture[]{new GT_RenderedTexture(mMaterial.mIconSet.mTextures[TextureSet.INDEX_wire], mMaterial.mRGBa), new GT_RenderedTexture(Textures.BlockIcons.INSULATION_HUGE, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- }
- return new ITexture[]{new GT_RenderedTexture(Textures.BlockIcons.INSULATION_FULL, Dyes.getModulation(aColorIndex, Dyes.CABLE_INSULATION.mRGBa))};
- }
-
- @Override
- public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity aEntity) {
- if (mCanShock && (((BaseMetaPipeEntity) getBaseMetaTileEntity()).mConnections & -128) == 0 && aEntity instanceof EntityLivingBase)
- GT_Utility.applyElectricityDamage((EntityLivingBase) aEntity, mTransferredVoltageLast20, mTransferredAmperageLast20);
- }
-
- @Override
- public AxisAlignedBB getCollisionBoundingBoxFromPool(World aWorld, int aX, int aY, int aZ) {
- if (!mCanShock) return super.getCollisionBoundingBoxFromPool(aWorld, aX, aY, aZ);
- return AxisAlignedBB.getBoundingBox(aX + 0.125D, aY + 0.125D, aZ + 0.125D, aX + 0.875D, aY + 0.875D, aZ + 0.875D);
- }
-
- @Override
- public boolean isSimpleMachine() {
- return true;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return false;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return true;
- }
-
- @Override
- public final boolean renderInside(byte aSide) {
- return false;
- }
-
- @Override
- public int getProgresstime() {
- return (int) mTransferredAmperage * 64;
- }
-
- @Override
- public int maxProgresstime() {
- return (int) mAmperage * 64;
- }
-
- @Override
- public long injectEnergyUnits(byte aSide, long aVoltage, long aAmperage) {
- if (!getBaseMetaTileEntity().getCoverBehaviorAtSide(aSide).letsEnergyIn(aSide, getBaseMetaTileEntity().getCoverIDAtSide(aSide), getBaseMetaTileEntity().getCoverDataAtSide(aSide), getBaseMetaTileEntity()))
- return 0;
- return transferElectricity(aSide, aVoltage, aAmperage, new ArrayList<TileEntity>(Arrays.asList((TileEntity) getBaseMetaTileEntity())));
- }
-
- @Override
- public long transferElectricity(byte aSide, long aVoltage, long aAmperage, ArrayList<TileEntity> aAlreadyPassedTileEntityList) {
- long rUsedAmperes = 0;
- aVoltage -= mCableLossPerMeter;
- if (aVoltage > 0) for (byte i = 0; i < 6 && aAmperage > rUsedAmperes; i++)
- if (i != aSide && (mConnections & (1 << i)) != 0 && getBaseMetaTileEntity().getCoverBehaviorAtSide(i).letsEnergyOut(i, getBaseMetaTileEntity().getCoverIDAtSide(i), getBaseMetaTileEntity().getCoverDataAtSide(i), getBaseMetaTileEntity())) {
- TileEntity tTileEntity = getBaseMetaTileEntity().getTileEntityAtSide(i);
- if (!aAlreadyPassedTileEntityList.contains(tTileEntity)) {
- aAlreadyPassedTileEntityList.add(tTileEntity);
- if (tTileEntity instanceof IEnergyConnected) {
- if (getBaseMetaTileEntity().getColorization() >= 0) {
- byte tColor = ((IEnergyConnected) tTileEntity).getColorization();
- if (tColor >= 0 && tColor != getBaseMetaTileEntity().getColorization()) continue;
- }
- if (tTileEntity instanceof IGregTechTileEntity && ((IGregTechTileEntity) tTileEntity).getMetaTileEntity() instanceof IMetaTileEntityCable && ((IGregTechTileEntity) tTileEntity).getCoverBehaviorAtSide(GT_Utility.getOppositeSide(i)).letsEnergyIn(GT_Utility.getOppositeSide(i), ((IGregTechTileEntity) tTileEntity).getCoverIDAtSide(GT_Utility.getOppositeSide(i)), ((IGregTechTileEntity) tTileEntity).getCoverDataAtSide(GT_Utility.getOppositeSide(i)), ((IGregTechTileEntity) tTileEntity))) {
- if (((IGregTechTileEntity) tTileEntity).getTimer() > 50)
- rUsedAmperes += ((IMetaTileEntityCable) ((IGregTechTileEntity) tTileEntity).getMetaTileEntity()).transferElectricity(GT_Utility.getOppositeSide(i), aVoltage, aAmperage - rUsedAmperes, aAlreadyPassedTileEntityList);
- } else {
- rUsedAmperes += ((IEnergyConnected) tTileEntity).injectEnergyUnits(GT_Utility.getOppositeSide(i), aVoltage, aAmperage - rUsedAmperes);
- }
-// } else if (tTileEntity instanceof IEnergySink) {
-// ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
-// if (((IEnergySink)tTileEntity).acceptsEnergyFrom((TileEntity)getBaseMetaTileEntity(), tDirection)) {
-// if (((IEnergySink)tTileEntity).demandedEnergyUnits() > 0 && ((IEnergySink)tTileEntity).injectEnergyUnits(tDirection, aVoltage) < aVoltage) rUsedAmperes++;
-// }
- } else if (tTileEntity instanceof IEnergySink) {
- ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
- if (((IEnergySink) tTileEntity).acceptsEnergyFrom((TileEntity) getBaseMetaTileEntity(), tDirection)) {
- if (((IEnergySink) tTileEntity).getDemandedEnergy() > 0 && ((IEnergySink) tTileEntity).injectEnergy(tDirection, aVoltage, aVoltage) < aVoltage)
- rUsedAmperes++;
- }
- } else if (GregTech_API.mOutputRF && tTileEntity instanceof IEnergyReceiver) {
- ForgeDirection tDirection = ForgeDirection.getOrientation(i).getOpposite();
- int rfOut = (int) (aVoltage * GregTech_API.mEUtoRF / 100);
- if (((IEnergyReceiver) tTileEntity).receiveEnergy(tDirection, rfOut, true) == rfOut) {
- ((IEnergyReceiver) tTileEntity).receiveEnergy(tDirection, rfOut, false);
- rUsedAmperes++;
- } else if (((IEnergyReceiver) tTileEntity).receiveEnergy(tDirection, rfOut, true) > 0) {
- if (mRestRF == 0) {
- int RFtrans = ((IEnergyReceiver) tTileEntity).receiveEnergy(tDirection, (int) rfOut, false);
- rUsedAmperes++;
- mRestRF = rfOut - RFtrans;
- } else {
- int RFtrans = ((IEnergyReceiver) tTileEntity).receiveEnergy(tDirection, (int) mRestRF, false);
- mRestRF = mRestRF - RFtrans;
- }
- }
- if (GregTech_API.mRFExplosions && ((IEnergyReceiver) tTileEntity).getMaxEnergyStored(tDirection) < rfOut * 600) {
- if (rfOut > 32 * GregTech_API.mEUtoRF / 100) this.doExplosion(rfOut);
- }
- }
- }
- }
- mTransferredAmperage += rUsedAmperes;
- mTransferredVoltageLast20 = Math.max(mTransferredVoltageLast20, aVoltage);
- mTransferredAmperageLast20 = Math.max(mTransferredAmperageLast20, mTransferredAmperage);
- if (aVoltage > mVoltage || mTransferredAmperage > mAmperage) {
- if(mOverheat>GT_Mod.gregtechproxy.mWireHeatingTicks * 100){
- getBaseMetaTileEntity().setToFire();}else{mOverheat +=100;}
- return aAmperage;
- }
- return rUsedAmperes;
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (aBaseMetaTileEntity.isServerSide()) {
- mTransferredAmperage = 0;
- if(mOverheat>0)mOverheat--;
-
- if (aTick % 20 == 0) {
- mTransferredVoltageLast20 = 0;
- mTransferredAmperageLast20 = 0;
- mConnections = 0;
- for (byte i = 0, j = 0; i < 6; i++) {
- j = GT_Utility.getOppositeSide(i);
- if (aBaseMetaTileEntity.getCoverBehaviorAtSide(i).alwaysLookConnected(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity) || aBaseMetaTileEntity.getCoverBehaviorAtSide(i).letsEnergyIn(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity) || aBaseMetaTileEntity.getCoverBehaviorAtSide(i).letsEnergyOut(i, aBaseMetaTileEntity.getCoverIDAtSide(i), aBaseMetaTileEntity.getCoverDataAtSide(i), aBaseMetaTileEntity)) {
- TileEntity tTileEntity = aBaseMetaTileEntity.getTileEntityAtSide(i);
- if (tTileEntity instanceof IColoredTileEntity) {
- if (aBaseMetaTileEntity.getColorization() >= 0) {
- byte tColor = ((IColoredTileEntity) tTileEntity).getColorization();
- if (tColor >= 0 && tColor != aBaseMetaTileEntity.getColorization()) continue;
- }
- }
- if (tTileEntity instanceof IEnergyConnected && (((IEnergyConnected) tTileEntity).inputEnergyFrom(j) || ((IEnergyConnected) tTileEntity).outputsEnergyTo(j))) {
- mConnections |= (1 << i);
- continue;
- }
- if (tTileEntity instanceof IGregTechTileEntity && ((IGregTechTileEntity) tTileEntity).getMetaTileEntity() instanceof IMetaTileEntityCable) {
- if (((IGregTechTileEntity) tTileEntity).getCoverBehaviorAtSide(j).alwaysLookConnected(j, ((IGregTechTileEntity) tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity) tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity) tTileEntity)) || ((IGregTechTileEntity) tTileEntity).getCoverBehaviorAtSide(j).letsEnergyIn(j, ((IGregTechTileEntity) tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity) tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity) tTileEntity)) || ((IGregTechTileEntity) tTileEntity).getCoverBehaviorAtSide(j).letsEnergyOut(j, ((IGregTechTileEntity) tTileEntity).getCoverIDAtSide(j), ((IGregTechTileEntity) tTileEntity).getCoverDataAtSide(j), ((IGregTechTileEntity) tTileEntity))) {
- mConnections |= (1 << i);
- continue;
- }
- }
- if (tTileEntity instanceof IEnergySink && ((IEnergySink) tTileEntity).acceptsEnergyFrom((TileEntity) aBaseMetaTileEntity, ForgeDirection.getOrientation(j))) {
- mConnections |= (1 << i);
- continue;
- }
- if (GregTech_API.mOutputRF && tTileEntity instanceof IEnergyReceiver && ((IEnergyReceiver) tTileEntity).canConnectEnergy(ForgeDirection.getOrientation(j))) {
- mConnections |= (1 << i);
- continue;
- }
- /*
- if (tTileEntity instanceof IEnergyEmitter && ((IEnergyEmitter)tTileEntity).emitsEnergyTo((TileEntity)aBaseMetaTileEntity, ForgeDirection.getOrientation(j))) {
- mConnections |= (1<<i);
- continue;
- }*/
- }
- }
- }
- }
- }
-
- @Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return false;
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return false;
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{
- "Max Voltage: " + EnumChatFormatting.GREEN + mVoltage + " (" + VN[GT_Utility.getTier(mVoltage)] + ")" + EnumChatFormatting.GRAY,
- "Max Amperage: " + EnumChatFormatting.YELLOW + mAmperage + EnumChatFormatting.GRAY,
- "Loss/Meter/Ampere: " + EnumChatFormatting.RED + mCableLossPerMeter + EnumChatFormatting.GRAY + " EU-Volt"
- };
- }
-
- @Override
- public float getThickNess() {
- return mThickNess;
- }
-
- @Override
- public void saveNBTData(NBTTagCompound aNBT) {
- //
- }
-
- @Override
- public void loadNBTData(NBTTagCompound aNBT) {
- //
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTileEntity.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTileEntity.java
deleted file mode 100644
index 8a1dbf78b1..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTileEntity.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base;
-
-import static gregtech.api.enums.GT_Values.GT;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.metatileentity.MetaTileEntity;
-import miscutil.core.lib.CORE;
-
-public abstract class GregtechMetaTileEntity extends MetaTileEntity {
- /**
- * Value between [0 - 9] to describe the Tier of this Machine.
- */
- public final byte mTier;
-
- /**
- * A simple Description.
- */
- public final String mDescription;
-
- /**
- * Contains all Textures used by this Block.
- */
- public final ITexture[][][] mTextures;
-
- public GregtechMetaTileEntity(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String aDescription, ITexture... aTextures) {
- super(aID, aName, aNameRegional, aInvSlotCount);
- mTier = (byte)Math.max(0, Math.min(aTier, 9));
- mDescription = aDescription;
-
- // must always be the last call!
- if (GT.isClientSide()) mTextures = getTextureSet(aTextures); else mTextures = null;
- }
-
- public GregtechMetaTileEntity(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
- super(aName, aInvSlotCount);
- mTier = (byte)aTier;
- mDescription = aDescription;
- mTextures = aTextures;
-
- }
-
- @Override
- public byte getTileEntityBaseType() {
- return (byte)(Math.min(3, mTier<=0?0:1+((mTier-1) / 4)));
- }
-
- @Override
- public long getInputTier() {
- return mTier;
- }
-
- @Override
- public long getOutputTier() {
- return mTier;
- }
-
- @Override
- public String[] getDescription() {
- return new String[] {mDescription, CORE.GT_Tooltip};
- }
-
- /**
- * Used Client Side to get a Texture Set for this Block.
- * Called after setting the Tier and the Description so that those two are accessible.
- * @param aTextures is the optional Array you can give to the Constructor.
- */
- public abstract ITexture[][][] getTextureSet(ITexture[] aTextures);
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
deleted file mode 100644
index ff922e5b96..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
+++ /dev/null
@@ -1,828 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base;
-
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.GT_Mod;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.ConfigCategories;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.items.GT_MetaGenerated_Tool;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Dynamo;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_InputBus;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maintenance;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Muffler;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus;
-import gregtech.api.objects.GT_ItemStack;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
-import gregtech.api.util.GT_Utility;
-import gregtech.common.items.GT_MetaGenerated_Tool_01;
-
-import java.util.ArrayList;
-
-import miscutil.core.xmod.gregtech.api.gui.CONTAINER_MultiMachine;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraftforge.fluids.FluidStack;
-
-public abstract class GregtechMeta_MultiBlockBase extends MetaTileEntity {
-
- public static boolean disableMaintenance;
- public boolean mMachine = false, mWrench = false, mScrewdriver = false, mSoftHammer = false, mHardHammer = false, mSolderingTool = true, mCrowbar = false, mRunningOnLoad = false;
- public int mPollution = 0, mProgresstime = 0, mMaxProgresstime = 0, mEUt = 0, mEfficiencyIncrease = 0, mUpdate = 0, mStartUpCheck = 100, mRuntime = 0, mEfficiency = 0;
- public ItemStack[] mOutputItems = null;
- public FluidStack[] mOutputFluids = null;
- public ArrayList<GT_MetaTileEntity_Hatch_Input> mInputHatches = new ArrayList<GT_MetaTileEntity_Hatch_Input>();
- public ArrayList<GT_MetaTileEntity_Hatch_Output> mOutputHatches = new ArrayList<GT_MetaTileEntity_Hatch_Output>();
- public ArrayList<GT_MetaTileEntity_Hatch_InputBus> mInputBusses = new ArrayList<GT_MetaTileEntity_Hatch_InputBus>();
- public ArrayList<GT_MetaTileEntity_Hatch_OutputBus> mOutputBusses = new ArrayList<GT_MetaTileEntity_Hatch_OutputBus>();
- public ArrayList<GT_MetaTileEntity_Hatch_Dynamo> mDynamoHatches = new ArrayList<GT_MetaTileEntity_Hatch_Dynamo>();
- public ArrayList<GT_MetaTileEntity_Hatch_Muffler> mMufflerHatches = new ArrayList<GT_MetaTileEntity_Hatch_Muffler>();
- public ArrayList<GT_MetaTileEntity_Hatch_Energy> mEnergyHatches = new ArrayList<GT_MetaTileEntity_Hatch_Energy>();
- public ArrayList<GT_MetaTileEntity_Hatch_Maintenance> mMaintenanceHatches = new ArrayList<GT_MetaTileEntity_Hatch_Maintenance>();
-
- public GregtechMeta_MultiBlockBase(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, 2);
- this.disableMaintenance = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "MultiBlockMachines.disableMaintenance", false);
- }
-
- public GregtechMeta_MultiBlockBase(String aName) {
- super(aName, 2);
- this.disableMaintenance = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "MultiBlockMachines.disableMaintenance", false);
- }
-
- public static boolean isValidMetaTileEntity(MetaTileEntity aMetaTileEntity) {
- return aMetaTileEntity.getBaseMetaTileEntity() != null && aMetaTileEntity.getBaseMetaTileEntity().getMetaTileEntity() == aMetaTileEntity && !aMetaTileEntity.getBaseMetaTileEntity().isDead();
- }
-
- @Override
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCoverID) {
- return aSide != getBaseMetaTileEntity().getFrontFacing();
- }
-
- @Override
- public boolean isSimpleMachine() {
- return false;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return true;
- }
-
- @Override
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return true;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return aIndex > 0;
- }
-
- @Override
- public int getProgresstime() {
- return mProgresstime;
- }
-
- @Override
- public int maxProgresstime() {
- return mMaxProgresstime;
- }
-
- @Override
- public int increaseProgress(int aProgress) {
- return aProgress;
- }
-
- @Override
- public void saveNBTData(NBTTagCompound aNBT) {
- aNBT.setInteger("mEUt", mEUt);
- aNBT.setInteger("mProgresstime", mProgresstime);
- aNBT.setInteger("mMaxProgresstime", mMaxProgresstime);
- aNBT.setInteger("mEfficiencyIncrease", mEfficiencyIncrease);
- aNBT.setInteger("mEfficiency", mEfficiency);
- aNBT.setInteger("mPollution", mPollution);
- aNBT.setInteger("mRuntime", mRuntime);
-
- if (mOutputItems != null) for (int i = 0; i < mOutputItems.length; i++)
- if (mOutputItems[i] != null) {
- NBTTagCompound tNBT = new NBTTagCompound();
- mOutputItems[i].writeToNBT(tNBT);
- aNBT.setTag("mOutputItem" + i, tNBT);
- }
- if (mOutputFluids != null) for (int i = 0; i < mOutputFluids.length; i++)
- if (mOutputFluids[i] != null) {
- NBTTagCompound tNBT = new NBTTagCompound();
- mOutputFluids[i].writeToNBT(tNBT);
- aNBT.setTag("mOutputFluids" + i, tNBT);
- }
-
- aNBT.setBoolean("mWrench", mWrench);
- aNBT.setBoolean("mScrewdriver", mScrewdriver);
- aNBT.setBoolean("mSoftHammer", mSoftHammer);
- aNBT.setBoolean("mHardHammer", mHardHammer);
- aNBT.setBoolean("mSolderingTool", mSolderingTool);
- aNBT.setBoolean("mCrowbar", mCrowbar);
- }
-
- @Override
- public void loadNBTData(NBTTagCompound aNBT) {
- mEUt = aNBT.getInteger("mEUt");
- mProgresstime = aNBT.getInteger("mProgresstime");
- mMaxProgresstime = aNBT.getInteger("mMaxProgresstime");
- if (mMaxProgresstime > 0) mRunningOnLoad = true;
- mEfficiencyIncrease = aNBT.getInteger("mEfficiencyIncrease");
- mEfficiency = aNBT.getInteger("mEfficiency");
- mPollution = aNBT.getInteger("mPollution");
- mRuntime = aNBT.getInteger("mRuntime");
- mOutputItems = new ItemStack[getAmountOfOutputs()];
- for (int i = 0; i < mOutputItems.length; i++) mOutputItems[i] = GT_Utility.loadItem(aNBT, "mOutputItem" + i);
- mOutputFluids = new FluidStack[getAmountOfOutputs()];
- for (int i = 0; i < mOutputFluids.length; i++)
- mOutputFluids[i] = GT_Utility.loadFluid(aNBT, "mOutputFluids" + i);
- mWrench = aNBT.getBoolean("mWrench");
- mScrewdriver = aNBT.getBoolean("mScrewdriver");
- mSoftHammer = aNBT.getBoolean("mSoftHammer");
- mHardHammer = aNBT.getBoolean("mHardHammer");
- mSolderingTool = aNBT.getBoolean("mSolderingTool");
- mCrowbar = aNBT.getBoolean("mCrowbar");
- }
-
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
- if (aBaseMetaTileEntity.isClientSide()) return true;
- aBaseMetaTileEntity.openGUI(aPlayer);
- return true;
- }
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new CONTAINER_MultiMachine(aPlayerInventory, aBaseMetaTileEntity);
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MultiblockDisplay.png");
- }
-
- @Override
- public byte getTileEntityBaseType() {
- return 2;
- }
-
- @Override
- public void onMachineBlockUpdate() {
- mUpdate = 50;
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (aBaseMetaTileEntity.isServerSide()) {
- if (mEfficiency < 0) mEfficiency = 0;
- if (--mUpdate == 0 || --mStartUpCheck == 0) {
- mInputHatches.clear();
- mInputBusses.clear();
- mOutputHatches.clear();
- mOutputBusses.clear();
- mDynamoHatches.clear();
- mEnergyHatches.clear();
- mMufflerHatches.clear();
- mMaintenanceHatches.clear();
- mMachine = checkMachine(aBaseMetaTileEntity, mInventory[1]);
- }
- if (mStartUpCheck < 0) {
- if (mMachine) {
- for (GT_MetaTileEntity_Hatch_Maintenance tHatch : mMaintenanceHatches) {
- if (isValidMetaTileEntity(tHatch)) {
- if (!this.disableMaintenance) {
- if (tHatch.mWrench) mWrench = true;
- if (tHatch.mScrewdriver) mScrewdriver = true;
- if (tHatch.mSoftHammer) mSoftHammer = true;
- if (tHatch.mHardHammer) mHardHammer = true;
- if (tHatch.mSolderingTool) mSolderingTool = true;
- if (tHatch.mCrowbar) mCrowbar = true;
- } else {
- mWrench = true;
- mScrewdriver = true;
- mSoftHammer = true;
- mHardHammer = true;
- mSolderingTool = true;
- mCrowbar = true;
- }
-
- tHatch.mWrench = false;
- tHatch.mScrewdriver = false;
- tHatch.mSoftHammer = false;
- tHatch.mHardHammer = false;
- tHatch.mSolderingTool = true;
- tHatch.mCrowbar = false;
- }
- }
- if (getRepairStatus() > 0) {
- if (mMaxProgresstime > 0 && doRandomMaintenanceDamage()) {
- if (onRunningTick(mInventory[1])) {
- if (!polluteEnvironment(getPollutionPerTick(mInventory[1]))) {
- stopMachine();
- }
- if (mMaxProgresstime > 0 && ++mProgresstime >= mMaxProgresstime) {
- if (mOutputItems != null) for (ItemStack tStack : mOutputItems)
- if (tStack != null) {
- try {
- GT_Mod.instance.achievements.issueAchivementHatch(aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), tStack);
- } catch (Exception e) {
- }
- addOutput(tStack);
- }
- if (mOutputFluids != null && mOutputFluids.length == 1) {
- for (FluidStack tStack : mOutputFluids)
- if (tStack != null) {
- addOutput(tStack);
- }
- } else if (mOutputFluids != null && mOutputFluids.length > 1) {
- addFluidOutputs(mOutputFluids);
- }
- mEfficiency = Math.max(0, Math.min(mEfficiency + mEfficiencyIncrease, getMaxEfficiency(mInventory[1]) - ((getIdealStatus() - getRepairStatus()) * 1000)));
- mOutputItems = null;
- mProgresstime = 0;
- mMaxProgresstime = 0;
- mEfficiencyIncrease = 0;
- if (aBaseMetaTileEntity.isAllowedToWork()) checkRecipe(mInventory[1]);
- if (mOutputFluids != null && mOutputFluids.length > 0) {
- if (mOutputFluids.length > 1) {
- GT_Mod.instance.achievements.issueAchievement(aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), "oilplant");
- }
- }
- }
- }
- } else {
- if (aTick % 100 == 0 || aBaseMetaTileEntity.hasWorkJustBeenEnabled() || aBaseMetaTileEntity.hasInventoryBeenModified()) {
-
- if (aBaseMetaTileEntity.isAllowedToWork()) {
- checkRecipe(mInventory[1]);
- }
- if (mMaxProgresstime <= 0) mEfficiency = Math.max(0, mEfficiency - 1000);
- }
- }
- } else {
- stopMachine();
- }
- } else {
- stopMachine();
- }
- }
- aBaseMetaTileEntity.setErrorDisplayID((aBaseMetaTileEntity.getErrorDisplayID() & ~127) | (mWrench ? 0 : 1) | (mScrewdriver ? 0 : 2) | (mSoftHammer ? 0 : 4) | (mHardHammer ? 0 : 8) | (mSolderingTool ? 0 : 16) | (mCrowbar ? 0 : 32) | (mMachine ? 0 : 64));
- aBaseMetaTileEntity.setActive(mMaxProgresstime > 0);
- }
- }
-
- public boolean polluteEnvironment(int aPollutionLevel) {
- mPollution += aPollutionLevel;
- for (GT_MetaTileEntity_Hatch_Muffler tHatch : mMufflerHatches) {
- if (isValidMetaTileEntity(tHatch)) {
- if (mPollution >= 10000) {
- if (tHatch.polluteEnvironment()) {
- mPollution -= 10000;
- }
- } else {
- break;
- }
- }
- }
- return mPollution < 10000;
- }
-
- /**
- * Called every tick the Machine runs
- */
- public boolean onRunningTick(ItemStack aStack) {
- if (mEUt > 0) {
- addEnergyOutput(((long) mEUt * mEfficiency) / 10000);
- return true;
- }
- if (mEUt < 0) {
- if (!drainEnergyInput(((long) -mEUt * 10000) / Math.max(1000, mEfficiency))) {
- stopMachine();
- return false;
- }
- }
- return true;
- }
-
- /**
- * Checks if this is a Correct Machine Part for this kind of Machine (Turbine Rotor for example)
- */
- //public abstract boolean isCorrectMachinePart(ItemStack aStack);
-
- /**
- * Checks the Recipe
- */
- public abstract boolean checkRecipe(ItemStack aStack);
-
- /**
- * Checks the Machine. You have to assign the MetaTileEntities for the Hatches here.
- */
- public abstract boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack);
-
- /**
- * Gets the maximum Efficiency that spare Part can get (0 - 10000)
- */
- public abstract int getMaxEfficiency(ItemStack aStack);
-
- /**
- * Gets the pollution this Device outputs to a Muffler per tick (10000 = one Pullution Block)
- */
- public abstract int getPollutionPerTick(ItemStack aStack);
-
- /**
- * Gets the damage to the ItemStack, usually 0 or 1.
- */
- //public abstract int getDamageToComponent(ItemStack aStack);
-
- /**
- * Gets the Amount of possibly outputted Items for loading the Output Stack Array from NBT.
- * This should be the largest Amount that can ever happen legitimately.
- */
- public abstract int getAmountOfOutputs();
-
- /**
- * If it explodes when the Component has to be replaced.
- */
- public abstract boolean explodesOnComponentBreak(ItemStack aStack);
-
- public void stopMachine() {
- mOutputItems = null;
- mEUt = 0;
- mEfficiency = 0;
- mProgresstime = 0;
- mMaxProgresstime = 0;
- mEfficiencyIncrease = 0;
- getBaseMetaTileEntity().disableWorking();
- }
-
- public int getRepairStatus() {
- return (mWrench ? 1 : 0) + (mScrewdriver ? 1 : 0) + (mSoftHammer ? 1 : 0) + (mHardHammer ? 1 : 0) + (mSolderingTool ? 1 : 0) + (mCrowbar ? 1 : 0);
- }
-
- public int getIdealStatus() {
- return 6;
- }
-
- public boolean doRandomMaintenanceDamage() {
- if (getRepairStatus() == 0) {
- stopMachine();
- return false;
- }
- if (mRuntime++ > 1000) {
- mRuntime = 0;
- if (getBaseMetaTileEntity().getRandomNumber(6000) == 0) {
- switch (getBaseMetaTileEntity().getRandomNumber(6)) {
- case 0:
- mWrench = false;
- break;
- case 1:
- mScrewdriver = false;
- break;
- case 2:
- mSoftHammer = false;
- break;
- case 3:
- mHardHammer = false;
- break;
- case 4:
- mSolderingTool = true;
- break;
- case 5:
- mCrowbar = false;
- break;
- }
- }
- if (mInventory[1] != null && getBaseMetaTileEntity().getRandomNumber(2) == 0 && !mInventory[1].getUnlocalizedName().startsWith("gt.blockmachines.basicmachine.")) {
- if (mInventory[1].getItem() instanceof GT_MetaGenerated_Tool_01) {
- NBTTagCompound tNBT = mInventory[1].getTagCompound();
- if (tNBT != null) {
- NBTTagCompound tNBT2 = tNBT.getCompoundTag("GT.CraftingComponents");
- if (!tNBT.getBoolean("mDis")) {
- tNBT2 = new NBTTagCompound();
- Materials tMaterial = GT_MetaGenerated_Tool.getPrimaryMaterial(mInventory[1]);
- ItemStack tTurbine = GT_OreDictUnificator.get(OrePrefixes.turbineBlade, tMaterial, 1);
- int i = mInventory[1].getItemDamage();
- if (i == 170) {
- ItemStack tStack = GT_Utility.copyAmount(1, tTurbine);
- tNBT2.setTag("Ingredient.0", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.1", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.2", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.3", tStack.writeToNBT(new NBTTagCompound()));
- tStack = GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Magnalium, 1);
- tNBT2.setTag("Ingredient.4", tStack.writeToNBT(new NBTTagCompound()));
- } else if (i == 172) {
- ItemStack tStack = GT_Utility.copyAmount(1, tTurbine);
- tNBT2.setTag("Ingredient.0", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.1", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.2", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.3", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.5", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.6", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.7", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.8", tStack.writeToNBT(new NBTTagCompound()));
- tStack = GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Titanium, 1);
- tNBT2.setTag("Ingredient.4", tStack.writeToNBT(new NBTTagCompound()));
- } else if (i == 174) {
- ItemStack tStack = GT_Utility.copyAmount(2, tTurbine);
- tNBT2.setTag("Ingredient.0", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.1", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.2", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.3", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.5", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.6", tStack.writeToNBT(new NBTTagCompound()));
- tStack = GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.TungstenSteel, 1);
- tNBT2.setTag("Ingredient.4", tStack.writeToNBT(new NBTTagCompound()));
- } else if (i == 176) {
- ItemStack tStack = GT_Utility.copyAmount(2, tTurbine);
- tNBT2.setTag("Ingredient.0", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.1", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.2", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.3", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.5", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.6", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.7", tStack.writeToNBT(new NBTTagCompound()));
- tNBT2.setTag("Ingredient.8", tStack.writeToNBT(new NBTTagCompound()));
- tStack = GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Americium, 1);
- tNBT2.setTag("Ingredient.4", tStack.writeToNBT(new NBTTagCompound()));
- }
- tNBT.setTag("GT.CraftingComponents", tNBT2);
- tNBT.setBoolean("mDis", true);
- mInventory[1].setTagCompound(tNBT);
-
- }
- }
-
- ((GT_MetaGenerated_Tool) mInventory[1].getItem()).doDamage(mInventory[1], (long) Math.min(mEUt / 5, Math.pow(mEUt, 0.7)));
- if (mInventory[1].stackSize == 0) mInventory[1] = null;
- }
- }
- }
- return true;
- }
-
- public void explodeMultiblock() {
- mInventory[1] = null;
- for (MetaTileEntity tTileEntity : mInputBusses) tTileEntity.getBaseMetaTileEntity().doExplosion(V[8]);
- for (MetaTileEntity tTileEntity : mOutputBusses) tTileEntity.getBaseMetaTileEntity().doExplosion(V[8]);
- for (MetaTileEntity tTileEntity : mInputHatches) tTileEntity.getBaseMetaTileEntity().doExplosion(V[8]);
- for (MetaTileEntity tTileEntity : mOutputHatches) tTileEntity.getBaseMetaTileEntity().doExplosion(V[8]);
- for (MetaTileEntity tTileEntity : mDynamoHatches) tTileEntity.getBaseMetaTileEntity().doExplosion(V[8]);
- for (MetaTileEntity tTileEntity : mMufflerHatches) tTileEntity.getBaseMetaTileEntity().doExplosion(V[8]);
- for (MetaTileEntity tTileEntity : mEnergyHatches) tTileEntity.getBaseMetaTileEntity().doExplosion(V[8]);
- for (MetaTileEntity tTileEntity : mMaintenanceHatches) tTileEntity.getBaseMetaTileEntity().doExplosion(V[8]);
- getBaseMetaTileEntity().doExplosion(V[8]);
- }
-
- public boolean addEnergyOutput(long aEU) {
- if (aEU <= 0) return true;
- for (GT_MetaTileEntity_Hatch_Dynamo tHatch : mDynamoHatches) {
- if (isValidMetaTileEntity(tHatch)) {
- if (tHatch.getBaseMetaTileEntity().increaseStoredEnergyUnits(aEU, false)) {
- return true;
- }
- }
- }
- return false;
- }
-
- public long getMaxInputVoltage() {
- long rVoltage = 0;
- for (GT_MetaTileEntity_Hatch_Energy tHatch : mEnergyHatches)
- if (isValidMetaTileEntity(tHatch)) rVoltage += tHatch.getBaseMetaTileEntity().getInputVoltage();
- return rVoltage;
- }
-
- public boolean drainEnergyInput(long aEU) {
- if (aEU <= 0) return true;
- for (GT_MetaTileEntity_Hatch_Energy tHatch : mEnergyHatches)
- if (isValidMetaTileEntity(tHatch)) {
- if (tHatch.getBaseMetaTileEntity().decreaseStoredEnergyUnits(aEU, false)) return true;
- }
- return false;
- }
-
- public boolean addOutput(FluidStack aLiquid) {
- if (aLiquid == null) return false;
- FluidStack tLiquid = aLiquid.copy();
- for (GT_MetaTileEntity_Hatch_Output tHatch : mOutputHatches) {
- if (isValidMetaTileEntity(tHatch) && GT_ModHandler.isSteam(aLiquid) ? tHatch.outputsSteam() : tHatch.outputsLiquids()) {
- int tAmount = tHatch.fill(tLiquid, false);
- if (tAmount >= tLiquid.amount) {
- return tHatch.fill(tLiquid, true) >= tLiquid.amount;
- } else if (tAmount > 0) {
- tLiquid.amount = tLiquid.amount - tHatch.fill(tLiquid, true);
- }
- }
- }
- return false;
- }
-
- private void addFluidOutputs(FluidStack[] mOutputFluids2) {
- for (int i = 0; i < mOutputFluids2.length; i++) {
- if (mOutputHatches.size() > i && mOutputHatches.get(i) != null && mOutputFluids2[i] != null && isValidMetaTileEntity(mOutputHatches.get(i))) {
- mOutputHatches.get(i).fill(mOutputFluids2[i], true);
- }
- }
-
- }
-
- public boolean depleteInput(FluidStack aLiquid) {
- if (aLiquid == null) return false;
- for (GT_MetaTileEntity_Hatch_Input tHatch : mInputHatches) {
- tHatch.mRecipeMap = getRecipeMap();
- if (isValidMetaTileEntity(tHatch)) {
- FluidStack tLiquid = tHatch.getFluid();
- if (tLiquid != null && tLiquid.isFluidEqual(aLiquid)) {
- tLiquid = tHatch.drain(aLiquid.amount, false);
- if (tLiquid != null && tLiquid.amount >= aLiquid.amount) {
- tLiquid = tHatch.drain(aLiquid.amount, true);
- return tLiquid != null && tLiquid.amount >= aLiquid.amount;
- }
- }
- }
- }
- return false;
- }
-
- public boolean addOutput(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack)) return false;
- aStack = GT_Utility.copy(aStack);
-// FluidStack aLiquid = GT_Utility.getFluidForFilledItem(aStack, true);
-// if (aLiquid == null) {
- for (GT_MetaTileEntity_Hatch_OutputBus tHatch : mOutputBusses) {
- if (isValidMetaTileEntity(tHatch)) {
- for (int i = tHatch.getSizeInventory() - 1; i >= 0; i--) {
- if (tHatch.getBaseMetaTileEntity().addStackToSlot(i, aStack)) return true;
- }
- }
- }
- for (GT_MetaTileEntity_Hatch_Output tHatch : mOutputHatches) {
- if (isValidMetaTileEntity(tHatch) && tHatch.outputsItems()) {
- if (tHatch.getBaseMetaTileEntity().addStackToSlot(1, aStack)) return true;
- }
- }
-// }else {
-// for (GT_MetaTileEntity_Hatch_Output tHatch : mOutputHatches) {
-// if (isValidMetaTileEntity(tHatch) && GT_ModHandler.isSteam(aLiquid)?tHatch.outputsSteam():tHatch.outputsLiquids()) {
-// int tAmount = tHatch.fill(aLiquid, false);
-// if (tAmount >= aLiquid.amount) {
-// return tHatch.fill(aLiquid, true) >= aLiquid.amount;
-// }
-// }
-// }
-// }
- return false;
- }
-
- public boolean depleteInput(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack)) return false;
- FluidStack aLiquid = GT_Utility.getFluidForFilledItem(aStack, true);
- if (aLiquid != null) return depleteInput(aLiquid);
- for (GT_MetaTileEntity_Hatch_Input tHatch : mInputHatches) {
- tHatch.mRecipeMap = getRecipeMap();
- if (isValidMetaTileEntity(tHatch)) {
- if (GT_Utility.areStacksEqual(aStack, tHatch.getBaseMetaTileEntity().getStackInSlot(0))) {
- if (tHatch.getBaseMetaTileEntity().getStackInSlot(0).stackSize >= aStack.stackSize) {
- tHatch.getBaseMetaTileEntity().decrStackSize(0, aStack.stackSize);
- return true;
- }
- }
- }
- }
- for (GT_MetaTileEntity_Hatch_InputBus tHatch : mInputBusses) {
- tHatch.mRecipeMap = getRecipeMap();
- if (isValidMetaTileEntity(tHatch)) {
- for (int i = tHatch.getBaseMetaTileEntity().getSizeInventory() - 1; i >= 0; i--) {
- if (GT_Utility.areStacksEqual(aStack, tHatch.getBaseMetaTileEntity().getStackInSlot(i))) {
- if (tHatch.getBaseMetaTileEntity().getStackInSlot(0).stackSize >= aStack.stackSize) {
- tHatch.getBaseMetaTileEntity().decrStackSize(0, aStack.stackSize);
- return true;
- }
- }
- }
- }
- }
- return false;
- }
-
- public ArrayList<ItemStack> getStoredOutputs() {
- ArrayList<ItemStack> rList = new ArrayList<ItemStack>();
- for (GT_MetaTileEntity_Hatch_Output tHatch : mOutputHatches) {
- if (isValidMetaTileEntity(tHatch)) {
- rList.add(tHatch.getBaseMetaTileEntity().getStackInSlot(1));
- }
- }
- for (GT_MetaTileEntity_Hatch_OutputBus tHatch : mOutputBusses) {
- if (isValidMetaTileEntity(tHatch)) {
- for (int i = tHatch.getBaseMetaTileEntity().getSizeInventory() - 1; i >= 0; i--) {
- rList.add(tHatch.getBaseMetaTileEntity().getStackInSlot(i));
- }
- }
- }
- return rList;
- }
-
- public ArrayList<FluidStack> getStoredFluids() {
- ArrayList<FluidStack> rList = new ArrayList<FluidStack>();
- for (GT_MetaTileEntity_Hatch_Input tHatch : mInputHatches) {
- tHatch.mRecipeMap = getRecipeMap();
- if (isValidMetaTileEntity(tHatch) && tHatch.getFillableStack() != null) {
- rList.add(tHatch.getFillableStack());
- }
- }
- return rList;
- }
-
- public ArrayList<ItemStack> getStoredInputs() {
- ArrayList<ItemStack> rList = new ArrayList<ItemStack>();
- for (GT_MetaTileEntity_Hatch_Input tHatch : mInputHatches) {
- tHatch.mRecipeMap = getRecipeMap();
- if (isValidMetaTileEntity(tHatch) && tHatch.getBaseMetaTileEntity().getStackInSlot(0) != null) {
- rList.add(tHatch.getBaseMetaTileEntity().getStackInSlot(0));
- }
- }
- for (GT_MetaTileEntity_Hatch_InputBus tHatch : mInputBusses) {
- tHatch.mRecipeMap = getRecipeMap();
- if (isValidMetaTileEntity(tHatch)) {
- for (int i = tHatch.getBaseMetaTileEntity().getSizeInventory() - 1; i >= 0; i--) {
- if (tHatch.getBaseMetaTileEntity().getStackInSlot(i) != null)
- rList.add(tHatch.getBaseMetaTileEntity().getStackInSlot(i));
- }
- }
- }
- return rList;
- }
-
- public GT_Recipe_Map getRecipeMap() {
- return null;
- }
-
- public void updateSlots() {
- for (GT_MetaTileEntity_Hatch_Input tHatch : mInputHatches)
- if (isValidMetaTileEntity(tHatch)) tHatch.updateSlots();
- for (GT_MetaTileEntity_Hatch_InputBus tHatch : mInputBusses)
- if (isValidMetaTileEntity(tHatch)) tHatch.updateSlots();
- }
-
- public boolean addToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
- if (aTileEntity == null) return false;
- IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
- if (aMetaTileEntity == null) return false;
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch)
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Input)
- return mInputHatches.add((GT_MetaTileEntity_Hatch_Input) aMetaTileEntity);
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_InputBus)
- return mInputBusses.add((GT_MetaTileEntity_Hatch_InputBus) aMetaTileEntity);
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Output)
- return mOutputHatches.add((GT_MetaTileEntity_Hatch_Output) aMetaTileEntity);
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_OutputBus)
- return mOutputBusses.add((GT_MetaTileEntity_Hatch_OutputBus) aMetaTileEntity);
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Energy)
- return mEnergyHatches.add((GT_MetaTileEntity_Hatch_Energy) aMetaTileEntity);
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Dynamo)
- return mDynamoHatches.add((GT_MetaTileEntity_Hatch_Dynamo) aMetaTileEntity);
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Maintenance)
- return mMaintenanceHatches.add((GT_MetaTileEntity_Hatch_Maintenance) aMetaTileEntity);
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Muffler)
- return mMufflerHatches.add((GT_MetaTileEntity_Hatch_Muffler) aMetaTileEntity);
- return false;
- }
-
- public boolean addMaintenanceToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
- if (aTileEntity == null) return false;
- IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
- if (aMetaTileEntity == null) return false;
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Maintenance) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- return mMaintenanceHatches.add((GT_MetaTileEntity_Hatch_Maintenance) aMetaTileEntity);
- }
- return false;
- }
-
- public boolean addEnergyInputToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
- if (aTileEntity == null) {
- return false;
- }
- IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
- if (aMetaTileEntity == null) return false;
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Energy) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- return mEnergyHatches.add((GT_MetaTileEntity_Hatch_Energy) aMetaTileEntity);
- }
- return false;
- }
-
- public boolean addDynamoToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
- if (aTileEntity == null) return false;
- IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
- if (aMetaTileEntity == null) return false;
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Dynamo) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- return mDynamoHatches.add((GT_MetaTileEntity_Hatch_Dynamo) aMetaTileEntity);
- }
- return false;
- }
-
- public boolean addMufflerToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
- if (aTileEntity == null) return false;
- IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
- if (aMetaTileEntity == null) return false;
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Muffler) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- return mMufflerHatches.add((GT_MetaTileEntity_Hatch_Muffler) aMetaTileEntity);
- }
- return false;
- }
-
- public boolean addInputToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
- if (aTileEntity == null) return false;
- IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
- if (aMetaTileEntity == null) return false;
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Input) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- ((GT_MetaTileEntity_Hatch_Input) aMetaTileEntity).mRecipeMap = getRecipeMap();
- return mInputHatches.add((GT_MetaTileEntity_Hatch_Input) aMetaTileEntity);
- }
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_InputBus) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- ((GT_MetaTileEntity_Hatch_InputBus) aMetaTileEntity).mRecipeMap = getRecipeMap();
- return mInputBusses.add((GT_MetaTileEntity_Hatch_InputBus) aMetaTileEntity);
- }
- return false;
- }
-
- public boolean addOutputToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) {
- if (aTileEntity == null) return false;
- IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
- if (aMetaTileEntity == null) return false;
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Output) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- return mOutputHatches.add((GT_MetaTileEntity_Hatch_Output) aMetaTileEntity);
- }
- if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_OutputBus) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- return mOutputBusses.add((GT_MetaTileEntity_Hatch_OutputBus) aMetaTileEntity);
- }
- return false;
- }
-
- @Override
- public String[] getInfoData() {
- return new String[]{"Progress:", (mProgresstime / 20) + "secs", (mMaxProgresstime / 20) + "secs", "Efficiency:", (mEfficiency / 100.0F) + "%", "Problems:", "" + (getIdealStatus() - getRepairStatus())};
- }
-
- @Override
- public boolean isGivingInformation() {
- return true;
- }
-
- @Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return false;
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return false;
- }
-
- /**
- * Called whenever the Machine successfully started a Process, useful for Sound Effects
- */
- public void startProcess() {
- //
- }
-
- /**
- * Called whenever the Machine successfully finished a Process, useful for Sound Effects
- */
- public void endProcess() {
- //
- }
-
- /**
- * Called whenever the Machine aborted a Process, useful for Sound Effects
- */
- public void abortProcess() {
- //
- }
-
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaBoilerBase.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaBoilerBase.java
deleted file mode 100644
index b38bd019be..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaBoilerBase.java
+++ /dev/null
@@ -1,328 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.generators;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank;
-import gregtech.api.objects.GT_ItemStack;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.util.math.MathUtils;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.fluids.IFluidHandler;
-
-public abstract class GregtechMetaBoilerBase extends GT_MetaTileEntity_BasicTank
-{
- public int mTemperature = 20;
- public int mProcessingEnergy = 0;
- public int mLossTimer = 0;
- public FluidStack mSteam = null;
- public boolean mHadNoWater = false;
- public long RI = MathUtils.randLong(5L, 30L);
-
- public GregtechMetaBoilerBase(int aID, String aName, String aNameRegional, String aDescription, ITexture... aTextures)
- {
- super(aID, aName, aNameRegional, 0, 4, aDescription, aTextures);
- }
-
- public GregtechMetaBoilerBase(String aName, int aTier, String aDescription, ITexture[][][] aTextures)
- {
- super(aName, aTier, 4, aDescription, aTextures);
- }
-
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone)
- {
- ITexture[] tmp = mTextures[aSide >= 2 ? aSide != aFacing ? 2 : ((byte)(aActive ? 4 : 3)) : aSide][aColorIndex + 1];
- //mTextures[(aSide==aFacing?(aActive?4:3):aSide==GT_Utility.getOppositeSide(aFacing)?2:aSide==0?0:aSide==1?1:2)][aColorIndex+1];
- if(aSide!=aFacing&&tmp.length==2){
- tmp = new ITexture[]{tmp[0]};
- }
- return tmp;
- }
-
- public boolean isElectric()
- {
- return false;
- }
-
- public boolean isPneumatic()
- {
- return false;
- }
-
- public boolean isSteampowered()
- {
- return false;
- }
-
- public boolean isSimpleMachine()
- {
- return false;
- }
-
- public boolean isFacingValid(byte aFacing)
- {
- return aFacing > 1;
- }
-
- public boolean isAccessAllowed(EntityPlayer aPlayer)
- {
- return true;
- }
-
- public boolean isValidSlot(int aIndex)
- {
- return true;
- }
-
- public int getProgresstime()
- {
- return this.mTemperature;
- }
-
- public int maxProgresstime()
- {
- return 500;
- }
-
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer)
- {
- if (aBaseMetaTileEntity.isClientSide()) {
- return true;
- }
- if (aPlayer != null) {
- if (GT_Utility.areStacksEqual(aPlayer.getCurrentEquippedItem(), new ItemStack(Items.water_bucket, 1)))
- {
- fill(Materials.Water.getFluid(1000 * aPlayer.getCurrentEquippedItem().stackSize), true);
- aPlayer.getCurrentEquippedItem().func_150996_a(Items.bucket);
- }
- else
- {
- aBaseMetaTileEntity.openGUI(aPlayer);
- }
- }
- return true;
- }
-
- public boolean doesFillContainers()
- {
- return true;
- }
-
- public boolean doesEmptyContainers()
- {
- return true;
- }
-
- public boolean canTankBeFilled()
- {
- return true;
- }
-
- public boolean canTankBeEmptied()
- {
- return true;
- }
-
- public boolean displaysItemStack()
- {
- return false;
- }
-
- public boolean displaysStackSize()
- {
- return false;
- }
-
- public boolean isFluidInputAllowed(FluidStack aFluid)
- {
- return GT_ModHandler.isWater(aFluid);
- }
-
- public FluidStack getDrainableStack()
- {
- return this.mSteam;
- }
-
- public FluidStack setDrainableStack(FluidStack aFluid)
- {
- this.mSteam = aFluid;return this.mSteam;
- }
-
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCover)
- {
- return GregTech_API.getCoverBehavior(aCover.toStack()).isSimpleCover();
- }
-
- public void saveNBTData(NBTTagCompound aNBT)
- {
- super.saveNBTData(aNBT);
- aNBT.setInteger("mLossTimer", this.mLossTimer);
- aNBT.setInteger("mTemperature", this.mTemperature);
- aNBT.setInteger("mProcessingEnergy", this.mProcessingEnergy);
- if (this.mSteam != null) {
- try
- {
- aNBT.setTag("mSteam", this.mSteam.writeToNBT(new NBTTagCompound()));
- }
- catch (Throwable e) {}
- }
- }
-
- public void loadNBTData(NBTTagCompound aNBT)
- {
- super.loadNBTData(aNBT);
- this.mLossTimer = aNBT.getInteger("mLossTimer");
- this.mTemperature = aNBT.getInteger("mTemperature");
- this.mProcessingEnergy = aNBT.getInteger("mProcessingEnergy");
- this.mSteam = FluidStack.loadFluidStackFromNBT(aNBT.getCompoundTag("mSteam"));
- }
-
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick)
- {
- if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L))
- {
- if (this.mTemperature <= 20)
- {
- this.mTemperature = 20;
- this.mLossTimer = 0;
- }
- if (++this.mLossTimer > 40)
- {
- this.mTemperature -= 1;
- this.mLossTimer = 0;
- }
- for (byte i = 1; (this.mSteam != null) && (i < 6); i = (byte)(i + 1)) {
- if (i != aBaseMetaTileEntity.getFrontFacing())
- {
- IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i);
- if (tTileEntity != null)
- {
- FluidStack tDrained = aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false);
- if (tDrained != null)
- {
- int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false);
- if (tFilledAmount > 0) {
- tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), tFilledAmount, true), true);
- }
- }
- }
- }
- }
- if (aTick % 10L == 0L) {
- if (this.mTemperature > 100)
- {
- if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0))
- {
- this.mHadNoWater = true;
- }
- else
- {
- if (this.mHadNoWater)
- {
- aBaseMetaTileEntity.doExplosion(2048L);
- return;
- }
- this.mFluid.amount -= 1;
- if (this.mSteam == null) {
- this.mSteam = GT_ModHandler.getSteam(150L);
- } else if (GT_ModHandler.isSteam(this.mSteam)) {
- this.mSteam.amount += 150;
- } else {
- this.mSteam = GT_ModHandler.getSteam(150L);
- }
- }
- }
- else {
- this.mHadNoWater = false;
- }
- }
- if ((this.mSteam != null) &&
- (this.mSteam.amount > 32000))
- {
- sendSound((byte)1);
- this.mSteam.amount = 24000;
- }
- if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) &&
- (this.mInventory[2] != null)) {
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Coal))))
- {
- this.mProcessingEnergy += 160;
- aBaseMetaTileEntity.decrStackSize(2, 1);
- if (aBaseMetaTileEntity.getRandomNumber(3) == 0) {
- aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L));
- }
- }
- else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Charcoal)))
- {
- this.mProcessingEnergy += 160;
- aBaseMetaTileEntity.decrStackSize(2, 1);
- if (aBaseMetaTileEntity.getRandomNumber(3) == 0) {
- aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L));
- }
- }
- else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], "fuelCoke"))
- {
- this.mProcessingEnergy += 640;
- aBaseMetaTileEntity.decrStackSize(2, 1);
- if (aBaseMetaTileEntity.getRandomNumber(2) == 0) {
- aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L));
- }
- }
- else if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.gem.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dust.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], OrePrefixes.crushed.get(Materials.Lignite))))
- {
- this.mProcessingEnergy += 40;
- aBaseMetaTileEntity.decrStackSize(2, 1);
- if (aBaseMetaTileEntity.getRandomNumber(8) == 0) {
- aBaseMetaTileEntity.addStackToSlot(3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L));
- }
- }
- }
- if ((this.mTemperature < 1000) && (this.mProcessingEnergy > 0) && (aTick % 12L == 0L))
- {
- this.mProcessingEnergy -= 2;
- this.mTemperature += 1;
- }
- aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0);
- }
- }
-
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack)
- {
- return (aIndex == 1) || (aIndex == 3);
- }
-
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack)
- {
- return aIndex == 2;
- }
-
- public void doSound(byte aIndex, double aX, double aY, double aZ)
- {
- if (aIndex == 1)
- {
- GT_Utility.doSoundAtClient((String)GregTech_API.sSoundList.get(Integer.valueOf(4)), 2, 1.0F, aX, aY, aZ);
- for (int l = 0; l < 8; l++) {
- getBaseMetaTileEntity().getWorld().spawnParticle("largesmoke", aX - 0.5D + Math.random(), aY, aZ - 0.5D + Math.random(), 0.0D, 0.0D, 0.0D);
- }
- }
- }
-
- public int getCapacity()
- {
- return 16000;
- }
-
- public int getTankPressure()
- {
- return 100;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaSolarGenerator.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaSolarGenerator.java
deleted file mode 100644
index 23ab350f7c..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaSolarGenerator.java
+++ /dev/null
@@ -1,211 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.generators;
-
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank;
-import gregtech.api.util.GT_Utility;
-import net.minecraft.entity.player.EntityPlayer;
-
-public abstract class GregtechMetaSolarGenerator extends GT_MetaTileEntity_BasicTank {
-
- public int mEfficiency;
- public int mProcessingEnergy = 0;
- public int mSolarCharge = 20;
- public int mLossTimer = 0;
- public static int sEnergyPerTick = 16;
-
- public GregtechMetaSolarGenerator(int aID, String aName, String aNameRegional, int aTier, String aDescription, ITexture... aTextures) {
- super(aID, aName, aNameRegional, aTier, 3, aDescription, aTextures);
- }
-
- public GregtechMetaSolarGenerator(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, 3, aDescription, aTextures);
- }
-
- @Override
- public ITexture[][][] getTextureSet(ITexture[] aTextures) {
- ITexture[][][] rTextures = new ITexture[10][17][];
- for (byte i = -1; i < 16; i++) {
- rTextures[0][i + 1] = getFront(i);
- rTextures[1][i + 1] = getBack(i);
- rTextures[2][i + 1] = getBottom(i);
- rTextures[3][i + 1] = getTop(i);
- rTextures[4][i + 1] = getSides(i);
- rTextures[5][i + 1] = getFrontActive(i);
- rTextures[6][i + 1] = getBackActive(i);
- rTextures[7][i + 1] = getBottomActive(i);
- rTextures[8][i + 1] = getTopActive(i);
- rTextures[9][i + 1] = getSidesActive(i);
- }
- return rTextures;
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- return mTextures[(aActive ? 5 : 0) + (aSide == aFacing ? 0 : aSide == GT_Utility.getOppositeSide(aFacing) ? 1 : aSide == 0 ? 2 : aSide == 1 ? 3 : 4)][aColorIndex + 1];
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{mDescription, "Efficiency: " + getEfficiency() + "%"};
- }
-
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
- if (aBaseMetaTileEntity.isClientSide()) return true;
- aBaseMetaTileEntity.openGUI(aPlayer);
- return true;
- }
-
- public ITexture[] getFront(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getBack(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getBottom(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getTop(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getSides(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getFrontActive(byte aColor) {
- return getFront(aColor);
- }
-
- public ITexture[] getBackActive(byte aColor) {
- return getBack(aColor);
- }
-
- public ITexture[] getBottomActive(byte aColor) {
- return getBottom(aColor);
- }
-
- public ITexture[] getTopActive(byte aColor) {
- return getTop(aColor);
- }
-
- public ITexture[] getSidesActive(byte aColor) {
- return getSides(aColor);
- }
-
- @Override
- public boolean isFacingValid(byte aSide) {
- return aSide > 1;
- }
-
- @Override
- public boolean isSimpleMachine() {
- return false;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return aIndex < 2;
- }
-
- @Override
- public boolean isEnetOutput() {
- return true;
- }
-
- @Override
- public boolean isOutputFacing(byte aSide) {
- return true;
- }
-
- @Override
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return true;
- }
-
- @Override
- public long maxEUOutput() {
- return getBaseMetaTileEntity().isAllowedToWork() ? V[mTier] : 0;
- }
-
- @Override
- public long maxEUStore() {
- return Math.max(getEUVar(), V[mTier] * 40 + getMinimumStoredEU());
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (aBaseMetaTileEntity.isServerSide() && aBaseMetaTileEntity.isAllowedToWork() && aTick > 20L
- && aBaseMetaTileEntity.getUniversalEnergyStored() < maxEUOutput() + aBaseMetaTileEntity.getEUCapacity()) {
-
- if (this.mSolarCharge <= 20) {
- this.mSolarCharge = 20;
- this.mLossTimer = 0;
- }
- if (++this.mLossTimer > 45) {
- this.mSolarCharge -= 1;
- this.mLossTimer = 0;
- }
-
- if (aTick % 25L == 0L) {
- if (this.mSolarCharge > 100) {
- if ((this.mProcessingEnergy > 0) && (aBaseMetaTileEntity.isAllowedToWork()) && (aTick % 256L == 0L) && (!aBaseMetaTileEntity.getWorld().isThundering() && aBaseMetaTileEntity.getUniversalEnergyStored() < (maxEUOutput() * 20 + getMinimumStoredEU()))) {
- getBaseMetaTileEntity().increaseStoredEnergyUnits(sEnergyPerTick * getEfficiency() / 10, false);
- }
- }
- }
-
- if ((this.mSolarCharge < 500) && (this.mProcessingEnergy > 0) && (aTick % 12L == 0L)) {
- this.mProcessingEnergy -= 1;
- this.mSolarCharge += 1;
- }
-
- if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && (aTick % 256L == 0L) && (!aBaseMetaTileEntity.getWorld().isThundering())) {
- boolean bRain = aBaseMetaTileEntity.getWorld().isRaining() && aBaseMetaTileEntity.getBiome().rainfall > 0.0F;
- mProcessingEnergy += bRain && aBaseMetaTileEntity.getWorld().skylightSubtracted >= 4 || !aBaseMetaTileEntity.getSkyAtSide((byte) 1) ? 0 : !bRain && aBaseMetaTileEntity.getWorld().isDaytime() ? 8 : 1;
- }
-
- if (aBaseMetaTileEntity.isServerSide()){
- aBaseMetaTileEntity.setActive(aBaseMetaTileEntity.isAllowedToWork() && aBaseMetaTileEntity.getUniversalEnergyStored() >= maxEUOutput() + getMinimumStoredEU());
- }
- }
- }
-
- public abstract int getEfficiency();
-
- @Override
- public boolean doesFillContainers() {
- return false;
- }
-
- @Override
- public boolean doesEmptyContainers() {
- return false;
- }
-
- @Override
- public boolean canTankBeFilled() {
- return false;
- }
-
- @Override
- public boolean canTankBeEmptied() {
- return false;
- }
-
- @Override
- public boolean displaysItemStack() {
- return false;
- }
-
- @Override
- public boolean displaysStackSize() {
- return false;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechRocketFuelGeneratorBase.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechRocketFuelGeneratorBase.java
deleted file mode 100644
index 75f771ff38..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechRocketFuelGeneratorBase.java
+++ /dev/null
@@ -1,263 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.generators;
-
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
-import gregtech.api.util.GT_Utility;
-
-import java.util.Collection;
-
-import miscutil.core.lib.CORE;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidStack;
-
-public abstract class GregtechRocketFuelGeneratorBase extends GT_MetaTileEntity_BasicTank {
- public GregtechRocketFuelGeneratorBase(int aID, String aName, String aNameRegional, int aTier, String aDescription, ITexture... aTextures) {
- super(aID, aName, aNameRegional, aTier, 3, aDescription, aTextures);
- }
-
- public GregtechRocketFuelGeneratorBase(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, 3, aDescription, aTextures);
- }
-
- @Override
- public ITexture[][][] getTextureSet(ITexture[] aTextures) {
- ITexture[][][] rTextures = new ITexture[10][17][];
- for (byte i = -1; i < 16; i++) {
- rTextures[0][i + 1] = getFront(i);
- rTextures[1][i + 1] = getBack(i);
- rTextures[2][i + 1] = getBottom(i);
- rTextures[3][i + 1] = getTop(i);
- rTextures[4][i + 1] = getSides(i);
- rTextures[5][i + 1] = getFrontActive(i);
- rTextures[6][i + 1] = getBackActive(i);
- rTextures[7][i + 1] = getBottomActive(i);
- rTextures[8][i + 1] = getTopActive(i);
- rTextures[9][i + 1] = getSidesActive(i);
- }
- return rTextures;
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- return mTextures[(aActive ? 5 : 0) + (aSide == aFacing ? 0 : aSide == GT_Utility.getOppositeSide(aFacing) ? 1 : aSide == 0 ? 2 : aSide == 1 ? 3 : 4)][aColorIndex + 1];
- }
-
-
- @Override
- public String[] getDescription() {
- return new String[]{mDescription, "Fuel Efficiency: " + getEfficiency() + "%", CORE.GT_Tooltip};
- }
-
-
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
- if (aBaseMetaTileEntity.isClientSide()) return true;
- aBaseMetaTileEntity.openGUI(aPlayer);
- return true;
- }
-
- public ITexture[] getFront(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getBack(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getBottom(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getTop(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getSides(byte aColor) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColor + 1]};
- }
-
- public ITexture[] getFrontActive(byte aColor) {
- return getFront(aColor);
- }
-
- public ITexture[] getBackActive(byte aColor) {
- return getBack(aColor);
- }
-
- public ITexture[] getBottomActive(byte aColor) {
- return getBottom(aColor);
- }
-
- public ITexture[] getTopActive(byte aColor) {
- return getTop(aColor);
- }
-
- public ITexture[] getSidesActive(byte aColor) {
- return getSides(aColor);
- }
-
- @Override
- public boolean isFacingValid(byte aSide) {
- return aSide > 1;
- }
-
- @Override
- public boolean isSimpleMachine() {
- return false;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return aIndex < 2;
- }
-
- @Override
- public boolean isEnetOutput() {
- return true;
- }
-
- @Override
- public boolean isOutputFacing(byte aSide) {
- return true;
- }
-
- @Override
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return true;
- }
-
- @Override
- public long maxEUOutput() {
- return getBaseMetaTileEntity().isAllowedToWork() ? V[mTier] : 0;
- }
-
- @Override
- public long maxEUStore() {
- return Math.max(getEUVar(), V[mTier] * 80 + getMinimumStoredEU());
- }
-
- @Override
- public boolean doesFillContainers() {
- return getBaseMetaTileEntity().isAllowedToWork();
- }
-
- @Override
- public boolean doesEmptyContainers() {
- return getBaseMetaTileEntity().isAllowedToWork();
- }
-
- @Override
- public boolean canTankBeFilled() {
- return getBaseMetaTileEntity().isAllowedToWork();
- }
-
- @Override
- public boolean canTankBeEmptied() {
- return getBaseMetaTileEntity().isAllowedToWork();
- }
-
- @Override
- public boolean displaysItemStack() {
- return true;
- }
-
- @Override
- public boolean displaysStackSize() {
- return false;
- }
-
- @Override
- public boolean isFluidInputAllowed(FluidStack aFluid) {
- return getFuelValue(aFluid) > 0;
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (aBaseMetaTileEntity.isServerSide() && aBaseMetaTileEntity.isAllowedToWork() && aTick % 10 == 0) {
- if (mFluid == null) {
- if (aBaseMetaTileEntity.getUniversalEnergyStored() < maxEUOutput() + getMinimumStoredEU()) {
- mInventory[getStackDisplaySlot()] = null;
- } else {
- if (mInventory[getStackDisplaySlot()] == null)
- mInventory[getStackDisplaySlot()] = new ItemStack(Blocks.fire, 1);
- mInventory[getStackDisplaySlot()].setStackDisplayName("Generating: " + (aBaseMetaTileEntity.getUniversalEnergyStored() - getMinimumStoredEU()) + " EU");
- }
- } else {
- int tFuelValue = getFuelValue(mFluid), tConsumed = consumedFluidPerOperation(mFluid);
- if (tFuelValue > 0 && tConsumed > 0 && mFluid.amount > tConsumed) {
- long tFluidAmountToUse = Math.min(mFluid.amount / tConsumed, (maxEUOutput() * 20 + getMinimumStoredEU() - aBaseMetaTileEntity.getUniversalEnergyStored()) / tFuelValue);
- if (tFluidAmountToUse > 0 && aBaseMetaTileEntity.increaseStoredEnergyUnits(tFluidAmountToUse * tFuelValue, true))
- mFluid.amount -= tFluidAmountToUse * tConsumed;
- }
- }
- if (mInventory[getInputSlot()] != null && aBaseMetaTileEntity.getUniversalEnergyStored() < (maxEUOutput() * 20 + getMinimumStoredEU()) && GT_Utility.getFluidForFilledItem(mInventory[getInputSlot()], true) == null) {
- int tFuelValue = getFuelValue(mInventory[getInputSlot()]);
- if (tFuelValue > 0) {
- ItemStack tEmptyContainer = getEmptyContainer(mInventory[getInputSlot()]);
- if (aBaseMetaTileEntity.addStackToSlot(getOutputSlot(), tEmptyContainer)) {
- aBaseMetaTileEntity.increaseStoredEnergyUnits(tFuelValue, true);
- aBaseMetaTileEntity.decrStackSize(getInputSlot(), 1);
- }
- }
- }
- }
-
- if (aBaseMetaTileEntity.isServerSide())
- aBaseMetaTileEntity.setActive(aBaseMetaTileEntity.isAllowedToWork() && aBaseMetaTileEntity.getUniversalEnergyStored() >= maxEUOutput() + getMinimumStoredEU());
- }
-
- public abstract GT_Recipe_Map getRecipes();
-
- public abstract int getEfficiency();
-
- public int consumedFluidPerOperation(FluidStack aLiquid) {
- return 1;
- }
-
- public int getFuelValue(FluidStack aLiquid) {
- if (aLiquid == null || getRecipes() == null) return 0;
- FluidStack tLiquid;
- Collection<GT_Recipe> tRecipeList = getRecipes().mRecipeList;
- if (tRecipeList != null) for (GT_Recipe tFuel : tRecipeList)
- if ((tLiquid = GT_Utility.getFluidForFilledItem(tFuel.getRepresentativeInput(0), true)) != null)
- if (aLiquid.isFluidEqual(tLiquid))
- return (int) (((long) tFuel.mSpecialValue * getEfficiency() * consumedFluidPerOperation(tLiquid)) / 100);
- return 0;
- }
-
- public int getFuelValue(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return 0;
- GT_Recipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack);
- if (tFuel != null) return (int) ((tFuel.mSpecialValue * 1000L * getEfficiency()) / 100);
- return 0;
- }
-
- public ItemStack getEmptyContainer(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack) || getRecipes() == null) return null;
- GT_Recipe tFuel = getRecipes().findRecipe(getBaseMetaTileEntity(), false, Long.MAX_VALUE, null, aStack);
- if (tFuel != null) return GT_Utility.copy(tFuel.getOutput(0));
- return GT_Utility.getContainerItem(aStack, true);
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack) && (getFuelValue(aStack) > 0 || getFuelValue(GT_Utility.getFluidForFilledItem(aStack, true)) > 0);
- }
-
- @Override
- public int getCapacity() {
- return 32000;
- }
-
- @Override
- public int getTankPressure() {
- return -100;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechBaseMetaTileEntityLossless.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechBaseMetaTileEntityLossless.java
deleted file mode 100644
index d0ac4ab204..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechBaseMetaTileEntityLossless.java
+++ /dev/null
@@ -1,1849 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.lossless;
-
-import static gregtech.api.enums.GT_Values.NW;
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.GT_Mod;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.ItemList;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IEnergyConnected;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.BaseTileEntity;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.net.GT_Packet_TileEntity;
-import gregtech.api.objects.GT_ItemStack;
-import gregtech.api.util.GT_CoverBehavior;
-import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import ic2.api.Direction;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import net.minecraft.block.Block;
-import net.minecraft.block.BlockFire;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.item.EntityItem;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.nbt.NBTTagList;
-import net.minecraft.network.Packet;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.AxisAlignedBB;
-import net.minecraft.world.EnumSkyBlock;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.fluids.FluidTankInfo;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * This is the main TileEntity for EVERYTHING.
- */
-public class GregtechBaseMetaTileEntityLossless extends BaseTileEntity implements IGregTechTileEntity {
- private final GT_CoverBehavior[] mCoverBehaviors = new GT_CoverBehavior[]{GregTech_API.sNoBehavior, GregTech_API.sNoBehavior, GregTech_API.sNoBehavior, GregTech_API.sNoBehavior, GregTech_API.sNoBehavior, GregTech_API.sNoBehavior};
- protected MetaTileEntity mMetaTileEntity;
- protected long mStoredEnergy = 0, mStoredSteam = 0;
- protected int mAverageEUInputIndex = 0, mAverageEUOutputIndex = 0;
- protected boolean mReleaseEnergy = false;
- protected int[] mAverageEUInput = new int[]{0, 0, 0, 0, 0}, mAverageEUOutput = new int[]{0, 0, 0, 0, 0};
- private boolean[] mActiveEUInputs = new boolean[]{false, false, false, false, false, false}, mActiveEUOutputs = new boolean[]{false, false, false, false, false, false};
- private byte[] mSidedRedstone = new byte[]{15, 15, 15, 15, 15, 15};
- private int[] mCoverSides = new int[]{0, 0, 0, 0, 0, 0}, mCoverData = new int[]{0, 0, 0, 0, 0, 0}, mTimeStatistics = new int[GregTech_API.TICKS_FOR_LAG_AVERAGING];
- private boolean mHasEnoughEnergy = true, mRunningThroughTick = false, mInputDisabled = false, mOutputDisabled = false, mMuffler = false, mLockUpgrade = false, mActive = false, mRedstone = false, mWorkUpdate = false, mSteamConverter = false, mInventoryChanged = false, mWorks = true, mNeedsUpdate = true, mNeedsBlockUpdate = true, mSendClientData = false, oRedstone = false;
- private byte mColor = 0, oColor = 0, mStrongRedstone = 0, oRedstoneData = 63, oTextureData = 0, oUpdateData = 0, oLightValueClient = -1, oLightValue = -1, mLightValue = 0, mOtherUpgrades = 0, mFacing = 0, oFacing = 0, mWorkData = 0;
- private int mDisplayErrorCode = 0, oX = 0, oY = 0, oZ = 0, mTimeStatisticsIndex = 0, mLagWarningCount = 0;
- private short mID = 0;
- private long mTickTimer = 0, oOutput = 0, mAcceptedAmperes = Long.MAX_VALUE;
- private String mOwnerName = "";
- private NBTTagCompound mRecipeStuff = new NBTTagCompound();
-
- public GregtechBaseMetaTileEntityLossless() {
- }
-
- @Override
- public void writeToNBT(NBTTagCompound aNBT) {
- try {
- super.writeToNBT(aNBT);
- } catch (Throwable e) {
- GT_Log.err.println("Encountered CRITICAL ERROR while saving MetaTileEntity, the Chunk whould've been corrupted by now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
- try {
- aNBT.setInteger("mID", mID);
- aNBT.setLong("mStoredSteam", mStoredSteam);
- aNBT.setLong("mStoredEnergy", mStoredEnergy);
- aNBT.setIntArray("mCoverData", mCoverData);
- aNBT.setIntArray("mCoverSides", mCoverSides);
- aNBT.setByteArray("mRedstoneSided", mSidedRedstone);
- aNBT.setByte("mColor", mColor);
- aNBT.setByte("mLightValue", mLightValue);
- aNBT.setByte("mOtherUpgrades", mOtherUpgrades);
- aNBT.setByte("mWorkData", mWorkData);
- aNBT.setByte("mStrongRedstone", mStrongRedstone);
- aNBT.setShort("mFacing", mFacing);
- aNBT.setString("mOwnerName", mOwnerName);
- aNBT.setBoolean("mLockUpgrade", mLockUpgrade);
- aNBT.setBoolean("mMuffler", mMuffler);
- aNBT.setBoolean("mSteamConverter", mSteamConverter);
- aNBT.setBoolean("mActive", mActive);
- aNBT.setBoolean("mRedstone", mRedstone);
- aNBT.setBoolean("mWorks", !mWorks);
- aNBT.setBoolean("mInputDisabled", mInputDisabled);
- aNBT.setBoolean("mOutputDisabled", mOutputDisabled);
- aNBT.setTag("GT.CraftingComponents", mRecipeStuff);
- } catch (Throwable e) {
- GT_Log.err.println("Encountered CRITICAL ERROR while saving MetaTileEntity, the Chunk whould've been corrupted by now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
- try {
- if (hasValidMetaTileEntity()) {
- NBTTagList tItemList = new NBTTagList();
- for (int i = 0; i < mMetaTileEntity.getRealInventory().length; i++) {
- ItemStack tStack = mMetaTileEntity.getRealInventory()[i];
- if (tStack != null) {
- NBTTagCompound tTag = new NBTTagCompound();
- tTag.setInteger("IntSlot", i);
- tStack.writeToNBT(tTag);
- tItemList.appendTag(tTag);
- }
- }
- aNBT.setTag("Inventory", tItemList);
-
- try {
- mMetaTileEntity.saveNBTData(aNBT);
- } catch (Throwable e) {
- GT_Log.err.println("Encountered CRITICAL ERROR while saving MetaTileEntity, the Chunk whould've been corrupted by now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
- }
- } catch (Throwable e) {
- GT_Log.err.println("Encountered CRITICAL ERROR while saving MetaTileEntity, the Chunk whould've been corrupted by now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
- }
-
- @Override
- public void readFromNBT(NBTTagCompound aNBT) {
- super.readFromNBT(aNBT);
- setInitialValuesAsNBT(aNBT, (short) 0);
- }
-
- @Override
- public void setInitialValuesAsNBT(NBTTagCompound aNBT, short aID) {
- if (aNBT == null) {
- if (aID > 0) mID = aID;
- else mID = mID > 0 ? mID : 0;
- if (mID != 0) createNewMetatileEntity(mID);
- mSidedRedstone = (hasValidMetaTileEntity() && mMetaTileEntity.hasSidedRedstoneOutputBehavior() ? new byte[]{0, 0, 0, 0, 0, 0} : new byte[]{15, 15, 15, 15, 15, 15});
- } else {
- if (aID <= 0) mID = (short) aNBT.getInteger("mID");
- else mID = aID;
- mStoredSteam = aNBT.getInteger("mStoredSteam");
- mStoredEnergy = aNBT.getInteger("mStoredEnergy");
- mColor = aNBT.getByte("mColor");
- mLightValue = aNBT.getByte("mLightValue");
- mWorkData = aNBT.getByte("mWorkData");
- mStrongRedstone = aNBT.getByte("mStrongRedstone");
- mFacing = oFacing = (byte) aNBT.getShort("mFacing");
- mOwnerName = aNBT.getString("mOwnerName");
- mLockUpgrade = aNBT.getBoolean("mLockUpgrade");
- mMuffler = aNBT.getBoolean("mMuffler");
- mSteamConverter = aNBT.getBoolean("mSteamConverter");
- mActive = aNBT.getBoolean("mActive");
- mRedstone = aNBT.getBoolean("mRedstone");
- mWorks = !aNBT.getBoolean("mWorks");
- mInputDisabled = aNBT.getBoolean("mInputDisabled");
- mOutputDisabled = aNBT.getBoolean("mOutputDisabled");
- mOtherUpgrades = (byte) (aNBT.getByte("mOtherUpgrades") + aNBT.getByte("mBatteries") + aNBT.getByte("mLiBatteries"));
- mCoverSides = aNBT.getIntArray("mCoverSides");
- mCoverData = aNBT.getIntArray("mCoverData");
- mSidedRedstone = aNBT.getByteArray("mRedstoneSided");
- mRecipeStuff = aNBT.getCompoundTag("GT.CraftingComponents");
-
- if (mCoverData.length != 6) mCoverData = new int[]{0, 0, 0, 0, 0, 0};
- if (mCoverSides.length != 6) mCoverSides = new int[]{0, 0, 0, 0, 0, 0};
- if (mSidedRedstone.length != 6)
- if (hasValidMetaTileEntity() && mMetaTileEntity.hasSidedRedstoneOutputBehavior())
- mSidedRedstone = new byte[]{0, 0, 0, 0, 0, 0};
- else mSidedRedstone = new byte[]{15, 15, 15, 15, 15, 15};
-
- for (byte i = 0; i < 6; i++) mCoverBehaviors[i] = GregTech_API.getCoverBehavior(mCoverSides[i]);
-
- if (mID != 0 && createNewMetatileEntity(mID)) {
- NBTTagList tItemList = aNBT.getTagList("Inventory", 10);
- for (int i = 0; i < tItemList.tagCount(); i++) {
- NBTTagCompound tTag = tItemList.getCompoundTagAt(i);
- int tSlot = tTag.getInteger("IntSlot");
- if (tSlot >= 0 && tSlot < mMetaTileEntity.getRealInventory().length) {
- mMetaTileEntity.getRealInventory()[tSlot] = GT_Utility.loadItem(tTag);
- }
- }
-
- try {
- mMetaTileEntity.loadNBTData(aNBT);
- } catch (Throwable e) {
- GT_Log.err.println("Encountered Exception while loading MetaTileEntity, the Server should've crashed now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
- }
- }
-
- if (mCoverData.length != 6) mCoverData = new int[]{0, 0, 0, 0, 0, 0};
- if (mCoverSides.length != 6) mCoverSides = new int[]{0, 0, 0, 0, 0, 0};
- if (mSidedRedstone.length != 6)
- if (hasValidMetaTileEntity() && mMetaTileEntity.hasSidedRedstoneOutputBehavior())
- mSidedRedstone = new byte[]{0, 0, 0, 0, 0, 0};
- else mSidedRedstone = new byte[]{15, 15, 15, 15, 15, 15};
-
- for (byte i = 0; i < 6; i++) mCoverBehaviors[i] = GregTech_API.getCoverBehavior(mCoverSides[i]);
- }
-
- private boolean createNewMetatileEntity(short aID) {
- if (aID <= 0 || aID >= GregTech_API.METATILEENTITIES.length || GregTech_API.METATILEENTITIES[aID] == null) {
- GT_Log.err.println("MetaID " + aID + " not loadable => locking TileEntity!");
- } else {
- if (aID != 0) {
- if (hasValidMetaTileEntity()) mMetaTileEntity.setBaseMetaTileEntity(null);
- GregTech_API.METATILEENTITIES[aID].newMetaEntity(this).setBaseMetaTileEntity(this);
- mTickTimer = 0;
- mID = aID;
- return true;
- }
- }
- return false;
- }
-
- /**
- * Used for ticking special BaseMetaTileEntities, which need that for Energy Conversion
- * It's called right before onPostTick()
- */
- public void updateStatus() {
- //
- }
-
- /**
- * Called when trying to charge Items
- */
- public void chargeItem(ItemStack aStack) {
- decreaseStoredEU(GT_ModHandler.chargeElectricItem(aStack, (int) Math.min(Integer.MAX_VALUE, getStoredEU()), (int) Math.min(Integer.MAX_VALUE, mMetaTileEntity.getOutputTier()), false, false), true);
- }
-
- /**
- * Called when trying to discharge Items
- */
- public void dischargeItem(ItemStack aStack) {
- increaseStoredEnergyUnits(GT_ModHandler.dischargeElectricItem(aStack, (int) Math.min(Integer.MAX_VALUE, getEUCapacity() - getStoredEU()), (int) Math.min(Integer.MAX_VALUE, mMetaTileEntity.getInputTier()), false, false, false), true);
- }
-
- @Override
- public void updateEntity() {
- super.updateEntity();
-
- if (!hasValidMetaTileEntity()) {
- if (mMetaTileEntity == null) return;
- mMetaTileEntity.setBaseMetaTileEntity(this);
- }
-
- mRunningThroughTick = true;
- long tTime = System.currentTimeMillis();
-
- for (int tCode = 0; hasValidMetaTileEntity() && tCode >= 0; ) {
- try {
- switch (tCode) {
- case 0:
- tCode++;
- if (mTickTimer++ == 0) {
- oX = xCoord;
- oY = yCoord;
- oZ = zCoord;
- if (isServerSide()) for (byte i = 0; i < 6; i++)
- if (getCoverIDAtSide(i) != 0)
- if (!mMetaTileEntity.allowCoverOnSide(i, new GT_ItemStack(getCoverIDAtSide(i))))
- dropCover(i, i, true);
-
- worldObj.markTileEntityChunkModified(xCoord, yCoord, zCoord, this);
-
- mMetaTileEntity.onFirstTick(this);
- if (!hasValidMetaTileEntity()) {
- mRunningThroughTick = false;
- return;
- }
- }
- case 1:
- tCode++;
- if (isClientSide()) {
- if (mColor != oColor) {
- mMetaTileEntity.onColorChangeClient(oColor = mColor);
- issueTextureUpdate();
- }
-
- if (mLightValue != oLightValueClient) {
- worldObj.setLightValue(EnumSkyBlock.Block, xCoord, yCoord, zCoord, mLightValue);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord + 1, yCoord, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord - 1, yCoord, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord + 1, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord - 1, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord, zCoord + 1);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord, zCoord - 1);
- oLightValueClient = mLightValue;
- issueTextureUpdate();
- }
-
- if (mNeedsUpdate) {
- worldObj.markBlockForUpdate(xCoord, yCoord, zCoord);
- //worldObj.func_147479_m(xCoord, yCoord, zCoord);
- mNeedsUpdate = false;
- }
- }
- case 2:
- case 3:
- case 4:
- case 5:
- case 6:
- case 7:
- if (isServerSide() && mTickTimer > 10) {
- for (byte i = (byte) (tCode - 2); i < 6; i++)
- if (getCoverIDAtSide(i) != 0) {
- tCode++;
- GT_CoverBehavior tCover = getCoverBehaviorAtSide(i);
- int tCoverTickRate = tCover.getTickRate(i, getCoverIDAtSide(i), mCoverData[i], this);
- if (tCoverTickRate > 0 && mTickTimer % tCoverTickRate == 0) {
- mCoverData[i] = tCover.doCoverThings(i, getInputRedstoneSignal(i), getCoverIDAtSide(i), mCoverData[i], this, mTickTimer);
- if (!hasValidMetaTileEntity()) {
- mRunningThroughTick = false;
- return;
- }
- }
- }
-
- }
- case 8:
- tCode = 9;
- if (isServerSide()) {
- if (++mAverageEUInputIndex >= mAverageEUInput.length) mAverageEUInputIndex = 0;
- if (++mAverageEUOutputIndex >= mAverageEUOutput.length) mAverageEUOutputIndex = 0;
-
- mAverageEUInput[mAverageEUInputIndex] = 0;
- mAverageEUOutput[mAverageEUOutputIndex] = 0;
- }
- case 9:
- tCode++;
- mMetaTileEntity.onPreTick(this, mTickTimer);
- if (!hasValidMetaTileEntity()) {
- mRunningThroughTick = false;
- return;
- }
- case 10:
- tCode++;
- if (isServerSide()) {
- if (mRedstone != oRedstone || mTickTimer == 10) {
- for (byte i = 0; i < 6; i++)
- mCoverBehaviors[i] = GregTech_API.getCoverBehavior(mCoverSides[i]);
- oRedstone = mRedstone;
- issueBlockUpdate();
- }
-
- if (xCoord != oX || yCoord != oY || zCoord != oZ) {
- oX = xCoord;
- oY = yCoord;
- oZ = zCoord;
- issueClientUpdate();
- clearTileEntityBuffer();
- }
-
- if (mFacing != oFacing) {
- oFacing = mFacing;
- for (byte i = 0; i < 6; i++)
- if (getCoverIDAtSide(i) != 0)
- if (!mMetaTileEntity.allowCoverOnSide(i, new GT_ItemStack(getCoverIDAtSide(i))))
- dropCover(i, i, true);
- issueBlockUpdate();
- }
-
- if (mTickTimer > 20 && mMetaTileEntity.isElectric()) {
- mAcceptedAmperes = 0;
-
- if (getOutputVoltage() != oOutput) {
- oOutput = getOutputVoltage();
- }
-
- if (mMetaTileEntity.isEnetOutput() || mMetaTileEntity.isEnetInput()) {
- for (byte i = 0; i < 6; i++) {
- boolean
- temp = isEnergyInputSide(i);
- if (temp != mActiveEUInputs[i]) {
- mActiveEUInputs[i] = temp;
- }
- temp = isEnergyOutputSide(i);
- if (temp != mActiveEUOutputs[i]) {
- mActiveEUOutputs[i] = temp;
- }
- }
- }
-
-
-
- if (mMetaTileEntity.isEnetOutput() && oOutput > 0) {
- long tOutputVoltage = oOutput, tUsableAmperage = Math.min(getOutputAmperage(), (getStoredEU() - mMetaTileEntity.getMinimumStoredEU()) / tOutputVoltage);
- if (tUsableAmperage > 0) {
- long tEU = tOutputVoltage * IEnergyConnected.Util.emitEnergyToNetwork(oOutput, tUsableAmperage, this);
- mAverageEUOutput[mAverageEUOutputIndex] += tEU;
- decreaseStoredEU(tEU, true);
- }
- }
-
-
- if (getEUCapacity() > 0) {
- if (GregTech_API.sMachineFireExplosions && getRandomNumber(1000) == 0) {
- Block tBlock = getBlockAtSide((byte) getRandomNumber(6));
- if (tBlock != null && tBlock instanceof BlockFire) doEnergyExplosion();
- }
-
- if (!hasValidMetaTileEntity()) {
- mRunningThroughTick = false;
- return;
- }
-
- if (getRandomNumber(1000) == 0) {
- if ((getCoverIDAtSide((byte) 1) == 0 && worldObj.getPrecipitationHeight(xCoord, zCoord) - 2 < yCoord)
- || (getCoverIDAtSide((byte) 2) == 0 && worldObj.getPrecipitationHeight(xCoord, zCoord - 1) - 1 < yCoord)
- || (getCoverIDAtSide((byte) 3) == 0 && worldObj.getPrecipitationHeight(xCoord, zCoord + 1) - 1 < yCoord)
- || (getCoverIDAtSide((byte) 4) == 0 && worldObj.getPrecipitationHeight(xCoord - 1, zCoord) - 1 < yCoord)
- || (getCoverIDAtSide((byte) 5) == 0 && worldObj.getPrecipitationHeight(xCoord + 1, zCoord) - 1 < yCoord)) {
- if (GregTech_API.sMachineRainExplosions && worldObj.isRaining() && getBiome().rainfall > 0) {
- if (getRandomNumber(10) == 0) {
- try {
- GT_Mod.instance.achievements.issueAchievement(this.getWorldObj().getPlayerEntityByName(mOwnerName), "badweather");
- } catch (Exception e) {
- }
- doEnergyExplosion();
- } else setOnFire();
- }
- if (!hasValidMetaTileEntity()) {
- mRunningThroughTick = false;
- return;
- }
- if (GregTech_API.sMachineThunderExplosions && worldObj.isThundering() && getBiome().rainfall > 0 && getRandomNumber(3) == 0) {
- try {
- GT_Mod.instance.achievements.issueAchievement(this.getWorldObj().getPlayerEntityByName(mOwnerName), "badweather");
- } catch (Exception e) {
- }
- doEnergyExplosion();
- }
- }
- }
- }
- }
-
- if (!hasValidMetaTileEntity()) {
- mRunningThroughTick = false;
- return;
- }
- }
- case 11:
- tCode++;
- if (isServerSide()) {
- if (mMetaTileEntity.dechargerSlotCount() > 0 && getStoredEU() < getEUCapacity()) {
- for (int i = mMetaTileEntity.dechargerSlotStartIndex(), k = mMetaTileEntity.dechargerSlotCount() + i; i < k; i++) {
- if (mMetaTileEntity.mInventory[i] != null && getStoredEU() < getEUCapacity()) {
- dischargeItem(mMetaTileEntity.mInventory[i]);
- if (mMetaTileEntity.mInventory[i].stackSize <= 0)
- mMetaTileEntity.mInventory[i] = null;
- mInventoryChanged = true;
- }
- }
- }
- }
- case 12:
- tCode++;
- if (isServerSide()) {
- if (mMetaTileEntity.rechargerSlotCount() > 0 && getStoredEU() > 0) {
- for (int i = mMetaTileEntity.rechargerSlotStartIndex(), k = mMetaTileEntity.rechargerSlotCount() + i; i < k; i++) {
- if (getStoredEU() > 0 && mMetaTileEntity.mInventory[i] != null) {
- chargeItem(mMetaTileEntity.mInventory[i]);
- if (mMetaTileEntity.mInventory[i].stackSize <= 0)
- mMetaTileEntity.mInventory[i] = null;
- mInventoryChanged = true;
- }
- }
- }
- }
- case 13:
- tCode++;
- updateStatus();
- if (!hasValidMetaTileEntity()) {
- mRunningThroughTick = false;
- return;
- }
- case 14:
- tCode++;
- mMetaTileEntity.onPostTick(this, mTickTimer);
- if (!hasValidMetaTileEntity()) {
- mRunningThroughTick = false;
- return;
- }
- case 15:
- tCode++;
- if (isServerSide()) {
- if (mTickTimer % 10 == 0) {
- if (mSendClientData) {
- NW.sendPacketToAllPlayersInRange(worldObj, new GT_Packet_TileEntity(xCoord, (short) yCoord, zCoord, mID, mCoverSides[0], mCoverSides[1], mCoverSides[2], mCoverSides[3], mCoverSides[4], mCoverSides[5], oTextureData = (byte) ((mFacing & 7) | (mActive ? 8 : 0) | (mRedstone ? 16 : 0) | (mLockUpgrade ? 32 : 0)), oUpdateData = hasValidMetaTileEntity() ? mMetaTileEntity.getUpdateData() : 0, oRedstoneData = (byte) (((mSidedRedstone[0] > 0) ? 1 : 0) | ((mSidedRedstone[1] > 0) ? 2 : 0) | ((mSidedRedstone[2] > 0) ? 4 : 0) | ((mSidedRedstone[3] > 0) ? 8 : 0) | ((mSidedRedstone[4] > 0) ? 16 : 0) | ((mSidedRedstone[5] > 0) ? 32 : 0)), oColor = mColor), xCoord, zCoord);
- mSendClientData = false;
- }
- }
-
- if (mTickTimer > 10) {
- byte tData = (byte) ((mFacing & 7) | (mActive ? 8 : 0) | (mRedstone ? 16 : 0) | (mLockUpgrade ? 32 : 0));
- if (tData != oTextureData) sendBlockEvent((byte) 0, oTextureData = tData);
- tData = mMetaTileEntity.getUpdateData();
- if (tData != oUpdateData) sendBlockEvent((byte) 1, oUpdateData = tData);
- if (mColor != oColor) sendBlockEvent((byte) 2, oColor = mColor);
- tData = (byte) (((mSidedRedstone[0] > 0) ? 1 : 0) | ((mSidedRedstone[1] > 0) ? 2 : 0) | ((mSidedRedstone[2] > 0) ? 4 : 0) | ((mSidedRedstone[3] > 0) ? 8 : 0) | ((mSidedRedstone[4] > 0) ? 16 : 0) | ((mSidedRedstone[5] > 0) ? 32 : 0));
- if (tData != oRedstoneData) sendBlockEvent((byte) 3, oRedstoneData = tData);
- if (mLightValue != oLightValue) {
- worldObj.setLightValue(EnumSkyBlock.Block, xCoord, yCoord, zCoord, mLightValue);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord + 1, yCoord, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord - 1, yCoord, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord + 1, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord - 1, zCoord);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord, zCoord + 1);
- worldObj.updateLightByType(EnumSkyBlock.Block, xCoord, yCoord, zCoord - 1);
- issueTextureUpdate();
- sendBlockEvent((byte) 7, oLightValue = mLightValue);
- }
- }
-
- if (mNeedsBlockUpdate) {
- worldObj.notifyBlocksOfNeighborChange(xCoord, yCoord, zCoord, getBlockOffset(0, 0, 0));
- mNeedsBlockUpdate = false;
- }
- }
- default:
- tCode = -1;
- break;
- }
- } catch (Throwable e) {
- GT_Log.err.println("Encountered Exception while ticking MetaTileEntity in Step " + (tCode - 1) + ". The Game should've crashed now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
- }
-
- if (isServerSide() && hasValidMetaTileEntity()) {
- tTime = System.currentTimeMillis() - tTime;
- if (mTimeStatistics.length > 0)
- mTimeStatistics[mTimeStatisticsIndex = (mTimeStatisticsIndex + 1) % mTimeStatistics.length] = (int) tTime;
- if (tTime > 0 && tTime > GregTech_API.MILLISECOND_THRESHOLD_UNTIL_LAG_WARNING && mTickTimer > 1000 && getMetaTileEntity().doTickProfilingMessageDuringThisTick() && mLagWarningCount++ < 10)
- System.out.println("WARNING: Possible Lag Source at [" + xCoord + ", " + yCoord + ", " + zCoord + "] in Dimension " + worldObj.provider.dimensionId + " with " + tTime + "ms caused by an instance of " + getMetaTileEntity().getClass());
- }
-
- mWorkUpdate = mInventoryChanged = mRunningThroughTick = false;
- }
-
- @Override
- public Packet getDescriptionPacket() {
- issueClientUpdate();
- return null;
- }
-
- public final void receiveMetaTileEntityData(short aID, int aCover0, int aCover1, int aCover2, int aCover3, int aCover4, int aCover5, byte aTextureData, byte aUpdateData, byte aRedstoneData, byte aColorData) {
- issueTextureUpdate();
- if (mID != aID && aID > 0) {
- mID = aID;
- createNewMetatileEntity(mID);
- }
-
- mCoverSides[0] = aCover0;
- mCoverSides[1] = aCover1;
- mCoverSides[2] = aCover2;
- mCoverSides[3] = aCover3;
- mCoverSides[4] = aCover4;
- mCoverSides[5] = aCover5;
-
- for (byte i = 0; i < 6; i++) mCoverBehaviors[i] = GregTech_API.getCoverBehavior(mCoverSides[i]);
-
- receiveClientEvent(0, aTextureData);
- receiveClientEvent(1, aUpdateData);
- receiveClientEvent(2, aColorData);
- receiveClientEvent(3, aRedstoneData);
- }
-
- @Override
- public boolean receiveClientEvent(int aEventID, int aValue) {
- super.receiveClientEvent(aEventID, aValue);
-
- if (hasValidMetaTileEntity()) {
- try {
- mMetaTileEntity.receiveClientEvent((byte) aEventID, (byte) aValue);
- } catch (Throwable e) {
- GT_Log.err.println("Encountered Exception while receiving Data from the Server, the Client should've been crashed by now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
- }
-
- if (isClientSide()) {
- issueTextureUpdate();
- switch (aEventID) {
- case 0:
- mFacing = (byte) (aValue & 7);
- mActive = ((aValue & 8) != 0);
- mRedstone = ((aValue & 16) != 0);
- //mLockUpgrade = ((aValue&32) != 0);
- break;
- case 1:
- if (hasValidMetaTileEntity()) mMetaTileEntity.onValueUpdate((byte) aValue);
- break;
- case 2:
- if (aValue > 16 || aValue < 0) aValue = 0;
- mColor = (byte) aValue;
- break;
- case 3:
- mSidedRedstone[0] = (byte) ((aValue & 1) > 0 ? 15 : 0);
- mSidedRedstone[1] = (byte) ((aValue & 2) > 0 ? 15 : 0);
- mSidedRedstone[2] = (byte) ((aValue & 4) > 0 ? 15 : 0);
- mSidedRedstone[3] = (byte) ((aValue & 8) > 0 ? 15 : 0);
- mSidedRedstone[4] = (byte) ((aValue & 16) > 0 ? 15 : 0);
- mSidedRedstone[5] = (byte) ((aValue & 32) > 0 ? 15 : 0);
- break;
- case 4:
- if (hasValidMetaTileEntity() && mTickTimer > 20)
- mMetaTileEntity.doSound((byte) aValue, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5);
- break;
- case 5:
- if (hasValidMetaTileEntity() && mTickTimer > 20)
- mMetaTileEntity.startSoundLoop((byte) aValue, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5);
- break;
- case 6:
- if (hasValidMetaTileEntity() && mTickTimer > 20)
- mMetaTileEntity.stopSoundLoop((byte) aValue, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5);
- break;
- case 7:
- mLightValue = (byte) aValue;
- break;
- }
- }
- return true;
- }
-
- public ArrayList<String> getDebugInfo(EntityPlayer aPlayer, int aLogLevel) {
- ArrayList<String> tList = new ArrayList<String>();
- if (aLogLevel > 2) {
- tList.add("Meta-ID: " + mID + (canAccessData() ? " valid" : " invalid") + (mMetaTileEntity == null ? " MetaTileEntity == null!" : " "));
- }
- if (aLogLevel > 1) {
- if (mTimeStatistics.length > 0) {
- double tAverageTime = 0;
- for (int tTime : mTimeStatistics) tAverageTime += tTime;
- tList.add("This particular TileEntity has caused an average CPU-load of ~" + (tAverageTime / mTimeStatistics.length) + "ms over the last " + mTimeStatistics.length + " ticks.");
- }
- if (mLagWarningCount > 0) {
- tList.add("This TileEntity has also caused " + (mLagWarningCount >= 10 ? "more than 10" : mLagWarningCount) + " Lag Spike Warnings (anything taking longer than " + GregTech_API.MILLISECOND_THRESHOLD_UNTIL_LAG_WARNING + "ms) on the Server.");
- }
- tList.add("Is" + (mMetaTileEntity.isAccessAllowed(aPlayer) ? " " : " not ") + "accessible for you");
- }
- if (aLogLevel > 0) {
- if (getSteamCapacity() > 0 && hasSteamEngineUpgrade())
- tList.add(getStoredSteam() + " of " + getSteamCapacity() + " Steam");
- tList.add("Machine is " + (mActive ? "active" : "inactive"));
- if (!mHasEnoughEnergy)
- tList.add("ATTENTION: This Device consumes Energy at a higher Rate than you input. You could insert more to speed up the process.");
- }
- return mMetaTileEntity.getSpecialDebugInfo(this, aPlayer, aLogLevel, tList);
- }
-
- @Override
- public void issueTextureUpdate() {
- mNeedsUpdate = true;
- }
-
- @Override
- public void issueBlockUpdate() {
- mNeedsBlockUpdate = true;
- }
-
- @Override
- public void issueClientUpdate() {
- mSendClientData = true;
- }
-
- @Override
- public void issueCoverUpdate(byte aSide) {
- issueClientUpdate();
- }
-
- @Override
- public byte getStrongestRedstone() {
- return (byte) Math.max(getInternalInputRedstoneSignal((byte) 0), Math.max(getInternalInputRedstoneSignal((byte) 1), Math.max(getInternalInputRedstoneSignal((byte) 2), Math.max(getInternalInputRedstoneSignal((byte) 3), Math.max(getInternalInputRedstoneSignal((byte) 4), getInternalInputRedstoneSignal((byte) 5))))));
- }
-
- @Override
- public boolean getRedstone() {
- return getRedstone((byte) 0) || getRedstone((byte) 1) || getRedstone((byte) 2) || getRedstone((byte) 3) || getRedstone((byte) 4) || getRedstone((byte) 5);
- }
-
- @Override
- public boolean getRedstone(byte aSide) {
- return getInternalInputRedstoneSignal(aSide) > 0;
- }
-
- public ITexture getCoverTexture(byte aSide) {
- return GregTech_API.sCovers.get(new GT_ItemStack(getCoverIDAtSide(aSide)));
- }
-
- @Override
- public boolean isGivingInformation() {
- if (canAccessData()) return mMetaTileEntity.isGivingInformation();
- return false;
- }
-
- @Override
- public boolean isValidFacing(byte aSide) {
- if (canAccessData()) return mMetaTileEntity.isFacingValid(aSide);
- return false;
- }
-
- @Override
- public byte getBackFacing() {
- return GT_Utility.getOppositeSide(mFacing);
- }
-
- @Override
- public byte getFrontFacing() {
- return mFacing;
- }
-
- @Override
- public void setFrontFacing(byte aFacing) {
- if (isValidFacing(aFacing)) {
- mFacing = aFacing;
- mMetaTileEntity.onFacingChange();
- onMachineBlockUpdate();
- }
- }
-
- @Override
- public int getSizeInventory() {
- if (canAccessData()) return mMetaTileEntity.getSizeInventory();
- return 0;
- }
-
- @Override
- public ItemStack getStackInSlot(int aIndex) {
- if (canAccessData()) return mMetaTileEntity.getStackInSlot(aIndex);
- return null;
- }
-
- @Override
- public void setInventorySlotContents(int aIndex, ItemStack aStack) {
- mInventoryChanged = true;
- if (canAccessData())
- mMetaTileEntity.setInventorySlotContents(aIndex, worldObj.isRemote ? aStack : GT_OreDictUnificator.setStack(true, aStack));
- }
-
- @Override
- public String getInventoryName() {
- if (canAccessData()) return mMetaTileEntity.getInventoryName();
- if (GregTech_API.METATILEENTITIES[mID] != null) return GregTech_API.METATILEENTITIES[mID].getInventoryName();
- return "";
- }
-
- @Override
- public int getInventoryStackLimit() {
- if (canAccessData()) return mMetaTileEntity.getInventoryStackLimit();
- return 64;
- }
-
- @Override
- public void openInventory() {
- if (canAccessData()) mMetaTileEntity.onOpenGUI();
- }
-
- @Override
- public void closeInventory() {
- if (canAccessData()) mMetaTileEntity.onCloseGUI();
- }
-
- @Override
- public boolean isUseableByPlayer(EntityPlayer aPlayer) {
- return canAccessData() && playerOwnsThis(aPlayer, false) && mTickTimer > 40 && getTileEntityOffset(0, 0, 0) == this && aPlayer.getDistanceSq(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5) < 64 && mMetaTileEntity.isAccessAllowed(aPlayer);
- }
-
- @Override
- public void validate() {
- super.validate();
- mTickTimer = 0;
- }
-
- @Override
- public void invalidate() {
- tileEntityInvalid = false;
- if (canAccessData()) {
- mMetaTileEntity.onRemoval();
- mMetaTileEntity.setBaseMetaTileEntity(null);
- }
- super.invalidate();
- }
-
- @Override
- public void onChunkUnload() {
- super.onChunkUnload();
- }
-
- @Override
- public boolean hasCustomInventoryName() {
- return false;
- }
-
- @Override
- public ItemStack getStackInSlotOnClosing(int slot) {
- ItemStack stack = getStackInSlot(slot);
- if (stack != null) setInventorySlotContents(slot, null);
- return stack;
- }
-
- @Override
- public void onMachineBlockUpdate() {
- if (canAccessData()) mMetaTileEntity.onMachineBlockUpdate();
- }
-
- @Override
- public int getProgress() {
- return canAccessData() ? mMetaTileEntity.getProgresstime() : 0;
- }
-
- @Override
- public int getMaxProgress() {
- return canAccessData() ? mMetaTileEntity.maxProgresstime() : 0;
- }
-
- @Override
- public boolean increaseProgress(int aProgressAmountInTicks) {
- return canAccessData() ? mMetaTileEntity.increaseProgress(aProgressAmountInTicks) != aProgressAmountInTicks : false;
- }
-
- @Override
- public boolean hasThingsToDo() {
- return getMaxProgress() > 0;
- }
-
- @Override
- public void enableWorking() {
- if (!mWorks) mWorkUpdate = true;
- mWorks = true;
- }
-
- @Override
- public void disableWorking() {
- mWorks = false;
- }
-
- @Override
- public boolean isAllowedToWork() {
- return mWorks;
- }
-
- @Override
- public boolean hasWorkJustBeenEnabled() {
- return mWorkUpdate;
- }
-
- @Override
- public byte getWorkDataValue() {
- return mWorkData;
- }
-
- @Override
- public void setWorkDataValue(byte aValue) {
- mWorkData = aValue;
- }
-
- @Override
- public int getMetaTileID() {
- return mID;
- }
-
- @Override
- public int setMetaTileID(short aID) {
- return mID = aID;
- }
-
- @Override
- public boolean isActive() {
- return mActive;
- }
-
- @Override
- public void setActive(boolean aActive) {
- mActive = aActive;
- }
-
- @Override
- public long getTimer() {
- return mTickTimer;
- }
-
- @Override
- public boolean decreaseStoredEnergyUnits(long aEnergy, boolean aIgnoreTooLessEnergy) {
- if (!canAccessData()) return false;
- return mHasEnoughEnergy = decreaseStoredEU(aEnergy, aIgnoreTooLessEnergy) || decreaseStoredSteam(aEnergy, false) || (aIgnoreTooLessEnergy && (decreaseStoredSteam(aEnergy, true)));
- }
-
- @Override
- public boolean increaseStoredEnergyUnits(long aEnergy, boolean aIgnoreTooMuchEnergy) {
- if (!canAccessData()) return false;
- if (getStoredEU() < getEUCapacity() || aIgnoreTooMuchEnergy) {
- setStoredEU(mMetaTileEntity.getEUVar() + aEnergy);
- return true;
- }
- return false;
- }
-
- @Override
- public boolean inputEnergyFrom(byte aSide) {
- if (aSide == 6) return true;
- if (isServerSide()) return (aSide >= 0 && aSide < 6 ? mActiveEUInputs[aSide] : false) && !mReleaseEnergy;
- return isEnergyInputSide(aSide);
- }
-
- @Override
- public boolean outputsEnergyTo(byte aSide) {
- if (aSide == 6) return true;
- if (isServerSide()) return (aSide >= 0 && aSide < 6 ? mActiveEUOutputs[aSide] : false) || mReleaseEnergy;
- return isEnergyOutputSide(aSide);
- }
-
- @Override
- public long getOutputAmperage() {
- if (canAccessData() && mMetaTileEntity.isElectric()) return mMetaTileEntity.maxAmperesOut();
- return 0;
- }
-
- @Override
- public long getOutputVoltage() {
- if (canAccessData() && mMetaTileEntity.isElectric() && mMetaTileEntity.isEnetOutput())
- return mMetaTileEntity.maxEUOutput();
- return 0;
- }
-
- @Override
- public long getInputAmperage() {
- if (canAccessData() && mMetaTileEntity.isElectric()) return mMetaTileEntity.maxAmperesIn();
- return 0;
- }
-
- @Override
- public long getInputVoltage() {
- if (canAccessData() && mMetaTileEntity.isElectric()) return mMetaTileEntity.maxEUInput();
- return Integer.MAX_VALUE;
- }
-
- @Override
- public boolean increaseStoredSteam(long aEnergy, boolean aIgnoreTooMuchEnergy) {
- if (!canAccessData()) return false;
- if (mMetaTileEntity.getSteamVar() < getSteamCapacity() || aIgnoreTooMuchEnergy) {
- setStoredSteam(mMetaTileEntity.getSteamVar() + aEnergy);
- return true;
- }
- return false;
- }
-
- @Override
- public String[] getDescription() {
- if (canAccessData()) return mMetaTileEntity.getDescription();
- return new String[0];
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- if (canAccessData()) return mMetaTileEntity.isValidSlot(aIndex);
- return false;
- }
-
- @Override
- public long getUniversalEnergyStored() {
- return Math.max(getStoredEU(), getStoredSteam());
- }
-
- @Override
- public long getUniversalEnergyCapacity() {
- return Math.max(getEUCapacity(), getSteamCapacity());
- }
-
- @Override
- public long getStoredEU() {
- if (canAccessData()) return Math.min(mMetaTileEntity.getEUVar(), getEUCapacity());
- return 0;
- }
-
- @Override
- public long getEUCapacity() {
- if (canAccessData()) return mMetaTileEntity.maxEUStore();
- return 0;
- }
-
- @Override
- public long getStoredSteam() {
- if (canAccessData()) return Math.min(mMetaTileEntity.getSteamVar(), getSteamCapacity());
- return 0;
- }
-
- @Override
- public long getSteamCapacity() {
- if (canAccessData()) return mMetaTileEntity.maxSteamStore();
- return 0;
- }
-
- @Override
- public ITexture[] getTexture(byte aSide) {
- ITexture rIcon = getCoverTexture(aSide);
- if (rIcon != null) return new ITexture[]{rIcon};
- if (hasValidMetaTileEntity())
- return mMetaTileEntity.getTexture(this, aSide, mFacing, (byte) (mColor - 1), mActive, getOutputRedstoneSignal(aSide) > 0);
- return Textures.BlockIcons.ERROR_RENDERING;
- }
-
- private boolean isEnergyInputSide(byte aSide) {
- if (aSide >= 0 && aSide < 6) {
- if (!getCoverBehaviorAtSide(aSide).letsEnergyIn(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this))
- return false;
- if (isInvalid() || mReleaseEnergy) return false;
- if (canAccessData() && mMetaTileEntity.isElectric() && mMetaTileEntity.isEnetInput())
- return mMetaTileEntity.isInputFacing(aSide);
- }
- return false;
- }
-
- private boolean isEnergyOutputSide(byte aSide) {
- if (aSide >= 0 && aSide < 6) {
- if (!getCoverBehaviorAtSide(aSide).letsEnergyOut(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this))
- return false;
- if (isInvalid() || mReleaseEnergy) return mReleaseEnergy;
- if (canAccessData() && mMetaTileEntity.isElectric() && mMetaTileEntity.isEnetOutput())
- return mMetaTileEntity.isOutputFacing(aSide);
- }
- return false;
- }
-
- protected boolean hasValidMetaTileEntity() {
- return mMetaTileEntity != null && mMetaTileEntity.getBaseMetaTileEntity() == this;
- }
-
- protected boolean canAccessData() {
- return !isDead && hasValidMetaTileEntity();
- }
-
- public boolean setStoredEU(long aEnergy) {
- if (!canAccessData()) return false;
- if (aEnergy < 0) aEnergy = 0;
- mMetaTileEntity.setEUVar(aEnergy);
- return true;
- }
-
- public boolean setStoredSteam(long aEnergy) {
- if (!canAccessData()) return false;
- if (aEnergy < 0) aEnergy = 0;
- mMetaTileEntity.setSteamVar(aEnergy);
- return true;
- }
-
- public boolean decreaseStoredEU(long aEnergy, boolean aIgnoreTooLessEnergy) {
- if (!canAccessData()) {
- return false;
- }
- if (mMetaTileEntity.getEUVar() - aEnergy >= 0 || aIgnoreTooLessEnergy) {
- setStoredEU(mMetaTileEntity.getEUVar() - aEnergy);
- if (mMetaTileEntity.getEUVar() < 0) {
- setStoredEU(0);
- return false;
- }
- return true;
- }
- return false;
- }
-
- public boolean decreaseStoredSteam(long aEnergy, boolean aIgnoreTooLessEnergy) {
- if (!canAccessData()) return false;
- if (mMetaTileEntity.getSteamVar() - aEnergy >= 0 || aIgnoreTooLessEnergy) {
- setStoredSteam(mMetaTileEntity.getSteamVar() - aEnergy);
- if (mMetaTileEntity.getSteamVar() < 0) {
- setStoredSteam(0);
- return false;
- }
- return true;
- }
- return false;
- }
-
- public boolean playerOwnsThis(EntityPlayer aPlayer, boolean aCheckPrecicely) {
- if (!canAccessData()) return false;
- if (aCheckPrecicely || privateAccess() || mOwnerName.equals(""))
- if (mOwnerName.equals("") && isServerSide()) setOwnerName(aPlayer.getDisplayName());
- else if (privateAccess() && !aPlayer.getDisplayName().equals("Player") && !mOwnerName.equals("Player") && !mOwnerName.equals(aPlayer.getDisplayName()))
- return false;
- return true;
- }
-
- public boolean privateAccess() {
- if (!canAccessData()) return mLockUpgrade;
- return mLockUpgrade || mMetaTileEntity.ownerControl();
- }
-
- public void doEnergyExplosion() {
- if (getUniversalEnergyCapacity() > 0 && getUniversalEnergyStored() >= getUniversalEnergyCapacity() / 5) {
- doExplosion(oOutput * (getUniversalEnergyStored() >= getUniversalEnergyCapacity() ? 4 : getUniversalEnergyStored() >= getUniversalEnergyCapacity() / 2 ? 2 : 1));
- GT_Mod.instance.achievements.issueAchievement(this.getWorldObj().getPlayerEntityByName(mOwnerName), "electricproblems");
- }
- }
-
- @Override
- public void doExplosion(long aAmount) {
- if (canAccessData()) {
- // This is only for Electric Machines
- if (GregTech_API.sMachineWireFire && mMetaTileEntity.isElectric()) {
- try {
- mReleaseEnergy = true;
- IEnergyConnected.Util.emitEnergyToNetwork(V[5], Math.max(1, getStoredEU() / V[5]), this);
- } catch (Exception e) {/* Fun Fact: all these "do nothing" Comments you see in my Code, are just there to let Eclipse shut up about the intended empty Brackets, but I need eclipse to yell at me in some of the regular Cases where I forget to add Code */}
- }
- mReleaseEnergy = false;
- // Normal Explosion Code
- mMetaTileEntity.onExplosion();
- mMetaTileEntity.doExplosion(aAmount);
- }
- }
-
- @Override
- public ArrayList<ItemStack> getDrops() {
- ItemStack rStack = new ItemStack(GregTech_API.sBlockMachines, 1, mID);
- NBTTagCompound tNBT = new NBTTagCompound();
- if (mRecipeStuff != null && !mRecipeStuff.hasNoTags()) tNBT.setTag("GT.CraftingComponents", mRecipeStuff);
- if (mMuffler) tNBT.setBoolean("mMuffler", mMuffler);
- if (mLockUpgrade) tNBT.setBoolean("mLockUpgrade", mLockUpgrade);
- if (mSteamConverter) tNBT.setBoolean("mSteamConverter", mSteamConverter);
- if (mColor > 0) tNBT.setByte("mColor", mColor);
- if (mOtherUpgrades > 0) tNBT.setByte("mOtherUpgrades", mOtherUpgrades);
- if (mStrongRedstone > 0) tNBT.setByte("mStrongRedstone", mStrongRedstone);
- for (byte i = 0; i < mCoverSides.length; i++) {
- if (mCoverSides[i] != 0) {
- tNBT.setIntArray("mCoverData", mCoverData);
- tNBT.setIntArray("mCoverSides", mCoverSides);
- break;
- }
- }
- if (hasValidMetaTileEntity()) mMetaTileEntity.setItemNBT(tNBT);
- if (!tNBT.hasNoTags()) rStack.setTagCompound(tNBT);
- return new ArrayList<ItemStack>(Arrays.asList(rStack));
- }
-
- public int getUpgradeCount() {
- return (mMuffler ? 1 : 0) + (mLockUpgrade ? 1 : 0) + (mSteamConverter ? 1 : 0) + mOtherUpgrades;
- }
-
- @Override
- public boolean onRightclick(EntityPlayer aPlayer, byte aSide, float aX, float aY, float aZ) {
- if (isClientSide()) {
- if (getCoverBehaviorAtSide(aSide).onCoverRightclickClient(aSide, this, aPlayer, aX, aY, aZ)) return true;
- if (!getCoverBehaviorAtSide(aSide).isGUIClickable(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this))
- return false;
- }
- if (isServerSide()) {
- if (!privateAccess() || aPlayer.getDisplayName().equalsIgnoreCase(getOwnerName())) {
- ItemStack tCurrentItem = aPlayer.inventory.getCurrentItem();
- if (tCurrentItem != null) {
- if (getColorization() >= 0 && GT_Utility.areStacksEqual(new ItemStack(Items.water_bucket, 1), tCurrentItem)) {
- tCurrentItem.func_150996_a(Items.bucket);
- setColorization((byte) (getColorization() >= 16 ? -2 : -1));
- return true;
- }
- if (GT_Utility.isStackInList(tCurrentItem, GregTech_API.sWrenchList)) {
- if (mMetaTileEntity.onWrenchRightClick(aSide, GT_Utility.determineWrenchingSide(aSide, aX, aY, aZ), aPlayer, aX, aY, aZ)) {
- GT_ModHandler.damageOrDechargeItem(tCurrentItem, 1, 1000, aPlayer);
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(100), 1.0F, -1, xCoord, yCoord, zCoord);
- }
- return true;
- }
-
- if (GT_Utility.isStackInList(tCurrentItem, GregTech_API.sScrewdriverList)) {
- if (GT_ModHandler.damageOrDechargeItem(tCurrentItem, 1, 200, aPlayer)) {
- setCoverDataAtSide(aSide, getCoverBehaviorAtSide(aSide).onCoverScrewdriverclick(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this, aPlayer, aX, aY, aZ));
- mMetaTileEntity.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(100), 1.0F, -1, xCoord, yCoord, zCoord);
- }
- return true;
- }
-
- if (GT_Utility.isStackInList(tCurrentItem, GregTech_API.sHardHammerList)) {
- if (GT_ModHandler.damageOrDechargeItem(tCurrentItem, 1, 1000, aPlayer)) {
- mInputDisabled = !mInputDisabled;
- if (mInputDisabled) mOutputDisabled = !mOutputDisabled;
- GT_Utility.sendChatToPlayer(aPlayer, "Auto-Input: " + (mInputDisabled ? "Disabled" : "Enabled") + " Auto-Output: " + (mOutputDisabled ? "Disabled" : "Enabled"));
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(1), 1.0F, -1, xCoord, yCoord, zCoord);
- }
- return true;
- }
-
- if (GT_Utility.isStackInList(tCurrentItem, GregTech_API.sSoftHammerList)) {
- if (GT_ModHandler.damageOrDechargeItem(tCurrentItem, 1, 1000, aPlayer)) {
- if (mWorks) disableWorking();
- else enableWorking();
- GT_Utility.sendChatToPlayer(aPlayer, "Machine Processing: " + (isAllowedToWork() ? "Enabled" : "Disabled"));
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(101), 1.0F, -1, xCoord, yCoord, zCoord);
- }
- return true;
- }
-
- if (GT_Utility.isStackInList(tCurrentItem, GregTech_API.sSolderingToolList)) {
- byte tSide = GT_Utility.determineWrenchingSide(aSide, aX, aY, aZ);
- if (GT_ModHandler.useSolderingIron(tCurrentItem, aPlayer)) {
- mStrongRedstone ^= (1 << tSide);
- GT_Utility.sendChatToPlayer(aPlayer, "Redstone Output at Side " + tSide + " set to: " + ((mStrongRedstone & (1 << tSide)) != 0 ? "Strong" : "Weak"));
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(103), 3.0F, -1, xCoord, yCoord, zCoord);
- }
- return true;
- }
-
- if (getCoverIDAtSide(aSide) == 0) {
- if (GregTech_API.sCovers.containsKey(new GT_ItemStack(tCurrentItem))) {
- if (GregTech_API.getCoverBehavior(tCurrentItem).isCoverPlaceable(aSide, new GT_ItemStack(tCurrentItem), this) && mMetaTileEntity.allowCoverOnSide(aSide, new GT_ItemStack(tCurrentItem))) {
- setCoverItemAtSide(aSide, tCurrentItem);
- if (!aPlayer.capabilities.isCreativeMode) tCurrentItem.stackSize--;
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(100), 1.0F, -1, xCoord, yCoord, zCoord);
- }
- return true;
- }
- } else {
- if (GT_Utility.isStackInList(tCurrentItem, GregTech_API.sCrowbarList)) {
- if (GT_ModHandler.damageOrDechargeItem(tCurrentItem, 1, 1000, aPlayer)) {
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(0), 1.0F, -1, xCoord, yCoord, zCoord);
- dropCover(aSide, aSide, false);
- }
- return true;
- }
- }
- }
-
- if (getCoverBehaviorAtSide(aSide).onCoverRightclick(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this, aPlayer, aX, aY, aZ))
- return true;
-
- if (!getCoverBehaviorAtSide(aSide).isGUIClickable(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this))
- return false;
-
- if (isUpgradable() && aPlayer.inventory.getCurrentItem() != null) {/*
- if (ItemList.Upgrade_SteamEngine.isStackEqual(aPlayer.inventory.getCurrentItem())) {
- if (addSteamEngineUpgrade()) {
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(3), 1.0F, -1, xCoord, yCoord, zCoord);
- if (!aPlayer.capabilities.isCreativeMode) aPlayer.inventory.getCurrentItem().stackSize--;
- }
- return true;
- }*/
- if (ItemList.Upgrade_Muffler.isStackEqual(aPlayer.inventory.getCurrentItem())) {
- if (addMufflerUpgrade()) {
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(3), 1.0F, -1, xCoord, yCoord, zCoord);
- if (!aPlayer.capabilities.isCreativeMode) aPlayer.inventory.getCurrentItem().stackSize--;
- }
- return true;
- }
- if (ItemList.Upgrade_Lock.isStackEqual(aPlayer.inventory.getCurrentItem())) {
- if (isUpgradable() && !mLockUpgrade) {
- mLockUpgrade = true;
- setOwnerName(aPlayer.getDisplayName());
- GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(3), 1.0F, -1, xCoord, yCoord, zCoord);
- if (!aPlayer.capabilities.isCreativeMode) aPlayer.inventory.getCurrentItem().stackSize--;
- }
- return true;
- }
- }
- }
- }
-
- try {
- if (hasValidMetaTileEntity()) return mMetaTileEntity.onRightclick(this, aPlayer, aSide, aX, aY, aZ);
- } catch (Throwable e) {
- GT_Log.err.println("Encountered Exception while rightclicking TileEntity, the Game should've crashed now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
-
- return true;
- }
-
- @Override
- public void onLeftclick(EntityPlayer aPlayer) {
- try {
- if (aPlayer != null && hasValidMetaTileEntity()) mMetaTileEntity.onLeftclick(this, aPlayer);
- } catch (Throwable e) {
- GT_Log.err.println("Encountered Exception while leftclicking TileEntity, the Game should've crashed now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!");
- e.printStackTrace(GT_Log.err);
- }
- }
-
- @Override
- public boolean isDigitalChest() {
- if (canAccessData()) return mMetaTileEntity.isDigitalChest();
- return false;
- }
-
- @Override
- public ItemStack[] getStoredItemData() {
- if (canAccessData()) return mMetaTileEntity.getStoredItemData();
- return null;
- }
-
- @Override
- public void setItemCount(int aCount) {
- if (canAccessData()) mMetaTileEntity.setItemCount(aCount);
- }
-
- @Override
- public int getMaxItemCount() {
- if (canAccessData()) return mMetaTileEntity.getMaxItemCount();
- return 0;
- }
-
- /**
- * Can put aStack into Slot
- */
- @Override
- public boolean isItemValidForSlot(int aIndex, ItemStack aStack) {
- return canAccessData() && mMetaTileEntity.isItemValidForSlot(aIndex, aStack);
- }
-
- /**
- * returns all valid Inventory Slots, no matter which Side (Unless it's covered).
- * The Side Stuff is done in the following two Functions.
- */
- @Override
- public int[] getAccessibleSlotsFromSide(int aSide) {
- if (canAccessData() && (getCoverBehaviorAtSide((byte) aSide).letsItemsOut((byte) aSide, getCoverIDAtSide((byte) aSide), getCoverDataAtSide((byte) aSide), -1, this) || getCoverBehaviorAtSide((byte) aSide).letsItemsIn((byte) aSide, getCoverIDAtSide((byte) aSide), getCoverDataAtSide((byte) aSide), -1, this)))
- return mMetaTileEntity.getAccessibleSlotsFromSide(aSide);
- return new int[0];
- }
-
- /**
- * Can put aStack into Slot at Side
- */
- @Override
- public boolean canInsertItem(int aIndex, ItemStack aStack, int aSide) {
- return canAccessData() && (mRunningThroughTick || !mInputDisabled) && getCoverBehaviorAtSide((byte) aSide).letsItemsIn((byte) aSide, getCoverIDAtSide((byte) aSide), getCoverDataAtSide((byte) aSide), aIndex, this) && mMetaTileEntity.canInsertItem(aIndex, aStack, aSide);
- }
-
- /**
- * Can pull aStack out of Slot from Side
- */
- @Override
- public boolean canExtractItem(int aIndex, ItemStack aStack, int aSide) {
- return canAccessData() && (mRunningThroughTick || !mOutputDisabled) && getCoverBehaviorAtSide((byte) aSide).letsItemsOut((byte) aSide, getCoverIDAtSide((byte) aSide), getCoverDataAtSide((byte) aSide), aIndex, this) && mMetaTileEntity.canExtractItem(aIndex, aStack, aSide);
- }
-
- @Override
- public boolean isUpgradable() {
- return canAccessData() && getUpgradeCount() < 8;
- }
-
- @Override
- public byte getInternalInputRedstoneSignal(byte aSide) {
- return (byte) (getCoverBehaviorAtSide(aSide).getRedstoneInput(aSide, getInputRedstoneSignal(aSide), getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this) & 15);
- }
-
- @Override
- public byte getInputRedstoneSignal(byte aSide) {
- return (byte) (worldObj.getIndirectPowerLevelTo(getOffsetX(aSide, 1), getOffsetY(aSide, 1), getOffsetZ(aSide, 1), aSide) & 15);
- }
-
- @Override
- public byte getOutputRedstoneSignal(byte aSide) {
- return getCoverBehaviorAtSide(aSide).manipulatesSidedRedstoneOutput(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this) ? mSidedRedstone[aSide] : 0;
-// return (byte)(getCoverBehaviorAtSide(aSide).manipulatesSidedRedstoneOutput(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this) || (mRedstone && getCoverBehaviorAtSide(aSide).letsRedstoneGoOut(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this))?mSidedRedstone[aSide]&15:0);
- }
-
- @Override
- public void setInternalOutputRedstoneSignal(byte aSide, byte aStrength) {
- if (!getCoverBehaviorAtSide(aSide).manipulatesSidedRedstoneOutput(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this))
- setOutputRedstoneSignal(aSide, aStrength);
- }
-
- @Override
- public void setOutputRedstoneSignal(byte aSide, byte aStrength) {
- aStrength = (byte) Math.min(Math.max(0, aStrength), 15);
- if (aSide >= 0 && aSide < 6 && mSidedRedstone[aSide] != aStrength) {
- mSidedRedstone[aSide] = aStrength;
- issueBlockUpdate();
- }
- }
-
- @Override
- public boolean isSteamEngineUpgradable() {
- return isUpgradable() && !hasSteamEngineUpgrade() && getSteamCapacity() > 0;
- }
-
- @Override
- public boolean addSteamEngineUpgrade() {
- if (isSteamEngineUpgradable()) {
- issueBlockUpdate();
- mSteamConverter = true;
- return true;
- }
- return false;
- }
-
- @Override
- public boolean hasSteamEngineUpgrade() {
- if (canAccessData() && mMetaTileEntity.isSteampowered()) return true;
- return mSteamConverter;
- }
-
- @Override
- public boolean hasMufflerUpgrade() {
- return mMuffler;
- }
-
- @Override
- public boolean isMufflerUpgradable() {
- return isUpgradable() && !hasMufflerUpgrade();
- }
-
- @Override
- public boolean addMufflerUpgrade() {
- if (isMufflerUpgradable()) return mMuffler = true;
- return false;
- }
-
- @Override
- public boolean hasInventoryBeenModified() {
- return mInventoryChanged;
- }
-
- @Override
- public void setGenericRedstoneOutput(boolean aOnOff) {
- mRedstone = aOnOff;
- }
-
- @Override
- public int getErrorDisplayID() {
- return mDisplayErrorCode;
- }
-
- @Override
- public void setErrorDisplayID(int aErrorID) {
- mDisplayErrorCode = aErrorID;
- }
-
- @Override
- public IMetaTileEntity getMetaTileEntity() {
- return hasValidMetaTileEntity() ? mMetaTileEntity : null;
- }
-
- @Override
- public void setMetaTileEntity(IMetaTileEntity aMetaTileEntity) {
- mMetaTileEntity = (MetaTileEntity) aMetaTileEntity;
- }
-
- @Override
- public GT_CoverBehavior getCoverBehaviorAtSide(byte aSide) {
- return aSide >= 0 && aSide < mCoverBehaviors.length ? mCoverBehaviors[aSide] : GregTech_API.sNoBehavior;
- }
-
- @Override
- public void setCoverIDAtSide(byte aSide, int aID) {
- if (aSide >= 0 && aSide < 6) {
- mCoverSides[aSide] = aID;
- mCoverData[aSide] = 0;
- mCoverBehaviors[aSide] = GregTech_API.getCoverBehavior(aID);
- issueCoverUpdate(aSide);
- issueBlockUpdate();
- }
- }
-
- @Override
- public void setCoverItemAtSide(byte aSide, ItemStack aCover) {
- GregTech_API.getCoverBehavior(aCover).placeCover(aSide, aCover, this);
- }
-
- @Override
- public int getCoverIDAtSide(byte aSide) {
- if (aSide >= 0 && aSide < 6) return mCoverSides[aSide];
- return 0;
- }
-
- @Override
- public ItemStack getCoverItemAtSide(byte aSide) {
- return GT_Utility.intToStack(getCoverIDAtSide(aSide));
- }
-
- @Override
- public boolean canPlaceCoverIDAtSide(byte aSide, int aID) {
- return getCoverIDAtSide(aSide) == 0;
- }
-
- @Override
- public boolean canPlaceCoverItemAtSide(byte aSide, ItemStack aCover) {
- return getCoverIDAtSide(aSide) == 0;
- }
-
- @Override
- public void setCoverDataAtSide(byte aSide, int aData) {
- if (aSide >= 0 && aSide < 6) mCoverData[aSide] = aData;
- }
-
- @Override
- public int getCoverDataAtSide(byte aSide) {
- if (aSide >= 0 && aSide < 6) return mCoverData[aSide];
- return 0;
- }
-
- public byte getLightValue() {
- return mLightValue;
- }
-
- @Override
- public void setLightValue(byte aLightValue) {
- mLightValue = (byte) (aLightValue & 15);
- }
-
- @Override
- public long getAverageElectricInput() {
- int rEU = 0;
- for (int tEU : mAverageEUInput) rEU += tEU;
- return rEU / mAverageEUInput.length;
- }
-
- @Override
- public long getAverageElectricOutput() {
- int rEU = 0;
- for (int tEU : mAverageEUOutput) rEU += tEU;
- return rEU / mAverageEUOutput.length;
- }
-
- @Override
- public boolean dropCover(byte aSide, byte aDroppedSide, boolean aForced) {
- if (getCoverBehaviorAtSide(aSide).onCoverRemoval(aSide, getCoverIDAtSide(aSide), mCoverData[aSide], this, aForced) || aForced) {
- ItemStack tStack = getCoverBehaviorAtSide(aSide).getDrop(aSide, getCoverIDAtSide(aSide), getCoverDataAtSide(aSide), this);
- if (tStack != null) {
- tStack.setTagCompound(null);
- EntityItem tEntity = new EntityItem(worldObj, getOffsetX(aDroppedSide, 1) + 0.5, getOffsetY(aDroppedSide, 1) + 0.5, getOffsetZ(aDroppedSide, 1) + 0.5, tStack);
- tEntity.motionX = 0;
- tEntity.motionY = 0;
- tEntity.motionZ = 0;
- worldObj.spawnEntityInWorld(tEntity);
- }
- setCoverIDAtSide(aSide, 0);
- if (mMetaTileEntity.hasSidedRedstoneOutputBehavior()) {
- setOutputRedstoneSignal(aSide, (byte) 0);
- } else {
- setOutputRedstoneSignal(aSide, (byte) 15);
- }
- return true;
- }
- return false;
- }
-
- @Override
- public String getOwnerName() {
- if (GT_Utility.isStringInvalid(mOwnerName)) return "Player";
- return mOwnerName;
- }
-
- @Override
- public String setOwnerName(String aName) {
- if (GT_Utility.isStringInvalid(aName)) return mOwnerName = "Player";
- return mOwnerName = aName;
- }
-
- @Override
- public byte getComparatorValue(byte aSide) {
- return canAccessData() ? mMetaTileEntity.getComparatorValue(aSide) : 0;
- }
-
- @Override
- public byte getStrongOutputRedstoneSignal(byte aSide) {
- return aSide >= 0 && aSide < 6 && (mStrongRedstone & (1 << aSide)) != 0 ? (byte) (mSidedRedstone[aSide] & 15) : 0;
- }
-
- @Override
- public void setStrongOutputRedstoneSignal(byte aSide, byte aStrength) {
- mStrongRedstone |= (1 << aSide);
- setOutputRedstoneSignal(aSide, aStrength);
- }
-
- @Override
- public ItemStack decrStackSize(int aIndex, int aAmount) {
- if (canAccessData()) {
- mInventoryChanged = true;
- return mMetaTileEntity.decrStackSize(aIndex, aAmount);
- }
- return null;
- }
-
- @Override
- public long injectEnergyUnits(byte aSide, long aVoltage, long aAmperage) {
- if (!canAccessData() || !mMetaTileEntity.isElectric() || !inputEnergyFrom(aSide) || aAmperage <= 0 || aVoltage <= 0 || getStoredEU() >= getEUCapacity() || mMetaTileEntity.maxAmperesIn() <= mAcceptedAmperes)
- return 0;
- if (aVoltage > getInputVoltage()) {
- doExplosion(aVoltage);
- return 0;
- }
- if (increaseStoredEnergyUnits(aVoltage * (aAmperage = Math.min(aAmperage, Math.min(mMetaTileEntity.maxAmperesIn() - mAcceptedAmperes, 1 + ((getEUCapacity() - getStoredEU()) / aVoltage)))), true)) {
- mAverageEUInput[mAverageEUInputIndex] += aVoltage * aAmperage;
- mAcceptedAmperes += aAmperage;
- return aAmperage;
- }
- return 0;
- }
-
- @Override
- public boolean drainEnergyUnits(byte aSide, long aVoltage, long aAmperage) {
- if (!canAccessData() || !mMetaTileEntity.isElectric() || !outputsEnergyTo(aSide) || getStoredEU() - (aVoltage * aAmperage) < mMetaTileEntity.getMinimumStoredEU())
- return false;
- if (decreaseStoredEU(aVoltage * aAmperage, false)) {
- mAverageEUOutput[mAverageEUOutputIndex] += aVoltage * aAmperage;
- return true;
- }
- return false;
- }
-
- @Override
- public boolean acceptsRotationalEnergy(byte aSide) {
- if (!canAccessData() || getCoverIDAtSide(aSide) != 0) return false;
- return mMetaTileEntity.acceptsRotationalEnergy(aSide);
- }
-
- @Override
- public boolean injectRotationalEnergy(byte aSide, long aSpeed, long aEnergy) {
- if (!canAccessData() || getCoverIDAtSide(aSide) != 0) return false;
- return mMetaTileEntity.injectRotationalEnergy(aSide, aSpeed, aEnergy);
- }
-
- @Override
- public int fill(ForgeDirection aSide, FluidStack aFluid, boolean doFill) {
- if (mTickTimer > 5 && canAccessData() && (mRunningThroughTick || !mInputDisabled) && (aSide == ForgeDirection.UNKNOWN || (mMetaTileEntity.isLiquidInput((byte) aSide.ordinal()) && getCoverBehaviorAtSide((byte) aSide.ordinal()).letsFluidIn((byte) aSide.ordinal(), getCoverIDAtSide((byte) aSide.ordinal()), getCoverDataAtSide((byte) aSide.ordinal()), aFluid == null ? null : aFluid.getFluid(), this))))
- return mMetaTileEntity.fill(aSide, aFluid, doFill);
- return 0;
- }
-
- @Override
- public FluidStack drain(ForgeDirection aSide, int maxDrain, boolean doDrain) {
- if (mTickTimer > 5 && canAccessData() && (mRunningThroughTick || !mOutputDisabled) && (aSide == ForgeDirection.UNKNOWN || (mMetaTileEntity.isLiquidOutput((byte) aSide.ordinal()) && getCoverBehaviorAtSide((byte) aSide.ordinal()).letsFluidOut((byte) aSide.ordinal(), getCoverIDAtSide((byte) aSide.ordinal()), getCoverDataAtSide((byte) aSide.ordinal()), mMetaTileEntity.getFluid() == null ? null : mMetaTileEntity.getFluid().getFluid(), this))))
- return mMetaTileEntity.drain(aSide, maxDrain, doDrain);
- return null;
- }
-
- @Override
- public FluidStack drain(ForgeDirection aSide, FluidStack aFluid, boolean doDrain) {
- if (mTickTimer > 5 && canAccessData() && (mRunningThroughTick || !mOutputDisabled) && (aSide == ForgeDirection.UNKNOWN || (mMetaTileEntity.isLiquidOutput((byte) aSide.ordinal()) && getCoverBehaviorAtSide((byte) aSide.ordinal()).letsFluidOut((byte) aSide.ordinal(), getCoverIDAtSide((byte) aSide.ordinal()), getCoverDataAtSide((byte) aSide.ordinal()), aFluid == null ? null : aFluid.getFluid(), this))))
- return mMetaTileEntity.drain(aSide, aFluid, doDrain);
- return null;
- }
-
- @Override
- public boolean canFill(ForgeDirection aSide, Fluid aFluid) {
- if (mTickTimer > 5 && canAccessData() && (mRunningThroughTick || !mInputDisabled) && (aSide == ForgeDirection.UNKNOWN || (mMetaTileEntity.isLiquidInput((byte) aSide.ordinal()) && getCoverBehaviorAtSide((byte) aSide.ordinal()).letsFluidIn((byte) aSide.ordinal(), getCoverIDAtSide((byte) aSide.ordinal()), getCoverDataAtSide((byte) aSide.ordinal()), aFluid, this))))
- return mMetaTileEntity.canFill(aSide, aFluid);
- return false;
- }
-
- @Override
- public boolean canDrain(ForgeDirection aSide, Fluid aFluid) {
- if (mTickTimer > 5 && canAccessData() && (mRunningThroughTick || !mOutputDisabled) && (aSide == ForgeDirection.UNKNOWN || (mMetaTileEntity.isLiquidOutput((byte) aSide.ordinal()) && getCoverBehaviorAtSide((byte) aSide.ordinal()).letsFluidOut((byte) aSide.ordinal(), getCoverIDAtSide((byte) aSide.ordinal()), getCoverDataAtSide((byte) aSide.ordinal()), aFluid, this))))
- return mMetaTileEntity.canDrain(aSide, aFluid);
- return false;
- }
-
- @Override
- public FluidTankInfo[] getTankInfo(ForgeDirection aSide) {
- if (canAccessData() && (aSide == ForgeDirection.UNKNOWN || (mMetaTileEntity.isLiquidInput((byte) aSide.ordinal()) && getCoverBehaviorAtSide((byte) aSide.ordinal()).letsFluidIn((byte) aSide.ordinal(), getCoverIDAtSide((byte) aSide.ordinal()), getCoverDataAtSide((byte) aSide.ordinal()), null, this)) || (mMetaTileEntity.isLiquidOutput((byte) aSide.ordinal()) && getCoverBehaviorAtSide((byte) aSide.ordinal()).letsFluidOut((byte) aSide.ordinal(), getCoverIDAtSide((byte) aSide.ordinal()), getCoverDataAtSide((byte) aSide.ordinal()), null, this))))
- return mMetaTileEntity.getTankInfo(aSide);
- return new FluidTankInfo[]{};
- }
-
- public double getOutputEnergyUnitsPerTick() {
- return oOutput;
- }
-
- public boolean isTeleporterCompatible(ForgeDirection aSide) {
- return canAccessData() && mMetaTileEntity.isTeleporterCompatible();
- }
-
- public double demandedEnergyUnits() {
- if (mReleaseEnergy || !canAccessData() || !mMetaTileEntity.isEnetInput()) return 0;
- return getEUCapacity() - getStoredEU();
- }
-
- public double injectEnergyUnits(ForgeDirection aDirection, double aAmount) {
- return injectEnergyUnits((byte) aDirection.ordinal(), (int) aAmount, 1) > 0 ? 0 : aAmount;
- }
-
- public boolean acceptsEnergyFrom(TileEntity aEmitter, ForgeDirection aDirection) {
- return inputEnergyFrom((byte) aDirection.ordinal());
- }
-
- public boolean emitsEnergyTo(TileEntity aReceiver, ForgeDirection aDirection) {
- return outputsEnergyTo((byte) aDirection.ordinal());
- }
-
- public double getOfferedEnergy() {
- return (canAccessData() && getStoredEU() - mMetaTileEntity.getMinimumStoredEU() >= oOutput) ? Math.max(0, oOutput) : 0;
- }
-
- public void drawEnergy(double amount) {
- mAverageEUOutput[mAverageEUOutputIndex] += amount;
- decreaseStoredEU((int) amount, true);
- }
-
- public int injectEnergy(ForgeDirection aForgeDirection, int aAmount) {
- return injectEnergyUnits((byte) aForgeDirection.ordinal(), aAmount, 1) > 0 ? 0 : aAmount;
- }
-
- public int addEnergy(int aEnergy) {
- if (!canAccessData()) return 0;
- if (aEnergy > 0)
- increaseStoredEnergyUnits(aEnergy, true);
- else
- decreaseStoredEU(-aEnergy, true);
- return (int) Math.min(Integer.MAX_VALUE, mMetaTileEntity.getEUVar());
- }
-
- public boolean isAddedToEnergyNet() {
- return false;
- }
-
- public int demandsEnergy() {
- if (mReleaseEnergy || !canAccessData() || !mMetaTileEntity.isEnetInput()) return 0;
- return getCapacity() - getStored();
- }
-
- public int getCapacity() {
- return (int) Math.min(Integer.MAX_VALUE, getEUCapacity());
- }
-
- public int getStored() {
- return (int) Math.min(Integer.MAX_VALUE, Math.min(getStoredEU(), getCapacity()));
- }
-
- public void setStored(int aEU) {
- if (canAccessData()) setStoredEU(aEU);
- }
-
- public int getMaxSafeInput() {
- return (int) Math.min(Integer.MAX_VALUE, getInputVoltage());
- }
-
- public int getMaxEnergyOutput() {
- if (mReleaseEnergy) return Integer.MAX_VALUE;
- return getOutput();
- }
-
- public int getOutput() {
- return (int) Math.min(Integer.MAX_VALUE, oOutput);
- }
-
- public int injectEnergy(Direction aDirection, int aAmount) {
- return injectEnergyUnits((byte) aDirection.toSideValue(), aAmount, 1) > 0 ? 0 : aAmount;
- }
-
- public boolean isTeleporterCompatible(Direction aSide) {
- return canAccessData() && mMetaTileEntity.isTeleporterCompatible();
- }
-
- public boolean acceptsEnergyFrom(TileEntity aReceiver, Direction aDirection) {
- return inputEnergyFrom((byte) aDirection.toSideValue());
- }
-
- public boolean emitsEnergyTo(TileEntity aReceiver, Direction aDirection) {
- return outputsEnergyTo((byte) aDirection.toSideValue());
- }
-
- @Override
- public boolean isInvalidTileEntity() {
- return isInvalid();
- }
-
- @Override
- public boolean addStackToSlot(int aIndex, ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack)) return true;
- if (aIndex < 0 || aIndex >= getSizeInventory()) return false;
- ItemStack tStack = getStackInSlot(aIndex);
- if (GT_Utility.isStackInvalid(tStack)) {
- setInventorySlotContents(aIndex, aStack);
- return true;
- }
- aStack = GT_OreDictUnificator.get(aStack);
- if (GT_Utility.areStacksEqual(tStack, aStack) && tStack.stackSize + aStack.stackSize <= Math.min(aStack.getMaxStackSize(), getInventoryStackLimit())) {
- tStack.stackSize += aStack.stackSize;
- return true;
- }
- return false;
- }
-
- @Override
- public boolean addStackToSlot(int aIndex, ItemStack aStack, int aAmount) {
- return addStackToSlot(aIndex, GT_Utility.copyAmount(aAmount, aStack));
- }
-
- @Override
- public byte getColorization() {
- return (byte) (mColor - 1);
- }
-
- @Override
- public byte setColorization(byte aColor) {
- if (aColor > 15 || aColor < -1) aColor = -1;
- if (canAccessData()) mMetaTileEntity.onColorChangeServer(aColor);
- return mColor = (byte) (aColor + 1);
- }
-
- @Override
- public float getBlastResistance(byte aSide) {
- return canAccessData() ? Math.max(0, getMetaTileEntity().getExplosionResistance(aSide)) : 10.0F;
- }
-
- @Override
- public boolean isUniversalEnergyStored(long aEnergyAmount) {
- if (getUniversalEnergyStored() >= aEnergyAmount) return true;
- mHasEnoughEnergy = false;
- return false;
- }
-
- @Override
- public String[] getInfoData() {
- {
- if (canAccessData()) return getMetaTileEntity().getInfoData();
- return new String[]{};
- }
- }
-
- @Override
- public void markDirty() {
- super.markDirty();
- mInventoryChanged = true;
- }
-
- @Override
- public int getLightOpacity() {
- return mMetaTileEntity == null ? getLightValue() > 0 ? 0 : 255 : mMetaTileEntity.getLightOpacity();
- }
-
- @Override
- public void addCollisionBoxesToList(World aWorld, int aX, int aY, int aZ, AxisAlignedBB inputAABB, List<AxisAlignedBB> outputAABB, Entity collider) {
- mMetaTileEntity.addCollisionBoxesToList(aWorld, aX, aY, aZ, inputAABB, outputAABB, collider);
- }
-
- @Override
- public AxisAlignedBB getCollisionBoundingBoxFromPool(World aWorld, int aX, int aY, int aZ) {
- return mMetaTileEntity.getCollisionBoundingBoxFromPool(aWorld, aX, aY, aZ);
- }
-
- @Override
- public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity collider) {
- mMetaTileEntity.onEntityCollidedWithBlock(aWorld, aX, aY, aZ, collider);
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaPipeEntity_BaseSuperConductor.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaPipeEntity_BaseSuperConductor.java
deleted file mode 100644
index c48234cdb0..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaPipeEntity_BaseSuperConductor.java
+++ /dev/null
@@ -1,640 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.lossless;
-
-import static gregtech.api.enums.GT_Values.GT;
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.GregTech_API;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.BaseMetaPipeEntity;
-import gregtech.api.objects.GT_ItemStack;
-import gregtech.api.util.GT_Config;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_Utility;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-
-import net.minecraft.block.Block;
-import net.minecraft.client.renderer.RenderBlocks;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.util.AxisAlignedBB;
-import net.minecraft.world.IBlockAccess;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.fluids.FluidTankInfo;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * Extend this Class to add a new MetaPipe
- * Call the Constructor with the desired ID at the load-phase (not preload and also not postload!)
- * Implement the newMetaEntity-Method to return a new ready instance of your MetaTileEntity
- * <p/>
- * Call the Constructor like the following example inside the Load Phase, to register it.
- * "new GT_MetaTileEntity_E_Furnace(54, "GT_E_Furnace", "Automatic E-Furnace");"
- */
-public abstract class GregtechMetaPipeEntity_BaseSuperConductor implements IMetaTileEntity {
- /**
- * The Inventory of the MetaTileEntity. Amount of Slots can be larger than 256. HAYO!
- */
- public final ItemStack[] mInventory;
- /**
- * This variable tells, which directions the Block is connected to. It is a Bitmask.
- */
- public byte mConnections = 0;
- /**
- * Only assigned for the MetaTileEntity in the List! Also only used to get the localized Name for the ItemStack and for getInvName.
- */
- public String mName;
- public boolean doTickProfilingInThisTick = true;
- /**
- * accessibility to this Field is no longer given, see below
- */
- private IGregTechTileEntity mBaseMetaTileEntity;
-
- /**
- * This registers your Machine at the List.
- * Use only ID's larger than 2048, because i reserved these ones.
- * See also the List in the API, as it has a Description containing all the reservations.
- *
- * @param aID the ID
- * @example for Constructor overload.
- * <p/>
- * public GT_MetaTileEntity_EBench(int aID, String mName, String mNameRegional) {
- * super(aID, mName, mNameRegional);
- * }
- */
- public GregtechMetaPipeEntity_BaseSuperConductor(int aID, String aBasicName, String aRegionalName, int aInvSlotCount) {
- if (GregTech_API.sPostloadStarted || !GregTech_API.sPreloadStarted)
- throw new IllegalAccessError("This Constructor has to be called in the load Phase");
- if (GregTech_API.METATILEENTITIES[aID] == null) {
- GregTech_API.METATILEENTITIES[aID] = this;
- } else {
- throw new IllegalArgumentException("MetaMachine-Slot Nr. " + aID + " is already occupied!");
- }
- mName = aBasicName.replaceAll(" ", "_").toLowerCase();
- setBaseMetaTileEntity(new BaseMetaPipeEntity());
- getBaseMetaTileEntity().setMetaTileID((short) aID);
- GT_LanguageManager.addStringLocalization("gt.blockmachines." + mName + ".name", aRegionalName);
- mInventory = new ItemStack[aInvSlotCount];
-
- if (GT.isClientSide()) {
- ItemStack tStack = new ItemStack(GregTech_API.sBlockMachines, 1, aID);
- tStack.getItem().addInformation(tStack, null, new ArrayList<String>(), true);
- }
- }
-
- /**
- * This is the normal Constructor.
- */
- public GregtechMetaPipeEntity_BaseSuperConductor(String aName, int aInvSlotCount) {
- mInventory = new ItemStack[aInvSlotCount];
- mName = aName;
- }
-
- /**
- * For Pipe Rendering
- */
- public abstract float getThickNess();
-
- /**
- * For Pipe Rendering
- */
- public abstract boolean renderInside(byte aSide);
-
- @Override
- public IGregTechTileEntity getBaseMetaTileEntity() {
- return mBaseMetaTileEntity;
- }
-
- @Override
- public void setBaseMetaTileEntity(IGregTechTileEntity aBaseMetaTileEntity) {
- if (mBaseMetaTileEntity != null && aBaseMetaTileEntity == null) {
- mBaseMetaTileEntity.getMetaTileEntity().inValidate();
- mBaseMetaTileEntity.setMetaTileEntity(null);
- }
- mBaseMetaTileEntity = aBaseMetaTileEntity;
- if (mBaseMetaTileEntity != null) {
- mBaseMetaTileEntity.setMetaTileEntity(this);
- }
- }
-
- @Override
- public ItemStack getStackForm(long aAmount) {
- return new ItemStack(GregTech_API.sBlockMachines, (int) aAmount, getBaseMetaTileEntity().getMetaTileID());
- }
-
- @Override
- public void onServerStart() {/*Do nothing*/}
-
- @Override
- public void onWorldSave(File aSaveDirectory) {/*Do nothing*/}
-
- @Override
- public void onWorldLoad(File aSaveDirectory) {/*Do nothing*/}
-
- @Override
- public void onConfigLoad(GT_Config aConfig) {/*Do nothing*/}
-
- @Override
- public void setItemNBT(NBTTagCompound aNBT) {/*Do nothing*/}
-
- @Override
- @SideOnly(Side.CLIENT)
- public void registerIcons(IIconRegister aBlockIconRegister) {/*Do nothing*/}
-
- @Override
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCoverID) {
- return true;
- }
-
- @Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {/*Do nothing*/}
-
- @Override
- public boolean onWrenchRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- return false;
- }
-
- @Override
- public void onExplosion() {/*Do nothing*/}
-
- @Override
- public void onFirstTick(IGregTechTileEntity aBaseMetaTileEntity) {/*Do nothing*/}
-
- @Override
- public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {/*Do nothing*/}
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {/*Do nothing*/}
-
- @Override
- public void inValidate() {/*Do nothing*/}
-
- @Override
- public void onRemoval() {/*Do nothing*/}
-
- @Override
- public void initDefaultModes(NBTTagCompound aNBT) {/*Do nothing*/}
-
- /**
- * When a GUI is opened
- */
- public void onOpenGUI() {/*Do nothing*/}
-
- /**
- * When a GUI is closed
- */
- public void onCloseGUI() {/*Do nothing*/}
-
- /**
- * a Player rightclicks the Machine
- * Sneaky rightclicks are not getting passed to this!
- */
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, byte aSide, float aX, float aY, float aZ) {
- return false;
- }
-
- @Override
- public void onLeftclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {/*Do nothing*/}
-
- @Override
- public void onValueUpdate(byte aValue) {/*Do nothing*/}
-
- @Override
- public byte getUpdateData() {
- return 0;
- }
-
- @Override
- public void doSound(byte aIndex, double aX, double aY, double aZ) {/*Do nothing*/}
-
- @Override
- public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) {/*Do nothing*/}
-
- @Override
- public void stopSoundLoop(byte aValue, double aX, double aY, double aZ) {/*Do nothing*/}
-
- @Override
- public final void sendSound(byte aIndex) {
- if (!getBaseMetaTileEntity().hasMufflerUpgrade()) getBaseMetaTileEntity().sendBlockEvent((byte) 4, aIndex);
- }
-
- @Override
- public final void sendLoopStart(byte aIndex) {
- if (!getBaseMetaTileEntity().hasMufflerUpgrade()) getBaseMetaTileEntity().sendBlockEvent((byte) 5, aIndex);
- }
-
- @Override
- public final void sendLoopEnd(byte aIndex) {
- if (!getBaseMetaTileEntity().hasMufflerUpgrade()) getBaseMetaTileEntity().sendBlockEvent((byte) 6, aIndex);
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return false;
- }
-
- @Override
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return true;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return true;
- }
-
- @Override
- public boolean setStackToZeroInsteadOfNull(int aIndex) {
- return false;
- }
-
- @Override
- public ArrayList<String> getSpecialDebugInfo(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, int aLogLevel, ArrayList<String> aList) {
- return aList;
- }
-
- @Override
- public boolean isLiquidInput(byte aSide) {
- return true;
- }
-
- @Override
- public boolean isLiquidOutput(byte aSide) {
- return true;
- }
-
- /**
- * gets the contained Liquid
- */
- @Override
- public FluidStack getFluid() {
- return null;
- }
-
- /**
- * tries to fill this Tank
- */
- @Override
- public int fill(FluidStack resource, boolean doFill) {
- return 0;
- }
-
- /**
- * tries to empty this Tank
- */
- @Override
- public FluidStack drain(int maxDrain, boolean doDrain) {
- return null;
- }
-
- /**
- * Tank pressure
- */
- public int getTankPressure() {
- return 0;
- }
-
- /**
- * Liquid Capacity
- */
- @Override
- public int getCapacity() {
- return 0;
- }
-
- /**
- * Progress this machine has already made
- */
- public int getProgresstime() {
- return 0;
- }
-
- /**
- * Progress this Machine has to do to produce something
- */
- public int maxProgresstime() {
- return 0;
- }
-
- /**
- * Increases the Progress, returns the overflown Progress.
- */
- public int increaseProgress(int aProgress) {
- return 0;
- }
-
- @Override
- public void onMachineBlockUpdate() {/*Do nothing*/}
-
- @Override
- public void receiveClientEvent(byte aEventID, byte aValue) {/*Do nothing*/}
-
- @Override
- public boolean isSimpleMachine() {
- return false;
- }
-
- @Override
- public byte getComparatorValue(byte aSide) {
- return 0;
- }
-
- @Override
- public boolean acceptsRotationalEnergy(byte aSide) {
- return false;
- }
-
- @Override
- public boolean injectRotationalEnergy(byte aSide, long aSpeed, long aEnergy) {
- return false;
- }
-
- @Override
- public String getSpecialVoltageToolTip() {
- return null;
- }
-
- @Override
- public boolean isGivingInformation() {
- return false;
- }
-
- @Override
- public String[] getInfoData() {
- return new String[]{};
- }
-
- public boolean isDigitalChest() {
- return false;
- }
-
- public ItemStack[] getStoredItemData() {
- return null;
- }
-
- public void setItemCount(int aCount) {/*Do nothing*/}
-
- public int getMaxItemCount() {
- return 0;
- }
-
- @Override
- public int getSizeInventory() {
- return mInventory.length;
- }
-
- @Override
- public ItemStack getStackInSlot(int aIndex) {
- if (aIndex >= 0 && aIndex < mInventory.length) return mInventory[aIndex];
- return null;
- }
-
- @Override
- public void setInventorySlotContents(int aIndex, ItemStack aStack) {
- if (aIndex >= 0 && aIndex < mInventory.length) mInventory[aIndex] = aStack;
- }
-
- @Override
- public String getInventoryName() {
- if (GregTech_API.METATILEENTITIES[getBaseMetaTileEntity().getMetaTileID()] != null)
- return GregTech_API.METATILEENTITIES[getBaseMetaTileEntity().getMetaTileID()].getMetaName();
- return "";
- }
-
- @Override
- public int getInventoryStackLimit() {
- return 64;
- }
-
- @Override
- public boolean isItemValidForSlot(int aIndex, ItemStack aStack) {
- return getBaseMetaTileEntity().isValidSlot(aIndex);
- }
-
- @Override
- public ItemStack decrStackSize(int aIndex, int aAmount) {
- ItemStack tStack = getStackInSlot(aIndex), rStack = GT_Utility.copy(tStack);
- if (tStack != null) {
- if (tStack.stackSize <= aAmount) {
- if (setStackToZeroInsteadOfNull(aIndex)) tStack.stackSize = 0;
- else setInventorySlotContents(aIndex, null);
- } else {
- rStack = tStack.splitStack(aAmount);
- if (tStack.stackSize == 0 && !setStackToZeroInsteadOfNull(aIndex))
- setInventorySlotContents(aIndex, null);
- }
- }
- return rStack;
- }
-
- @Override
- public int[] getAccessibleSlotsFromSide(int aSide) {
- ArrayList<Integer> tList = new ArrayList<Integer>();
- IGregTechTileEntity tTileEntity = getBaseMetaTileEntity();
- boolean tSkip = tTileEntity.getCoverBehaviorAtSide((byte) aSide).letsItemsIn((byte) aSide, tTileEntity.getCoverIDAtSide((byte) aSide), tTileEntity.getCoverDataAtSide((byte) aSide), -2, tTileEntity) || tTileEntity.getCoverBehaviorAtSide((byte) aSide).letsItemsOut((byte) aSide, tTileEntity.getCoverIDAtSide((byte) aSide), tTileEntity.getCoverDataAtSide((byte) aSide), -2, tTileEntity);
- for (int i = 0; i < getSizeInventory(); i++)
- if (isValidSlot(i) && (tSkip || tTileEntity.getCoverBehaviorAtSide((byte) aSide).letsItemsOut((byte) aSide, tTileEntity.getCoverIDAtSide((byte) aSide), tTileEntity.getCoverDataAtSide((byte) aSide), i, tTileEntity) || tTileEntity.getCoverBehaviorAtSide((byte) aSide).letsItemsIn((byte) aSide, tTileEntity.getCoverIDAtSide((byte) aSide), tTileEntity.getCoverDataAtSide((byte) aSide), i, tTileEntity)))
- tList.add(i);
- int[] rArray = new int[tList.size()];
- for (int i = 0; i < rArray.length; i++) rArray[i] = tList.get(i);
- return rArray;
- }
-
- @Override
- public boolean canInsertItem(int aIndex, ItemStack aStack, int aSide) {
- return isValidSlot(aIndex) && aStack != null && aIndex < mInventory.length && (mInventory[aIndex] == null || GT_Utility.areStacksEqual(aStack, mInventory[aIndex])) && allowPutStack(getBaseMetaTileEntity(), aIndex, (byte) aSide, aStack);
- }
-
- @Override
- public boolean canExtractItem(int aIndex, ItemStack aStack, int aSide) {
- return isValidSlot(aIndex) && aStack != null && aIndex < mInventory.length && allowPullStack(getBaseMetaTileEntity(), aIndex, (byte) aSide, aStack);
- }
-
- @Override
- public boolean canFill(ForgeDirection aSide, Fluid aFluid) {
- return fill(aSide, new FluidStack(aFluid, 1), false) == 1;
- }
-
- @Override
- public boolean canDrain(ForgeDirection aSide, Fluid aFluid) {
- return drain(aSide, new FluidStack(aFluid, 1), false) != null;
- }
-
- @Override
- public FluidTankInfo[] getTankInfo(ForgeDirection aSide) {
- if (getCapacity() <= 0 && !getBaseMetaTileEntity().hasSteamEngineUpgrade()) return new FluidTankInfo[]{};
- return new FluidTankInfo[]{getInfo()};
- }
-
- public int fill_default(ForgeDirection aSide, FluidStack aFluid, boolean doFill) {
- return fill(aFluid, doFill);
- }
-
- @Override
- public int fill(ForgeDirection aSide, FluidStack aFluid, boolean doFill) {
- return fill_default(aSide, aFluid, doFill);
- }
-
- @Override
- public FluidStack drain(ForgeDirection aSide, FluidStack aFluid, boolean doDrain) {
- if (getFluid() != null && aFluid != null && getFluid().isFluidEqual(aFluid))
- return drain(aFluid.amount, doDrain);
- return null;
- }
-
- @Override
- public FluidStack drain(ForgeDirection aSide, int maxDrain, boolean doDrain) {
- return drain(maxDrain, doDrain);
- }
-
- @Override
- public int getFluidAmount() {
- return 0;
- }
-
- @Override
- public FluidTankInfo getInfo() {
- return new FluidTankInfo(this);
- }
-
- @Override
- public String getMetaName() {
- return mName;
- }
-
- @Override
- public ItemStack getStackInSlotOnClosing(int i) {
- return null;
- }
-
- @Override
- public boolean doTickProfilingMessageDuringThisTick() {
- return doTickProfilingInThisTick;
- }
-
- @Override
- public boolean isUseableByPlayer(EntityPlayer entityplayer) {
- return false;
- }
-
- @Override
- public boolean connectsToItemPipe(byte aSide) {
- return false;
- }
-
- @Override
- public void openInventory() {
- //
- }
-
- @Override
- public void closeInventory() {
- //
- }
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return null;
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return null;
- }
-
- @Override
- public float getExplosionResistance(byte aSide) {
- return 10.0F;
- }
-
- @Override
- public ItemStack[] getRealInventory() {
- return mInventory;
- }
-
- @Override
- public boolean hasCustomInventoryName() {
- return false;
- }
-
- @Override
- public void markDirty() {
- //
- }
-
- @Override
- public void onColorChangeServer(byte aColor) {
- //
- }
-
- @Override
- public void onColorChangeClient(byte aColor) {
- //
- }
-
- public long injectEnergyUnits(byte aSide, long aVoltage, long aAmperage) {
- return 0;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public boolean renderInInventory(Block aBlock, int aMeta, RenderBlocks aRenderer) {
- return false;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public boolean renderInWorld(IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, RenderBlocks aRenderer) {
- return false;
- }
-
- @Override
- public void doExplosion(long aExplosionPower) {
- float tStrength = aExplosionPower < V[0] ? 1.0F : aExplosionPower < V[1] ? 2.0F : aExplosionPower < V[2] ? 3.0F : aExplosionPower < V[3] ? 4.0F : aExplosionPower < V[4] ? 5.0F : aExplosionPower < V[4] * 2 ? 6.0F : aExplosionPower < V[5] ? 7.0F : aExplosionPower < V[6] ? 8.0F : aExplosionPower < V[7] ? 9.0F : 10.0F;
- int tX = getBaseMetaTileEntity().getXCoord(), tY = getBaseMetaTileEntity().getYCoord(), tZ = getBaseMetaTileEntity().getZCoord();
- World tWorld = getBaseMetaTileEntity().getWorld();
- tWorld.setBlock(tX, tY, tZ, Blocks.air);
- if (GregTech_API.sMachineExplosions)
- tWorld.createExplosion(null, tX + 0.5, tY + 0.5, tZ + 0.5, tStrength, true);
- }
-
- @Override
- public int getLightOpacity() {
- return 0;
- }
-
- @Override
- public void addCollisionBoxesToList(World aWorld, int aX, int aY, int aZ, AxisAlignedBB inputAABB, List<AxisAlignedBB> outputAABB, Entity collider) {
- AxisAlignedBB axisalignedbb1 = getCollisionBoundingBoxFromPool(aWorld, aX, aY, aZ);
- if (axisalignedbb1 != null && inputAABB.intersectsWith(axisalignedbb1)) outputAABB.add(axisalignedbb1);
- }
-
- @Override
- public AxisAlignedBB getCollisionBoundingBoxFromPool(World aWorld, int aX, int aY, int aZ) {
- return AxisAlignedBB.getBoundingBox(aX, aY, aZ, aX + 1, aY + 1, aZ + 1);
- }
-
- @Override
- public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity collider) {
- //
- }
-
- @Override
- public void onCreated(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- //
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLossless.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLossless.java
deleted file mode 100644
index bc4403ec6d..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLossless.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.lossless;
-
-import static gregtech.api.enums.GT_Values.GT;
-import gregtech.api.interfaces.ITexture;
-import miscutil.core.lib.CORE;
-
-public abstract class GregtechMetaTileEntityLossless extends MetaTileEntityLossless {
- /**
- * Value between [0 - 9] to describe the Tier of this Machine.
- */
- public final byte mTier;
-
- /**
- * A simple Description.
- */
- public final String mDescription;
-
- /**
- * Contains all Textures used by this Block.
- */
- public final ITexture[][][] mTextures;
-
- public GregtechMetaTileEntityLossless(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String aDescription, ITexture... aTextures) {
- super(aID, aName, aNameRegional, aInvSlotCount);
- mTier = (byte)Math.max(0, Math.min(aTier, 9));
- mDescription = aDescription;
-
- // must always be the last call!
- if (GT.isClientSide()) mTextures = getTextureSet(aTextures); else mTextures = null;
- }
-
- public GregtechMetaTileEntityLossless(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
- super(aName, aInvSlotCount);
- mTier = (byte)aTier;
- mDescription = aDescription;
- mTextures = aTextures;
-
- }
-
- @Override
- public byte getTileEntityBaseType() {
- return (byte)(Math.min(3, mTier<=0?0:1+((mTier-1) / 4)));
- }
-
- @Override
- public long getInputTier() {
- return mTier;
- }
-
- @Override
- public long getOutputTier() {
- return mTier;
- }
-
- @Override
- public String[] getDescription() {
- return new String[] {mDescription, CORE.GT_Tooltip};
- }
-
- /**
- * Used Client Side to get a Texture Set for this Block.
- * Called after setting the Tier and the Description so that those two are accessible.
- * @param aTextures is the optional Array you can give to the Constructor.
- */
- public abstract ITexture[][][] getTextureSet(ITexture[] aTextures);
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLosslessBasicTank.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLosslessBasicTank.java
deleted file mode 100644
index 507bd4de94..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLosslessBasicTank.java
+++ /dev/null
@@ -1,251 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.lossless;
-
-import gregtech.api.enums.ItemList;
-import gregtech.api.gui.GT_Container_BasicTank;
-import gregtech.api.gui.GT_GUIContainer_BasicTank;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.util.GT_Utility;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraftforge.fluids.FluidStack;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * This is the main construct for my generic Tanks. Filling and emptying behavior have to be implemented manually
- */
-public abstract class GregtechMetaTileEntityLosslessBasicTank extends GregtechMetaTileEntityLosslessTieredMachineBlock {
-
- public FluidStack mFluid;
-
- /**
- * @param aInvSlotCount should be 3
- */
- public GregtechMetaTileEntityLosslessBasicTank(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String aDescription, ITexture... aTextures) {
- super(aID, aName, aNameRegional, aTier, aInvSlotCount, aDescription, aTextures);
- }
-
- public GregtechMetaTileEntityLosslessBasicTank(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, aInvSlotCount, aDescription, aTextures);
- }
-
- @Override
- public boolean isSimpleMachine() {
- return false;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return aIndex != getStackDisplaySlot();
- }
-
- @Override
- public void saveNBTData(NBTTagCompound aNBT) {
- if (mFluid != null) aNBT.setTag("mFluid", mFluid.writeToNBT(new NBTTagCompound()));
- }
-
- @Override
- public void loadNBTData(NBTTagCompound aNBT) {
- mFluid = FluidStack.loadFluidStackFromNBT(aNBT.getCompoundTag("mFluid"));
- }
-
- public abstract boolean doesFillContainers();
-
- public abstract boolean doesEmptyContainers();
-
- public abstract boolean canTankBeFilled();
-
- public abstract boolean canTankBeEmptied();
-
- public abstract boolean displaysItemStack();
-
- public abstract boolean displaysStackSize();
-
- public int getInputSlot() {
- return 0;
- }
-
- public int getOutputSlot() {
- return 1;
- }
-
- public int getStackDisplaySlot() {
- return 2;
- }
-
- public boolean isFluidInputAllowed(FluidStack aFluid) {
- return true;
- }
-
- public boolean isFluidChangingAllowed() {
- return true;
- }
-
- public FluidStack getFillableStack() {
- return mFluid;
- }
-
- public FluidStack setFillableStack(FluidStack aFluid) {
- mFluid = aFluid;
- return mFluid;
- }
-
- public FluidStack getDrainableStack() {
- return mFluid;
- }
-
- public FluidStack setDrainableStack(FluidStack aFluid) {
- mFluid = aFluid;
- return mFluid;
- }
-
- public FluidStack getDisplayedFluid() {
- return getDrainableStack();
- }
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_Container_BasicTank(aPlayerInventory, aBaseMetaTileEntity);
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_GUIContainer_BasicTank(aPlayerInventory, aBaseMetaTileEntity, getLocalName());
- }
-
- @Override
- public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (aBaseMetaTileEntity.isServerSide()) {
- if (isFluidChangingAllowed() && getFillableStack() != null && getFillableStack().amount <= 0)
- setFillableStack(null);
-
- if (displaysItemStack() && getStackDisplaySlot() >= 0 && getStackDisplaySlot() < mInventory.length) {
- if (getDisplayedFluid() == null) {
- if (ItemList.Display_Fluid.isStackEqual(mInventory[getStackDisplaySlot()], true, true))
- mInventory[getStackDisplaySlot()] = null;
- } else {
- mInventory[getStackDisplaySlot()] = GT_Utility.getFluidDisplayStack(getDisplayedFluid(), displaysStackSize());
- }
- }
-
- if (doesEmptyContainers()) {
- FluidStack tFluid = GT_Utility.getFluidForFilledItem(mInventory[getInputSlot()], true);
- if (tFluid != null && isFluidInputAllowed(tFluid)) {
- if (getFillableStack() == null) {
- if (isFluidInputAllowed(tFluid) && tFluid.amount <= getCapacity()) {
- if (aBaseMetaTileEntity.addStackToSlot(getOutputSlot(), GT_Utility.getContainerItem(mInventory[getInputSlot()], true), 1)) {
- setFillableStack(tFluid.copy());
- aBaseMetaTileEntity.decrStackSize(getInputSlot(), 1);
- }
- }
- } else {
- if (tFluid.isFluidEqual(getFillableStack()) && tFluid.amount + getFillableStack().amount <= getCapacity()) {
- if (aBaseMetaTileEntity.addStackToSlot(getOutputSlot(), GT_Utility.getContainerItem(mInventory[getInputSlot()], true), 1)) {
- getFillableStack().amount += tFluid.amount;
- aBaseMetaTileEntity.decrStackSize(getInputSlot(), 1);
- }
- }
- }
- }
- }
-
- if (doesFillContainers()) {
- ItemStack tOutput = GT_Utility.fillFluidContainer(getDrainableStack(), mInventory[getInputSlot()], false, true);
- if (tOutput != null && aBaseMetaTileEntity.addStackToSlot(getOutputSlot(), tOutput, 1)) {
- FluidStack tFluid = GT_Utility.getFluidForFilledItem(tOutput, true);
- aBaseMetaTileEntity.decrStackSize(getInputSlot(), 1);
- if (tFluid != null) getDrainableStack().amount -= tFluid.amount;
- if (getDrainableStack().amount <= 0 && isFluidChangingAllowed()) setDrainableStack(null);
- }
- }
- }
- }
-
- @Override
- public FluidStack getFluid() {
- return getDrainableStack();
- }
-
- @Override
- public int getFluidAmount() {
- return getDrainableStack() != null ? getDrainableStack().amount : 0;
- }
-
- @Override
- public int fill(FluidStack aFluid, boolean doFill) {
- if (aFluid == null || aFluid.getFluid().getID() <= 0 || aFluid.amount <= 0 || !canTankBeFilled() || !isFluidInputAllowed(aFluid))
- return 0;
-
- if (getFillableStack() == null || getFillableStack().getFluid().getID() <= 0) {
- if (aFluid.amount <= getCapacity()) {
- if (doFill) {
- setFillableStack(aFluid.copy());
- getBaseMetaTileEntity().markDirty();
- }
- return aFluid.amount;
- }
- if (doFill) {
- setFillableStack(aFluid.copy());
- getFillableStack().amount = getCapacity();
- getBaseMetaTileEntity().markDirty();
- }
- return getCapacity();
- }
-
- if (!getFillableStack().isFluidEqual(aFluid))
- return 0;
-
- int space = getCapacity() - getFillableStack().amount;
- if (aFluid.amount <= space) {
- if (doFill) {
- getFillableStack().amount += aFluid.amount;
- getBaseMetaTileEntity().markDirty();
- }
- return aFluid.amount;
- }
- if (doFill)
- getFillableStack().amount = getCapacity();
- return space;
- }
-
- @Override
- public FluidStack drain(int maxDrain, boolean doDrain) {
- if (getDrainableStack() == null || !canTankBeEmptied()) return null;
- if (getDrainableStack().amount <= 0 && isFluidChangingAllowed()) {
- setDrainableStack(null);
- getBaseMetaTileEntity().markDirty();
- return null;
- }
-
- int used = maxDrain;
- if (getDrainableStack().amount < used)
- used = getDrainableStack().amount;
-
- if (doDrain) {
- getDrainableStack().amount -= used;
- getBaseMetaTileEntity().markDirty();
- }
-
- FluidStack drained = getDrainableStack().copy();
- drained.amount = used;
-
- if (getDrainableStack().amount <= 0 && isFluidChangingAllowed()) {
- setDrainableStack(null);
- getBaseMetaTileEntity().markDirty();
- }
-
- return drained;
- }
-
- @Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aIndex == getOutputSlot();
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aIndex == getInputSlot();
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLosslessTieredMachineBlock.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLosslessTieredMachineBlock.java
deleted file mode 100644
index a092f85f7a..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/GregtechMetaTileEntityLosslessTieredMachineBlock.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.lossless;
-
-import static gregtech.api.enums.GT_Values.GT;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.metatileentity.MetaTileEntity;
-
-public abstract class GregtechMetaTileEntityLosslessTieredMachineBlock extends MetaTileEntity {
- /**
- * Value between [0 - 9] to describe the Tier of this Machine.
- */
- public final byte mTier;
-
- /**
- * A simple Description.
- */
- public final String mDescription;
-
- /**
- * Contains all Textures used by this Block.
- */
- public final ITexture[][][] mTextures;
-
- public GregtechMetaTileEntityLosslessTieredMachineBlock(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String aDescription, ITexture... aTextures) {
- super(aID, aName, aNameRegional, aInvSlotCount);
- mTier = (byte) Math.max(0, Math.min(aTier, 9));
- mDescription = aDescription;
-
- // must always be the last call!
- if (GT.isClientSide()) mTextures = getTextureSet(aTextures);
- else mTextures = null;
- }
-
- public GregtechMetaTileEntityLosslessTieredMachineBlock(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
- super(aName, aInvSlotCount);
- mTier = (byte) aTier;
- mDescription = aDescription;
- mTextures = aTextures;
- }
-
- @Override
- public byte getTileEntityBaseType() {
- return (byte) (Math.min(3, mTier <= 0 ? 0 : 1 + ((mTier - 1) / 4)));
- }
-
- @Override
- public long getInputTier() {
- return mTier;
- }
-
- @Override
- public long getOutputTier() {
- return mTier;
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{mDescription};
- }
-
- /**
- * Used Client Side to get a Texture Set for this Block.
- * Called after setting the Tier and the Description so that those two are accessible.
- *
- * @param aTextures is the optional Array you can give to the Constructor.
- */
- public abstract ITexture[][][] getTextureSet(ITexture[] aTextures);
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/MetaTileEntityLossless.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/MetaTileEntityLossless.java
deleted file mode 100644
index 75919f76e4..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/lossless/MetaTileEntityLossless.java
+++ /dev/null
@@ -1,865 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.lossless;
-
-import static gregtech.api.enums.GT_Values.GT;
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.GregTech_API;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.objects.GT_ItemStack;
-import gregtech.api.util.GT_Config;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-
-import net.minecraft.block.Block;
-import net.minecraft.client.renderer.RenderBlocks;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.util.AxisAlignedBB;
-import net.minecraft.world.IBlockAccess;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.fluids.FluidTankInfo;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * Extend this Class to add a new MetaMachine
- * Call the Constructor with the desired ID at the load-phase (not preload and also not postload!)
- * Implement the newMetaEntity-Method to return a new ready instance of your MetaTileEntity
- * <p/>
- * Call the Constructor like the following example inside the Load Phase, to register it.
- * "new GT_MetaTileEntity_E_Furnace(54, "GT_E_Furnace", "Automatic E-Furnace");"
- */
-public abstract class MetaTileEntityLossless implements IMetaTileEntity {
- /**
- * Only assigned for the MetaTileEntity in the List! Also only used to get the localized Name for the ItemStack and for getInvName.
- */
- public final String mName;
- /**
- * The Inventory of the MetaTileEntity. Amount of Slots can be larger than 256. HAYO!
- */
- public final ItemStack[] mInventory;
- public boolean doTickProfilingInThisTick = true;
- /**
- * accessibility to this Field is no longer given, see below
- */
- private IGregTechTileEntity mBaseMetaTileEntity;
-
- /**
- * This registers your Machine at the List.
- * Use only ID's larger than 2048, because i reserved these ones.
- * See also the List in the API, as it has a Description containing all the reservations.
- *
- * @param aID the ID
- * @example for Constructor overload.
- * <p/>
- * public GT_MetaTileEntity_EBench(int aID, String mName, String mNameRegional) {
- * super(aID, mName, mNameRegional);
- * }
- */
- public MetaTileEntityLossless(int aID, String aBasicName, String aRegionalName, int aInvSlotCount) {
- if (GregTech_API.sPostloadStarted || !GregTech_API.sPreloadStarted)
- throw new IllegalAccessError("This Constructor has to be called in the load Phase");
- if (GregTech_API.METATILEENTITIES[aID] == null) {
- GregTech_API.METATILEENTITIES[aID] = this;
- } else {
- throw new IllegalArgumentException("MetaMachine-Slot Nr. " + aID + " is already occupied!");
- }
- mName = aBasicName.replaceAll(" ", "_").toLowerCase();
- setBaseMetaTileEntity(GregTech_API.constructBaseMetaTileEntity());
- getBaseMetaTileEntity().setMetaTileID((short) aID);
- GT_LanguageManager.addStringLocalization("gt.blockmachines." + mName + ".name", aRegionalName);
- mInventory = new ItemStack[aInvSlotCount];
-
- if (GT.isClientSide()) {
- ItemStack tStack = new ItemStack(GregTech_API.sBlockMachines, 1, aID);
- tStack.getItem().addInformation(tStack, null, new ArrayList<String>(), true);
- }
- }
-
- /**
- * This is the normal Constructor.
- */
- public MetaTileEntityLossless(String aName, int aInvSlotCount) {
- mInventory = new ItemStack[aInvSlotCount];
- mName = aName;
- }
-
- @Override
- public IGregTechTileEntity getBaseMetaTileEntity() {
- return mBaseMetaTileEntity;
- }
-
- @Override
- public void setBaseMetaTileEntity(IGregTechTileEntity aBaseMetaTileEntity) {
- if (mBaseMetaTileEntity != null && aBaseMetaTileEntity == null) {
- mBaseMetaTileEntity.getMetaTileEntity().inValidate();
- mBaseMetaTileEntity.setMetaTileEntity(null);
- }
- mBaseMetaTileEntity = aBaseMetaTileEntity;
- if (mBaseMetaTileEntity != null) {
- mBaseMetaTileEntity.setMetaTileEntity(this);
- }
- }
-
- @Override
- public ItemStack getStackForm(long aAmount) {
- return new ItemStack(GregTech_API.sBlockMachines, (int) aAmount, getBaseMetaTileEntity().getMetaTileID());
- }
-
- public String getLocalName() {
- return GT_LanguageManager.getTranslation("gt.blockmachines." + mName + ".name");
- }
-
- @Override
- public void onServerStart() {/*Do nothing*/}
-
- @Override
- public void onWorldSave(File aSaveDirectory) {/*Do nothing*/}
-
- @Override
- public void onWorldLoad(File aSaveDirectory) {/*Do nothing*/}
-
- @Override
- public void onConfigLoad(GT_Config aConfig) {/*Do nothing*/}
-
- @Override
- public void setItemNBT(NBTTagCompound aNBT) {/*Do nothing*/}
-
- @Override
- @SideOnly(Side.CLIENT)
- public void registerIcons(IIconRegister aBlockIconRegister) {/*Do nothing*/}
-
- @Override
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aStack) {
- return true;
- }
-
- @Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {/*Do nothing*/}
-
- @Override
- public boolean onWrenchRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- if (getBaseMetaTileEntity().isValidFacing(aWrenchingSide)) {
- getBaseMetaTileEntity().setFrontFacing(aWrenchingSide);
- return true;
- }
- return false;
- }
-
- @Override
- public void onExplosion() {/*Do nothing*/}
-
- @Override
- public void onFirstTick(IGregTechTileEntity aBaseMetaTileEntity) {/*Do nothing*/}
-
- @Override
- public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {/*Do nothing*/}
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {/*Do nothing*/}
-
- @Override
- public void inValidate() {/*Do nothing*/}
-
- @Override
- public void onRemoval() {/*Do nothing*/}
-
- @Override
- public void initDefaultModes(NBTTagCompound aNBT) {/*Do nothing*/}
-
- /**
- * When a GUI is opened
- */
- public void onOpenGUI() {/*Do nothing*/}
-
- /**
- * When a GUI is closed
- */
- public void onCloseGUI() {/*Do nothing*/}
-
- /**
- * a Player rightclicks the Machine
- * Sneaky rightclicks are not getting passed to this!
- */
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
- return false;
- }
-
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, byte aSide, float aX, float aY, float aZ) {
- return onRightclick(aBaseMetaTileEntity, aPlayer);
- }
-
- @Override
- public void onLeftclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {/*Do nothing*/}
-
- @Override
- public void onValueUpdate(byte aValue) {/*Do nothing*/}
-
- @Override
- public byte getUpdateData() {
- return 0;
- }
-
- @Override
- public void doSound(byte aIndex, double aX, double aY, double aZ) {/*Do nothing*/}
-
- @Override
- public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) {/*Do nothing*/}
-
- @Override
- public void stopSoundLoop(byte aValue, double aX, double aY, double aZ) {/*Do nothing*/}
-
- @Override
- public final void sendSound(byte aIndex) {
- if (!getBaseMetaTileEntity().hasMufflerUpgrade()) getBaseMetaTileEntity().sendBlockEvent((byte) 4, aIndex);
- }
-
- @Override
- public final void sendLoopStart(byte aIndex) {
- if (!getBaseMetaTileEntity().hasMufflerUpgrade()) getBaseMetaTileEntity().sendBlockEvent((byte) 5, aIndex);
- }
-
- @Override
- public final void sendLoopEnd(byte aIndex) {
- if (!getBaseMetaTileEntity().hasMufflerUpgrade()) getBaseMetaTileEntity().sendBlockEvent((byte) 6, aIndex);
- }
-
- /**
- * @return true if this Device emits Energy at all
- */
- public boolean isElectric() {
- return true;
- }
-
- /**
- * @return true if this Device emits Energy at all
- */
- public boolean isPneumatic() {
- return false;
- }
-
- /**
- * @return true if this Device emits Energy at all
- */
- public boolean isSteampowered() {
- return false;
- }
-
- /**
- * @return true if this Device emits Energy at all
- */
- public boolean isEnetOutput() {
- return false;
- }
-
- /**
- * @return true if this Device consumes Energy at all
- */
- public boolean isEnetInput() {
- return false;
- }
-
- /**
- * @return the amount of EU, which can be stored in this Device. Default is 0 EU.
- */
- public long maxEUStore() {
- return 0;
- }
-
- /**
- * @return the amount of EU/t, which can be accepted by this Device before it explodes.
- */
- public long maxEUInput() {
- return 0;
- }
-
- /**
- * @return the amount of EU/t, which can be outputted by this Device.
- */
- public long maxEUOutput() {
- return 0;
- }
-
- /**
- * @return the amount of E-net Impulses of the maxEUOutput size, which can be outputted by this Device.
- * Default is 1 Pulse, this shouldn't be set to smaller Values than 1, as it won't output anything in that Case!
- */
- public long maxAmperesOut() {
- return 1;
- }
-
- /**
- * How many Amperes this Block can suck at max. Surpassing this value won't blow it up.
- */
- public long maxAmperesIn() {
- return 1;
- }
-
- /**
- * @return true if that Side is an Output.
- */
- public boolean isOutputFacing(byte aSide) {
- return false;
- }
-
- /**
- * @return true if that Side is an Input.
- */
- public boolean isInputFacing(byte aSide) {
- return false;
- }
-
- /**
- * @return true if Transformer Upgrades increase Packet Amount.
- */
- public boolean isTransformingLowEnergy() {
- return true;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return false;
- }
-
- @Override
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return false;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return true;
- }
-
- @Override
- public boolean setStackToZeroInsteadOfNull(int aIndex) {
- return false;
- }
-
- /**
- * This is used to get the internal Energy. I use this for the IDSU.
- */
- public long getEUVar() {
- return ((GregtechBaseMetaTileEntityLossless) mBaseMetaTileEntity).mStoredEnergy;
- }
-
- /**
- * This is used to set the internal Energy to the given Parameter. I use this for the IDSU.
- */
- public void setEUVar(long aEnergy) {
- ((GregtechBaseMetaTileEntityLossless) mBaseMetaTileEntity).mStoredEnergy = aEnergy;
- }
-
- /**
- * This is used to get the internal Steam Energy.
- */
- public long getSteamVar() {
- return ((GregtechBaseMetaTileEntityLossless) mBaseMetaTileEntity).mStoredSteam;
- }
-
- /**
- * This is used to set the internal Steam Energy to the given Parameter.
- */
- public void setSteamVar(long aSteam) {
- ((GregtechBaseMetaTileEntityLossless) mBaseMetaTileEntity).mStoredSteam = aSteam;
- }
-
- /**
- * @return the amount of Steam, which can be stored in this Device. Default is 0 EU.
- */
- public long maxSteamStore() {
- return 0;
- }
-
- /**
- * @return the amount of EU, which this Device stores before starting to emit Energy.
- * useful if you don't want to emit stored Energy until a certain Level is reached.
- */
- public long getMinimumStoredEU() {
- return 512;
- }
-
- /**
- * Determines the Tier of the Machine, used for de-charging Tools.
- */
- public long getInputTier() {
- return GT_Utility.getTier(getBaseMetaTileEntity().getInputVoltage());
- }
-
- /**
- * Determines the Tier of the Machine, used for charging Tools.
- */
- public long getOutputTier() {
- return GT_Utility.getTier(getBaseMetaTileEntity().getOutputVoltage());
- }
-
- /**
- * gets the first RechargerSlot
- */
- public int rechargerSlotStartIndex() {
- return 0;
- }
-
- /**
- * gets the amount of RechargerSlots
- */
- public int rechargerSlotCount() {
- return 0;
- }
-
- /**
- * gets the first DechargerSlot
- */
- public int dechargerSlotStartIndex() {
- return 0;
- }
-
- /**
- * gets the amount of DechargerSlots
- */
- public int dechargerSlotCount() {
- return 0;
- }
-
- /**
- * gets if this is protected from other Players per default or not
- */
- public boolean ownerControl() {
- return false;
- }
-
- @Override
- public ArrayList<String> getSpecialDebugInfo(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, int aLogLevel, ArrayList<String> aList) {
- return aList;
- }
-
- @Override
- public boolean isLiquidInput(byte aSide) {
- return true;
- }
-
- @Override
- public boolean isLiquidOutput(byte aSide) {
- return true;
- }
-
- /**
- * gets the contained Liquid
- */
- @Override
- public FluidStack getFluid() {
- return null;
- }
-
- /**
- * tries to fill this Tank
- */
- @Override
- public int fill(FluidStack resource, boolean doFill) {
- return 0;
- }
-
- /**
- * tries to empty this Tank
- */
- @Override
- public FluidStack drain(int maxDrain, boolean doDrain) {
- return null;
- }
-
- /**
- * Tank pressure
- */
- public int getTankPressure() {
- return 0;
- }
-
- /**
- * Liquid Capacity
- */
- @Override
- public int getCapacity() {
- return 0;
- }
-
- @Override
- public void onMachineBlockUpdate() {/*Do nothing*/}
-
- @Override
- public void receiveClientEvent(byte aEventID, byte aValue) {/*Do nothing*/}
-
- @Override
- public boolean isSimpleMachine() {
- return false;
- }
-
- /**
- * If this accepts up to 4 Overclockers
- */
- public boolean isOverclockerUpgradable() {
- return false;
- }
-
- /**
- * If this accepts Transformer Upgrades
- */
- public boolean isTransformerUpgradable() {
- return false;
- }
-
- /**
- * Progress this machine has already made
- */
- public int getProgresstime() {
- return 0;
- }
-
- /**
- * Progress this Machine has to do to produce something
- */
- public int maxProgresstime() {
- return 0;
- }
-
- /**
- * Increases the Progress, returns the overflown Progress.
- */
- public int increaseProgress(int aProgress) {
- return 0;
- }
-
- /**
- * If this TileEntity makes use of Sided Redstone behaviors.
- * Determines only, if the Output Redstone Array is getting filled with 0 for true, or 15 for false.
- */
- public boolean hasSidedRedstoneOutputBehavior() {
- return false;
- }
-
- /**
- * When the Facing gets changed.
- */
- public void onFacingChange() {/*Do nothing*/}
-
- /**
- * if the IC2 Teleporter can drain from this.
- */
- public boolean isTeleporterCompatible() {
- return isEnetOutput() && getBaseMetaTileEntity().getOutputVoltage() >= 128 && getBaseMetaTileEntity().getUniversalEnergyCapacity() >= 500000;
- }
-
- /**
- * Gets the Output for the comparator on the given Side
- */
- @Override
- public byte getComparatorValue(byte aSide) {
- return 0;
- }
-
- @Override
- public boolean acceptsRotationalEnergy(byte aSide) {
- return false;
- }
-
- @Override
- public boolean injectRotationalEnergy(byte aSide, long aSpeed, long aEnergy) {
- return false;
- }
-
- @Override
- public String getSpecialVoltageToolTip() {
- return null;
- }
-
- @Override
- public boolean isGivingInformation() {
- return false;
- }
-
- @Override
- public String[] getInfoData() {
- return new String[]{};
- }
-
- public boolean isDigitalChest() {
- return false;
- }
-
- public ItemStack[] getStoredItemData() {
- return null;
- }
-
- public void setItemCount(int aCount) {/*Do nothing*/}
-
- public int getMaxItemCount() {
- return 0;
- }
-
- @Override
- public int getSizeInventory() {
- return mInventory.length;
- }
-
- @Override
- public ItemStack getStackInSlot(int aIndex) {
- if (aIndex >= 0 && aIndex < mInventory.length) return mInventory[aIndex];
- return null;
- }
-
- @Override
- public void setInventorySlotContents(int aIndex, ItemStack aStack) {
- if (aIndex >= 0 && aIndex < mInventory.length) mInventory[aIndex] = aStack;
- }
-
- @Override
- public String getInventoryName() {
- if (GregTech_API.METATILEENTITIES[getBaseMetaTileEntity().getMetaTileID()] != null)
- return GregTech_API.METATILEENTITIES[getBaseMetaTileEntity().getMetaTileID()].getMetaName();
- return "";
- }
-
- @Override
- public int getInventoryStackLimit() {
- return 64;
- }
-
- @Override
- public boolean isItemValidForSlot(int aIndex, ItemStack aStack) {
- return getBaseMetaTileEntity().isValidSlot(aIndex);
- }
-
- @Override
- public ItemStack decrStackSize(int aIndex, int aAmount) {
- ItemStack tStack = getStackInSlot(aIndex), rStack = GT_Utility.copy(tStack);
- if (tStack != null) {
- if (tStack.stackSize <= aAmount) {
- if (setStackToZeroInsteadOfNull(aIndex)) tStack.stackSize = 0;
- else setInventorySlotContents(aIndex, null);
- } else {
- rStack = tStack.splitStack(aAmount);
- if (tStack.stackSize == 0 && !setStackToZeroInsteadOfNull(aIndex))
- setInventorySlotContents(aIndex, null);
- }
- }
- return rStack;
- }
-
- @Override
- public int[] getAccessibleSlotsFromSide(int aSide) {
- ArrayList<Integer> tList = new ArrayList<Integer>();
- IGregTechTileEntity tTileEntity = getBaseMetaTileEntity();
- boolean tSkip = tTileEntity.getCoverBehaviorAtSide((byte) aSide).letsItemsIn((byte) aSide, tTileEntity.getCoverIDAtSide((byte) aSide), tTileEntity.getCoverDataAtSide((byte) aSide), -2, tTileEntity) || tTileEntity.getCoverBehaviorAtSide((byte) aSide).letsItemsOut((byte) aSide, tTileEntity.getCoverIDAtSide((byte) aSide), tTileEntity.getCoverDataAtSide((byte) aSide), -2, tTileEntity);
- for (int i = 0; i < getSizeInventory(); i++)
- if (isValidSlot(i) && (tSkip || tTileEntity.getCoverBehaviorAtSide((byte) aSide).letsItemsOut((byte) aSide, tTileEntity.getCoverIDAtSide((byte) aSide), tTileEntity.getCoverDataAtSide((byte) aSide), i, tTileEntity) || tTileEntity.getCoverBehaviorAtSide((byte) aSide).letsItemsIn((byte) aSide, tTileEntity.getCoverIDAtSide((byte) aSide), tTileEntity.getCoverDataAtSide((byte) aSide), i, tTileEntity)))
- tList.add(i);
- int[] rArray = new int[tList.size()];
- for (int i = 0; i < rArray.length; i++) rArray[i] = tList.get(i);
- return rArray;
- }
-
- @Override
- public boolean canInsertItem(int aIndex, ItemStack aStack, int aSide) {
- return isValidSlot(aIndex) && aStack != null && aIndex < mInventory.length && (mInventory[aIndex] == null || GT_Utility.areStacksEqual(aStack, mInventory[aIndex])) && allowPutStack(getBaseMetaTileEntity(), aIndex, (byte) aSide, aStack);
- }
-
- @Override
- public boolean canExtractItem(int aIndex, ItemStack aStack, int aSide) {
- return isValidSlot(aIndex) && aStack != null && aIndex < mInventory.length && allowPullStack(getBaseMetaTileEntity(), aIndex, (byte) aSide, aStack);
- }
-
- @Override
- public boolean canFill(ForgeDirection aSide, Fluid aFluid) {
- return fill(aSide, new FluidStack(aFluid, 1), false) == 1;
- }
-
- @Override
- public boolean canDrain(ForgeDirection aSide, Fluid aFluid) {
- return drain(aSide, new FluidStack(aFluid, 1), false) != null;
- }
-
- @Override
- public FluidTankInfo[] getTankInfo(ForgeDirection aSide) {
- if (getCapacity() <= 0 && !getBaseMetaTileEntity().hasSteamEngineUpgrade()) return new FluidTankInfo[]{};
- return new FluidTankInfo[]{getInfo()};
- }
-
- public int fill_default(ForgeDirection aSide, FluidStack aFluid, boolean doFill) {
- return fill(aFluid, doFill);
- }
-
- @Override
- public int fill(ForgeDirection aSide, FluidStack aFluid, boolean doFill) {
- if (getBaseMetaTileEntity().hasSteamEngineUpgrade() && GT_ModHandler.isSteam(aFluid) && aFluid.amount > 1) {
- int tSteam = (int) Math.min(Integer.MAX_VALUE, Math.min(aFluid.amount / 2, getBaseMetaTileEntity().getSteamCapacity() - getBaseMetaTileEntity().getStoredSteam()));
- if (tSteam > 0) {
- if (doFill) getBaseMetaTileEntity().increaseStoredSteam(tSteam, true);
- return tSteam * 2;
- }
- } else {
- return fill_default(aSide, aFluid, doFill);
- }
- return 0;
- }
-
- @Override
- public FluidStack drain(ForgeDirection aSide, FluidStack aFluid, boolean doDrain) {
- if (getFluid() != null && aFluid != null && getFluid().isFluidEqual(aFluid))
- return drain(aFluid.amount, doDrain);
- return null;
- }
-
- @Override
- public FluidStack drain(ForgeDirection aSide, int maxDrain, boolean doDrain) {
- return drain(maxDrain, doDrain);
- }
-
- @Override
- public int getFluidAmount() {
- return 0;
- }
-
- @Override
- public FluidTankInfo getInfo() {
- return new FluidTankInfo(this);
- }
-
- @Override
- public String getMetaName() {
- return mName;
- }
-
- @Override
- public ItemStack getStackInSlotOnClosing(int i) {
- return null;
- }
-
- @Override
- public boolean hasCustomInventoryName() {
- return false;
- }
-
- @Override
- public boolean doTickProfilingMessageDuringThisTick() {
- return doTickProfilingInThisTick;
- }
-
- @Override
- public void markDirty() {
- //
- }
-
- @Override
- public boolean isUseableByPlayer(EntityPlayer entityplayer) {
- return false;
- }
-
- @Override
- public void openInventory() {
- //
- }
-
- @Override
- public void closeInventory() {
- //
- }
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return null;
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return null;
- }
-
- @Override
- public boolean connectsToItemPipe(byte aSide) {
- return false;
- }
-
- @Override
- public float getExplosionResistance(byte aSide) {
- return 10.0F;
- }
-
- @Override
- public ItemStack[] getRealInventory() {
- return mInventory;
- }
-
- @Override
- public void onColorChangeServer(byte aColor) {
- //
- }
-
- @Override
- public void onColorChangeClient(byte aColor) {
- //
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public boolean renderInInventory(Block aBlock, int aMeta, RenderBlocks aRenderer) {
- return false;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public boolean renderInWorld(IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, RenderBlocks aRenderer) {
- return false;
- }
-
- @Override
- public void doExplosion(long aExplosionPower) {
- float tStrength = aExplosionPower < V[0] ? 1.0F : aExplosionPower < V[1] ? 2.0F : aExplosionPower < V[2] ? 3.0F : aExplosionPower < V[3] ? 4.0F : aExplosionPower < V[4] ? 5.0F : aExplosionPower < V[4] * 2 ? 6.0F : aExplosionPower < V[5] ? 7.0F : aExplosionPower < V[6] ? 8.0F : aExplosionPower < V[7] ? 9.0F : 10.0F;
- int tX = getBaseMetaTileEntity().getXCoord(), tY = getBaseMetaTileEntity().getYCoord(), tZ = getBaseMetaTileEntity().getZCoord();
- World tWorld = getBaseMetaTileEntity().getWorld();
- GT_Utility.sendSoundToPlayers(tWorld, GregTech_API.sSoundList.get(209), 1.0F, -1, tX, tY, tZ);
- tWorld.setBlock(tX, tY, tZ, Blocks.air);
- if (GregTech_API.sMachineExplosions)
- tWorld.createExplosion(null, tX + 0.5, tY + 0.5, tZ + 0.5, tStrength, true);
- }
-
- @Override
- public int getLightOpacity() {
- return ((GregtechBaseMetaTileEntityLossless) getBaseMetaTileEntity()).getLightValue() > 0 ? 0 : 255;
- }
-
- @Override
- public void addCollisionBoxesToList(World aWorld, int aX, int aY, int aZ, AxisAlignedBB inputAABB, List<AxisAlignedBB> outputAABB, Entity collider) {
- AxisAlignedBB axisalignedbb1 = getCollisionBoundingBoxFromPool(aWorld, aX, aY, aZ);
- if (axisalignedbb1 != null && inputAABB.intersectsWith(axisalignedbb1)) outputAABB.add(axisalignedbb1);
- }
-
- @Override
- public AxisAlignedBB getCollisionBoundingBoxFromPool(World aWorld, int aX, int aY, int aZ) {
- return AxisAlignedBB.getBoundingBox(aX, aY, aZ, aX + 1, aY + 1, aZ + 1);
- }
-
- @Override
- public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity collider) {
- //
- }
-
- @Override
- public void onCreated(ItemStack aStack, World aWorld, EntityPlayer aPlayer) {
- //
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/machines/GregtechMetaSafeBlockBase.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/machines/GregtechMetaSafeBlockBase.java
deleted file mode 100644
index 991f1b5d6e..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/base/machines/GregtechMetaSafeBlockBase.java
+++ /dev/null
@@ -1,350 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.machines;
-
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_TieredMachineBlock;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Utility;
-
-import java.util.UUID;
-
-import miscutil.core.handler.events.UnbreakableBlockManager;
-import miscutil.core.util.Utils;
-import miscutil.core.util.player.PlayerCache;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-
-public abstract class GregtechMetaSafeBlockBase extends GT_MetaTileEntity_TieredMachineBlock {
- public boolean bOutput = false, bRedstoneIfFull = false, bInvert = false, bUnbreakable = false;
- public int mSuccess = 0, mTargetStackSize = 0;
- public UUID ownerUUID;
- UnbreakableBlockManager Xasda = new UnbreakableBlockManager();
- private boolean value_last = false, value_current = false;
-
- public GregtechMetaSafeBlockBase(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String aDescription) {
- super(aID, aName, aNameRegional, aTier, aInvSlotCount, aDescription);
- }
-
- public GregtechMetaSafeBlockBase(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, aInvSlotCount, aDescription, aTextures);
- }
-
- @Override
- public ITexture[][][] getTextureSet(ITexture[] aTextures) {
- ITexture[][][] rTextures = new ITexture[6][17][];
- ITexture tIcon = getOverlayIcon(), tOut = new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_QCHEST), tUp = new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_VENT), tShitGoesWrong = new GT_RenderedTexture(Textures.BlockIcons.NAQUADAH_REACTOR_FLUID_SIDE_ACTIVE);
- for (byte i = -1; i < 16; i++) {
- rTextures[0][i + 1] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i + 1], tUp, tIcon}; //Back
- rTextures[1][i + 1] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i + 1], tIcon}; // Right, Strangely The top side as well when facing East?
- rTextures[2][i + 1] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i + 1], tIcon}; // Top And Bottom, When Facing South (What the hell?)
- rTextures[3][i + 1] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i + 1], tIcon}; // Left, Top if facing West and Bottom if facing east?
- rTextures[4][i + 1] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i + 1], tIcon}; // Top and Bottom when Facing North..
- rTextures[5][i + 1] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i + 1], tOut}; // Front
- }
- return rTextures;
-
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) return mTextures[5][aColorIndex + 1];
- if (GT_Utility.getOppositeSide(aSide) == aFacing) return mTextures[0][aColorIndex + 1];
- switch (aFacing) {
- case 0:
- return mTextures[4][aColorIndex + 1];
- case 1:
- return mTextures[2][aColorIndex + 1];
- case 2:
- switch (aSide) {
- case 0:
- return mTextures[2][aColorIndex + 1];
- case 1:
- return mTextures[2][aColorIndex + 1];
- case 4:
- return mTextures[1][aColorIndex + 1];
- case 5:
- return mTextures[3][aColorIndex + 1];
- }
- case 3:
- switch (aSide) {
- case 0:
- return mTextures[4][aColorIndex + 1];
- case 1:
- return mTextures[4][aColorIndex + 1];
- case 4:
- return mTextures[3][aColorIndex + 1];
- case 5:
- return mTextures[1][aColorIndex + 1];
- }
- case 4:
- switch (aSide) {
- case 0:
- return mTextures[3][aColorIndex + 1];
- case 1:
- return mTextures[1][aColorIndex + 1];
- case 2:
- return mTextures[3][aColorIndex + 1];
- case 3:
- return mTextures[1][aColorIndex + 1];
- }
- case 5:
- switch (aSide) {
- case 0:
- return mTextures[1][aColorIndex + 1];
- case 1:
- return mTextures[3][aColorIndex + 1];
- case 2:
- return mTextures[1][aColorIndex + 1];
- case 3:
- return mTextures[3][aColorIndex + 1];
- }
- }
- return mTextures[5][aColorIndex + 1];
- }
-
- @Override
- public boolean isSimpleMachine() {
- return false;
- }
-
- @Override
- public boolean isValidSlot(int aIndex) {
- return aIndex < mInventory.length - 1;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return true;
- }
-
- @Override
- public boolean isEnetInput() {
- return true;
- }
-
- @Override
- public boolean isEnetOutput() {
- return true;
- }
-
- @Override
- public boolean isInputFacing(byte aSide) {
- return !isOutputFacing(aSide);
- }
-
- @Override
- public boolean isOutputFacing(byte aSide) {
- return getBaseMetaTileEntity().getBackFacing() == aSide;
- }
-
- @Override
- public boolean isTeleporterCompatible() {
- return false;
- }
-
- @Override
- public long getMinimumStoredEU() {
- return 512;
- }
-
- @Override
- public long maxEUStore() {
- return 512 + V[mTier] * 50;
- }
-
- @Override
- public long maxEUInput() {
- return V[mTier];
- }
-
- @Override
- public long maxEUOutput() {
- return bOutput ? V[mTier] : 0;
- }
-
- @Override
- public long maxAmperesIn() {
- return 1;
- }
-
- @Override
- public long maxAmperesOut() {
- return 1;
- }
-
- @Override
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return true;
- }
-
- public abstract ITexture getOverlayIcon();
-
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
-
- if (aBaseMetaTileEntity.isClientSide()) {
- //Utils.LOG_WARNING("Clicky Clicky.");
- return true;
-
- }
- if (!aPlayer.equals(null)) {
- UUID tempUUID = aPlayer.getUniqueID();
- /*if (!aPlayer.worldObj.isRemote){
- //PlayerCache.appendParamChanges(aPlayer.getDisplayName(), aPlayer.getUniqueID().toString());
- }*/
- //Utils.LOG_INFO("test");
- if (ownerUUID == null){
- Utils.LOG_INFO("No owner yet for this block.");
- }
- else {
- //Utils.LOG_INFO("test");
- Utils.LOG_INFO("Current Owner: "+PlayerCache.lookupPlayerByUUID(ownerUUID)+" - UUID: "+ownerUUID);
- }
- Utils.LOG_WARNING("Is ownerUUID Null");
- if (ownerUUID == null){
- Utils.LOG_WARNING("OwnerUUID is Null, let's set it.");
- Utils.LOG_WARNING("Accessing Players UUID is: "+tempUUID);
- ownerUUID = tempUUID;
- //Utils.messagePlayer(aPlayer, "Owner of this safe, now set. Try accessing it again.");
- Utils.LOG_WARNING("Block Owner is now set to: "+ownerUUID);
- }
- Utils.LOG_WARNING("No, it is not.");
- Utils.LOG_WARNING("Checking ownerUUID.");
- if (ownerUUID != null){
- Utils.LOG_WARNING("ownerUUID != Null, if accessor == owner.");
- Utils.LOG_WARNING("Accessing is: "+PlayerCache.lookupPlayerByUUID(tempUUID));
- if (ownerUUID.equals(tempUUID)){
- Utils.LOG_WARNING("Owner's UUID: "+ownerUUID);
- aBaseMetaTileEntity.openGUI(aPlayer);
- //Utils.LOG_WARNING("GUI should now be open for you sir.");
- }
- else {
- Utils.messagePlayer(aPlayer, "Access Denied, This does not belong to you.");
- Utils.messagePlayer(aPlayer, "it is owned by: "+PlayerCache.lookupPlayerByUUID(ownerUUID));
- Utils.LOG_WARNING("Expecting Player : "+PlayerCache.lookupPlayerByUUID(ownerUUID));
- Utils.LOG_ERROR("Access Denied.");
- return true;
- }
-
- }
-
- /*else {
- Utils.LOG_ERROR("This is NOT good. Tell Draknyte1 your safe broke.");
- }*/
- /*Utils.LOG_WARNING("Clicky Clicky.");
- Utils.messagePlayer(aPlayer, "Owner of this safe, now set.");
- aBaseMetaTileEntity.openGUI(aPlayer); */
-
- }
- return true;
- }
-
- @Override
- public void saveNBTData(NBTTagCompound aNBT) {
- aNBT.setBoolean("bUnbreakable", bUnbreakable);
- aNBT.setBoolean("bOutput", bOutput);
- aNBT.setBoolean("bRedstoneIfFull", bRedstoneIfFull);
- aNBT.setInteger("mTargetStackSize", mTargetStackSize);
- aNBT.setString("ownerUUID", ownerUUID.toString());
- }
-
- @Override
- public void loadNBTData(NBTTagCompound aNBT) {
- bUnbreakable = aNBT.getBoolean("bUnbreakable");
- bOutput = aNBT.getBoolean("bOutput");
- bRedstoneIfFull = aNBT.getBoolean("bRedstoneIfFull");
- mTargetStackSize = aNBT.getInteger("mTargetStackSize");
- ownerUUID = UUID.fromString(aNBT.getString("ownerUUID"));
- }
-
- @Override
- public void setItemNBT(NBTTagCompound aNBT) {
- super.setItemNBT(aNBT);
- if (mTargetStackSize > 0) aNBT.setInteger("mTargetStackSize", mTargetStackSize);
- }
-
- @Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- if (aSide == getBaseMetaTileEntity().getBackFacing()) {
- mTargetStackSize = (byte) ((mTargetStackSize + (aPlayer.isSneaking()? -1 : 1)) % 65);
- if (mTargetStackSize == 0) {
- GT_Utility.sendChatToPlayer(aPlayer, "Do not regulate Item Stack Size");
- } else {
- GT_Utility.sendChatToPlayer(aPlayer, "Regulate Item Stack Size to: " + mTargetStackSize);
- }
- }
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
- /*if (aBaseMetaTileEntity.isAllowedToWork() && aBaseMetaTileEntity.isServerSide() && aBaseMetaTileEntity.isUniversalEnergyStored(getMinimumStoredEU()) && (aBaseMetaTileEntity.hasWorkJustBeenEnabled() || aBaseMetaTileEntity.hasInventoryBeenModified() || aTimer % 200 == 0 || mSuccess > 0)) {
- */
- if (aBaseMetaTileEntity.isServerSide() && (aBaseMetaTileEntity.hasWorkJustBeenEnabled() || aBaseMetaTileEntity.hasInventoryBeenModified() || aTimer % 200 == 0 || mSuccess > 0)) {
- value_last = value_current;
- value_current = bUnbreakable;
- if (value_last != value_current){
- Utils.LOG_WARNING("VALUE CHANGE - Ticking for a moment.");
- if (bUnbreakable == true){
- //Xasda.setmTileEntity((BaseMetaTileEntity) aBaseMetaTileEntity);
- //Utils.LOG_ERROR("Safe is Indestructible.");
- this.getBaseMetaTileEntity().getBlock(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()).setResistance(Float.MAX_VALUE);
- this.getBaseMetaTileEntity().getBlock(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()).setBlockUnbreakable();
- }
- else {
- //Xasda.setmTileEntity((BaseMetaTileEntity) aBaseMetaTileEntity);
- //Utils.LOG_ERROR("Safe is not Indestructible.");
- this.getBaseMetaTileEntity().getBlock(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()).setResistance(1F);
- this.getBaseMetaTileEntity().getBlock(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()).setHardness(2);
-
- }
- }
- else {
-
- }
-
-
-
-
-
-
-
-
- /*mSuccess--;
- moveItems(aBaseMetaTileEntity, aTimer);
- aBaseMetaTileEntity.setGenericRedstoneOutput(bInvert);
- if (bRedstoneIfFull) {
- aBaseMetaTileEntity.setGenericRedstoneOutput(!bInvert);
- for (int i = 0; i < mInventory.length; i++)
- if (isValidSlot(i)) {
- if (mInventory[i] == null) {
- aBaseMetaTileEntity.setGenericRedstoneOutput(bInvert);
- aBaseMetaTileEntity.decreaseStoredEnergyUnits(1, true);
- break;
- }
- }
- }
- }*/
- }
- }
-
- /*protected void moveItems(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
- int tCost = GT_Utility.moveOneItemStack(aBaseMetaTileEntity, aBaseMetaTileEntity.getTileEntityAtSide(aBaseMetaTileEntity.getBackFacing()), aBaseMetaTileEntity.getBackFacing(), aBaseMetaTileEntity.getFrontFacing(), null, false, mTargetStackSize == 0 ? 64 : (byte) mTargetStackSize, mTargetStackSize == 0 ? 1 : (byte) mTargetStackSize, (byte) 64, (byte) 1);
- if (tCost > 0 || aBaseMetaTileEntity.hasInventoryBeenModified()) {
- mSuccess = 50;
- aBaseMetaTileEntity.decreaseStoredEnergyUnits(Math.abs(tCost), true);
- }
- }*/
-
- @Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return true;
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aSide != aBaseMetaTileEntity.getBackFacing();
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/creative/GregtechMetaCreativeEnergyBuffer.java b/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/creative/GregtechMetaCreativeEnergyBuffer.java
deleted file mode 100644
index e2dd128d8b..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/metatileentity/implementations/creative/GregtechMetaCreativeEnergyBuffer.java
+++ /dev/null
@@ -1,269 +0,0 @@
-package miscutil.core.xmod.gregtech.api.metatileentity.implementations.creative;
-
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.enums.Textures;
-import gregtech.api.gui.GT_Container_1by1;
-import gregtech.api.gui.GT_Container_2by2;
-import gregtech.api.gui.GT_Container_3by3;
-import gregtech.api.gui.GT_Container_4by4;
-import gregtech.api.gui.GT_GUIContainer_1by1;
-import gregtech.api.gui.GT_GUIContainer_2by2;
-import gregtech.api.gui.GT_GUIContainer_3by3;
-import gregtech.api.gui.GT_GUIContainer_4by4;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.items.GT_MetaBase_Item;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-import ic2.api.item.IElectricItem;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaEnergyBuffer;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.util.EnumChatFormatting;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- *
- * This is the main construct for my Basic Machines such as the Automatic Extractor
- * Extend this class to make a simple Machine
- */
-public class GregtechMetaCreativeEnergyBuffer extends GregtechMetaEnergyBuffer {
-
-
- public GregtechMetaCreativeEnergyBuffer(String aName, int aTier,
- String aDescription, ITexture[][][] aTextures, int aSlotCount) {
- super(aName, aTier, aDescription, aTextures, aSlotCount);
- // TODO Auto-generated constructor stub
- }
-
- public GregtechMetaCreativeEnergyBuffer(int aID, String aName,
- String aNameRegional, int aTier, String aDescription, int aSlotCount) {
- super(aID, aName, aNameRegional, aTier, aDescription, aSlotCount);
- }
-
- public boolean mCharge = false, mDecharge = false;
- public int mBatteryCount = 1, mChargeableCount = 1;
-
- @Override
- public String[] getDescription() {
- return new String[] {mDescription, "Added by: " + EnumChatFormatting.DARK_GREEN+"Alkalus"};
- }
-
- /*
- * MACHINE_STEEL_SIDE
- */
- @Override
- public ITexture[][][] getTextureSet(ITexture[] aTextures) {
- ITexture[][][] rTextures = new ITexture[2][17][];
- for (byte i = -1; i < 16; i++) {
- rTextures[0][i + 1] = new ITexture[] { new GT_RenderedTexture(
- Textures.BlockIcons.MACHINE_CASING_MAGIC_FRONT) };
- rTextures[1][i + 1] = new ITexture[] {
- new GT_RenderedTexture(
- Textures.BlockIcons.MACHINE_CASING_MAGIC_FRONT),
- mInventory.length > 4 ? Textures.BlockIcons.OVERLAYS_ENERGY_OUT_MULTI[mTier]
- : Textures.BlockIcons.OVERLAYS_ENERGY_OUT[mTier] };
- }
- return rTextures;
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity,
- byte aSide, byte aFacing, byte aColorIndex, boolean aActive,
- boolean aRedstone) {
- return mTextures[aSide == aFacing ? 1 : 0][aColorIndex + 1];
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaCreativeEnergyBuffer(mName, mTier, mDescription,
- mTextures, mInventory.length);
- }
-
- @Override public boolean isSimpleMachine() {return false;}
- @Override public boolean isElectric() {return true;}
- @Override public boolean isValidSlot(int aIndex) {return true;}
- @Override public boolean isFacingValid(byte aFacing) {return true;}
- @Override public boolean isEnetInput() {return true;}
- @Override public boolean isEnetOutput() {return true;}
- @Override public boolean isInputFacing(byte aSide) {return aSide!=getBaseMetaTileEntity().getFrontFacing();}
- @Override public boolean isOutputFacing(byte aSide) {return aSide==getBaseMetaTileEntity().getFrontFacing();}
- @Override public boolean isTeleporterCompatible() {return false;}
-
- @Override
- public long getMinimumStoredEU() {
- return 1;
- }
-
- @Override
- public long maxEUStore() {
- return Long.MAX_VALUE;
- }
-
- @Override
- public long maxEUInput() {
- return V[mTier];
- }
-
- @Override
- public long maxEUOutput() {
- return V[mTier];
- }
-
- @Override
- public long maxAmperesIn() {
- return mChargeableCount * 16;
- }
-
- @Override
- public long maxAmperesOut() {
- return mChargeableCount * 16;
- }
- @Override public int rechargerSlotStartIndex() {return 0;}
- @Override public int dechargerSlotStartIndex() {return 0;}
- @Override public int rechargerSlotCount() {return mCharge?mInventory.length:0;}
- @Override public int dechargerSlotCount() {return mDecharge?mInventory.length:0;}
- @Override public int getProgresstime() {return Integer.MAX_VALUE;}
- @Override public int maxProgresstime() {return (int)getBaseMetaTileEntity().getUniversalEnergyCapacity();}
- @Override public boolean isAccessAllowed(EntityPlayer aPlayer) {return true;}
-
- @Override
- public void saveNBTData(NBTTagCompound aNBT) {
- //
- }
-
- @Override
- public void loadNBTData(NBTTagCompound aNBT) {
- //
- }
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory,
- IGregTechTileEntity aBaseMetaTileEntity) {
- switch (mInventory.length) {
- case 1: return new GT_Container_1by1(aPlayerInventory, aBaseMetaTileEntity);
- case 4: return new GT_Container_2by2(aPlayerInventory, aBaseMetaTileEntity);
- case 9: return new GT_Container_3by3(aPlayerInventory, aBaseMetaTileEntity);
- case 16: return new GT_Container_4by4(aPlayerInventory, aBaseMetaTileEntity);
- }
- return new GT_Container_1by1(aPlayerInventory, aBaseMetaTileEntity);
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory,
- IGregTechTileEntity aBaseMetaTileEntity) {
- switch (mInventory.length) {
- case 1: return new GT_GUIContainer_1by1(aPlayerInventory, aBaseMetaTileEntity, getLocalName());
- case 4: return new GT_GUIContainer_2by2(aPlayerInventory, aBaseMetaTileEntity, getLocalName());
- case 9: return new GT_GUIContainer_3by3(aPlayerInventory, aBaseMetaTileEntity, getLocalName());
- case 16: return new GT_GUIContainer_4by4(aPlayerInventory, aBaseMetaTileEntity, getLocalName());
- }
- return new GT_GUIContainer_1by1(aPlayerInventory, aBaseMetaTileEntity, getLocalName());
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- this.getBaseMetaTileEntity().increaseStoredEnergyUnits(Integer.MAX_VALUE, true);
- if (aBaseMetaTileEntity.isServerSide()) {
- mCharge = aBaseMetaTileEntity.getStoredEU() / 2 > aBaseMetaTileEntity
- .getEUCapacity() / 3;
- mDecharge = aBaseMetaTileEntity.getStoredEU() < aBaseMetaTileEntity.getEUCapacity() / 3;
- mBatteryCount = 1;
- mChargeableCount = 1;
- this.getBaseMetaTileEntity().increaseStoredEnergyUnits(mMax, true);
- for (ItemStack tStack : mInventory) if (GT_ModHandler.isElectricItem(tStack, mTier)) {
- if (GT_ModHandler.isChargerItem(tStack)) mBatteryCount++;
- mChargeableCount++;
- }
- }
- }
-
- @Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- if(GT_ModHandler.isElectricItem(aStack)&&aStack.getUnlocalizedName().startsWith("gt.metaitem.01.")){
- String name = aStack.getUnlocalizedName();
- if(name.equals("gt.metaitem.01.32510")||
- name.equals("gt.metaitem.01.32511")||
- name.equals("gt.metaitem.01.32520")||
- name.equals("gt.metaitem.01.32521")||
- name.equals("gt.metaitem.01.32530")||
- name.equals("gt.metaitem.01.32531")){
- return true;
- }
- }
- return false;
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- if(!GT_Utility.isStackValid(aStack)){
- return false;
- }
- if(GT_ModHandler.isElectricItem(aStack, this.mTier)){
- return true;
- }
- return false;
- }
-
- @Override
- public long[] getStoredEnergy(){
- long tScale = getBaseMetaTileEntity().getEUCapacity();
- long tStored = getBaseMetaTileEntity().getStoredEU();
- this.setEUVar(Long.MAX_VALUE);
- if (mInventory != null) {
- for (ItemStack aStack : mInventory) {
- if (GT_ModHandler.isElectricItem(aStack)) {
-
- if (aStack.getItem() instanceof GT_MetaBase_Item) {
- Long[] stats = ((GT_MetaBase_Item) aStack.getItem())
- .getElectricStats(aStack);
- if (stats != null) {
- tScale = tScale + stats[0];
- tStored = tStored
- + ((GT_MetaBase_Item) aStack.getItem())
- .getRealCharge(aStack);
- }
- } else if (aStack.getItem() instanceof IElectricItem) {
- tStored = tStored
- + (long) ic2.api.item.ElectricItem.manager
- .getCharge(aStack);
- tScale = tScale
- + (long) ((IElectricItem) aStack.getItem())
- .getMaxCharge(aStack);
- }
- }
- }
-
- }
- return new long[] { tStored, tScale };
- }
-
- private long count=0;
- private long mStored=0;
- private long mMax=0;
-
- @Override
- public String[] getInfoData() {
- count++;
- if(mMax==0||count%20==0){
- long[] tmp = getStoredEnergy();
- mStored=tmp[0];
- mMax=tmp[1];
- }
-
- return new String[] {
- getLocalName(),
- "THIS IS A CREATIVE ITEM - FOR TESTING",
- GT_Utility.formatNumbers(mStored)+" EU /",
- GT_Utility.formatNumbers(mMax)+" EU"};
- }
-
- @Override
- public boolean isGivingInformation() {
- return true;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechFluid.java b/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechFluid.java
deleted file mode 100644
index f894b6e45b..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechFluid.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package miscutil.core.xmod.gregtech.api.objects;
-
-import gregtech.api.GregTech_API;
-import miscutil.core.lib.CORE;
-import net.minecraftforge.fluids.Fluid;
-
-public class GregtechFluid extends Fluid implements Runnable {
- public final String mTextureName;
- private final short[] mRGBa;
-
- public GregtechFluid(String aName, String aTextureName, short[] aRGBa) {
- super(aName);
- mRGBa = aRGBa;
- mTextureName = aTextureName;
- GregTech_API.sGTBlockIconload.add(this);
- }
-
- @Override
- public int getColor() {
- return (Math.max(0, Math.min(255, mRGBa[0])) << 16) | (Math.max(0, Math.min(255, mRGBa[1])) << 8) | Math.max(0, Math.min(255, mRGBa[2]));
- }
-
- @Override
- public void run() {
- setIcons(GregTech_API.sBlockIcons.registerIcon(CORE.MODID+ ":" + "fluids/fluid." + mTextureName));
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechItemData.java b/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechItemData.java
deleted file mode 100644
index 864cf77c31..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechItemData.java
+++ /dev/null
@@ -1,130 +0,0 @@
-package miscutil.core.xmod.gregtech.api.objects;
-
-import gregtech.api.objects.GT_ArrayList;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.List;
-
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import net.minecraft.item.ItemStack;
-
-public class GregtechItemData {
- private static final GregtechMaterialStack[] EMPTY_GT_MaterialStack_ARRAY = new GregtechMaterialStack[0];
-
- public final List<Object> mExtraData = new GT_ArrayList<Object>(false, 1);
- public final GregtechOrePrefixes mPrefix;
- public final GregtechMaterialStack mMaterial;
- public final GregtechMaterialStack[] mByProducts;
- public boolean mBlackListed = false;
- public ItemStack mUnificationTarget = null;
-
- public GregtechItemData(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, boolean aBlackListed) {
- mPrefix = aPrefix;
- mMaterial = aMaterial == null ? null : new GregtechMaterialStack(aMaterial, aPrefix.mMaterialAmount);
- mBlackListed = aBlackListed;
- mByProducts = aPrefix.mSecondaryMaterial == null || aPrefix.mSecondaryMaterial.mMaterial == null ? EMPTY_GT_MaterialStack_ARRAY : new GregtechMaterialStack[]{aPrefix.mSecondaryMaterial.clone()};
- }
-
- public GregtechItemData(GregtechOrePrefixes aPrefix, GT_Materials aMaterial) {
- this(aPrefix, aMaterial, false);
- }
-
- public GregtechItemData(GregtechMaterialStack aMaterial, GregtechMaterialStack... aByProducts) {
- mPrefix = null;
- mMaterial = aMaterial.mMaterial == null ? null : aMaterial.clone();
- mBlackListed = true;
- if (aByProducts == null) {
- mByProducts = EMPTY_GT_MaterialStack_ARRAY;
- } else {
- GregtechMaterialStack[] tByProducts = aByProducts.length < 1 ? EMPTY_GT_MaterialStack_ARRAY : new GregtechMaterialStack[aByProducts.length];
- int j = 0;
- for (int i = 0; i < aByProducts.length; i++)
- if (aByProducts[i] != null && aByProducts[i].mMaterial != null)
- tByProducts[j++] = aByProducts[i].clone();
- mByProducts = j > 0 ? new GregtechMaterialStack[j] : EMPTY_GT_MaterialStack_ARRAY;
- for (int i = 0; i < mByProducts.length; i++) mByProducts[i] = tByProducts[i];
- }
- }
-
- public GregtechItemData(GT_Materials aMaterial, long aAmount, GregtechMaterialStack... aByProducts) {
- this(new GregtechMaterialStack(aMaterial, aAmount), aByProducts);
- }
-
- public GregtechItemData(GT_Materials aMaterial, long aAmount, GT_Materials aByProduct, long aByProductAmount) {
- this(new GregtechMaterialStack(aMaterial, aAmount), new GregtechMaterialStack(aByProduct, aByProductAmount));
- }
-
- public GregtechItemData(GregtechItemData... aData) {
- mPrefix = null;
- mBlackListed = true;
-
- ArrayList<GregtechMaterialStack> aList = new ArrayList<GregtechMaterialStack>(), rList = new ArrayList<GregtechMaterialStack>();
-
- for (GregtechItemData tData : aData)
- if (tData != null) {
- if (tData.hasValidMaterialData() && tData.mMaterial.mAmount > 0) aList.add(tData.mMaterial.clone());
- for (GregtechMaterialStack tMaterial : tData.mByProducts)
- if (tMaterial.mAmount > 0) aList.add(tMaterial.clone());
- }
-
- for (GregtechMaterialStack aMaterial : aList) {
- boolean temp = true;
- for (GregtechMaterialStack tMaterial : rList)
- if (aMaterial.mMaterial == tMaterial.mMaterial) {
- tMaterial.mAmount += aMaterial.mAmount;
- temp = false;
- break;
- }
- if (temp) rList.add(aMaterial.clone());
- }
-
- Collections.sort(rList, new Comparator<GregtechMaterialStack>() {
- @Override
- public int compare(GregtechMaterialStack a, GregtechMaterialStack b) {
- return a.mAmount == b.mAmount ? 0 : a.mAmount > b.mAmount ? -1 : +1;
- }
- });
-
- if (rList.isEmpty()) {
- mMaterial = null;
- } else {
- mMaterial = rList.get(0);
- rList.remove(0);
- }
-
- mByProducts = rList.toArray(new GregtechMaterialStack[rList.size()]);
- }
-
- public boolean hasValidPrefixMaterialData() {
- return mPrefix != null && mMaterial != null && mMaterial.mMaterial != null;
- }
-
- public boolean hasValidPrefixData() {
- return mPrefix != null;
- }
-
- public boolean hasValidMaterialData() {
- return mMaterial != null && mMaterial.mMaterial != null;
- }
-
- public ArrayList<GregtechMaterialStack> getAllGT_MaterialStacks() {
- ArrayList<GregtechMaterialStack> rList = new ArrayList();
- if (hasValidMaterialData()) rList.add(mMaterial);
- rList.addAll(Arrays.asList(mByProducts));
- return rList;
- }
-
- public GregtechMaterialStack getByProduct(int aIndex) {
- return aIndex >= 0 && aIndex < mByProducts.length ? mByProducts[aIndex] : null;
- }
-
- @Override
- public String toString() {
- if (mPrefix == null || mMaterial == null || mMaterial.mMaterial == null) return "";
- return mPrefix.name() + mMaterial.mMaterial.name();
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechMaterialStack.java b/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechMaterialStack.java
deleted file mode 100644
index 56410757f6..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechMaterialStack.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package miscutil.core.xmod.gregtech.api.objects;
-
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-
-public class GregtechMaterialStack implements Cloneable {
- public long mAmount;
- public GT_Materials mMaterial;
-
- public GregtechMaterialStack(GT_Materials aMaterial, long aAmount) {
- mMaterial = aMaterial == null ? GT_Materials._NULL : aMaterial;
- mAmount = aAmount;
- }
-
- public GregtechMaterialStack copy(long aAmount) {
- return new GregtechMaterialStack(mMaterial, aAmount);
- }
-
- @Override
- public GregtechMaterialStack clone() {
- return new GregtechMaterialStack(mMaterial, mAmount);
- }
-
- @Override
- public boolean equals(Object aObject) {
- if (aObject == this) return true;
- if (aObject == null) return false;
- if (aObject instanceof GT_Materials) return aObject == mMaterial;
- if (aObject instanceof GregtechMaterialStack)
- return ((GregtechMaterialStack) aObject).mMaterial == mMaterial && (mAmount < 0 || ((GregtechMaterialStack) aObject).mAmount < 0 || ((GregtechMaterialStack) aObject).mAmount == mAmount);
- return false;
- }
-
- @Override
- public String toString() {
- return (mMaterial.mMaterialList.size() > 1 && mAmount > 1 ? "(" : "") + mMaterial.getToolTip(true) + (mMaterial.mMaterialList.size() > 1 && mAmount > 1 ? ")" : "") + (mAmount > 1 ? mAmount : "");
- }
-
- @Override
- public int hashCode() {
- return mMaterial.hashCode();
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechRenderedTexture.java b/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechRenderedTexture.java
deleted file mode 100644
index 0f56400d0c..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/objects/GregtechRenderedTexture.java
+++ /dev/null
@@ -1,162 +0,0 @@
-package miscutil.core.xmod.gregtech.api.objects;
-
-import gregtech.api.enums.Dyes;
-import gregtech.api.interfaces.IColorModulationContainer;
-import gregtech.api.interfaces.IIconContainer;
-import gregtech.api.interfaces.ITexture;
-import miscutil.core.util.Utils;
-import net.minecraft.block.Block;
-import net.minecraft.client.Minecraft;
-import net.minecraft.client.renderer.RenderBlocks;
-import net.minecraft.client.renderer.Tessellator;
-import net.minecraft.util.IIcon;
-
-public class GregtechRenderedTexture implements ITexture, IColorModulationContainer {
- private final IIconContainer mIconContainer;
- private final boolean mAllowAlpha;
- /**
- * DO NOT MANIPULATE THE VALUES INSIDE THIS ARRAY!!!
- * <p/>
- * Just set this variable to another different Array instead.
- * Otherwise some colored things will get Problems.
- */
- public short[] mRGBa;
-
- public GregtechRenderedTexture(IIconContainer aIcon, short[] aRGBa, boolean aAllowAlpha) {
- if (aRGBa.length != 4) throw new IllegalArgumentException("RGBa doesn't have 4 Values @ GT_RenderedTexture");
- mIconContainer = aIcon;
- mAllowAlpha = aAllowAlpha;
- mRGBa = aRGBa;
- }
-
- public GregtechRenderedTexture(IIconContainer aIcon, short[] aRGBa) {
- this(aIcon, aRGBa, true);
- }
-
- public GregtechRenderedTexture(IIconContainer aIcon) {
- this(aIcon, Dyes._NULL.mRGBa);
- }
-
- @Override
- public void renderXPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- Tessellator.instance.setColorRGBA((int) (mRGBa[0] * 0.6F), (int) (mRGBa[1] * 0.6F), (int) (mRGBa[2] * 0.6F), mAllowAlpha ? 255 - mRGBa[3] : 255);
- aRenderer.renderFaceXPos(aBlock, aX, aY, aZ, mIconContainer.getIcon());
- if (mIconContainer.getOverlayIcon() != null) {
- Tessellator.instance.setColorRGBA(153, 153, 153, 255);
- aRenderer.renderFaceXPos(aBlock, aX, aY, aZ, mIconContainer.getOverlayIcon());
- }
- }
-
- @Override
- public void renderXNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- Tessellator.instance.setColorRGBA((int) (mRGBa[0] * 0.6F), (int) (mRGBa[1] * 0.6F), (int) (mRGBa[2] * 0.6F), mAllowAlpha ? 255 - mRGBa[3] : 255);
- aRenderer.renderFaceXNeg(aBlock, aX, aY, aZ, mIconContainer.getIcon());
- if (mIconContainer.getOverlayIcon() != null) {
- Tessellator.instance.setColorRGBA(153, 153, 153, 255);
- aRenderer.renderFaceXNeg(aBlock, aX, aY, aZ, mIconContainer.getOverlayIcon());
- }
- }
-
- @Override
- public void renderYPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- Tessellator.instance.setColorRGBA((int) (mRGBa[0] * 1.0F), (int) (mRGBa[1] * 1.0F), (int) (mRGBa[2] * 1.0F), mAllowAlpha ? 255 - mRGBa[3] : 255);
- aRenderer.renderFaceYPos(aBlock, aX, aY, aZ, mIconContainer.getIcon());
- if (mIconContainer.getOverlayIcon() != null) {
- Tessellator.instance.setColorRGBA(255, 255, 255, 255);
- aRenderer.renderFaceYPos(aBlock, aX, aY, aZ, mIconContainer.getOverlayIcon());
- }
- }
-
- @Override
- public void renderYNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- Tessellator.instance.setColorRGBA((int) (mRGBa[0] * 0.5F), (int) (mRGBa[1] * 0.5F), (int) (mRGBa[2] * 0.5F), mAllowAlpha ? 255 - mRGBa[3] : 255);
- IIcon aIcon = mIconContainer.getIcon();
-
- double d3 = aIcon.getInterpolatedU(aRenderer.renderMaxX * 16.0D);
- double d4 = aIcon.getInterpolatedU(aRenderer.renderMinX * 16.0D);
- double d5 = aIcon.getInterpolatedV(aRenderer.renderMinZ * 16.0D);
- double d6 = aIcon.getInterpolatedV(aRenderer.renderMaxZ * 16.0D);
-
- if (aRenderer.renderMinX < 0.0D || aRenderer.renderMaxX > 1.0D) {
- d3 = aIcon.getMaxU();
- d4 = aIcon.getMinU();
- }
-
- if (aRenderer.renderMinZ < 0.0D || aRenderer.renderMaxZ > 1.0D) {
- d5 = aIcon.getMinV();
- d6 = aIcon.getMaxV();
- }
-
- double d11 = aX + aRenderer.renderMinX;
- double d12 = aX + aRenderer.renderMaxX;
- double d13 = aY + aRenderer.renderMinY;
- double d14 = aZ + aRenderer.renderMinZ;
- double d15 = aZ + aRenderer.renderMaxZ;
-
- Tessellator.instance.addVertexWithUV(d11, d13, d15, d3, d6);
- Tessellator.instance.addVertexWithUV(d11, d13, d14, d3, d5);
- Tessellator.instance.addVertexWithUV(d12, d13, d14, d4, d5);
- Tessellator.instance.addVertexWithUV(d12, d13, d15, d4, d6);
-
- if ((aIcon = mIconContainer.getOverlayIcon()) != null) {
- Tessellator.instance.setColorRGBA(128, 128, 128, 255);
-
- Tessellator.instance.addVertexWithUV(d11, d13, d15, d3, d6);
- Tessellator.instance.addVertexWithUV(d11, d13, d14, d3, d5);
- Tessellator.instance.addVertexWithUV(d12, d13, d14, d4, d5);
- Tessellator.instance.addVertexWithUV(d12, d13, d15, d4, d6);
- }
- }
-
- @Override
- public void renderZPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- try {
- Tessellator.instance.setColorRGBA((int) (mRGBa[0] * 0.8F), (int) (mRGBa[1] * 0.8F), (int) (mRGBa[2] * 0.8F), mAllowAlpha ? 255 - mRGBa[3] : 255);
- aRenderer.renderFaceZPos(aBlock, aX, aY, aZ, mIconContainer.getIcon());
- if (mIconContainer.getOverlayIcon() != null) {
- Tessellator.instance.setColorRGBA(204, 204, 204, 255);
- aRenderer.renderFaceZPos(aBlock, aX, aY, aZ, mIconContainer.getOverlayIcon());
- }
- } catch (NullPointerException e){
- Utils.LOG_WARNING("renderZPos failed.");
- }
- }
-
- @Override
- public void renderZNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- try {
- Utils.LOG_WARNING("renderZNeg Method();.");
- Utils.LOG_WARNING("Setting RGBA of instance.");
- Tessellator.instance.setColorRGBA((int) (mRGBa[0] * 0.8F), (int) (mRGBa[1] * 0.8F), (int) (mRGBa[2] * 0.8F), mAllowAlpha ? 255 - mRGBa[3] : 255);
- aRenderer.renderFaceZNeg(aBlock, aX, aY, aZ, mIconContainer.getIcon());
- Utils.LOG_WARNING("Is mIconContainer null? "+mIconContainer.toString());
- Utils.LOG_WARNING("mIconContainer.getIcon.getIconName(): "+mIconContainer.getIcon().getIconName());
- Utils.LOG_WARNING("mIconContainer.getTextureFile().getResourceDomain()"+mIconContainer.getTextureFile().getResourceDomain());
- Utils.LOG_WARNING("mIconContainer.getTextureFile().getResourcePath()"+mIconContainer.getTextureFile().getResourcePath());
- if (mIconContainer.getOverlayIcon() != null) {
- Tessellator.instance.setColorRGBA(204, 204, 204, 255);
- aRenderer.renderFaceZNeg(aBlock, aX, aY, aZ, mIconContainer.getOverlayIcon());
- Utils.LOG_WARNING("Is miconContainer.getOverlayIcon null? "+mIconContainer.getOverlayIcon().toString());
- Utils.LOG_WARNING("mIconContainer.getIcon.getIconName(): "+mIconContainer.getOverlayIcon().getIconName());
- Utils.LOG_WARNING("mIconContainer.getTextureFile().getResourceDomain()"+mIconContainer.getTextureFile().getResourceDomain());
- Utils.LOG_WARNING("mIconContainer.getTextureFile().getResourcePath()"+mIconContainer.getTextureFile().getResourcePath());
- }
- } catch (NullPointerException e){
-
-
- e.printStackTrace();
- Utils.LOG_WARNING("renderZNeg failed."+e.getMessage()+"|"+e.getClass()+"|"+e.getLocalizedMessage());
- Minecraft.getMinecraft().shutdown();
- }
- }
-
- @Override
- public short[] getRGBA() {
- return mRGBa;
- }
-
- @Override
- public boolean isValidTexture() {
- return mIconContainer != null;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java b/src/Java/miscutil/core/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java
deleted file mode 100644
index 036add9535..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/recipe/ProcessingSkookumChoocherToolRecipes.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package miscutil.core.xmod.gregtech.api.recipe;
-
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.enums.ToolDictNames;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.common.items.GT_MetaGenerated_Tool_01;
-import net.minecraft.item.ItemStack;
-
-public class ProcessingSkookumChoocherToolRecipes implements gregtech.api.interfaces.IOreRecipeRegistrator {
- public ProcessingSkookumChoocherToolRecipes() {
- //GregtechOrePrefixes.toolSkookumChoocher.add(this);
- }
-
- @Override
- public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- GT_ModHandler.addShapelessCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(32, 1, aMaterial, aMaterial, null), new Object[]{aOreDictName, OrePrefixes.stick.get(aMaterial), OrePrefixes.screw.get(aMaterial), ToolDictNames.craftingToolScrewdriver});
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechOreDictUnificator.java b/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechOreDictUnificator.java
deleted file mode 100644
index bdc01ccdf0..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechOreDictUnificator.java
+++ /dev/null
@@ -1,366 +0,0 @@
-package miscutil.core.xmod.gregtech.api.util;
-
-import static gregtech.api.enums.GT_Values.E;
-import static gregtech.api.enums.GT_Values.M;
-import static gregtech.api.enums.GT_Values.W;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.enums.SubTag;
-import gregtech.api.objects.GT_HashSet;
-import gregtech.api.objects.GT_ItemStack;
-import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-import gregtech.common.GT_Proxy.OreDictEventContainer;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Map.Entry;
-
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.objects.GregtechItemData;
-import miscutil.core.xmod.gregtech.api.objects.GregtechMaterialStack;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.oredict.OreDictionary;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * This is the Core of my OreDict Unification Code
- * <p/>
- * If you just want to use this to unificate your Items, then use the Function in the GregTech_API File
- * <p/>
- * P.S. It is intended to be named "Unificator" and not "Unifier", because that sounds more awesome.
- */
-public class GregtechOreDictUnificator {
- private static final HashMap<String, ItemStack> sName2StackMap = new HashMap<String, ItemStack>();
- private static final HashMap<GT_ItemStack, GregtechItemData> sItemStack2DataMap = new HashMap<GT_ItemStack, GregtechItemData>();
- private static final GT_HashSet<GT_ItemStack> sNoUnificationList = new GT_HashSet<GT_ItemStack>();
- public static volatile int VERSION = 508;
- private static int isRegisteringOre = 0, isAddingOre = 0;
- private static boolean mRunThroughTheList = true;
-
- static {
- GregTech_API.sItemStackMappings.add(sItemStack2DataMap);
- }
-
- /**
- * The Blacklist just prevents the Item from being unificated into something else.
- * Useful if you have things like the Industrial Diamond, which is better than regular Diamond, but also usable in absolutely all Diamond Recipes.
- */
- public static void addToBlacklist(ItemStack aStack) {
- if (GT_Utility.isStackValid(aStack) && !GT_Utility.isStackInList(aStack, sNoUnificationList))
- sNoUnificationList.add(aStack);
- }
-
- public static boolean isBlacklisted(ItemStack aStack) {
- return GT_Utility.isStackInList(aStack, sNoUnificationList);
- }
-
- public static void add(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, ItemStack aStack) {
- set(aPrefix, aMaterial, aStack, false, false);
- }
-
- public static void set(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, ItemStack aStack) {
- set(aPrefix, aMaterial, aStack, true, false);
- }
-
- public static void set(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, ItemStack aStack, boolean aOverwrite, boolean aAlreadyRegistered) {
- if (aMaterial == null || aPrefix == null || GT_Utility.isStackInvalid(aStack) || Items.feather.getDamage(aStack) == W)
- return;
- isAddingOre++;
- aStack = GT_Utility.copyAmount(1, aStack);
- if (!aAlreadyRegistered) registerOre(aPrefix.get(aMaterial), aStack);
- addAssociation(aPrefix, aMaterial, aStack, isBlacklisted(aStack));
- if (aOverwrite || GT_Utility.isStackInvalid(sName2StackMap.get(aPrefix.get(aMaterial).toString())))
- sName2StackMap.put(aPrefix.get(aMaterial).toString(), aStack);
- isAddingOre--;
- }
-
- public static ItemStack getFirstOre(Object aName, long aAmount) {
- if (GT_Utility.isStringInvalid(aName)) return null;
- ItemStack tStack = sName2StackMap.get(aName.toString());
- if (GT_Utility.isStackValid(tStack)) return GT_Utility.copyAmount(aAmount, tStack);
- return GT_Utility.copyAmount(aAmount, getOres(aName).toArray());
- }
-
- public static ItemStack get(Object aName, long aAmount) {
- return get(aName, null, aAmount, true, true);
- }
-
- public static ItemStack get(Object aName, ItemStack aReplacement, long aAmount) {
- return get(aName, aReplacement, aAmount, true, true);
- }
-
- public static ItemStack get(GregtechOrePrefixes aPrefix, Object aMaterial, long aAmount) {
- return get(aPrefix, aMaterial, null, aAmount);
- }
-
- public static ItemStack get(GregtechOrePrefixes aPrefix, Object aMaterial, ItemStack aReplacement, long aAmount) {
- return get(aPrefix.get(aMaterial), aReplacement, aAmount, false, true);
- }
-
- public static ItemStack get(Object aName, ItemStack aReplacement, long aAmount, boolean aMentionPossibleTypos, boolean aNoInvalidAmounts) {
- if (aNoInvalidAmounts && aAmount < 1) return null;
- if (!sName2StackMap.containsKey(aName.toString()) && aMentionPossibleTypos)
- GT_Log.err.println("Unknown Key for Unification, Typo? " + aName);
- return GT_Utility.copyAmount(aAmount, sName2StackMap.get(aName.toString()), getFirstOre(aName, aAmount), aReplacement);
- }
-
- public static ItemStack[] setStackArray(boolean aUseBlackList, ItemStack... aStacks) {
- for (int i = 0; i < aStacks.length; i++) aStacks[i] = get(aUseBlackList, GT_Utility.copy(aStacks[i]));
- return aStacks;
- }
-
- public static ItemStack[] getStackArray(boolean aUseBlackList, Object... aStacks) {
- ItemStack[] rStacks = new ItemStack[aStacks.length];
- for (int i = 0; i < aStacks.length; i++) rStacks[i] = get(aUseBlackList, GT_Utility.copy(aStacks[i]));
- return rStacks;
- }
-
- public static ItemStack setStack(ItemStack aStack) {
- return setStack(true, aStack);
- }
-
- public static ItemStack setStack(boolean aUseBlackList, ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack)) return aStack;
- ItemStack tStack = get(aUseBlackList, aStack);
- if (GT_Utility.areStacksEqual(aStack, tStack)) return aStack;
- aStack.func_150996_a(tStack.getItem());
- Items.feather.setDamage(aStack, Items.feather.getDamage(tStack));
- return aStack;
- }
-
- public static ItemStack get(ItemStack aStack) {
- return get(true, aStack);
- }
-
- public static ItemStack get(boolean aUseBlackList, ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack)) return null;
- GregtechItemData tPrefixMaterial = getAssociation(aStack);
- ItemStack rStack = null;
- if (tPrefixMaterial == null || !tPrefixMaterial.hasValidPrefixMaterialData() || (aUseBlackList && tPrefixMaterial.mBlackListed))
- return GT_Utility.copy(aStack);
- if (aUseBlackList && !GregTech_API.sUnificationEntriesRegistered && isBlacklisted(aStack)) {
- tPrefixMaterial.mBlackListed = true;
- return GT_Utility.copy(aStack);
- }
- if (tPrefixMaterial.mUnificationTarget == null)
- tPrefixMaterial.mUnificationTarget = sName2StackMap.get(tPrefixMaterial.toString());
- rStack = tPrefixMaterial.mUnificationTarget;
- if (GT_Utility.isStackInvalid(rStack)) return GT_Utility.copy(aStack);
- assert rStack != null;
- rStack.setTagCompound(aStack.getTagCompound());
- return GT_Utility.copyAmount(aStack.stackSize, rStack);
- }
-
- public static void addItemData(ItemStack aStack, GregtechItemData aData) {
- if (GT_Utility.isStackValid(aStack) && getItemData(aStack) == null && aData != null) setItemData(aStack, aData);
- }
-
- public static void setItemData(ItemStack aStack, GregtechItemData aData) {
- if (GT_Utility.isStackInvalid(aStack) || aData == null) return;
- GregtechItemData tData = getItemData(aStack);
- if (tData == null || !tData.hasValidPrefixMaterialData()) {
- if (tData != null) for (Object tObject : tData.mExtraData)
- if (!aData.mExtraData.contains(tObject)) aData.mExtraData.add(tObject);
- if (aStack.stackSize > 1) {
- if (aData.mMaterial != null) aData.mMaterial.mAmount /= aStack.stackSize;
- for (GregtechMaterialStack tMaterial : aData.mByProducts) tMaterial.mAmount /= aStack.stackSize;
- aStack = GT_Utility.copyAmount(1, aStack);
- }
- sItemStack2DataMap.put(new GT_ItemStack(aStack), aData);
- if (aData.hasValidMaterialData()) {
- long tValidMaterialAmount = aData.mMaterial.mMaterial.contains(SubTag.NO_RECYCLING) ? 0 : aData.mMaterial.mAmount >= 0 ? aData.mMaterial.mAmount : M;
- for (GregtechMaterialStack tMaterial : aData.mByProducts)
- tValidMaterialAmount += tMaterial.mMaterial.contains(SubTag.NO_RECYCLING) ? 0 : tMaterial.mAmount >= 0 ? tMaterial.mAmount : M;
- if (tValidMaterialAmount < M) GT_ModHandler.addToRecyclerBlackList(aStack);
- }
- if (mRunThroughTheList) {
- if (GregTech_API.sLoadStarted) {
- mRunThroughTheList = false;
- for (Entry<GT_ItemStack, GregtechItemData> tEntry : sItemStack2DataMap.entrySet())
- if (!tEntry.getValue().hasValidPrefixData() || tEntry.getValue().mPrefix.mAllowNormalRecycling)
- GregtechRecipeRegistrator.registerMaterialRecycling(tEntry.getKey().toStack(), tEntry.getValue());
- }
- } else {
- if (!aData.hasValidPrefixData() || aData.mPrefix.mAllowNormalRecycling)
- GregtechRecipeRegistrator.registerMaterialRecycling(aStack, aData);
- }
- } else {
- for (Object tObject : aData.mExtraData)
- if (!tData.mExtraData.contains(tObject)) tData.mExtraData.add(tObject);
- }
- }
-
- public static void addAssociation(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, ItemStack aStack, boolean aBlackListed) {
- if (aPrefix == null || aMaterial == null || GT_Utility.isStackInvalid(aStack)) return;
- if (Items.feather.getDamage(aStack) == W) for (byte i = 0; i < 16; i++)
- setItemData(GT_Utility.copyAmountAndMetaData(1, i, aStack), new GregtechItemData(aPrefix, aMaterial, aBlackListed));
- setItemData(aStack, new GregtechItemData(aPrefix, aMaterial, aBlackListed));
- }
-
- public static GregtechItemData getItemData(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack)) return null;
- GregtechItemData rData = sItemStack2DataMap.get(new GT_ItemStack(aStack));
- if (rData == null) rData = sItemStack2DataMap.get(new GT_ItemStack(GT_Utility.copyMetaData(W, aStack)));
- return rData;
- }
-
- public static GregtechItemData getAssociation(ItemStack aStack) {
- GregtechItemData rData = getItemData(aStack);
- return rData != null && rData.hasValidPrefixMaterialData() ? rData : null;
- }
-
- public static boolean isItemStackInstanceOf(ItemStack aStack, Object aName) {
- if (GT_Utility.isStringInvalid(aName) || GT_Utility.isStackInvalid(aStack)) return false;
- for (ItemStack tOreStack : getOres(aName.toString()))
- if (GT_Utility.areStacksEqual(tOreStack, aStack, true)) return true;
- return false;
- }
-
- public static boolean isItemStackDye(ItemStack aStack) {
- if (GT_Utility.isStackInvalid(aStack)) return false;
- for (Dyes tDye : Dyes.VALUES) if (isItemStackInstanceOf(aStack, tDye.toString())) return true;
- return false;
- }
-
- public static boolean registerOre(GregtechOrePrefixes aPrefix, Object aMaterial, ItemStack aStack) {
- return registerOre(aPrefix.get(aMaterial), aStack);
- }
-
- public static boolean registerOre(Object aName, ItemStack aStack) {
- if (aName == null || GT_Utility.isStackInvalid(aStack)) return false;
- String tName = aName.toString();
- if (GT_Utility.isStringInvalid(tName)) return false;
- ArrayList<ItemStack> tList = getOres(tName);
- for (int i = 0; i < tList.size(); i++) if (GT_Utility.areStacksEqual(tList.get(i), aStack, true)) return false;
- isRegisteringOre++;
- OreDictionary.registerOre(tName, GT_Utility.copyAmount(1, aStack));
- isRegisteringOre--;
- return true;
- }
-
- public static boolean isRegisteringOres() {
- return isRegisteringOre > 0;
- }
-
- public static boolean isAddingOres() {
- return isAddingOre > 0;
- }
-
- public static void resetUnificationEntries() {
- for (GregtechItemData tPrefixMaterial : sItemStack2DataMap.values()) tPrefixMaterial.mUnificationTarget = null;
- }
-
- public static ItemStack getGem(GregtechMaterialStack aMaterial) {
- return aMaterial == null ? null : getGem(aMaterial.mMaterial, aMaterial.mAmount);
- }
-
- public static ItemStack getGem(GT_Materials aMaterial, OrePrefixes aPrefix) {
- return aMaterial == null ? null : getGem(aMaterial, aPrefix.mMaterialAmount);
- }
-
- public static ItemStack getGem(GT_Materials aMaterial, long aMaterialAmount) {
- ItemStack rStack = null;
- if (((aMaterialAmount >= M) || aMaterialAmount >= M * 32))
- rStack = get(GregtechOrePrefixes.gem, aMaterial, aMaterialAmount / M);
- if (rStack == null && (((aMaterialAmount * 2) % M == 0) || aMaterialAmount >= M * 16))
- rStack = get(GregtechOrePrefixes.gemFlawed, aMaterial, (aMaterialAmount * 2) / M);
- if (rStack == null && (((aMaterialAmount * 4) >= M)))
- rStack = get(GregtechOrePrefixes.gemChipped, aMaterial, (aMaterialAmount * 4) / M);
- return rStack;
- }
-
- public static ItemStack getDust(GregtechMaterialStack aMaterial) {
- return aMaterial == null ? null : getDust(aMaterial.mMaterial, aMaterial.mAmount);
- }
-
- public static ItemStack getDust(GT_Materials aMaterial, OrePrefixes aPrefix) {
- return aMaterial == null ? null : getDust(aMaterial, aPrefix.mMaterialAmount);
- }
-
- public static ItemStack getDust(GT_Materials aMaterial, long aMaterialAmount) {
- if (aMaterialAmount <= 0) return null;
- ItemStack rStack = null;
- if (((aMaterialAmount % M == 0) || aMaterialAmount >= M * 16))
- rStack = get(GregtechOrePrefixes.dust, aMaterial, aMaterialAmount / M);
- if (rStack == null && (((aMaterialAmount * 4) % M == 0) || aMaterialAmount >= M * 8))
- rStack = get(GregtechOrePrefixes.dustSmall, aMaterial, (aMaterialAmount * 4) / M);
- if (rStack == null && (((aMaterialAmount * 9) >= M)))
- rStack = get(GregtechOrePrefixes.dustTiny, aMaterial, (aMaterialAmount * 9) / M);
- return rStack;
- }
-
- public static ItemStack getIngot(GregtechMaterialStack aMaterial) {
- return aMaterial == null ? null : getIngot(aMaterial.mMaterial, aMaterial.mAmount);
- }
-
- public static ItemStack getIngot(GT_Materials aMaterial, OrePrefixes aPrefix) {
- return aMaterial == null ? null : getIngot(aMaterial, aPrefix.mMaterialAmount);
- }
-
- public static ItemStack getIngot(GT_Materials aMaterial, long aMaterialAmount) {
- if (aMaterialAmount <= 0) return null;
- ItemStack rStack = null;
- if (((aMaterialAmount % (M * 9) == 0 && aMaterialAmount / (M * 9) > 1) || aMaterialAmount >= M * 72))
- rStack = get(GregtechOrePrefixes.block, aMaterial, aMaterialAmount / (M * 9));
- if (rStack == null && ((aMaterialAmount % M == 0) || aMaterialAmount >= M * 8))
- rStack = get(GregtechOrePrefixes.ingot, aMaterial, aMaterialAmount / M);
- if (rStack == null && (((aMaterialAmount * 9) >= M)))
- rStack = get(GregtechOrePrefixes.nugget, aMaterial, (aMaterialAmount * 9) / M);
- return rStack;
- }
-
- public static ItemStack getIngotOrDust(GT_Materials aMaterial, long aMaterialAmount) {
- if (aMaterialAmount <= 0) return null;
- ItemStack rStack = getIngot(aMaterial, aMaterialAmount);
- if (rStack == null) rStack = getDust(aMaterial, aMaterialAmount);
- return rStack;
- }
-
- public static ItemStack getIngotOrDust(GregtechMaterialStack aMaterial) {
- ItemStack rStack = getIngot(aMaterial);
- if(aMaterial!=null&&aMaterial.mMaterial!=null)rStack = getDust(aMaterial);
- if (rStack == null) rStack = getDust(aMaterial);
- return rStack;
- }
-
- public static ItemStack getDustOrIngot(GT_Materials aMaterial, long aMaterialAmount) {
- if (aMaterialAmount <= 0) return null;
- ItemStack rStack = getDust(aMaterial, aMaterialAmount);
- if (rStack == null) rStack = getIngot(aMaterial, aMaterialAmount);
- return rStack;
- }
-
- public static ItemStack getDustOrIngot(GregtechMaterialStack aMaterial) {
- ItemStack rStack = getDust(aMaterial);
- if (rStack == null) rStack = getIngot(aMaterial);
- return rStack;
- }
-
- /**
- * @return a Copy of the OreDictionary.getOres() List
- */
- public static ArrayList<ItemStack> getOres(OrePrefixes aPrefix, Object aMaterial) {
- return getOres(aPrefix.get(aMaterial));
- }
-
- /**
- * @return a Copy of the OreDictionary.getOres() List
- */
- public static ArrayList<ItemStack> getOres(Object aOreName) {
- String aName = aOreName == null ? E : aOreName.toString();
- ArrayList<ItemStack> rList = new ArrayList<ItemStack>();
- if (GT_Utility.isStringValid(aName)) rList.addAll(OreDictionary.getOres(aName));
- return rList;
- }
-
- public static void registerRecipes(OreDictEventContainer tOre) {
- // TODO Auto-generated method stub
-
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechRecipe.java b/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechRecipe.java
deleted file mode 100644
index 7f31d30c89..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechRecipe.java
+++ /dev/null
@@ -1,751 +0,0 @@
-package miscutil.core.xmod.gregtech.api.util;
-
-import static gregtech.api.enums.GT_Values.E;
-import static gregtech.api.enums.GT_Values.RES_PATH_GUI;
-import static gregtech.api.enums.GT_Values.W;
-import gregtech.api.GregTech_API;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords;
-import gregtech.api.objects.GT_FluidStack;
-import gregtech.api.objects.GT_ItemStack;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-
-import miscutil.core.util.Utils;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidStack;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * This File contains the functions used for Recipes. Please do not include this File AT ALL in your Moddownload as it ruins compatibility
- * This is just the Core of my Recipe System, if you just want to GET the Recipes I add, then you can access this File.
- * Do NOT add Recipes using the Constructors inside this Class, The GregTech_API File calls the correct Functions for these Constructors.
- * <p/>
- * I know this File causes some Errors, because of missing Main Functions, but if you just need to compile Stuff, then remove said erroreous Functions.
- */
-public class GregtechRecipe {
-
- public static volatile int VERSION = 508;
- /**
- * If you want to change the Output, feel free to modify or even replace the whole ItemStack Array, for Inputs, please add a new Recipe, because of the HashMaps.
- */
- public ItemStack[] mInputs, mOutputs;
- /**
- * If you want to change the Output, feel free to modify or even replace the whole ItemStack Array, for Inputs, please add a new Recipe, because of the HashMaps.
- */
- public FluidStack[] mFluidInputs, mFluidOutputs;
- /**
- * If you changed the amount of Array-Items inside the Output Array then the length of this Array must be larger or equal to the Output Array. A chance of 10000 equals 100%
- */
- public int[] mChances;
- /**
- * An Item that needs to be inside the Special Slot, like for example the Copy Slot inside the Printer. This is only useful for Fake Recipes in NEI, since findRecipe() and containsInput() don't give a shit about this Field. Lists are also possible.
- */
- public Object mSpecialItems;
- public int mDuration, mEUt, mSpecialValue;
- /**
- * Use this to just disable a specific Recipe, but the Configuration enables that already for every single Recipe.
- */
- public boolean mEnabled = true;
- /**
- * If this Recipe is hidden from NEI
- */
- public boolean mHidden = false;
- /**
- * If this Recipe is Fake and therefore doesn't get found by the findRecipe Function (It is still in the HashMaps, so that containsInput does return T on those fake Inputs)
- */
- public boolean mFakeRecipe = false;
- /**
- * If this Recipe can be stored inside a Machine in order to make Recipe searching more Efficient by trying the previously used Recipe first. In case you have a Recipe Map overriding things and returning one time use Recipes, you have to set this to F.
- */
- public boolean mCanBeBuffered = true;
- /**
- * If this Recipe needs the Output Slots to be completely empty. Needed in case you have randomised Outputs
- */
- public boolean mNeedsEmptyOutput = false;
- private GregtechRecipe(GregtechRecipe aRecipe) {
- mInputs = GT_Utility.copyStackArray((Object[]) aRecipe.mInputs);
- mOutputs = GT_Utility.copyStackArray((Object[]) aRecipe.mOutputs);
- mSpecialItems = aRecipe.mSpecialItems;
- mChances = aRecipe.mChances;
- mFluidInputs = GT_Utility.copyFluidArray(aRecipe.mFluidInputs);
- mFluidOutputs = GT_Utility.copyFluidArray(aRecipe.mFluidOutputs);
- mDuration = aRecipe.mDuration;
- mSpecialValue = aRecipe.mSpecialValue;
- mEUt = aRecipe.mEUt;
- mNeedsEmptyOutput = aRecipe.mNeedsEmptyOutput;
- mCanBeBuffered = aRecipe.mCanBeBuffered;
- mFakeRecipe = aRecipe.mFakeRecipe;
- mEnabled = aRecipe.mEnabled;
- mHidden = aRecipe.mHidden;
- }
- protected GregtechRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- if (aInputs == null) aInputs = new ItemStack[0];
- if (aOutputs == null) aOutputs = new ItemStack[0];
- if (aFluidInputs == null) aFluidInputs = new FluidStack[0];
- if (aFluidOutputs == null) aFluidOutputs = new FluidStack[0];
- if (aChances == null) aChances = new int[aOutputs.length];
- if (aChances.length < aOutputs.length) aChances = Arrays.copyOf(aChances, aOutputs.length);
-
- aInputs = GT_Utility.getArrayListWithoutTrailingNulls(aInputs).toArray(new ItemStack[0]);
- aOutputs = GT_Utility.getArrayListWithoutTrailingNulls(aOutputs).toArray(new ItemStack[0]);
- aFluidInputs = GT_Utility.getArrayListWithoutNulls(aFluidInputs).toArray(new FluidStack[0]);
- aFluidOutputs = GT_Utility.getArrayListWithoutNulls(aFluidOutputs).toArray(new FluidStack[0]);
-
- GT_OreDictUnificator.setStackArray(true, aInputs);
- GT_OreDictUnificator.setStackArray(true, aOutputs);
-
- for (ItemStack tStack : aOutputs) GT_Utility.updateItemStack(tStack);
-
- for (int i = 0; i < aChances.length; i++) if (aChances[i] <= 0) aChances[i] = 10000;
- for (int i = 0; i < aFluidInputs.length; i++) aFluidInputs[i] = new GT_FluidStack(aFluidInputs[i]);
- for (int i = 0; i < aFluidOutputs.length; i++) aFluidOutputs[i] = new GT_FluidStack(aFluidOutputs[i]);
-
- for (int i = 0; i < aInputs.length; i++)
- if (aInputs[i] != null && Items.feather.getDamage(aInputs[i]) != W)
- for (int j = 0; j < aOutputs.length; j++) {
- if (GT_Utility.areStacksEqual(aInputs[i], aOutputs[j])) {
- if (aInputs[i].stackSize >= aOutputs[j].stackSize) {
- aInputs[i].stackSize -= aOutputs[j].stackSize;
- aOutputs[j] = null;
- } else {
- aOutputs[j].stackSize -= aInputs[i].stackSize;
- }
- }
- }
-
- if (aOptimize && aDuration >= 32) {
- ArrayList<ItemStack> tList = new ArrayList<ItemStack>();
- tList.addAll(Arrays.asList(aInputs));
- tList.addAll(Arrays.asList(aOutputs));
- for (int i = 0; i < tList.size(); i++) if (tList.get(i) == null) tList.remove(i--);
-
- for (byte i = (byte) Math.min(64, aDuration / 16); i > 1; i--)
- if (aDuration / i >= 16) {
- boolean temp = true;
- for (int j = 0, k = tList.size(); temp && j < k; j++)
- if (tList.get(j).stackSize % i != 0) temp = false;
- for (int j = 0; temp && j < aFluidInputs.length; j++)
- if (aFluidInputs[j].amount % i != 0) temp = false;
- for (int j = 0; temp && j < aFluidOutputs.length; j++)
- if (aFluidOutputs[j].amount % i != 0) temp = false;
- if (temp) {
- for (int j = 0, k = tList.size(); j < k; j++) tList.get(j).stackSize /= i;
- for (int j = 0; j < aFluidInputs.length; j++) aFluidInputs[j].amount /= i;
- for (int j = 0; j < aFluidOutputs.length; j++) aFluidOutputs[j].amount /= i;
- aDuration /= i;
- }
- }
- }
-
- mInputs = aInputs;
- mOutputs = aOutputs;
- mSpecialItems = aSpecialItems;
- mChances = aChances;
- mFluidInputs = aFluidInputs;
- mFluidOutputs = aFluidOutputs;
- mDuration = aDuration;
- mSpecialValue = aSpecialValue;
- mEUt = aEUt;
-
- // checkCellBalance();
- }
-
- public GregtechRecipe(ItemStack aInput1, ItemStack aOutput1, int aFuelValue, int aType) {
- this(aInput1, aOutput1, null, null, null, aFuelValue, aType);
- }
-
- // aSpecialValue = EU per Liter! If there is no Liquid for this Object, then it gets multiplied with 1000!
- public GregtechRecipe(ItemStack aInput1, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, int aSpecialValue, int aType) {
- this(true, new ItemStack[]{aInput1}, new ItemStack[]{aOutput1, aOutput2, aOutput3, aOutput4}, null, null, null, null, 0, 0, Math.max(1, aSpecialValue));
-
- Utils.LOG_INFO("Switch case method for adding fuels");
- if (mInputs.length > 0 && aSpecialValue > 0) {
- switch (aType) {
- // Diesel Generator
- case 0:
- Utils.LOG_INFO("Added fuel "+aInput1.getDisplayName()+" is ROCKET FUEL - continuing");
- Gregtech_Recipe_Map.sRocketFuels.addRecipe(this);
- break;
- // Gas Turbine
- case 1:
- Gregtech_Recipe_Map.sGeoThermalFuels.addRecipe(this);
- break;
- // Thermal Generator
- case 2:
- //Gregtech_Recipe_Map.sHotFuels.addRecipe(this);
- break;
- // Plasma Generator
- case 4:
- //Gregtech_Recipe_Map.sPlasmaFuels.addRecipe(this);
- break;
- // Magic Generator
- case 5:
- //Gregtech_Recipe_Map.sMagicFuels.addRecipe(this);
- break;
- // Fluid Generator. Usually 3. Every wrong Type ends up in the Semifluid Generator
- default:
- //Gregtech_Recipe_Map.sDenseLiquidFuels.addRecipe(this);
- break;
- }
- }
- }
-
- public static void reInit() {
- GT_Log.out.println("GT_Mod: Re-Unificating Recipes.");
- for (Gregtech_Recipe_Map tMapEntry : Gregtech_Recipe_Map.sMappings) tMapEntry.reInit();
- }
-
- public ItemStack getRepresentativeInput(int aIndex) {
- if (aIndex < 0 || aIndex >= mInputs.length) return null;
- return GT_Utility.copy(mInputs[aIndex]);
- }
-
- public ItemStack getOutput(int aIndex) {
- if (aIndex < 0 || aIndex >= mOutputs.length) return null;
- return GT_Utility.copy(mOutputs[aIndex]);
- }
-
- public int getOutputChance(int aIndex) {
- if (aIndex < 0 || aIndex >= mChances.length) return 10000;
- return mChances[aIndex];
- }
-
- public FluidStack getRepresentativeFluidInput(int aIndex) {
- if (aIndex < 0 || aIndex >= mFluidInputs.length || mFluidInputs[aIndex] == null) return null;
- return mFluidInputs[aIndex].copy();
- }
-
- public FluidStack getFluidOutput(int aIndex) {
- if (aIndex < 0 || aIndex >= mFluidOutputs.length || mFluidOutputs[aIndex] == null) return null;
- return mFluidOutputs[aIndex].copy();
- }
-
- public GregtechRecipe copy() {
- return new GregtechRecipe(this);
- }
-
- public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, FluidStack[] aFluidInputs, ItemStack... aInputs) {
- return isRecipeInputEqual(aDecreaseStacksizeBySuccess, false, aFluidInputs, aInputs);
- }
-
- public boolean isRecipeInputEqual(boolean aDecreaseStacksizeBySuccess, boolean aDontCheckStackSizes, FluidStack[] aFluidInputs, ItemStack... aInputs) {
- if (mFluidInputs.length > 0 && aFluidInputs == null) return false;
- for (FluidStack tFluid : mFluidInputs)
- if (tFluid != null) {
- boolean temp = true;
- for (FluidStack aFluid : aFluidInputs)
- if (aFluid != null && aFluid.isFluidEqual(tFluid) && (aDontCheckStackSizes || aFluid.amount >= tFluid.amount)) {
- temp = false;
- break;
- }
- if (temp) return false;
- }
-
- if (mInputs.length > 0 && aInputs == null) return false;
-
- for (ItemStack tStack : mInputs)
- if (tStack != null) {
- boolean temp = true;
- for (ItemStack aStack : aInputs)
- if ((GT_Utility.areUnificationsEqual(aStack, tStack, true) || GT_Utility.areUnificationsEqual(GT_OreDictUnificator.get(false, aStack), tStack, true)) && (aDontCheckStackSizes || aStack.stackSize >= tStack.stackSize)) {
- temp = false;
- break;
- }
- if (temp) return false;
- }
-
- if (aDecreaseStacksizeBySuccess) {
- if (aFluidInputs != null) {
- for (FluidStack tFluid : mFluidInputs)
- if (tFluid != null) {
- for (FluidStack aFluid : aFluidInputs)
- if (aFluid != null && aFluid.isFluidEqual(tFluid) && (aDontCheckStackSizes || aFluid.amount >= tFluid.amount)) {
- aFluid.amount -= tFluid.amount;
- break;
- }
- }
- }
-
- if (aInputs != null) {
- for (ItemStack tStack : mInputs)
- if (tStack != null) {
- for (ItemStack aStack : aInputs)
- if ((GT_Utility.areUnificationsEqual(aStack, tStack, true) || GT_Utility.areUnificationsEqual(GT_OreDictUnificator.get(false, aStack), tStack, true)) && (aDontCheckStackSizes || aStack.stackSize >= tStack.stackSize)) {
- aStack.stackSize -= tStack.stackSize;
- break;
- }
- }
- }
- }
-
- return true;
- }
-
- public static class Gregtech_Recipe_Map {
- /**
- * Contains all Recipe Maps
- */
- public static final Collection<Gregtech_Recipe_Map> sMappings = new ArrayList<Gregtech_Recipe_Map>();
- //public static final GT_Recipe_Map sChemicalBathRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(200), "gt.recipe.chemicalbath", "Chemical Bath", null, RES_PATH_GUI + "basicmachines/ChemicalBath", 1, 3, 1, 1, 1, E, 1, E, true, true);
- public static final GT_Recipe_Map sCokeOvenRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(200), "gt.recipe.cokeoven", "Coke Oven", null, RES_PATH_GUI + "basicmachines/ChemicalBath", 2, 2, 1, 0, 1, E, 1, E, true, true);
- public static final GT_Recipe_Map sMatterFab2Recipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(200), "gt.recipe.matterfab2", "Matter Fabricator", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 0, 0, 1, E, 1, E, true, true);
- //public static final Gregtech_Recipe_Map sMatterFabRecipes = new Gregtech_Recipe_Map(new HashSet<GregtechRecipe>(200), "gt.recipe.matterfab", "Matter Fabricator", null, RES_PATH_GUI + "basicmachines/Massfabricator", 1, 3, 1, 1, 1, E, 1, E, true, true);
- public static final Gregtech_Recipe_Map_Fuel sRocketFuels = new Gregtech_Recipe_Map_Fuel(new HashSet<GregtechRecipe>(10), "gt.recipe.rocketenginefuel", "Rocket Engine Fuel", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 0, 0, 1, "Fuel Value: ", 3000, " EU", true, true);
- public static final Gregtech_Recipe_Map_Fuel sGeoThermalFuels = new Gregtech_Recipe_Map_Fuel(new HashSet<GregtechRecipe>(10), "gt.recipe.geothermalfuel", "GeoThermal Fuel", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 0, 0, 1, "Fuel Value: ", 1000, " EU", true, true);
-
- /**
- * HashMap of Recipes based on their Items
- */
- public final Map<GT_ItemStack, Collection<GregtechRecipe>> mRecipeItemMap = new HashMap<GT_ItemStack, Collection<GregtechRecipe>>();
- /**
- * HashMap of Recipes based on their Fluids
- */
- public final Map<Fluid, Collection<GregtechRecipe>> mRecipeFluidMap = new HashMap<Fluid, Collection<GregtechRecipe>>();
- /**
- * The List of all Recipes
- */
- public final Collection<GregtechRecipe> mRecipeList;
- /**
- * String used as an unlocalised Name.
- */
- public final String mUnlocalizedName;
- /**
- * String used in NEI for the Recipe Lists. If null it will use the unlocalised Name instead
- */
- public final String mNEIName;
- /**
- * GUI used for NEI Display. Usually the GUI of the Machine itself
- */
- public final String mNEIGUIPath;
- public final String mNEISpecialValuePre, mNEISpecialValuePost;
- public final int mUsualInputCount, mUsualOutputCount, mNEISpecialValueMultiplier, mMinimalInputItems, mMinimalInputFluids, mAmperage;
- public final boolean mNEIAllowed, mShowVoltageAmperageInNEI;
-
- /**
- * Initialises a new type of Recipe Handler.
- *
- * @param aRecipeList a List you specify as Recipe List. Usually just an ArrayList with a pre-initialised Size.
- * @param aUnlocalizedName the unlocalised Name of this Recipe Handler, used mainly for NEI.
- * @param aLocalName the displayed Name inside the NEI Recipe GUI.
- * @param aNEIGUIPath the displayed GUI Texture, usually just a Machine GUI. Auto-Attaches ".png" if forgotten.
- * @param aUsualInputCount the usual amount of Input Slots this Recipe Class has.
- * @param aUsualOutputCount the usual amount of Output Slots this Recipe Class has.
- * @param aNEISpecialValuePre the String in front of the Special Value in NEI.
- * @param aNEISpecialValueMultiplier the Value the Special Value is getting Multiplied with before displaying
- * @param aNEISpecialValuePost the String after the Special Value. Usually for a Unit or something.
- * @param aNEIAllowed if NEI is allowed to display this Recipe Handler in general.
- */
- public Gregtech_Recipe_Map(Collection<GregtechRecipe> aRecipeList,
- String aUnlocalizedName, String aLocalName, String aNEIName,
- String aNEIGUIPath, int aUsualInputCount,
- int aUsualOutputCount, int aMinimalInputItems,
- int aMinimalInputFluids, int aAmperage,
- String aNEISpecialValuePre, int aNEISpecialValueMultiplier,
- String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI,
- boolean aNEIAllowed) {
- sMappings.add(this);
- mNEIAllowed = aNEIAllowed;
- mShowVoltageAmperageInNEI = aShowVoltageAmperageInNEI;
- mRecipeList = aRecipeList;
- mNEIName = aNEIName == null ? aUnlocalizedName : aNEIName;
- mNEIGUIPath = aNEIGUIPath.endsWith(".png") ? aNEIGUIPath : aNEIGUIPath + ".png";
- mNEISpecialValuePre = aNEISpecialValuePre;
- mNEISpecialValueMultiplier = aNEISpecialValueMultiplier;
- mNEISpecialValuePost = aNEISpecialValuePost;
- mAmperage = aAmperage;
- mUsualInputCount = aUsualInputCount;
- mUsualOutputCount = aUsualOutputCount;
- mMinimalInputItems = aMinimalInputItems;
- mMinimalInputFluids = aMinimalInputFluids;
- GregTech_API.sFluidMappings.add(mRecipeFluidMap);
- GregTech_API.sItemStackMappings.add(mRecipeItemMap);
- GT_LanguageManager.addStringLocalization(mUnlocalizedName = aUnlocalizedName, aLocalName);
- }
-
- public GregtechRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return addRecipe(new GregtechRecipe(aOptimize, aInputs, aOutputs, aSpecial, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue));
- }
-
- public GregtechRecipe addRecipe(int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return addRecipe(new GregtechRecipe(false, null, null, null, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue), false, false, false);
- }
-
- public GregtechRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return addRecipe(new GregtechRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue));
- }
-
- public GregtechRecipe addRecipe(boolean aOptimize, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return addRecipe(new GregtechRecipe(aOptimize, null, null, null, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue));
- }
-
- /*public GregtechRecipe addRecipe(boolean aOptimize, FluidStack aInput1, FluidStack aOutput1, ItemStack[] bInput1, ItemStack[] bOutput1, int aDuration, int aEUt, int aSpecialValue) {
- return addRecipe(new GregtechRecipe(aOptimize, aInput1, aOutput1, bInput1,bOutput1, aDuration, aEUt, aSpecialValue));
-
- }*/
-
- public GregtechRecipe addRecipe(GregtechRecipe aRecipe) {
- Utils.LOG_INFO("Adding Recipe Method 1");
- return addRecipe(aRecipe, true, false, false);
- }
-
- protected GregtechRecipe addRecipe(GregtechRecipe aRecipe, boolean aCheckForCollisions, boolean aFakeRecipe, boolean aHidden) {
- Utils.LOG_INFO("Adding Recipe Method 2");
- aRecipe.mHidden = aHidden;
- aRecipe.mFakeRecipe = aFakeRecipe;
- if (aRecipe.mFluidInputs.length < mMinimalInputFluids && aRecipe.mInputs.length < mMinimalInputItems){
- Utils.LOG_INFO("Step 2 failed");
- return null;}
- if (aCheckForCollisions && findRecipe(null, false, Long.MAX_VALUE, aRecipe.mFluidInputs, aRecipe.mInputs) != null){
- Utils.LOG_INFO("Step 2 failed - 2");
- return null;
- }
- return add(aRecipe);
- }
-
-
-
- /**
- * Only used for fake Recipe Handlers to show something in NEI, do not use this for adding actual Recipes! findRecipe wont find fake Recipes, containsInput WILL find fake Recipes
- */
- public GregtechRecipe addFakeRecipe(boolean aCheckForCollisions, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return addFakeRecipe(aCheckForCollisions, new GregtechRecipe(false, aInputs, aOutputs, aSpecial, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue));
- }
-
- /**
- * Only used for fake Recipe Handlers to show something in NEI, do not use this for adding actual Recipes! findRecipe wont find fake Recipes, containsInput WILL find fake Recipes
- */
- public GregtechRecipe addFakeRecipe(boolean aCheckForCollisions, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return addFakeRecipe(aCheckForCollisions, new GregtechRecipe(false, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue));
- }
-
- /**
- * Only used for fake Recipe Handlers to show something in NEI, do not use this for adding actual Recipes! findRecipe wont find fake Recipes, containsInput WILL find fake Recipes
- */
- public GregtechRecipe addFakeRecipe(boolean aCheckForCollisions, GregtechRecipe aRecipe) {
- return addRecipe(aRecipe, aCheckForCollisions, true, false);
- }
-
- public GregtechRecipe add(GregtechRecipe aRecipe) {
- Utils.LOG_INFO("Adding Recipe Method 3");
- mRecipeList.add(aRecipe);
- for (FluidStack aFluid : aRecipe.mFluidInputs)
- if (aFluid != null) {
- Utils.LOG_INFO("Fluid is valid - getting some kind of fluid instance to add to the recipe hashmap.");
- Collection<GregtechRecipe> tList = mRecipeFluidMap.get(aFluid.getFluid());
- if (tList == null) mRecipeFluidMap.put(aFluid.getFluid(), tList = new HashSet<GregtechRecipe>(1));
- tList.add(aRecipe);
- }
- return addToItemMap(aRecipe);
- }
-
- public void reInit() {
- Map<GT_ItemStack, Collection<GregtechRecipe>> tMap = mRecipeItemMap;
- if (tMap != null) tMap.clear();
- for (GregtechRecipe tRecipe : mRecipeList) {
- GT_OreDictUnificator.setStackArray(true, tRecipe.mInputs);
- GT_OreDictUnificator.setStackArray(true, tRecipe.mOutputs);
- if (tMap != null) addToItemMap(tRecipe);
- }
- }
-
- /**
- * @return if this Item is a valid Input for any for the Recipes
- */
- public boolean containsInput(ItemStack aStack) {
- return aStack != null && (mRecipeItemMap.containsKey(new GT_ItemStack(aStack)) || mRecipeItemMap.containsKey(new GT_ItemStack(GT_Utility.copyMetaData(W, aStack))));
- }
-
- /**
- * @return if this Fluid is a valid Input for any for the Recipes
- */
- public boolean containsInput(FluidStack aFluid) {
- return aFluid != null && containsInput(aFluid.getFluid());
- }
-
- /**
- * @return if this Fluid is a valid Input for any for the Recipes
- */
- public boolean containsInput(Fluid aFluid) {
- return aFluid != null && mRecipeFluidMap.containsKey(aFluid);
- }
-
- public GregtechRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, boolean aNotUnificated, long aVoltage, FluidStack[] aFluids, ItemStack... aInputs) {
- return findRecipe(aTileEntity, null, aNotUnificated, aVoltage, aFluids, null, aInputs);
- }
-
- public GregtechRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GregtechRecipe aRecipe, boolean aNotUnificated, long aVoltage, FluidStack[] aFluids, ItemStack... aInputs) {
- return findRecipe(aTileEntity, aRecipe, aNotUnificated, aVoltage, aFluids, null, aInputs);
- }
-
- /**
- * finds a Recipe matching the aFluid and ItemStack Inputs.
- *
- * @param aTileEntity an Object representing the current coordinates of the executing Block/Entity/Whatever. This may be null, especially during Startup.
- * @param aRecipe in case this is != null it will try to use this Recipe first when looking things up.
- * @param aNotUnificated if this is T the Recipe searcher will unificate the ItemStack Inputs
- * @param aVoltage Voltage of the Machine or Long.MAX_VALUE if it has no Voltage
- * @param aFluids the Fluid Inputs
- * @param aSpecialSlot the content of the Special Slot, the regular Manager doesn't do anything with this, but some custom ones do.
- * @param aInputs the Item Inputs
- * @return the Recipe it has found or null for no matching Recipe
- */
- public GregtechRecipe findRecipe(IHasWorldObjectAndCoords aTileEntity, GregtechRecipe aRecipe, boolean aNotUnificated, long aVoltage, FluidStack[] aFluids, ItemStack aSpecialSlot, ItemStack... aInputs) {
- // No Recipes? Well, nothing to be found then.
- if (mRecipeList.isEmpty()) return null;
-
- // Some Recipe Classes require a certain amount of Inputs of certain kinds. Like "at least 1 Fluid + 1 Stack" or "at least 2 Stacks" before they start searching for Recipes.
- // This improves Performance massively, especially if people leave things like Circuits, Molds or Shapes in their Machines to select Sub Recipes.
- if (GregTech_API.sPostloadFinished) {
- if (mMinimalInputFluids > 0) {
- if (aFluids == null) return null;
- int tAmount = 0;
- for (FluidStack aFluid : aFluids) if (aFluid != null) tAmount++;
- if (tAmount < mMinimalInputFluids) return null;
- }
- if (mMinimalInputItems > 0) {
- if (aInputs == null) return null;
- int tAmount = 0;
- for (ItemStack aInput : aInputs) if (aInput != null) tAmount++;
- if (tAmount < mMinimalInputItems) return null;
- }
- }
-
- // Unification happens here in case the Input isn't already unificated.
- if (aNotUnificated) aInputs = GT_OreDictUnificator.getStackArray(true, (Object[]) aInputs);
-
- // Check the Recipe which has been used last time in order to not have to search for it again, if possible.
- if (aRecipe != null)
- if (!aRecipe.mFakeRecipe && aRecipe.mCanBeBuffered && aRecipe.isRecipeInputEqual(false, true, aFluids, aInputs))
- return aRecipe.mEnabled && aVoltage * mAmperage >= aRecipe.mEUt ? aRecipe : null;
-
- // Now look for the Recipes inside the Item HashMaps, but only when the Recipes usually have Items.
- if (mUsualInputCount > 0 && aInputs != null) for (ItemStack tStack : aInputs)
- if (tStack != null) {
- Collection<GregtechRecipe>
- tRecipes = mRecipeItemMap.get(new GT_ItemStack(tStack));
- if (tRecipes != null) for (GregtechRecipe tRecipe : tRecipes)
- if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs))
- return tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt ? tRecipe : null;
- tRecipes = mRecipeItemMap.get(new GT_ItemStack(GT_Utility.copyMetaData(W, tStack)));
- if (tRecipes != null) for (GregtechRecipe tRecipe : tRecipes)
- if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs))
- return tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt ? tRecipe : null;
- }
-
- // If the minimal Amount of Items for the Recipe is 0, then it could be a Fluid-Only Recipe, so check that Map too.
- if (mMinimalInputItems == 0 && aFluids != null) for (FluidStack aFluid : aFluids)
- if (aFluid != null) {
- Collection<GregtechRecipe>
- tRecipes = mRecipeFluidMap.get(aFluid.getFluid());
- if (tRecipes != null) for (GregtechRecipe tRecipe : tRecipes)
- if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs))
- return tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt ? tRecipe : null;
- }
-
- // And nothing has been found.
- return null;
- }
-
- protected GregtechRecipe addToItemMap(GregtechRecipe aRecipe) {
- Utils.LOG_INFO("Adding Recipe Method 4");
- for (ItemStack aStack : aRecipe.mInputs)
- if (aStack != null) {
- Utils.LOG_INFO("Method 4 - Manipulating "+aStack.getDisplayName());
- GT_ItemStack tStack = new GT_ItemStack(aStack);
- Utils.LOG_INFO("Method 4 - Made gt stack of item "+tStack.toStack().getDisplayName());
- Collection<GregtechRecipe> tList = mRecipeItemMap.get(tStack);
- if (tList != null){
- Utils.LOG_INFO("Method 4 - Gt Recipe Hashmap: "+tList.toString());
- }
- if (tList == null){
- Utils.LOG_INFO("Method 4 - brrr list was NUll");
- mRecipeItemMap.put(tStack, tList = new HashSet<GregtechRecipe>(1));
- }
- tList.add(aRecipe);
- Utils.LOG_INFO("Method 4 - Added recipe to map? I think.");
- }
- return aRecipe;
- }
-
- public GregtechRecipe findRecipe(IGregTechTileEntity baseMetaTileEntity, GregtechRecipe aRecipe, boolean aNotUnificated,
- long aVoltage, FluidStack[] aFluids, FluidStack[] fluidStacks) {
-
- ItemStack aInputs[] = null;
- // No Recipes? Well, nothing to be found then.
- if (mRecipeList.isEmpty()) return null;
-
- // Some Recipe Classes require a certain amount of Inputs of certain kinds. Like "at least 1 Fluid + 1 Stack" or "at least 2 Stacks" before they start searching for Recipes.
- // This improves Performance massively, especially if people leave things like Circuits, Molds or Shapes in their Machines to select Sub Recipes.
- if (GregTech_API.sPostloadFinished) {
- if (mMinimalInputFluids > 0) {
- if (aFluids == null) return null;
- int tAmount = 0;
- for (FluidStack aFluid : aFluids) if (aFluid != null) tAmount++;
- if (tAmount < mMinimalInputFluids) return null;
- }
- if (mMinimalInputItems > 0) {
- if (aInputs == null) return null;
- int tAmount = 0;
- for (ItemStack aInput : aInputs) if (aInput != null) tAmount++;
- if (tAmount < mMinimalInputItems) return null;
- }
- }
-
- // Unification happens here in case the Input isn't already unificated.
- if (aNotUnificated) aInputs = GT_OreDictUnificator.getStackArray(true, (Object[]) aInputs);
-
- // Check the Recipe which has been used last time in order to not have to search for it again, if possible.
- if (aRecipe != null)
- if (!aRecipe.mFakeRecipe && aRecipe.mCanBeBuffered && aRecipe.isRecipeInputEqual(false, true, aFluids, aInputs))
- return aRecipe.mEnabled && aVoltage * mAmperage >= aRecipe.mEUt ? aRecipe : null;
-
- // Now look for the Recipes inside the Item HashMaps, but only when the Recipes usually have Items.
- if (mUsualInputCount > 0 && aInputs != null) for (ItemStack tStack : aInputs)
- if (tStack != null) {
- Collection<GregtechRecipe>
- tRecipes = mRecipeItemMap.get(new GT_ItemStack(tStack));
- if (tRecipes != null) for (GregtechRecipe tRecipe : tRecipes)
- if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs))
- return tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt ? tRecipe : null;
- tRecipes = mRecipeItemMap.get(new GT_ItemStack(GT_Utility.copyMetaData(W, tStack)));
- if (tRecipes != null) for (GregtechRecipe tRecipe : tRecipes)
- if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs))
- return tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt ? tRecipe : null;
- }
-
- // If the minimal Amount of Items for the Recipe is 0, then it could be a Fluid-Only Recipe, so check that Map too.
- if (mMinimalInputItems == 0 && aFluids != null) for (FluidStack aFluid : aFluids)
- if (aFluid != null) {
- Collection<GregtechRecipe>
- tRecipes = mRecipeFluidMap.get(aFluid.getFluid());
- if (tRecipes != null) for (GregtechRecipe tRecipe : tRecipes)
- if (!tRecipe.mFakeRecipe && tRecipe.isRecipeInputEqual(false, true, aFluids, aInputs))
- return tRecipe.mEnabled && aVoltage * mAmperage >= tRecipe.mEUt ? tRecipe : null;
- }
-
- // And nothing has been found.
- return null;
- }
- }
-
- // -----------------------------------------------------------------------------------------------------------------
- // Here are a few Classes I use for Special Cases in some Machines without having to write a separate Machine Class.
- // -----------------------------------------------------------------------------------------------------------------
-
- /**
- * Abstract Class for general Recipe Handling of non GT Recipes
- */
- public static abstract class GT_Recipe_Map_NonGTRecipes extends Gregtech_Recipe_Map {
- public GT_Recipe_Map_NonGTRecipes(Collection<GregtechRecipe> aRecipeList, String aUnlocalizedName, String aLocalName, String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, boolean aNEIAllowed) {
- super(aRecipeList, aUnlocalizedName, aLocalName, aNEIName, aNEIGUIPath, aUsualInputCount, aUsualOutputCount, aMinimalInputItems, aMinimalInputFluids, aAmperage, aNEISpecialValuePre, aNEISpecialValueMultiplier, aNEISpecialValuePost, aShowVoltageAmperageInNEI, aNEIAllowed);
- }
-
- @Override
- public boolean containsInput(ItemStack aStack) {
- return false;
- }
-
- @Override
- public boolean containsInput(FluidStack aFluid) {
- return false;
- }
-
- @Override
- public boolean containsInput(Fluid aFluid) {
- return false;
- }
-
- @Override
- public GregtechRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return null;
- }
-
- @Override
- public GregtechRecipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return null;
- }
-
- @Override
- public GregtechRecipe addRecipe(GregtechRecipe aRecipe) {
- return null;
- }
-
- @Override
- public GregtechRecipe addFakeRecipe(boolean aCheckForCollisions, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return null;
- }
-
- @Override
- public GregtechRecipe addFakeRecipe(boolean aCheckForCollisions, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) {
- return null;
- }
-
- @Override
- public GregtechRecipe addFakeRecipe(boolean aCheckForCollisions, GregtechRecipe aRecipe) {
- return null;
- }
-
- @Override
- public GregtechRecipe add(GregtechRecipe aRecipe) {
- return null;
- }
-
- @Override
- public void reInit() {/**/}
-
- @Override
- protected GregtechRecipe addToItemMap(GregtechRecipe aRecipe) {
- return null;
- }
- }
-
- /**
- * Just a Recipe Map with Utility specifically for Fuels.
- */
- public static class Gregtech_Recipe_Map_Fuel extends Gregtech_Recipe_Map {
- public Gregtech_Recipe_Map_Fuel(Collection<GregtechRecipe> aRecipeList, String aUnlocalizedName, String aLocalName, String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, boolean aNEIAllowed) {
- super(aRecipeList, aUnlocalizedName, aLocalName, aNEIName, aNEIGUIPath, aUsualInputCount, aUsualOutputCount, aMinimalInputItems, aMinimalInputFluids, aAmperage, aNEISpecialValuePre, aNEISpecialValueMultiplier, aNEISpecialValuePost, aShowVoltageAmperageInNEI, aNEIAllowed);
- }
-
- public GregtechRecipe addFuel(ItemStack aInput, ItemStack aOutput, int aFuelValueInEU) {
- Utils.LOG_INFO("Adding Fuel using method 1");
- return addFuel(aInput, aOutput, null, null, 10000, aFuelValueInEU);
- }
-
- public GregtechRecipe addFuel(ItemStack aInput, ItemStack aOutput, int aChance, int aFuelValueInEU) {
- Utils.LOG_INFO("Adding Fuel using method 2");
- return addFuel(aInput, aOutput, null, null, aChance, aFuelValueInEU);
- }
-
- public GregtechRecipe addFuel(FluidStack aFluidInput, FluidStack aFluidOutput, int aFuelValueInEU) {
- Utils.LOG_INFO("Adding Fuel using method 3");
- return addFuel(null, null, aFluidInput, aFluidOutput, 10000, aFuelValueInEU);
- }
-
- public GregtechRecipe addFuel(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput, int aFuelValueInEU) {
- Utils.LOG_INFO("Adding Fuel using method 4");
- return addFuel(aInput, aOutput, aFluidInput, aFluidOutput, 10000, aFuelValueInEU);
- }
-
- public GregtechRecipe addFuel(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput, int aChance, int aFuelValueInEU) {
- Utils.LOG_INFO("Adding Fuel using method 5");
- return addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, new int[]{aChance}, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, 0, 0, aFuelValueInEU);
- }
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechRecipeRegistrator.java b/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechRecipeRegistrator.java
deleted file mode 100644
index 120cef762d..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/api/util/GregtechRecipeRegistrator.java
+++ /dev/null
@@ -1,339 +0,0 @@
-package miscutil.core.xmod.gregtech.api.util;
-
-import static gregtech.api.enums.GT_Values.L;
-import static gregtech.api.enums.GT_Values.M;
-import static gregtech.api.enums.GT_Values.RA;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.ConfigCategories;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.enums.SubTag;
-import gregtech.api.enums.TC_Aspects;
-import gregtech.api.enums.TC_Aspects.TC_AspectStack;
-import gregtech.api.interfaces.internal.IThaumcraftCompat;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.objects.GregtechItemData;
-import miscutil.core.xmod.gregtech.api.objects.GregtechMaterialStack;
-import net.minecraft.init.Blocks;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-
-/**
- * Class for Automatic Recipe registering.
- */
-public class GregtechRecipeRegistrator {
- /**
- * List of GT_Materials, which are used in the Creation of Sticks. All Rod GT_Materials are automatically added to this List.
- */
- public static final List<GT_Materials> sRodMaterialList = new ArrayList<GT_Materials>();
- private static final ItemStack sMt1 = new ItemStack(Blocks.dirt, 1, 0), sMt2 = new ItemStack(Blocks.dirt, 1, 0);
- private static final String s_H = "h", s_F = "f", s_I = "I", s_P = "P", s_R = "R";
- private static final ItemStack[][]
- sShapes1 = new ItemStack[][]{
- {sMt1, null, sMt1, sMt1, sMt1, sMt1, null, sMt1, null},
- {sMt1, null, sMt1, sMt1, null, sMt1, sMt1, sMt1, sMt1},
- {null, sMt1, null, sMt1, sMt1, sMt1, sMt1, null, sMt1},
- {sMt1, sMt1, sMt1, sMt1, null, sMt1, null, null, null},
- {sMt1, null, sMt1, sMt1, sMt1, sMt1, sMt1, sMt1, sMt1},
- {sMt1, sMt1, sMt1, sMt1, null, sMt1, sMt1, null, sMt1},
- {null, null, null, sMt1, null, sMt1, sMt1, null, sMt1},
- {null, sMt1, null, null, sMt1, null, null, sMt2, null},
- {sMt1, sMt1, sMt1, null, sMt2, null, null, sMt2, null},
- {null, sMt1, null, null, sMt2, null, null, sMt2, null},
- {sMt1, sMt1, null, sMt1, sMt2, null, null, sMt2, null},
- {null, sMt1, sMt1, null, sMt2, sMt1, null, sMt2, null},
- {sMt1, sMt1, null, null, sMt2, null, null, sMt2, null},
- {null, sMt1, sMt1, null, sMt2, null, null, sMt2, null},
- {null, sMt1, null, sMt1, null, null, null, sMt1, sMt2},
- {null, sMt1, null, null, null, sMt1, sMt2, sMt1, null},
- {null, sMt1, null, sMt1, null, sMt1, null, null, sMt2},
- {null, sMt1, null, sMt1, null, sMt1, sMt2, null, null},
- {null, sMt2, null, null, sMt1, null, null, sMt1, null},
- {null, sMt2, null, null, sMt2, null, sMt1, sMt1, sMt1},
- {null, sMt2, null, null, sMt2, null, null, sMt1, null},
- {null, sMt2, null, sMt1, sMt2, null, sMt1, sMt1, null},
- {null, sMt2, null, null, sMt2, sMt1, null, sMt1, sMt1},
- {null, sMt2, null, null, sMt2, null, sMt1, sMt1, null},
- {sMt1, null, null, null, sMt2, null, null, null, sMt2},
- {null, null, sMt1, null, sMt2, null, sMt2, null, null},
- {sMt1, null, null, null, sMt2, null, null, null, null},
- {null, null, sMt1, null, sMt2, null, null, null, null},
- {sMt1, sMt2, null, null, null, null, null, null, null},
- {sMt2, sMt1, null, null, null, null, null, null, null},
- {sMt1, null, null, sMt2, null, null, null, null, null},
- {sMt2, null, null, sMt1, null, null, null, null, null},
- {sMt1, sMt1, sMt1, sMt1, sMt1, sMt1, null, sMt2, null},
- {sMt1, sMt1, null, sMt1, sMt1, sMt2, sMt1, sMt1, null},
- {null, sMt1, sMt1, sMt2, sMt1, sMt1, null, sMt1, sMt1},
- {null, sMt2, null, sMt1, sMt1, sMt1, sMt1, sMt1, sMt1},
- {sMt1, sMt1, sMt1, sMt1, sMt2, sMt1, null, sMt2, null},
- {sMt1, sMt1, null, sMt1, sMt2, sMt2, sMt1, sMt1, null},
- {null, sMt1, sMt1, sMt2, sMt2, sMt1, null, sMt1, sMt1},
- {null, sMt2, null, sMt1, sMt2, sMt1, sMt1, sMt1, sMt1},
- {sMt1, null, null, null, sMt1, null, null, null, null},
- {null, sMt1, null, sMt1, null, null, null, null, null},
- {sMt1, sMt1, null, sMt2, null, sMt1, sMt2, null, null},
- {null, sMt1, sMt1, sMt1, null, sMt2, null, null, sMt2}
- };
- private static final String[][] sShapesA = new String[][]{
- null,
- null,
- null,
- {"Helmet", s_P + s_P + s_P, s_P + s_H + s_P},
- {"ChestPlate", s_P + s_H + s_P, s_P + s_P + s_P, s_P + s_P + s_P},
- {"Pants", s_P + s_P + s_P, s_P + s_H + s_P, s_P + " " + s_P},
- {"Boots", s_P + " " + s_P, s_P + s_H + s_P},
- {"Sword", " " + s_P + " ", s_F + s_P + s_H, " " + s_R + " "},
- {"Pickaxe", s_P + s_I + s_I, s_F + s_R + s_H, " " + s_R + " "},
- {"Shovel", s_F + s_P + s_H, " " + s_R + " ", " " + s_R + " "},
- {"Axe", s_P + s_I + s_H, s_P + s_R + " ", s_F + s_R + " "},
- {"Axe", s_P + s_I + s_H, s_P + s_R + " ", s_F + s_R + " "},
- {"Hoe", s_P + s_I + s_H, s_F + s_R + " ", " " + s_R + " "},
- {"Hoe", s_P + s_I + s_H, s_F + s_R + " ", " " + s_R + " "},
- {"Sickle", " " + s_P + " ", s_P + s_F + " ", s_H + s_P + s_R},
- {"Sickle", " " + s_P + " ", s_P + s_F + " ", s_H + s_P + s_R},
- {"Sickle", " " + s_P + " ", s_P + s_F + " ", s_H + s_P + s_R},
- {"Sickle", " " + s_P + " ", s_P + s_F + " ", s_H + s_P + s_R},
- {"Sword", " " + s_R + " ", s_F + s_P + s_H, " " + s_P + " "},
- {"Pickaxe", " " + s_R + " ", s_F + s_R + s_H, s_P + s_I + s_I},
- {"Shovel", " " + s_R + " ", " " + s_R + " ", s_F + s_P + s_H},
- {"Axe", s_F + s_R + " ", s_P + s_R + " ", s_P + s_I + s_H},
- {"Axe", s_F + s_R + " ", s_P + s_R + " ", s_P + s_I + s_H},
- {"Hoe", " " + s_R + " ", s_F + s_R + " ", s_P + s_I + s_H},
- {"Hoe", " " + s_R + " ", s_F + s_R + " ", s_P + s_I + s_H},
- {"Spear", s_P + s_H + " ", s_F + s_R + " ", " " + " " + s_R},
- {"Spear", s_P + s_H + " ", s_F + s_R + " ", " " + " " + s_R},
- {"Knive", s_H + s_P, s_R + s_F},
- {"Knive", s_F + s_H, s_P + s_R},
- {"Knive", s_F + s_H, s_P + s_R},
- {"Knive", s_P + s_F, s_R + s_H},
- {"Knive", s_P + s_F, s_R + s_H},
- null,
- null,
- null,
- null,
- {"WarAxe", s_P + s_P + s_P, s_P + s_R + s_P, s_F + s_R + s_H},
- null,
- null,
- null,
- {"Shears", s_H + s_P, s_P + s_F},
- {"Shears", s_H + s_P, s_P + s_F},
- {"Scythe", s_I + s_P + s_H, s_R + s_F + s_P, s_R + " " + " "},
- {"Scythe", s_H + s_P + s_I, s_P + s_F + s_R, " " + " " + s_R}
- };
- public static volatile int VERSION = 508;
-
- public static void registerMaterialRecycling(ItemStack aStack, GT_Materials aMaterial, long aMaterialAmount, GregtechMaterialStack aByproduct) {
- if (GT_Utility.isStackInvalid(aStack)) return;
- if (aByproduct != null) {
- aByproduct = aByproduct.clone();
- aByproduct.mAmount /= aStack.stackSize;
- }
- GregtechOreDictUnificator.addItemData(GT_Utility.copyAmount(1, aStack), new GregtechItemData(aMaterial, aMaterialAmount / aStack.stackSize, aByproduct));
- }
-
- public static void registerMaterialRecycling(ItemStack aStack, GregtechItemData aData) {
- if (GT_Utility.isStackInvalid(aStack) || GT_Utility.areStacksEqual(new ItemStack(Items.blaze_rod), aStack) || aData == null || !aData.hasValidMaterialData() || aData.mMaterial.mAmount <= 0 || GT_Utility.getFluidForFilledItem(aStack, false) != null)
- return;
- registerReverseMacerating(GT_Utility.copyAmount(1, aStack), aData, aData.mPrefix == null);
- registerReverseSmelting(GT_Utility.copyAmount(1, aStack), aData.mMaterial.mMaterial, aData.mMaterial.mAmount, true);
- registerReverseFluidSmelting(GT_Utility.copyAmount(1, aStack), aData.mMaterial.mMaterial, aData.mMaterial.mAmount, aData.getByProduct(0));
- registerReverseArcSmelting(GT_Utility.copyAmount(1, aStack), aData);
- }
-
- /**
- * @param aStack the stack to be recycled.
- * @param aMaterial the Material.
- * @param aMaterialAmount the amount of it in Material Units.
- */
- public static void registerReverseFluidSmelting(ItemStack aStack, GT_Materials aMaterial, long aMaterialAmount, GregtechMaterialStack aByproduct) {
- if (aStack == null || aMaterial == null || aMaterial.mSmeltInto.mStandardMoltenFluid == null || !aMaterial.contains(SubTag.SMELTING_TO_FLUID) || (L * aMaterialAmount) / (M * aStack.stackSize) <= 0)
- return;
- RA.addFluidSmelterRecipe(GT_Utility.copyAmount(1, aStack), aByproduct == null ? null : aByproduct.mMaterial.contains(SubTag.NO_SMELTING) || !aByproduct.mMaterial.contains(SubTag.METAL) ? aByproduct.mMaterial.contains(SubTag.FLAMMABLE) ? GregtechOreDictUnificator.getDust(GT_Materials._NULL, aByproduct.mAmount / 2) : aByproduct.mMaterial.contains(SubTag.UNBURNABLE) ? GregtechOreDictUnificator.getDustOrIngot(aByproduct.mMaterial.mSmeltInto, aByproduct.mAmount) : null : GregtechOreDictUnificator.getIngotOrDust(aByproduct.mMaterial.mSmeltInto, aByproduct.mAmount), aMaterial.mSmeltInto.getMolten((L * aMaterialAmount) / (M * aStack.stackSize)), 10000, (int) Math.max(1, (24 * aMaterialAmount) / M), Math.max(8, (int) Math.sqrt(2 * aMaterial.mSmeltInto.mStandardMoltenFluid.getTemperature())));
- }
-
- /**
- * @param aStack the stack to be recycled.
- * @param aMaterial the Material.
- * @param aMaterialAmount the amount of it in Material Units.
- * @param aAllowAlloySmelter if it is allowed to be recycled inside the Alloy Smelter.
- */
- public static void registerReverseSmelting(ItemStack aStack, GT_Materials aMaterial, long aMaterialAmount, boolean aAllowAlloySmelter) {
- if (aStack == null || aMaterial == null || aMaterialAmount <= 0 || aMaterial.contains(SubTag.NO_SMELTING) || (aMaterialAmount > M && aMaterial.contains(SubTag.METAL)))
- return;
- aMaterialAmount /= aStack.stackSize;
-
- if (aAllowAlloySmelter)
- GT_ModHandler.addSmeltingAndAlloySmeltingRecipe(GT_Utility.copyAmount(1, aStack), GregtechOreDictUnificator.getIngot(aMaterial.mSmeltInto, aMaterialAmount));
- else
- GT_ModHandler.addSmeltingRecipe(GT_Utility.copyAmount(1, aStack), GregtechOreDictUnificator.getIngot(aMaterial.mSmeltInto, aMaterialAmount));
- }
-
- public static void registerReverseArcSmelting(ItemStack aStack, GT_Materials aMaterial, long aMaterialAmount, GregtechMaterialStack aByProduct01, GregtechMaterialStack aByProduct02, GregtechMaterialStack aByProduct03) {
- registerReverseArcSmelting(aStack, new GregtechItemData(aMaterial == null ? null : new GregtechMaterialStack(aMaterial, aMaterialAmount), aByProduct01, aByProduct02, aByProduct03));
- }
-
- public static void registerReverseArcSmelting(ItemStack aStack, GregtechItemData aData) {
- if (aStack == null || aData == null) return;
- aData = new GregtechItemData(aData);
-
- if (!aData.hasValidMaterialData()) return;
-
- for (GregtechMaterialStack tMaterial : aData.getAllGT_MaterialStacks()) {
- if (tMaterial.mMaterial.contains(SubTag.UNBURNABLE)) {
- tMaterial.mMaterial = tMaterial.mMaterial.mSmeltInto.mArcSmeltInto;
- continue;
- }
- if (tMaterial.mMaterial.contains(SubTag.EXPLOSIVE)) {
- tMaterial.mAmount /= 4;
- continue;
- }
- if (tMaterial.mMaterial.contains(SubTag.FLAMMABLE)) {
- tMaterial.mAmount /= 2;
- continue;
- }
- if (tMaterial.mMaterial.contains(SubTag.NO_SMELTING)) {
- tMaterial.mAmount = 0;
- continue;
- }
- if (tMaterial.mMaterial.contains(SubTag.METAL)) {
- tMaterial.mMaterial = tMaterial.mMaterial.mSmeltInto.mArcSmeltInto;
- continue;
- }
- tMaterial.mAmount = 0;
- }
-
- aData = new GregtechItemData(aData);
-
- if (aData.mByProducts.length > 3) for (GregtechMaterialStack tMaterial : aData.getAllGT_MaterialStacks())
-
- aData = new GregtechItemData(aData);
-
- if (!aData.hasValidMaterialData()) return;
-
- long tAmount = 0;
- for (GregtechMaterialStack tMaterial : aData.getAllGT_MaterialStacks())
- tAmount += tMaterial.mAmount * tMaterial.mMaterial.getMass();
-
- RA.addArcFurnaceRecipe(aStack, new ItemStack[]{GregtechOreDictUnificator.getIngotOrDust(aData.mMaterial), GregtechOreDictUnificator.getIngotOrDust(aData.getByProduct(0)), GregtechOreDictUnificator.getIngotOrDust(aData.getByProduct(1)), GregtechOreDictUnificator.getIngotOrDust(aData.getByProduct(2))}, null, (int) Math.max(16, tAmount / M), 96);
- }
-
- public static void registerReverseMacerating(ItemStack aStack, GT_Materials aMaterial, long aMaterialAmount, GregtechMaterialStack aByProduct01, GregtechMaterialStack aByProduct02, GregtechMaterialStack aByProduct03, boolean aAllowHammer) {
- registerReverseMacerating(aStack, new GregtechItemData(aMaterial == null ? null : new GregtechMaterialStack(aMaterial, aMaterialAmount), aByProduct01, aByProduct02, aByProduct03), aAllowHammer);
- }
-
- public static void registerReverseMacerating(ItemStack aStack, GregtechItemData aData, boolean aAllowHammer) {
- if (aStack == null || aData == null) return;
- aData = new GregtechItemData(aData);
-
- if (!aData.hasValidMaterialData()) return;
-
- for (GregtechMaterialStack tMaterial : aData.getAllGT_MaterialStacks())
- tMaterial.mMaterial = tMaterial.mMaterial.mMacerateInto;
-
- aData = new GregtechItemData(aData);
-
- if (!aData.hasValidMaterialData()) return;
-
- long tAmount = 0;
- for (GregtechMaterialStack tMaterial : aData.getAllGT_MaterialStacks())
- tAmount += tMaterial.mAmount * tMaterial.mMaterial.getMass();
-
- RA.addPulveriserRecipe(aStack, new ItemStack[]{GregtechOreDictUnificator.getDust(aData.mMaterial), GregtechOreDictUnificator.getDust(aData.getByProduct(0)), GregtechOreDictUnificator.getDust(aData.getByProduct(1)), GregtechOreDictUnificator.getDust(aData.getByProduct(2))}, null, (int) Math.max(16, tAmount / M), 4);
-
- if (aAllowHammer) for (GregtechMaterialStack tMaterial : aData.getAllGT_MaterialStacks())
- if (tMaterial.mMaterial.contains(SubTag.CRYSTAL) && !tMaterial.mMaterial.contains(SubTag.METAL)) {
- if (RA.addForgeHammerRecipe(GT_Utility.copyAmount(1, aStack), GregtechOreDictUnificator.getDust(aData.mMaterial), 200, 32))
- break;
- }
- ItemStack tDust = GregtechOreDictUnificator.getDust(aData.mMaterial);
- if (tDust != null && GT_ModHandler.addPulverisationRecipe(GT_Utility.copyAmount(1, aStack), tDust, GregtechOreDictUnificator.getDust(aData.getByProduct(0)), 100, GregtechOreDictUnificator.getDust(aData.getByProduct(1)), 100, true)) {
- if (GregTech_API.sThaumcraftCompat != null)
- GregTech_API.sThaumcraftCompat.addCrucibleRecipe(IThaumcraftCompat.ADVANCEDENTROPICPROCESSING, aStack, tDust, Arrays.asList(new TC_AspectStack(TC_Aspects.PERDITIO, Math.max(1, (aData.mMaterial.mAmount * 2) / M))));
- }
- }
-
- /**
- * You give this Function a Material and it will scan almost everything for adding recycling Recipes
- *
- * @param aMat a Material, for example an Ingot or a Gem.
- * @param aOutput the Dust you usually get from macerating aMat
- * @param aRecipeReplacing allows to replace the Recipe with a Plate variant
- */
- public static synchronized void registerUsagesForGT_Materials(ItemStack aMat, String aPlate, boolean aRecipeReplacing) {
- if (aMat == null) return;
- aMat = GT_Utility.copy(aMat);
- ItemStack tStack;
- GregtechItemData aItemData = GregtechOreDictUnificator.getItemData(aMat);
- if (aItemData == null || aItemData.mPrefix != GregtechOrePrefixes.ingot) aPlate = null;
- if (aPlate != null && GregtechOreDictUnificator.getFirstOre(aPlate, 1) == null) aPlate = null;
-
- sMt1.func_150996_a(aMat.getItem());
- sMt1.stackSize = 1;
- Items.feather.setDamage(sMt1, Items.feather.getDamage(aMat));
-
- sMt2.func_150996_a(new ItemStack(Blocks.dirt).getItem());
- sMt2.stackSize = 1;
- Items.feather.setDamage(sMt2, 0);
-
- for (ItemStack[] tRecipe : sShapes1) {
- int tAmount1 = 0;
- for (ItemStack tMat : tRecipe) {
- if (tMat == sMt1) tAmount1++;
- }
- if (aItemData != null && aItemData.hasValidPrefixMaterialData())
- for (ItemStack tCrafted : GT_ModHandler.getRecipeOutputs(tRecipe)) {
- GregtechOreDictUnificator.addItemData(tCrafted, new GregtechItemData(aItemData.mMaterial.mMaterial, aItemData.mMaterial.mAmount * tAmount1));
- }
- }
-
- for (GT_Materials tMaterial : sRodMaterialList) {
- ItemStack tMt2 = GregtechOreDictUnificator.get(GregtechOrePrefixes.stick, tMaterial, 1);
- if (tMt2 != null) {
- sMt2.func_150996_a(tMt2.getItem());
- sMt2.stackSize = 1;
- Items.feather.setDamage(sMt2, Items.feather.getDamage(tMt2));
-
- for (int i = 0; i < sShapes1.length; i++) {
- ItemStack[] tRecipe = sShapes1[i];
-
- int tAmount1 = 0, tAmount2 = 0;
- for (ItemStack tMat : tRecipe) {
- if (tMat == sMt1) tAmount1++;
- if (tMat == sMt2) tAmount2++;
- }
- for (ItemStack tCrafted : GT_ModHandler.getVanillyToolRecipeOutputs(tRecipe)) {
- if (aItemData != null && aItemData.hasValidPrefixMaterialData())
- GregtechOreDictUnificator.addItemData(tCrafted, new GregtechItemData(aItemData.mMaterial.mMaterial, aItemData.mMaterial.mAmount * tAmount1, new GregtechMaterialStack(tMaterial, OrePrefixes.stick.mMaterialAmount * tAmount2)));
-
- if (aRecipeReplacing && aPlate != null && sShapesA[i] != null && sShapesA[i].length > 1) {
- assert aItemData != null;
- if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.recipereplacements, aItemData.mMaterial.mMaterial + "." + sShapesA[i][0], true)) {
- if (null != (tStack = GT_ModHandler.removeRecipe(tRecipe))) {
- switch (sShapesA[i].length) {
- case 2:
- GT_ModHandler.addCraftingRecipe(tStack, GT_ModHandler.RecipeBits.BUFFERED, new Object[]{sShapesA[i][1], s_P.charAt(0), aPlate, s_R.charAt(0), OrePrefixes.stick.get(tMaterial), s_I.charAt(0), aItemData});
- break;
- case 3:
- GT_ModHandler.addCraftingRecipe(tStack, GT_ModHandler.RecipeBits.BUFFERED, new Object[]{sShapesA[i][1], sShapesA[i][2], s_P.charAt(0), aPlate, s_R.charAt(0), OrePrefixes.stick.get(tMaterial), s_I.charAt(0), aItemData});
- break;
- default:
- GT_ModHandler.addCraftingRecipe(tStack, GT_ModHandler.RecipeBits.BUFFERED, new Object[]{sShapesA[i][1], sShapesA[i][2], sShapesA[i][3], s_P.charAt(0), aPlate, s_R.charAt(0), OrePrefixes.stick.get(tMaterial), s_I.charAt(0), aItemData});
- break;
- }
- }
- }
- }
- }
- }
- }
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/Meta_GT_Proxy.java b/src/Java/miscutil/core/xmod/gregtech/common/Meta_GT_Proxy.java
deleted file mode 100644
index 0da4b19ee7..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/Meta_GT_Proxy.java
+++ /dev/null
@@ -1,429 +0,0 @@
-package miscutil.core.xmod.gregtech.common;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.ConfigCategories;
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.Materials;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Utility;
-import gregtech.common.GT_Proxy.OreDictEventContainer;
-
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Iterator;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.objects.GregtechFluid;
-import miscutil.core.xmod.gregtech.api.util.GregtechOreDictUnificator;
-import miscutil.core.xmod.gregtech.api.util.GregtechRecipeRegistrator;
-import miscutil.core.xmod.gregtech.common.items.MetaGeneratedGregtechItems;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.ItemBlock;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidContainerRegistry;
-import net.minecraftforge.fluids.FluidRegistry;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.oredict.OreDictionary;
-import cpw.mods.fml.common.Loader;
-import cpw.mods.fml.common.ModContainer;
-import cpw.mods.fml.common.eventhandler.SubscribeEvent;
-
-public class Meta_GT_Proxy {
-
- //Silly Vars
- private static final Collection<String> mIgnoredItems = new HashSet(Arrays.asList(new String[]{"itemGhastTear", "itemFlint", "itemClay", "itemBucketSaltWater",
- "itemBucketFreshWater", "itemBucketWater", "itemRock", "itemReed", "itemArrow", "itemSaw", "itemKnife", "itemHammer", "itemChisel", "itemRubber",
- "itemEssence", "itemIlluminatedPanel", "itemSkull", "itemRawRubber", "itemBacon", "itemJetpackAccelerator", "itemLazurite", "itemIridium",
- "itemTear", "itemClaw", "itemFertilizer", "itemTar", "itemSlimeball", "itemCoke", "itemBeeswax", "itemBeeQueen", "itemForcicium", "itemForcillium",
- "itemRoyalJelly", "itemHoneydew", "itemHoney", "itemPollen", "itemReedTypha", "itemSulfuricAcid", "itemPotash", "itemCompressedCarbon",
- "itemBitumen", "itemBioFuel", "itemCokeSugar", "itemCokeCactus", "itemCharcoalSugar", "itemCharcoalCactus", "itemSludge", "itemEnrichedAlloy",
- "itemQuicksilver", "itemMercury", "itemOsmium", "itemUltimateCircuit", "itemEnergizedStar", "itemAntimatterMolecule", "itemAntimatterGlob",
- "itemCoal", "itemBoat", "itemHerbalMedicineCake", "itemCakeSponge", "itemFishandPumpkinCakeSponge", "itemSoulCleaver", "itemInstantCake",
- "itemWhippingCream", "itemGlisteningWhippingCream", "itemCleaver", "itemHerbalMedicineWhippingCream", "itemStrangeWhippingCream",
- "itemBlazeCleaver", "itemBakedCakeSponge", "itemMagmaCake", "itemGlisteningCake", "itemOgreCleaver", "itemFishandPumpkinCake",
- "itemMagmaWhippingCream", "itemMultimeter", "itemSuperconductor"}));
- private static final Collection<String> mIgnoredNames = new HashSet(Arrays.asList(new String[]{"grubBee", "chainLink", "candyCane", "bRedString", "bVial",
- "bFlask", "anorthositeSmooth", "migmatiteSmooth", "slateSmooth", "travertineSmooth", "limestoneSmooth", "orthogneissSmooth", "marbleSmooth",
- "honeyDrop", "lumpClay", "honeyEqualssugar", "flourEqualswheat", "bluestoneInsulated", "blockWaterstone", "blockSand", "blockTorch",
- "blockPumpkin", "blockClothRock", "blockStainedHardenedClay", "blockQuartzPillar", "blockQuartzChiselled", "blockSpawner", "blockCloth", "mobHead",
- "mobEgg", "enderFlower", "enderChest", "clayHardened", "dayGemMaterial", "nightGemMaterial", "snowLayer", "bPlaceholder", "hardenedClay",
- "eternalLifeEssence", "sandstone", "wheatRice", "transdimBlock", "bambooBasket", "lexicaBotania", "livingwoodTwig", "redstoneCrystal",
- "pestleAndMortar", "glowstone", "whiteStone", "stoneSlab", "transdimBlock", "clayBowl", "clayPlate", "ceramicBowl", "ceramicPlate", "ovenRack",
- "clayCup", "ceramicCup", "batteryBox", "transmutationStone", "torchRedstoneActive", "coal", "charcoal", "cloth", "cobblestoneSlab",
- "stoneBrickSlab", "cobblestoneWall", "stoneBrickWall", "cobblestoneStair", "stoneBrickStair", "blockCloud", "blockDirt", "blockTyrian",
- "blockCarpet", "blockFft", "blockLavastone", "blockHolystone", "blockConcrete", "sunnariumPart", "brSmallMachineCyaniteProcessor", "meteoriteCoal",
- "blockCobble", "pressOreProcessor", "crusherOreProcessor", "grinderOreProcessor", "blockRubber", "blockHoney", "blockHoneydew", "blockPeat",
- "blockRadioactive", "blockSlime", "blockCocoa", "blockSugarCane", "blockLeather", "blockClayBrick", "solarPanelHV", "cableRedNet", "stoneBowl",
- "crafterWood", "taintedSoil", "brickXyEngineering", "breederUranium", "wireMill", "chunkLazurite", "aluminumNatural", "aluminiumNatural",
- "naturalAluminum", "naturalAluminium", "antimatterMilligram", "antimatterGram", "strangeMatter", "coalGenerator", "electricFurnace",
- "unfinishedTank", "valvePart", "aquaRegia", "leatherSeal", "leatherSlimeSeal", "hambone", "slimeball", "clay", "enrichedUranium", "camoPaste",
- "antiBlock", "burntQuartz", "salmonRaw", "blockHopper", "blockEnderObsidian", "blockIcestone", "blockMagicWood", "blockEnderCore", "blockHeeEndium",
- "oreHeeEndPowder", "oreHeeStardust", "oreHeeIgneousRock", "oreHeeInstabilityOrb", "crystalPureFluix", "shardNether", "gemFluorite",
- "stickObsidian", "caveCrystal", "shardCrystal", "dyeCrystal","shardFire","shardWater","shardAir","shardEarth","ingotRefinedIron","blockMarble","ingotUnstable"}));
- private static final Collection<String> mInvalidNames = new HashSet(Arrays.asList(new String[]{"diamondShard", "redstoneRoot", "obsidianStick", "bloodstoneOre",
- "universalCable", "bronzeTube", "ironTube", "netherTube", "obbyTube", "infiniteBattery", "eliteBattery", "advancedBattery", "10kEUStore",
- "blueDye", "MonazitOre", "quartzCrystal", "whiteLuminiteCrystal", "darkStoneIngot", "invisiumIngot", "demoniteOrb", "enderGem", "starconiumGem",
- "osmoniumIngot", "tapaziteGem", "zectiumIngot", "foolsRubyGem", "rubyGem", "meteoriteGem", "adamiteShard", "sapphireGem", "copperIngot",
- "ironStick", "goldStick", "diamondStick", "reinforcedStick", "draconicStick", "emeraldStick", "copperStick", "tinStick", "silverStick",
- "bronzeStick", "steelStick", "leadStick", "manyullynStick", "arditeStick", "cobaltStick", "aluminiumStick", "alumiteStick", "oilsandsOre",
- "copperWire", "superconductorWire", "sulfuricAcid", "conveyorBelt", "ironWire", "aluminumWire", "aluminiumWire", "silverWire", "tinWire",
- "dustSiliconSmall", "AluminumOre", "plateHeavyT2", "blockWool", "alloyPlateEnergizedHardened", "gasWood", "alloyPlateEnergized", "SilverOre",
- "LeadOre", "TinOre", "CopperOre", "silverOre", "leadOre", "tinOre", "copperOre", "bauxiteOre", "HSLivingmetalIngot", "oilMoving", "oilStill",
- "oilBucket", "petroleumOre", "dieselFuel", "diamondNugget", "planks", "wood", "stick", "sticks", "naquadah", "obsidianRod", "stoneRod",
- "thaumiumRod", "steelRod", "netherrackRod", "woodRod", "ironRod", "cactusRod", "flintRod", "copperRod", "cobaltRod", "alumiteRod", "blueslimeRod",
- "arditeRod", "manyullynRod", "bronzeRod", "boneRod", "slimeRod", "redalloyBundled", "bluestoneBundled", "infusedteslatiteInsulated",
- "redalloyInsulated", "infusedteslatiteBundled"}));
- public static boolean mOreDictActivated = false;
- public static boolean mSortToTheEnd = true;
- public final static HashSet<ItemStack> mRegisteredOres = new HashSet(10000);
- public final static Collection<GregtechOreDictEventContainer> mEvents = new HashSet();
-
- public Meta_GT_Proxy() {
- Utils.LOG_INFO("GT_PROXY - initialized.");
- for (String tOreName : OreDictionary.getOreNames()) {
- ItemStack tOreStack;
- for (Iterator i$ = OreDictionary.getOres(tOreName).iterator(); i$.hasNext(); registerOre(new OreDictionary.OreRegisterEvent(tOreName, tOreStack))) {
- tOreStack = (ItemStack) i$.next();
- }
- }
- }
-
- public static Fluid addFluid(String aName, String aLocalized, GT_Materials aMaterial, int aState, int aTemperatureK) {
- return addFluid(aName, aLocalized, aMaterial, aState, aTemperatureK, null, null, 0);
- }
-
- public static Fluid addFluid(String aName, String aLocalized, GT_Materials aMaterial, int aState, int aTemperatureK, ItemStack aFullContainer,
- ItemStack aEmptyContainer, int aFluidAmount) {
- return addFluid(aName, aName.toLowerCase(), aLocalized, aMaterial, null, aState, aTemperatureK, aFullContainer, aEmptyContainer, aFluidAmount);
- }
-
- public static Fluid addFluid(String aName, String aTexture, String aLocalized, GT_Materials aMaterial, short[] aRGBa, int aState, int aTemperatureK,
- ItemStack aFullContainer, ItemStack aEmptyContainer, int aFluidAmount) {
- aName = aName.toLowerCase();
- Fluid rFluid = new GregtechFluid(aName, aTexture, aRGBa != null ? aRGBa : Dyes._NULL.getRGBA());
- GT_LanguageManager.addStringLocalization(rFluid.getUnlocalizedName(), aLocalized == null ? aName : aLocalized);
- if (FluidRegistry.registerFluid(rFluid)) {
- switch (aState) {
- case 0:
- rFluid.setGaseous(false);
- rFluid.setViscosity(10000);
- break;
- case 1:
- case 4:
- rFluid.setGaseous(false);
- rFluid.setViscosity(1000);
- break;
- case 2:
- rFluid.setGaseous(true);
- rFluid.setDensity(-100);
- rFluid.setViscosity(200);
- break;
- case 3:
- rFluid.setGaseous(true);
- rFluid.setDensity(55536);
- rFluid.setViscosity(10);
- rFluid.setLuminosity(15);
- }
- } else {
- rFluid = FluidRegistry.getFluid(aName);
- }
- if (rFluid.getTemperature() == new Fluid("test").getTemperature()) {
- rFluid.setTemperature(aTemperatureK);
- }
- if (aMaterial != null) {
- switch (aState) {
- case 0:
- aMaterial.mSolid = rFluid;
- break;
- case 1:
- aMaterial.mFluid = rFluid;
- break;
- case 2:
- aMaterial.mGas = rFluid;
- break;
- case 3:
- aMaterial.mPlasma = rFluid;
- break;
- case 4:
- aMaterial.mStandardMoltenFluid = rFluid;
- }
- }
- if ((aFullContainer != null) && (aEmptyContainer != null)
- && (!FluidContainerRegistry.registerFluidContainer(new FluidStack(rFluid, aFluidAmount), aFullContainer, aEmptyContainer))) {
- GT_Values.RA.addFluidCannerRecipe(aFullContainer, GT_Utility.getContainerItem(aFullContainer, false), null, new FluidStack(rFluid, aFluidAmount));
- }
- return rFluid;
- }
-
- @SubscribeEvent
- public static void registerOre(OreDictionary.OreRegisterEvent aEvent) {
- ModContainer tContainer = Loader.instance().activeModContainer();
- String aMod = tContainer == null ? "UNKNOWN" : tContainer.getModId();
- String aOriginalMod = aMod;
- if (GregtechOreDictUnificator.isRegisteringOres()) {
- aMod = CORE.MODID;
- } else if (aMod.equals(CORE.MODID)) {
- aMod = "UNKNOWN";
- }
- if ((aEvent == null) || (aEvent.Ore == null) || (aEvent.Ore.getItem() == null) || (aEvent.Name == null) || (aEvent.Name.isEmpty())
- || (aEvent.Name.replaceAll("_", "").length() - aEvent.Name.length() == 9)) {
- if (aOriginalMod.equals(CORE.MODID)) {
- aOriginalMod = "UNKNOWN";
- }
- GT_Log.ore
- .println(aOriginalMod
- + " did something very bad! The registration is too invalid to even be shown properly. This happens only if you register null, invalid Items, empty Strings or even nonexisting Events to the OreDict.");
- throw new IllegalArgumentException(
- aOriginalMod
- + " did something very bad! The registration is too invalid to even be shown properly. This happens only if you register null, invalid Items, empty Strings or even nonexisting Events to the OreDict.");
- }
- try {
- aEvent.Ore.stackSize = 1;
-
- String tModToName = aMod + " -> " + aEvent.Name;
- if ((mOreDictActivated) || (GregTech_API.sPostloadStarted) || ((mSortToTheEnd) && (GregTech_API.sLoadFinished))) {
- tModToName = aOriginalMod + " --Late--> " + aEvent.Name;
- }
- if (((aEvent.Ore.getItem() instanceof ItemBlock)) || (GT_Utility.getBlockFromStack(aEvent.Ore) != Blocks.air)) {
- GregtechOreDictUnificator.addToBlacklist(aEvent.Ore);
- }
- mRegisteredOres.add(aEvent.Ore);
- if (mIgnoredNames.contains(aEvent.Name)) {
- GT_Log.ore.println(tModToName + " is getting ignored via hardcode.");
- return;
- }
- if ((aEvent.Name.contains("|")) || (aEvent.Name.contains("*")) || (aEvent.Name.contains(":")) || (aEvent.Name.contains("."))
- || (aEvent.Name.contains("$"))) {
- GT_Log.ore.println(tModToName + " is using a private Prefix and is therefor getting ignored properly.");
- return;
- }
- if (aEvent.Name.contains(" ")) {
- GT_Log.ore.println(tModToName + " is getting re-registered because the OreDict Name containing invalid spaces.");
- GregtechOreDictUnificator.registerOre(aEvent.Name.replaceAll(" ", ""), GT_Utility.copyAmount(1L, new Object[]{aEvent.Ore}));
- aEvent.Ore.setStackDisplayName("Invalid OreDictionary Tag");
- return;
- }
- if (mInvalidNames.contains(aEvent.Name)) {
- GT_Log.ore.println(tModToName + " is wrongly registered and therefor getting ignored.");
-
- return;
- }
- GregtechOrePrefixes aPrefix = GregtechOrePrefixes.getOrePrefix(aEvent.Name);
- GT_Materials aMaterial = GT_Materials._NULL;
- if (aPrefix == null) {
- if (aEvent.Name.toLowerCase().equals(aEvent.Name)) {
- GT_Log.ore.println(tModToName + " is invalid due to being solely lowercased.");
- return;
- }
- if (aEvent.Name.toUpperCase().equals(aEvent.Name)) {
- GT_Log.ore.println(tModToName + " is invalid due to being solely uppercased.");
- return;
- }
- if (Character.isUpperCase(aEvent.Name.charAt(0))) {
- GT_Log.ore.println(tModToName + " is invalid due to the first character being uppercased.");
- }
- } else {
- if (aPrefix.mDontUnificateActively) {
- GregtechOreDictUnificator.addToBlacklist(aEvent.Ore);
- }
- if (aPrefix != aPrefix.mPrefixInto) {
- String tNewName = aEvent.Name.replaceFirst(aPrefix.toString(), aPrefix.mPrefixInto.toString());
- if (!GregtechOreDictUnificator.isRegisteringOres()) {
- GT_Log.ore.println(tModToName + " uses a depricated Prefix, and is getting re-registered as " + tNewName);
- }
- GregtechOreDictUnificator.registerOre(tNewName, aEvent.Ore);
- return;
- }
- String tName = aEvent.Name.replaceFirst(aPrefix.toString(), "");
- if (tName.length() > 0) {
- char firstChar = tName.charAt(0);
- if (Character.isUpperCase(firstChar) || Character.isLowerCase(firstChar) || firstChar == '_') {
- if (aPrefix.mIsMaterialBased) {
- aMaterial = GT_Materials.get(tName);
- if (aMaterial != aMaterial.mMaterialInto) {
- GregtechOreDictUnificator.registerOre(aPrefix, aMaterial.mMaterialInto, aEvent.Ore);
- if (!GregtechOreDictUnificator.isRegisteringOres()) {
- GT_Log.ore.println(tModToName + " uses a deprecated Material and is getting re-registered as "
- + aPrefix.get(aMaterial.mMaterialInto));
- }
- return;
- }
- if (!aPrefix.isIgnored(aMaterial)) {
- aPrefix.add(GT_Utility.copyAmount(1L, new Object[]{aEvent.Ore}));
- }
- if (aMaterial != GT_Materials._NULL) {
- GT_Materials tReRegisteredMaterial;
- for (Iterator i$ = aMaterial.mOreReRegistrations.iterator(); i$.hasNext(); GregtechOreDictUnificator.registerOre(aPrefix,
- tReRegisteredMaterial, aEvent.Ore)) {
- tReRegisteredMaterial = (GT_Materials) i$.next();
- }
- aMaterial.add(GT_Utility.copyAmount(1L, new Object[]{aEvent.Ore}));
- switch (aPrefix) {
- case gem:
- break;
- case plate:
- break;
- case stick:
- if (!GregtechRecipeRegistrator.sRodMaterialList.contains(aMaterial)) {
- GregtechRecipeRegistrator.sRodMaterialList.add(aMaterial);
- }
- break;
- case dust:
- break;
- case ingot:
- break;
- }
- if (aPrefix.mIsUnificatable && !aMaterial.mUnificatable) {
- return;
- }
- } else {
- for (Dyes tDye : Dyes.VALUES) {
- if (aEvent.Name.endsWith(tDye.name().replaceFirst("dye", ""))) {
- GregtechOreDictUnificator.addToBlacklist(aEvent.Ore);
- GT_Log.ore.println(tModToName + " Oh man, why the fuck would anyone need a OreDictified Color for this, that is even too much for GregTech... do not report this, this is just a random Comment about how ridiculous this is.");
- return;
- }
- }
- // System.out.println("Material Name: "+aEvent.Name+ " !!!Unknown Material detected!!! Please report to GregTech Intergalactical for additional compatiblity. This is not an Error, an Issue nor a Lag Source, it is just an Information, which you should pass to me.");
- // GT_Log.ore.println(tModToName + " uses an unknown Material. Report this to GregTech.");
- return;
- }
- } else {
- aPrefix.add(GT_Utility.copyAmount(1L, new Object[]{aEvent.Ore}));
- }
- }
- } else if (aPrefix.mIsSelfReferencing) {
- aPrefix.add(GT_Utility.copyAmount(1L, new Object[]{aEvent.Ore}));
- } else {
- GT_Log.ore.println(tModToName + " uses a Prefix as full OreDict Name, and is therefor invalid.");
- aEvent.Ore.setStackDisplayName("Invalid OreDictionary Tag");
- return;
- }
- }
- GT_Log.ore.println(tModToName);
- GregtechOreDictEventContainer tOre = new GregtechOreDictEventContainer(aEvent, aPrefix, aMaterial, aMod);
- if ((!mOreDictActivated) || (!GregTech_API.sUnificationEntriesRegistered)) {
- mEvents.add(tOre);
- } else {
- mEvents.clear();
- }
- if (mOreDictActivated) {
- registerRecipes(tOre);
- }
- } catch (Throwable e) {
- e.printStackTrace(GT_Log.err);
- }
- }
-
- private static final void registerRecipes(GregtechOreDictEventContainer tOre) {
- if ((tOre.mEvent.Ore == null) || (tOre.mEvent.Ore.getItem() == null)) {
- return;
- }
- if (tOre.mEvent.Ore.stackSize != 1) {
- tOre.mEvent.Ore.stackSize = 1;
- }
- if (tOre.mPrefix != null) {
- if (!tOre.mPrefix.isIgnored(tOre.mMaterial)) {
- tOre.mPrefix.processOre((GT_Materials) (tOre.mMaterial == null ? GT_Materials._NULL : tOre.mMaterial), tOre.mEvent.Name, tOre.mModID,
- GT_Utility.copyAmount(1L, new Object[]{tOre.mEvent.Ore}));
- }
- } else {
- // System.out.println("Thingy Name: "+ aOre.mEvent.Name+ " !!!Unknown 'Thingy' detected!!! This Object seems to probably not follow a valid OreDictionary Convention, or I missed a Convention. Please report to GregTech Intergalactical for additional compatiblity. This is not an Error, an Issue nor a Lag Source, it is just an Information, which you should pass to me.");
- }
- }
-
- private static final void registerRecipes(OreDictEventContainer aOre) {
- if ((aOre.mEvent.Ore == null) || (aOre.mEvent.Ore.getItem() == null)) {
- return;
- }
- if (aOre.mEvent.Ore.stackSize != 1) {
- aOre.mEvent.Ore.stackSize = 1;
- }
- if (aOre.mPrefix != null) {
- if (!aOre.mPrefix.isIgnored(aOre.mMaterial)) {
- aOre.mPrefix.processOre(aOre.mMaterial == null ? Materials._NULL : aOre.mMaterial, aOre.mEvent.Name, aOre.mModID,
- GT_Utility.copyAmount(1L, new Object[]{aOre.mEvent.Ore}));
- }
- } else {
- // System.out.println("Thingy Name: "+ aOre.mEvent.Name+ " !!!Unknown 'Thingy' detected!!! This Object seems to probably not follow a valid OreDictionary Convention, or I missed a Convention. Please report to GregTech Intergalactical for additional compatiblity. This is not an Error, an Issue nor a Lag Source, it is just an Information, which you should pass to me.");
- }
- }
-
- public static void registerUnificationEntries() {
- GregTech_API.sUnification.mConfig.save();
- GregTech_API.sUnification.mConfig.load();
- GregtechOreDictUnificator.resetUnificationEntries();
- for (GregtechOreDictEventContainer tOre : mEvents) {
- if ((!(tOre.mEvent.Ore.getItem() instanceof MetaGeneratedGregtechItems)) && (tOre.mPrefix != null) && (tOre.mPrefix.mIsUnificatable)
- && (tOre.mMaterial != null)) {
- if (GregtechOreDictUnificator.isBlacklisted(tOre.mEvent.Ore)) {
- GregtechOreDictUnificator.addAssociation(tOre.mPrefix, tOre.mMaterial, tOre.mEvent.Ore, true);
- } else {
- GregtechOreDictUnificator.addAssociation(tOre.mPrefix, tOre.mMaterial, tOre.mEvent.Ore, false);
- GregtechOreDictUnificator.set(tOre.mPrefix, tOre.mMaterial, tOre.mEvent.Ore, (tOre.mModID != null) && (GregTech_API.sUnification.get(ConfigCategories.specialunificationtargets + "." + tOre.mModID, tOre.mEvent.Name, false)), true);
- }
- }
- }
- for (GregtechOreDictEventContainer tOre : mEvents) {
- if (((tOre.mEvent.Ore.getItem() instanceof MetaGeneratedGregtechItems)) && (tOre.mPrefix != null) && (tOre.mPrefix.mIsUnificatable)
- && (tOre.mMaterial != null)) {
- if (GregtechOreDictUnificator.isBlacklisted(tOre.mEvent.Ore)) {
- GregtechOreDictUnificator.addAssociation(tOre.mPrefix, tOre.mMaterial, tOre.mEvent.Ore, true);
- } else {
- GregtechOreDictUnificator.addAssociation(tOre.mPrefix, tOre.mMaterial, tOre.mEvent.Ore, false);
- GregtechOreDictUnificator.set(tOre.mPrefix, tOre.mMaterial, tOre.mEvent.Ore, (tOre.mModID != null) &&
- (GregTech_API.sUnification.get(ConfigCategories.specialunificationtargets + "." + tOre.mModID, tOre.mEvent.Name, false)), true);
- }
- }
- }
- GregTech_API.sUnificationEntriesRegistered = true;
- GregTech_API.sUnification.mConfig.save();
- GT_Recipe.reInit();
- }
-
- public static void activateOreDictHandler() {
- mOreDictActivated = true;
- GregtechOreDictEventContainer tEvent;
- for (Iterator i$ = mEvents.iterator(); i$.hasNext(); registerRecipes(tEvent)) {
- tEvent = (GregtechOreDictEventContainer) i$.next();
- }
- }
-
-
- //Dunno
- public static class GregtechOreDictEventContainer {
- public final OreDictionary.OreRegisterEvent mEvent;
- public final GregtechOrePrefixes mPrefix;
- public final GT_Materials mMaterial;
- public final String mModID;
-
- public GregtechOreDictEventContainer(OreDictionary.OreRegisterEvent aEvent, GregtechOrePrefixes aPrefix, GT_Materials aMaterial, String aModID) {
- this.mEvent = aEvent;
- this.mPrefix = aPrefix;
- this.mMaterial = aMaterial;
- this.mModID = ((aModID == null) || (aModID.equals("UNKNOWN")) ? null : aModID);
- }
- }
-
- public static boolean areWeUsingGregtech5uExperimental(){
- int version = GregTech_API.VERSION;
- if (version == 508){
- return false;
- }
- else if (version == 509){
- return true;
- }
- else {
- return false;
- }
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks.java
deleted file mode 100644
index aa786f44f6..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.objects.GT_CopiedBlockTexture;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.common.blocks.GT_Material_Casings;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.common.blocks.textures.CasingTextureHandler;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.IIcon;
-import net.minecraft.world.IBlockAccess;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-public class GregtechMetaCasingBlocks
-extends GregtechMetaCasingBlocksAbstract {
-
- public final static int GTID = 57;
-
- CasingTextureHandler TextureHandler = new CasingTextureHandler();
-
- public GregtechMetaCasingBlocks() {
- super(GregtechMetaCasingItems.class, "miscutils.blockcasings", GT_Material_Casings.INSTANCE);
- for (byte i = 0; i < 16; i = (byte) (i + 1)) {
- Textures.BlockIcons.CASING_BLOCKS[GTID + i] = new GT_CopiedBlockTexture(this, 6, i);
- }
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Centrifuge Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "Structural Coke Oven Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".2.name", "Heat Resistant Coke Oven Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".3.name", "Heat Proof Coke Oven Casing"); //60
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".4.name", "Material Press Machine Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".5.name", "Electrolyzer Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".6.name", "Wire Factory Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".7.name", "Maceration Stack Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".8.name", "Matter Generation Coil"); //65
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".9.name", "Matter Fabricator Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".10.name", "Iron Plated Bricks");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".11.name", "Unused Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".12.name", "Unused Coil Block");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".13.name", "Unused Coil Block");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".14.name", "Unused Coil Block");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".15.name", "Unused Coil Block");
- GregtechItemList.Casing_Centrifuge1.set(new ItemStack(this, 1, 0));
- GregtechItemList.Casing_CokeOven.set(new ItemStack(this, 1, 1));
- GregtechItemList.Casing_CokeOven_Coil1.set(new ItemStack(this, 1, 2));
- GregtechItemList.Casing_CokeOven_Coil2.set(new ItemStack(this, 1, 3));
- GregtechItemList.Casing_MaterialPress.set(new ItemStack(this, 1, 4));
- GregtechItemList.Casing_Electrolyzer.set(new ItemStack(this, 1, 5));
- GregtechItemList.Casing_WireFactory.set(new ItemStack(this, 1, 6));
- GregtechItemList.Casing_MacerationStack.set(new ItemStack(this, 1, 7));
- GregtechItemList.Casing_MatterGen.set(new ItemStack(this, 1, 8));
- GregtechItemList.Casing_MatterFab.set(new ItemStack(this, 1, 9));
- GregtechItemList.Casing_IronPlatedBricks.set(new ItemStack(this, 1, 10));
- GregtechItemList.Casing_U7.set(new ItemStack(this, 1, 11));
- GregtechItemList.Casing_Coil_U1.set(new ItemStack(this, 1, 12));
- GregtechItemList.Casing_Coil_U2.set(new ItemStack(this, 1, 13));
- GregtechItemList.Casing_Coil_U3.set(new ItemStack(this, 1, 14));
- GregtechItemList.Casing_Coil_U4.set(new ItemStack(this, 1, 15));
- }
-
- @Override
- public IIcon getIcon(int aSide, int aMeta) { //Texture ID's. case 0 == ID[57]
- return TextureHandler.getIcon(aSide, aMeta);
- }
-
-
-
- @Override
- @SideOnly(Side.CLIENT)
- public IIcon getIcon(IBlockAccess aWorld, int xCoord, int yCoord, int zCoord, int aSide) {
- GregtechMetaCasingBlocks i = this;
- return TextureHandler.handleCasingsGT(aWorld, xCoord, yCoord, zCoord, aSide, i);
- }
-
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingBlocksAbstract.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingBlocksAbstract.java
deleted file mode 100644
index 9fb1b832d5..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingBlocksAbstract.java
+++ /dev/null
@@ -1,143 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.common.blocks.GT_Block_Casings_Abstract;
-
-import java.util.List;
-import java.util.Random;
-
-import miscutil.core.creative.AddToCreativeTab;
-import net.minecraft.block.Block;
-import net.minecraft.block.material.Material;
-import net.minecraft.client.renderer.texture.IIconRegister;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EnumCreatureType;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemBlock;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.StatCollector;
-import net.minecraft.world.IBlockAccess;
-import net.minecraft.world.World;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-public abstract class GregtechMetaCasingBlocksAbstract
- extends GT_Block_Casings_Abstract {
- public GregtechMetaCasingBlocksAbstract(Class<? extends ItemBlock> aItemClass, String aName, Material aMaterial) {
- super(aItemClass, aName, aMaterial);
- setStepSound(soundTypeMetal);
- setCreativeTab(AddToCreativeTab.tabMachines);
- GregTech_API.registerMachineBlock(this, -1);
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + "." + 32767 + ".name", "Any Sub Block of this");
- }
-
- @Override
- public String getHarvestTool(int aMeta) {
- return "wrench";
- }
-
- @Override
- public int getHarvestLevel(int aMeta) {
- return 2;
- }
-
- @Override
- public float getBlockHardness(World aWorld, int aX, int aY, int aZ) {
- return Blocks.iron_block.getBlockHardness(aWorld, aX, aY, aZ);
- }
-
- @Override
- public float getExplosionResistance(Entity aTNT) {
- return Blocks.iron_block.getExplosionResistance(aTNT);
- }
-
- @Override
- protected boolean canSilkHarvest() {
- return false;
- }
-
- @Override
- public void onBlockAdded(World aWorld, int aX, int aY, int aZ) {
- if (GregTech_API.isMachineBlock(this, aWorld.getBlockMetadata(aX, aY, aZ))) {
- GregTech_API.causeMachineUpdate(aWorld, aX, aY, aZ);
- }
- }
-
- @Override
- public String getUnlocalizedName() {
- return this.mUnlocalizedName;
- }
-
- @Override
- public String getLocalizedName() {
- return StatCollector.translateToLocal(this.mUnlocalizedName + ".name");
- }
-
- @Override
- public boolean canBeReplacedByLeaves(IBlockAccess aWorld, int aX, int aY, int aZ) {
- return false;
- }
-
- @Override
- public boolean isNormalCube(IBlockAccess aWorld, int aX, int aY, int aZ) {
- return true;
- }
-
- @Override
- public boolean renderAsNormalBlock() {
- return true;
- }
-
- @Override
- public boolean isOpaqueCube() {
- return true;
- }
-
- @Override
- public void breakBlock(World aWorld, int aX, int aY, int aZ, Block aBlock, int aMetaData) {
- if (GregTech_API.isMachineBlock(this, aWorld.getBlockMetadata(aX, aY, aZ))) {
- GregTech_API.causeMachineUpdate(aWorld, aX, aY, aZ);
- }
- }
-
- @Override
- public boolean canCreatureSpawn(EnumCreatureType type, IBlockAccess world, int x, int y, int z) {
- return false;
- }
-
- @Override
- public int damageDropped(int par1) {
- return par1;
- }
-
- @Override
- public int getDamageValue(World par1World, int par2, int par3, int par4) {
- return par1World.getBlockMetadata(par2, par3, par4);
- }
-
- @Override
- public int quantityDropped(Random par1Random) {
- return 1;
- }
-
- @Override
- public Item getItemDropped(int par1, Random par2Random, int par3) {
- return Item.getItemFromBlock(this);
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public void registerBlockIcons(IIconRegister aIconRegister) {
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public void getSubBlocks(Item aItem, CreativeTabs par2CreativeTabs, List aList) {
- for (int i = 0; i < 16; i++) {
- aList.add(new ItemStack(aItem, 1, i));
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingItems.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingItems.java
deleted file mode 100644
index 96ef4e2983..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaCasingItems.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks;
-
-import gregtech.common.blocks.GT_Item_Casings_Abstract;
-import net.minecraft.block.Block;
-
-public class GregtechMetaCasingItems
- extends GT_Item_Casings_Abstract {
- public GregtechMetaCasingItems(Block par1) {
- super(par1);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaItemCasings1.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaItemCasings1.java
deleted file mode 100644
index 17ee8f9853..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaItemCasings1.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks;
-
-import java.util.List;
-
-import net.minecraft.block.Block;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-
-public class GregtechMetaItemCasings1
-extends GregtechMetaItemCasingsAbstract {
- public GregtechMetaItemCasings1(Block par1) {
- super(par1);
- }
-
- @Override
- public void addInformation(ItemStack aStack, EntityPlayer aPlayer, List aList, boolean aF3_H) {
- super.addInformation(aStack, aPlayer, aList, aF3_H);
- switch (getDamage(aStack)) {
- case 0:
- aList.add(this.mCasing_Centrifuge);
- break;
- case 1:
- aList.add(this.mCasing_CokeOven);
- break;
- case 2:
- aList.add(this.mCasing_CokeCoil1);
- break;
- case 3:
- aList.add(this.mCasing_CokeCoil2);
- break;
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaItemCasingsAbstract.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaItemCasingsAbstract.java
deleted file mode 100644
index ad87cd51f7..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/GregtechMetaItemCasingsAbstract.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks;
-
-import gregtech.api.util.GT_LanguageManager;
-
-import java.util.List;
-
-import net.minecraft.block.Block;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemBlock;
-import net.minecraft.item.ItemStack;
-
-public abstract class GregtechMetaItemCasingsAbstract
- extends ItemBlock {
-
- protected final String mCasing_Centrifuge = GT_LanguageManager.addStringLocalization("mu.centrifugecasing", "Warning! Standing in the Centrifuge not recommended");
- protected final String mCasing_CokeOven = GT_LanguageManager.addStringLocalization("mu.cokeoven", "Sturdy and Strong");
- protected final String mCasing_CokeCoil1 = GT_LanguageManager.addStringLocalization("mu.coil01tooltip", "Base Heating Capacity = 1350 Kelvin");
- protected final String mCasing_CokeCoil2 = GT_LanguageManager.addStringLocalization("mu.coil02tooltip", "Base Heating Capacity = 2275 Kelvin");
- protected final String mNoMobsToolTip = GT_LanguageManager.addStringLocalization("gt.nomobspawnsonthisblock", "Mobs cannot Spawn on this Block");
- protected final String mNoTileEntityToolTip = GT_LanguageManager.addStringLocalization("gt.notileentityinthisblock", "This is NOT a TileEntity!");
-
- public GregtechMetaItemCasingsAbstract(Block par1) {
- super(par1);
- setMaxDamage(0);
- setHasSubtypes(true);
- //setCreativeTab(AddToCreativeTab.tabMachines);
- }
-
- @Override
- public int getMetadata(int aMeta) {
- return aMeta;
- }
-
- @Override
- public String getUnlocalizedName(ItemStack aStack) {
- return this.field_150939_a.getUnlocalizedName() + "." + getDamage(aStack);
- }
-
- @Override
- public void addInformation(ItemStack aStack, EntityPlayer aPlayer, List aList, boolean aF3_H) {
- super.addInformation(aStack, aPlayer, aList, aF3_H);
- aList.add(this.mNoMobsToolTip);
- aList.add(this.mNoTileEntityToolTip);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/fluid/GregtechFluidHandler.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/fluid/GregtechFluidHandler.java
deleted file mode 100644
index bd00b3b249..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/fluid/GregtechFluidHandler.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks.fluid;
-
-import gregtech.api.enums.ItemList;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.util.GT_OreDictUnificator;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.common.Meta_GT_Proxy;
-
-public class GregtechFluidHandler {
-
- public static void run(){
- start();
- }
-
- private static void start(){
-
- /* Meta_GT_Proxy.addFluid("lubricant", "Lubricant", Materials.Lubricant, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Lubricant, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("creosote", "Creosote Oil", Materials.Creosote, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Creosote, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("seedoil", "Seed Oil", Materials.SeedOil, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SeedOil, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("fishoil", "Fish Oil", Materials.FishOil, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.FishOil, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("oil", "Oil", Materials.Oil, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oil, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("fuel", "Diesel", Materials.Fuel, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("for.honey", "Honey", Materials.Honey, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Honey, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("biomass", "Biomass", Materials.Biomass, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Biomass, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("bioethanol", "Bio Ethanol", Materials.Ethanol, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Ethanol, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("sulfuricacid", "Sulfuric Acid", Materials.SulfuricAcid, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricAcid, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("milk", "Milk", Materials.Milk, 1, 290, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Milk, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("mcguffium", "Mc Guffium 239", Materials.McGuffium239, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.McGuffium239, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("glue", "Glue", Materials.Glue, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glue, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- */
- Utils.LOG_INFO("Adding Gregtech versions of Gelic Cryotheum and Blazing Pyrotheum.");
-
- Meta_GT_Proxy.addFluid("cryotheum", "Gelid Cryotheum", GT_Materials.Cryotheum, 4, -1200, GT_OreDictUnificator.get(OrePrefixes.cell, GT_Materials.Cryotheum, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- Meta_GT_Proxy.addFluid("pyrotheum", "Blazing Pyrotheum", GT_Materials.Pyrotheum, 4, 4000, GT_OreDictUnificator.get(OrePrefixes.cell, GT_Materials.Pyrotheum, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
-
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/CasingTextureHandler.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/CasingTextureHandler.java
deleted file mode 100644
index 6a8dac8c90..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/CasingTextureHandler.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks.textures;
-
-import gregtech.api.enums.Textures;
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.common.blocks.GregtechMetaCasingBlocks;
-import net.minecraft.util.IIcon;
-import net.minecraft.world.IBlockAccess;
-
-public class CasingTextureHandler {
-
- private static final TexturesGregtech59 gregtech59 = new TexturesGregtech59();
- private static final TexturesGregtech58 gregtech58 = new TexturesGregtech58();
-
- public static IIcon getIcon(int aSide, int aMeta) { //Texture ID's. case 0 == ID[57]
- if ((aMeta >= 0) && (aMeta < 16)) {
- switch (aMeta) {
- //Centrifuge
- case 0:
- return Textures.BlockIcons.MACHINE_CASING_SOLID_STEEL.getIcon();
- //Coke Oven Frame
- case 1:
- return Textures.BlockIcons.MACHINE_CASING_RADIATIONPROOF.getIcon();
- //Coke Oven Casing Tier 1
- case 2:
- return Textures.BlockIcons.MACHINE_CASING_FIREBOX_BRONZE.getIcon();
- //Coke Oven Casing Tier 2
- case 3:
- return Textures.BlockIcons.MACHINE_CASING_FIREBOX_STEEL.getIcon();
- //Material Press Casings
- case 4:
- return Textures.BlockIcons.MACHINE_CASING_STABLE_TITANIUM.getIcon();
- //Electrolyzer Casings
- case 5:
- return Textures.BlockIcons.MACHINE_CASING_FUSION_2.getIcon();
- //Broken Blue Fusion Casings
- case 6:
- return Textures.BlockIcons.MACHINE_CASING_FUSION.getIcon();
- //Maceration Stack Casings
- case 7:
- return Textures.BlockIcons.MACHINE_LuV_BOTTOM.getIcon();
- //Broken Pink Fusion Casings
- case 8:
- return Textures.BlockIcons.MACHINE_CASING_FUSION_2.getIcon();
- //Matter Fabricator Casings
- case 9:
- return Textures.BlockIcons.MACHINE_CASING_DRAGONEGG.getIcon();
- //Iron Blast Fuance Textures
- case 10:
- return Textures.BlockIcons.MACHINE_CASING_SOLID_STEEL.getIcon();
-
- default:
- return Textures.BlockIcons.MACHINE_CASING_RADIOACTIVEHAZARD.getIcon();
-
- }
- }
- return Textures.BlockIcons.MACHINE_CASING_GEARBOX_TUNGSTENSTEEL.getIcon();
- }
-
-
- public static IIcon handleCasingsGT(IBlockAccess aWorld, int xCoord, int yCoord, int zCoord, int aSide, GregtechMetaCasingBlocks thisBlock) {
- if (CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK){
- return gregtech59.handleCasingsGT59(aWorld, xCoord, yCoord, zCoord, aSide, thisBlock);
- }
- return gregtech58.handleCasingsGT58(aWorld, xCoord, yCoord, zCoord, aSide, thisBlock);
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/TexturesGregtech58.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/TexturesGregtech58.java
deleted file mode 100644
index 38a722a823..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/TexturesGregtech58.java
+++ /dev/null
@@ -1,441 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks.textures;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import miscutil.core.xmod.gregtech.common.blocks.GregtechMetaCasingBlocks;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialCentrifuge;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.IIcon;
-import net.minecraft.world.IBlockAccess;
-
-public class TexturesGregtech58 {
-
- private static Textures.BlockIcons.CustomIcon GT8_1_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE1");
- private static Textures.BlockIcons.CustomIcon GT8_1 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE1");
- private static Textures.BlockIcons.CustomIcon GT8_2_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE2");
- private static Textures.BlockIcons.CustomIcon GT8_2 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE2");
- private static Textures.BlockIcons.CustomIcon GT8_3_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE3");
- private static Textures.BlockIcons.CustomIcon GT8_3 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE3");
- private static Textures.BlockIcons.CustomIcon GT8_4_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE4");
- private static Textures.BlockIcons.CustomIcon GT8_4 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE4");
- private static Textures.BlockIcons.CustomIcon GT8_5_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE5");
- private static Textures.BlockIcons.CustomIcon GT8_5 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE5");
- private static Textures.BlockIcons.CustomIcon GT8_6_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE6");
- private static Textures.BlockIcons.CustomIcon GT8_6 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE6");
- private static Textures.BlockIcons.CustomIcon GT8_7_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE7");
- private static Textures.BlockIcons.CustomIcon GT8_7 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE7");
- private static Textures.BlockIcons.CustomIcon GT8_8_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE8");
- private static Textures.BlockIcons.CustomIcon GT8_8 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE8");
- private static Textures.BlockIcons.CustomIcon GT8_9_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE9");
- private static Textures.BlockIcons.CustomIcon GT8_9 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE9");
-
- private static Textures.BlockIcons.CustomIcon frontFace_0 = (GT8_1);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_0 = (GT8_1_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_1 = (GT8_2);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_1 = (GT8_2_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_2 = (GT8_3);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_2 = (GT8_3_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_3 = (GT8_4);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_3 = (GT8_4_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_4 = (GT8_5);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_4 = (GT8_5_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_5 = (GT8_6);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_5 = (GT8_6_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_6 = (GT8_7);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_6 = (GT8_7_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_7 = (GT8_8);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_7 = (GT8_8_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_8 = (GT8_9);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_8 = (GT8_9_Active);
-
- Textures.BlockIcons.CustomIcon[] TURBINE = new Textures.BlockIcons.CustomIcon[]{
- frontFace_0,
- frontFace_1,
- frontFace_2,
- frontFace_3,
- frontFace_4,
- frontFace_5,
- frontFace_6,
- frontFace_7,
- frontFace_8
- };
-
- Textures.BlockIcons.CustomIcon[] TURBINE_ACTIVE = new Textures.BlockIcons.CustomIcon[]{
- frontFaceActive_0,
- frontFaceActive_1,
- frontFaceActive_2,
- frontFaceActive_3,
- frontFaceActive_4,
- frontFaceActive_5,
- frontFaceActive_6,
- frontFaceActive_7,
- frontFaceActive_8
- };
-
-
- public IIcon handleCasingsGT(IBlockAccess aWorld, int xCoord, int yCoord, int zCoord, int aSide, GregtechMetaCasingBlocks thisBlock) {
- return handleCasingsGT58(aWorld, xCoord, yCoord, zCoord, aSide, thisBlock);
- }
-
-
- public IIcon handleCasingsGT58(IBlockAccess aWorld, int xCoord, int yCoord, int zCoord, int aSide, GregtechMetaCasingBlocks thisBlock) {
- int tMeta = aWorld.getBlockMetadata(xCoord, yCoord, zCoord);
- if (((tMeta != 6) && (tMeta != 8) && (tMeta != 0))) {
- return CasingTextureHandler.getIcon(aSide, tMeta);
- }
- int tStartIndex = tMeta == 6 ? 1 : 13;
- if (tMeta == 0) {
- if ((aSide == 2) || (aSide == 3)) {
- TileEntity tTileEntity;
- IMetaTileEntity tMetaTileEntity;
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 3 ? 1 : -1), yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[0].getIcon();
- }
- return TURBINE[0].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 3 ? 1 : -1), yCoord, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[3].getIcon();
- }
- return TURBINE[3].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 3 ? 1 : -1), yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[6].getIcon();
- }
- return TURBINE[6].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[1].getIcon();
- }
- return TURBINE[1].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[7].getIcon();
- }
- return TURBINE[7].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 2 ? 1 : -1), yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[8].getIcon();
- }
- return TURBINE[8].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 2 ? 1 : -1), yCoord, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[5].getIcon();
- }
- return TURBINE[5].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 2 ? 1 : -1), yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[2].getIcon();
- }
- return TURBINE[2].getIcon();
- }
- } else if ((aSide == 4) || (aSide == 5)) {
- TileEntity tTileEntity;
- Object tMetaTileEntity;
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord + (aSide == 4 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[0].getIcon();
- }
- return TURBINE[0].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord, zCoord + (aSide == 4 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[3].getIcon();
- }
- return TURBINE[3].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord + (aSide == 4 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[6].getIcon();
- }
- return TURBINE[6].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[1].getIcon();
- }
- return TURBINE[1].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[7].getIcon();
- }
- return TURBINE[7].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord + (aSide == 5 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[8].getIcon();
- }
- return TURBINE[8].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord, zCoord + (aSide == 5 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[5].getIcon();
- }
- return TURBINE[5].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord + (aSide == 5 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[2].getIcon();
- }
- return TURBINE[2].getIcon();
- }
- }
- return Textures.BlockIcons.MACHINE_CASING_SOLID_STEEL.getIcon();
- }
- boolean[] tConnectedSides = {(aWorld.getBlock(xCoord, yCoord - 1, zCoord) == thisBlock) && (aWorld.getBlockMetadata(xCoord, yCoord - 1, zCoord) == tMeta), (aWorld.getBlock(xCoord, yCoord + 1, zCoord) == thisBlock) && (aWorld.getBlockMetadata(xCoord, yCoord + 1, zCoord) == tMeta), (aWorld.getBlock(xCoord + 1, yCoord, zCoord) == thisBlock) && (aWorld.getBlockMetadata(xCoord + 1, yCoord, zCoord) == tMeta), (aWorld.getBlock(xCoord, yCoord, zCoord + 1) == thisBlock) && (aWorld.getBlockMetadata(xCoord, yCoord, zCoord + 1) == tMeta), (aWorld.getBlock(xCoord - 1, yCoord, zCoord) == thisBlock) && (aWorld.getBlockMetadata(xCoord - 1, yCoord, zCoord) == tMeta), (aWorld.getBlock(xCoord, yCoord, zCoord - 1) == thisBlock) && (aWorld.getBlockMetadata(xCoord, yCoord, zCoord - 1) == tMeta)};
- switch (aSide) {
- case 0:
- if (tConnectedSides[0]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[4]) && (!tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (!tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((tConnectedSides[4]) && (!tConnectedSides[5]) && (!tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (!tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((!tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[5]) && (!tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[2])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- if ((!tConnectedSides[5]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- case 1:
- if (tConnectedSides[1]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[4]) && (!tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (!tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((tConnectedSides[4]) && (!tConnectedSides[5]) && (!tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (!tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((!tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[5]) && (!tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[4])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- if ((!tConnectedSides[3]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- case 2:
- if (tConnectedSides[5]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[2]) && (!tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (!tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((tConnectedSides[2]) && (!tConnectedSides[0]) && (!tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (!tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((!tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[0]) && (!tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[4])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- case 3:
- if (tConnectedSides[3]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[2]) && (!tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (!tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((tConnectedSides[2]) && (!tConnectedSides[0]) && (!tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (!tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((!tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[0]) && (!tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[4])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- case 4:
- if (tConnectedSides[4]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((tConnectedSides[0]) && (!tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (!tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((tConnectedSides[0]) && (!tConnectedSides[3]) && (!tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (!tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((!tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[3]) && (!tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- if ((!tConnectedSides[3]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- case 5:
- if (tConnectedSides[2]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((tConnectedSides[0]) && (!tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (!tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((tConnectedSides[0]) && (!tConnectedSides[3]) && (!tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (!tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((!tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[3]) && (!tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- if ((!tConnectedSides[3]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- break;
- }
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/TexturesGregtech59.java b/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/TexturesGregtech59.java
deleted file mode 100644
index a8b198e6c5..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/blocks/textures/TexturesGregtech59.java
+++ /dev/null
@@ -1,442 +0,0 @@
-package miscutil.core.xmod.gregtech.common.blocks.textures;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import miscutil.core.xmod.gregtech.common.blocks.GregtechMetaCasingBlocks;
-import miscutil.core.xmod.gregtech.common.tileentities.machines.multi.GregtechMetaTileEntityIndustrialCentrifuge;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.util.IIcon;
-import net.minecraft.world.IBlockAccess;
-
-public class TexturesGregtech59 {
-
- private static Textures.BlockIcons.CustomIcon GT8_1_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE1");
- private static Textures.BlockIcons.CustomIcon GT8_1 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST1");
- private static Textures.BlockIcons.CustomIcon GT8_2_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE2");
- private static Textures.BlockIcons.CustomIcon GT8_2 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST2");
- private static Textures.BlockIcons.CustomIcon GT8_3_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE3");
- private static Textures.BlockIcons.CustomIcon GT8_3 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST3");
- private static Textures.BlockIcons.CustomIcon GT8_4_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE4");
- private static Textures.BlockIcons.CustomIcon GT8_4 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST4");
- private static Textures.BlockIcons.CustomIcon GT8_5_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE5");
- private static Textures.BlockIcons.CustomIcon GT8_5 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST5");
- private static Textures.BlockIcons.CustomIcon GT8_6_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE6");
- private static Textures.BlockIcons.CustomIcon GT8_6 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST6");
- private static Textures.BlockIcons.CustomIcon GT8_7_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE7");
- private static Textures.BlockIcons.CustomIcon GT8_7 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST7");
- private static Textures.BlockIcons.CustomIcon GT8_8_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE8");
- private static Textures.BlockIcons.CustomIcon GT8_8 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST8");
- private static Textures.BlockIcons.CustomIcon GT8_9_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE9");
- private static Textures.BlockIcons.CustomIcon GT8_9 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST9");
-
- private static Textures.BlockIcons.CustomIcon frontFace_0 = (GT8_1);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_0 = (GT8_1_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_1 = (GT8_2);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_1 = (GT8_2_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_2 = (GT8_3);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_2 = (GT8_3_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_3 = (GT8_4);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_3 = (GT8_4_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_4 = (GT8_5);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_4 = (GT8_5_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_5 = (GT8_6);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_5 = (GT8_6_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_6 = (GT8_7);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_6 = (GT8_7_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_7 = (GT8_8);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_7 = (GT8_8_Active);
- private static Textures.BlockIcons.CustomIcon frontFace_8 = (GT8_9);
- private static Textures.BlockIcons.CustomIcon frontFaceActive_8 = (GT8_9_Active);
-
- Textures.BlockIcons.CustomIcon[] TURBINE = new Textures.BlockIcons.CustomIcon[]{
- frontFace_0,
- frontFace_1,
- frontFace_2,
- frontFace_3,
- frontFace_4,
- frontFace_5,
- frontFace_6,
- frontFace_7,
- frontFace_8
- };
-
- Textures.BlockIcons.CustomIcon[] TURBINE_ACTIVE = new Textures.BlockIcons.CustomIcon[]{
- frontFaceActive_0,
- frontFaceActive_1,
- frontFaceActive_2,
- frontFaceActive_3,
- frontFaceActive_4,
- frontFaceActive_5,
- frontFaceActive_6,
- frontFaceActive_7,
- frontFaceActive_8
- };
-
-
- public IIcon handleCasingsGT(IBlockAccess aWorld, int xCoord, int yCoord, int zCoord, int aSide, GregtechMetaCasingBlocks thisBlock) {
- return handleCasingsGT59(aWorld, xCoord, yCoord, zCoord, aSide, thisBlock);
- }
-
-
-public IIcon handleCasingsGT59(IBlockAccess aWorld, int xCoord, int yCoord, int zCoord, int aSide, GregtechMetaCasingBlocks thisBlock) {
- int tMeta = aWorld.getBlockMetadata(xCoord, yCoord, zCoord);
- if (((tMeta != 6) && (tMeta != 8) && (tMeta != 0))) {
- return CasingTextureHandler.getIcon(aSide, tMeta);
- }
- int tStartIndex = tMeta == 6 ? 1 : 13;
- if (tMeta == 0) {
- if ((aSide == 2) || (aSide == 3)) {
- TileEntity tTileEntity;
- IMetaTileEntity tMetaTileEntity;
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 3 ? 1 : -1), yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[0].getIcon();
- }
- return TURBINE[0].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 3 ? 1 : -1), yCoord, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[3].getIcon();
- }
- return TURBINE[3].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 3 ? 1 : -1), yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[6].getIcon();
- }
- return TURBINE[6].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[1].getIcon();
- }
- return TURBINE[1].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[7].getIcon();
- }
- return TURBINE[7].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 2 ? 1 : -1), yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[8].getIcon();
- }
- return TURBINE[8].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 2 ? 1 : -1), yCoord, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[5].getIcon();
- }
- return TURBINE[5].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord + (aSide == 2 ? 1 : -1), yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[2].getIcon();
- }
- return TURBINE[2].getIcon();
- }
- } else if ((aSide == 4) || (aSide == 5)) {
- TileEntity tTileEntity;
- Object tMetaTileEntity;
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord + (aSide == 4 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[0].getIcon();
- }
- return TURBINE[0].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord, zCoord + (aSide == 4 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[3].getIcon();
- }
- return TURBINE[3].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord + (aSide == 4 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[6].getIcon();
- }
- return TURBINE[6].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[1].getIcon();
- }
- return TURBINE[1].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[7].getIcon();
- }
- return TURBINE[7].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord + 1, zCoord + (aSide == 5 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[8].getIcon();
- }
- return TURBINE[8].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord, zCoord + (aSide == 5 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[5].getIcon();
- }
- return TURBINE[5].getIcon();
- }
- if ((null != (tTileEntity = aWorld.getTileEntity(xCoord, yCoord - 1, zCoord + (aSide == 5 ? 1 : -1)))) && ((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getFrontFacing() == aSide) && (null != (tMetaTileEntity = ((IGregTechTileEntity) tTileEntity).getMetaTileEntity())) && ((tMetaTileEntity instanceof GregtechMetaTileEntityIndustrialCentrifuge))) {
- if (((IGregTechTileEntity) tTileEntity).isActive()) {
- return TURBINE_ACTIVE[2].getIcon();
- }
- return TURBINE[2].getIcon();
- }
- }
- return Textures.BlockIcons.MACHINE_CASING_SOLID_STEEL.getIcon();
- }
- boolean[] tConnectedSides = {(aWorld.getBlock(xCoord, yCoord - 1, zCoord) == thisBlock) && (aWorld.getBlockMetadata(xCoord, yCoord - 1, zCoord) == tMeta), (aWorld.getBlock(xCoord, yCoord + 1, zCoord) == thisBlock) && (aWorld.getBlockMetadata(xCoord, yCoord + 1, zCoord) == tMeta), (aWorld.getBlock(xCoord + 1, yCoord, zCoord) == thisBlock) && (aWorld.getBlockMetadata(xCoord + 1, yCoord, zCoord) == tMeta), (aWorld.getBlock(xCoord, yCoord, zCoord + 1) == thisBlock) && (aWorld.getBlockMetadata(xCoord, yCoord, zCoord + 1) == tMeta), (aWorld.getBlock(xCoord - 1, yCoord, zCoord) == thisBlock) && (aWorld.getBlockMetadata(xCoord - 1, yCoord, zCoord) == tMeta), (aWorld.getBlock(xCoord, yCoord, zCoord - 1) == thisBlock) && (aWorld.getBlockMetadata(xCoord, yCoord, zCoord - 1) == tMeta)};
- switch (aSide) {
- case 0:
- if (tConnectedSides[0]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[4]) && (!tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (!tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((tConnectedSides[4]) && (!tConnectedSides[5]) && (!tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (!tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((!tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[5]) && (!tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[2])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- if ((!tConnectedSides[5]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- case 1:
- if (tConnectedSides[1]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[4]) && (!tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (!tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[5]) && (tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((tConnectedSides[4]) && (!tConnectedSides[5]) && (!tConnectedSides[2]) && (tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((tConnectedSides[4]) && (tConnectedSides[5]) && (!tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((!tConnectedSides[4]) && (tConnectedSides[5]) && (tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((!tConnectedSides[4]) && (!tConnectedSides[5]) && (!tConnectedSides[2]) && (!tConnectedSides[3])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[4])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- if ((!tConnectedSides[3]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- case 2:
- if (tConnectedSides[5]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[2]) && (!tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (!tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((tConnectedSides[2]) && (!tConnectedSides[0]) && (!tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (!tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((!tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[0]) && (!tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[4])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- case 3:
- if (tConnectedSides[3]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[2]) && (!tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (!tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[0]) && (tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((tConnectedSides[2]) && (!tConnectedSides[0]) && (!tConnectedSides[4]) && (tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((tConnectedSides[2]) && (tConnectedSides[0]) && (!tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((!tConnectedSides[2]) && (tConnectedSides[0]) && (tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[0]) && (!tConnectedSides[4]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[2]) && (!tConnectedSides[4])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- case 4:
- if (tConnectedSides[4]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((tConnectedSides[0]) && (!tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (!tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((tConnectedSides[0]) && (!tConnectedSides[3]) && (!tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (!tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((!tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[3]) && (!tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- if ((!tConnectedSides[3]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- case 5:
- if (tConnectedSides[2]) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 6)].getIcon();
- }
- if ((!tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 5)].getIcon();
- }
- if ((tConnectedSides[0]) && (!tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 2)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (!tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 3)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 4)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[3]) && (tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 11)].getIcon();
- }
- if ((tConnectedSides[0]) && (!tConnectedSides[3]) && (!tConnectedSides[1]) && (tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 8)].getIcon();
- }
- if ((tConnectedSides[0]) && (tConnectedSides[3]) && (!tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 9)].getIcon();
- }
- if ((!tConnectedSides[0]) && (tConnectedSides[3]) && (tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 10)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[3]) && (!tConnectedSides[1]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
- }
- if ((!tConnectedSides[0]) && (!tConnectedSides[1])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 0)].getIcon();
- }
- if ((!tConnectedSides[3]) && (!tConnectedSides[5])) {
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 1)].getIcon();
- }
- break;
- }
- return Textures.BlockIcons.CONNECTED_HULLS[(tStartIndex + 7)].getIcon();
-}
-
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java b/src/Java/miscutil/core/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java
deleted file mode 100644
index aa82c9496d..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java
+++ /dev/null
@@ -1,163 +0,0 @@
-package miscutil.core.xmod.gregtech.common.items;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.enums.TC_Aspects;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.objects.GT_MultiTexture;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_FoodStat;
-import gregtech.common.covers.GT_Cover_Arm;
-import gregtech.common.covers.GT_Cover_Conveyor;
-import gregtech.common.covers.GT_Cover_Pump;
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import miscutil.core.util.UtilsText;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.items.Gregtech_MetaItem_X32;
-import net.minecraft.item.EnumAction;
-
-public class MetaGeneratedGregtechItems extends Gregtech_MetaItem_X32 {
- public MetaGeneratedGregtechItems INSTANCE;
-
- public MetaGeneratedGregtechItems() {
- super("MU-metaitem.01", new OrePrefixes[]{null});
- INSTANCE = this;
- int tLastID = 0;
-
- if (!CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK){
- Utils.LOG_INFO("Gregtech 5.09 not found, using fallback components. (I like how I have to add compat to something I added first and had stolen.)");
- GregtechItemList.Electric_Pump_LuV.set(addItem(tLastID = 0, "Electric Pump (LuV)", "163920 L/sec (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1L)}));
- GregtechItemList.Electric_Pump_ZPM.set(addItem(tLastID = 1, "Electric Pump (ZPM)", "655680 L/sec (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 2L)}));
- GregtechItemList.Electric_Pump_UV.set(addItem(tLastID = 2, "Electric Pump (UV)", "2622720 L/sec (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 4L)}));
- GregtechItemList.Electric_Pump_MAX.set(addItem(tLastID = 3, "Electric Pump (MAX)", "10490880 L/sec (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 8L)}));
- GregTech_API.registerCover(GregtechItemList.Electric_Pump_LuV.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[5][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PUMP)}), new GT_Cover_Pump(8196));
- GregTech_API.registerCover(GregtechItemList.Electric_Pump_ZPM.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[6][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PUMP)}), new GT_Cover_Pump(32768));
- GregTech_API.registerCover(GregtechItemList.Electric_Pump_UV.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[7][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PUMP)}), new GT_Cover_Pump(131072));
- GregTech_API.registerCover(GregtechItemList.Electric_Pump_MAX.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[8][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PUMP)}), new GT_Cover_Pump(524288));
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Pump_LuV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", Character.valueOf('M'), GregtechItemList.Electric_Motor_LuV, Character.valueOf('O'), OrePrefixes.ring.get(Materials.Rubber), Character.valueOf('X'), OrePrefixes.rotor.get(Materials.Tin), Character.valueOf('S'), OrePrefixes.screw.get(Materials.Tin), Character.valueOf('W'), OrePrefixes.cableGt01.get(Materials.Tin), Character.valueOf('P'), OrePrefixes.pipeMedium.get(Materials.Bronze)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Pump_ZPM.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", Character.valueOf('M'), GregtechItemList.Electric_Motor_ZPM, Character.valueOf('O'), OrePrefixes.ring.get(Materials.Rubber), Character.valueOf('X'), OrePrefixes.rotor.get(Materials.Bronze), Character.valueOf('S'), OrePrefixes.screw.get(Materials.Bronze), Character.valueOf('W'), OrePrefixes.cableGt01.get(Materials.AnyCopper), Character.valueOf('P'), OrePrefixes.pipeMedium.get(Materials.Steel)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Pump_UV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", Character.valueOf('M'), GregtechItemList.Electric_Motor_UV, Character.valueOf('O'), OrePrefixes.ring.get(Materials.Rubber), Character.valueOf('X'), OrePrefixes.rotor.get(Materials.Steel), Character.valueOf('S'), OrePrefixes.screw.get(Materials.Steel), Character.valueOf('W'), OrePrefixes.cableGt01.get(Materials.Gold), Character.valueOf('P'), OrePrefixes.pipeMedium.get(Materials.StainlessSteel)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Pump_MAX.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", Character.valueOf('M'), GregtechItemList.Electric_Motor_MAX, Character.valueOf('O'), OrePrefixes.ring.get(Materials.Rubber), Character.valueOf('X'), OrePrefixes.rotor.get(Materials.StainlessSteel), Character.valueOf('S'), OrePrefixes.screw.get(Materials.StainlessSteel), Character.valueOf('W'), OrePrefixes.cableGt01.get(Materials.Aluminium), Character.valueOf('P'), OrePrefixes.pipeMedium.get(Materials.Titanium)});
- tLastID = 4;
- GregtechItemList.Electric_Motor_LuV.set(addItem(tLastID = 4, "Electric Motor (LuV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 1L)}));
- GregtechItemList.Electric_Motor_ZPM.set(addItem(tLastID = 5, "Electric Motor (ZPM)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 2L)}));
- GregtechItemList.Electric_Motor_UV.set(addItem(tLastID = 6, "Electric Motor (UV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 4L)}));
- GregtechItemList.Electric_Motor_MAX.set(addItem(tLastID = 7, "Electric Motor (MAX)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 8L)}));
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Motor_LuV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"CWR", "WIW", "RWC", Character.valueOf('I'), OrePrefixes.stick.get(Materials.IronMagnetic), Character.valueOf('R'), OrePrefixes.stick.get(Materials.AnyIron), Character.valueOf('W'), OrePrefixes.wireGt01.get(Materials.AnyCopper), Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Tin)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Motor_ZPM.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"CWR", "WIW", "RWC", Character.valueOf('I'), OrePrefixes.stick.get(Materials.SteelMagnetic), Character.valueOf('R'), OrePrefixes.stick.get(Materials.Aluminium), Character.valueOf('W'), OrePrefixes.wireGt01.get(Materials.Electrum), Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Silver)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Motor_UV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"CWR", "WIW", "RWC", Character.valueOf('I'), OrePrefixes.stick.get(Materials.SteelMagnetic), Character.valueOf('R'), OrePrefixes.stick.get(Materials.StainlessSteel), Character.valueOf('W'), OrePrefixes.wireGt02.get(Materials.Cupronickel), Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Gold)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Motor_MAX.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"CWR", "WIW", "RWC", Character.valueOf('I'), OrePrefixes.stick.get(Materials.NeodymiumMagnetic), Character.valueOf('R'), OrePrefixes.stick.get(Materials.Titanium), Character.valueOf('W'), OrePrefixes.wireGt02.get(Materials.TungstenSteel), Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Nichrome)});
-
- tLastID = 8;
- GregtechItemList.Conveyor_Module_LuV.set(addItem(tLastID = 8, "Conveyor Module (LuV)", "1 Stack every 20 secs (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 1L)}));
- GregtechItemList.Conveyor_Module_ZPM.set(addItem(tLastID = 9, "Conveyor Module (ZPM)", "1 Stack every 5 secs (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 2L)}));
- GregtechItemList.Conveyor_Module_UV.set(addItem(tLastID = 10, "Conveyor Module (UV)", "1 Stack every 1 sec (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 4L)}));
- GregtechItemList.Conveyor_Module_MAX.set(addItem(tLastID = 11, "Conveyor Module (MAX)", "1 Stack every 1/5 sec (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 8L)}));
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Conveyor_Module_LuV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", Character.valueOf('M'), GregtechItemList.Electric_Motor_LuV, Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Tin), Character.valueOf('R'), OrePrefixes.plate.get(Materials.Rubber)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Conveyor_Module_ZPM.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", Character.valueOf('M'), GregtechItemList.Electric_Motor_ZPM, Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.AnyCopper), Character.valueOf('R'), OrePrefixes.plate.get(Materials.Rubber)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Conveyor_Module_UV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", Character.valueOf('M'), GregtechItemList.Electric_Motor_UV, Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Gold), Character.valueOf('R'), OrePrefixes.plate.get(Materials.Rubber)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Conveyor_Module_MAX.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", Character.valueOf('M'), GregtechItemList.Electric_Motor_MAX, Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Aluminium), Character.valueOf('R'), OrePrefixes.plate.get(Materials.Rubber)});
- GregTech_API.registerCover(GregtechItemList.Conveyor_Module_LuV.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_CONVEYOR)}), new GT_Cover_Conveyor(400));
- GregTech_API.registerCover(GregtechItemList.Conveyor_Module_ZPM.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_CONVEYOR)}), new GT_Cover_Conveyor(100));
- GregTech_API.registerCover(GregtechItemList.Conveyor_Module_UV.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[3][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_CONVEYOR)}), new GT_Cover_Conveyor(20));
- GregTech_API.registerCover(GregtechItemList.Conveyor_Module_MAX.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[4][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_CONVEYOR)}), new GT_Cover_Conveyor(4));
- tLastID = 12;
- GregtechItemList.Electric_Piston_LuV.set(addItem(tLastID = 12, "Electric Piston (LuV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 1L)}));
- GregtechItemList.Electric_Piston_ZPM.set(addItem(tLastID = 13, "Electric Piston (ZPM)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 2L)}));
- GregtechItemList.Electric_Piston_UV.set(addItem(tLastID = 14, "Electric Piston (UV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 4L)}));
- GregtechItemList.Electric_Piston_MAX.set(addItem(tLastID = 15, "Electric Piston (MAX)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 8L)}));
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Piston_LuV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"PPP", "CSS", "CMG", Character.valueOf('P'), OrePrefixes.plate.get(Materials.Steel), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Steel), Character.valueOf('G'), OrePrefixes.gearGtSmall.get(Materials.Steel), Character.valueOf('M'), GregtechItemList.Electric_Motor_LuV, Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Tin)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Piston_ZPM.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"PPP", "CSS", "CMG", Character.valueOf('P'), OrePrefixes.plate.get(Materials.Aluminium), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Aluminium), Character.valueOf('G'), OrePrefixes.gearGtSmall.get(Materials.Aluminium), Character.valueOf('M'), GregtechItemList.Electric_Motor_ZPM, Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.AnyCopper)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Piston_UV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"PPP", "CSS", "CMG", Character.valueOf('P'), OrePrefixes.plate.get(Materials.StainlessSteel), Character.valueOf('S'), OrePrefixes.stick.get(Materials.StainlessSteel), Character.valueOf('G'), OrePrefixes.gearGtSmall.get(Materials.StainlessSteel), Character.valueOf('M'), GregtechItemList.Electric_Motor_UV, Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Gold)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Electric_Piston_MAX.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"PPP", "CSS", "CMG", Character.valueOf('P'), OrePrefixes.plate.get(Materials.Titanium), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Titanium), Character.valueOf('G'), OrePrefixes.gearGtSmall.get(Materials.Titanium), Character.valueOf('M'), GregtechItemList.Electric_Motor_MAX, Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Aluminium)});
- tLastID = 16;
- GregtechItemList.Robot_Arm_LuV.set(addItem(tLastID = 16, "Robot Arm (LuV)", "Inserts into specific Slots (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 1L)}));
- GregtechItemList.Robot_Arm_ZPM.set(addItem(tLastID = 17, "Robot Arm (ZPM)", "Inserts into specific Slots (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 2L)}));
- GregtechItemList.Robot_Arm_UV.set(addItem(tLastID = 18, "Robot Arm (UV)", "Inserts into specific Slots (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 4L)}));
- GregtechItemList.Robot_Arm_MAX.set(addItem(tLastID = 19, "Robot Arm (MAX)", "Inserts into specific Slots (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 8L)}));
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Robot_Arm_LuV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"CCC", "MSM", "PES", Character.valueOf('S'), OrePrefixes.stick.get(Materials.Steel), Character.valueOf('M'), GregtechItemList.Electric_Motor_LuV, Character.valueOf('P'), GregtechItemList.Electric_Piston_LuV, Character.valueOf('E'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Tin)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Robot_Arm_ZPM.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"CCC", "MSM", "PES", Character.valueOf('S'), OrePrefixes.stick.get(Materials.Aluminium), Character.valueOf('M'), GregtechItemList.Electric_Motor_ZPM, Character.valueOf('P'), GregtechItemList.Electric_Piston_ZPM, Character.valueOf('E'), OrePrefixes.circuit.get(Materials.Good), Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.AnyCopper)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Robot_Arm_UV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"CCC", "MSM", "PES", Character.valueOf('S'), OrePrefixes.stick.get(Materials.StainlessSteel), Character.valueOf('M'), GregtechItemList.Electric_Motor_UV, Character.valueOf('P'), GregtechItemList.Electric_Piston_UV, Character.valueOf('E'), OrePrefixes.circuit.get(Materials.Advanced), Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Gold)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Robot_Arm_MAX.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"CCC", "MSM", "PES", Character.valueOf('S'), OrePrefixes.stick.get(Materials.Titanium), Character.valueOf('M'), GregtechItemList.Electric_Motor_MAX, Character.valueOf('P'), GregtechItemList.Electric_Piston_MAX, Character.valueOf('E'), OrePrefixes.circuit.get(Materials.Elite), Character.valueOf('C'), OrePrefixes.cableGt01.get(Materials.Aluminium)});
- GregTech_API.registerCover(GregtechItemList.Robot_Arm_LuV.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ARM)}), new GT_Cover_Arm(400));
- GregTech_API.registerCover(GregtechItemList.Robot_Arm_ZPM.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ARM)}), new GT_Cover_Arm(100));
- GregTech_API.registerCover(GregtechItemList.Robot_Arm_UV.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[3][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ARM)}), new GT_Cover_Arm(20));
- GregTech_API.registerCover(GregtechItemList.Robot_Arm_MAX.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[4][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ARM)}), new GT_Cover_Arm(4));
- tLastID = 20;
- GregtechItemList.Field_Generator_LuV.set(addItem(tLastID = 20, "Field Generator (LuV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 1L)}));
- GregtechItemList.Field_Generator_ZPM.set(addItem(tLastID = 21, "Field Generator (ZPM)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 2L)}));
- GregtechItemList.Field_Generator_UV.set(addItem(tLastID = 22, "Field Generator (UV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 4L)}));
- GregtechItemList.Field_Generator_MAX.set(addItem(tLastID = 23, "Field Generator (MAX)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 8L)}));
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Field_Generator_LuV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"WCW", "CGC", "WCW", Character.valueOf('G'), OrePrefixes.gem.get(Materials.EnderPearl), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('W'), OrePrefixes.wireGt01.get(Materials.Osmium)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Field_Generator_ZPM.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"WCW", "CGC", "WCW", Character.valueOf('G'), OrePrefixes.gem.get(Materials.EnderEye), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Good), Character.valueOf('W'), OrePrefixes.wireGt02.get(Materials.Osmium)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Field_Generator_UV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"WCW", "CGC", "WCW", Character.valueOf('G'), OrePrefixes.gem.get(Materials.NetherStar), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Advanced), Character.valueOf('W'), OrePrefixes.wireGt04.get(Materials.Osmium)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Field_Generator_MAX.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"WCW", "CGC", "WCW", Character.valueOf('G'), OrePrefixes.gem.get(Materials.NetherStar), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Elite), Character.valueOf('W'), OrePrefixes.wireGt08.get(Materials.Osmium)});
- tLastID = 24;
- GregtechItemList.Emitter_LuV.set(addItem(tLastID = 24, "Emitter (LuV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.LUX, 1L)}));
- GregtechItemList.Emitter_ZPM.set(addItem(tLastID = 25, "Emitter (ZPM)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.LUX, 2L)}));
- GregtechItemList.Emitter_UV.set(addItem(tLastID = 26, "Emitter (UV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.LUX, 4L)}));
- GregtechItemList.Emitter_MAX.set(addItem(tLastID = 27, "Emitter (MAX)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.LUX, 8L)}));
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Emitter_LuV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SSC", "WQS", "CWS", Character.valueOf('Q'), OrePrefixes.gem.get(Materials.Quartzite), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Brass), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('W'), OrePrefixes.cableGt01.get(Materials.Tin)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Emitter_ZPM.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SSC", "WQS", "CWS", Character.valueOf('Q'), OrePrefixes.gem.get(Materials.NetherQuartz), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Electrum), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Good), Character.valueOf('W'), OrePrefixes.cableGt01.get(Materials.AnyCopper)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Emitter_UV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SSC", "WQS", "CWS", Character.valueOf('Q'), OrePrefixes.gem.get(Materials.Emerald), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Chrome), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Advanced), Character.valueOf('W'), OrePrefixes.cableGt01.get(Materials.Gold)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Emitter_MAX.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SSC", "WQS", "CWS", Character.valueOf('Q'), OrePrefixes.gem.get(Materials.EnderPearl), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Platinum), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Elite), Character.valueOf('W'), OrePrefixes.cableGt01.get(Materials.Aluminium)});
- tLastID = 28;
- GregtechItemList.Sensor_LuV.set(addItem(tLastID = 28, "Sensor (LuV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 1L)}));
- GregtechItemList.Sensor_ZPM.set(addItem(tLastID = 29, "Sensor (ZPM)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 2L)}));
- GregtechItemList.Sensor_UV.set(addItem(tLastID = 30, "Sensor (UV)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 4L)}));
- GregtechItemList.Sensor_MAX.set(addItem(tLastID = 31, "Sensor (MAX)", "", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 8L), new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 8L)}));
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Sensor_LuV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"P Q", "PS ", "CPP", Character.valueOf('Q'), OrePrefixes.gem.get(Materials.Quartzite), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Brass), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Steel), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Sensor_ZPM.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"P Q", "PS ", "CPP", Character.valueOf('Q'), OrePrefixes.gem.get(Materials.NetherQuartz), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Electrum), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Aluminium), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Good)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Sensor_UV.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"P Q", "PS ", "CPP", Character.valueOf('Q'), OrePrefixes.gem.get(Materials.Emerald), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Chrome), Character.valueOf('P'), OrePrefixes.plate.get(Materials.StainlessSteel), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Advanced)});
- //GT_ModHandler.addCraftingRecipe(GregtechItemList.Sensor_MAX.get(1L, new Object[0]), //GT_ModHandler.RecipeBits.DISMANTLEABLE | //GT_ModHandler.RecipeBits.NOT_REMOVABLE | //GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"P Q", "PS ", "CPP", Character.valueOf('Q'), OrePrefixes.gem.get(Materials.EnderPearl), Character.valueOf('S'), OrePrefixes.stick.get(Materials.Platinum), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Titanium), Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Elite)});
-
- }
-
- GregtechItemList.Circuit_IV.set(addItem(tLastID = 704, "Symbiotic Circuit (IV)", "A Symbiotic Data Processor", new Object[]{GregtechOrePrefixes.circuit.get(GT_Materials.Symbiotic)}));
- GregtechItemList.Circuit_LuV.set(addItem(tLastID = 705, "Neutronic Circuit (LuV)", "A Neutron Particle Processor", new Object[]{GregtechOrePrefixes.circuit.get(GT_Materials.Neutronic)}));
- GregtechItemList.Circuit_ZPM.set(addItem(tLastID = 706, "Quantum Circuit (ZPM)", "A Singlularity Processor", new Object[]{GregtechOrePrefixes.circuit.get(GT_Materials.Quantum)}));
- GregtechItemList.Circuit_Board_IV.set(addItem(tLastID = 710, "IV Circuit Board", "An IV Voltage Rated Circuit Board", new Object[0]));
- GregtechItemList.Circuit_Board_LuV.set(addItem(tLastID = 711, "LuV Circuit Board", "An LuV Voltage Rated Circuit Board", new Object[0]));
- GregtechItemList.Circuit_Board_ZPM.set(addItem(tLastID = 712, "ZPM Processor Board", "A ZPM Voltage Rated Processor Board", new Object[0]));
- GregtechItemList.Circuit_Parts_Crystal_Chip_IV.set(addItem(tLastID = 713, "(IV) Energized Crystal Chip", "Needed for Circuits", new Object[0]));
- GregtechItemList.Circuit_Parts_Crystal_Chip_LuV.set(addItem(tLastID = 714, "(LuV) Neutron based Microchip", "Needed for Circuits", new Object[0]));
- GregtechItemList.Circuit_Parts_Crystal_Chip_ZPM.set(addItem(tLastID = 715, "(ZPM) Quantum Chip", "Needed for Circuits", new Object[0]));
- GregtechItemList.Circuit_Parts_IV.set(addItem(tLastID = 716, "(IV) Energized Circuit Parts", "Circuit Parts", new Object[0]));
- GregtechItemList.Circuit_Parts_LuV.set(addItem(tLastID = 717, "(LuV) Neutron-based Circuit Parts", "Circuit Parts", new Object[0]));
- GregtechItemList.Circuit_Parts_ZPM.set(addItem(tLastID = 718, "(ZPM) Quantum Circuit Parts", "Circuit Parts", new Object[0]));
- GregtechItemList.Circuit_Parts_Wiring_IV.set(addItem(tLastID = 719, "Etched IV Voltage Wiring", "Part of Circuit Boards", new Object[0]));
- GregtechItemList.Circuit_Parts_Wiring_LuV.set(addItem(tLastID = 720, "Etched LuV Voltage Wiring", "Part of Circuit Boards", new Object[0]));
- GregtechItemList.Circuit_Parts_Wiring_ZPM.set(addItem(tLastID = 721, "Etched ZPM Voltage Wiring", "Part of Circuit Boards", new Object[0]));
-
-
- //FOOOOOOOOOOOOOOD
- GregtechItemList.Food_Baked_Raisin_Bread.set(addItem(tLastID = 60, "Raisin Bread", "Extra Raisins, Just for "+UtilsText.purple.colour()+"ImQ009", new Object[]{new GT_FoodStat(5, 0.5F, EnumAction.eat, null, false, true, false, new int[0]), new TC_Aspects.TC_AspectStack(TC_Aspects.CORPUS, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.FAMES, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1L)}));
-
-
- //Extruder Shape
- GregtechItemList.Shape_Extruder_WindmillShaft.set(addItem(tLastID = 40, "Extruder Shape (Shaft)", "Extruder Shape for making Windmill Shafts", new Object[0]));
-
-
- //Batteries
- GregtechItemList.Battery_RE_EV_Sodium.set(addItem(tLastID = 50, "Quad Cell Sodium Battery", "Reusable", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)}));
- setElectricStats(32000 + tLastID, 3200000L, GT_Values.V[4], 4L, -3L, true);
-
- GregtechItemList.Battery_RE_EV_Cadmium.set(addItem(tLastID = 52, "Quad Cell Cadmium Battery", "Reusable", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L)}));
- setElectricStats(32000 + tLastID, 4800000L, GT_Values.V[4], 4L, -3L, true);
-
- GregtechItemList.Battery_RE_EV_Lithium.set(addItem(tLastID = 54, "Quad Cell Lithium Battery", "Reusable", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 3L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 3L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 3L)}));
- setElectricStats(32000 + tLastID, 6400000L, GT_Values.V[4], 4L, -3L, true);
-
- /*GregtechItemList.Battery_RE_EV_Sodium.set(addItem(tLastID = 50, "Quad Cell Acid Battery", "Reusable", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L)}));
- setElectricStats(32000 + tLastID, 5000000L, GT_Values.V[2], 4L, -3L, true);
-
- GregtechItemList.Battery_RE_EV_Sodium.set(addItem(tLastID = 50, "Quad Cell Mercury Battery", "Reusable", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L)}));
- setElectricStats(32000 + tLastID, 5000000L, GT_Values.V[2], 4L, -3L, true);*/
-
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java b/src/Java/miscutil/core/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java
deleted file mode 100644
index 9a4c40f809..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/items/MetaGeneratedGregtechTools.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package miscutil.core.xmod.gregtech.common.items;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.TC_Aspects;
-import gregtech.api.enums.ToolDictNames;
-import miscutil.core.xmod.gregtech.api.enums.GregtechToolDictNames;
-import miscutil.core.xmod.gregtech.api.items.Gregtech_MetaTool;
-import miscutil.core.xmod.gregtech.common.tools.TOOL_Gregtech_Choocher;
-
-public class MetaGeneratedGregtechTools extends Gregtech_MetaTool {
-
- public static final short TURBINE_SMALL = 10;
- public static final short TURBINE = 12;
- public static final short TURBINE_LARGE = 14;
- public static final short HUGE_ITEM = 16;
- public static final short TURBINE_BLADE = 18;
-
- public static final short HARDHAMMER = 20;
- public static final short SOFTHAMMER = 22;
- public static final short WRENCH = 24;
-
- public static MetaGeneratedGregtechTools INSTANCE;
-
- public MetaGeneratedGregtechTools() {
- super("MU-metaitem.02");
- INSTANCE = this;
-
- GregTech_API.registerTool(addTool(7734, "Skookum Choocher", "Can Really Chooch. Does a Skookum job at Hammering and Wrenching stuff.", new TOOL_Gregtech_Choocher(), new Object[]{GregtechToolDictNames.craftingToolSkookumChoocher, ToolDictNames.craftingToolHardHammer, ToolDictNames.craftingToolWrench, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L)}), GregTech_API.sWrenchList);
-
-
- //GregTech_API.registerTool(addTool(WRENCH, "Wrench", "Hold Leftclick to dismantle Machines", (Interface_ToolStats) new GT_Tool_Wrench(), new Object[]{ToolDictNames.craftingToolWrench, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L)}), GregTech_API.sWrenchList);
-
- //addTool(TURBINE_SMALL, "Small Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Small(), new Object[]{});
- //addTool(TURBINE, "Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Normal(), new Object[]{});
- //addTool(TURBINE_LARGE, "Large Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Large(), new Object[]{});
- //addTool(HUGE_ITEM, "Huge Item", "Item 4 for your power station", new TOOL_Gregtech_MaxEfficiencyMultiBlockItem(), new Object[]{});
-
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GT_MetaTileEntity_Boiler_Solar.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GT_MetaTileEntity_Boiler_Solar.java
deleted file mode 100644
index 4af96ec97e..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GT_MetaTileEntity_Boiler_Solar.java
+++ /dev/null
@@ -1,144 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.generators;
-
-import gregtech.api.enums.Dyes;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.common.gui.GT_Container_Boiler;
-import gregtech.common.gui.GT_GUIContainer_Boiler;
-import gregtech.common.tileentities.boilers.GT_MetaTileEntity_Boiler;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.fluids.IFluidHandler;
-
-public class GT_MetaTileEntity_Boiler_Solar
- extends GT_MetaTileEntity_Boiler {
- public GT_MetaTileEntity_Boiler_Solar(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, "Steam Power by the Sun", new ITexture[0]);
- }
-
- public GT_MetaTileEntity_Boiler_Solar(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, aDescription, aTextures);
- }
-
- public ITexture[][][] getTextureSet(ITexture[] aTextures) {
- ITexture[][][] rTextures = new ITexture[4][17][];
- for (byte i = -1; i < 16; i = (byte) (i + 1)) {
- ITexture[] tmp0 = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_BOTTOM, Dyes.getModulation(i, Dyes._NULL.mRGBa))};
- rTextures[0][(i + 1)] = tmp0;
- ITexture[] tmp1 = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_TOP, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.BOILER_SOLAR)};
- rTextures[1][(i + 1)] = tmp1;
- ITexture[] tmp2 = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa))};
- rTextures[2][(i + 1)] = tmp2;
- ITexture[] tmp3 = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBRICKS_SIDE, Dyes.getModulation(i, Dyes._NULL.mRGBa)), new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE)};
- rTextures[3][(i + 1)] = tmp3;
- }
- return rTextures;
- }
-
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- return mTextures[aSide >= 2 ? ((byte) (aSide != aFacing ? 2 : 3)) : aSide][aColorIndex + 1];
- }
-
- public int maxProgresstime() {
- return 500;
- }
-
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_Container_Boiler(aPlayerInventory, aBaseMetaTileEntity, 16000);
- }
-
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_GUIContainer_Boiler(aPlayerInventory, aBaseMetaTileEntity, "SolarBoiler.png", 16000);
- }
-
- public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GT_MetaTileEntity_Boiler_Solar(this.mName, this.mTier, this.mDescription, this.mTextures);
- }
-
- private int mRunTime = 0;
-
- @Override
- public void saveNBTData(NBTTagCompound aNBT) {
- super.saveNBTData(aNBT);
- aNBT.setInteger("mRunTime", this.mRunTime);
- }
-
- @Override
- public void loadNBTData(NBTTagCompound aNBT) {
- super.loadNBTData(aNBT);
- this.mRunTime = aNBT.getInteger("mRunTime");
- }
-
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L)) {
- if (this.mTemperature <= 20) {
- this.mTemperature = 20;
- this.mLossTimer = 0;
- }
- if (++this.mLossTimer > 45) {
- this.mTemperature -= 1;
- this.mLossTimer = 0;
- }
- if (this.mSteam != null) {
- byte i = aBaseMetaTileEntity.getFrontFacing();
- IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i);
- if (tTileEntity != null) {
- FluidStack tDrained = aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false);
- if (tDrained != null) {
- int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false);
- if (tFilledAmount > 0) {
- tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain(ForgeDirection.getOrientation(i), tFilledAmount, true), true);
- }
- }
- }
- }
- if (aTick % 25L == 0L) {
- if (this.mTemperature > 100) {
- if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0)) {
- this.mHadNoWater = true;
- } else {
- if (this.mHadNoWater) {
- aBaseMetaTileEntity.doExplosion(2048L);
- return;
- }
- this.mFluid.amount -= 1;
- mRunTime += 1;
- int tOutput = 150;
- if(mRunTime > 10000){
- tOutput = Math.max(50, 150 - ((mRunTime-10000)/100));
- }
- if (this.mSteam == null) {
- this.mSteam = GT_ModHandler.getSteam(tOutput);
- } else if (GT_ModHandler.isSteam(this.mSteam)) {
- this.mSteam.amount += tOutput;
- } else {
- this.mSteam = GT_ModHandler.getSteam(tOutput);
- }
- }
- } else {
- this.mHadNoWater = false;
- }
- }
- if ((this.mSteam != null) &&
- (this.mSteam.amount > 16000)) {
- sendSound((byte) 1);
- this.mSteam.amount = 12000;
- }
- if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && (aTick % 256L == 0L) && (!aBaseMetaTileEntity.getWorld().isThundering())) {
- boolean bRain = aBaseMetaTileEntity.getWorld().isRaining() && aBaseMetaTileEntity.getBiome().rainfall > 0.0F;
- mProcessingEnergy += bRain && aBaseMetaTileEntity.getWorld().skylightSubtracted >= 4 || !aBaseMetaTileEntity.getSkyAtSide((byte) 1) ? 0 : !bRain && aBaseMetaTileEntity.getWorld().isDaytime() ? 8 : 1;
- }
- if ((this.mTemperature < 500) && (this.mProcessingEnergy > 0) && (aTick % 12L == 0L)) {
- this.mProcessingEnergy -= 1;
- this.mTemperature += 1;
- }
- aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0);
- }
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityRocketFuelGenerator.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityRocketFuelGenerator.java
deleted file mode 100644
index 554c59c268..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntityRocketFuelGenerator.java
+++ /dev/null
@@ -1,119 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.generators;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.ConfigCategories;
-import gregtech.api.enums.ItemList;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Recipe;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.generators.GregtechRocketFuelGeneratorBase;
-import net.minecraft.item.ItemStack;
-import cpw.mods.fml.common.registry.GameRegistry;
-
-public class GregtechMetaTileEntityRocketFuelGenerator
- extends GregtechRocketFuelGeneratorBase {
-
- public int mEfficiency;
-
- public GregtechMetaTileEntityRocketFuelGenerator(int aID, String aName, String aNameRegional, int aTier) {
- super(aID, aName, aNameRegional, aTier, "Requires liquid Fuel", new ITexture[0]);
- onConfigLoad();
- }
-
- public GregtechMetaTileEntityRocketFuelGenerator(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, aDescription, aTextures);
- onConfigLoad();
- }
-
- @Override
- public boolean isOutputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
- }
-
- @Override
- public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityRocketFuelGenerator(this.mName, this.mTier, this.mDescription, this.mTextures);
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
- return GT_Recipe.GT_Recipe_Map.sDieselFuels;
- }
-
- @Override
- public int getCapacity() {
- return 32000;
- }
-
- public void onConfigLoad() {
- this.mEfficiency = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "RocketEngine.efficiency.tier." + this.mTier, (100 - this.mTier * 8));
- }
-
- @Override
- public int getEfficiency() {
- return this.mEfficiency;
- }
-
- @Override
- public int getFuelValue(ItemStack aStack) {
- int rValue = Math.max(GT_ModHandler.getFuelCanValue(aStack) * 6 / 5, super.getFuelValue(aStack));
- if (ItemList.Fuel_Can_Plastic_Filled.isStackEqual(aStack, false, true)) {
- rValue = Math.max(rValue, GameRegistry.getFuelValue(aStack) * 3);
- }
- return rValue;
- }
-
- @Override
- public ITexture[] getFront(byte aColor) {
- return new ITexture[]{super.getFront(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_FRONT), Textures.BlockIcons.OVERLAYS_ENERGY_OUT[this.mTier]};
- }
-
- @Override
- public ITexture[] getBack(byte aColor) {
- return new ITexture[]{super.getBack(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_BACK)};
- }
-
- @Override
- public ITexture[] getBottom(byte aColor) {
- return new ITexture[]{super.getBottom(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_BOTTOM)};
- }
-
- @Override
- public ITexture[] getTop(byte aColor) {
- return new ITexture[]{super.getTop(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_TOP)};
- }
-
- @Override
- public ITexture[] getSides(byte aColor) {
- return new ITexture[]{super.getSides(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_SIDE)};
- }
-
- @Override
- public ITexture[] getFrontActive(byte aColor) {
- return new ITexture[]{super.getFrontActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_FRONT_ACTIVE), Textures.BlockIcons.OVERLAYS_ENERGY_OUT[this.mTier]};
- }
-
- @Override
- public ITexture[] getBackActive(byte aColor) {
- return new ITexture[]{super.getBackActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_BACK_ACTIVE)};
- }
-
- @Override
- public ITexture[] getBottomActive(byte aColor) {
- return new ITexture[]{super.getBottomActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_BOTTOM_ACTIVE)};
- }
-
- @Override
- public ITexture[] getTopActive(byte aColor) {
- return new ITexture[]{super.getTopActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_TOP_ACTIVE)};
- }
-
- @Override
- public ITexture[] getSidesActive(byte aColor) {
- return new ITexture[]{super.getSidesActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_SIDE_ACTIVE)};
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntitySolarGenerator.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntitySolarGenerator.java
deleted file mode 100644
index 0afb37e507..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntitySolarGenerator.java
+++ /dev/null
@@ -1,174 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.generators;
-
-import static gregtech.api.enums.GT_Values.V;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.ConfigCategories;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.gui.CONTAINER_SolarGenerator;
-import miscutil.core.xmod.gregtech.api.gui.GUI_SolarGenerator;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.generators.GregtechMetaSolarGenerator;
-import net.minecraft.entity.player.InventoryPlayer;
-
-public class GregtechMetaTileEntitySolarGenerator extends GregtechMetaSolarGenerator {
-
- public GregtechMetaTileEntitySolarGenerator(int aID, String aName, String aNameRegional, int aTier) {
- super(aID, aName, aNameRegional, aTier, "Feasts on the power of the Sun!", new ITexture[0]);
- onConfigLoad();
- }
-
- public GregtechMetaTileEntitySolarGenerator(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, aDescription, aTextures);
- onConfigLoad();
- }
-
- @Override
- public boolean isOutputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
- }
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new CONTAINER_SolarGenerator(aPlayerInventory, aBaseMetaTileEntity, 16000);
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_SolarGenerator(aPlayerInventory, aBaseMetaTileEntity, "SolarBoiler.png", 16000);
- }
-
- @Override
- public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntitySolarGenerator(this.mName, this.mTier, this.mDescription, this.mTextures);
- }
-
- public void onConfigLoad() {
- this.mEfficiency = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "SunAbsorber.efficiency.tier." + this.mTier, 100 - this.mTier * 10);
-
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- if (aBaseMetaTileEntity.isServerSide() && aBaseMetaTileEntity.isAllowedToWork()
- && aBaseMetaTileEntity.getUniversalEnergyStored() < maxEUOutput() + aBaseMetaTileEntity.getEUCapacity()) {
-
- if (this.mSolarCharge <= 20) {
- //Utils.LOG_WARNING("1.");
- this.mSolarCharge = 20;
- this.mLossTimer = 0;
- }
- if (++this.mLossTimer > 45) {
- //Utils.LOG_WARNING("2.");
- this.mSolarCharge -= 1;
- this.mLossTimer = 0;
- }
-
- if (aTick % 10L == 0L) {
-
- Utils.LOG_WARNING("getUniversalEnergyStored: "+aBaseMetaTileEntity.getUniversalEnergyStored() + " maxEUOutput * 20 + getMinimumStoredEU: " + (maxEUOutput() * 20 + getMinimumStoredEU()));
-
- if ((this.mSolarCharge > 100) && (aBaseMetaTileEntity.isAllowedToWork()) &&
- (!aBaseMetaTileEntity.getWorld().isThundering()) &&
- aBaseMetaTileEntity.getUniversalEnergyStored() < (maxEUStore() - getMinimumStoredEU())) {
- getBaseMetaTileEntity().increaseStoredEnergyUnits(sEnergyPerTick * getEfficiency(), true);
- }
- }
-
- if ((this.mSolarCharge < 500) && (this.mProcessingEnergy != 0) && (aTick % 32L == 0L)) {
- Utils.LOG_WARNING("Adding Solar Charge. Currently "+mSolarCharge);
- this.mProcessingEnergy -= 1;
- this.mSolarCharge += 1;
- }
-
- if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && (aTick % 64L == 0L) && (!aBaseMetaTileEntity.getWorld().isThundering())) {
- Utils.LOG_WARNING("Adding Processing Energy. Currently "+mProcessingEnergy);
- boolean bRain = aBaseMetaTileEntity.getWorld().isRaining() && aBaseMetaTileEntity.getBiome().rainfall > 0.0F;
- mProcessingEnergy += bRain && aBaseMetaTileEntity.getWorld().skylightSubtracted >= 4 || !aBaseMetaTileEntity.getSkyAtSide((byte) 1) ? 0 : !bRain && aBaseMetaTileEntity.getWorld().isDaytime() ? 8 : 1;
- }
-
- if (aBaseMetaTileEntity.isServerSide()){
- //Utils.LOG_WARNING("6.");
- aBaseMetaTileEntity.setActive(aBaseMetaTileEntity.isAllowedToWork() && aBaseMetaTileEntity.getUniversalEnergyStored() >= maxEUOutput() + getMinimumStoredEU());
- }
- }
- }
-
- @Override
- public void inValidate() {
-
- }
-
- @Override
- public int getEfficiency() {
- return this.mEfficiency;
- }
-
- @Override
- public long maxEUStore() {
- return Math.max(getEUVar(), V[mTier] * 16000 + getMinimumStoredEU());
- }
-
-
- ITexture SolarArray[] = {new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_8V),
- new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_LV), new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_MV), new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_HV),
- new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_EV), new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_IV), new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_LuV),
- new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_ZPM), new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL_UV), new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL)};
-
-
- @Override
- public ITexture[] getFront(byte aColor) {
- return new ITexture[]{super.getFront(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC_FRONT),
- Textures.BlockIcons.OVERLAYS_ENERGY_OUT_MULTI[this.mTier]};
- }
-
- @Override
- public ITexture[] getBack(byte aColor) {
- return new ITexture[]{super.getBack(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC)};
- }
-
- @Override
- public ITexture[] getBottom(byte aColor) {
- return new ITexture[]{super.getBottom(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC)};
- }
-
- @Override
- public ITexture[] getTop(byte aColor) {
- return new ITexture[]{super.getTop(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL)};
- }
-
- @Override
- public ITexture[] getSides(byte aColor) {
- return new ITexture[]{super.getSides(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC)};
- }
-
- @Override
- public ITexture[] getFrontActive(byte aColor) {
- return new ITexture[]{super.getFrontActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC_FRONT_ACTIVE),
- Textures.BlockIcons.OVERLAYS_ENERGY_OUT[this.mTier]};
- }
-
- @Override
- public ITexture[] getBackActive(byte aColor) {
- return new ITexture[]{super.getBackActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC_ACTIVE)};
- }
-
- @Override
- public ITexture[] getBottomActive(byte aColor) {
- return new ITexture[]{super.getBottomActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC_ACTIVE)};
- }
-
- @Override
- public ITexture[] getTopActive(byte aColor) {
- return new ITexture[]{super.getTopActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.SOLARPANEL)};
- }
-
- @Override
- public ITexture[] getSidesActive(byte aColor) {
- return new ITexture[]{super.getSidesActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC_ACTIVE)};
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntitySuperCondensor.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntitySuperCondensor.java
deleted file mode 100644
index 9e5db9291d..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/generators/GregtechMetaTileEntitySuperCondensor.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.generators;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Recipe;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.GregtechMetaSuperConductorNodeBase;
-
-public class GregtechMetaTileEntitySuperCondensor
- extends GregtechMetaSuperConductorNodeBase {
-
- public int mEfficiency;
-
- public GregtechMetaTileEntitySuperCondensor(int aID, String aName, String aNameRegional, int aTier) {
- super(aID, aName, aNameRegional, aTier, "Requires liquid Nitrogen/Helium", new ITexture[0]);
- onConfigLoad();
- }
-
- public GregtechMetaTileEntitySuperCondensor(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
- super(aName, aTier, aDescription, aTextures);
- onConfigLoad();
- }
-
- @Override
- public boolean isOutputFacing(byte aSide) {
- return aSide == getBaseMetaTileEntity().getFrontFacing();
- }
-
- @Override
- public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntitySuperCondensor(this.mName, this.mTier, this.mDescription, this.mTextures);
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipes() {
- return GT_Recipe.GT_Recipe_Map.sDieselFuels;
- }
-
- @Override
- public int getCapacity() {
- return 64000;
- }
-
- public void onConfigLoad() {
- this.mEfficiency = 100;
- }
-
- @Override
- public int getEfficiency() {
- return this.mEfficiency;
- }
-
- @Override
- public ITexture[] getFront(byte aColor) {
- return new ITexture[]{super.getFront(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_COIL_SUPERCONDUCTOR), Textures.BlockIcons.OVERLAYS_ENERGY_OUT_MULTI[this.mTier]};
- }
-
- @Override
- public ITexture[] getBack(byte aColor) {
- return new ITexture[]{super.getBack(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_COIL_SUPERCONDUCTOR), Textures.BlockIcons.OVERLAYS_ENERGY_IN[this.mTier]};
- }
-
- @Override
- public ITexture[] getBottom(byte aColor) {
- return new ITexture[]{super.getBottom(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_COIL_SUPERCONDUCTOR), Textures.BlockIcons.OVERLAYS_ENERGY_IN[this.mTier]};
- }
-
- @Override
- public ITexture[] getTop(byte aColor) {
- return new ITexture[]{super.getTop(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_TOP)};
- }
-
- @Override
- public ITexture[] getSides(byte aColor) {
- return new ITexture[]{super.getSides(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_COIL_SUPERCONDUCTOR), Textures.BlockIcons.OVERLAYS_ENERGY_IN[this.mTier]};
- }
-
- @Override
- public ITexture[] getFrontActive(byte aColor) {
- return new ITexture[]{super.getFrontActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_COIL_SUPERCONDUCTOR), Textures.BlockIcons.OVERLAYS_ENERGY_OUT_MULTI[this.mTier]};
- }
-
- @Override
- public ITexture[] getBackActive(byte aColor) {
- return new ITexture[]{super.getBackActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_COIL_SUPERCONDUCTOR), Textures.BlockIcons.OVERLAYS_ENERGY_IN[this.mTier]};
- }
-
- @Override
- public ITexture[] getBottomActive(byte aColor) {
- return new ITexture[]{super.getBottomActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_COIL_SUPERCONDUCTOR), Textures.BlockIcons.OVERLAYS_ENERGY_IN[this.mTier]};
- }
-
- @Override
- public ITexture[] getTopActive(byte aColor) {
- return new ITexture[]{super.getTopActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.DIESEL_GENERATOR_TOP_ACTIVE)};
- }
-
- @Override
- public ITexture[] getSidesActive(byte aColor) {
- return new ITexture[]{super.getSidesActive(aColor)[0], new GT_RenderedTexture(Textures.BlockIcons.MACHINE_COIL_SUPERCONDUCTOR), Textures.BlockIcons.OVERLAYS_ENERGY_IN[this.mTier]};
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialCentrifuge.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialCentrifuge.java
deleted file mode 100644
index d085d39a50..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialCentrifuge.java
+++ /dev/null
@@ -1,326 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maintenance;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.lib.CORE.configSwitches;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase;
-import net.minecraft.block.Block;
-import net.minecraft.entity.player.EntityPlayerMP;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.server.MinecraftServer;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.FluidStack;
-
-import org.apache.commons.lang3.ArrayUtils;
-
-public class GregtechMetaTileEntityIndustrialCentrifuge
-extends GregtechMeta_MultiBlockBase {
- private static boolean controller;
- private static boolean isDisabled = false;
- private static ITexture frontFace;
- private static ITexture frontFaceActive;
- private static Textures.BlockIcons.CustomIcon GT9_5_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST_ACTIVE5");
- private static Textures.BlockIcons.CustomIcon GT9_5 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ST5");
- private static Textures.BlockIcons.CustomIcon GT8_5_Active = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE_ACTIVE5");
- private static Textures.BlockIcons.CustomIcon GT8_5 = new Textures.BlockIcons.CustomIcon("iconsets/LARGETURBINE5");
- //public static double recipesComplete = 0;
-
- public GregtechMetaTileEntityIndustrialCentrifuge(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- if (CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK){
- frontFaceActive = new GT_RenderedTexture(GT9_5_Active);
- frontFace = new GT_RenderedTexture(GT9_5);
- }
- else{
- frontFaceActive = new GT_RenderedTexture(GT8_5_Active);
- frontFace = new GT_RenderedTexture(GT8_5);
- }
- }
-
- public GregtechMetaTileEntityIndustrialCentrifuge(String aName) {
- super(aName);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityIndustrialCentrifuge(this.mName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{
- "Controller Block for the Industrial Centrifuge",
- "Size: 3x3x3 (Hollow)",
- "Controller (Front Center) [Orange]",
- "1x Maintenance Hatch (Rear Center) [Green]",
- "The rest can be placed anywhere except the Front [Red]",
- "1x Input Hatch",
- "1x Output Hatch",
- "1x Input Bus",
- "1x Output Bus",
- "1x [EV] Energy Hatch (Can be higher Tier) [Blue]",
- "Centrifuge Casings for the rest (16 at least)",
- CORE.GT_Tooltip};
- }
-
-
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][aColorIndex + 1], aFacing == aSide ? aActive ? frontFaceActive : frontFace : Textures.BlockIcons.CASING_BLOCKS[57]};
- }
-
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "IndustrialCentrifuge.png");
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- ArrayList<ItemStack> tInputList = getStoredInputs();
- GT_Recipe mLastRecipe;
-
- @Override
- public boolean checkRecipe(ItemStack aStack) {
- /*if (!isCorrectMachinePart(mInventory[1])) {
- return false;
- }*/
-
- Utils.LOG_WARNING("Centrifuge Debug - 1");
- GT_Recipe.GT_Recipe_Map map = getRecipeMap();
- if (map == null) {
- Utils.LOG_WARNING("Centrifuge Debug - False - No recipe map");
- return false;
- }
- Utils.LOG_WARNING("Centrifuge Debug - 2");
- ArrayList<ItemStack> tInputList = getStoredInputs();
- long tVoltage = getMaxInputVoltage();
- byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage));
- Utils.LOG_WARNING("Centrifuge Debug - Tier variable: "+tTier);
- ItemStack[] tInputs = (ItemStack[]) tInputList.toArray(new ItemStack[tInputList.size()]);
- ArrayList<FluidStack> tFluidList = getStoredFluids();
- FluidStack[] tFluids = (FluidStack[]) tFluidList.toArray(new FluidStack[tFluidList.size()]);
- if (tInputList.size() > 0 || tFluids.length > 0) {
- GT_Recipe tRecipe = map.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs);
- if (tRecipe != null) {
- Utils.LOG_WARNING("Recipe was not invalid");
- mLastRecipe = tRecipe;
- this.mEUt = 0;
- this.mOutputItems = null;
- this.mOutputFluids = null;
- if (!tRecipe.isRecipeInputEqual(true, tFluids, tInputs)) {
-
- Utils.LOG_WARNING("False: 1");
- return false;
- }
-
- this.mMaxProgresstime = tRecipe.mDuration;
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
- Utils.LOG_WARNING("Centrifuge Debug - 2 - Max Progress Time: "+this.mMaxProgresstime);
- if (tRecipe.mEUt <= 16) {
- Utils.LOG_WARNING("Centrifuge Debug - Using < 16eu/t");
- this.mEUt = (tRecipe.mEUt * (1 << tTier - 1) * (1 << tTier - 1));
- this.mMaxProgresstime = (tRecipe.mDuration / (1 << tTier - 1));
- Utils.LOG_WARNING("Centrifuge Debug - 3.1 - Max Progress Time: "+this.mMaxProgresstime+" EU/t"+this.mEUt + " Obscure GT Value "+gregtech.api.enums.GT_Values.V[(tTier - 1)]);
- } else {
- Utils.LOG_WARNING("Centrifuge Debug - using > 16eu/t");
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = tRecipe.mDuration;
- Utils.LOG_WARNING("Centrifuge Debug - 3.2 - Max Progress Time: "+this.mMaxProgresstime+" EU/t"+this.mEUt + " Obscure GT Value "+gregtech.api.enums.GT_Values.V[(tTier - 1)]);
- while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) {
- this.mEUt *= 4;
- this.mMaxProgresstime /= 2;
- Utils.LOG_WARNING("Centrifuge Debug - 4 - Max Progress Time: "+this.mMaxProgresstime+" EU/t"+this.mEUt);
- }
- }
- this.mEUt *= 1;
- if (this.mEUt > 0) {
- this.mEUt = (-this.mEUt);
- Utils.LOG_WARNING("Centrifuge Debug - 5 - Max Progress Time: "+this.mMaxProgresstime+" EU/t"+this.mEUt);
- }
- ItemStack[] tOut = new ItemStack[tRecipe.mOutputs.length];
- for (int h = 0; h < tRecipe.mOutputs.length; h++) {
- tOut[h] = tRecipe.getOutput(h).copy();
- tOut[h].stackSize = 0;
- }
- FluidStack tFOut = null;
- if (tRecipe.getFluidOutput(0) != null) tFOut = tRecipe.getFluidOutput(0).copy();
- for (int f = 0; f < tOut.length; f++) {
- if (tRecipe.mOutputs[f] != null && tOut[f] != null) {
- for (int g = 0; g < 1; g++) {
- if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f))
- tOut[f].stackSize += tRecipe.mOutputs[f].stackSize;
- }
- }
- }
- if (tFOut != null) {
- int tSize = tFOut.amount;
- tFOut.amount = tSize * 6;
- }
- this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
- this.mMaxProgresstime /= 4;
- if (this.mMaxProgresstime <= 0){
- this.mMaxProgresstime++;
- }
- Utils.LOG_WARNING("Centrifuge Debug - 6 - Max Progress Time: "+this.mMaxProgresstime+" EU/t"+this.mEUt);
- List<ItemStack> overStacks = new ArrayList<ItemStack>();
- for (int f = 0; f < tOut.length; f++) {
- if (tOut[f].getMaxStackSize() < tOut[f].stackSize) {
- while (tOut[f].getMaxStackSize() < tOut[f].stackSize) {
- ItemStack tmp = tOut[f].copy();
- tmp.stackSize = tmp.getMaxStackSize();
- tOut[f].stackSize = tOut[f].stackSize - tOut[f].getMaxStackSize();
- overStacks.add(tmp);
- }
- }
- }
- if (overStacks.size() > 0) {
- ItemStack[] tmp = new ItemStack[overStacks.size()];
- tmp = overStacks.toArray(tmp);
- tOut = ArrayUtils.addAll(tOut, tmp);
- }
- List<ItemStack> tSList = new ArrayList<ItemStack>();
- for (ItemStack tS : tOut) {
- if (tS.stackSize > 0) tSList.add(tS);
- }
- tOut = tSList.toArray(new ItemStack[tSList.size()]);
- this.mOutputItems = tOut;
- this.mOutputFluids = new FluidStack[]{tFOut};
- updateSlots();
- Utils.LOG_WARNING("Centrifuge: True");
- return true;
- }
- }
- Utils.LOG_WARNING("Centrifuge: Recipe was invalid.");
- return false;
- }
-
- @SuppressWarnings("static-method")
- public Block getCasingBlock() {
- return ModBlocks.blockCasingsMisc;
- }
-
- @SuppressWarnings("static-method")
- public byte getCasingMeta() {
- return 0;
- }
-
- @SuppressWarnings("static-method")
- public byte getCasingTextureIndex() {
- return 0;
- }
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- if (configSwitches.disableCentrifugeFormation){
- EntityPlayerMP player = MinecraftServer.getServer().getConfigurationManager().func_152612_a(this.getBaseMetaTileEntity().getOwnerName());
- if (!player.getEntityWorld().isRemote && isDisabled == false)
- Utils.messagePlayer(player, "This Multiblock is disabled via the config. [Only re-enable if you're bugtesting.]");
- isDisabled = true;
- return false;
- }
- int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX;
- int yDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetY;
- int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ;
- //Utils.LOG_WARNING("X:"+xDir+" Y:"+yDir+" Z:"+zDir);
- if (!aBaseMetaTileEntity.getAirOffset(xDir, 0, zDir)) {
- return false;
- }
- int tAmount = 0;
- for (int i = -1; i < 2; i++) { //X-Dir
- for (int j = -1; j < 2; j++) { //Z-Dir
- for (int h = -1; h < 2; h++) { //Y-Dir
- if ((h != 0) || (((xDir + i != 0) || (zDir + j != 0)) && ((i != 0) || (j != 0)))) {
-
- IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j);
- //Utils.LOG_WARNING("X:"+tTileEntity.getXCoord()+" Y:"+tTileEntity.getYCoord()+" Z:"+tTileEntity.getZCoord());
- if ((!addMaintenanceToMachineList(tTileEntity, 57)) && (!addInputToMachineList(tTileEntity, 57)) && (!addOutputToMachineList(tTileEntity, 57)) && (!addEnergyInputToMachineList(tTileEntity, 57))) {
-
- //Maintenance Hatch
- if ((tTileEntity != null) && (tTileEntity.getMetaTileEntity() != null)) {
- if (tTileEntity.getXCoord() == aBaseMetaTileEntity.getXCoord() && tTileEntity.getYCoord() == aBaseMetaTileEntity.getYCoord() && tTileEntity.getZCoord() == (aBaseMetaTileEntity.getZCoord()+2)) {
- if ((tTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_Hatch_Maintenance)) {
- Utils.LOG_WARNING("MAINT HATCH IN CORRECT PLACE");
- this.mMaintenanceHatches.add((GT_MetaTileEntity_Hatch_Maintenance) tTileEntity.getMetaTileEntity());
- ((GT_MetaTileEntity_Hatch) tTileEntity.getMetaTileEntity()).mMachineBlock = getCasingTextureIndex();
- } else {
- return false;
- }
- }
- else {
- Utils.LOG_WARNING("MAINT HATCH IN WRONG PLACE");
- }
- }
-
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 0) {
- return false;
- }
- tAmount++;
-
- }
- }
- }
- }
- }
- return tAmount >= 16;
- }
-
- @SuppressWarnings("static-method")
- public boolean ignoreController(Block tTileEntity) {
- if (!controller && tTileEntity == GregTech_API.sBlockMachines) {
- return true;
- }
- return false;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getAmountOfOutputs() {
- return 1;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialCokeOven.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialCokeOven.java
deleted file mode 100644
index d206156da0..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialCokeOven.java
+++ /dev/null
@@ -1,272 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import static miscutil.core.xmod.gregtech.common.blocks.GregtechMetaCasingBlocks.GTID;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase;
-import miscutil.core.xmod.gregtech.api.util.GregtechRecipe;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.common.util.ForgeDirection;
-import net.minecraftforge.fluids.FluidStack;
-
-public class GregtechMetaTileEntityIndustrialCokeOven
- extends GregtechMeta_MultiBlockBase {
- private int mLevel = 0;
-
- public GregtechMetaTileEntityIndustrialCokeOven(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GregtechMetaTileEntityIndustrialCokeOven(String aName) {
- super(aName);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityIndustrialCokeOven(this.mName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{"Processes Logs and Coal into Charcoal and Coal Coke.",
- "Controller Block for the Industrial Coke Oven",
- "Size: 3x3x3 (Hollow)",
- "Controller (front middle at bottom)",
- "8x Heat Resistant/Proof Coils (middle Layer, hollow)",
- "1x Input (one of bottom)",
- "1x Output (one of bottom)",
- "1x Energy Hatch (one of bottom)",
- "1x Maintenance Hatch (one of bottom)",
- "1x Muffler Hatch (top middle)",
- "Structural Coke Oven Casings for the rest",
- CORE.GT_Tooltip};
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[GTID+1], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_MULTI_SMELTER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_MULTI_SMELTER)};
- }
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[GTID+1]};
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "CokeOven.png");
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GregtechRecipe.Gregtech_Recipe_Map.sCokeOvenRecipes;
-
- }
-
- /* @Override
- public boolean isCorrectMachinePart(ItemStack aStack) {
- return true;
- }*/
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- @Override
- public boolean checkRecipe(ItemStack aStack) {
- ArrayList<ItemStack> tInputList = getStoredInputs();
- for (int i = 0; i < tInputList.size() - 1; i++) {
- for (int j = i + 1; j < tInputList.size(); j++) {
- if (GT_Utility.areStacksEqual((ItemStack) tInputList.get(i), (ItemStack) tInputList.get(j))) {
- if (((ItemStack) tInputList.get(i)).stackSize >= ((ItemStack) tInputList.get(j)).stackSize) {
- tInputList.remove(j--);
- } else {
- tInputList.remove(i--);
- break;
- }
- }
- }
- }
- ItemStack[] tInputs = (ItemStack[]) Arrays.copyOfRange(tInputList.toArray(new ItemStack[tInputList.size()]), 0, 2);
-
- ArrayList<FluidStack> tFluidList = getStoredFluids();
- for (int i = 0; i < tFluidList.size() - 1; i++) {
- for (int j = i + 1; j < tFluidList.size(); j++) {
- if (GT_Utility.areFluidsEqual((FluidStack) tFluidList.get(i), (FluidStack) tFluidList.get(j))) {
- if (((FluidStack) tFluidList.get(i)).amount >= ((FluidStack) tFluidList.get(j)).amount) {
- tFluidList.remove(j--);
- } else {
- tFluidList.remove(i--);
- break;
- }
- }
- }
- }
- FluidStack[] tFluids = (FluidStack[]) Arrays.copyOfRange(tFluidList.toArray(new FluidStack[tInputList.size()]), 0, 1);
- if (tInputList.size() > 0) {
- long tVoltage = getMaxInputVoltage();
- byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage));
- GT_Recipe tRecipe = GregtechRecipe.Gregtech_Recipe_Map.sCokeOvenRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs);
- if ((tRecipe != null) && (this.mLevel >= tRecipe.mSpecialValue) && (tRecipe.isRecipeInputEqual(true, tFluids, tInputs))) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
- if (tRecipe.mEUt <= 16) {
- this.mEUt = (tRecipe.mEUt * (1 << tTier - 1) * (1 << tTier - 1));
- this.mMaxProgresstime = (tRecipe.mDuration / (1 << tTier - 1));
- } else {
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = tRecipe.mDuration;
- while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) {
- this.mEUt *= 4;
- this.mMaxProgresstime /= 2;
- }
- }
- if (this.mEUt > 0) {
- this.mEUt = (-this.mEUt);
- }
- this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
- this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0)};
- this.mOutputFluids = new FluidStack[]{tRecipe.getFluidOutput(0)};
- updateSlots();
- //Utils.LOG_INFO("Coke oven: True");
- return true;
- }
- }
- //Utils.LOG_INFO("Coke oven: False");
- return false;
- }
- /*public boolean checkRecipe(ItemStack aStack) {
- ArrayList<ItemStack> tInputList = getStoredInputs();
- if (!tInputList.isEmpty()) {
- byte tTier = (byte) Math.max(1, GT_Utility.getTier(getMaxInputVoltage()));
-
- int j = 0;
- this.mOutputItems = new ItemStack[12 * this.mLevel];
- for (int i = 0; (i < 100) && (j < this.mOutputItems.length); i++) {
- if (null != (this.mOutputItems[j] = GT_ModHandler.getSmeltingOutput((ItemStack) tInputList.get(i % tInputList.size()), true, null))) {
- j++;
- }
- }
- if (j > 0) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
-
- this.mEUt = (-4 * (1 << tTier - 1) * (1 << tTier - 1) * this.mLevel);
- this.mMaxProgresstime = Math.max(1, 512 / (1 << tTier - 1));
- }
- updateSlots();
- return true;
- }
- return false;
- }*/
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX;
- int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ;
- int xr = aBaseMetaTileEntity.getXCoord();
- int yr = aBaseMetaTileEntity.getYCoord();
- int zr = aBaseMetaTileEntity.getZCoord();
- this.mLevel = 0;
- if (!aBaseMetaTileEntity.getAirOffset(xDir, 1, zDir)) {
- return false;
- }
- addMufflerToMachineList(aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir, 2, zDir), GTID+1);
-
- byte tUsedMeta = aBaseMetaTileEntity.getMetaIDOffset(xDir + 1, 1, zDir);
- switch (tUsedMeta) {
- case 2:
- this.mLevel = 1;
- break;
- case 3:
- this.mLevel = 2;
- break;
- default:
- return false;
- }
- this.mOutputItems = new ItemStack[12 * this.mLevel];
- for (int i = -1; i < 2; i++) {
- for (int j = -1; j < 2; j++) {
- if ((i != 0) || (j != 0)) {
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, 1, zDir + j) != ModBlocks.blockCasingsMisc) {
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, 1, zDir + j) != tUsedMeta) {
- return false;
- }
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, 2, zDir + j) != ModBlocks.blockCasingsMisc) {
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, 2, zDir + j) != 1) {
- return false;
- }
- }
- }
- }
- for (int i = -1; i < 2; i++) {
- xr = aBaseMetaTileEntity.getXCoord();
- yr = aBaseMetaTileEntity.getYCoord();
- zr = aBaseMetaTileEntity.getZCoord();
- //Utils.LOG_WARNING("STEP 1 - x ["+xr+"] y ["+yr+"] z ["+zr+"]");
- for (int j = -1; j < 2; j++) {
- xr = aBaseMetaTileEntity.getXCoord();
- yr = aBaseMetaTileEntity.getYCoord();
- zr = aBaseMetaTileEntity.getZCoord();
- //Utils.LOG_WARNING("STEP 2 - x ["+xr+"] y ["+yr+"] z ["+zr+"]");
- if ((xDir + i != 0) || (zDir + j != 0)) {
- xr = aBaseMetaTileEntity.getXCoord();
- yr = aBaseMetaTileEntity.getYCoord();
- zr = aBaseMetaTileEntity.getZCoord();
- //Utils.LOG_WARNING("STEP 3 - x ["+xr+"] y ["+yr+"] z ["+zr+"]");
- IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, 0, zDir + j);
- if ((!addMaintenanceToMachineList(tTileEntity, GTID+1)) && (!addInputToMachineList(tTileEntity, GTID+1)) && (!addOutputToMachineList(tTileEntity, GTID+1)) && (!addEnergyInputToMachineList(tTileEntity, GTID+1))) {
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, 0, zDir + j) != ModBlocks.blockCasingsMisc) {
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, 0, zDir + j) != 1) {
- return false;
- }
- }
- }
- }
- }
- return true;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- /* @Override
- public int getDamageToComponent(ItemStack aStack) {
- return 0;
- }*/
-
- @Override
- public int getAmountOfOutputs() {
- return 24;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialElectrolyzer.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialElectrolyzer.java
deleted file mode 100644
index 1eba8022b7..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialElectrolyzer.java
+++ /dev/null
@@ -1,258 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import static miscutil.core.xmod.gregtech.common.blocks.GregtechMetaCasingBlocks.GTID;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-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 java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-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;
-
-import org.apache.commons.lang3.ArrayUtils;
-
-public class GregtechMetaTileEntityIndustrialElectrolyzer
-extends GT_MetaTileEntity_MultiBlockBase {
- public GregtechMetaTileEntityIndustrialElectrolyzer(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GregtechMetaTileEntityIndustrialElectrolyzer(String aName) {
- super(aName);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityIndustrialElectrolyzer(this.mName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{"Controller Block for the Industrial Electrolyzer",
- "Size: 3x3x3 (Hollow)",
- "Controller (front centered)",
- "1x Input Bus (anywhere)",
- "1x Output Bus (anywhere)",
- "1x Input Hatch (anywhere)",
- "1x Output Hatch (anywhere)",
- "1x Energy Hatch (anywhere)",
- "1x Maintenance Hatch (anywhere)",
- "1x Muffler (anywhere)",
- "Electrolyzer Casings for the rest (16 at least!)",
- CORE.GT_Tooltip};
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[GTID+5], new GT_RenderedTexture(aActive ? Textures.BlockIcons.STEAM_TURBINE_SIDE_ACTIVE : Textures.BlockIcons.STEAM_TURBINE_SIDE)};
- }
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[GTID+5]};
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "IndustrialElectrolyzer.png");
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes;
- }
-
- @Override
- public boolean isCorrectMachinePart(ItemStack aStack) {
- return true;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- ArrayList<ItemStack> tInputList = getStoredInputs();
- GT_Recipe mLastRecipe;
-
- @Override
- public boolean checkRecipe(ItemStack aStack) { //TODO - Add Check to make sure Fluid output isn't full
- ArrayList<ItemStack> tInputList = getStoredInputs();
- for (int i = 0; i < tInputList.size() - 1; i++) {
- for (int j = i + 1; j < tInputList.size(); j++) {
- if (GT_Utility.areStacksEqual((ItemStack) tInputList.get(i), (ItemStack) tInputList.get(j))) {
- if (((ItemStack) tInputList.get(i)).stackSize >= ((ItemStack) tInputList.get(j)).stackSize) {
- tInputList.remove(j--);
- } else {
- tInputList.remove(i--);
- break;
- }
- }
- }
- }
- ItemStack[] tInputs = (ItemStack[]) Arrays.copyOfRange(tInputList.toArray(new ItemStack[tInputList.size()]), 0, 2);
-
- ArrayList<FluidStack> tFluidList = getStoredFluids();
- for (int i = 0; i < tFluidList.size() - 1; i++) {
- for (int j = i + 1; j < tFluidList.size(); j++) {
- if (GT_Utility.areFluidsEqual((FluidStack) tFluidList.get(i), (FluidStack) tFluidList.get(j))) {
- if (((FluidStack) tFluidList.get(i)).amount >= ((FluidStack) tFluidList.get(j)).amount) {
- tFluidList.remove(j--);
- } else {
- tFluidList.remove(i--);
- break;
- }
- }
- }
- }
- FluidStack[] tFluids = (FluidStack[]) Arrays.copyOfRange(tFluidList.toArray(new FluidStack[tInputList.size()]), 0, 1);
- if (tInputList.size() > 0) {
- long tVoltage = getMaxInputVoltage();
- byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage));
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sElectrolyzerRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs);
- if ((tRecipe != null) && (7500 >= tRecipe.mSpecialValue) && (tRecipe.isRecipeInputEqual(true, tFluids, tInputs))) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
- if (tRecipe.mEUt <= 16) {
- this.mEUt = (tRecipe.mEUt * (1 << tTier - 1) * (1 << tTier - 1));
- this.mMaxProgresstime = (tRecipe.mDuration / (1 << tTier - 1));
- } else {
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = tRecipe.mDuration;
- while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) {
- this.mEUt *= 4;
- this.mMaxProgresstime /= 2;
- }
- }
- if (this.mEUt > 0) {
- this.mEUt = (-this.mEUt);
- }
- this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
-
- ItemStack[] tOut = new ItemStack[tRecipe.mOutputs.length];
- for (int h = 0; h < tRecipe.mOutputs.length; h++) {
- tOut[h] = tRecipe.getOutput(h).copy();
- tOut[h].stackSize = 0;
- }
- FluidStack tFOut = null;
- if (tRecipe.getFluidOutput(0) != null) tFOut = tRecipe.getFluidOutput(0).copy();
- for (int f = 0; f < tOut.length; f++) {
- if (tRecipe.mOutputs[f] != null && tOut[f] != null) {
- for (int g = 0; g < 1; g++) {
- if (getBaseMetaTileEntity().getRandomNumber(10000) < tRecipe.getOutputChance(f))
- tOut[f].stackSize += tRecipe.mOutputs[f].stackSize;
- }
- }
- }
- if (tFOut != null) {
- int tSize = tFOut.amount;
- tFOut.amount = tSize * 1;
- }
-
- List<ItemStack> overStacks = new ArrayList<ItemStack>();
- for (int f = 0; f < tOut.length; f++) {
- if (tOut[f].getMaxStackSize() < tOut[f].stackSize) {
- while (tOut[f].getMaxStackSize() < tOut[f].stackSize) {
- ItemStack tmp = tOut[f].copy();
- tmp.stackSize = tmp.getMaxStackSize();
- tOut[f].stackSize = tOut[f].stackSize - tOut[f].getMaxStackSize();
- overStacks.add(tmp);
- }
- }
- }
- if (overStacks.size() > 0) {
- ItemStack[] tmp = new ItemStack[overStacks.size()];
- tmp = overStacks.toArray(tmp);
- tOut = ArrayUtils.addAll(tOut, tmp);
- }
- List<ItemStack> tSList = new ArrayList<ItemStack>();
- for (ItemStack tS : tOut) {
- if (tS.stackSize > 0) tSList.add(tS);
- }
- tOut = tSList.toArray(new ItemStack[tSList.size()]);
- this.mOutputItems = tOut;
- this.mOutputFluids = new FluidStack[]{tFOut};
- updateSlots();
-
- /* this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0), tRecipe.getOutput(1)};
- updateSlots();*/
- return true;
- }
- }
- return false;
- }
-
- @Override
- public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) {
- super.startSoundLoop(aIndex, aX, aY, aZ);
- if (aIndex == 20) {
- GT_Utility.doSoundAtClient((String) GregTech_API.sSoundList.get(Integer.valueOf(5)), 10, 1.0F, aX, aY, aZ);
- }
- }
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX;
- int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ;
- if (!aBaseMetaTileEntity.getAirOffset(xDir, 0, zDir)) {
- return false;
- }
- int tAmount = 0;
- for (int i = -1; i < 2; i++) {
- for (int j = -1; j < 2; j++) {
- for (int h = -1; h < 2; h++) {
- if ((h != 0) || (((xDir + i != 0) || (zDir + j != 0)) && ((i != 0) || (j != 0)))) {
- IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j);
- if ((!addMaintenanceToMachineList(tTileEntity, 62)) && (!addMufflerToMachineList(tTileEntity, 62)) && (!addInputToMachineList(tTileEntity, 62)) && (!addOutputToMachineList(tTileEntity, 62)) && (!addEnergyInputToMachineList(tTileEntity, 62))) {
- Block tBlock = aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j);
- byte tMeta = aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j);
- if (((tBlock != ModBlocks.blockCasingsMisc) || (tMeta != 5))) {
- return false;
- }
- tAmount++;
- }
- }
- }
- }
- }
- return tAmount >= 16;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getDamageToComponent(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getAmountOfOutputs() {
- return 1;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialMacerator.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialMacerator.java
deleted file mode 100644
index 466b9f4685..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialMacerator.java
+++ /dev/null
@@ -1,278 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_OutputBus;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Random;
-
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-import miscutil.core.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase;
-import net.minecraft.block.Block;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.common.util.ForgeDirection;
-
-public class GregtechMetaTileEntityIndustrialMacerator
-extends GregtechMeta_MultiBlockBase {
- private static boolean controller;
-
- public GregtechMetaTileEntityIndustrialMacerator(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GregtechMetaTileEntityIndustrialMacerator(String aName) {
- super(aName);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityIndustrialMacerator(this.mName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{
- "Controller Block for the Industrial Maceration Stack",
- "Size[WxHxL]: 3x6x3 (Hollow)",
- "Controller (Center Bottom)",
- "1x Input Bus (Any bottom layer casing)",
- "5x Output Bus (Any casing besides bottom layer)",
- "1x Maintenance Hatch (Any casing)",
- "1x Energy Hatch (Any casing)",
- "Maceration Stack Casings for the rest (26 at least!)",
- CORE.GT_Tooltip};
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[64], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_STEAM_MACERATOR_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_STEAM_MACERATOR)};
- }
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[64]};
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MacerationStack.png");
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes;
- }
-
- /*@Override
- public boolean isCorrectMachinePart(ItemStack aStack) {
- return true;
- }*/
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- @Override
- public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
- super.onPreTick(aBaseMetaTileEntity, aTick);
- if ((aBaseMetaTileEntity.isClientSide()) && (aBaseMetaTileEntity.isActive()) && (aBaseMetaTileEntity.getFrontFacing() != 1) && (aBaseMetaTileEntity.getCoverIDAtSide((byte) 1) == 0) && (!aBaseMetaTileEntity.getOpacityAtSide((byte) 1))) {
- Random tRandom = aBaseMetaTileEntity.getWorld().rand;
- aBaseMetaTileEntity.getWorld().spawnParticle("smoke", aBaseMetaTileEntity.getXCoord() + 0.8F - tRandom.nextFloat() * 0.6F, aBaseMetaTileEntity.getYCoord() + 0.3f + tRandom.nextFloat() * 0.2F, aBaseMetaTileEntity.getZCoord() + 1.2F - tRandom.nextFloat() * 1.6F, 0.0D, 0.0D, 0.0D);
- }
- }
-
- @Override
- public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) {
- super.startSoundLoop(aIndex, aX, aY, aZ);
- if (aIndex == 1) {
- GT_Utility.doSoundAtClient((String) GregTech_API.sSoundList.get(Integer.valueOf(201)), 10, 1.0F, aX, aY, aZ);
- }
- }
-
- @Override
- public void startProcess() {
- sendLoopStart((byte) 1);
- }
-
- @Override
- public boolean checkRecipe(ItemStack aStack) {
- ArrayList<ItemStack> tInputList = getStoredInputs();
- for (int i = 0; i < tInputList.size() - 1; i++) {
- for (int j = i + 1; j < tInputList.size(); j++) {
- if (GT_Utility.areStacksEqual((ItemStack) tInputList.get(i), (ItemStack) tInputList.get(j))) {
- if (((ItemStack) tInputList.get(i)).stackSize >= ((ItemStack) tInputList.get(j)).stackSize) {
- tInputList.remove(j--);
- } else {
- tInputList.remove(i--);
- break;
- }
- }
- }
- }
- ItemStack[] tInputs = (ItemStack[]) Arrays.copyOfRange(tInputList.toArray(new ItemStack[tInputList.size()]), 0, 2);
- if (tInputList.size() > 0) {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.findRecipe(getBaseMetaTileEntity(), false, 9223372036854775807L, null, tInputs);
- if ((tRecipe != null) && (tRecipe.isRecipeInputEqual(true, null, tInputs))) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
-
- this.mEUt = (-tRecipe.mEUt);
- this.mMaxProgresstime = Math.max(1, (tRecipe.mDuration/5));
- this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0), tRecipe.getOutput(1)};
- sendLoopStart((byte) 20);
- updateSlots();
- return true;
- }
- }
- return false;
- }
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX;
- int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ;
- if (!aBaseMetaTileEntity.getAirOffset(xDir, 1, zDir)) {
- return false;
- }
- int tAmount = 0;
- controller = false;
- for (int i = -1; i < 2; i++) {
- for (int j = -1; j < 2; j++) {
- for (int h = 0; h < 6; h++) {
- if (!(i == 0 && j == 0 && (h > 0 && h < 5)))//((h > 0)&&(h<5)) || (((xDir + i != 0) || (zDir + j != 0)) && ((i != 0) || (j != 0)))
- {
- IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j);
- if ((!addMaintenanceToMachineList(tTileEntity, 64)) && (!addInputToMachineList(tTileEntity, 64)) && (!addOutputToMachineList(tTileEntity, 64)) && (!addEnergyInputToMachineList(tTileEntity, 64)) && (!ignoreController(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j)))) {
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- Utils.LOG_INFO("Returned False 1");
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 7) {
- Utils.LOG_INFO("Returned False 2");
- return false;
- }
- tAmount++;
- }
- }
- }
- }
- }
- if (this.mOutputHatches.size() != 0 || this.mInputBusses.size() != 1 || this.mOutputBusses.size() != 5) {
- Utils.LOG_INFO("Returned False 3");
- return false;
- }
- int height = this.getBaseMetaTileEntity().getYCoord();
- if (this.mInputBusses.get(0).getBaseMetaTileEntity().getYCoord() != height) {
- Utils.LOG_INFO("height: "+height+" | Returned False 4");
- return false;
- }
- GT_MetaTileEntity_Hatch_OutputBus[] tmpHatches = new GT_MetaTileEntity_Hatch_OutputBus[5];
- for (int i = 0; i < this.mOutputBusses.size(); i++) {
- int hatchNumber = this.mOutputBusses.get(i).getBaseMetaTileEntity().getYCoord() - 1 - height;
- if (tmpHatches[hatchNumber] == null) {
- tmpHatches[hatchNumber] = this.mOutputBusses.get(i);
- } else {
- Utils.LOG_INFO("Returned False 5");
- return false;
- }
- }
- this.mOutputBusses.clear();
- for (int i = 0; i < tmpHatches.length; i++) {
- this.mOutputBusses.add(tmpHatches[i]);
- }
- return tAmount >= 26;
- }
-
- /*public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX;
- int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ;
- if (!aBaseMetaTileEntity.getAirOffset(xDir, 1, zDir)) {
- return false;
- }
- int tAmount = 0;
- controller = false;
- for (int i = -1; i < 2; i++) {
- for (int j = -1; j < 2; j++) {
- for (int h = 0; h < 6; h++) {
- if (!(i == 0 && j == 0 && (h > 0 && h < 5)))//((h > 0)&&(h<5)) || (((xDir + i != 0) || (zDir + j != 0)) && ((i != 0) || (j != 0)))
- {
- IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j);
- if ((!addMaintenanceToMachineList(tTileEntity, 64)) && (!addInputToMachineList(tTileEntity, 64)) && (!addOutputToMachineList(tTileEntity, 64)) && (!addEnergyInputToMachineList(tTileEntity, 64)) && (!ignoreController(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j)))) {
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 1) {
- return false;
- }
- tAmount++;
- }
- }
- }
- }
- }
- if (this.mOutputBusses.size() != 5 || this.mInputBusses.size() != 1) {
- return false;
- }
- int height = this.getBaseMetaTileEntity().getYCoord();
- if (this.mInputHatches.get(0).getBaseMetaTileEntity().getYCoord() != height) {
- return false;
- }
- GT_MetaTileEntity_Hatch_OutputBus[] tmpHatches = new GT_MetaTileEntity_Hatch_OutputBus[5];
- for (int i = 0; i < this.mOutputBusses.size(); i++) {
- int hatchNumber = this.mOutputBusses.get(i).getBaseMetaTileEntity().getYCoord() - 1 - height;
- if (tmpHatches[hatchNumber] == null) {
- tmpHatches[hatchNumber] = this.mOutputBusses.get(i);
- } else {
- return false;
- }
- }
- this.mOutputBusses.clear();
- for (int i = 0; i < tmpHatches.length; i++) {
- this.mOutputBusses.add(tmpHatches[i]);
- }
- return tAmount >= 26;
- }*/
-
- public boolean ignoreController(Block tTileEntity) {
- if (!controller && tTileEntity == GregTech_API.sBlockMachines) {
- return true;
- }
- return false;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- /*@Override
- public int getDamageToComponent(ItemStack aStack) {
- return 0;
- }*/
-
- @Override
- public int getAmountOfOutputs() {
- return 2;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialPlatePress.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialPlatePress.java
deleted file mode 100644
index 2f473d23d0..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialPlatePress.java
+++ /dev/null
@@ -1,204 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import static miscutil.core.xmod.gregtech.common.blocks.GregtechMetaCasingBlocks.GTID;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-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 java.util.ArrayList;
-import java.util.Arrays;
-
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-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 GregtechMetaTileEntityIndustrialPlatePress
-extends GT_MetaTileEntity_MultiBlockBase {
- public GregtechMetaTileEntityIndustrialPlatePress(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GregtechMetaTileEntityIndustrialPlatePress(String aName) {
- super(aName);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityIndustrialPlatePress(this.mName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{"Controller Block for the Material Press",
- "Size: 3x3x3 (Hollow)",
- "Controller (front centered)",
- "1x Input Bus (anywhere)",
- "1x Output Bus (anywhere)",
- "1x Energy Hatch (anywhere)",
- "1x Maintenance Hatch (anywhere)",
- "1x Muffler (anywhere)",
- "Material Press Machine Casings for the rest (16 at least!)",
- CORE.GT_Tooltip};
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[GTID+4], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER)};
- }
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[GTID+4]};
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MaterialPress.png");
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sBenderRecipes;
- }
-
- @Override
- public boolean isCorrectMachinePart(ItemStack aStack) {
- return true;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- @Override
- public boolean checkRecipe(ItemStack aStack) { //TODO - Add Check to make sure Fluid output isn't full
- ArrayList<ItemStack> tInputList = getStoredInputs();
- for (int i = 0; i < tInputList.size() - 1; i++) {
- for (int j = i + 1; j < tInputList.size(); j++) {
- if (GT_Utility.areStacksEqual((ItemStack) tInputList.get(i), (ItemStack) tInputList.get(j))) {
- if (((ItemStack) tInputList.get(i)).stackSize >= ((ItemStack) tInputList.get(j)).stackSize) {
- tInputList.remove(j--);
- } else {
- tInputList.remove(i--);
- break;
- }
- }
- }
- }
- ItemStack[] tInputs = (ItemStack[]) Arrays.copyOfRange(tInputList.toArray(new ItemStack[tInputList.size()]), 0, 2);
-
- ArrayList<FluidStack> tFluidList = getStoredFluids();
- for (int i = 0; i < tFluidList.size() - 1; i++) {
- for (int j = i + 1; j < tFluidList.size(); j++) {
- if (GT_Utility.areFluidsEqual((FluidStack) tFluidList.get(i), (FluidStack) tFluidList.get(j))) {
- if (((FluidStack) tFluidList.get(i)).amount >= ((FluidStack) tFluidList.get(j)).amount) {
- tFluidList.remove(j--);
- } else {
- tFluidList.remove(i--);
- break;
- }
- }
- }
- }
- FluidStack[] tFluids = (FluidStack[]) Arrays.copyOfRange(tFluidList.toArray(new FluidStack[tInputList.size()]), 0, 1);
- if (tInputList.size() > 0) {
- long tVoltage = getMaxInputVoltage();
- byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage));
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sBenderRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluids, tInputs);
- if ((tRecipe != null) && (2500 >= tRecipe.mSpecialValue) && (tRecipe.isRecipeInputEqual(true, tFluids, tInputs))) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
- if (tRecipe.mEUt <= 16) {
- this.mEUt = (tRecipe.mEUt * (1 << tTier - 1) * (1 << tTier - 1));
- this.mMaxProgresstime = (tRecipe.mDuration / (1 << tTier - 1));
- } else {
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = tRecipe.mDuration;
- while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) {
- this.mEUt *= 4;
- this.mMaxProgresstime /= 2;
- }
- }
- if (this.mEUt > 0) {
- this.mEUt = (-this.mEUt);
- }
- this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
- this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0), tRecipe.getOutput(1)};
- updateSlots();
- return true;
- }
- }
- return false;
- }
-
- @Override
- public void startSoundLoop(byte aIndex, double aX, double aY, double aZ) {
- super.startSoundLoop(aIndex, aX, aY, aZ);
- if (aIndex == 20) {
- GT_Utility.doSoundAtClient((String) GregTech_API.sSoundList.get(Integer.valueOf(5)), 10, 1.0F, aX, aY, aZ);
- }
- }
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX;
- int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ;
- if (!aBaseMetaTileEntity.getAirOffset(xDir, 0, zDir)) {
- return false;
- }
- int tAmount = 0;
- for (int i = -1; i < 2; i++) {
- for (int j = -1; j < 2; j++) {
- for (int h = -1; h < 2; h++) {
- if ((h != 0) || (((xDir + i != 0) || (zDir + j != 0)) && ((i != 0) || (j != 0)))) {
- IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j);
- if ((!addMaintenanceToMachineList(tTileEntity, 61)) && (!addMufflerToMachineList(tTileEntity, 61)) && (!addInputToMachineList(tTileEntity, 61)) && (!addOutputToMachineList(tTileEntity, 61)) && (!addEnergyInputToMachineList(tTileEntity, 61))) {
- Block tBlock = aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j);
- byte tMeta = aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j);
- if (((tBlock != ModBlocks.blockCasingsMisc) || (tMeta != 4))) {
- return false;
- }
- tAmount++;
- }
- }
- }
- }
- }
- return tAmount >= 16;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getDamageToComponent(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getAmountOfOutputs() {
- return 1;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialSinter.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialSinter.java
deleted file mode 100644
index 165a8e15a0..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialSinter.java
+++ /dev/null
@@ -1,263 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maintenance;
-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 java.util.ArrayList;
-
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-import net.minecraft.block.Block;
-import net.minecraft.client.renderer.RenderBlocks;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-
-public class GregtechMetaTileEntityIndustrialSinter
-extends GT_MetaTileEntity_MultiBlockBase {
-
-
- RenderBlocks asdasd = RenderBlocks.getInstance();
-
- public GregtechMetaTileEntityIndustrialSinter(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GregtechMetaTileEntityIndustrialSinter(String aName) {
- super(aName);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityIndustrialSinter(this.mName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{
- "Controller Block for the Industrial Sinter Furnace",
- "Size: 3x5x3 [WxLxH] (Hollow)", "Controller (front centered)",
- "2x Input Bus (side centered)",
- "2x Output Bus (side centered)",
- "1x Energy Hatch (top or bottom centered)",
- "1x Maintenance Hatch (back centered)",
- "Sinter Furnace Casings for the rest (32 at least!)",
- CORE.GT_Tooltip
- };
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[63], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER)};
- }
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[63]};
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "WireFactory.png");
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sWiremillRecipes;
- }
-
- @Override
- public boolean isCorrectMachinePart(ItemStack aStack) {
- return true;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- @Override
- public boolean checkRecipe(ItemStack aStack) {
- ArrayList<ItemStack> tInputList = getStoredInputs();
- for (ItemStack tInput : tInputList) {
- long tVoltage = getMaxInputVoltage();
- byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage));
-
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sWiremillRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], null, new ItemStack[]{tInput});
- if (tRecipe != null) {
- if (tRecipe.isRecipeInputEqual(true, null, new ItemStack[]{tInput})) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
- if (tRecipe.mEUt <= 16) {
- this.mEUt = (tRecipe.mEUt * (1 << tTier - 1) * (1 << tTier - 1));
- this.mMaxProgresstime = (tRecipe.mDuration / (1 << tTier - 1));
- } else {
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = tRecipe.mDuration;
- while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) {
- this.mEUt *= 4;
- this.mMaxProgresstime /= 2;
- }
- }
- if (this.mEUt > 0) {
- this.mEUt = (-this.mEUt);
- }
- this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
- this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0)};
- updateSlots();
- return true;
- }
- }
- }
- return false;
- }
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- int controllerX = aBaseMetaTileEntity.getXCoord();
- int controllerY = aBaseMetaTileEntity.getYCoord();
- int controllerZ = aBaseMetaTileEntity.getZCoord();
-
- byte tSide = getBaseMetaTileEntity().getBackFacing();
- if ((getBaseMetaTileEntity().getAirAtSideAndDistance(getBaseMetaTileEntity().getBackFacing(), 1)) && (getBaseMetaTileEntity().getAirAtSideAndDistance(getBaseMetaTileEntity().getBackFacing(), 2) && (getBaseMetaTileEntity().getAirAtSideAndDistance(getBaseMetaTileEntity().getBackFacing(), 3)))) {
- int tAirCount = 0;
- for (byte i = -1; i < 2; i = (byte) (i + 1)) {
- for (byte j = -1; j < 2; j = (byte) (j + 1)) {
- for (byte k = -1; k < 2; k = (byte) (k + 1)) {
- if (getBaseMetaTileEntity().getAirOffset(i, j, k)) {
- Utils.LOG_INFO("Found Air at: "+(controllerX+i)+" "+(controllerY+k)+" "+(controllerZ+k));
- //if (aBaseMetaTileEntity.getWorld().isRemote){
- //asdasd.renderStandardBlock(ModBlocks.MatterFabricatorEffectBlock, (controllerX+i), (controllerY+k), (controllerZ+k));
- //UtilsRendering.drawBlockInWorld((controllerX+i), (controllerY+k), (controllerZ+k), Color.YELLOW_GREEN);
- //}
- tAirCount++;
- }
- }
- }
- }
- if (tAirCount != 10) {
- Utils.LOG_INFO("False. Air != 10. Air == "+tAirCount);
- //return false;
- }
- for (byte i = 2; i < 6; i = (byte) (i + 1)) {
- //UtilsRendering.drawBlockInWorld((controllerX+i), (controllerY), (controllerZ), Color.LIME_GREEN);
- IGregTechTileEntity tTileEntity;
- if ((null != (tTileEntity = getBaseMetaTileEntity().getIGregTechTileEntityAtSideAndDistance(i, 2))) &&
- (tTileEntity.getFrontFacing() == getBaseMetaTileEntity().getFrontFacing()) && (tTileEntity.getMetaTileEntity() != null) &&
- ((tTileEntity.getMetaTileEntity() instanceof GregtechMetaTileEntityIndustrialSinter))) {
- //Utils.LOG_INFO("False 1");
- return false;
- }
- }
- int tX = getBaseMetaTileEntity().getXCoord();
- int tY = getBaseMetaTileEntity().getYCoord();
- int tZ = getBaseMetaTileEntity().getZCoord();
- for (byte i = -1; i < 2; i = (byte) (i + 1)) {
- for (byte j = -1; j < 2; j = (byte) (j + 1)) {
- if ((i != 0) || (j != 0)) {
- for (byte k = 0; k < 5; k = (byte) (k + 1)) {
- //UtilsRendering.drawBlockInWorld((controllerX+i), (controllerY+k), (controllerZ+k), Color.ORANGE);
- if (((i == 0) || (j == 0)) && ((k == 1) || (k == 2) || (k == 3))) {
- //UtilsRendering.drawBlockInWorld((controllerX+i), (controllerY+k), (controllerZ+k), Color.TOMATO);
- if (getBaseMetaTileEntity().getBlock(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i)) == getCasingBlock() && getBaseMetaTileEntity().getMetaID(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i)) == getCasingMeta()) {
- }
- else if (!addToMachineList(getBaseMetaTileEntity().getIGregTechTileEntity(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i))) && (!addEnergyInputToMachineList(getBaseMetaTileEntity().getIGregTechTileEntity(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i))))) {
- Utils.LOG_INFO("False 2");
- return false;
- }
- }
- else if (getBaseMetaTileEntity().getBlock(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i)) == getCasingBlock() && getBaseMetaTileEntity().getMetaID(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i)) == getCasingMeta()) {
- }
- else {
- Utils.LOG_INFO("False 3");
- return false;
- }
- }
- }
- }
- }
- if (this.mOutputHatches.size() != 0 || this.mInputHatches.size() != 0) {
- Utils.LOG_INFO("Use Busses, Not Hatches for Input/Output.");
- return false;
- }
- if (this.mInputBusses.size() != 2 || this.mOutputBusses.size() != 2) {
- Utils.LOG_INFO("Incorrect amount of Input & Output busses.");
- return false;
- }
- this.mMaintenanceHatches.clear();
- IGregTechTileEntity tTileEntity = getBaseMetaTileEntity().getIGregTechTileEntityAtSideAndDistance(getBaseMetaTileEntity().getBackFacing(), 4);
- if ((tTileEntity != null) && (tTileEntity.getMetaTileEntity() != null)) {
- if ((tTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_Hatch_Maintenance)) {
- this.mMaintenanceHatches.add((GT_MetaTileEntity_Hatch_Maintenance) tTileEntity.getMetaTileEntity());
- ((GT_MetaTileEntity_Hatch) tTileEntity.getMetaTileEntity()).mMachineBlock = getCasingTextureIndex();
- } else {
- Utils.LOG_INFO("Maintenance hatch must be in the middle block on the back.");
- return false;
- }
- }
- if (this.mMaintenanceHatches.size() != 1 || this.mEnergyHatches.size() != 1) {
- Utils.LOG_INFO("Incorrect amount of Maintenance or Energy hatches.");
- return false;
- }
- } else {
- Utils.LOG_INFO("False 5");
- return false;
- }
- Utils.LOG_INFO("True");
- return true;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getDamageToComponent(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getAmountOfOutputs() {
- return 1;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-
- public Block getCasingBlock() {
- return ModBlocks.blockCasingsMisc;
- }
-
-
- public byte getCasingMeta() {
- return 6;
- }
-
-
- public byte getCasingTextureIndex() {
- return 63;
- }
-
- private boolean addToMachineList(IGregTechTileEntity tTileEntity) {
- return ((addMaintenanceToMachineList(tTileEntity, getCasingTextureIndex())) || (addInputToMachineList(tTileEntity, getCasingTextureIndex())) || (addOutputToMachineList(tTileEntity, getCasingTextureIndex())) || (addMufflerToMachineList(tTileEntity, getCasingTextureIndex())));
- }
-
- private boolean addEnergyInputToMachineList(IGregTechTileEntity tTileEntity) {
- return ((addEnergyInputToMachineList(tTileEntity, getCasingTextureIndex())));
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialWireMill.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialWireMill.java
deleted file mode 100644
index 6151d85d7c..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIndustrialWireMill.java
+++ /dev/null
@@ -1,246 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Maintenance;
-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 java.util.ArrayList;
-
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-import net.minecraft.block.Block;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
-
-public class GregtechMetaTileEntityIndustrialWireMill
-extends GT_MetaTileEntity_MultiBlockBase {
- public GregtechMetaTileEntityIndustrialWireMill(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GregtechMetaTileEntityIndustrialWireMill(String aName) {
- super(aName);
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityIndustrialWireMill(this.mName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{
- "Controller Block for the Industrial Wire Factory",
- "Size: 3x5x3 [WxLxH] (Hollow)", "Controller (front centered)",
- "2x Input Bus (side centered)",
- "2x Output Bus (side centered)",
- "1x Energy Hatch (top or bottom centered)",
- "1x Maintenance Hatch (back centered)",
- "Wire Factory Casings for the rest (32 at least!)",
- CORE.GT_Tooltip
- };
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[63], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER)};
- }
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[63]};
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "WireFactory.png");
- }
-
- @Override
- public GT_Recipe.GT_Recipe_Map getRecipeMap() {
- return GT_Recipe.GT_Recipe_Map.sWiremillRecipes;
- }
-
- @Override
- public boolean isCorrectMachinePart(ItemStack aStack) {
- return true;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- @Override
- public boolean checkRecipe(ItemStack aStack) {
- ArrayList<ItemStack> tInputList = getStoredInputs();
- for (ItemStack tInput : tInputList) {
- long tVoltage = getMaxInputVoltage();
- byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage));
-
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sWiremillRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], null, new ItemStack[]{tInput});
- if (tRecipe != null) {
- if (tRecipe.isRecipeInputEqual(true, null, new ItemStack[]{tInput})) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
- if (tRecipe.mEUt <= 16) {
- this.mEUt = (tRecipe.mEUt * (1 << tTier - 1) * (1 << tTier - 1));
- this.mMaxProgresstime = (tRecipe.mDuration / (1 << tTier - 1));
- } else {
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = tRecipe.mDuration;
- while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) {
- this.mEUt *= 4;
- this.mMaxProgresstime /= 2;
- }
- }
- if (this.mEUt > 0) {
- this.mEUt = (-this.mEUt);
- }
- this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
- this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0)};
- updateSlots();
- return true;
- }
- }
- }
- return false;
- }
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- byte tSide = getBaseMetaTileEntity().getBackFacing();
- if ((getBaseMetaTileEntity().getAirAtSideAndDistance(getBaseMetaTileEntity().getBackFacing(), 1)) && (getBaseMetaTileEntity().getAirAtSideAndDistance(getBaseMetaTileEntity().getBackFacing(), 2) && (getBaseMetaTileEntity().getAirAtSideAndDistance(getBaseMetaTileEntity().getBackFacing(), 3)))) {
- int tAirCount = 0;
- for (byte i = -1; i < 2; i = (byte) (i + 1)) {
- for (byte j = -1; j < 2; j = (byte) (j + 1)) {
- for (byte k = -1; k < 2; k = (byte) (k + 1)) {
- if (getBaseMetaTileEntity().getAirOffset(i, j, k)) {
- tAirCount++;
- }
- }
- }
- }
- if (tAirCount != 10) {
- Utils.LOG_INFO("False 1");
- return false;
- }
- for (byte i = 2; i < 6; i = (byte) (i + 1)) {
- IGregTechTileEntity tTileEntity;
- if ((null != (tTileEntity = getBaseMetaTileEntity().getIGregTechTileEntityAtSideAndDistance(i, 2))) &&
- (tTileEntity.getFrontFacing() == getBaseMetaTileEntity().getFrontFacing()) && (tTileEntity.getMetaTileEntity() != null) &&
- ((tTileEntity.getMetaTileEntity() instanceof GregtechMetaTileEntityIndustrialWireMill))) {
- //Utils.LOG_INFO("False 1");
- return false;
- }
- }
- int tX = getBaseMetaTileEntity().getXCoord();
- int tY = getBaseMetaTileEntity().getYCoord();
- int tZ = getBaseMetaTileEntity().getZCoord();
- for (byte i = -1; i < 2; i = (byte) (i + 1)) {
- for (byte j = -1; j < 2; j = (byte) (j + 1)) {
- if ((i != 0) || (j != 0)) {
- for (byte k = 0; k < 5; k = (byte) (k + 1)) {
- if (((i == 0) || (j == 0)) && ((k == 1) || (k == 2) || (k == 3))) {
- if (getBaseMetaTileEntity().getBlock(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i)) == getCasingBlock() && getBaseMetaTileEntity().getMetaID(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i)) == getCasingMeta()) {
- }
- else if (!addToMachineList(getBaseMetaTileEntity().getIGregTechTileEntity(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i))) && (!addEnergyInputToMachineList(getBaseMetaTileEntity().getIGregTechTileEntity(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i))))) {
- Utils.LOG_INFO("False 2");
- return false;
- }
- }
- else if (getBaseMetaTileEntity().getBlock(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i)) == getCasingBlock() && getBaseMetaTileEntity().getMetaID(tX + (tSide == 5 ? k : tSide == 4 ? -k : i), tY + j, tZ + (tSide == 2 ? -k : tSide == 3 ? k : i)) == getCasingMeta()) {
- }
- else {
- Utils.LOG_INFO("False 3");
- return false;
- }
- }
- }
- }
- }
- if (this.mOutputHatches.size() != 0 || this.mInputHatches.size() != 0) {
- Utils.LOG_INFO("Use Busses, Not Hatches for Input/Output.");
- return false;
- }
- if (this.mInputBusses.size() != 2 || this.mOutputBusses.size() != 2) {
- Utils.LOG_INFO("Incorrect amount of Input & Output busses.");
- return false;
- }
- this.mMaintenanceHatches.clear();
- IGregTechTileEntity tTileEntity = getBaseMetaTileEntity().getIGregTechTileEntityAtSideAndDistance(getBaseMetaTileEntity().getBackFacing(), 4);
- if ((tTileEntity != null) && (tTileEntity.getMetaTileEntity() != null)) {
- if ((tTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_Hatch_Maintenance)) {
- this.mMaintenanceHatches.add((GT_MetaTileEntity_Hatch_Maintenance) tTileEntity.getMetaTileEntity());
- ((GT_MetaTileEntity_Hatch) tTileEntity.getMetaTileEntity()).mMachineBlock = getCasingTextureIndex();
- } else {
- Utils.LOG_INFO("Maintenance hatch must be in the middle block on the back.");
- return false;
- }
- }
- if (this.mMaintenanceHatches.size() != 1 || this.mEnergyHatches.size() != 1) {
- Utils.LOG_INFO("Incorrect amount of Maintenance or Energy hatches.");
- return false;
- }
- } else {
- Utils.LOG_INFO("False 5");
- return false;
- }
- Utils.LOG_INFO("True");
- return true;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getDamageToComponent(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getAmountOfOutputs() {
- return 1;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-
- public Block getCasingBlock() {
- return ModBlocks.blockCasingsMisc;
- }
-
-
- public byte getCasingMeta() {
- return 6;
- }
-
-
- public byte getCasingTextureIndex() {
- return 63;
- }
-
- private boolean addToMachineList(IGregTechTileEntity tTileEntity) {
- return ((addMaintenanceToMachineList(tTileEntity, getCasingTextureIndex())) || (addInputToMachineList(tTileEntity, getCasingTextureIndex())) || (addOutputToMachineList(tTileEntity, getCasingTextureIndex())) || (addMufflerToMachineList(tTileEntity, getCasingTextureIndex())));
- }
-
- private boolean addEnergyInputToMachineList(IGregTechTileEntity tTileEntity) {
- return ((addEnergyInputToMachineList(tTileEntity, getCasingTextureIndex())));
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIronBlastFurnace.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIronBlastFurnace.java
deleted file mode 100644
index 3f651f9c3a..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityIronBlastFurnace.java
+++ /dev/null
@@ -1,373 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.objects.GT_ItemStack;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.gregtech.api.gui.CONTAINER_IronBlastFurnace;
-import miscutil.core.xmod.gregtech.api.gui.GUI_IronBlastFurnace;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraftforge.common.util.ForgeDirection;
-
-public class GregtechMetaTileEntityIronBlastFurnace
- extends MetaTileEntity {
- private static final ITexture[] FACING_SIDE = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_SOLID_STEEL)};
- private static final ITexture[] FACING_FRONT = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC_FRONT)};
- private static final ITexture[] FACING_ACTIVE = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_MAGIC_FRONT_ACTIVE)};
- public int mMaxProgresstime = 0;
- public int mUpdate = 30;
- public int mProgresstime = 0;
- public boolean mMachine = false;
- public ItemStack mOutputItem1;
- public ItemStack mOutputItem2;
-
- public GregtechMetaTileEntityIronBlastFurnace(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, 4);
- }
-
- public GregtechMetaTileEntityIronBlastFurnace(String aName) {
- super(aName, 4);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{"Slowly, Skip the Bronze age, Get some Steel!",
- "Multiblock: 3x3x5 hollow with opening on top",
- "40 Iron Plated Bricks required",
- CORE.GT_Tooltip};
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- return aActive ? FACING_ACTIVE : FACING_FRONT;
- }
- return FACING_SIDE;
- }
-
- @Override
- public boolean isSteampowered() {
- return false;
- }
-
- @Override
- public boolean isElectric() {
- return false;
- }
-
- @Override
- public boolean isPneumatic() {
- return false;
- }
-
- @Override
- public boolean isEnetInput() {
- return false;
- }
-
- @Override
- public boolean isEnetOutput() {
- return false;
- }
-
- @Override
- public boolean isInputFacing(byte aSide) {
- return false;
- }
-
- @Override
- public boolean isOutputFacing(byte aSide) {
- return false;
- }
-
- @Override
- public boolean isTeleporterCompatible() {
- return false;
- }
-
- @Override
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- @Override
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return true;
- }
-
- @Override
- public int getProgresstime() {
- return this.mProgresstime;
- }
-
- @Override
- public int maxProgresstime() {
- return this.mMaxProgresstime;
- }
-
- @Override
- public int increaseProgress(int aProgress) {
- this.mProgresstime += aProgress;
- return this.mMaxProgresstime - this.mProgresstime;
- }
-
- @Override
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCoverID) {
- return (GregTech_API.getCoverBehavior(aCoverID.toStack()).isSimpleCover()) && (super.allowCoverOnSide(aSide, aCoverID));
- }
-
- @Override
- public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityIronBlastFurnace(this.mName);
- }
-
- @Override
- public void saveNBTData(NBTTagCompound aNBT) {
- aNBT.setInteger("mProgresstime", this.mProgresstime);
- aNBT.setInteger("mMaxProgresstime", this.mMaxProgresstime);
- if (this.mOutputItem1 != null) {
- NBTTagCompound tNBT = new NBTTagCompound();
- this.mOutputItem1.writeToNBT(tNBT);
- aNBT.setTag("mOutputItem1", tNBT);
- }
- if (this.mOutputItem2 != null) {
- NBTTagCompound tNBT = new NBTTagCompound();
- this.mOutputItem2.writeToNBT(tNBT);
- aNBT.setTag("mOutputItem2", tNBT);
- }
- }
-
- @Override
- public void loadNBTData(NBTTagCompound aNBT) {
- this.mUpdate = 30;
- this.mProgresstime = aNBT.getInteger("mProgresstime");
- this.mMaxProgresstime = aNBT.getInteger("mMaxProgresstime");
- this.mOutputItem1 = GT_Utility.loadItem(aNBT, "mOutputItem1");
- this.mOutputItem2 = GT_Utility.loadItem(aNBT, "mOutputItem2");
- }
-
- @Override
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
- if (aBaseMetaTileEntity.isClientSide()) {
- return true;
- }
- aBaseMetaTileEntity.openGUI(aPlayer);
- return true;
- }
-
- @Override
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new CONTAINER_IronBlastFurnace(aPlayerInventory, aBaseMetaTileEntity);
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_IronBlastFurnace(aPlayerInventory, aBaseMetaTileEntity);
- }
-
- private boolean checkMachine() {
- int xDir = ForgeDirection.getOrientation(getBaseMetaTileEntity().getBackFacing()).offsetX;
- int zDir = ForgeDirection.getOrientation(getBaseMetaTileEntity().getBackFacing()).offsetZ;
- for (int i = -1; i < 2; i++) {
- for (int j = -1; j < 4; j++) { //This is height
- for (int k = -1; k < 2; k++) {
- if ((xDir + i != 0) || (j != 0) || (zDir + k != 0)) {
- if ((i != 0) || (j == -1) || (k != 0)) {
- if ((getBaseMetaTileEntity().getBlockOffset(xDir + i, j, zDir + k) != ModBlocks.blockCasingsMisc) || (getBaseMetaTileEntity().getMetaIDOffset(xDir + i, j, zDir + k) != 10)) {
- return false;
- }
- } else if ((!GT_Utility.arrayContains(getBaseMetaTileEntity().getBlockOffset(xDir + i, j, zDir + k), new Object[]{Blocks.lava, Blocks.flowing_lava, null})) && (!getBaseMetaTileEntity().getAirOffset(xDir + i, j, zDir + k))) {
- return false;
- }
- }
- }
- }
- }
- return true;
- }
-
- @Override
- public void onMachineBlockUpdate() {
- this.mUpdate = 30;
- }
-
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
- if ((aBaseMetaTileEntity.isClientSide()) &&
- (aBaseMetaTileEntity.isActive())) {
- aBaseMetaTileEntity.getWorld().spawnParticle("cloud", aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1) + Math.random(), aBaseMetaTileEntity.getOffsetY(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1) + Math.random(), 0.0D, 0.3D, 0.0D);
- }
- if (aBaseMetaTileEntity.isServerSide()) {
- if (this.mUpdate-- == 0) {
- this.mMachine = checkMachine();
- }
- if (this.mMachine) {
- if (this.mMaxProgresstime > 0) {
- if (++this.mProgresstime >= this.mMaxProgresstime) {
- addOutputProducts();
- this.mOutputItem1 = null;
- this.mOutputItem2 = null;
- this.mProgresstime = 0;
- this.mMaxProgresstime = 0;
- try {
- // GT_Mod.instance.achievements.issueAchievement(aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), "steel");
- } catch (Exception e) {
- }
- }
- } else if (aBaseMetaTileEntity.isAllowedToWork()) {
- checkRecipe();
- }
- }
- aBaseMetaTileEntity.setActive((this.mMaxProgresstime > 0) && (this.mMachine));
- if (aBaseMetaTileEntity.isActive()) {
- if (aBaseMetaTileEntity.getAir(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1))) {
- aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1), Blocks.lava, 1, 2);
- this.mUpdate = 1;
- }
- if (aBaseMetaTileEntity.getAir(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1))) {
- aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1), Blocks.lava, 1, 2);
- this.mUpdate = 1;
- }
- } else {
- if (aBaseMetaTileEntity.getBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1)) == Blocks.lava) {
- aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1), Blocks.air, 0, 2);
- this.mUpdate = 1;
- }
- if (aBaseMetaTileEntity.getBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1)) == Blocks.lava) {
- aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1), Blocks.air, 0, 2);
- this.mUpdate = 1;
- }
- }
- }
- }
-
- private void addOutputProducts() {
- if (this.mOutputItem1 != null) {
- if (this.mInventory[2] == null) {
- this.mInventory[2] = GT_Utility.copy(new Object[]{this.mOutputItem1});
- } else if (GT_Utility.areStacksEqual(this.mInventory[2], this.mOutputItem1)) {
- this.mInventory[2].stackSize = Math.min(this.mOutputItem1.getMaxStackSize(), this.mOutputItem1.stackSize + this.mInventory[2].stackSize);
- }
- }
- if (this.mOutputItem2 != null) {
- if (this.mInventory[3] == null) {
- this.mInventory[3] = GT_Utility.copy(new Object[]{this.mOutputItem2});
- } else if (GT_Utility.areStacksEqual(this.mInventory[3], this.mOutputItem2)) {
- this.mInventory[3].stackSize = Math.min(this.mOutputItem2.getMaxStackSize(), this.mOutputItem2.stackSize + this.mInventory[3].stackSize);
- }
- }
- }
-
- private boolean spaceForOutput(ItemStack aStack1, ItemStack aStack2) {
- if (((this.mInventory[2] == null) || (aStack1 == null) || ((this.mInventory[2].stackSize + aStack1.stackSize <= this.mInventory[2].getMaxStackSize()) && (GT_Utility.areStacksEqual(this.mInventory[2], aStack1)))) && (
- (this.mInventory[3] == null) || (aStack2 == null) || ((this.mInventory[3].stackSize + aStack2.stackSize <= this.mInventory[3].getMaxStackSize()) && (GT_Utility.areStacksEqual(this.mInventory[3], aStack2))))) {
- return true;
- }
- return false;
- }
-
- private boolean checkRecipe() {
- if (!this.mMachine) {
- return false;
- }
- if ((this.mInventory[0] != null) && (this.mInventory[1] != null) && (this.mInventory[0].stackSize >= 1)) {
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[0], "dustIron")) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[0], "ingotIron"))) {
- if ((this.mInventory[1].getItem() == Items.coal) && (this.mInventory[1].stackSize >= 4) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 4*3);
- this.mMaxProgresstime = 36000;
- return true;
- }
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "fuelCoke")) && (this.mInventory[1].stackSize >= 2) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 2*3);
- this.mMaxProgresstime = 4800*5;
- return true;
- }
- if ((this.mInventory[0].stackSize >= 9) && ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCoal")) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCharcoal"))) && (this.mInventory[1].stackSize >= 4) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 9);
- getBaseMetaTileEntity().decrStackSize(1, 4*3);
- this.mMaxProgresstime = 64800*5;
- return true;
- }
- } else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[0], "dustSteel")) {
- if ((this.mInventory[1].getItem() == Items.coal) && (this.mInventory[1].stackSize >= 2) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 2*3);
- this.mMaxProgresstime = 3600*5;
- return true;
- }
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "fuelCoke")) && (this.mInventory[1].stackSize >= 1) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 2L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 1*3);
- this.mMaxProgresstime = 2400*5;
- return true;
- }
- if ((this.mInventory[0].stackSize >= 9) && ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCoal")) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCharcoal"))) && (this.mInventory[1].stackSize >= 2) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 2L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 9);
- getBaseMetaTileEntity().decrStackSize(1, 2*3);
- this.mMaxProgresstime = 32400*5;
- return true;
- }
- } else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[0], "blockIron")) {
- if ((this.mInventory[1].getItem() == Items.coal) && (this.mInventory[1].stackSize >= 36) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 64);
- this.mMaxProgresstime = 64800*9;
- return true;
- }
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "fuelCoke")) && (this.mInventory[1].stackSize >= 18) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 18*3);
- this.mMaxProgresstime = 43200*5;
- return true;
- }
- if (((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCoal")) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCharcoal"))) && (this.mInventory[1].stackSize >= 4) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 4*3);
- this.mMaxProgresstime = 64800*5;
- return true;
- }
- }
- }
- this.mOutputItem1 = null;
- this.mOutputItem2 = null;
- return false;
- }
-
- @Override
- public boolean isGivingInformation() {
- return false;
- }
-
- @Override
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aIndex > 1;
- }
-
- @Override
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- if (aIndex < 2) {
- }
- return !GT_Utility.areStacksEqual(aStack, this.mInventory[0]);
- }
-
- @Override
- public byte getTileEntityBaseType() {
- return 0;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityMassFabricator.java b/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityMassFabricator.java
deleted file mode 100644
index 692ec16922..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntityMassFabricator.java
+++ /dev/null
@@ -1,304 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tileentities.machines.multi;
-
-import gregtech.api.enums.ConfigCategories;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.ITexture;
-import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
-import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_Config;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-
-import miscutil.core.block.ModBlocks;
-import miscutil.core.lib.CORE;
-import miscutil.core.util.Utils;
-import miscutil.core.util.item.UtilsItems;
-import miscutil.core.xmod.gregtech.api.gui.GUI_MultiMachine;
-import miscutil.core.xmod.gregtech.api.util.GregtechRecipe;
-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;
-
-import org.apache.commons.lang3.ArrayUtils;
-
-public class GregtechMetaTileEntityMassFabricator extends GT_MetaTileEntity_MultiBlockBase {
-
- public static int sUUAperUUM = 1;
- public static int sUUASpeedBonus = 4;
- public static int sDurationMultiplier = 3215;
- public static boolean sRequiresUUA = false;
- private int recipeCounter = 0;
- private static Block IC2Glass = Block.getBlockFromItem(UtilsItems.getItem("IC2:blockAlloyGlass"));
- //public FluidStack mFluidOut = Materials.UUMatter.getFluid(1L);
-
- public GregtechMetaTileEntityMassFabricator(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional);
- }
-
- public GregtechMetaTileEntityMassFabricator(String aName) {
- super(aName);
- }
-
- @Override
- public String[] getDescription() {
- return new String[]{
- "Controller Block for the Matter Fabricator",
- "Produces UU-Matter from UU-Amplifier",
- "Size(WxHxD): 5x4x5, Controller (Bottom center)",
- "3x1x3 Matter Generation Coils (Inside bottom 5x1x5 layer)",
- "9x Matter Generation Coils (Centered 3x1x3 area in Bottom layer)",
- "1x Input Hatch (Any bottom layer casing)",
- "1x Output Hatch (Any bottom layer casing)",
- "1x Maintenance Hatch (Any bottom layer casing)",
- "1x Muffler Hatch (Centered 3x1x3 area in Top layer)",
- "1x Energy Hatch (Any bottom layer casing)",
- "24x IC2 Reinforced Glass for the walls",
- "Matter Fabricator Casings for the edges & top (40 at least!)",
- CORE.GT_Tooltip};
- }
-
- @Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
- if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[66],
- new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_LARGE_BOILER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_LARGE_BOILER)};
- }
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[66]};
- }
-
- @Override
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GUI_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "MatterFabricator.png");
- }
-
- @Override
- public void onConfigLoad(GT_Config aConfig) {
- super.onConfigLoad(aConfig);
- sDurationMultiplier = aConfig.get(ConfigCategories.machineconfig, "Massfabricator.UUM_Duration_Multiplier", sDurationMultiplier);
- sUUAperUUM = aConfig.get(ConfigCategories.machineconfig, "Massfabricator.UUA_per_UUM", sUUAperUUM);
- sUUASpeedBonus = aConfig.get(ConfigCategories.machineconfig, "Massfabricator.UUA_Speed_Bonus", sUUASpeedBonus);
- sRequiresUUA = aConfig.get(ConfigCategories.machineconfig, "Massfabricator.UUA_Requirement", sRequiresUUA);
- Materials.UUAmplifier.mChemicalFormula = ("Mass Fabricator Eff/Speed Bonus: x" + sUUASpeedBonus);
- }
-
- @Override
- public boolean checkRecipe(ItemStack aStack) {
- ArrayList<FluidStack> tFluidList = getStoredFluids();
- for (int i = 0; i < tFluidList.size() - 1; i++) {
- for (int j = i + 1; j < tFluidList.size(); j++) {
- if (GT_Utility.areFluidsEqual((FluidStack) tFluidList.get(i), (FluidStack) tFluidList.get(j))) {
- if (((FluidStack) tFluidList.get(i)).amount >= ((FluidStack) tFluidList.get(j)).amount) {
- tFluidList.remove(j--);
- } else {
- tFluidList.remove(i--);
- break;
- }
- }
- }
- }
-
- long tVoltage = getMaxInputVoltage();
- byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage));
- FluidStack[] tFluids = (FluidStack[]) Arrays.copyOfRange(tFluidList.toArray(new FluidStack[tFluidList.size()]), 0, tFluidList.size());
- if (tFluids.length > 0) {
- for(int i = 0;i<tFluids.length;i++){
- GT_Recipe tRecipe = GregtechRecipe.Gregtech_Recipe_Map.sMatterFab2Recipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], new FluidStack[]{tFluids[i]}, new ItemStack[]{});
- if (tRecipe != null) {
- if (tRecipe.isRecipeInputEqual(true, tFluids, new ItemStack[]{})) {
- this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000);
- this.mEfficiencyIncrease = 10000;
- if (tRecipe.mEUt <= 16) {
- this.mEUt = (tRecipe.mEUt * (1 << tTier - 1) * (1 << tTier - 1));
- this.mMaxProgresstime = ((tRecipe.mDuration/**sDurationMultiplier*/) / (1 << tTier - 1));
- } else {
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = (tRecipe.mDuration/**sDurationMultiplier*/);
- while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) {
- this.mEUt *= 4;
- this.mMaxProgresstime /= 2;
- }
- }
- if (this.mEUt > 0) {
- this.mEUt = (-this.mEUt);
- }
- this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
- this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0)};
- this.mOutputFluids = tRecipe.mFluidOutputs.clone();
- ArrayUtils.reverse(mOutputFluids);
- recipeCounter++;
- updateSlots();
- //Utils.LOG_INFO("Recipes Finished: "+recipeCounter);
- return true;
- }
- }
- else {
- Utils.LOG_INFO("Invalid Recipe");
- }
- }
- }
- return false;
- }
-
- @Override
- public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX * 2;
- int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ * 2;
- for (int i = -2; i < 3; i++) {
- for (int j = -2; j < 3; j++) {
- for (int h = 0; h < 4; h++) {
-
- //Utils.LOG_INFO("Logging Variables - xDir:"+xDir+" zDir:"+zDir+" h:"+h+" i:"+i+" j:"+j);
-
- IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j);
- /*if (tTileEntity != Block.getBlockFromItem(UtilsItems.getItem("IC2:blockAlloyGlass"))) {
- Utils.LOG_INFO("h:"+h+" i:"+i+" j:"+j);
- double tX = tTileEntity.getXCoord();
- double tY = tTileEntity.getYCoord();
- double tZ = tTileEntity.getZCoord();
- Utils.LOG_INFO("Found Glass at X:"+tX+" Y:"+tY+" Z:"+tZ);
- //return false;
- }*/
- if ((i != -2 && i != 2) && (j != -2 && j != 2)) {// innerer 3x3 ohne h�he
- if (h == 0) {// innen boden (kantal coils)
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- Utils.LOG_INFO("Matter Generation Coils missings from the bottom layer, inner 3x3.");
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 8) {
- Utils.LOG_INFO("Matter Generation Coils missings from the bottom layer, inner 3x3.");
- return false;
- }
- } else if (h == 3) {// innen decke (ulv casings + input + muffler)
- if ((!addMufflerToMachineList(tTileEntity, 66))) {
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the top layers inner 3x3.");
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 9) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the top layers inner 3x3.");
- return false;
- }
- }
- } else {// innen air
- if (!aBaseMetaTileEntity.getAirOffset(xDir + i, h, zDir + j)) {
- Utils.LOG_INFO("Make sure the inner 3x3 of the Multiblock is Air.");
- return false;
- }
- }
- } else {// Outer 5x5
- if (h == 0) {// au�en boden (controller, output, energy, maintainance, rest ulv casings)
- if ((!addMaintenanceToMachineList(tTileEntity, 66)) && (!addInputToMachineList(tTileEntity, 66)) && (!addOutputToMachineList(tTileEntity, 66)) && (!addEnergyInputToMachineList(tTileEntity, 66))) {
- if ((xDir + i != 0) || (zDir + j != 0)) {//no controller
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the edges of the bottom layer.");
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 9) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the edges of the bottom layer.");
- return false;
- }
- }
- }
- } else {// au�en �ber boden (ulv casings)
- if (h == 1) {
-
- if ((i == -2 || i == 2) && (j == -2 || j == 2)){
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the corners in the second layer.");
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 9) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the corners in the second layer.");
- return false;
- }
- }
-
- else if ((i != -2 || i != 2) && (j != -2 || j != 2)){
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != IC2Glass) {
- Utils.LOG_INFO("Glass Casings Missing from somewhere in the second layer.");
- return false;
- }
- }
- }
- if (h == 2) {
- if ((i == -2 || i == 2) && (j == -2 || j == 2)){
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the corners in the third layer.");
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 9) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the corners in the third layer.");
- return false;
- }
- }
-
- else if ((i != -2 || i != 2) && (j != -2 || j != 2)){
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != IC2Glass) {
- Utils.LOG_INFO("Glass Casings Missing from somewhere in the third layer.");
- return false;
- }
- }
- }
- if (h == 3) {
- if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != ModBlocks.blockCasingsMisc) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the edges on the top layer.");
- return false;
- }
- if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 9) {
- Utils.LOG_INFO("Matter Fabricator Casings Missing from one of the edges on the top layer.");
- return false;
- }
- }
- }
- }
- }
- }
- }
- Utils.LOG_INFO("Multiblock Formed.");
- return true;
- }
-
- @Override
- public boolean isCorrectMachinePart(ItemStack aStack) {
- return true;
- }
-
- @Override
- public int getMaxEfficiency(ItemStack aStack) {
- return 10000;
- }
-
- @Override
- public int getPollutionPerTick(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getDamageToComponent(ItemStack aStack) {
- return 0;
- }
-
- @Override
- public int getAmountOfOutputs() {
- return 1;
- }
-
- @Override
- public boolean explodesOnComponentBreak(ItemStack aStack) {
- return false;
- }
-
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GregtechMetaTileEntityMassFabricator(this.mName);
- }
-
-} \ No newline at end of file
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java b/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java
deleted file mode 100644
index 4d7228c4a5..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_Base.java
+++ /dev/null
@@ -1,168 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tools;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.damagesources.GT_DamageSources;
-
-import java.util.List;
-
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_ToolStats;
-import miscutil.core.xmod.gregtech.api.items.Gregtech_MetaTool;
-import net.minecraft.block.Block;
-import net.minecraft.enchantment.Enchantment;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.stats.AchievementList;
-import net.minecraft.util.DamageSource;
-import net.minecraft.util.EntityDamageSource;
-import net.minecraft.util.IChatComponent;
-import net.minecraftforge.event.world.BlockEvent;
-
-public abstract class TOOL_Gregtech_Base
-implements Interface_ToolStats {
- public static final Enchantment[] FORTUNE_ENCHANTMENT = {Enchantment.fortune};
- public static final Enchantment[] LOOTING_ENCHANTMENT = {Enchantment.looting};
- public static final Enchantment[] ZERO_ENCHANTMENTS = new Enchantment[0];
- public static final int[] ZERO_ENCHANTMENT_LEVELS = new int[0];
-
- @Override
- public int getToolDamagePerBlockBreak() {
- return 100;
- }
-
- @Override
- public int getToolDamagePerDropConversion() {
- return 100;
- }
-
- @Override
- public int getToolDamagePerContainerCraft() {
- return 800;
- }
-
- @Override
- public int getToolDamagePerEntityAttack() {
- return 200;
- }
-
- @Override
- public float getSpeedMultiplier() {
- return 1.0F;
- }
-
- @Override
- public float getMaxDurabilityMultiplier() {
- return 1.0F;
- }
-
- @Override
- public int getHurtResistanceTime(int aOriginalHurtResistance, Entity aEntity) {
- return aOriginalHurtResistance;
- }
-
- @Override
- public String getMiningSound() {
- return null;
- }
-
- @Override
- public String getCraftingSound() {
- return null;
- }
-
- @Override
- public String getEntityHitSound() {
- return null;
- }
-
- @Override
- public String getBreakingSound() {
- return (String) GregTech_API.sSoundList.get(Integer.valueOf(0));
- }
-
- @Override
- public int getBaseQuality() {
- return 0;
- }
-
- @Override
- public boolean canBlock() {
- return false;
- }
-
- @Override
- public boolean isCrowbar() {
- return false;
- }
-
- @Override
- public boolean isWrench() {
- return false;
- }
-
- @Override
- public boolean isWeapon() {
- return false;
- }
-
- @Override
- public boolean isRangedWeapon() {
- return false;
- }
-
- @Override
- public boolean isMiningTool() {
- return true;
- }
-
- @Override
- public DamageSource getDamageSource(EntityLivingBase aPlayer, Entity aEntity) {
- return GT_DamageSources.getCombatDamage((aPlayer instanceof EntityPlayer) ? "player" : "mob", aPlayer, (aEntity instanceof EntityLivingBase) ? getDeathMessage(aPlayer, (EntityLivingBase) aEntity) : null);
- }
-
- public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity) {
- return new EntityDamageSource((aPlayer instanceof EntityPlayer) ? "player" : "mob", aPlayer).func_151519_b(aEntity);
- }
-
- @Override
- public int convertBlockDrops(List<ItemStack> aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) {
- return 0;
- }
-
- @Override
- public ItemStack getBrokenItem(ItemStack aStack) {
- return null;
- }
-
- @Override
- public Enchantment[] getEnchantments(ItemStack aStack) {
- return ZERO_ENCHANTMENTS;
- }
-
- @Override
- public int[] getEnchantmentLevels(ItemStack aStack) {
- return ZERO_ENCHANTMENT_LEVELS;
- }
-
- @Override
- public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer) {
- aPlayer.triggerAchievement(AchievementList.openInventory);
- aPlayer.triggerAchievement(AchievementList.mineWood);
- aPlayer.triggerAchievement(AchievementList.buildWorkBench);
- }
-
- @Override
- public void onStatsAddedToTool(Gregtech_MetaTool aItem, int aID) {
- }
-
- @Override
- public float getNormalDamageAgainstEntity(float aOriginalDamage, Entity aEntity, ItemStack aStack, EntityPlayer aPlayer) {
- return aOriginalDamage;
- }
-
- @Override
- public float getMagicDamageAgainstEntity(float aOriginalDamage, Entity aEntity, ItemStack aStack, EntityPlayer aPlayer) {
- return aOriginalDamage;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_BaseMultiblockItem.java b/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_BaseMultiblockItem.java
deleted file mode 100644
index 421d8d02a8..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_BaseMultiblockItem.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tools;
-
-import gregtech.api.interfaces.IIconContainer;
-import miscutil.core.xmod.gregtech.api.items.Gregtech_MetaTool;
-import net.minecraft.block.Block;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.ChatComponentText;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.util.IChatComponent;
-
-public abstract class TOOL_Gregtech_BaseMultiblockItem extends TOOL_Gregtech_Base {
- @Override
- public abstract float getBaseDamage();
-
- @Override
- public boolean isMinableBlock(Block aBlock, byte aMetaData) {
- return false;
- }
-
- @Override
- public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
- return aIsToolHead ? getTurbineIcon() : null;
- }
-
- @Override
- public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
- return aIsToolHead ? Gregtech_MetaTool.getPrimaryMaterial(aStack).mRGBa : null;
- }
-
- @Override
- public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity) {
- return new ChatComponentText(EnumChatFormatting.GREEN + aPlayer.getCommandSenderName() + EnumChatFormatting.WHITE + " put " + EnumChatFormatting.RED +
- aEntity.getCommandSenderName() + "s" + EnumChatFormatting.WHITE + " head into a turbine");
- }
-
- public abstract IIconContainer getTurbineIcon();
-
- @Override
- public abstract float getSpeedMultiplier();
-
- @Override
- public abstract float getMaxDurabilityMultiplier();
-
- @Override
- public ItemStack getBrokenItem(ItemStack aStack) {
- return null;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java b/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java
deleted file mode 100644
index f50e91c90e..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_Choocher.java
+++ /dev/null
@@ -1,198 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tools;
-
-import gregtech.GT_Mod;
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.IIconContainer;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Utility;
-
-import java.util.Arrays;
-import java.util.List;
-
-import miscutil.core.xmod.gregtech.api.items.Gregtech_MetaTool;
-import miscutil.core.xmod.gregtech.api.items.types.ToolType_HardHammer;
-import miscutil.core.xmod.gregtech.api.items.types.ToolType_Wrench;
-import net.minecraft.block.Block;
-import net.minecraft.block.material.Material;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.monster.EntityIronGolem;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.item.ItemStack;
-import net.minecraft.stats.AchievementList;
-import net.minecraft.util.ChatComponentText;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.util.IChatComponent;
-import net.minecraftforge.event.world.BlockEvent;
-
-public class TOOL_Gregtech_Choocher
- extends TOOL_Gregtech_Base {
-
- public static final List<String> mEffectiveList = Arrays.asList(new String[]{EntityIronGolem.class.getName(), "EntityTowerGuardian"});
-
-
- @Override
- public float getNormalDamageAgainstEntity(float aOriginalDamage, Entity aEntity, ItemStack aStack, EntityPlayer aPlayer) {
- String tName = aEntity.getClass().getName();
- tName = tName.substring(tName.lastIndexOf(".") + 1);
- return (mEffectiveList.contains(tName)) || (tName.contains("Golem")) ? aOriginalDamage * 2.0F : aOriginalDamage;
- }
-
- @Override
- public int getToolDamagePerBlockBreak() {
- return 50;
- }
-
- @Override
- public int getToolDamagePerDropConversion() {
- return 100;
- }
-
- @Override
- public int getToolDamagePerContainerCraft() {
- return 400;
- }
-
- @Override
- public int getToolDamagePerEntityAttack() {
- return 100;
- }
-
- @Override
- public int getBaseQuality() {
- return 0;
- }
-
- @Override
- public float getBaseDamage() {
- return 4.0F;
- }
-
- @Override
- public float getSpeedMultiplier() {
- return 0.85F;
- }
-
- @Override
- public float getMaxDurabilityMultiplier() {
- return 1.2F;
- }
-
- @Override
- public String getCraftingSound() {
- return null;
- }
-
- @Override
- public String getEntityHitSound() {
- return null;
- }
-
- @Override
- public String getBreakingSound() {
- return (String) GregTech_API.sSoundList.get(Integer.valueOf(0));
- }
-
- @Override
- public String getMiningSound() {
- return null;
- }
-
- @Override
- public boolean canBlock() {
- return true;
- }
-
- @Override
- public boolean isWrench(){
- return true;
- }
-
- @Override
- public boolean isCrowbar() {
- return false;
- }
-
- @Override
- public boolean isWeapon() {
- return true;
- }
-
- @Override
- public boolean isMinableBlock(Block aBlock, byte aMetaData) {
- String tTool = aBlock.getHarvestTool(aMetaData);
- return ((tTool != null) && ((tTool.equals("sword")) || (tTool.equals("wrench")) || (tTool.equals("hammer")) || (tTool.equals("pickaxe")))) || (aBlock.getMaterial() == Material.rock) || (aBlock.getMaterial() == Material.glass) || (aBlock.getMaterial() == Material.piston) || (aBlock == Blocks.hopper) || (aBlock == Blocks.dispenser) || (aBlock == Blocks.dropper) || (aBlock.getMaterial() == Material.ice) || (aBlock.getMaterial() == Material.packedIce) || (GT_Recipe.GT_Recipe_Map.sHammerRecipes.containsInput(new ItemStack(aBlock, 1, aMetaData))) || (aBlock.getMaterial() == Material.sand) || (aBlock.getMaterial() == Material.grass) || (aBlock.getMaterial() == Material.ground) || (aBlock.getMaterial() == Material.snow) || (aBlock.getMaterial() == Material.clay) || (aBlock.getMaterial() == Material.leaves) || (aBlock.getMaterial() == Material.vine) || (aBlock.getMaterial() == Material.wood) || (aBlock.getMaterial() == Material.cactus) || (aBlock.getMaterial() == Material.circuits) || (aBlock.getMaterial() == Material.gourd) || (aBlock.getMaterial() == Material.web) || (aBlock.getMaterial() == Material.cloth) || (aBlock.getMaterial() == Material.carpet) || (aBlock.getMaterial() == Material.plants) || (aBlock.getMaterial() == Material.cake) || (aBlock.getMaterial() == Material.tnt) || (aBlock.getMaterial() == Material.sponge);
- }
-
- @Override
- public int convertBlockDrops(List<ItemStack> aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent) {
- int rConversions = 0;
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{new ItemStack(aBlock, 1, aMetaData)});
- if ((tRecipe == null) || (aBlock.hasTileEntity(aMetaData))) {
- for (ItemStack tDrop : aDrops) {
- tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(null, true, 2147483647L, null, new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{tDrop})});
- if (tRecipe != null) {
- ItemStack tHammeringOutput = tRecipe.getOutput(0);
- if (tHammeringOutput != null) {
- rConversions += tDrop.stackSize;
- tDrop.stackSize *= tHammeringOutput.stackSize;
- tHammeringOutput.stackSize = tDrop.stackSize;
- GT_Utility.setStack(tDrop, tHammeringOutput);
- }
- }
- }
- } else {
- aDrops.clear();
- aDrops.add(tRecipe.getOutput(0));
- rConversions++;
- }
- return rConversions;
- }
-
- @Override
- public ItemStack getBrokenItem(ItemStack aStack) {
- return null;
- }
-
- @Override
- public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
- return aIsToolHead ? Textures.ItemIcons.WIRE_CUTTER : Textures.ItemIcons.VOID;
- }
-
-
-/* @Override
- public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
- return aIsToolHead ? Textures.class..ItemIcons.SKOOKUMCHOOCHER : null;
- }
-*/
- //
-
- @Override
- public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
- return aIsToolHead ? Gregtech_MetaTool.getPrimaryMaterial(aStack).mRGBa : null;
- }
-
- @Override
- public void onStatsAddedToTool(Gregtech_MetaTool aItem, int aID) {
- aItem.addItemBehavior(aID, new ToolType_Wrench(150));
- aItem.addItemBehavior(aID, new ToolType_HardHammer(1, 1250));
- }
-
- @Override
- public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer) {
- super.onToolCrafted(aStack, aPlayer);
- aPlayer.triggerAchievement(AchievementList.buildSword);
- try {
- GT_Mod.instance.achievements.issueAchievement(aPlayer, "tools");
- GT_Mod.instance.achievements.issueAchievement(aPlayer, "unitool");
- } catch (Exception e) {
- }
- }
-
- @Override
- public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity) {
- return new ChatComponentText(EnumChatFormatting.RED + aEntity.getCommandSenderName() + EnumChatFormatting.WHITE + " has been Choochered by " + EnumChatFormatting.GREEN + aPlayer.getCommandSenderName() + EnumChatFormatting.WHITE);
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_MaxEfficiencyMultiBlockItem.java b/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_MaxEfficiencyMultiBlockItem.java
deleted file mode 100644
index c1c5c92212..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/common/tools/TOOL_Gregtech_MaxEfficiencyMultiBlockItem.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package miscutil.core.xmod.gregtech.common.tools;
-
-import gregtech.api.enums.Textures;
-import gregtech.api.interfaces.IIconContainer;
-
-public class TOOL_Gregtech_MaxEfficiencyMultiBlockItem extends TOOL_Gregtech_BaseMultiblockItem {
- @Override
- public float getSpeedMultiplier() {
- return 4.0F;
- }
-
- @Override
- public float getMaxDurabilityMultiplier() {
- return 4.0F;
- }
-
- @Override
- public float getBaseDamage() {
- return 3.0F;
- }
-
- @Override
- public IIconContainer getTurbineIcon() {
- return Textures.ItemIcons.TURBINE_HUGE;
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Block.java b/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Block.java
deleted file mode 100644
index 409be09a1f..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Block.java
+++ /dev/null
@@ -1,107 +0,0 @@
-package miscutil.core.xmod.gregtech.loaders;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.ConfigCategories;
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.ItemList;
-import gregtech.api.enums.SubTag;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_OreRecipeRegistrator;
-import miscutil.core.xmod.gregtech.api.util.GregtechOreDictUnificator;
-import net.minecraft.item.ItemStack;
-
-public class Processing_Block implements Interface_OreRecipeRegistrator {
-
- private boolean isGem = false;
-
- public Processing_Block() {
- GregtechOrePrefixes.block.add(this);
- }
-
- @Override
- public void registerOre(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- Utils.LOG_INFO("Processing Blocks");
- GT_Values.RA.addCutterRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GregtechOreDictUnificator.get(GregtechOrePrefixes.plate, aMaterial, 9L), null, (int) Math.max(aMaterial.getMass() * 10L, 1L), 30);
-
- ItemStack tStack1 = GregtechOreDictUnificator.get(GregtechOrePrefixes.ingot, aMaterial, 1L);
- ItemStack tStack2 = GregtechOreDictUnificator.get(GregtechOrePrefixes.gem, aMaterial, 1L);
- ItemStack tStack3 = GregtechOreDictUnificator.get(GregtechOrePrefixes.dust, aMaterial, 1L);
-
- GT_ModHandler.removeRecipe(new ItemStack[]{GT_Utility.copyAmount(1L, new Object[]{aStack})});
-
- if (tStack1 != null) {
- GT_ModHandler.removeRecipe(new ItemStack[]{tStack1, tStack1, tStack1, tStack1, tStack1, tStack1, tStack1, tStack1, tStack1});
- }
- if (tStack2 != null) {
- GT_ModHandler.removeRecipe(new ItemStack[]{tStack2, tStack2, tStack2, tStack2, tStack2, tStack2, tStack2, tStack2, tStack2});
- }
- if (tStack3 != null) {
- GT_ModHandler.removeRecipe(new ItemStack[]{tStack3, tStack3, tStack3, tStack3, tStack3, tStack3, tStack3, tStack3, tStack3});
- }
- if (aMaterial.mStandardMoltenFluid != null) {
- GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Block.get(0L, new Object[0]), aMaterial.getMolten(1296L), GregtechOreDictUnificator.get(GregtechOrePrefixes.block, aMaterial, 1L), 288, 8);
- }
- if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.storageblockcrafting, GregtechOrePrefixes.block.get(aMaterial).toString(), false)) {
- if ((tStack1 == null) && (tStack2 == null) && (tStack3 != null)){
- GT_ModHandler.addCraftingRecipe(GregtechOreDictUnificator.get(GregtechOrePrefixes.block, aMaterial, 1L), new Object[]{"XXX", "XXX", "XXX", Character.valueOf('X'), GregtechOrePrefixes.dust.get(aMaterial)});
- }
- if (tStack2 != null){
- GT_ModHandler.addCraftingRecipe(GregtechOreDictUnificator.get(GregtechOrePrefixes.block, aMaterial, 1L), new Object[]{"XXX", "XXX", "XXX", Character.valueOf('X'), GregtechOrePrefixes.gem.get(aMaterial)});
- }
- if (tStack1 != null) {
- GT_ModHandler.addCraftingRecipe(GregtechOreDictUnificator.get(GregtechOrePrefixes.block, aMaterial, 1L), new Object[]{"XXX", "XXX", "XXX", Character.valueOf('X'), GregtechOrePrefixes.ingot.get(aMaterial)});
- }
- }
-
- if (aMaterial.contains(SubTag.CRYSTAL) && !aMaterial.contains(SubTag.METAL)){
- isGem = true;
- }
- else {
- isGem = false;
- }
- //Ingot
- if (tStack1 != null) {
- tStack1.stackSize = 9;
- }
- //Gem
- if (tStack2 != null && !isGem) {
- tStack2.stackSize = 9;
- }
- else if (tStack2 != null && isGem) {
- tStack2.stackSize = 0;
- }
- //Dust
- if (tStack3 != null && !isGem) {
- tStack3.stackSize = 9;
- }
- else if (tStack3 != null && isGem) {
- tStack3.stackSize = 0;
- }
-
- //Gems in FORGE HAMMER
- if (tStack2 != null && !isGem) {
- tStack2.stackSize = 9;
- GT_Values.RA.addForgeHammerRecipe(aStack, tStack2, 100, 24);
- }
- else if (tStack2 != null && isGem) {
- tStack2.stackSize = 9;
- GT_Values.RA.addForgeHammerRecipe(aStack, tStack2, 100, 24);
- tStack2.stackSize = 0;
- }
-
-
- if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.storageblockdecrafting, GregtechOrePrefixes.block.get(aMaterial).toString(), tStack2 != null)) {
- if (tStack3 != null)
- GT_ModHandler.addShapelessCraftingRecipe(tStack3, new Object[]{GregtechOrePrefixes.block.get(aMaterial)});
- if (tStack2 != null)
- GT_ModHandler.addShapelessCraftingRecipe(tStack2, new Object[]{GregtechOrePrefixes.block.get(aMaterial)});
- if (tStack1 != null) {
- GT_ModHandler.addShapelessCraftingRecipe(tStack1, new Object[]{GregtechOrePrefixes.block.get(aMaterial)});
- }
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_HotIngots.java b/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_HotIngots.java
deleted file mode 100644
index 070ce08ce0..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_HotIngots.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package miscutil.core.xmod.gregtech.loaders;
-
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_OreRecipeRegistrator;
-import net.minecraft.item.ItemStack;
-
-public class Processing_HotIngots implements Interface_OreRecipeRegistrator {
- public Processing_HotIngots() {
- Utils.LOG_INFO("Generating Hot Ingot.");
- GregtechOrePrefixes.ingotHot.add(this);
- }
-
- @Override
- public void registerOre(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- GT_Values.RA.addVacuumFreezerRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 3L, 1L));
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Ingot1.java b/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Ingot1.java
deleted file mode 100644
index cd1db13c57..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Ingot1.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package miscutil.core.xmod.gregtech.loaders;
-
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.ItemList;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.enums.SubTag;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_OreRecipeRegistrator;
-import miscutil.core.xmod.gregtech.api.util.GregtechRecipeRegistrator;
-import net.minecraft.item.ItemStack;
-
-public class Processing_Ingot1 implements Interface_OreRecipeRegistrator {
- public Processing_Ingot1() {
- GregtechOrePrefixes.ingot.add(this);
- }
-
- @Override
- public void registerOre(GregtechOrePrefixes aPrefix, GT_Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- Utils.LOG_INFO("Processing Ingots");
- if (aMaterial.mFuelPower > 0) {
- GT_Values.RA.addFuel(GT_Utility.copyAmount(1L, new Object[]{aStack}), null, aMaterial.mFuelPower, aMaterial.mFuelType);
- }
- GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(16L, new Object[]{aStack}), ItemList.Crate_Empty.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.crateGtIngot, aMaterial, 1L), 100, 8);
- GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.crateGtIngot, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 16L), ItemList.Crate_Empty.get(1L, new Object[0]), 800, 1);
-
- if (aMaterial.mStandardMoltenFluid != null)
- GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ingot.get(0L, new Object[0]), aMaterial.getMolten(144L), GT_OreDictUnificator.get(OrePrefixes.ingot, aMaterial, 1L), 32, 8);
- GregtechRecipeRegistrator.registerReverseFluidSmelting(aStack, aMaterial, aPrefix.mMaterialAmount, null);
- GregtechRecipeRegistrator.registerReverseMacerating(aStack, aMaterial, aPrefix.mMaterialAmount, null, null, null, false);
- if (aMaterial.mSmeltInto.mArcSmeltInto != aMaterial) {
- GregtechRecipeRegistrator.registerReverseArcSmelting(GT_Utility.copyAmount(1L, new Object[]{aStack}), aMaterial, aPrefix.mMaterialAmount, null, null, null);
- }
- if (!aMaterial.contains(SubTag.NO_SMASHING)) {
- GT_Values.RA.addWiremillRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_Utility.copy(new Object[]{GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 2L), GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 8L)}), 100, 4);
- GT_Values.RA.addForgeHammerRecipe(GT_Utility.copyAmount(2L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L), (int) Math.max(aMaterial.getMass(), 1L), 16);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 1L, 1L), 24);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(2L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 2L, 1L), 96);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(3L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 3L, 1L), 96);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(4L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 4L, 1L), 96);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(5L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 5L, 1L), 96);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(9L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 9L, 1L), 96);
- }
-
-
- if (!GregtechOrePrefixes.block.isIgnored(aMaterial))
- GT_ModHandler.addCompressionRecipe(GT_Utility.copyAmount(9L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.block, aMaterial, 1L));
- if (!aMaterial.contains(SubTag.NO_WORKING))
- GT_Values.RA.addLatheRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.stick, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial.mMacerateInto, 2L), (int) Math.max(aMaterial.getMass() * 5L, 1L), 16);
- if (!aMaterial.contains(SubTag.NO_SMELTING)) {
- GT_Values.RA.addAlloySmelterRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), ItemList.Shape_Mold_Nugget.get(0L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.nugget, aMaterial, 9L), 100, 1);
- if ((GT_ModHandler.getSmeltingOutput(aStack, false, null) == null) && (GT_OreDictUnificator.get(OrePrefixes.nugget, aMaterial.mSmeltInto, 1L) != null) && (!GT_ModHandler.addSmeltingRecipe(aStack, GT_OreDictUnificator.get(OrePrefixes.nugget, aMaterial.mSmeltInto, 9L))))
- GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.nugget, aMaterial.mSmeltInto, 9L), new Object[]{aOreDictName});
- }
- ItemStack tStack;
- if ((null != (tStack = GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L))) && (
- (aMaterial.mBlastFurnaceRequired) || (aMaterial.contains(SubTag.NO_SMELTING)))) {
- GT_ModHandler.removeFurnaceSmelting(tStack);
- }
-
- GregtechRecipeRegistrator.registerUsagesForGT_Materials(GT_Utility.copyAmount(1L, new Object[]{aStack}), OrePrefixes.plate.get(aMaterial).toString(), !aMaterial.contains(SubTag.NO_SMASHING));
-
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Plate1.java b/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Plate1.java
deleted file mode 100644
index a63a938310..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Plate1.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package miscutil.core.xmod.gregtech.loaders;
-
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.ItemList;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.enums.GregtechOrePrefixes;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.Interface_OreRecipeRegistrator;
-import net.minecraft.item.ItemStack;
-
-public class Processing_Plate1 implements Interface_OreRecipeRegistrator {
- public Processing_Plate1() {
- GregtechOrePrefixes.plate.add(this);
- }
-
- @Override
- public void registerOre(GregtechOrePrefixes aPrefix, GregtechOrePrefixes.GT_Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) {
- Utils.LOG_INFO("Processing Plates");
- GT_ModHandler.removeRecipeByOutput(aStack);
- GT_ModHandler.removeRecipe(new ItemStack[]{aStack});
-
- GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(16L, new Object[]{aStack}), ItemList.Crate_Empty.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.crateGtPlate, aMaterial, 1L), 100, 8);
- GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.crateGtPlate, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 16L), ItemList.Crate_Empty.get(1L, new Object[0]), 800, 1);
-
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L), GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial, 1L), Materials.Tin.getMolten(32), GT_OreDictUnificator.get(OrePrefixes.rotor, aMaterial, 1L), 240, 24);
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L), GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial, 1L), Materials.Lead.getMolten(48), GT_OreDictUnificator.get(OrePrefixes.rotor, aMaterial, 1L), 240, 24);
- GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 4L), GT_OreDictUnificator.get(OrePrefixes.ring, aMaterial, 1L), Materials.SolderingAlloy.getMolten(16), GT_OreDictUnificator.get(OrePrefixes.rotor, aMaterial, 1L), 240, 24);
-
-
-
- if (aMaterial.mStandardMoltenFluid != null) {
- GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Plate.get(0L, new Object[0]), aMaterial.getMolten(144L), GT_OreDictUnificator.get(OrePrefixes.plate, aMaterial, 1L), 32, 8);
- }
-
-
- if (aMaterial.mFuelPower > 0)
- GT_Values.RA.addFuel(GT_Utility.copyAmount(1L, new Object[]{aStack}), null, aMaterial.mFuelPower, aMaterial.mFuelType);
- GT_Utility.removeSimpleIC2MachineRecipe(GT_Utility.copyAmount(9L, new Object[]{aStack}), GT_ModHandler.getCompressorRecipeList(), GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L));
- GT_Values.RA.addImplosionRecipe(GT_Utility.copyAmount(2L, new Object[]{aStack}), 2, GT_OreDictUnificator.get(OrePrefixes.compressed, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L));
- if (!aMaterial.contains(gregtech.api.enums.SubTag.NO_WORKING)) {
- GT_Values.RA.addLatheRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.lens, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, aMaterial, 1L), (int) Math.max(aMaterial.getMass() / 2L, 1L), 16);
- }
- if (!aMaterial.contains(gregtech.api.enums.SubTag.NO_SMASHING)) {
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, 4L), (int) Math.max(aMaterial.getMass() * 1L, 1L), 24);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(2L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateDouble, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 2L, 1L), 96);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(3L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateTriple, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 3L, 1L), 96);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(4L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 4L, 1L), 96);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(5L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateQuintuple, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 5L, 1L), 96);
- GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(9L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plateDense, aMaterial, 1L), (int) Math.max(aMaterial.getMass() * 9L, 1L), 96);
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Textures_Items.java b/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Textures_Items.java
deleted file mode 100644
index 584e7455b8..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/loaders/Processing_Textures_Items.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package miscutil.core.xmod.gregtech.loaders;
-
-import miscutil.core.xmod.gregtech.api.enums.GregtechTextures.ItemIcons.CustomIcon;
-
-public class Processing_Textures_Items {
-
- public static final CustomIcon itemSkookumChoocher = new CustomIcon("iconsets/SKOOKUMCHOOCHER");
-
-}
-
diff --git a/src/Java/miscutil/core/xmod/gregtech/recipes/GregtechRecipeAdder.java b/src/Java/miscutil/core/xmod/gregtech/recipes/GregtechRecipeAdder.java
deleted file mode 100644
index 0e422f32d3..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/recipes/GregtechRecipeAdder.java
+++ /dev/null
@@ -1,136 +0,0 @@
-package miscutil.core.xmod.gregtech.recipes;
-
-import gregtech.api.GregTech_API;
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.gregtech.api.interfaces.internal.IGregtech_RecipeAdder;
-import miscutil.core.xmod.gregtech.api.util.GregtechRecipe;
-import miscutil.core.xmod.gregtech.recipes.machines.RECIPEHANDLER_CokeOven;
-import miscutil.core.xmod.gregtech.recipes.machines.RECIPEHANDLER_MatterFabricator;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidStack;
-
-public class GregtechRecipeAdder implements IGregtech_RecipeAdder {
-
-
-
- @Override
- public boolean addCokeOvenRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt) {
- try {
- try {
- RECIPEHANDLER_CokeOven.debug1();
- if (((aInput1 == null) /*&& (aFluidInput == null)*/) || ((aOutput == null) || (aFluidOutput == null))) {
- Utils.LOG_WARNING("aInput1:"+aInput1.toString()+" aInput2:"+aInput2.toString()+" aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aOutput:"+aOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Something was null, returning false");
- return false;
- }
-
- } catch (NullPointerException e){e.getStackTrace();}
- try {
- RECIPEHANDLER_CokeOven.debug2(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aDuration, aEUt);
- if ((aOutput != null) && ((aDuration = GregTech_API.sRecipeFile.get("cokeoven", aOutput, aDuration)) <= 0)) {
- Utils.LOG_WARNING("aInput1:"+aInput1.toString()+" aInput2:"+aInput2.toString()+" aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aOutput:"+aOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Something was null, returning false");
- return false;
- }
-
- } catch (NullPointerException e){e.getStackTrace();}
- try {
- RECIPEHANDLER_CokeOven.debug3(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aDuration, aEUt);
- if ((aFluidOutput == null) && ((aDuration = GregTech_API.sRecipeFile.get("cokeoven", aFluidOutput.getFluid().getName(), aDuration)) <= 0)) {
- Utils.LOG_WARNING("aInput1:"+aInput1.toString()+" aInput2:"+aInput2.toString()+" aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aOutput:"+aOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Something was null, returning false");
- return false;
- }
-
- } catch (NullPointerException e){e.getStackTrace();}
- try {
- RECIPEHANDLER_CokeOven.debug4(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aDuration, aEUt);
- if (aFluidInput == null){
- GregtechRecipe.Gregtech_Recipe_Map.sCokeOvenRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput}, null, null, null, new FluidStack[]{aFluidOutput}, aDuration, aEUt, 0);
- }
- else {
- GregtechRecipe.Gregtech_Recipe_Map.sCokeOvenRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aDuration, aEUt, 0);
- }
- RECIPEHANDLER_CokeOven.debug5(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, aDuration, aEUt);
-
- return true;
-
- } catch (NullPointerException e){
- return false;
- }
- } catch (Throwable e){
- Utils.LOG_WARNING("aInput1:"+aInput1.toString()+" aInput2:"+aInput2.toString()+" aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aOutput:"+aOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Failed.");
- e.getStackTrace();
- return false;
- }
- }
-
- @Override
- public boolean addMattrFabricatorRecipe(FluidStack aFluidInput, FluidStack aFluidOutput, int aDuration, int aEUt) {
- try {
- try {
- RECIPEHANDLER_MatterFabricator.debug1();
- if (aFluidOutput == null) {
- Utils.LOG_WARNING("aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Something was null, returning false");
- return false;
- }
-
- } catch (NullPointerException e){e.getStackTrace();}
- try {
- RECIPEHANDLER_MatterFabricator.debug2(aFluidInput, aFluidOutput, aDuration, aEUt);
- if ((aFluidOutput == null)/* && ((aDuration = GregTech_API.sRecipeFile.get("matterfab", null, aDuration)) <= 0)*/) {
- Utils.LOG_WARNING("aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Something was null, returning false");
- return false;
- }
-
- } catch (NullPointerException e){e.getStackTrace();}
- /*try {
-
- RECIPEHANDLER_MatterFabricator.debug3(aFluidInput, aFluidOutput, aDuration, aEUt);
- if ((aFluidOutput == null) && ((aDuration = GregTech_API.sRecipeFile.get("matterfab", aFluidOutput.getFluid().getName(), aDuration)) <= 0)) {
- Utils.LOG_WARNING("aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Something was null, returning false");
- return false;
- }
-
- } catch (NullPointerException e){e.getStackTrace();}*/
- try {
- RECIPEHANDLER_MatterFabricator.debug4(aFluidInput, aFluidOutput, aDuration, aEUt);
- if (aFluidInput == null){
- //GregtechRecipe.Gregtech_Recipe_Map.sMatterFabRecipes.addRecipe(true, null, new FluidStack[]{aFluidOutput}, aDuration, aEUt, 0);
- GregtechRecipe.Gregtech_Recipe_Map.sMatterFab2Recipes.addRecipe(true, null, null, null, null, new FluidStack[]{aFluidOutput}, aDuration, aEUt, 0);
- }
- else {
- //GregtechRecipe.Gregtech_Recipe_Map.sMatterFabRecipes.addRecipe(true, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aDuration, aEUt, 0);
- GregtechRecipe.Gregtech_Recipe_Map.sMatterFab2Recipes.addRecipe(true, null, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aDuration, aEUt, 0);
- }
- RECIPEHANDLER_MatterFabricator.debug5(aFluidInput, aFluidOutput, aDuration, aEUt);
-
- return true;
-
- } catch (NullPointerException e){
- return false;
- }
- } catch (Throwable e){
- Utils.LOG_WARNING("aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Failed.");
- e.getStackTrace();
- return false;
- }
- }
-
- @Override
- public boolean addFuel(ItemStack aInput1, ItemStack aOutput1, int aEU, int aType) {
- if (aInput1 == null) {
- Utils.LOG_INFO("Fuel Input is Invalid.");
- return false;
- }
- new GregtechRecipe(aInput1, aOutput1, GregTech_API.sRecipeFile.get("fuel_" + aType, aInput1, aEU), aType);
- return true;
- }
-
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/recipes/machines/RECIPEHANDLER_CokeOven.java b/src/Java/miscutil/core/xmod/gregtech/recipes/machines/RECIPEHANDLER_CokeOven.java
deleted file mode 100644
index cbb17b009f..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/recipes/machines/RECIPEHANDLER_CokeOven.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package miscutil.core.xmod.gregtech.recipes.machines;
-
-import miscutil.core.util.Utils;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidStack;
-
-public class RECIPEHANDLER_CokeOven {
-
- public static void debug1(){
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("Walking Through CokeOven Recipe Creation.");
- Utils.LOG_WARNING("My name is Ralph and I will be your humble host.");
- }
- public static void debug2(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt){
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("Taking a step forward.");
- Utils.LOG_WARNING("aInput1 == null && aFluidInput == null || aOutput == null && aFluidOutput == null");
- Utils.LOG_WARNING("aInput1:"+aInput1.toString()+" aInput2:"+aInput2.toString()+" aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aOutput:"+aOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Passed.");
- }
- public static void debug3(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt){
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("Taking a step forward.");
- Utils.LOG_WARNING("(aOutput != null) && ((aDuration = GregTech_API.sRecipeFile.get(cokeoven, aOutput, aDuration)) <= 0)");
- Utils.LOG_WARNING("aInput1:"+aInput1.toString()+" aInput2:"+aInput2.toString()+" aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aOutput:"+aOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Passed.");
- }
- public static void debug4(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt){
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("Taking a step forward.");
- Utils.LOG_WARNING("(aFluidOutput != null) && ((aDuration = GregTech_API.sRecipeFile.get(cokeoven, aFluidOutput.getFluid().getName(), aDuration)) <= 0)");
- Utils.LOG_WARNING("aInput1:"+aInput1.toString()+" aInput2:"+aInput2.toString()+" aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aOutput:"+aOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Passed.");
- Utils.LOG_WARNING("aInput1:"+aInput1.toString()+" aInput2:"+aInput2.toString()+" aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aOutput:"+aOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
-
- }
- public static void debug5(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt){
- Utils.LOG_INFO("Successfully added a Coke Oven recipe for: "+aOutput.getDisplayName()+" & "+aFluidOutput.getFluid().getName()+", Using "+aInput1.getDisplayName()+" & "+aInput2.getDisplayName()+" & liquid "+aFluidInput.getFluid().getName()+". This takes "+(aDuration/20)+" seconds for "+aEUt+"eu/t.");
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("==================================================================================");
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/gregtech/recipes/machines/RECIPEHANDLER_MatterFabricator.java b/src/Java/miscutil/core/xmod/gregtech/recipes/machines/RECIPEHANDLER_MatterFabricator.java
deleted file mode 100644
index 053f268083..0000000000
--- a/src/Java/miscutil/core/xmod/gregtech/recipes/machines/RECIPEHANDLER_MatterFabricator.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package miscutil.core.xmod.gregtech.recipes.machines;
-
-import miscutil.core.util.Utils;
-import net.minecraftforge.fluids.FluidStack;
-
-public class RECIPEHANDLER_MatterFabricator {
-
- public static void debug1(){
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("Walking Through Matter Fabrication Recipe Creation.");
- Utils.LOG_WARNING("My name is Ralph and I will be your humble host.");
- }
- public static void debug2(FluidStack aFluidInput, FluidStack aFluidOutput, int aDuration, int aEUt){
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("Taking a step forward.");
- Utils.LOG_WARNING("aInput1 == null && aFluidInput == null || aOutput == null && aFluidOutput == null");
- Utils.LOG_WARNING("aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Passed.");
- }
- public static void debug3(FluidStack aFluidInput, FluidStack aFluidOutput, int aDuration, int aEUt){
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("Taking a step forward.");
- Utils.LOG_WARNING("(aOutput != null) && ((aDuration = GregTech_API.sRecipeFile.get(cokeoven, aOutput, aDuration)) <= 0)");
- Utils.LOG_WARNING("aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Passed.");
- }
- public static void debug4(FluidStack aFluidInput, FluidStack aFluidOutput, int aDuration, int aEUt){
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("Taking a step forward.");
- Utils.LOG_WARNING("(aFluidOutput != null) && ((aDuration = GregTech_API.sRecipeFile.get(cokeoven, aFluidOutput.getFluid().getName(), aDuration)) <= 0)");
- Utils.LOG_WARNING("aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
- Utils.LOG_WARNING("Passed.");
- Utils.LOG_WARNING("aFluidInput:"+aFluidInput.toString()+" aFluidOutput:"+aFluidOutput.toString()+" aDuration:"+aDuration+" aEU/t:"+aEUt);
-
- }
- public static void debug5(FluidStack aFluidInput, FluidStack aFluidOutput, int aDuration, int aEUt){
- Utils.LOG_INFO("Successfully added a Matter Fabrication recipe for: "+aFluidOutput.getFluid().getName()+", Using "+" liquid "+aFluidInput.getFluid().getName()+". This takes "+(aDuration/20)+" seconds for "+aEUt+"eu/t.");
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("==================================================================================");
- Utils.LOG_WARNING("==================================================================================");
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/growthcraft/HANDLER_GC.java b/src/Java/miscutil/core/xmod/growthcraft/HANDLER_GC.java
deleted file mode 100644
index 78f416e514..0000000000
--- a/src/Java/miscutil/core/xmod/growthcraft/HANDLER_GC.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package miscutil.core.xmod.growthcraft;
-
-import miscutil.core.lib.LoadedMods;
-import miscutil.core.xmod.growthcraft.booze.Register_Booze;
-
-public class HANDLER_GC {
-
-
- //Run me during Pre-Init
- public static void preInit(){
- if (LoadedMods.Growthcraft){
- Register_Booze.preInit();
- }
- }
-
- public static void init(){
- if (LoadedMods.Growthcraft){
-
- }
- }
-
- public static void postInit(){
- if (LoadedMods.Growthcraft){
-
- }
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/growthcraft/booze/Register_Booze.java b/src/Java/miscutil/core/xmod/growthcraft/booze/Register_Booze.java
deleted file mode 100644
index 7c26d90c31..0000000000
--- a/src/Java/miscutil/core/xmod/growthcraft/booze/Register_Booze.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package miscutil.core.xmod.growthcraft.booze;
-
-import growthcraft.api.cellar.Booze;
-import growthcraft.api.cellar.CellarRegistry;
-import growthcraft.cellar.block.BlockFluidBooze;
-import growthcraft.cellar.item.ItemBoozeBottle;
-import growthcraft.cellar.item.ItemBoozeBucketDEPRECATED;
-import growthcraft.cellar.item.ItemBucketBooze;
-import growthcraft.cellar.utils.BoozeRegistryHelper;
-import growthcraft.hops.GrowthCraftHops;
-import miscutil.core.lib.LoadedMods;
-import net.minecraft.init.Items;
-import net.minecraft.item.Item;
-import net.minecraft.potion.Potion;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidRegistry;
-import cpw.mods.fml.common.registry.GameRegistry;
-
-public class Register_Booze {
-
- public static BlockFluidBooze[] jackDanielsWhiskeyFluids;
- public static Item jackDaniels;
- public static Item jackDanielsSeeds;
- public static Item jackDanielsWhiskey;
- public static Item jackDanielsWhiskeyBucket_deprecated;
- public static ItemBucketBooze[] jackDanielsWhiskeyBuckets;
- public static Fluid[] jackDanielsWhiskeyBooze;
- //private static int internalColour = FluidRegistry.getFluid("fluidJackDaniels").getColor();
- private static int internalColour = 0000000;
-
- //Run me during Pre-Init
- public static void preInit(){
- if (LoadedMods.Growthcraft){
- start();
- }
- }
-
- private static void start(){
- jackDaniels = GrowthCraftHops.hops;
- jackDanielsSeeds = GrowthCraftHops.hopSeeds;
-
- jackDanielsWhiskeyBooze = new Booze[5];
- jackDanielsWhiskeyFluids = new BlockFluidBooze[jackDanielsWhiskeyBooze.length];
- jackDanielsWhiskeyBuckets = new ItemBucketBooze[jackDanielsWhiskeyBooze.length];
- BoozeRegistryHelper.initializeBooze(jackDanielsWhiskeyBooze, jackDanielsWhiskeyFluids, jackDanielsWhiskeyBuckets, "grc.jackDanielsWhiskey", internalColour);
-
- jackDanielsWhiskey = new ItemBoozeBottle(6, -0.5F, jackDanielsWhiskeyBooze).setColor(internalColour).setTipsy(0.7F, 900).setPotionEffects(new int[] { Potion.digSpeed.id }, new int[] { 3600 });
- jackDanielsWhiskeyBucket_deprecated = new ItemBoozeBucketDEPRECATED(jackDanielsWhiskeyBooze).setColor(internalColour);
-
-
- //GameRegistry.registerItem(jackDaniels, "grc.jackDaniels");
- //GameRegistry.registerItem(jackDanielsSeeds, "grc.jackDanielsSeeds");
- GameRegistry.registerItem(jackDanielsWhiskey, "grc.jackDanielsWhiskey");
- GameRegistry.registerItem(jackDanielsWhiskeyBucket_deprecated, "grc.jackDanielsWhiskey_bucket");
-
- BoozeRegistryHelper.registerBooze(jackDanielsWhiskeyBooze, jackDanielsWhiskeyFluids, jackDanielsWhiskeyBuckets, jackDanielsWhiskey, "grc.jackDanielsWhiskey", jackDanielsWhiskeyBucket_deprecated);
-
- CellarRegistry.instance().brew().addBrewing(FluidRegistry.WATER, Items.wheat, jackDanielsWhiskeyBooze[4], 200, 60, 0.4F);
- CellarRegistry.instance().brew().addBrewing(jackDanielsWhiskeyBooze[4], jackDaniels, jackDanielsWhiskeyBooze[0], 350, 60, 0.1F);
-
-
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/ic2/HANDLER_IC2.java b/src/Java/miscutil/core/xmod/ic2/HANDLER_IC2.java
deleted file mode 100644
index d4033fbf9b..0000000000
--- a/src/Java/miscutil/core/xmod/ic2/HANDLER_IC2.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package miscutil.core.xmod.ic2;
-
-import miscutil.core.lib.LoadedMods;
-import miscutil.core.xmod.ic2.item.IC2_Items;
-import miscutil.core.xmod.ic2.recipe.RECIPE_IC2;
-
-public class HANDLER_IC2{
-
- public static void preInit() {
- if (LoadedMods.IndustrialCraft2){
- IC2_Items.register();
- //new IC2_BlockKineticGenerator(InternalName.blockKineticGenerator);
- }
- }
-
- public static void init() {
- if (LoadedMods.IndustrialCraft2){
-
- }
- }
-
- public static void postInit() {
- if (LoadedMods.IndustrialCraft2){
- RECIPE_IC2.initRecipes();
- }
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemGradual.java b/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemGradual.java
deleted file mode 100644
index cf4b23f9eb..0000000000
--- a/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemGradual.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package miscutil.core.xmod.ic2.item;
-
-import java.util.List;
-
-import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.item.base.CoreItem;
-import net.minecraft.creativetab.CreativeTabs;
-import net.minecraft.item.EnumRarity;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-public class IC2_ItemGradual
-extends CoreItem
-{
- public IC2_ItemGradual(String internalName)
- {
- super(internalName, AddToCreativeTab.tabMachines, 1, 10000, "", EnumRarity.uncommon);
- setNoRepair();
- }
-
- @Override
- public boolean isDamaged(ItemStack stack)
- {
- return getDamage(stack) > 1;
- }
-
- @Override
- public boolean showDurabilityBar(ItemStack stack)
- {
- return true;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public void getSubItems(Item item, CreativeTabs tabs, List itemList)
- {
- itemList.add(new ItemStack(this, 1, 1));
- }
-}
diff --git a/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemGradualInteger.java b/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemGradualInteger.java
deleted file mode 100644
index b39c80e5ed..0000000000
--- a/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemGradualInteger.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package miscutil.core.xmod.ic2.item;
-
-import ic2.api.item.ICustomDamageItem;
-import ic2.core.util.StackUtil;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-
-public class IC2_ItemGradualInteger
- extends IC2_ItemGradual
- implements ICustomDamageItem
-{
- private final int maxDmg;
-
- public IC2_ItemGradualInteger(String internalName, int maxdmg)
- {
- super(internalName);
-
- this.maxDmg = maxdmg;
- }
-
- @Override
-public int getCustomDamage(ItemStack stack)
- {
- NBTTagCompound nbt = StackUtil.getOrCreateNbtData(stack);
- return nbt.getInteger("advDmg");
- }
-
- @Override
-public int getMaxCustomDamage(ItemStack stack)
- {
- return this.maxDmg;
- }
-
- @Override
-public void setCustomDamage(ItemStack stack, int damage)
- {
- NBTTagCompound nbt = StackUtil.getOrCreateNbtData(stack);
- nbt.setInteger("advDmg", 0);
-
- int maxStackDamage = stack.getMaxDamage();
- if (maxStackDamage > 2) {
- //stack.setItemDamage(1 + (int)Util.map(damage, this.maxDmg, maxStackDamage - 2));
- }
- }
-
- @Override
-public boolean applyCustomDamage(ItemStack stack, int damage, EntityLivingBase src)
- {
- setCustomDamage(stack, getCustomDamage(stack) + damage);
- return true;
- }
-}
diff --git a/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemIC2.java b/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemIC2.java
deleted file mode 100644
index fa7f73169c..0000000000
--- a/src/Java/miscutil/core/xmod/ic2/item/IC2_ItemIC2.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package miscutil.core.xmod.ic2.item;
-
-import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.lib.CORE;
-import net.minecraft.item.EnumRarity;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.IIcon;
-import net.minecraft.util.StatCollector;
-import cpw.mods.fml.common.registry.GameRegistry;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-
-public class IC2_ItemIC2
-extends Item
-{
- public IC2_ItemIC2(String internalName)
- {
- setUnlocalizedName(internalName);
- setCreativeTab(AddToCreativeTab.tabMachines);
- setTextureName(CORE.MODID + ":" + internalName);
-
- GameRegistry.registerItem(this, internalName);
- }
-
- public String getTextureFolder()
- {
- return null;
- }
-
- /* public String getTextureName(int index)
- {
- if ((!this.hasSubtypes) && (index > 0)) {
- return null;
- }
- String name = getUnlocalizedName(new ItemStack(this, 1, index));
- if ((name != null) && (name.length() > 4)) {
- return name.substring(4);
- }
- return name;
- }
-
- @Override
-@SideOnly(Side.CLIENT)
- public void registerIcons(IIconRegister iconRegister)
- {
- int indexCount = 0;
- while (getTextureName(indexCount) != null)
- {
- indexCount++;
- if (indexCount > 32767) {
- throw new RuntimeException("More Item Icons than actually possible @ " + getUnlocalizedName());
- }
- }
- this.textures = new IIcon[indexCount];
- for (int index = 0; index < indexCount; index++) {
- this.textures[index] = iconRegister.registerIcon(CORE.MODID + ":" + getUnlocalizedName());
- }
- }
-
- @Override
-@SideOnly(Side.CLIENT)
- public IIcon getIconFromDamage(int meta)
- {
- if (meta < this.textures.length) {
- return this.textures[meta];
- }
- return this.textures.length < 1 ? null : this.textures[0];
- }*/
-
- @Override
- public String getUnlocalizedName()
- {
- return super.getUnlocalizedName();
- }
-
- @Override
- public String getUnlocalizedName(ItemStack itemStack)
- {
- return getUnlocalizedName();
- }
-
- @Override
- public String getItemStackDisplayName(ItemStack itemStack)
- {
- return StatCollector.translateToLocal(getUnlocalizedName(itemStack));
- }
-
- public IC2_ItemIC2 setRarity(int aRarity)
- {
- this.rarity = aRarity;
- return this;
- }
-
- @Override
- @SideOnly(Side.CLIENT)
- public EnumRarity getRarity(ItemStack stack)
- {
- return EnumRarity.values()[this.rarity];
- }
-
- private int rarity = 0;
- protected IIcon[] textures;
-}
diff --git a/src/Java/miscutil/core/xmod/ic2/item/IC2_Items.java b/src/Java/miscutil/core/xmod/ic2/item/IC2_Items.java
deleted file mode 100644
index 5aa2b6181b..0000000000
--- a/src/Java/miscutil/core/xmod/ic2/item/IC2_Items.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package miscutil.core.xmod.ic2.item;
-
-import ic2.core.IC2;
-import ic2.core.init.InternalName;
-import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.item.base.CoreItem;
-import miscutil.core.lib.LoadedMods;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.ResourceLocation;
-
-public class IC2_Items {
-
- public static ItemStack rotor_Material_1; //Energetic Alloy
- public static ItemStack rotor_Material_2; //TungstenSteel
- public static ItemStack rotor_Material_3; //Vibrant Alloy
- public static ItemStack rotor_Material_4; //Iridium
-
- public static ItemStack rotor_Blade_Material_1;
- public static ItemStack rotor_Blade_Material_2;
- public static ItemStack rotor_Blade_Material_3;
- public static ItemStack rotor_Blade_Material_4;
-
- public static ItemStack shaft_Material_1; //Energetic Alloy
- public static ItemStack shaft_Material_2; //TungstenSteel
- public static ItemStack shaft_Material_3; //Vibrant Alloy
- public static ItemStack shaft_Material_4; //Iridium
-
- public static void register(){
-
- if(LoadedMods.EnderIO){
- //Tier 1
- rotor_Blade_Material_1 = new ItemStack (new CoreItem("itemEnergeticRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- shaft_Material_1 = new ItemStack (new CoreItem("itemEnergeticShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- rotor_Material_1 = new ItemStack (new RotorBase(InternalName.itemwoodrotor, 9, 512000, 0.9F, 12, 80, new ResourceLocation(IC2.textureDomain, "textures/items/rotors/rotorEnergeticModel.png")).setCreativeTab(AddToCreativeTab.tabMachines).setUnlocalizedName("itemEnergeticRotor"));
- //Tier 2
- rotor_Blade_Material_2 = new ItemStack (new CoreItem("itemTungstenSteelRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- shaft_Material_2 = new ItemStack (new CoreItem("itemTungstenSteelShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- rotor_Material_2 = new ItemStack (new RotorBase(InternalName.itemironrotor, 11, 809600, 1.0F, 14, 120, new ResourceLocation(IC2.textureDomain, "textures/items/rotors/rotorTungstenSteelModel.png")).setCreativeTab(AddToCreativeTab.tabMachines).setUnlocalizedName("itemTungstenSteelRotor"));
- //Tier 3
- rotor_Blade_Material_3 = new ItemStack (new CoreItem("itemVibrantRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- shaft_Material_3 = new ItemStack (new CoreItem("itemVibrantShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- rotor_Material_3 = new ItemStack (new RotorBase(InternalName.itemsteelrotor, 13, 1600000, 1.2F, 16, 160, new ResourceLocation(IC2.textureDomain, "textures/items/rotors/rotorVibrantModel.png")).setCreativeTab(AddToCreativeTab.tabMachines).setUnlocalizedName("itemVibrantRotor"));
- //Tier 4
- rotor_Blade_Material_4 = new ItemStack (new CoreItem("itemIridiumRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- shaft_Material_4 = new ItemStack (new CoreItem("itemIridiumShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- rotor_Material_4 = new ItemStack (new RotorIridium(InternalName.itemwcarbonrotor, 15, 3200000, 1.5F, 18, 320, new ResourceLocation(IC2.textureDomain, "textures/items/rotors/rotorIridiumModel.png")).setCreativeTab(AddToCreativeTab.tabMachines).setUnlocalizedName("itemIridiumRotor"));
-
- }
- else {
- //Tier 1 - Magnalium
- rotor_Blade_Material_1 = new ItemStack (new CoreItem("itemMagnaliumRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- shaft_Material_1 = new ItemStack (new CoreItem("itemMagnaliumShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- rotor_Material_1 = new ItemStack (new RotorBase(InternalName.itemwoodrotor, 9, 512000, 0.9F, 12, 80, new ResourceLocation(IC2.textureDomain, "textures/items/rotors/rotorMagnaliumModel.png")).setCreativeTab(AddToCreativeTab.tabMachines).setUnlocalizedName("itemMagnaliumRotor"));
- //Tier 2
- rotor_Blade_Material_2 = new ItemStack (new CoreItem("itemTungstenSteelRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- shaft_Material_2 = new ItemStack (new CoreItem("itemTungstenSteelShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- rotor_Material_2 = new ItemStack (new RotorBase(InternalName.itemironrotor, 11, 809600, 1.0F, 14, 120, new ResourceLocation(IC2.textureDomain, "textures/items/rotors/rotorTungstenSteelModel.png")).setCreativeTab(AddToCreativeTab.tabMachines).setUnlocalizedName("itemTungstenSteelRotor"));
- //Tier 3 - Ultimet
- rotor_Blade_Material_3 = new ItemStack (new CoreItem("itemUltimetRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- shaft_Material_3 = new ItemStack (new CoreItem("itemUltimetShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- rotor_Material_3 = new ItemStack (new RotorBase(InternalName.itemsteelrotor, 13, 1600000, 1.2F, 16, 160, new ResourceLocation(IC2.textureDomain, "textures/items/rotors/rotorUltimetModel.png")).setCreativeTab(AddToCreativeTab.tabMachines).setUnlocalizedName("itemUltimetRotor"));
- //Tier 4
- rotor_Blade_Material_4 = new ItemStack (new CoreItem("itemIridiumRotorBlade", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- shaft_Material_4 = new ItemStack (new CoreItem("itemIridiumShaft", AddToCreativeTab.tabMachines, 16, "A part for an advanced Kinetic Rotor"));
- rotor_Material_4 = new ItemStack (new RotorIridium(InternalName.itemwcarbonrotor, 15, 3200000, 1.5F, 18, 320, new ResourceLocation(IC2.textureDomain, "textures/items/rotors/rotorIridiumModel.png")).setCreativeTab(AddToCreativeTab.tabMachines).setUnlocalizedName("itemIridiumRotor"));
- }
-
- }
-}
diff --git a/src/Java/miscutil/core/xmod/ic2/item/RotorBase.java b/src/Java/miscutil/core/xmod/ic2/item/RotorBase.java
deleted file mode 100644
index 11817818b4..0000000000
--- a/src/Java/miscutil/core/xmod/ic2/item/RotorBase.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package miscutil.core.xmod.ic2.item;
-
-import ic2.api.item.IKineticRotor;
-import ic2.core.block.kineticgenerator.gui.GuiWaterKineticGenerator;
-import ic2.core.block.kineticgenerator.gui.GuiWindKineticGenerator;
-import ic2.core.init.InternalName;
-import ic2.core.item.resources.ItemWindRotor;
-
-import java.util.List;
-
-import net.minecraft.client.Minecraft;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.ResourceLocation;
-import net.minecraft.util.StatCollector;
-
-public class RotorBase extends ItemWindRotor{
-
- private final int maxWindStrength;
- private final int minWindStrength;
- private final int radius;
- private final float efficiency;
- private final ResourceLocation renderTexture;
- private final boolean water;
-
- public RotorBase(InternalName internalName, int Radius, int durability, float efficiency, int minWindStrength, int maxWindStrength, ResourceLocation RenderTexture)
- {
- super(internalName, Radius, durability, efficiency, minWindStrength, maxWindStrength, RenderTexture);
-
-
-
- setMaxStackSize(1);
- setMaxDamage(durability);
-
- this.radius = Radius;
- this.efficiency = efficiency;
- this.renderTexture = RenderTexture;
- this.minWindStrength = minWindStrength;
- this.maxWindStrength = maxWindStrength;
- this.water = (internalName != InternalName.itemwoodrotor);
- }
-
- @Override
- public void addInformation(ItemStack itemStack, EntityPlayer player, List info, boolean b)
- {
- info.add(StatCollector.translateToLocalFormatted("ic2.itemrotor.wind.info", new Object[] { Integer.valueOf(this.minWindStrength), Integer.valueOf(this.maxWindStrength) }));
- IKineticRotor.GearboxType type = null;
- if ((Minecraft.getMinecraft().currentScreen != null) && ((Minecraft.getMinecraft().currentScreen instanceof GuiWaterKineticGenerator))) {
- type = IKineticRotor.GearboxType.WATER;
- } else if ((Minecraft.getMinecraft().currentScreen != null) && ((Minecraft.getMinecraft().currentScreen instanceof GuiWindKineticGenerator))) {
- type = IKineticRotor.GearboxType.WIND;
- }
- if (type != null) {
- //info.add(StatCollector.translateToLocal("ic2.itemrotor.fitsin." + isAcceptedType(itemStack, type)));
- }
- }
-
- @Override
- public String getTextureFolder()
- {
- return "rotors";
- }
-
- @Override
- public int getDiameter(ItemStack stack)
- {
- return this.radius;
- }
-
- @Override
- public ResourceLocation getRotorRenderTexture(ItemStack stack)
- {
- return this.renderTexture;
- }
-
- @Override
- public float getEfficiency(ItemStack stack)
- {
- return this.efficiency;
- }
-
- @Override
- public int getMinWindStrength(ItemStack stack)
- {
- return this.minWindStrength;
- }
-
- @Override
- public int getMaxWindStrength(ItemStack stack)
- {
- return this.maxWindStrength;
- }
-
- public boolean isAcceptedType(ItemStack stack, IKineticRotor.GearboxType type)
- {
- return (type == IKineticRotor.GearboxType.WIND) || (this.water);
- }
-}
-
diff --git a/src/Java/miscutil/core/xmod/ic2/item/RotorIridium.java b/src/Java/miscutil/core/xmod/ic2/item/RotorIridium.java
deleted file mode 100644
index ac568d3b9e..0000000000
--- a/src/Java/miscutil/core/xmod/ic2/item/RotorIridium.java
+++ /dev/null
@@ -1,121 +0,0 @@
-package miscutil.core.xmod.ic2.item;
-
-import ic2.api.item.IKineticRotor;
-import ic2.core.block.kineticgenerator.gui.GuiWaterKineticGenerator;
-import ic2.core.block.kineticgenerator.gui.GuiWindKineticGenerator;
-import ic2.core.init.InternalName;
-import ic2.core.util.StackUtil;
-
-import java.util.List;
-
-import net.minecraft.client.Minecraft;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.util.ResourceLocation;
-import net.minecraft.util.StatCollector;
-
-public class RotorIridium extends RotorBase{
-
- private final int maxWindStrength;
- private final int minWindStrength;
- private final int radius;
- private final float efficiency;
- private final ResourceLocation renderTexture;
- private final boolean water;
-
- public RotorIridium(InternalName internalName, int Radius, int durability, float efficiency, int minWindStrength, int maxWindStrength, ResourceLocation RenderTexture)
- {
- super(internalName, Radius, durability, efficiency, minWindStrength, maxWindStrength, RenderTexture);
-
-
-
- setMaxStackSize(1);
- setMaxDamage(Integer.MAX_VALUE);
-
- this.radius = Radius;
- this.efficiency = efficiency;
- this.renderTexture = RenderTexture;
- this.minWindStrength = minWindStrength;
- this.maxWindStrength = maxWindStrength;
- this.water = (internalName != InternalName.itemwoodrotor);
- }
-
- @Override
- public void addInformation(ItemStack itemStack, EntityPlayer player, List info, boolean b)
- {
- info.add(StatCollector.translateToLocalFormatted("ic2.itemrotor.wind.info", new Object[] { Integer.valueOf(this.minWindStrength), Integer.valueOf(this.maxWindStrength) }));
- IKineticRotor.GearboxType type = null;
- if ((Minecraft.getMinecraft().currentScreen != null) && ((Minecraft.getMinecraft().currentScreen instanceof GuiWaterKineticGenerator))) {
- type = IKineticRotor.GearboxType.WATER;
- } else if ((Minecraft.getMinecraft().currentScreen != null) && ((Minecraft.getMinecraft().currentScreen instanceof GuiWindKineticGenerator))) {
- type = IKineticRotor.GearboxType.WIND;
- }
- if (type != null) {
- //info.add(StatCollector.translateToLocal("ic2.itemrotor.fitsin." + isAcceptedType(itemStack, type)));
- }
- }
-
- @Override
- public String getTextureFolder()
- {
- return "rotors";
- }
-
- @Override
- public int getDiameter(ItemStack stack)
- {
- return this.radius;
- }
-
- @Override
- public ResourceLocation getRotorRenderTexture(ItemStack stack)
- {
- return this.renderTexture;
- }
-
- @Override
- public float getEfficiency(ItemStack stack)
- {
- return this.efficiency;
- }
-
- @Override
- public int getMinWindStrength(ItemStack stack)
- {
- return this.minWindStrength;
- }
-
- @Override
- public int getMaxWindStrength(ItemStack stack)
- {
- return this.maxWindStrength;
- }
-
- public boolean isAcceptedType(ItemStack stack, IKineticRotor.GearboxType type)
- {
- return (type == IKineticRotor.GearboxType.WIND) || (this.water);
- }
-
-
- @Override
- public void setCustomDamage(ItemStack stack, int damage)
- {
- NBTTagCompound nbt = StackUtil.getOrCreateNbtData(stack);
- nbt.setInteger("advDmg", 0);
-
- int maxStackDamage = stack.getMaxDamage();
- if (maxStackDamage > 2) {
- //stack.setItemDamage(1 + (int)Util.map(damage, this.maxDmg, maxStackDamage - 2));
- }
- }
-
- @Override
- public boolean applyCustomDamage(ItemStack stack, int damage, EntityLivingBase src)
- {
- setCustomDamage(stack, getCustomDamage(stack) + damage);
- return true;
- }
- }
-
diff --git a/src/Java/miscutil/core/xmod/ic2/recipe/RECIPE_IC2.java b/src/Java/miscutil/core/xmod/ic2/recipe/RECIPE_IC2.java
deleted file mode 100644
index 5a22a82950..0000000000
--- a/src/Java/miscutil/core/xmod/ic2/recipe/RECIPE_IC2.java
+++ /dev/null
@@ -1,151 +0,0 @@
-package miscutil.core.xmod.ic2.recipe;
-
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.ItemList;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import miscutil.core.lib.LoadedMods;
-import miscutil.core.util.Utils;
-import miscutil.core.util.item.UtilsItems;
-import miscutil.core.util.recipe.UtilsRecipe;
-import miscutil.core.xmod.gregtech.api.enums.GregtechItemList;
-import miscutil.core.xmod.ic2.item.IC2_Items;
-import net.minecraft.item.ItemStack;
-
-public class RECIPE_IC2 {
-
- public static String plate_T1 = "plateEnergeticAlloy";
- public static String plate_T2 = "plateTungstenSteel";
- public static String plate_T3 = "plateVibrantAlloy";
- public static String plate_T4 = "plateAlloyIridium";
-
- public static ItemStack block_T1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.EnergeticAlloy, 1L);
- public static ItemStack block_T2 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 1L);
- public static ItemStack block_T3 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.VibrantAlloy, 1L);
- public static ItemStack block_T4 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iridium, 1L);
-
- public static String ingot_T1 = "ingotEnergeticAlloy";
- public static String ingot_T2 = "ingotTungstenSteel";
- public static String ingot_T3 = "ingotVibrantAlloy";
- public static String ingot_T4 = "ingotIridium";
-
- private static ItemStack rotor_blade_T1 = UtilsItems.getSimpleStack(IC2_Items.rotor_Blade_Material_1.getItem());
- private static ItemStack rotor_blade_T2 = UtilsItems.getSimpleStack(IC2_Items.rotor_Blade_Material_2.getItem());
- private static ItemStack rotor_blade_T3 = UtilsItems.getSimpleStack(IC2_Items.rotor_Blade_Material_3.getItem());
- private static ItemStack rotor_blade_T4 = UtilsItems.getSimpleStack(IC2_Items.rotor_Blade_Material_4.getItem());
-
- private static ItemStack shaft_T1 = UtilsItems.getSimpleStack(IC2_Items.shaft_Material_1.getItem());
- private static ItemStack shaft_T2 = UtilsItems.getSimpleStack(IC2_Items.shaft_Material_2.getItem());
- private static ItemStack shaft_T3 = UtilsItems.getSimpleStack(IC2_Items.shaft_Material_3.getItem());
- private static ItemStack shaft_T4 = UtilsItems.getSimpleStack(IC2_Items.shaft_Material_4.getItem());
-
- private static ItemStack rotor_T1 = UtilsItems.getSimpleStack(IC2_Items.rotor_Material_1.getItem());
- private static ItemStack rotor_T2 = UtilsItems.getSimpleStack(IC2_Items.rotor_Material_2.getItem());
- private static ItemStack rotor_T3 = UtilsItems.getSimpleStack(IC2_Items.rotor_Material_3.getItem());
- private static ItemStack rotor_T4 = UtilsItems.getSimpleStack(IC2_Items.rotor_Material_4.getItem());
-
- private static void checkForEnderIO(){
- if(!LoadedMods.EnderIO){
- plate_T1 = "plateMagnalium";
- plate_T2 = "plateTungstenSteel";
- plate_T3 = "plateUltimet";
- plate_T4 = "plateAlloyIridium";
-
- block_T1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Magnalium, 1L);
- block_T2 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.TungstenSteel, 1L);
- block_T3 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Ultimet, 1L);
- block_T4 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iridium, 1L);
-
- ingot_T1 = "ingotMagnalium";
- ingot_T2 = "ingotTungstenSteel";
- ingot_T3 = "ingotUltimet";
- ingot_T4 = "ingotIridium";
- }
- }
-
- public static void initRecipes(){
-
- //Rotor Blade Recipes
- UtilsRecipe.recipeBuilder(
- plate_T1, ingot_T1, plate_T1,
- plate_T1, ingot_T1, plate_T1,
- plate_T1, ingot_T1, plate_T1,
- rotor_blade_T1);
-
- UtilsRecipe.recipeBuilder(
- plate_T2, ingot_T2, plate_T2,
- plate_T2, ingot_T2, plate_T2,
- plate_T2, ingot_T2, plate_T2,
- rotor_blade_T2);
-
- UtilsRecipe.recipeBuilder(
- plate_T3, ingot_T3, plate_T3,
- plate_T3, ingot_T3, plate_T3,
- plate_T3, ingot_T3, plate_T3,
- rotor_blade_T3);
-
- UtilsRecipe.recipeBuilder(
- plate_T4, ingot_T4, plate_T4,
- plate_T4, ingot_T4, plate_T4,
- plate_T4, ingot_T4, plate_T4,
- rotor_blade_T4);
-
- //Shaft Extruder Recipe
- GT_ModHandler.addCraftingRecipe(GregtechItemList.Shape_Extruder_WindmillShaft.get(1L, new Object[0]), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"hXS", "XPX", "fXd", Character.valueOf('P'), ItemList.Shape_Extruder_Rod, Character.valueOf('X'), OrePrefixes.plate.get(Materials.DarkIron), Character.valueOf('S'), OrePrefixes.screw.get(Materials.DarkIron)});
- GT_ModHandler.addCraftingRecipe(GregtechItemList.Shape_Extruder_WindmillShaft.get(1L, new Object[0]), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"hXS", "XPX", "fXd", Character.valueOf('P'), ItemList.Shape_Extruder_Rod, Character.valueOf('X'), OrePrefixes.plate.get(Materials.TungstenSteel), Character.valueOf('S'), OrePrefixes.screw.get(Materials.TungstenSteel)});
- GT_ModHandler.addCraftingRecipe(GregtechItemList.Shape_Extruder_WindmillShaft.get(1L, new Object[0]), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"hXS", "XPX", "fXd", Character.valueOf('P'), ItemList.Shape_Extruder_Rod, Character.valueOf('X'), OrePrefixes.plate.get(Materials.Molybdenum), Character.valueOf('S'), OrePrefixes.screw.get(Materials.Molybdenum)});
- Utils.LOG_INFO("Added recipe item for GT5 Extruder: Shaft Shape");
-
- //Shaft Recipes
- GT_Values.RA.addExtruderRecipe(GT_Utility.copyAmount(9L, block_T1), GregtechItemList.Shape_Extruder_WindmillShaft.get(0L, new Object[0]), shaft_T1, 2560, 250);
- if (LoadedMods.EnderIO){
- Utils.LOG_INFO("Added recipe for GT5 Extruder: Windmill Shaft [Energetic]");
- }
- else {
- Utils.LOG_INFO("Added recipe for GT5 Extruder: Windmill Shaft [Magnalium]");
- }
- GT_Values.RA.addExtruderRecipe(GT_Utility.copyAmount(9L, block_T2), GregtechItemList.Shape_Extruder_WindmillShaft.get(0L, new Object[0]), shaft_T2, 5120, 500);
- Utils.LOG_INFO("Added recipe for GT5 Extruder: Windmill Shaft [TungstenSteel]");
- GT_Values.RA.addExtruderRecipe(GT_Utility.copyAmount(9L, block_T3), GregtechItemList.Shape_Extruder_WindmillShaft.get(0L, new Object[0]), shaft_T3, 10240, 2000);
- if (LoadedMods.EnderIO){
- Utils.LOG_INFO("Added recipe for GT5 Extruder: Windmill Shaft [Vibrant]");
- }
- else {
- Utils.LOG_INFO("Added recipe for GT5 Extruder: Windmill Shaft [Ultimet]");
- }
- GT_Values.RA.addExtruderRecipe(GT_Utility.copyAmount(9L, block_T4), GregtechItemList.Shape_Extruder_WindmillShaft.get(0L, new Object[0]), shaft_T4, 20480, 4000);
- Utils.LOG_INFO("Added recipe for GT5 Extruder: Windmill Shaft [Iridium]");
-
- //Rotor Recipes
- UtilsRecipe.recipeBuilder(
- null, rotor_blade_T1, null,
- rotor_blade_T1, shaft_T1, rotor_blade_T1,
- null, rotor_blade_T1, null,
- rotor_T1);
-
- UtilsRecipe.recipeBuilder(
- null, rotor_blade_T2, null,
- rotor_blade_T2, shaft_T2, rotor_blade_T2,
- null, rotor_blade_T2, null,
- rotor_T2);
-
- UtilsRecipe.recipeBuilder(
- null, rotor_blade_T3, null,
- rotor_blade_T3, shaft_T3, rotor_blade_T3,
- null, rotor_blade_T3, null,
- rotor_T3);
-
- UtilsRecipe.recipeBuilder(
- null, rotor_blade_T4, null,
- rotor_blade_T4, shaft_T4, rotor_blade_T4,
- null, rotor_blade_T4, null,
- rotor_T4);
-
- }
-
-
-
-}
diff --git a/src/Java/miscutil/core/xmod/psychedelicraft/HANDLER_Psych.java b/src/Java/miscutil/core/xmod/psychedelicraft/HANDLER_Psych.java
deleted file mode 100644
index 278a572f0f..0000000000
--- a/src/Java/miscutil/core/xmod/psychedelicraft/HANDLER_Psych.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package miscutil.core.xmod.psychedelicraft;
-
-import miscutil.core.lib.LoadedMods;
-import miscutil.core.xmod.psychedelicraft.fluids.PS_Fluids;
-
-
-public class HANDLER_Psych {
-
- public static void preInit(){
- if (LoadedMods.Psychedelicraft){
- PS_Fluids.registerFluids();
- }
- }
-
- public static void init(){
- if (LoadedMods.Psychedelicraft){
- PS_Fluids.registerAlcohols();
- }
- }
-
- public static void postInit(){
- if (LoadedMods.Psychedelicraft){
-
- }
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/psychedelicraft/fluids/PS_Fluids.java b/src/Java/miscutil/core/xmod/psychedelicraft/fluids/PS_Fluids.java
deleted file mode 100644
index 5bba9d5857..0000000000
--- a/src/Java/miscutil/core/xmod/psychedelicraft/fluids/PS_Fluids.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package miscutil.core.xmod.psychedelicraft.fluids;
-
-import ivorius.ivtoolkit.gui.IntegerRange;
-import ivorius.psychedelicraft.blocks.TileEntityMashTub;
-import ivorius.psychedelicraft.config.PSConfig;
-import ivorius.psychedelicraft.fluids.FluidAlcohol;
-import ivorius.psychedelicraft.items.PSItems;
-import miscutil.core.lib.CORE;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidRegistry;
-import net.minecraftforge.fluids.FluidStack;
-import net.minecraftforge.oredict.ShapelessOreRecipe;
-import cpw.mods.fml.common.registry.GameRegistry;
-
-public class PS_Fluids {
-
- public static FluidAlcohol alcJD;
-
- public static void registerFluids(){
- alcJD = new FluidAlcohol("psc_JD", 2, 0.45D, 1.9D, 0.15D, PSConfig.alcInfoPotato);
- alcJD.addName(CORE.MODID + ":" + "drinkMash", new IntegerRange(0, -1), new IntegerRange(0, 0));
- alcJD.addName(CORE.MODID + ":" + "drinkAgedWhisky", new IntegerRange(0, 0), new IntegerRange(1, -1));
- alcJD.addName(CORE.MODID + ":" + "drinkWhisky", new IntegerRange(0, -1), new IntegerRange(1, -1));
- alcJD.setColor(-1426150904);
- alcJD.setStillIconName(CORE.MODID + ":" + "mash_still");
- alcJD.setFlowingIconName(CORE.MODID + ":" + "mash_flow");
- alcJD.addIcon(new IntegerRange(-1, -1), new IntegerRange(0, 3), new IntegerRange(2, -1), CORE.MODID + ":" + "clear_still", CORE.MODID + ":" + "clear_flow");
- alcJD.addIcon(new IntegerRange(-1, -1), new IntegerRange(4, 13), new IntegerRange(0, -1), CORE.MODID + ":" + "rum_semi_mature_still", CORE.MODID + ":" + "rum_semi_mature_flow");
- alcJD.addIcon(new IntegerRange(-1, -1), new IntegerRange(14, -1), new IntegerRange(0, -1), CORE.MODID + ":" + "rum_mature_still", CORE.MODID + ":" + "rum_mature_flow");
- FluidRegistry.registerFluid(alcJD);
- }
-
- public static void registerAlcohols(){
- addMashTubRecipe2(new FluidStack(alcJD, TileEntityMashTub.MASH_TUB_CAPACITY), new Object[] { "foodPotato", "foodPotato", "foodPotato", "foodPotato", "foodPotato", "foodBanana", "foodBanana", "foodBanana" });
- }
-
- private static void addMashTubRecipe2(FluidStack fluid, Object... ingredients)
- {
- ItemStack mashTubStack = new ItemStack(PSItems.itemMashTub);
- PSItems.itemMashTub.fill(mashTubStack, fluid, true);
-
- Object[] ing = new Object[ingredients.length + 1];
- System.arraycopy(ingredients, 0, ing, 1, ingredients.length);
- ing[0] = new ItemStack(PSItems.itemMashTub);
-
- addShapelessRecipe2(mashTubStack, ing);
- }
-
- private static void addShapelessRecipe2(ItemStack output, Object... params)
- {
- GameRegistry.addRecipe(new ShapelessOreRecipe(output, params));
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/thermalfoundation/HANDLER_TF.java b/src/Java/miscutil/core/xmod/thermalfoundation/HANDLER_TF.java
deleted file mode 100644
index a9662a221a..0000000000
--- a/src/Java/miscutil/core/xmod/thermalfoundation/HANDLER_TF.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package miscutil.core.xmod.thermalfoundation;
-
-import miscutil.core.lib.LoadedMods;
-import miscutil.core.xmod.thermalfoundation.block.TF_Blocks;
-import miscutil.core.xmod.thermalfoundation.fluid.TF_Fluids;
-import miscutil.core.xmod.thermalfoundation.item.TF_Items;
-import miscutil.core.xmod.thermalfoundation.recipe.TF_Gregtech_Recipes;
-
-public class HANDLER_TF{
-
- public static void preInit(){
- if (LoadedMods.CoFHCore){
- TF_Fluids.preInit();
- TF_Items.preInit();
- TF_Blocks.preInit();
- }
- }
-
- public static void init(){
- if (LoadedMods.CoFHCore){
- TF_Fluids.init();
- TF_Blocks.init();
- TF_Items.init();
- }
- }
-
- public static void postInit(){
- if (LoadedMods.CoFHCore){
- TF_Fluids.postInit();
- TF_Items.postInit();
- TF_Blocks.postInit();
- if(LoadedMods.Gregtech){
- TF_Gregtech_Recipes.run();
- }
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Block_Fluid_Cryotheum.java b/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Block_Fluid_Cryotheum.java
deleted file mode 100644
index 8865da678e..0000000000
--- a/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Block_Fluid_Cryotheum.java
+++ /dev/null
@@ -1,188 +0,0 @@
-package miscutil.core.xmod.thermalfoundation.block;
-
-import java.util.Random;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.thermalfoundation.fluid.TF_Fluids;
-import net.minecraft.block.Block;
-import net.minecraft.block.material.MapColor;
-import net.minecraft.block.material.Material;
-import net.minecraft.block.material.MaterialLiquid;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.monster.EntityBlaze;
-import net.minecraft.entity.monster.EntityCreeper;
-import net.minecraft.entity.monster.EntitySnowman;
-import net.minecraft.entity.monster.EntityZombie;
-import net.minecraft.init.Blocks;
-import net.minecraft.potion.Potion;
-import net.minecraft.potion.PotionEffect;
-import net.minecraft.world.IBlockAccess;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import cofh.core.fluid.BlockFluidInteractive;
-import cofh.lib.util.BlockWrapper;
-import cofh.lib.util.helpers.DamageHelper;
-import cofh.lib.util.helpers.ServerHelper;
-import cpw.mods.fml.common.registry.GameRegistry;
-
-public class TF_Block_Fluid_Cryotheum
- extends BlockFluidInteractive
-{
- Random random = new Random();
- public static final int LEVELS = 5;
- public static final Material materialFluidCryotheum = new MaterialLiquid(MapColor.iceColor);
- private static boolean enableSourceFall = true;
- private static boolean effect = true;
-
- public TF_Block_Fluid_Cryotheum()
- {
- super(CORE.MODID, TF_Fluids.fluidCryotheum, materialFluidCryotheum, "cryotheum");
- setQuantaPerBlock(5);
- setTickRate(15);
-
- setHardness(1000.0F);
- setLightOpacity(1);
- setParticleColor(0.15F, 0.7F, 1.0F);
- }
-
- public boolean preInit()
- {
- GameRegistry.registerBlock(this, "FluidCryotheum");
-
- addInteraction(Blocks.grass, Blocks.dirt);
- addInteraction(Blocks.water, 0, Blocks.ice);
- addInteraction(Blocks.water, Blocks.snow);
- addInteraction(Blocks.flowing_water, 0, Blocks.ice);
- addInteraction(Blocks.flowing_water, Blocks.snow);
- addInteraction(Blocks.lava, 0, Blocks.obsidian);
- addInteraction(Blocks.lava, Blocks.stone);
- addInteraction(Blocks.flowing_lava, 0, Blocks.obsidian);
- addInteraction(Blocks.flowing_lava, Blocks.stone);
- addInteraction(Blocks.leaves, Blocks.air);
- addInteraction(Blocks.tallgrass, Blocks.air);
- addInteraction(Blocks.fire, Blocks.air);
- //addInteraction(TFBlocks.blockFluidGlowstone, 0, Blocks.glowstone);
-
- String str1 = "Fluid.Cryotheum";
- String str2 = "Enable this for Fluid Cryotheum to be worse than lava, except cold.";
- effect = true;
-
- str2 = "Enable this for Fluid Cryotheum Source blocks to gradually fall downwards.";
- enableSourceFall = true;
-
- return true;
- }
-
- public void onEntityCollidedWithBlock(World paramWorld, int paramInt1, int paramInt2, int paramInt3, Entity paramEntity)
- {
- paramEntity.extinguish();
- if (!effect) {
- return;
- }
- if ((paramEntity.motionY < -0.05D) || (paramEntity.motionY > 0.05D)) {
- paramEntity.motionY *= 0.05D;
- }
- if ((paramEntity.motionZ < -0.05D) || (paramEntity.motionZ > 0.05D)) {
- paramEntity.motionZ *= 0.05D;
- }
- if ((paramEntity.motionX < -0.05D) || (paramEntity.motionX > 0.05D)) {
- paramEntity.motionX *= 0.05D;
- }
- if (ServerHelper.isClientWorld(paramWorld)) {
- return;
- }
- if (paramWorld.getTotalWorldTime() % 8L != 0L) {
- return;
- }
- if (((paramEntity instanceof EntityZombie)) || ((paramEntity instanceof EntityCreeper)))
- {
- EntitySnowman localEntitySnowman = new EntitySnowman(paramWorld);
- localEntitySnowman.setLocationAndAngles(paramEntity.posX, paramEntity.posY, paramEntity.posZ, paramEntity.rotationYaw, paramEntity.rotationPitch);
- paramWorld.spawnEntityInWorld(localEntitySnowman);
-
- paramEntity.setDead();
- }
- else if (/*((paramEntity instanceof EntityBlizz)) ||*/((paramEntity instanceof EntitySnowman)))
- {
- ((EntityLivingBase)paramEntity).addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 120, 0));
- ((EntityLivingBase)paramEntity).addPotionEffect(new PotionEffect(Potion.regeneration.id, 120, 0));
- }
- else if ((paramEntity instanceof EntityBlaze))
- {
- paramEntity.attackEntityFrom(DamageHelper.cryotheum, 10.0F);
- }
- else
- {
- boolean bool = paramEntity.velocityChanged;
- paramEntity.attackEntityFrom(DamageHelper.cryotheum, 2.0F);
- paramEntity.velocityChanged = bool;
- }
- }
-
- public int getLightValue(IBlockAccess paramIBlockAccess, int paramInt1, int paramInt2, int paramInt3)
- {
- return TF_Fluids.fluidCryotheum.getLuminosity();
- }
-
- public void updateTick(World paramWorld, int paramInt1, int paramInt2, int paramInt3, Random paramRandom)
- {
- if (effect) {
- checkForInteraction(paramWorld, paramInt1, paramInt2, paramInt3);
- }
- if ((enableSourceFall) && (paramWorld.getBlockMetadata(paramInt1, paramInt2, paramInt3) == 0))
- {
- Block localBlock = paramWorld.getBlock(paramInt1, paramInt2 + this.densityDir, paramInt3);
- int i = paramWorld.getBlockMetadata(paramInt1, paramInt2 + this.densityDir, paramInt3);
- if ((localBlock == this) && (i != 0))
- {
- paramWorld.setBlock(paramInt1, paramInt2 + this.densityDir, paramInt3, this, 0, 3);
- paramWorld.setBlockToAir(paramInt1, paramInt2, paramInt3);
- return;
- }
- }
- super.updateTick(paramWorld, paramInt1, paramInt2, paramInt3, paramRandom);
- }
-
- protected void checkForInteraction(World paramWorld, int paramInt1, int paramInt2, int paramInt3)
- {
- if (paramWorld.getBlock(paramInt1, paramInt2, paramInt3) != this) {
- return;
- }
- int i = paramInt1;
- int j = paramInt2;
- int k = paramInt3;
- for (int m = 0; m < 6; m++)
- {
- i = paramInt1 + cofh.lib.util.helpers.BlockHelper.SIDE_COORD_MOD[m][0];
- j = paramInt2 + cofh.lib.util.helpers.BlockHelper.SIDE_COORD_MOD[m][1];
- k = paramInt3 + cofh.lib.util.helpers.BlockHelper.SIDE_COORD_MOD[m][2];
-
- interactWithBlock(paramWorld, i, j, k);
- }
- interactWithBlock(paramWorld, paramInt1 - 1, paramInt2, paramInt3 - 1);
- interactWithBlock(paramWorld, paramInt1 - 1, paramInt2, paramInt3 + 1);
- interactWithBlock(paramWorld, paramInt1 + 1, paramInt2, paramInt3 - 1);
- interactWithBlock(paramWorld, paramInt1 + 1, paramInt2, paramInt3 + 1);
- }
-
- protected void interactWithBlock(World paramWorld, int paramInt1, int paramInt2, int paramInt3)
- {
- Block localBlock = paramWorld.getBlock(paramInt1, paramInt2, paramInt3);
- if ((localBlock == Blocks.air) || (localBlock == this)) {
- return;
- }
- int i = paramWorld.getBlockMetadata(paramInt1, paramInt2, paramInt3);
- if (hasInteraction(localBlock, i))
- {
- BlockWrapper localBlockWrapper = getInteraction(localBlock, i);
- paramWorld.setBlock(paramInt1, paramInt2, paramInt3, localBlockWrapper.block, localBlockWrapper.metadata, 3);
- }
- else if ((paramWorld.isSideSolid(paramInt1, paramInt2, paramInt3, ForgeDirection.UP)) && (paramWorld.isAirBlock(paramInt1, paramInt2 + 1, paramInt3)))
- {
- paramWorld.setBlock(paramInt1, paramInt2 + 1, paramInt3, Blocks.snow_layer, 0, 3);
- }
- }
-
- protected void triggerInteractionEffects(World paramWorld, int paramInt1, int paramInt2, int paramInt3) {}
-}
diff --git a/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Block_Fluid_Pyrotheum.java b/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Block_Fluid_Pyrotheum.java
deleted file mode 100644
index 2b3234f511..0000000000
--- a/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Block_Fluid_Pyrotheum.java
+++ /dev/null
@@ -1,181 +0,0 @@
-package miscutil.core.xmod.thermalfoundation.block;
-
-import java.util.Random;
-
-import miscutil.core.lib.CORE;
-import miscutil.core.xmod.thermalfoundation.fluid.TF_Fluids;
-import net.minecraft.block.Block;
-import net.minecraft.block.material.MapColor;
-import net.minecraft.block.material.Material;
-import net.minecraft.block.material.MaterialLiquid;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.monster.EntityCreeper;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.world.IBlockAccess;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
-import cofh.core.fluid.BlockFluidInteractive;
-import cofh.lib.util.BlockWrapper;
-import cofh.lib.util.helpers.ServerHelper;
-import cpw.mods.fml.common.registry.GameRegistry;
-
-public class TF_Block_Fluid_Pyrotheum
- extends BlockFluidInteractive
-{
- Random random = new Random();
- public static final int LEVELS = 5;
- public static final Material materialFluidPyrotheum = new MaterialLiquid(MapColor.tntColor);
- private static boolean effect = true;
- private static boolean enableSourceFall = true;
-
- public TF_Block_Fluid_Pyrotheum()
- {
- super(CORE.MODID, TF_Fluids.fluidPyrotheum, Material.lava, "pyrotheum");
- setQuantaPerBlock(5);
- setTickRate(10);
-
- setHardness(1000.0F);
- setLightOpacity(1);
- setParticleColor(1.0F, 0.7F, 0.15F);
- }
-
- public boolean preInit()
- {
- GameRegistry.registerBlock(this, "FluidPyrotheum");
-
- addInteraction(Blocks.cobblestone, Blocks.stone);
- addInteraction(Blocks.grass, Blocks.dirt);
- addInteraction(Blocks.sand, Blocks.glass);
- addInteraction(Blocks.water, Blocks.stone);
- addInteraction(Blocks.flowing_water, Blocks.stone);
- addInteraction(Blocks.clay, Blocks.hardened_clay);
- addInteraction(Blocks.ice, Blocks.stone);
- addInteraction(Blocks.snow, Blocks.air);
- addInteraction(Blocks.snow_layer, Blocks.air);
- for (int i = 0; i < 8; i++) {
- addInteraction(Blocks.stone_stairs, i, Blocks.stone_brick_stairs, i);
- }
- String str1 = "Fluid.Pyrotheum";
- String str2 = "Enable this for Fluid Pyrotheum to be worse than lava.";
- effect = true;
-
- str2 = "Enable this for Fluid Pyrotheum Source blocks to gradually fall downwards.";
- enableSourceFall = true;
-
- return true;
- }
-
- public void onEntityCollidedWithBlock(World paramWorld, int paramInt1, int paramInt2, int paramInt3, Entity paramEntity)
- {
- if (!effect) {
- return;
- }
- if (ServerHelper.isClientWorld(paramWorld)) {
- return;
- }
- if (!(paramEntity instanceof EntityPlayer)) {
- if ((paramEntity instanceof EntityCreeper))
- {
- paramWorld.createExplosion(paramEntity, paramEntity.posX, paramEntity.posY, paramEntity.posZ, 6.0F, paramEntity.worldObj.getGameRules().getGameRuleBooleanValue("mobGriefing"));
- paramEntity.setDead();
- }
- }
- }
-
- public int getLightValue(IBlockAccess paramIBlockAccess, int paramInt1, int paramInt2, int paramInt3)
- {
- return TF_Fluids.fluidPyrotheum.getLuminosity();
- }
-
- public int getFireSpreadSpeed(IBlockAccess paramIBlockAccess, int paramInt1, int paramInt2, int paramInt3, ForgeDirection paramForgeDirection)
- {
- return effect ? 800 : 0;
- }
-
- public int getFlammability(IBlockAccess paramIBlockAccess, int paramInt1, int paramInt2, int paramInt3, ForgeDirection paramForgeDirection)
- {
- return 0;
- }
-
- public boolean isFlammable(IBlockAccess paramIBlockAccess, int paramInt1, int paramInt2, int paramInt3, ForgeDirection paramForgeDirection)
- {
- return (effect) && (paramForgeDirection.ordinal() > ForgeDirection.UP.ordinal()) && (paramIBlockAccess.getBlock(paramInt1, paramInt2 - 1, paramInt3) != this);
- }
-
- public boolean isFireSource(World paramWorld, int paramInt1, int paramInt2, int paramInt3, ForgeDirection paramForgeDirection)
- {
- return effect;
- }
-
- public void updateTick(World paramWorld, int paramInt1, int paramInt2, int paramInt3, Random paramRandom)
- {
- if (effect) {
- checkForInteraction(paramWorld, paramInt1, paramInt2, paramInt3);
- }
- if ((enableSourceFall) && (paramWorld.getBlockMetadata(paramInt1, paramInt2, paramInt3) == 0))
- {
- Block localBlock = paramWorld.getBlock(paramInt1, paramInt2 + this.densityDir, paramInt3);
- int i = paramWorld.getBlockMetadata(paramInt1, paramInt2 + this.densityDir, paramInt3);
- if (((localBlock == this) && (i != 0)) || (localBlock.isFlammable(paramWorld, paramInt1, paramInt2 + this.densityDir, paramInt3, ForgeDirection.UP)))
- {
- paramWorld.setBlock(paramInt1, paramInt2 + this.densityDir, paramInt3, this, 0, 3);
- paramWorld.setBlockToAir(paramInt1, paramInt2, paramInt3);
- return;
- }
- }
- super.updateTick(paramWorld, paramInt1, paramInt2, paramInt3, paramRandom);
- }
-
- protected void checkForInteraction(World paramWorld, int paramInt1, int paramInt2, int paramInt3)
- {
- if (paramWorld.getBlock(paramInt1, paramInt2, paramInt3) != this) {
- return;
- }
- int i = paramInt1;
- int j = paramInt2;
- int k = paramInt3;
- for (int m = 0; m < 6; m++)
- {
- i = paramInt1 + cofh.lib.util.helpers.BlockHelper.SIDE_COORD_MOD[m][0];
- j = paramInt2 + cofh.lib.util.helpers.BlockHelper.SIDE_COORD_MOD[m][1];
- k = paramInt3 + cofh.lib.util.helpers.BlockHelper.SIDE_COORD_MOD[m][2];
-
- interactWithBlock(paramWorld, i, j, k);
- }
- interactWithBlock(paramWorld, paramInt1 - 1, paramInt2, paramInt3 - 1);
- interactWithBlock(paramWorld, paramInt1 - 1, paramInt2, paramInt3 + 1);
- interactWithBlock(paramWorld, paramInt1 + 1, paramInt2, paramInt3 - 1);
- interactWithBlock(paramWorld, paramInt1 + 1, paramInt2, paramInt3 + 1);
- }
-
- protected void interactWithBlock(World paramWorld, int paramInt1, int paramInt2, int paramInt3)
- {
- Block localBlock = paramWorld.getBlock(paramInt1, paramInt2, paramInt3);
- if ((localBlock == Blocks.air) || (localBlock == this)) {
- return;
- }
- int i = paramWorld.getBlockMetadata(paramInt1, paramInt2, paramInt3);
- if (hasInteraction(localBlock, i))
- {
- BlockWrapper localBlockWrapper = getInteraction(localBlock, i);
- paramWorld.setBlock(paramInt1, paramInt2, paramInt3, localBlockWrapper.block, localBlockWrapper.metadata, 3);
- triggerInteractionEffects(paramWorld, paramInt1, paramInt2, paramInt3);
- }
- else if (localBlock.isFlammable(paramWorld, paramInt1, paramInt2, paramInt3, ForgeDirection.UP))
- {
- paramWorld.setBlock(paramInt1, paramInt2, paramInt3, Blocks.fire);
- }
- else if ((paramWorld.isSideSolid(paramInt1, paramInt2, paramInt3, ForgeDirection.UP)) && (paramWorld.isAirBlock(paramInt1, paramInt2 + 1, paramInt3)))
- {
- paramWorld.setBlock(paramInt1, paramInt2 + 1, paramInt3, Blocks.fire, 0, 3);
- }
- }
-
- protected void triggerInteractionEffects(World paramWorld, int paramInt1, int paramInt2, int paramInt3)
- {
- if (this.random.nextInt(16) == 0) {
- paramWorld.playSoundEffect(paramInt1 + 0.5F, paramInt2 + 0.5F, paramInt3 + 0.5F, "random.fizz", 0.5F, 2.2F + (paramWorld.rand.nextFloat() - paramWorld.rand.nextFloat()) * 0.8F);
- }
- }
-}
diff --git a/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Blocks.java b/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Blocks.java
deleted file mode 100644
index 68c893170f..0000000000
--- a/src/Java/miscutil/core/xmod/thermalfoundation/block/TF_Blocks.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package miscutil.core.xmod.thermalfoundation.block;
-
-import cofh.core.fluid.BlockFluidCoFHBase;
-
-public class TF_Blocks
-{
-
- public static BlockFluidCoFHBase blockFluidPyrotheum;
- public static BlockFluidCoFHBase blockFluidCryotheum;
-
-
- public static void preInit()
- {
- blockFluidPyrotheum = new TF_Block_Fluid_Pyrotheum();
- blockFluidCryotheum = new TF_Block_Fluid_Cryotheum();
- blockFluidPyrotheum.preInit();
- blockFluidCryotheum.preInit();
- }
-
- public static void init() {}
-
- public static void postInit()
- {
-
- }
-}
diff --git a/src/Java/miscutil/core/xmod/thermalfoundation/fluid/TF_Fluids.java b/src/Java/miscutil/core/xmod/thermalfoundation/fluid/TF_Fluids.java
deleted file mode 100644
index 39e05dc8f8..0000000000
--- a/src/Java/miscutil/core/xmod/thermalfoundation/fluid/TF_Fluids.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package miscutil.core.xmod.thermalfoundation.fluid;
-
-import miscutil.core.util.Utils;
-import miscutil.core.xmod.thermalfoundation.item.TF_Items;
-import net.minecraft.block.BlockDispenser;
-import net.minecraft.init.Items;
-import net.minecraft.item.EnumRarity;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidRegistry;
-import cofh.core.util.fluid.DispenserEmptyBucketHandler;
-import cofh.core.util.fluid.DispenserFilledBucketHandler;
-
-public class TF_Fluids
-{
- public static Fluid fluidPyrotheum;
- public static Fluid fluidCryotheum;
-
- public static void preInit()
- {
- Utils.LOG_INFO("Loading TF Fluids");
- Fluid pyrotheum = FluidRegistry.getFluid("pyrotheum");
- Fluid cryotheum = FluidRegistry.getFluid("cryotheum");
-
- if (pyrotheum == null){
- Utils.LOG_INFO("Registering Blazing Pyrotheum as it does not exist.");
- fluidPyrotheum = new Fluid("pyrotheum").setLuminosity(15).setDensity(2000).setViscosity(1200).setTemperature(4000).setRarity(EnumRarity.rare);
- registerFluid(fluidPyrotheum, "pyrotheum");
- }
- else {
- Utils.LOG_INFO("Registering Blazing Pyrotheum as it an already existing Fluid.");
- fluidPyrotheum = pyrotheum;
- }
- if (cryotheum == null){
- Utils.LOG_INFO("Registering Gelid Cryotheum as it does not exist.");
- fluidCryotheum = new Fluid("cryotheum").setLuminosity(0).setDensity(4000).setViscosity(3000).setTemperature(50).setRarity(EnumRarity.rare);
- registerFluid(fluidCryotheum, "cryotheum");
- }
- else {
- Utils.LOG_INFO("Registering Gelid Cryotheum as it an already existing Fluid.");
- fluidCryotheum = cryotheum;
- }
- }
-
- public static void init() {}
-
- public static void postInit() {}
-
- public static void registerFluid(Fluid paramFluid, String paramString)
- {
- if (!FluidRegistry.isFluidRegistered(paramString)) {
- FluidRegistry.registerFluid(paramFluid);
- }
- paramFluid = FluidRegistry.getFluid(paramString);
- }
-
- public static void registerDispenserHandlers()
- {
- BlockDispenser.dispenseBehaviorRegistry.putObject(TF_Items.itemBucket, new DispenserFilledBucketHandler());
- BlockDispenser.dispenseBehaviorRegistry.putObject(Items.bucket, new DispenserEmptyBucketHandler());
- }
-}
diff --git a/src/Java/miscutil/core/xmod/thermalfoundation/item/TF_Items.java b/src/Java/miscutil/core/xmod/thermalfoundation/item/TF_Items.java
deleted file mode 100644
index 99febd00db..0000000000
--- a/src/Java/miscutil/core/xmod/thermalfoundation/item/TF_Items.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package miscutil.core.xmod.thermalfoundation.item;
-
-import miscutil.core.creative.AddToCreativeTab;
-import miscutil.core.util.item.UtilsItems;
-import miscutil.core.xmod.thermalfoundation.block.TF_Blocks;
-import miscutil.core.xmod.thermalfoundation.fluid.TF_Fluids;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidContainerRegistry;
-import cofh.core.item.ItemBase;
-import cofh.core.item.ItemBucket;
-import cofh.core.util.energy.FurnaceFuelHandler;
-import cofh.core.util.fluid.BucketHandler;
-import cofh.lib.util.helpers.ItemHelper;
-
-public class TF_Items {
-
- public static ItemBase itemMaterial;
- public static ItemStack rodBlizz;
- public static ItemStack dustBlizz;
- public static ItemStack dustPyrotheum;
- public static ItemStack dustCryotheum;
- public static ItemBucket itemBucket;
- public static ItemStack bucketPyrotheum;
- public static ItemStack bucketCryotheum;
-
- public static ItemStack itemDustBlizz;
- public static ItemStack itemDustPyrotheum;
- public static ItemStack itemDustCryotheum;
- public static ItemStack itemRodBlizz;
-
- public static void preInit(){
-
-
- itemBucket = (ItemBucket)new ItemBucket("MiscUtils").setUnlocalizedName("bucket").setCreativeTab(AddToCreativeTab.tabMisc);
- itemMaterial = (ItemBase)new ItemBase("MiscUtils").setUnlocalizedName("material").setCreativeTab(AddToCreativeTab.tabMisc);
-
-
- bucketPyrotheum = itemBucket.addOreDictItem(1, "bucketPyrotheum");
- bucketCryotheum = itemBucket.addOreDictItem(2, "bucketCryotheum");
- rodBlizz = itemMaterial.addOreDictItem(1, "rodBlizz");
- dustBlizz = itemMaterial.addOreDictItem(2, "dustBlizz");
- dustPyrotheum = itemMaterial.addOreDictItem(3, "dustPyrotheum");
- dustCryotheum = itemMaterial.addOreDictItem(4, "dustCryotheum");
-
- FurnaceFuelHandler.registerFuel(dustPyrotheum, 2400);
-
-
- itemRodBlizz = UtilsItems.simpleMetaStack(itemMaterial, 1, 1);
- itemDustBlizz = UtilsItems.simpleMetaStack(itemMaterial, 2, 1);
- itemDustPyrotheum = UtilsItems.simpleMetaStack(itemMaterial, 3, 1);
- itemDustCryotheum = UtilsItems.simpleMetaStack(itemMaterial, 4, 1);
-
-
-
- }
-
- public static void init(){
-
- BucketHandler.registerBucket(TF_Blocks.blockFluidPyrotheum, 0, bucketPyrotheum);
- BucketHandler.registerBucket(TF_Blocks.blockFluidCryotheum, 0, bucketCryotheum);
- FluidContainerRegistry.registerFluidContainer(TF_Fluids.fluidPyrotheum, bucketPyrotheum, FluidContainerRegistry.EMPTY_BUCKET);
- FluidContainerRegistry.registerFluidContainer(TF_Fluids.fluidCryotheum, bucketCryotheum, FluidContainerRegistry.EMPTY_BUCKET);
-
-
- }
-
- public static void postInit(){
-
- ItemHelper.addRecipe(ItemHelper.ShapelessRecipe(ItemHelper.cloneStack(dustPyrotheum, 1), new Object[] { "dustCoal", "dustSulfur", "dustRedstone", "dustBlaze" }));
- ItemHelper.addRecipe(ItemHelper.ShapelessRecipe(ItemHelper.cloneStack(dustCryotheum, 1), new Object[] { Items.snowball, "dustSaltpeter", "dustRedstone", "dustBlizz" }));
- ItemHelper.addRecipe(ItemHelper.ShapelessRecipe(ItemHelper.cloneStack(dustCryotheum, 1), new Object[] { Items.snowball, "dustNitor", "dustRedstone", "dustBlizz" }));
- //ItemHelper.addRecipe(ItemHelper.ShapelessRecipe(ItemHelper.cloneStack(dustBlizz, 2), new Object[] { "rodBlizz" }));
-
-
-
- }
-
-}
diff --git a/src/Java/miscutil/core/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java b/src/Java/miscutil/core/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java
deleted file mode 100644
index dc35a59927..0000000000
--- a/src/Java/miscutil/core/xmod/thermalfoundation/recipe/TF_Gregtech_Recipes.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package miscutil.core.xmod.thermalfoundation.recipe;
-
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import miscutil.core.util.Utils;
-import miscutil.core.util.item.UtilsItems;
-import miscutil.core.xmod.thermalfoundation.item.TF_Items;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidRegistry;
-import net.minecraftforge.fluids.FluidStack;
-
-public class TF_Gregtech_Recipes {
-
- public static void run(){
- start();
- }
-
- private static void start(){
- //Get Items to work with
- ItemStack dust_Cryotheum = TF_Items.itemDustCryotheum.copy();
- ItemStack dust_Pyrotheum = TF_Items.itemDustPyrotheum.copy();
- ItemStack dust_Blizz = TF_Items.itemDustBlizz.copy();
- ItemStack dust_Blizz3 = UtilsItems.simpleMetaStack(TF_Items.itemMaterial, 2, 3);
- ItemStack rod_Blizz = TF_Items.itemRodBlizz.copy();
- FluidStack moltenRedstone = getFluidStack("molten.redstone", 250);
-
- //Gelid Cryotheum
- Utils.LOG_INFO("Adding Recipes for Gelid Cryotheum");
- GT_Values.RA.addFluidExtractionRecipe(dust_Cryotheum, GT_Values.NI, getFluidStack("cryotheum", 250), 10000, 200, 240);
- GT_Values.RA.addChemicalBathRecipe((GT_OreDictUnificator.get(OrePrefixes.ore, Materials.Cinnabar, 1L)), getFluidStack("cryotheum", 200), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Cinnabar, 3L), GT_Values.NI, GT_Values.NI, null, 400, 30);
-
- //Blizz Powder
- Utils.LOG_INFO("Adding Recipes for Blizz Powder");
- GT_Values.RA.addChemicalBathRecipe(new ItemStack(Items.snowball, 4), moltenRedstone, dust_Blizz, GT_Values.NI, GT_Values.NI, null, 400, 240);
-
- //Blizz Rod
- Utils.LOG_INFO("Adding Recipes for Blizz Rod");
- GT_Values.RA.addVacuumFreezerRecipe(new ItemStack(Items.blaze_rod), rod_Blizz, (int) Math.max((Materials.Blaze.getMass()*4) * 3L, 1L));
- GT_ModHandler.addPulverisationRecipe(rod_Blizz, dust_Blizz3, new ItemStack(Items.snowball, 1), 50, false);
-
- //Blazing Pyrotheum
- Utils.LOG_INFO("Adding Recipes for Blazing Pyrotheum");
- GT_Values.RA.addFluidExtractionRecipe(dust_Pyrotheum, GT_Values.NI, getFluidStack("pyrotheum", 250), 10000, 200, 240);
-
- }
-
- private static FluidStack getFluidStack(String fluidName, int amount){
- Utils.LOG_WARNING("Trying to get a fluid stack of "+fluidName);
- try {
- return FluidRegistry.getFluidStack(fluidName, amount);
- }
- catch (Throwable e){
- return null;
- }
-
- }
-
-}