From 568f05651e187e9bd7af44d72742665ebcee274f Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Sun, 30 Apr 2017 00:13:36 +1000 Subject: + Added Resonant Ender. $ Fixed COFH Fluids having incorrect textures. $ Fixed the recipe for Clay plates not auto-generating. --- .../gregtech/api/enums/GregtechOrePrefixes.java | 3 +- .../common/blocks/fluid/GregtechFluidHandler.java | 3 +- .../block/TF_Block_Fluid_Ender.java | 64 ++++++++++++++++++++++ .../xmod/thermalfoundation/block/TF_Blocks.java | 3 + .../xmod/thermalfoundation/fluid/TF_Fluids.java | 12 ++++ .../xmod/thermalfoundation/item/TF_Items.java | 4 ++ 6 files changed, 87 insertions(+), 2 deletions(-) create mode 100644 src/Java/gtPlusPlus/xmod/thermalfoundation/block/TF_Block_Fluid_Ender.java (limited to 'src/Java/gtPlusPlus/xmod') diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechOrePrefixes.java b/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechOrePrefixes.java index de49832d43..aa22dac95d 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechOrePrefixes.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechOrePrefixes.java @@ -322,7 +322,8 @@ public enum GregtechOrePrefixes { //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(getTcAspectStack(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(getTcAspectStack("PRAECANTATIO", 2), getTcAspectStack(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(getTcAspectStack("PRAECANTATIO", 2), getTcAspectStack(TC_Aspects.GELUM, 1))), - + Ender(22, TextureSet.SET_FLUID, 1.0F, 0, 2, 1, 255, 255, 255, 0, "Ender", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeGreen), + /** * Circuitry, Batteries and other Technical things */ diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/fluid/GregtechFluidHandler.java b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/fluid/GregtechFluidHandler.java index 23db3bb755..a6acf47450 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/fluid/GregtechFluidHandler.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/fluid/GregtechFluidHandler.java @@ -39,7 +39,8 @@ public class GregtechFluidHandler { Utils.LOG_INFO("Adding in our own GT versions of Thermal Foundation Fluids"); FluidUtils.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); FluidUtils.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); - } + FluidUtils.addFluid("ender", "Resonant Ender", GT_Materials.Ender, 4, 4000, GT_OreDictUnificator.get(OrePrefixes.cell, GT_Materials.Ender, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); + } if (LoadedMods.IndustrialCraft2){ Utils.LOG_INFO("Adding in GT Fluids for various nuclear related content."); diff --git a/src/Java/gtPlusPlus/xmod/thermalfoundation/block/TF_Block_Fluid_Ender.java b/src/Java/gtPlusPlus/xmod/thermalfoundation/block/TF_Block_Fluid_Ender.java new file mode 100644 index 0000000000..e22451b56a --- /dev/null +++ b/src/Java/gtPlusPlus/xmod/thermalfoundation/block/TF_Block_Fluid_Ender.java @@ -0,0 +1,64 @@ +package gtPlusPlus.xmod.thermalfoundation.block; + +import cofh.core.fluid.BlockFluidCoFHBase; +import cofh.core.util.CoreUtils; +import cpw.mods.fml.common.registry.GameRegistry; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.xmod.thermalfoundation.fluid.TF_Fluids; +import net.minecraft.block.material.*; +import net.minecraft.entity.Entity; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +public class TF_Block_Fluid_Ender + extends BlockFluidCoFHBase +{ + public static final int LEVELS = 4; + public static final Material materialFluidEnder = new MaterialLiquid(MapColor.greenColor); + private static boolean effect = true; + + public TF_Block_Fluid_Ender() + { + super(CORE.MODID, TF_Fluids.fluidEnder, materialFluidEnder, "ender"); + setQuantaPerBlock(4); + setTickRate(20); + + setHardness(2000.0F); + setLightOpacity(7); + setParticleColor(0.05F, 0.2F, 0.2F); + } + + @Override +public boolean preInit() + { + GameRegistry.registerBlock(this, "FluidEnder"); + + String str1 = "Fluid.Ender"; + String str2 = "Enable this for Fluid Ender to randomly teleport entities on contact."; + + return true; + } + + @Override +public void onEntityCollidedWithBlock(World paramWorld, int paramInt1, int paramInt2, int paramInt3, Entity paramEntity) + { + if ((!effect) || (paramWorld.isRemote)) { + return; + } + if (paramWorld.getTotalWorldTime() % 8L == 0L) + { + int i = paramInt1 - 8 + paramWorld.rand.nextInt(17); + int j = paramInt2 + paramWorld.rand.nextInt(8); + int k = paramInt3 - 8 + paramWorld.rand.nextInt(17); + if (!paramWorld.getBlock(i, j, k).getMaterial().isSolid()) { + CoreUtils.teleportEntityTo(paramEntity, i, j, k); + } + } + } + + @Override +public int getLightValue(IBlockAccess paramIBlockAccess, int paramInt1, int paramInt2, int paramInt3) + { + return TF_Fluids.fluidEnder.getLuminosity(); + } +} diff --git a/src/Java/gtPlusPlus/xmod/thermalfoundation/block/TF_Blocks.java b/src/Java/gtPlusPlus/xmod/thermalfoundation/block/TF_Blocks.java index 522bafd053..6b56262b1a 100644 --- a/src/Java/gtPlusPlus/xmod/thermalfoundation/block/TF_Blocks.java +++ b/src/Java/gtPlusPlus/xmod/thermalfoundation/block/TF_Blocks.java @@ -7,14 +7,17 @@ public class TF_Blocks public static BlockFluidCoFHBase blockFluidPyrotheum; public static BlockFluidCoFHBase blockFluidCryotheum; + public static BlockFluidCoFHBase blockFluidEnder; public static void preInit() { blockFluidPyrotheum = new TF_Block_Fluid_Pyrotheum(); blockFluidCryotheum = new TF_Block_Fluid_Cryotheum(); + blockFluidEnder = new TF_Block_Fluid_Ender(); blockFluidPyrotheum.preInit(); blockFluidCryotheum.preInit(); + blockFluidEnder.preInit(); } public static void init() {} diff --git a/src/Java/gtPlusPlus/xmod/thermalfoundation/fluid/TF_Fluids.java b/src/Java/gtPlusPlus/xmod/thermalfoundation/fluid/TF_Fluids.java index caf33ff381..40c5de8de4 100644 --- a/src/Java/gtPlusPlus/xmod/thermalfoundation/fluid/TF_Fluids.java +++ b/src/Java/gtPlusPlus/xmod/thermalfoundation/fluid/TF_Fluids.java @@ -15,6 +15,7 @@ public class TF_Fluids { public static Fluid fluidPyrotheum; public static Fluid fluidCryotheum; + public static Fluid fluidEnder; public static void preInit() { @@ -22,6 +23,7 @@ public class TF_Fluids Utils.LOG_INFO("Adding in our own versions of Thermal Foundation Fluids - Non-GT"); final Fluid pyrotheum = FluidRegistry.getFluid("pyrotheum"); final Fluid cryotheum = FluidRegistry.getFluid("cryotheum"); + final Fluid ender = FluidRegistry.getFluid("ender"); if (pyrotheum == null){ Utils.LOG_INFO("Registering Blazing Pyrotheum as it does not exist."); @@ -41,6 +43,16 @@ public class TF_Fluids Utils.LOG_INFO("Registering Gelid Cryotheum as it is an already existing Fluid."); fluidCryotheum = cryotheum; } + + if (ender == null){ + Utils.LOG_INFO("Registering Resonant Ender as it does not exist."); + fluidEnder = new Fluid("ender").setLuminosity(3).setDensity(4000).setViscosity(3000).setTemperature(300).setRarity(EnumRarity.uncommon); + registerFluid(fluidEnder, "ender"); + } + else { + Utils.LOG_INFO("Registering Resonant Ender as it is an already existing Fluid."); + fluidEnder = ender; + } } else { Utils.LOG_INFO("Thermal Foundation is already loaded, no need to add our own Cryotheum/Pyrotheum."); diff --git a/src/Java/gtPlusPlus/xmod/thermalfoundation/item/TF_Items.java b/src/Java/gtPlusPlus/xmod/thermalfoundation/item/TF_Items.java index 5ca30f28d2..0839e11765 100644 --- a/src/Java/gtPlusPlus/xmod/thermalfoundation/item/TF_Items.java +++ b/src/Java/gtPlusPlus/xmod/thermalfoundation/item/TF_Items.java @@ -24,6 +24,7 @@ public class TF_Items { public static ItemBucket itemBucket; public static ItemStack bucketPyrotheum; public static ItemStack bucketCryotheum; + public static ItemStack bucketEnder; public static ItemStack itemDustBlizz; public static ItemStack itemDustPyrotheum; @@ -39,6 +40,7 @@ public class TF_Items { bucketPyrotheum = itemBucket.addOreDictItem(1, "bucketPyrotheum"); bucketCryotheum = itemBucket.addOreDictItem(2, "bucketCryotheum"); + bucketEnder = itemBucket.addOreDictItem(3, "bucketEnder", 1); rodBlizz = itemMaterial.addOreDictItem(1, "rodBlizz"); dustBlizz = itemMaterial.addOreDictItem(2, "dustBlizz"); dustPyrotheum = itemMaterial.addOreDictItem(3, "dustPyrotheum"); @@ -62,8 +64,10 @@ public class TF_Items { BucketHandler.registerBucket(TF_Blocks.blockFluidPyrotheum, 0, bucketPyrotheum); BucketHandler.registerBucket(TF_Blocks.blockFluidCryotheum, 0, bucketCryotheum); + BucketHandler.registerBucket(TF_Blocks.blockFluidEnder, 0, bucketEnder); FluidContainerRegistry.registerFluidContainer(TF_Fluids.fluidPyrotheum, bucketPyrotheum, FluidContainerRegistry.EMPTY_BUCKET); FluidContainerRegistry.registerFluidContainer(TF_Fluids.fluidCryotheum, bucketCryotheum, FluidContainerRegistry.EMPTY_BUCKET); + FluidContainerRegistry.registerFluidContainer(TF_Fluids.fluidEnder, bucketEnder, FluidContainerRegistry.EMPTY_BUCKET); } -- cgit