From a05ff7acacb5479eca81b4112e7e73cb546d2e2b Mon Sep 17 00:00:00 2001 From: Technus Date: Thu, 9 Mar 2017 13:42:16 +0100 Subject: Initial --- .../com/github/technus/tectech/CustomItemList.java | 151 +++ .../github/technus/tectech/GT_CustomLoader.java | 22 + .../technus/tectech/GT_Loader_Elemental.java | 222 +++++ .../java/com/github/technus/tectech/TecTech.java | 82 ++ .../technus/tectech/auxiliary/Reference.java | 11 + .../technus/tectech/auxiliary/TecTechConfig.java | 30 + .../technus/tectech/blocks/QuantumGlass.java | 86 ++ .../technus/tectech/blocks/QuantumGlassRender.java | 121 +++ .../technus/tectech/casing/GT_Block_CasingsTT.java | 103 ++ .../tectech/casing/GT_Container_CasingsTT.java | 10 + .../technus/tectech/casing/GT_Item_CasingsTT.java | 14 + .../tectech/casing/GT_Loader_CasingsTT.java | 10 + .../github/technus/tectech/elementalMatter/README | 45 + .../Behaviour_elementalMatterContainer.java | 76 ++ .../elementalMatter/classes/cElementalDecay.java | 65 ++ .../classes/cElementalDefinition.java | 79 ++ .../classes/cElementalDefinitionStack.java | 74 ++ .../classes/cElementalDefinitionStackTree.java | 304 ++++++ .../classes/cElementalInstanceStack.java | 245 +++++ .../classes/cElementalInstanceStackTree.java | 345 +++++++ .../classes/cElementalPrimitive.java | 173 ++++ .../elementalMatter/classes/rElementalRecipe.java | 35 + .../classes/rElementalRecipeTree.java | 62 ++ .../classes/tElementalException.java | 10 + .../tectech/elementalMatter/commonValues.java | 25 + .../definitions/cPrimitiveDefinition.java | 41 + .../definitions/dAtomDefinition.java | 501 ++++++++++ .../definitions/dHadronDefinition.java | 324 ++++++ .../definitions/eBosonDefinition.java | 36 + .../definitions/eLeptonDefinition.java | 63 ++ .../definitions/eNeutrinoDefinition.java | 56 ++ .../definitions/eQuarkDefinition.java | 97 ++ .../gui/GT_Container_MultiMachineEM.java | 96 ++ .../elementalMatter/gui/GT_Container_Param.java | 205 ++++ .../gui/GT_Container_Uncertainty.java | 121 +++ .../gui/GT_GUIContainer_MultiMachineEM.java | 181 ++++ .../elementalMatter/gui/GT_GUIContainer_Param.java | 37 + .../gui/GT_GUIContainer_Uncertainty.java | 108 ++ .../gui/GT_GUIContainer_UncertaintyAdv.java | 117 +++ .../interfaces/iConnectsToEMpipe.java | 8 + .../interfaces/iElementalDefinition.java | 47 + .../interfaces/iElementalInstanceContainer.java | 11 + .../interfaces/iHasElementalDefinition.java | 9 + .../machine/GT_MetaTileEntity_EMbhg.java | 94 ++ .../machine/GT_MetaTileEntity_EMcollider.java | 73 ++ .../machine/GT_MetaTileEntity_EMcrafter.java | 50 + .../machine/GT_MetaTileEntity_EMdequantifier.java | 66 ++ .../machine/GT_MetaTileEntity_EMjunction.java | 114 +++ .../machine/GT_MetaTileEntity_EMmachine.java | 50 + .../machine/GT_MetaTileEntity_EMpipe.java | 162 +++ .../machine/GT_MetaTileEntity_EMquantifier.java | 109 ++ .../machine/GT_MetaTileEntity_EMscanner.java | 50 + .../machine/GT_MetaTileEntity_EMwormhole.java | 73 ++ .../GT_MetaTileEntity_Hatch_DynamoMulti.java | 113 +++ ...GT_MetaTileEntity_Hatch_ElementalContainer.java | 231 +++++ .../GT_MetaTileEntity_Hatch_EnergyMulti.java | 114 +++ .../GT_MetaTileEntity_Hatch_InputElemental.java | 43 + .../GT_MetaTileEntity_Hatch_MufflerElemental.java | 192 ++++ .../GT_MetaTileEntity_Hatch_OutputElemental.java | 70 ++ .../machine/GT_MetaTileEntity_Hatch_Param.java | 182 ++++ .../GT_MetaTileEntity_Hatch_Uncertainty.java | 289 ++++++ ...GT_MetaTileEntity_MultiblockBase_Elemental.java | 1041 ++++++++++++++++++++ .../github/technus/tectech/proxy/ClientProxy.java | 55 ++ .../github/technus/tectech/proxy/CommonProxy.java | 34 + .../gregtech/textures/blocks/iconsets/DEBUG_.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/DEBUG_0.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/DEBUG_1.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/DEBUG_2.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/DEBUG_3.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/DEBUG_4.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/DEBUG_5.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/EM_BHG.png | Bin 0 -> 959 bytes .../textures/blocks/iconsets/EM_BHG.png.mcmeta | 5 + .../textures/blocks/iconsets/EM_BHG_ACTIVE.png | Bin 0 -> 963 bytes .../blocks/iconsets/EM_BHG_ACTIVE.png.mcmeta | 5 + .../gregtech/textures/blocks/iconsets/EM_CANDY.png | Bin 0 -> 428 bytes .../textures/blocks/iconsets/EM_CANDY.png.mcmeta | 5 + .../textures/blocks/iconsets/EM_CASING.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/EM_COIL.png | Bin 0 -> 1147 bytes .../textures/blocks/iconsets/EM_COIL_NONSIDE.png | Bin 0 -> 1147 bytes .../textures/blocks/iconsets/EM_COLLIDER.png | Bin 0 -> 4327 bytes .../blocks/iconsets/EM_COLLIDER.png.mcmeta | 5 + .../blocks/iconsets/EM_COLLIDER_ACTIVE.png | Bin 0 -> 10579 bytes .../blocks/iconsets/EM_COLLIDER_ACTIVE.png.mcmeta | 5 + .../textures/blocks/iconsets/EM_CONTROLLER.png | Bin 0 -> 5289 bytes .../blocks/iconsets/EM_CONTROLLER.png.mcmeta | 5 + .../blocks/iconsets/EM_CONTROLLER_ACTIVE.png | Bin 0 -> 5289 bytes .../iconsets/EM_CONTROLLER_ACTIVE.png.mcmeta | 5 + .../gregtech/textures/blocks/iconsets/EM_FIELD.png | Bin 0 -> 4267 bytes .../textures/blocks/iconsets/EM_FIELD.png.mcmeta | 5 + .../textures/blocks/iconsets/EM_FIELD_CASING.png | Bin 0 -> 1147 bytes .../gregtech/textures/blocks/iconsets/EM_PIPE.png | Bin 0 -> 397 bytes .../gregtech/textures/blocks/iconsets/EM_TELE.png | Bin 0 -> 4267 bytes .../textures/blocks/iconsets/EM_TELE.png.mcmeta | 5 + .../textures/blocks/iconsets/EM_TIMESPACE.png | Bin 0 -> 9479 bytes .../blocks/iconsets/EM_TIMESPACE.png.mcmeta | 5 + .../gregtech/textures/blocks/iconsets/EM_WH.png | Bin 0 -> 4327 bytes .../textures/blocks/iconsets/EM_WH.png.mcmeta | 5 + .../textures/blocks/iconsets/EM_WH_ACTIVE.png | Bin 0 -> 4327 bytes .../blocks/iconsets/EM_WH_ACTIVE.png.mcmeta | 5 + .../textures/blocks/iconsets/MUFFLER_EM.png | Bin 0 -> 4267 bytes .../textures/blocks/iconsets/MUFFLER_EM.png.mcmeta | 5 + .../blocks/iconsets/OVERLAY_EM_T_ACTIVE.png | Bin 0 -> 245 bytes .../blocks/iconsets/OVERLAY_EM_T_ACTIVE.png.mcmeta | 5 + .../blocks/iconsets/OVERLAY_EM_T_SIDES.png | Bin 0 -> 662 bytes .../blocks/iconsets/OVERLAY_EM_T_SIDES.png.mcmeta | 5 + .../gregtech/textures/blocks/iconsets/PARAM.png | Bin 0 -> 4267 bytes .../textures/blocks/iconsets/PARAM.png.mcmeta | 5 + .../textures/blocks/iconsets/PARAM_ACTIVE.png | Bin 0 -> 5289 bytes .../blocks/iconsets/PARAM_ACTIVE.png.mcmeta | 5 + .../gregtech/textures/blocks/iconsets/UC.png | Bin 0 -> 536 bytes .../textures/blocks/iconsets/UC.png.mcmeta | 5 + .../textures/blocks/iconsets/UC_ACTIVE.png | Bin 0 -> 482 bytes .../textures/blocks/iconsets/UC_ACTIVE.png.mcmeta | 5 + .../assets/gregtech/textures/gui/Parametrizer.png | Bin 0 -> 3623 bytes .../assets/gregtech/textures/gui/Uncertainty.png | Bin 0 -> 3039 bytes .../textures/gui/multimachines/EMDisplay.png | Bin 0 -> 3673 bytes src/main/resources/assets/tectech/lang/en_US.lang | 1 + .../tectech/textures/blocks/blockQuantumGlass.png | Bin 0 -> 1147 bytes src/main/resources/mcmod.info | 16 + 120 files changed, 7775 insertions(+) create mode 100644 src/main/java/com/github/technus/tectech/CustomItemList.java create mode 100644 src/main/java/com/github/technus/tectech/GT_CustomLoader.java create mode 100644 src/main/java/com/github/technus/tectech/GT_Loader_Elemental.java create mode 100644 src/main/java/com/github/technus/tectech/TecTech.java create mode 100644 src/main/java/com/github/technus/tectech/auxiliary/Reference.java create mode 100644 src/main/java/com/github/technus/tectech/auxiliary/TecTechConfig.java create mode 100644 src/main/java/com/github/technus/tectech/blocks/QuantumGlass.java create mode 100644 src/main/java/com/github/technus/tectech/blocks/QuantumGlassRender.java create mode 100644 src/main/java/com/github/technus/tectech/casing/GT_Block_CasingsTT.java create mode 100644 src/main/java/com/github/technus/tectech/casing/GT_Container_CasingsTT.java create mode 100644 src/main/java/com/github/technus/tectech/casing/GT_Item_CasingsTT.java create mode 100644 src/main/java/com/github/technus/tectech/casing/GT_Loader_CasingsTT.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/README create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/Behaviour_elementalMatterContainer.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalDecay.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalDefinitionStack.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalDefinitionStackTree.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalInstanceStack.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalInstanceStackTree.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalPrimitive.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/rElementalRecipe.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/rElementalRecipeTree.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/classes/tElementalException.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/commonValues.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/definitions/cPrimitiveDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/definitions/dAtomDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/definitions/dHadronDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/definitions/eBosonDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/definitions/eLeptonDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/definitions/eNeutrinoDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/definitions/eQuarkDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/gui/GT_Container_MultiMachineEM.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/gui/GT_Container_Param.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/gui/GT_Container_Uncertainty.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/gui/GT_GUIContainer_MultiMachineEM.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/gui/GT_GUIContainer_Param.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/gui/GT_GUIContainer_Uncertainty.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/gui/GT_GUIContainer_UncertaintyAdv.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/interfaces/iConnectsToEMpipe.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/interfaces/iElementalDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/interfaces/iElementalInstanceContainer.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/interfaces/iHasElementalDefinition.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMbhg.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMcollider.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMcrafter.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMdequantifier.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMjunction.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMmachine.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMpipe.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMquantifier.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMscanner.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_EMwormhole.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_Hatch_DynamoMulti.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_Hatch_ElementalContainer.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_Hatch_EnergyMulti.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_Hatch_InputElemental.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_Hatch_MufflerElemental.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_Hatch_OutputElemental.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_Hatch_Param.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_Hatch_Uncertainty.java create mode 100644 src/main/java/com/github/technus/tectech/elementalMatter/machine/GT_MetaTileEntity_MultiblockBase_Elemental.java create mode 100644 src/main/java/com/github/technus/tectech/proxy/ClientProxy.java create mode 100644 src/main/java/com/github/technus/tectech/proxy/CommonProxy.java create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/DEBUG_.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/DEBUG_0.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/DEBUG_1.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/DEBUG_2.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/DEBUG_3.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/DEBUG_4.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/DEBUG_5.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_BHG.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_BHG.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_BHG_ACTIVE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_BHG_ACTIVE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_CANDY.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_CANDY.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_CASING.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_COIL.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_COIL_NONSIDE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_COLLIDER.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_COLLIDER.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_COLLIDER_ACTIVE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_COLLIDER_ACTIVE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_CONTROLLER.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_CONTROLLER.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_CONTROLLER_ACTIVE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_CONTROLLER_ACTIVE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_FIELD.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_FIELD.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_FIELD_CASING.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_PIPE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_TELE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_TELE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_TIMESPACE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_TIMESPACE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_WH.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_WH.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_WH_ACTIVE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/EM_WH_ACTIVE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/MUFFLER_EM.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/MUFFLER_EM.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/OVERLAY_EM_T_ACTIVE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/OVERLAY_EM_T_ACTIVE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/OVERLAY_EM_T_SIDES.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/OVERLAY_EM_T_SIDES.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/PARAM.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/PARAM.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/PARAM_ACTIVE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/PARAM_ACTIVE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/UC.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/UC.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/UC_ACTIVE.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/iconsets/UC_ACTIVE.png.mcmeta create mode 100644 src/main/resources/assets/gregtech/textures/gui/Parametrizer.png create mode 100644 src/main/resources/assets/gregtech/textures/gui/Uncertainty.png create mode 100644 src/main/resources/assets/gregtech/textures/gui/multimachines/EMDisplay.png create mode 100644 src/main/resources/assets/tectech/lang/en_US.lang create mode 100644 src/main/resources/assets/tectech/textures/blocks/blockQuantumGlass.png create mode 100644 src/main/resources/mcmod.info (limited to 'src') diff --git a/src/main/java/com/github/technus/tectech/CustomItemList.java b/src/main/java/com/github/technus/tectech/CustomItemList.java new file mode 100644 index 0000000000..22e481be5b --- /dev/null +++ b/src/main/java/com/github/technus/tectech/CustomItemList.java @@ -0,0 +1,151 @@ +package com.github.technus.tectech; + +import gregtech.api.interfaces.IItemContainer; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +import static gregtech.api.enums.GT_Values.W; + +public enum CustomItemList implements IItemContainer +{ + EMpipe, + eM_dynamomulti4_UV,eM_dynamomulti16_UV,eM_dynamomulti64_UV, + eM_dynamomulti4_UHV,eM_dynamomulti16_UHV,eM_dynamomulti64_UHV, + eM_dynamomulti4_UEV,eM_dynamomulti16_UEV,eM_dynamomulti64_UEV, + eM_dynamomulti4_UIV,eM_dynamomulti16_UIV,eM_dynamomulti64_UIV, + eM_dynamomulti4_UMV,eM_dynamomulti16_UMV,eM_dynamomulti64_UMV, + eM_dynamomulti4_UXV,eM_dynamomulti16_UXV,eM_dynamomulti64_UXV, + eM_energymulti4_UV,eM_energymulti16_UV,eM_energymulti64_UV, + eM_energymulti4_UHV,eM_energymulti16_UHV,eM_energymulti64_UHV, + eM_energymulti4_UEV,eM_energymulti16_UEV,eM_energymulti64_UEV, + eM_energymulti4_UIV,eM_energymulti16_UIV,eM_energymulti64_UIV, + eM_energymulti4_UMV,eM_energymulti16_UMV,eM_energymulti64_UMV, + eM_energymulti4_UXV,eM_energymulti16_UXV,eM_energymulti64_UXV, + eM_in_UV,eM_in_UHV,eM_in_UEV,eM_in_UIV,eM_in_UMV,eM_in_UXV, + eM_out_UV,eM_out_UHV,eM_out_UEV,eM_out_UIV,eM_out_UMV,eM_out_UXV, + eM_muffler_UV,eM_muffler_UHV,eM_muffler_UEV,eM_muffler_UIV,eM_muffler_UMV,eM_muffler_UXV, + Parametrizer_Hatch,Uncertainty_Hatch,UncertaintyX_Hatch,eM_Casing,eM_Field,eM_Field_Casing,eM_Coil,eM_Tele,eM_TimeSpaceWarp,debugBlock, + Machine_Multi_BHG,Machine_Multi_EM,Machine_Multi_MatterToEM,Machine_Multi_EMToMatter,Machine_Multi_Collider,Machine_Multi_Wormhole,Machine_Multi_EMCrafter,Machine_Multi_EMjunction; + + + private ItemStack mStack = null; + private boolean mHasNotBeenSet = true; + + //public static Fluid sOilExtraHeavy, sOilHeavy, sOilMedium, sOilLight, sNaturalGas; + + @Override + public IItemContainer 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 IItemContainer 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 IItemContainer 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 IItemContainer 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/main/java/com/github/technus/tectech/GT_CustomLoader.java b/src/main/java/com/github/technus/tectech/GT_CustomLoader.java new file mode 100644 index 0000000000..82d97663c0 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/GT_CustomLoader.java @@ -0,0 +1,22 @@ +package com.github.technus.tectech; + +import com.github.technus.tectech.blocks.QuantumGlass; +import com.github.technus.tectech.casing.GT_Loader_CasingsTT; +import cpw.mods.fml.common.registry.GameRegistry; + +public class GT_CustomLoader { + + + public GT_CustomLoader() { + ElementalCasing = new GT_Loader_CasingsTT(); + ElementalLoader = new GT_Loader_Elemental(); + } + + private GT_Loader_Elemental ElementalLoader = null; + private GT_Loader_CasingsTT ElementalCasing = null; + + public void run() { + ElementalCasing.run(); + ElementalLoader.run(); + } +} diff --git a/src/main/java/com/github/technus/tectech/GT_Loader_Elemental.java b/src/main/java/com/github/technus/tectech/GT_Loader_Elemental.java new file mode 100644 index 0000000000..73fd076604 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/GT_Loader_Elemental.java @@ -0,0 +1,222 @@ +package com.github.technus.tectech; + +import com.github.technus.tectech.elementalMatter.classes.cElementalPrimitive; +import com.github.technus.tectech.elementalMatter.definitions.*; +import com.github.technus.tectech.elementalMatter.machine.*; + +/** + * Created by danie_000 on 16.11.2016. + */ +public class GT_Loader_Elemental implements Runnable { + public void run() { + + // =================================================================================================== + // def init + // =================================================================================================== + + cElementalPrimitive.run(); + + cPrimitiveDefinition.run(); + + eQuarkDefinition.run(); + eLeptonDefinition.run(); + eNeutrinoDefinition.run(); + eBosonDefinition.run(); + + dHadronDefinition.run(); + + dAtomDefinition.run(); + + // =================================================================================================== + // Recipe init + // =================================================================================================== + + GT_MetaTileEntity_EMquantifier.recipeInit(); + + // =================================================================================================== + // eM IN + // =================================================================================================== + + CustomItemList.eM_in_UV.set(new GT_MetaTileEntity_Hatch_InputElemental( + 12070, "hatch.emin.tier.08", "UV Elemental Input Hatch",8).getStackForm(1L)); + + CustomItemList.eM_in_UHV.set(new GT_MetaTileEntity_Hatch_InputElemental( + 12071, "hatch.emin.tier.09", "UHV Elemental Input Hatch",9).getStackForm(1L)); + + CustomItemList.eM_in_UEV.set(new GT_MetaTileEntity_Hatch_InputElemental( + 12072, "hatch.emin.tier.10", "UEV Elemental Input Hatch",10).getStackForm(1L)); + + CustomItemList.eM_in_UIV.set(new GT_MetaTileEntity_Hatch_InputElemental( + 12073, "hatch.emin.tier.11", "UIV Elemental Input Hatch",11).getStackForm(1L)); + + CustomItemList.eM_in_UMV.set(new GT_MetaTileEntity_Hatch_InputElemental( + 12074, "hatch.emin.tier.12", "UMV Elemental Input Hatch",12).getStackForm(1L)); + + CustomItemList.eM_in_UXV.set(new GT_MetaTileEntity_Hatch_InputElemental( + 12075, "hatch.emin.tier.13", "UXV Elemental Input Hatch",13).getStackForm(1L)); + + // =================================================================================================== + // eM OUT + // =================================================================================================== + + CustomItemList.eM_out_UV.set(new GT_MetaTileEntity_Hatch_OutputElemental( + 12080, "hatch.emout.tier.08", "UV Elemental Output Hatch",8).getStackForm(1L)); + + CustomItemList.eM_out_UHV.set(new GT_MetaTileEntity_Hatch_OutputElemental( + 12081, "hatch.emout.tier.09", "UHV Elemental Output Hatch",9).getStackForm(1L)); + + CustomItemList.eM_out_UEV.set(new GT_MetaTileEntity_Hatch_OutputElemental( + 12082, "hatch.emout.tier.10", "UEV Elemental Output Hatch",10).getStackForm(1L)); + + CustomItemList.eM_out_UIV.set(new GT_MetaTileEntity_Hatch_OutputElemental( + 12083, "hatch.emout.tier.11", "UIV Elemental Output Hatch",11).getStackForm(1L)); + + CustomItemList.eM_out_UMV.set(new GT_MetaTileEntity_Hatch_OutputElemental( + 12084, "hatch.emout.tier.12", "UMV Elemental Output Hatch",12).getStackForm(1L)); + + CustomItemList.eM_out_UXV.set(new GT_MetaTileEntity_Hatch_OutputElemental( + 12085, "hatch.emout.tier.13", "UXV Elemental Output Hatch",13).getStackForm(1L)); + + // =================================================================================================== + // eM Waste OUT + // =================================================================================================== + + CustomItemList.eM_muffler_UV.set(new GT_MetaTileEntity_Hatch_MufflerElemental( + 12090, "hatch.emmuffler.tier.08", "UV Overflow Output Hatch",8,1e10f).getStackForm(1L)); + + CustomItemList.eM_muffler_UHV.set(new GT_MetaTileEntity_Hatch_MufflerElemental( + 12091, "hatch.emmuffler.tier.09", "UHV Overflow Output Hatch",9,5e10f).getStackForm(1L)); + + CustomItemList.eM_muffler_UEV.set(new GT_MetaTileEntity_Hatch_MufflerElemental( + 12092, "hatch.emmuffler.tier.10", "UEV Overflow Output Hatch",10,25e10f).getStackForm(1L)); + + CustomItemList.eM_muffler_UIV.set(new GT_MetaTileEntity_Hatch_MufflerElemental( + 12093, "hatch.emmuffler.tier.11", "UIV Overflow Output Hatch",11,125e10f).getStackForm(1L)); + + CustomItemList.eM_muffler_UMV.set(new GT_MetaTileEntity_Hatch_MufflerElemental( + 12094, "hatch.emmuffler.tier.12", "UMV Overflow Output Hatch",12,125e11f).getStackForm(1L)); + + CustomItemList.eM_muffler_UXV.set(new GT_MetaTileEntity_Hatch_MufflerElemental( + 12095, "hatch.emmuffler.tier.13", "UXV Overflow Output Hatch",13,125e12f).getStackForm(1L)); + + // =================================================================================================== + // Multi AMP Power INPUTS + // =================================================================================================== + + CustomItemList.eM_energymulti4_UV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12100, "hatch.energymulti04.tier.08", "UV 4A Energy Hatch",8,4).getStackForm(1L)); + CustomItemList.eM_energymulti16_UV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12110, "hatch.energymulti16.tier.08", "UV 16A Energy Hatch",8,16).getStackForm(1L)); + CustomItemList.eM_energymulti64_UV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12120, "hatch.energymulti64.tier.08", "UV 64A Energy Hatch",8,64).getStackForm(1L)); + + CustomItemList.eM_energymulti4_UHV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12101, "hatch.energymulti04.tier.09", "UHV 4A Energy Hatch",9,4).getStackForm(1L)); + CustomItemList.eM_energymulti16_UHV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12111, "hatch.energymulti16.tier.09", "UHV 16A Energy Hatch",9,16).getStackForm(1L)); + CustomItemList.eM_energymulti64_UHV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12121, "hatch.energymulti64.tier.09", "UHV 64A Energy Hatch",9,64).getStackForm(1L)); + + CustomItemList.eM_energymulti4_UEV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12102, "hatch.energymulti04.tier.10", "UEV 4A Energy Hatch",10,4).getStackForm(1L)); + CustomItemList.eM_energymulti16_UEV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12112, "hatch.energymulti16.tier.10", "UEV 16A Energy Hatch",10,16).getStackForm(1L)); + CustomItemList.eM_energymulti64_UEV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12122, "hatch.energymulti64.tier.10", "UEV 64A Energy Hatch",10,64).getStackForm(1L)); + + CustomItemList.eM_energymulti4_UIV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12103, "hatch.energymulti04.tier.11", "UIV 4A Energy Hatch",11,4).getStackForm(1L)); + CustomItemList.eM_energymulti16_UIV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12113, "hatch.energymulti16.tier.11", "UIV 16A Energy Hatch",11,16).getStackForm(1L)); + CustomItemList.eM_energymulti64_UIV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12123, "hatch.energymulti64.tier.11", "UIV 64A Energy Hatch",11,64).getStackForm(1L)); + + CustomItemList.eM_energymulti4_UMV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12104, "hatch.energymulti04.tier.12", "UMV 4A Energy Hatch",12,4).getStackForm(1L)); + CustomItemList.eM_energymulti16_UMV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12114, "hatch.energymulti16.tier.12", "UMV 16A Energy Hatch",12,16).getStackForm(1L)); + CustomItemList.eM_energymulti64_UMV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12124, "hatch.energymulti64.tier.12", "UMV 64A Energy Hatch",12,64).getStackForm(1L)); + + CustomItemList.eM_energymulti4_UXV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12105, "hatch.energymulti04.tier.13", "UXV 4A Energy Hatch",13,4).getStackForm(1L)); + CustomItemList.eM_energymulti16_UXV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12115, "hatch.energymulti16.tier.13", "UXV 16A Energy Hatch",13,16).getStackForm(1L)); + CustomItemList.eM_energymulti64_UXV.set(new GT_MetaTileEntity_Hatch_EnergyMulti( + 12125, "hatch.energymulti64.tier.13", "UXV 64A Energy Hatch",13,64).getStackForm(1L)); + + + // =================================================================================================== + // Multi AMP Power OUTPUTS + // =================================================================================================== + + CustomItemList.eM_dynamomulti4_UV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12130, "hatch.dynamomulti04.tier.08", "UV 4A Dynamo Hatch",8,4).getStackForm(1L)); + CustomItemList.eM_dynamomulti16_UV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12140, "hatch.dynamomulti16.tier.08", "UV 16A Dynamo Hatch",8,16).getStackForm(1L)); + CustomItemList.eM_dynamomulti64_UV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12150, "hatch.dynamomulti64.tier.08", "UV 64A Dynamo Hatch",8,64).getStackForm(1L)); + + CustomItemList.eM_dynamomulti4_UHV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12131, "hatch.dynamomulti04.tier.09", "UHV 4A Dynamo Hatch",9,4).getStackForm(1L)); + CustomItemList.eM_dynamomulti16_UHV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12141, "hatch.dynamomulti16.tier.09", "UHV 16A Dynamo Hatch",9,16).getStackForm(1L)); + CustomItemList.eM_dynamomulti64_UHV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12151, "hatch.dynamomulti64.tier.09", "UHV 64A Dynamo Hatch",9,64).getStackForm(1L)); + + CustomItemList.eM_dynamomulti4_UEV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12132, "hatch.dynamomulti04.tier.10", "UEV 4A Dynamo Hatch",10,4).getStackForm(1L)); + CustomItemList.eM_dynamomulti16_UEV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12142, "hatch.dynamomulti16.tier.10", "UEV 16A Dynamo Hatch",10,16).getStackForm(1L)); + CustomItemList.eM_dynamomulti64_UEV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12152, "hatch.dynamomulti64.tier.10", "UEV 64A Dynamo Hatch",10,64).getStackForm(1L)); + + CustomItemList.eM_dynamomulti4_UIV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12133, "hatch.dynamomulti04.tier.11", "UIV 4A Dynamo Hatch",11,4).getStackForm(1L)); + CustomItemList.eM_dynamomulti16_UIV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12143, "hatch.dynamomulti16.tier.11", "UIV 16A Dynamo Hatch",11,16).getStackForm(1L)); + CustomItemList.eM_dynamomulti64_UIV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12153, "hatch.dynamomulti64.tier.11", "UIV 64A Dynamo Hatch",11,64).getStackForm(1L)); + + CustomItemList.eM_dynamomulti4_UMV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12134, "hatch.dynamomulti04.tier.12", "UMV 4A Dynamo Hatch",12,4).getStackForm(1L)); + CustomItemList.eM_dynamomulti16_UMV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12144, "hatch.dynamomulti16.tier.12", "UMV 16A Dynamo Hatch",12,16).getStackForm(1L)); + CustomItemList.eM_dynamomulti64_UMV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12154, "hatch.dynamomulti64.tier.12", "UMV 64A Dynamo Hatch",12,64).getStackForm(1L)); + + CustomItemList.eM_dynamomulti4_UXV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12135, "hatch.dynamomulti04.tier.13", "UXV 4A Dynamo Hatch",13,4).getStackForm(1L)); + CustomItemList.eM_dynamomulti16_UXV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12145, "hatch.dynamomulti16.tier.13", "UXV 16A Dynamo Hatch",13,16).getStackForm(1L)); + CustomItemList.eM_dynamomulti64_UXV.set(new GT_MetaTileEntity_Hatch_DynamoMulti( + 12155, "hatch.dynamomulti64.tier.13", "UXV 64A Dynamo Hatch",13,64).getStackForm(1L)); + + // =================================================================================================== + // MULTIBLOCKS EM + // =================================================================================================== + + CustomItemList.Machine_Multi_MatterToEM.set(new GT_MetaTileEntity_EMquantifier(12160,"multimachine.mattertoem","Matter Quantifier").getStackForm(1L)); + CustomItemList.Machine_Multi_EMToMatter.set(new GT_MetaTileEntity_EMdequantifier(12161,"multimachine.emtomatter","Matter De-quantifier").getStackForm(1L)); + CustomItemList.Machine_Multi_EMjunction.set(new GT_MetaTileEntity_EMjunction(12162,"multimachine.emjunction","Matter junction").getStackForm(1L)); + CustomItemList.Machine_Multi_EM.set(new GT_MetaTileEntity_EMmachine(12163,"multimachine.emprocessing","Quantum Processing Machine").getStackForm(1L)); + CustomItemList.Machine_Multi_EMCrafter.set(new GT_MetaTileEntity_EMcrafter(12164,"multimachine.emcrafter","Matter Assembler").getStackForm(1L)); + CustomItemList.Machine_Multi_Collider.set(new GT_MetaTileEntity_EMcollider(12165,"multimachine.emcollider","Matter Collider").getStackForm(1L)); + CustomItemList.Machine_Multi_BHG.set(new GT_MetaTileEntity_EMbhg(12166,"multimachine.blackholegenerator","Black Hole Generator").getStackForm(1L)); + CustomItemList.Machine_Multi_Wormhole.set(new GT_MetaTileEntity_EMwormhole(12167,"multimachine.emwormhole","Wormhole").getStackForm(1L)); + + // =================================================================================================== + // Hatches EM + // =================================================================================================== + CustomItemList.Parametrizer_Hatch.set(new GT_MetaTileEntity_Hatch_Param(12170,"hatch.param.tier.06","Parametrizer for machines",6).getStackForm(1L)); + CustomItemList.Uncertainty_Hatch.set(new GT_MetaTileEntity_Hatch_Uncertainty(12171,"hatch.emcertain.tier.06","Uncertainty resolver",6).getStackForm(1L)); + CustomItemList.UncertaintyX_Hatch.set(new GT_MetaTileEntity_Hatch_Uncertainty(12172,"hatch.emcertain.tier.10","Uncertainty resolver X",10).getStackForm(1L)); + + // =================================================================================================== + // EM pipe + // =================================================================================================== + CustomItemList.EMpipe.set(new GT_MetaTileEntity_EMpipe(12179,"pipe.elementalmatter","Quantum tunnel").getStackForm(1L)); + + //System.out.println("ELEMENTAL INIT DONE"); + } +} diff --git a/src/main/java/com/github/technus/tectech/TecTech.java b/src/main/java/com/github/technus/tectech/TecTech.java new file mode 100644 index 0000000000..22e1e440c0 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/TecTech.java @@ -0,0 +1,82 @@ +package com.github.technus.tectech; + +import com.github.technus.tectech.auxiliary.Reference; +import com.github.technus.tectech.auxiliary.TecTechConfig; +import com.github.technus.tectech.blocks.QuantumGlass; +import com.github.technus.tectech.blocks.QuantumGlassRender; +import com.github.technus.tectech.proxy.CommonProxy; +import cpw.mods.fml.common.Mod; +import cpw.mods.fml.common.Mod.EventHandler; +import cpw.mods.fml.common.Mod.Instance; +import cpw.mods.fml.common.SidedProxy; +import cpw.mods.fml.common.event.FMLInitializationEvent; +import cpw.mods.fml.common.event.FMLPostInitializationEvent; +import cpw.mods.fml.common.event.FMLPreInitializationEvent; +import cpw.mods.fml.common.event.FMLServerStartingEvent; +import cpw.mods.fml.common.registry.GameRegistry; +import eu.usrv.yamcore.auxiliary.IngameErrorLog; +import eu.usrv.yamcore.auxiliary.LogHelper; + +import java.util.Random; + +@Mod(modid = Reference.MODID, name = Reference.NAME, version = Reference.VERSION, dependencies = "required-after:Forge@[10.13.4.1614,);" + + "required-after:YAMCore@[0.5.73,);") +public class TecTech { + + @SidedProxy(clientSide = Reference.CLIENTSIDE, serverSide = Reference.SERVERSIDE) + public static CommonProxy proxy; + + @Instance(Reference.MODID) + public static TecTech instance; + + //public static CreativeTabsManager TabManager = null; + public static IngameErrorLog Module_AdminErrorLogs = null; + public static GT_CustomLoader GTCustomLoader = null; + public static TecTechConfig ModConfig; + public static Random Rnd = null; + public static LogHelper Logger = new LogHelper(Reference.MODID); + + public static void AddLoginError(String pMessage) { + if (Module_AdminErrorLogs != null) + Module_AdminErrorLogs.AddErrorLogOnAdminJoin(pMessage); + } + + @EventHandler + public void PreLoad(FMLPreInitializationEvent PreEvent) { + Logger.setDebugOutput(true); + + Rnd = new Random(System.currentTimeMillis()); + + ModConfig = new TecTechConfig(PreEvent.getModConfigurationDirectory(), Reference.COLLECTIONNAME, + Reference.MODID); + if (!ModConfig.LoadConfig()) + Logger.error( + String.format("%s could not load its config file. Things are going to be weird!", Reference.MODID)); + + if (ModConfig.ModAdminErrorLogs_Enabled) { + Logger.debug("Module_AdminErrorLogs is enabled"); + Module_AdminErrorLogs = new IngameErrorLog(); + } + } + + @EventHandler + public void load(FMLInitializationEvent event) { + GameRegistry.registerBlock(QuantumGlass.INSTANCE,QuantumGlass.INSTANCE.getUnlocalizedName()); + } + + @EventHandler + public void PostLoad(FMLPostInitializationEvent PostEvent) { + GTCustomLoader = new GT_CustomLoader(); + GTCustomLoader.run(); + } + + /** + * Do some stuff once the server starts + * + * @param pEvent + */ + @EventHandler + public void serverLoad(FMLServerStartingEvent pEvent) { + } + +} diff --git a/src/main/java/com/github/technus/tectech/auxiliary/Reference.java b/src/main/java/com/github/technus/tectech/auxiliary/Reference.java new file mode 100644 index 0000000000..85f57f2c24 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/auxiliary/Reference.java @@ -0,0 +1,11 @@ + +package com.github.technus.tectech.auxiliary; + +public class Reference { + public static final String MODID = "tectech"; + public static final String NAME = "TecTech - Tec Technology!"; + public static final String VERSION = "GRADLETOKEN_VERSION"; + public static final String COLLECTIONNAME = "TecTech"; + public static final String CLIENTSIDE = "com.github.technus.tectech.proxy.ClientProxy"; + public static final String SERVERSIDE = "com.github.technus.tectech.proxy.CommonProxy"; +} diff --git a/src/main/java/com/github/technus/tectech/auxiliary/TecTechConfig.java b/src/main/java/com/github/technus/tectech/auxiliary/TecTechConfig.java new file mode 100644 index 0000000000..0eb8a90d8f --- /dev/null +++ b/src/main/java/com/github/technus/tectech/auxiliary/TecTechConfig.java @@ -0,0 +1,30 @@ +package com.github.technus.tectech.auxiliary; + +import eu.usrv.yamcore.config.ConfigManager; + +import java.io.File; + +public class TecTechConfig extends ConfigManager { + public TecTechConfig(File pConfigBaseDirectory, String pModCollectionDirectory, String pModID) { + super(pConfigBaseDirectory, pModCollectionDirectory, pModID); + + } + + public boolean ModAdminErrorLogs_Enabled; + + @Override + protected void PreInit() { + ModAdminErrorLogs_Enabled = false; + } + + @Override + protected void Init() { + ModAdminErrorLogs_Enabled = _mainConfig.getBoolean("AdminErrorLog", "Modules", ModAdminErrorLogs_Enabled, + "If set to true, every op/admin will receive all errors occoured during the startup phase as ingame message on join"); + } + + @Override + protected void PostInit() { + + } +} \ No newline at end of file diff --git a/src/main/java/com/github/technus/tectech/blocks/QuantumGlass.java b/src/main/java/com/github/technus/tectech/blocks/QuantumGlass.java new file mode 100644 index 0000000000..e126cfb892 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/blocks/QuantumGlass.java @@ -0,0 +1,86 @@ +package com.github.technus.tectech.blocks; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import eu.usrv.yamcore.blocks.BlockBase; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; + +import static com.github.technus.tectech.auxiliary.Reference.MODID; + +/** + * Created by danie_000 on 17.12.2016. + */ +public final class QuantumGlass extends BlockBase{ + public static IIcon stuff; + public static QuantumGlass INSTANCE=new QuantumGlass(); + + public QuantumGlass(){ + super(Material.iron); + this.setBlockBounds(0,0,0,1,1,1); + setBlockName("QuantumGlass"); + setHarvestLevel("wrench",3); + setHardness(50); + setResistance(30); + setLightOpacity(0); + setStepSound(Block.soundTypeMetal); + setBlockTextureName(MODID+":blockQuantumGlass"); + } + + @Override + public boolean isBeaconBase(IBlockAccess worldObj, int x, int y, int z, int beaconX, int beaconY, int beaconZ) { + return true; + } + + @Override + public boolean isOpaqueCube() { + return false; + } + + @Override + public boolean getCanBlockGrass() { + return false; + } + + //@Override + //public boolean canRenderInPass(int pass) { + // return true; + //} + + @Override + public boolean canBeReplacedByLeaves(IBlockAccess world, int x, int y, int z) { + return false; + } + + @SideOnly(Side.CLIENT) + public int getRenderBlockPass() + { + return 1; + } + + public boolean renderAsNormalBlock() + { + return false; + } + + @SideOnly(Side.CLIENT) + public boolean shouldSideBeRendered(IBlockAccess p_149646_1_, int p_149646_2_, int p_149646_3_, int p_149646_4_, int p_149646_5_) + { + Block block = p_149646_1_.getBlock(p_149646_2_, p_149646_3_, p_149646_4_); + return block != this;// && super.shouldSideBeRendered(p_149646_1_, p_149646_2_, p_149646_3_, p_149646_4_, p_149646_5_); + } + + @Override + public int getRenderType() { + return QuantumGlassRender.renderID; + } + + @Override + public void registerBlockIcons(IIconRegister p_149651_1_) { + super.registerBlockIcons(p_149651_1_); + stuff=this.blockIcon; + } +} diff --git a/src/main/java/com/github/technus/tectech/blocks/QuantumGlassRender.java b/src/main/java/com/github/technus/tectech/blocks/QuantumGlassRender.java new file mode 100644 index 0000000000..58cfbdd744 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/blocks/QuantumGlassRender.java @@ -0,0 +1,121 @@ +package com.github.technus.tectech.blocks; + +import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; +import net.minecraft.block.Block; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; +import org.lwjgl.opengl.GL11; + +/** + * Created by danie_000 on 19.12.2016. + */ +public final class QuantumGlassRender implements ISimpleBlockRenderingHandler { + public static int renderID; + + public QuantumGlassRender() {} + + @Override + public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) { + GL11.glTranslatef(-0.5F, -0.5F, -0.5F); + Tessellator tessellator = Tessellator.instance; + + //Get icons from custom register (useful for renderers and fluids) + IIcon side = QuantumGlass.stuff; + GL11.glDisable(GL11.GL_CULL_FACE); + tessellator.startDrawingQuads(); + tessellator.setNormal(0.0F, -1.0F, 0.0F); + renderer.renderFaceYNeg(block, 0.0D, 0.0D, 0.0D, side); + tessellator.draw(); + tessellator.startDrawingQuads(); + tessellator.setNormal(0.0F, 1.0F, 0.0F); + renderer.renderFaceYPos(block, 0.0D, 0.0D, 0.0D, side); + tessellator.draw(); + tessellator.startDrawingQuads(); + tessellator.setNormal(0.0F, 0.0F, -1.0F); + renderer.renderFaceZNeg(block, 0.0D, 0.0D, 0.0D, side); + tessellator.draw(); + tessellator.startDrawingQuads(); + tessellator.setNormal(0.0F, 0.0F, 1.0F); + renderer.renderFaceZPos(block, 0.0D, 0.0D, 0.0D, side); + tessellator.draw(); + tessellator.startDrawingQuads(); + tessellator.setNormal(-1.0F, 0.0F, 0.0F); + renderer.renderFaceXNeg(block, 0.0D, 0.0D, 0.0D, side); + tessellator.draw(); + tessellator.startDrawingQuads(); + tessellator.setNormal(1.0F, 0.0F, 0.0F); + renderer.renderFaceXPos(block, 0.0D, 0.0D, 0.0D, side); + tessellator.draw(); + GL11.glTranslatef(0.5F, 0.5F, 0.5F); + GL11.glEnable(GL11.GL_CULL_FACE); + } + + @Override + public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, + Block block, int modelId, + RenderBlocks renderer) { + + renderer.renderStandardBlock(block, x, y, z); + Tessellator tes = Tessellator.instance; + tes.setNormal(0F,1F,0F); + tes.setBrightness(15728880); + tes.setColorOpaque_F(0F, 1F, 1F); + IIcon side = QuantumGlass.stuff; + + //South + if(world.getBlock(x,y,z+1).getClass() != QuantumGlass.class) { + tes.addVertexWithUV(x, y, z + 0.999, side.getMinU(), side.getMaxV()); //0.999 instead of 1 for fighting (textures overlapping) + tes.addVertexWithUV(x, y + 1, z + 0.999, side.getMinU(), side.getMinV()); + tes.addVertexWithUV(x + 1, y + 1, z + 0.999, side.getMaxU(), side.getMinV()); + tes.addVertexWithUV(x + 1, y, z + 0.999, side.getMaxU(), side.getMaxV()); + } + //East + if(world.getBlock(x+1,y,z).getClass() != QuantumGlass.class) { + tes.addVertexWithUV(x + 0.999, y, z + 1, side.getMinU(), side.getMaxV()); + tes.addVertexWithUV(x + 0.999, y + 1, z + 1, side.getMinU(), side.getMinV()); + tes.addVertexWithUV(x + 0.999, y + 1, z, side.getMaxU(), side.getMinV()); + tes.addVertexWithUV(x + 0.999, y, z, side.getMaxU(), side.getMaxV()); + } + //North + if(world.getBlock(x,y,z-1).getClass() != QuantumGlass.class) { + tes.addVertexWithUV(x + 1, y, z + 0.001, side.getMinU(), side.getMaxV()); + tes.addVertexWithUV(x + 1, y + 1, z + 0.001, side.getMinU(), side.getMinV()); + tes.addVertexWithUV(x, y + 1, z + 0.001, side.getMaxU(), side.getMinV()); + tes.addVertexWithUV(x, y, z + 0.001, side.getMaxU(), side.getMaxV()); + } + //West + if(world.getBlock(x-1,y,z).getClass() != QuantumGlass.class) { + tes.addVertexWithUV(x + 0.001, y, z, side.getMinU(), side.getMaxV()); + tes.addVertexWithUV(x + 0.001, y + 1, z, side.getMinU(), side.getMinV()); + tes.addVertexWithUV(x + 0.001, y + 1, z + 1, side.getMaxU(), side.getMinV()); + tes.addVertexWithUV(x + 0.001, y, z + 1, side.getMaxU(), side.getMaxV()); + } + //Top + if(world.getBlock(x,y+1,z).getClass() != QuantumGlass.class) { + tes.addVertexWithUV(x, y + 0.999, z + 1, side.getMinU(), side.getMaxV()); + tes.addVertexWithUV(x, y + 0.999, z, side.getMinU(), side.getMinV()); + tes.addVertexWithUV(x + 1, y + 0.999, z, side.getMaxU(), side.getMinV()); + tes.addVertexWithUV(x + 1, y + 0.999, z + 1, side.getMaxU(), side.getMaxV()); + } + //Bottom + if(world.getBlock(x,y-1,z).getClass() != QuantumGlass.class) { + tes.addVertexWithUV(x, y + 0.001, z, side.getMinU(), side.getMaxV()); + tes.addVertexWithUV(x, y + 0.001, z + 1, side.getMinU(), side.getMinV()); + tes.addVertexWithUV(x + 1, y + 0.001, z + 1, side.getMaxU(), side.getMinV()); + tes.addVertexWithUV(x + 1, y + 0.001, z, side.getMaxU(), side.getMaxV()); + } + return true; + } + + @Override + public boolean shouldRender3DInInventory(int modelId) { + return true; + } + + @Override + public int getRenderId() { + return QuantumGlassRender.renderID; + } +} diff --git a/src/main/java/com/github/technus/tectech/casing/GT_Block_CasingsTT.java b/src/main/java/com/github/technus/tectech/casing/GT_Block_CasingsTT.java new file mode 100644 index 0000000000..d15a0aa8d7 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/casing/GT_Block_CasingsTT.java @@ -0,0 +1,103 @@ +package com.github.technus.tectech.casing; + +import com.github.technus.tectech.CustomItemList; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.Textures; +import gregtech.api.objects.GT_CopiedBlockTexture; +import gregtech.api.util.GT_LanguageManager; +import gregtech.common.blocks.GT_Block_Casings_Abstract; +import gregtech.common.blocks.GT_Material_Casings; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; + +/** + * Created by danie_000 on 03.10.2016. + */ +public class GT_Block_CasingsTT + extends GT_Block_Casings_Abstract { + + private static IIcon eM3,eM4,eM5,eM6,eM7,eM8,eM9; + private static IIcon debug[]=new IIcon[6]; + + public GT_Block_CasingsTT() { + + super(GT_Item_CasingsTT.class, "gt.blockcasingsTT", GT_Material_Casings.INSTANCE); + for (byte i = 0; i < 16; i = (byte) (i + 1)) { + Textures.BlockIcons.CASING_BLOCKS[(i + 96)] = new GT_CopiedBlockTexture(this, 6, i); + /*IMPORTANT for block recoloring*/ + } + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".3.name", "Molecular Containment Casing");//adding + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".4.name", "Containment Field Generator");//adding + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".5.name", "Containment Field Generator Casing");//adding + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".6.name", "Molecular Containment Coil");//adding + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".7.name", "Teleportation Casing");//adding + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".8.name", "Spacetime Altering Casing");//adding + + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".9.name", "Debug Sides");//adding + + + CustomItemList.eM_Casing.set(new ItemStack(this, 1, 3));//adding + CustomItemList.eM_Field.set(new ItemStack(this, 1, 4));//adding + CustomItemList.eM_Field_Casing.set(new ItemStack(this, 1, 5));//adding + CustomItemList.eM_Coil.set(new ItemStack(this, 1, 6));//adding + CustomItemList.eM_Tele.set(new ItemStack(this, 1, 7));//adding + CustomItemList.eM_TimeSpaceWarp.set(new ItemStack(this, 1, 8)); + + CustomItemList.debugBlock.set(new ItemStack(this, 1, 9)); + } + + @Override + public void registerBlockIcons(IIconRegister aIconRegister) { + //super.registerBlockIcons(aIconRegister); + eM3=aIconRegister.registerIcon("gregtech:iconsets/EM_CASING"); + eM4=aIconRegister.registerIcon("gregtech:iconsets/EM_FIELD"); + eM5=aIconRegister.registerIcon("gregtech:iconsets/EM_FIELD_CASING"); + eM6=aIconRegister.registerIcon("gregtech:iconsets/EM_COIL"); + eM7=aIconRegister.registerIcon("gregtech:iconsets/EM_COIL_NONSIDE"); + eM8=aIconRegister.registerIcon("gregtech:iconsets/EM_TELE"); + eM8=aIconRegister.registerIcon("gregtech:iconsets/EM_TELE"); + eM9=aIconRegister.registerIcon("gregtech:iconsets/EM_TIMESPACE"); + + debug[0]=aIconRegister.registerIcon("gregtech:iconsets/DEBUG_0"); + debug[1]=aIconRegister.registerIcon("gregtech:iconsets/DEBUG_1"); + debug[2]=aIconRegister.registerIcon("gregtech:iconsets/DEBUG_2"); + debug[3]=aIconRegister.registerIcon("gregtech:iconsets/DEBUG_3"); + debug[4]=aIconRegister.registerIcon("gregtech:iconsets/DEBUG_4"); + debug[5]=aIconRegister.registerIcon("gregtech:iconsets/DEBUG_5"); + } + + public IIcon getIcon(int aSide, int aMeta) { + switch (aMeta) { + case 3: + return eM3; + case 4: + return eM4; + case 5: + return eM5; + case 6: + if(aSide<2)return eM7; + return eM6; + case 7: + return eM8; + case 8: + return eM9; + case 9: + return debug[aSide]; + default: + return Textures.BlockIcons.MACHINE_CASING_SOLID_STEEL.getIcon(); + } + } + + @SideOnly(Side.CLIENT) + public IIcon getIcon(IBlockAccess aWorld, int xCoord, int yCoord, int zCoord, int aSide) { + int tMeta = aWorld.getBlockMetadata(xCoord, yCoord, zCoord); + return getIcon(aSide,tMeta); + } + + public int colorMultiplier(IBlockAccess aWorld, int aX, int aY, int aZ) { + return super.colorMultiplier(aWorld, aX, aY, aZ); + } +} diff --git a/src/main/java/com/github/technus/tectech/casing/GT_Container_CasingsTT.java b/src/main/java/com/github/technus/tectech/casing/GT_Container_CasingsTT.java new file mode 100644 index 0000000000..ddda51ea33 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/casing/GT_Container_CasingsTT.java @@ -0,0 +1,10 @@ +package com.github.technus.tectech.casing; + +import net.minecraft.block.Block; + +/** + * Created by danie_000 on 03.10.2016. + */ +public class GT_Container_CasingsTT{ + public static Block sBlockCasingsTT; +} diff --git a/src/main/java/com/github/technus/tectech/casing/GT_Item_CasingsTT.java b/src/main/java/com/github/technus/tectech/casing/GT_Item_CasingsTT.java new file mode 100644 index 0000000000..0560b28896 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/casing/GT_Item_CasingsTT.java @@ -0,0 +1,14 @@ +package com.github.technus.tectech.casing; + +import gregtech.common.blocks.GT_Item_Casings_Abstract; +import net.minecraft.block.Block; + +/** + * Created by danie_000 on 03.10.2016. + */ +public class GT_Item_CasingsTT + extends GT_Item_Casings_Abstract { + public GT_Item_CasingsTT(Block par1) { + super(par1); + } +} diff --git a/src/main/java/com/github/technus/tectech/casing/GT_Loader_CasingsTT.java b/src/main/java/com/github/technus/tectech/casing/GT_Loader_CasingsTT.java new file mode 100644 index 0000000000..3094d5e8b3 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/casing/GT_Loader_CasingsTT.java @@ -0,0 +1,10 @@ +package com.github.technus.tectech.casing; + +/** + * Created by danie_000 on 03.10.2016. + */ +public class GT_Loader_CasingsTT implements Runnable { + public void run(){ + GT_Container_CasingsTT.sBlockCasingsTT = new GT_Block_CasingsTT(); + } +} diff --git a/src/main/java/com/github/technus/tectech/elementalMatter/README b/src/main/java/com/github/technus/tectech/elementalMatter/README new file mode 100644 index 0000000000..f34168aa50 --- /dev/null +++ b/src/main/java/com/github/technus/tectech/elementalMatter/README @@ -0,0 +1,45 @@ +TO CHANGE DEFINITION YOU MUST INSTANTIATE IT ONCE MORE (from scratch, failing to do that will end up in the heavy bugs)! + + Example complex definition: + + Bottom + + PrimitiveDef + | + DefStack + ||||| + DefStackTree + | + ..... ETC up to the point when you can no longer make NB