diff options
Diffstat (limited to 'src/Java/gtPlusPlus/core/fluids')
-rw-r--r-- | src/Java/gtPlusPlus/core/fluids/BlockFluidBase.java | 165 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/fluids/FluidRegistryHandler.java | 80 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/fluids/GenericFluid.java | 115 |
3 files changed, 170 insertions, 190 deletions
diff --git a/src/Java/gtPlusPlus/core/fluids/BlockFluidBase.java b/src/Java/gtPlusPlus/core/fluids/BlockFluidBase.java index d2774c18d7..52bfa7d2d9 100644 --- a/src/Java/gtPlusPlus/core/fluids/BlockFluidBase.java +++ b/src/Java/gtPlusPlus/core/fluids/BlockFluidBase.java @@ -1,8 +1,5 @@ package gtPlusPlus.core.fluids; -import cpw.mods.fml.common.registry.LanguageRegistry; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; import gtPlusPlus.core.creative.AddToCreativeTab; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.material.Material; @@ -14,99 +11,97 @@ import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import net.minecraftforge.fluids.BlockFluidClassic; import net.minecraftforge.fluids.Fluid; +import cpw.mods.fml.common.registry.LanguageRegistry; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; public class BlockFluidBase extends BlockFluidClassic { - @SideOnly(Side.CLIENT) - protected IIcon stillIcon; - @SideOnly(Side.CLIENT) - protected IIcon flowingIcon; - - protected int colour; - protected Material fluidMaterial; - final String displayName; - - @SuppressWarnings("deprecation") - public BlockFluidBase(final Fluid fluid, final Material material) { - super(fluid, net.minecraft.block.material.Material.lava); - final short[] tempColour = material.getRGBA(); - this.colour = Utils.rgbtoHexValue(tempColour[0], tempColour[1], tempColour[2]); - this.fluidMaterial = material; - this.setCreativeTab(AddToCreativeTab.tabOther); - this.displayName = material.getLocalizedName(); - LanguageRegistry.addName(this, "Molten " + this.displayName + " [" - + MathUtils.celsiusToKelvin(this.fluidMaterial.getBoilingPointC()) + "K]"); - this.setBlockName(this.GetProperName()); - } - - @SuppressWarnings("deprecation") - public BlockFluidBase(final String fluidName, final Fluid fluid, final short[] colour) { - super(fluid, net.minecraft.block.material.Material.lava); - final short[] tempColour = colour; - this.colour = Utils.rgbtoHexValue(tempColour[0], tempColour[1], tempColour[2]); - this.setCreativeTab(AddToCreativeTab.tabOther); - this.displayName = fluidName; - LanguageRegistry.addName(this, "Molten " + this.displayName); - this.setBlockName(this.GetProperName()); - } - - @Override - public boolean canDisplace(final IBlockAccess world, final int x, final int y, final int z) { - if (world.getBlock(x, y, z).getMaterial().isLiquid()) { - return false; - } - return super.canDisplace(world, x, y, z); - } + @SideOnly(Side.CLIENT) + protected IIcon stillIcon; + @SideOnly(Side.CLIENT) + protected IIcon flowingIcon; + + protected int colour; + protected Material fluidMaterial; + final String displayName; + + @SuppressWarnings("deprecation") + public BlockFluidBase(Fluid fluid, Material material) { + super(fluid, net.minecraft.block.material.Material.lava); + short[] tempColour = material.getRGBA(); + this.colour = Utils.rgbtoHexValue(tempColour[0], tempColour[1], tempColour[2]); + this.fluidMaterial = material; + setCreativeTab(AddToCreativeTab.tabOther); + this.displayName = material.getLocalizedName(); + LanguageRegistry.addName(this, "Molten "+displayName+" ["+MathUtils.celsiusToKelvin(fluidMaterial.getBoilingPointC())+"K]"); + this.setBlockName(GetProperName()); + } + + @SuppressWarnings("deprecation") + public BlockFluidBase(String fluidName, Fluid fluid, short[] colour) { + super(fluid, net.minecraft.block.material.Material.lava); + short[] tempColour = colour; + this.colour = Utils.rgbtoHexValue(tempColour[0], tempColour[1], tempColour[2]); + setCreativeTab(AddToCreativeTab.tabOther); + this.displayName = fluidName; + LanguageRegistry.addName(this, "Molten "+displayName); + this.setBlockName(GetProperName()); + } + + @Override + public IIcon getIcon(int side, int meta) { + return (side == 0 || side == 1)? stillIcon : flowingIcon; + } + + @SideOnly(Side.CLIENT) + @Override + public void registerBlockIcons(IIconRegister register) { + stillIcon = register.registerIcon(CORE.MODID+":fluids/fluid.molten.autogenerated"); + flowingIcon = register.registerIcon(CORE.MODID+":fluids/fluid.molten.autogenerated"); + } + + @Override + public boolean canDisplace(IBlockAccess world, int x, int y, int z) { + if (world.getBlock(x, y, z).getMaterial().isLiquid()) return false; + return super.canDisplace(world, x, y, z); + } + + @Override + public boolean displaceIfPossible(World world, int x, int y, int z) { + if (world.getBlock(x, y, z).getMaterial().isLiquid()) return false; + return super.displaceIfPossible(world, x, y, z); + } @Override - public int colorMultiplier(final IBlockAccess par1IBlockAccess, final int par2, final int par3, final int par4) { - - if (this.colour == 0) { + public int colorMultiplier(IBlockAccess par1IBlockAccess, int par2, int par3, int par4){ + + if (this.colour == 0){ return MathUtils.generateSingularRandomHexValue(); } - + return this.colour; } - - @Override - public boolean displaceIfPossible(final World world, final int x, final int y, final int z) { - if (world.getBlock(x, y, z).getMaterial().isLiquid()) { - return false; - } - return super.displaceIfPossible(world, x, y, z); - } - - public Material getFluidMaterial() { - return this.fluidMaterial; - } - - @Override - public IIcon getIcon(final int side, final int meta) { - return side == 0 || side == 1 ? this.stillIcon : this.flowingIcon; - } - - public String GetProperName() { - String tempIngot; - - tempIngot = "Molten " + this.displayName; - - return tempIngot; - } - - @Override - public int getRenderColor(final int aMeta) { - if (this.colour == 0) { + + @Override + public int getRenderColor(int aMeta) { + if (this.colour == 0){ return MathUtils.generateSingularRandomHexValue(); } - + return this.colour; - } + } + + public String GetProperName() { + String tempIngot; - @SideOnly(Side.CLIENT) - @Override - public void registerBlockIcons(final IIconRegister register) { - this.stillIcon = register.registerIcon(CORE.MODID + ":fluids/fluid.molten.autogenerated"); - this.flowingIcon = register.registerIcon(CORE.MODID + ":fluids/fluid.molten.autogenerated"); - } + tempIngot = "Molten "+displayName; -} + return tempIngot; + } + + public Material getFluidMaterial(){ + return fluidMaterial; + } + +} diff --git a/src/Java/gtPlusPlus/core/fluids/FluidRegistryHandler.java b/src/Java/gtPlusPlus/core/fluids/FluidRegistryHandler.java index 22839c3927..477d5da944 100644 --- a/src/Java/gtPlusPlus/core/fluids/FluidRegistryHandler.java +++ b/src/Java/gtPlusPlus/core/fluids/FluidRegistryHandler.java @@ -1,54 +1,52 @@ package gtPlusPlus.core.fluids; -import cpw.mods.fml.common.registry.GameRegistry; -import gtPlusPlus.core.block.ModBlocks; +import static gtPlusPlus.core.block.ModBlocks.blockFluidJackDaniels; +import static gtPlusPlus.core.block.ModBlocks.fluidJackDaniels; import gtPlusPlus.core.block.general.fluids.BlockFluidJackDaniels; import gtPlusPlus.core.lib.CORE; import net.minecraft.block.material.Material; import net.minecraftforge.fluids.FluidRegistry; +import cpw.mods.fml.common.registry.GameRegistry; public class FluidRegistryHandler { + + //Fluids + /** + * + * Luminosity .setLuminosity(luminosity) + How much light does the fluid emit. Default: 0, Lava uses 15 + Density .setDensity(density) + How dense is the fluid, the only effect is whether or not a fluid replaces another fluid when they flow into each other. Default: 1000, the density of water at 4 degrees Celsius in kg/m³ + Temperature .setTemperature(temp) + How hot, or cold is the fluid. Has currently no effect. Default: 295, the "normal" room temperature in degrees Kelvin, this is approximately 72°F or 22°C. + Viscosity .setViscosity(viscosity) + How thick the fluid is. Determines how fast it flows. Default: 1000 for water, lava uses 6000 + Is Gaseous .setGaseous(boolean) + Indicates if the fluid is gaseous. Used for rendering. Default: false + * + */ - private static void fluidJackDaniels() { - // testFluid - ModBlocks.fluidJackDaniels.setLuminosity(12); - ModBlocks.fluidJackDaniels.setDensity(1200); - ModBlocks.fluidJackDaniels.setTemperature(420); - ModBlocks.fluidJackDaniels.setViscosity(750); - ModBlocks.fluidJackDaniels.setGaseous(true); - ModBlocks.fluidJackDaniels.setUnlocalizedName("fluidJackDaniels"); - FluidRegistry.registerFluid(ModBlocks.fluidJackDaniels); - ModBlocks.blockFluidJackDaniels = new BlockFluidJackDaniels(ModBlocks.fluidJackDaniels, Material.water) - .setBlockName("fluidBlockJackDaniels"); - GameRegistry.registerBlock(ModBlocks.blockFluidJackDaniels, - CORE.MODID + "_" + ModBlocks.blockFluidJackDaniels.getUnlocalizedName().substring(5)); - ModBlocks.fluidJackDaniels.setUnlocalizedName(ModBlocks.blockFluidJackDaniels.getUnlocalizedName()); - } - - // Fluids - /** - * - * Luminosity .setLuminosity(luminosity) How much light does the fluid emit. - * Default: 0, Lava uses 15 Density .setDensity(density) How dense is the - * fluid, the only effect is whether or not a fluid replaces another fluid - * when they flow into each other. Default: 1000, the density of water at 4 - * degrees Celsius in kg/m³ Temperature .setTemperature(temp) How hot, or - * cold is the fluid. Has currently no effect. Default: 295, the "normal" - * room temperature in degrees Kelvin, this is approximately 72°F or 22°C. - * Viscosity .setViscosity(viscosity) How thick the fluid is. Determines how - * fast it flows. Default: 1000 for water, lava uses 6000 Is Gaseous - * .setGaseous(boolean) Indicates if the fluid is gaseous. Used for - * rendering. Default: false - * - */ - - public static void registerFluids() { - FluidRegistryHandler.run(); + public static void registerFluids(){ + run(); } - + @SuppressWarnings("unused") - private static void run() { - FluidRegistryHandler.fluidJackDaniels(); + private static void run(){ + fluidJackDaniels(); } - + + private static void fluidJackDaniels(){ + //testFluid + fluidJackDaniels.setLuminosity(12); + fluidJackDaniels.setDensity(1200); + fluidJackDaniels.setTemperature(420); + fluidJackDaniels.setViscosity(750); + fluidJackDaniels.setGaseous(true); + fluidJackDaniels.setUnlocalizedName("fluidJackDaniels"); + FluidRegistry.registerFluid(fluidJackDaniels); + blockFluidJackDaniels = new BlockFluidJackDaniels(fluidJackDaniels, Material.water).setBlockName("fluidBlockJackDaniels"); + GameRegistry.registerBlock(blockFluidJackDaniels, CORE.MODID + "_" + blockFluidJackDaniels.getUnlocalizedName().substring(5)); + fluidJackDaniels.setUnlocalizedName(blockFluidJackDaniels.getUnlocalizedName()); + } + } diff --git a/src/Java/gtPlusPlus/core/fluids/GenericFluid.java b/src/Java/gtPlusPlus/core/fluids/GenericFluid.java index fad8a83d4b..38af8774eb 100644 --- a/src/Java/gtPlusPlus/core/fluids/GenericFluid.java +++ b/src/Java/gtPlusPlus/core/fluids/GenericFluid.java @@ -1,81 +1,68 @@ package gtPlusPlus.core.fluids; -import cpw.mods.fml.common.registry.GameRegistry; import gtPlusPlus.core.item.base.itemblock.ItemBlockFluid; import gtPlusPlus.core.material.Material; import net.minecraft.block.Block; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; +import cpw.mods.fml.common.registry.GameRegistry; -public class GenericFluid extends Fluid { - - protected final String fluidName; - protected final Fluid fluidFactory; - protected final Block blockFactory; - protected final short[] rgba; - - public GenericFluid(final Material fluidMaterial, final int luminosity, final int density, final int temperature, - final int viscosity, final boolean isGas) { - - super(fluidMaterial.getUnlocalizedName()); - // IC2_ItemFluidCell fullFluidCell = emptyCell.fill(emptyCell, - // FluidUtils.getFluidStack(getUnlocalizedName(), 1), true); - - this.fluidFactory = this; - this.rgba = fluidMaterial.getRGBA(); - this.fluidName = fluidMaterial.getUnlocalizedName(); - this.fluidFactory.setLuminosity(luminosity); - this.fluidFactory.setDensity(density); - this.fluidFactory.setTemperature(temperature); - this.fluidFactory.setViscosity(viscosity); - this.fluidFactory.setGaseous(isGas); - this.fluidFactory.setUnlocalizedName("fluid" + this.fluidName); - FluidRegistry.registerFluid(this.fluidFactory); - this.blockFactory = new BlockFluidBase(this.fluidFactory, fluidMaterial) - .setBlockName("fluidblock" + this.fluidName); - GameRegistry.registerBlock(this.blockFactory, ItemBlockFluid.class, - this.blockFactory.getUnlocalizedName().substring(5)); - this.fluidFactory.setBlock(this.blockFactory); - // IC2_ItemFluidCell emptyCell = new IC2_ItemFluidCell(fluidName); - /* - * if (aFullContainer != null && aEmptyContainer != null && - * !FluidContainerRegistry.registerFluidContainer(new FluidStack(rFluid, - * aFluidAmount), aFullContainer, aEmptyContainer)) { - * GT_Values.RA.addFluidCannerRecipe(aFullContainer, - * container(aFullContainer, false), null, new FluidStack(rFluid, - * aFluidAmount)); } - */ - // fluidFactory.setUnlocalizedName(blockFactory.getUnlocalizedName()); +public class GenericFluid extends Fluid{ - } - - public GenericFluid(final String displayName, final String fluidName, final int luminosity, final int density, - final int temperature, final int viscosity, final boolean isGas, final short[] rgba) { + protected final String fluidName; + protected final Fluid fluidFactory; + protected final Block blockFactory; + protected final short[] rgba; + + public GenericFluid(String displayName, String fluidName, int luminosity, int density, int temperature, int viscosity, boolean isGas, short[] rgba) { super(fluidName); - this.fluidFactory = this; + fluidFactory = this; this.rgba = rgba; this.fluidName = fluidName; - this.fluidFactory.setLuminosity(luminosity); - this.fluidFactory.setDensity(density); - this.fluidFactory.setTemperature(temperature); - this.fluidFactory.setViscosity(viscosity); - this.fluidFactory.setGaseous(isGas); - this.fluidFactory.setUnlocalizedName("fluid" + fluidName); - FluidRegistry.registerFluid(this.fluidFactory); - this.blockFactory = new BlockFluidBase(displayName, this.fluidFactory, rgba) - .setBlockName("fluidblock" + fluidName); - GameRegistry.registerBlock(this.blockFactory, ItemBlockFluid.class, - this.blockFactory.getUnlocalizedName().substring(5)); - this.fluidFactory.setBlock(this.blockFactory); - - // fluidFactory.setUnlocalizedName(blockFactory.getUnlocalizedName()); - + fluidFactory.setLuminosity(luminosity); + fluidFactory.setDensity(density); + fluidFactory.setTemperature(temperature); + fluidFactory.setViscosity(viscosity); + fluidFactory.setGaseous(isGas); + fluidFactory.setUnlocalizedName("fluid"+fluidName); + FluidRegistry.registerFluid(fluidFactory); + blockFactory = new BlockFluidBase(displayName, fluidFactory, rgba).setBlockName("fluidblock"+fluidName); + GameRegistry.registerBlock(blockFactory, ItemBlockFluid.class, blockFactory.getUnlocalizedName().substring(5)); + fluidFactory.setBlock(blockFactory); + + //fluidFactory.setUnlocalizedName(blockFactory.getUnlocalizedName()); + } - + + public GenericFluid(Material fluidMaterial, int luminosity, int density, int temperature, int viscosity, boolean isGas) { + + super(fluidMaterial.getUnlocalizedName()); + //IC2_ItemFluidCell fullFluidCell = emptyCell.fill(emptyCell, FluidUtils.getFluidStack(getUnlocalizedName(), 1), true); + + fluidFactory = this; + this.rgba = fluidMaterial.getRGBA(); + this.fluidName = fluidMaterial.getUnlocalizedName(); + fluidFactory.setLuminosity(luminosity); + fluidFactory.setDensity(density); + fluidFactory.setTemperature(temperature); + fluidFactory.setViscosity(viscosity); + fluidFactory.setGaseous(isGas); + fluidFactory.setUnlocalizedName("fluid"+fluidName); + FluidRegistry.registerFluid(fluidFactory); + blockFactory = new BlockFluidBase(fluidFactory, fluidMaterial).setBlockName("fluidblock"+fluidName); + GameRegistry.registerBlock(blockFactory, ItemBlockFluid.class, blockFactory.getUnlocalizedName().substring(5)); + fluidFactory.setBlock(blockFactory); + //IC2_ItemFluidCell emptyCell = new IC2_ItemFluidCell(fluidName); + /*if (aFullContainer != null && aEmptyContainer != null && !FluidContainerRegistry.registerFluidContainer(new FluidStack(rFluid, aFluidAmount), aFullContainer, aEmptyContainer)) { + GT_Values.RA.addFluidCannerRecipe(aFullContainer, container(aFullContainer, false), null, new FluidStack(rFluid, aFluidAmount)); + }*/ + //fluidFactory.setUnlocalizedName(blockFactory.getUnlocalizedName()); + + } + @Override public int getColor() { - return Math.max(0, Math.min(255, this.rgba[0])) << 16 | Math.max(0, Math.min(255, this.rgba[1])) << 8 - | Math.max(0, Math.min(255, this.rgba[2])); - } + return Math.max(0, Math.min(255, this.rgba[0])) << 16 | Math.max(0, Math.min(255, this.rgba[1])) << 8 | Math.max(0, Math.min(255, this.rgba[2])); + } } |