aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus
diff options
context:
space:
mode:
authorDarren Eberly <darren.eberly@proton.me>2024-09-24 13:58:48 -0400
committerGitHub <noreply@github.com>2024-09-24 17:58:48 +0000
commitc3c57801e1440cba7872108121c28fc689e8968b (patch)
treede18af78870d801bdc194bcf31cdc5212574a4cc /src/main/java/gtPlusPlus
parent750ccb57f20181e1220eb2f6f2915857a983219f (diff)
downloadGT5-Unofficial-c3c57801e1440cba7872108121c28fc689e8968b.tar.gz
GT5-Unofficial-c3c57801e1440cba7872108121c28fc689e8968b.tar.bz2
GT5-Unofficial-c3c57801e1440cba7872108121c28fc689e8968b.zip
Cactus/Sugar Charcoal/Coke Blocks (#3269)
Co-authored-by: Martin Robertz <dream-master@gmx.net>
Diffstat (limited to 'src/main/java/gtPlusPlus')
-rw-r--r--src/main/java/gtPlusPlus/core/block/ModBlocks.java14
-rw-r--r--src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCharcoal.java55
-rw-r--r--src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCoke.java55
-rw-r--r--src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCharcoal.java55
-rw-r--r--src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCoke.java55
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java61
6 files changed, 295 insertions, 0 deletions
diff --git a/src/main/java/gtPlusPlus/core/block/ModBlocks.java b/src/main/java/gtPlusPlus/core/block/ModBlocks.java
index 6169581257..b812a4739e 100644
--- a/src/main/java/gtPlusPlus/core/block/ModBlocks.java
+++ b/src/main/java/gtPlusPlus/core/block/ModBlocks.java
@@ -4,6 +4,10 @@ import net.minecraft.block.Block;
import net.minecraftforge.fluids.Fluid;
import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.core.block.fuel.BlockCactusCharcoal;
+import gtPlusPlus.core.block.fuel.BlockCactusCoke;
+import gtPlusPlus.core.block.fuel.BlockSugarCharcoal;
+import gtPlusPlus.core.block.fuel.BlockSugarCoke;
import gtPlusPlus.core.block.general.BlockCompressedObsidian;
import gtPlusPlus.core.block.general.BlockFluidTankInfinite;
import gtPlusPlus.core.block.general.BlockHellFire;
@@ -53,6 +57,11 @@ public final class ModBlocks {
public static Block blockWitherGuard;
public static Block blockCompressedObsidian;
+ public static Block blockCactusCharcoal;
+ public static Block blockCactusCoke;
+ public static Block blockSugarCharcoal;
+ public static Block blockSugarCoke;
+
public static Block blockCustomJukebox;
public static Block blockPooCollector;
@@ -82,6 +91,11 @@ public final class ModBlocks {
blockWitherGuard = new BlockWitherProof();
blockCompressedObsidian = new BlockCompressedObsidian();
+ blockCactusCharcoal = new BlockCactusCharcoal();
+ blockCactusCoke = new BlockCactusCoke();
+ blockSugarCharcoal = new BlockSugarCharcoal();
+ blockSugarCoke = new BlockSugarCoke();
+
blockCircuitProgrammer = new BlockCircuitProgrammer();
blockDecayablesChest = new BlockDecayablesChest();
diff --git a/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCharcoal.java b/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCharcoal.java
new file mode 100644
index 0000000000..193ca79c5d
--- /dev/null
+++ b/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCharcoal.java
@@ -0,0 +1,55 @@
+package gtPlusPlus.core.block.fuel;
+
+import static gregtech.api.enums.Mods.GTPlusPlus;
+
+import java.util.List;
+
+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.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+
+public class BlockCactusCharcoal extends Block {
+
+ private final IIcon[] textureArray = new IIcon[6];
+
+ public BlockCactusCharcoal() {
+ super(Material.rock);
+ this.setBlockName("blockCactusCharcoal");
+ this.setStepSound(soundTypeStone);
+ GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockCactusCharcoal");
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void registerBlockIcons(IIconRegister iconRegister) {
+ for (int i = 0; i < textureArray.length; i++) {
+ this.textureArray[i] = iconRegister.registerIcon(GTPlusPlus.ID + ":fuel/blockCactusCharcoal" + i);
+ }
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public IIcon getIcon(int side, int meta) {
+ return this.textureArray[meta];
+ }
+
+ @Override
+ public void getSubBlocks(final Item item, final CreativeTabs tab, final List<ItemStack> list) {
+ for (int i = 0; i < textureArray.length; i++) {
+ ItemStack is = new ItemStack(item, 1, i);
+ ItemUtils.registerFuel(is, 4000 * (int) Math.pow(9, i));
+ list.add(is);
+ }
+ }
+
+}
diff --git a/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCoke.java b/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCoke.java
new file mode 100644
index 0000000000..5c01fb20c8
--- /dev/null
+++ b/src/main/java/gtPlusPlus/core/block/fuel/BlockCactusCoke.java
@@ -0,0 +1,55 @@
+package gtPlusPlus.core.block.fuel;
+
+import static gregtech.api.enums.Mods.GTPlusPlus;
+
+import java.util.List;
+
+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.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+
+public class BlockCactusCoke extends Block {
+
+ private final IIcon[] textureArray = new IIcon[6];
+
+ public BlockCactusCoke() {
+ super(Material.rock);
+ this.setBlockName("blockCactusCoke");
+ this.setStepSound(soundTypeStone);
+ GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockCactusCoke");
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void registerBlockIcons(IIconRegister iconRegister) {
+ for (int i = 0; i < textureArray.length; i++) {
+ this.textureArray[i] = iconRegister.registerIcon(GTPlusPlus.ID + ":fuel/blockCactusCoke" + i);
+ }
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public IIcon getIcon(int side, int meta) {
+ return this.textureArray[meta];
+ }
+
+ @Override
+ public void getSubBlocks(final Item item, final CreativeTabs tab, final List<ItemStack> list) {
+ for (int i = 0; i < textureArray.length; i++) {
+ ItemStack is = new ItemStack(item, 1, i);
+ ItemUtils.registerFuel(is, 8000 * (int) Math.pow(9, i));
+ list.add(is);
+ }
+ }
+
+}
diff --git a/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCharcoal.java b/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCharcoal.java
new file mode 100644
index 0000000000..2fa755ea9c
--- /dev/null
+++ b/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCharcoal.java
@@ -0,0 +1,55 @@
+package gtPlusPlus.core.block.fuel;
+
+import static gregtech.api.enums.Mods.GTPlusPlus;
+
+import java.util.List;
+
+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.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+
+public class BlockSugarCharcoal extends Block {
+
+ private final IIcon[] textureArray = new IIcon[6];
+
+ public BlockSugarCharcoal() {
+ super(Material.rock);
+ this.setBlockName("blockSugarCharcoal");
+ this.setStepSound(soundTypeStone);
+ GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockSugarCharcoal");
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void registerBlockIcons(IIconRegister iconRegister) {
+ for (int i = 0; i < textureArray.length; i++) {
+ this.textureArray[i] = iconRegister.registerIcon(GTPlusPlus.ID + ":fuel/blockSugarCharcoal" + i);
+ }
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public IIcon getIcon(int side, int meta) {
+ return this.textureArray[meta];
+ }
+
+ @Override
+ public void getSubBlocks(final Item item, final CreativeTabs tab, final List<ItemStack> list) {
+ for (int i = 0; i < textureArray.length; i++) {
+ ItemStack is = new ItemStack(item, 1, i);
+ ItemUtils.registerFuel(is, 4000 * (int) Math.pow(9, i));
+ list.add(is);
+ }
+ }
+
+}
diff --git a/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCoke.java b/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCoke.java
new file mode 100644
index 0000000000..1ef9c3167e
--- /dev/null
+++ b/src/main/java/gtPlusPlus/core/block/fuel/BlockSugarCoke.java
@@ -0,0 +1,55 @@
+package gtPlusPlus.core.block.fuel;
+
+import static gregtech.api.enums.Mods.GTPlusPlus;
+
+import java.util.List;
+
+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.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.IIcon;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+
+public class BlockSugarCoke extends Block {
+
+ private final IIcon[] textureArray = new IIcon[6];
+
+ public BlockSugarCoke() {
+ super(Material.rock);
+ this.setBlockName("blockSugarCoke");
+ this.setStepSound(soundTypeStone);
+ GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockSugarCoke");
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void registerBlockIcons(IIconRegister iconRegister) {
+ for (int i = 0; i < textureArray.length; i++) {
+ this.textureArray[i] = iconRegister.registerIcon(GTPlusPlus.ID + ":fuel/blockSugarCoke" + i);
+ }
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public IIcon getIcon(int side, int meta) {
+ return this.textureArray[meta];
+ }
+
+ @Override
+ public void getSubBlocks(final Item item, final CreativeTabs tab, final List<ItemStack> list) {
+ for (int i = 0; i < textureArray.length; i++) {
+ ItemStack is = new ItemStack(item, 1, i);
+ ItemUtils.registerFuel(is, 8000 * (int) Math.pow(9, i));
+ list.add(is);
+ }
+ }
+
+}
diff --git a/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java b/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java
index 476e49248f..45329aac16 100644
--- a/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java
+++ b/src/main/java/gtPlusPlus/core/recipe/RecipesGeneral.java
@@ -3,6 +3,7 @@ package gtPlusPlus.core.recipe;
import static gregtech.api.enums.Mods.EnderIO;
import static gregtech.api.enums.Mods.Thaumcraft;
import static gregtech.api.recipe.RecipeMaps.assemblerRecipes;
+import static gregtech.api.recipe.RecipeMaps.compressorRecipes;
import static gregtech.api.util.GTRecipeBuilder.MINUTES;
import static gregtech.api.util.GTRecipeBuilder.SECONDS;
import static gtPlusPlus.core.recipe.common.CI.bitsd;
@@ -58,6 +59,7 @@ public class RecipesGeneral {
OUTPUT_Blueprint = ItemUtils.getSimpleStack(ModItems.itemBlueprintBase, 2);
run();
addCompressedObsidian();
+ addFuelBlocks();
migratedRecipes();
}
@@ -273,6 +275,65 @@ public class RecipesGeneral {
.addTo(assemblerRecipes);
}
+ private static void addFuelBlocks() {
+ GTValues.RA.stdBuilder()
+ .itemInputs(new ItemStack(ModItems.itemCactusCharcoal, 9, 0))
+ .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCharcoal, 0, 1))
+ .duration(15 * SECONDS)
+ .eut(2)
+ .addTo(compressorRecipes);
+ GTValues.RA.stdBuilder()
+ .itemInputs(new ItemStack(ModItems.itemCactusCoke, 9, 0))
+ .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCoke, 0, 1))
+ .duration(15 * SECONDS)
+ .eut(2)
+ .addTo(compressorRecipes);
+ GTValues.RA.stdBuilder()
+ .itemInputs(new ItemStack(ModItems.itemSugarCharcoal, 9, 0))
+ .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCharcoal, 0, 1))
+ .duration(15 * SECONDS)
+ .eut(2)
+ .addTo(compressorRecipes);
+ GTValues.RA.stdBuilder()
+ .itemInputs(new ItemStack(ModItems.itemSugarCoke, 9, 0))
+ .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCoke, 0, 1))
+ .duration(15 * SECONDS)
+ .eut(2)
+ .addTo(compressorRecipes);
+ for (int i = 1; i < 6; i++) {
+ GTValues.RA.stdBuilder()
+ .itemInputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCharcoal, i - 1, 9))
+ .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCharcoal, i, 1))
+ .duration(15 * SECONDS)
+ .eut(2)
+ .addTo(compressorRecipes);
+ }
+ for (int i = 1; i < 6; i++) {
+ GTValues.RA.stdBuilder()
+ .itemInputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCoke, i - 1, 9))
+ .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockCactusCoke, i, 1))
+ .duration(15 * SECONDS)
+ .eut(2)
+ .addTo(compressorRecipes);
+ }
+ for (int i = 1; i < 6; i++) {
+ GTValues.RA.stdBuilder()
+ .itemInputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCharcoal, i - 1, 9))
+ .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCharcoal, i, 1))
+ .duration(15 * SECONDS)
+ .eut(2)
+ .addTo(compressorRecipes);
+ }
+ for (int i = 1; i < 6; i++) {
+ GTValues.RA.stdBuilder()
+ .itemInputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCoke, i - 1, 9))
+ .itemOutputs(ItemUtils.simpleMetaStack(ModBlocks.blockSugarCoke, i, 1))
+ .duration(15 * SECONDS)
+ .eut(2)
+ .addTo(compressorRecipes);
+ }
+ }
+
private static boolean addCompressedObsidian() {
// Invert Obsidian
ItemStack aInvertedObsidian = ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 5, 1);