Jump to content

Custom Explosive Questions


Recommended Posts

Hello everyone! I am trying to make custom explosives that look like vanilla blocks. The first one I made(wood) works perfect, but on the second one(stone), when you light it up, the entity renders as the wood! I'm pretty sure it has something to do with the Client Proxy, because when I remove the line that has to do with the wood, neither of them render, but I'm not sure what is wrong.

 

Main Class:

//If you are reading this, that means you are looking at my source code when I have not officially released it. I do not mind this, but please give me credit if you use it for anything. Also, you may find it very confusing, as I am not very good at organizing things.

package mods.mcenrichment.common;


import java.lang.reflect.Proxy;


import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.EnumArmorMaterial;
import net.minecraft.item.EnumToolMaterial;
import net.minecraft.item.Item;
import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack;
import net.minecraft.stats.Achievement;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraftforge.common.EnumHelper;
import net.minecraftforge.common.MinecraftForge;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.Mod.PreInit;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;

@Mod(modid = "mcenrichment", name = "Enhanced Minecraft", version = "Alpha 0.0.5")
@NetworkMod(clientSideRequired = true, serverSideRequired = false)
public class MCEnrichment {

@SidedProxy(clientSide = "mods.mcenrichment.common.ClientProxy", serverSide = "mods.mcenrichment.common.ServerProxy")
public static ServerProxy proxy;

public static CreativeTabs tabMCEnrichment = new CreativeTabs("Minecraft Enrichment") {
        public ItemStack getIconItemStack() {
                return new ItemStack(MCEnrichment.baconiteIngot, 1, 0);
        }
};
//Blocks start here
public static Block baconiteOre;
int baconiteOreID = 500;

public static Block sapphireOre;
int sapphireOreID = 501;

public static Block amethystOre;
int amethystOreID = 502;

public static Block rubyOre;
int rubyOreID = 503;

public static Block explosiveWood;
int explosiveWoodID = 568;

public static Block explosiveStone;
int explosiveStoneID = 569;


int rawBaconID = 2010;

//Items start here	
public static Item baconiteIngot;
public static Item sapphire;
public static Item ruby;
public static Item icon;
public static Item amethyst;
//tools start here
public static Item bowBaconite;
public static Item pickBaconite;
public static Item axeBaconite;
public static Item swordBaconite;
public static Item hoeBaconite;
public static Item shovelBaconite;
public static Item paxcelBaconite;
public static Item baconCutter;
public static Item pickSapphire;
public static Item axeSapphire;
public static Item swordSapphire;
public static Item hoeSapphire;
public static Item shovelSapphire;
public static Item pickAmethyst;
public static Item axeAmethyst;
public static Item swordAmethyst;
public static Item hoeAmethyst;
public static Item shovelAmethyst;
public static Item pickObsidian;
public static Item axeObsidian;
public static Item swordObsidian;
public static Item hoeObsidian;
public static Item shovelObsidian;
public static Item pickRuby;
public static Item axeRuby;
public static Item swordRuby;
public static Item hoeRuby;
public static Item shovelRuby;

public static Item woodSA;
public static Item stoneSA;
public static Item ironSA;
public static Item goldSA;
public static Item diamondSA;
public static Item rubySA;
public static Item amethystSA;
public static Item baconiteSA;
public static Item obsidianSA;
public static Item sapphireSA;

//armor starts here
public static Item baconiteHelmet;
public static Item baconiteChestplate;
public static Item baconiteLeggings;
public static Item baconiteBoots;
public static Item sapphireHelmet;
public static Item sapphireChestplate;
public static Item sapphireLeggings;
public static Item sapphireBoots;
public static Item obsidianHelmet;
public static Item obsidianChestplate;
public static Item obsidianLeggings;
public static Item obsidianBoots;
public static Item rubyHelmet;
public static Item rubyChestplate;
public static Item rubyLeggings;
public static Item rubyBoots;
public static Item amethystHelmet;
public static Item amethystChestplate;
public static Item amethystLeggings;
public static Item amethystBoots;

//biomes
public static BiomeGenBase biome1;

//acheivements
//static final Achievement multitoolAchievement = (new Achievement(30, "multiToolAcheve", -4, 2, MCEnrichment.paxcelBaconite, (Achievement)null)).setIndependent().registerAchievement();
//food starts here
public static Item baconRaw;
public static Item baconCooked;
@Init
public void load(FMLInitializationEvent event){
	//this.addAchievementLocalizations();	
	//LanguageRegistry.instance().addStringLocalization("itemGroup.Minecraft Enrichment", "en_US", "Minecraft Enrichment");
	proxy.registerRenderThings();
	proxy.registerServerTickHandler();
	proxy.registerRenderStone();

	baconiteOre = new BlockBaconiteOre(baconiteOreID, Material.iron).setUnlocalizedName("tilebaconiteore").setHardness(4.0F).setCreativeTab(tabMCEnrichment);
	sapphireOre = new BlockSapphireOre(sapphireOreID, Material.iron).setUnlocalizedName("tilesapphireore").setHardness(3.7F).setCreativeTab(tabMCEnrichment);
	amethystOre = new BlockAmthystOre(amethystOreID, Material.iron).setUnlocalizedName("tileamthystore").setHardness(3.7F).setCreativeTab(tabMCEnrichment);
	rubyOre = new BlockRubyOre(rubyOreID, Material.iron).setUnlocalizedName("tilerubyore").setHardness(3.7F).setCreativeTab(tabMCEnrichment);

	GameRegistry.registerWorldGenerator(new WorldGeneratorCrystalia());

GameRegistry.registerBlock(baconiteOre, "baconiteore");
MinecraftForge.setBlockHarvestLevel(baconiteOre, "pickaxe", 2);
GameRegistry.registerBlock(sapphireOre, "sapphireore");
MinecraftForge.setBlockHarvestLevel(sapphireOre, "pickaxe", 2);
GameRegistry.registerBlock(amethystOre, "amethystore");
MinecraftForge.setBlockHarvestLevel(amethystOre, "pickaxe", 2);
GameRegistry.registerBlock(rubyOre, "rubyore");
MinecraftForge.setBlockHarvestLevel(rubyOre, "pickaxe", 2);



LanguageRegistry.addName(baconiteOre, "Baconite Ore");
LanguageRegistry.addName(sapphireOre, "Sapphire Ore");
LanguageRegistry.addName(amethystOre, "Amethyst Ore");
LanguageRegistry.addName(rubyOre, "Ruby Ore");

//addAchievementLocalizations();


		baconiteIngot = new ItemBaconiteIngot(504).setUnlocalizedName("mcenrichment:ingotBaconite").setCreativeTab(tabMCEnrichment);
		LanguageRegistry.addName(baconiteIngot, "Baconite Ingot");
		sapphire = new ItemSapphire(505).setUnlocalizedName("mcenrichment:saphire").setCreativeTab(tabMCEnrichment);
		LanguageRegistry.addName(sapphire, "Sapphire");
		ruby = new ItemRuby(506).setUnlocalizedName("mcenrichment:ruby").setCreativeTab(tabMCEnrichment);
		LanguageRegistry.addName(ruby, "Ruby");
		amethyst = new ItemAmethyst(507).setUnlocalizedName("mcenrichment:amethyst");
		LanguageRegistry.addName(amethyst, "Amethyst");	
		explosiveWood = new ExplosiveWood(explosiveWoodID).setUnlocalizedName("mcenrichment:explosiveWood").setCreativeTab(tabMCEnrichment);
		EntityRegistry.registerModEntity(EntityWoodTNT.class, "ExplosiveWood", EntityRegistry.findGlobalUniqueEntityId(), this, 128, 1, true); 
		LanguageRegistry.instance().addStringLocalization("entity.ExplosiveWood.name", "Explosive Wood");
		GameRegistry.registerBlock(explosiveWood, "woodtnt");
		LanguageRegistry.addName(explosiveWood, "Explosive Wood");
		explosiveStone = new ExplosiveStone(explosiveStoneID).setUnlocalizedName("mcenrichment:explosiveStone").setCreativeTab(tabMCEnrichment);
		EntityRegistry.registerModEntity(EntityStoneTNT.class, "ExplosiveStone", EntityRegistry.findGlobalUniqueEntityId(), this, 500, 1, true); 
		LanguageRegistry.instance().addStringLocalization("entity.ExplosiveStone.name", "Explosive Stone");
		GameRegistry.registerBlock(explosiveStone, "stonetnt");
		LanguageRegistry.addName(explosiveStone, "Explosive Stone");
		//Crafting
/*GameRegistry.addRecipe(new ItemStack(baconiteChestplate, 1), new Object[] {
	"T T", "TTT", "TTT", 'T', baconiteIngot
});	
*/		

//tools
bowBaconite = new BaconiteBow(7000).setUnlocalizedName("baconiteBow").setCreativeTab(tabMCEnrichment); 
LanguageRegistry.addName(bowBaconite, "Baconite Bow");

EnumToolMaterial BACONITE = EnumHelper.addToolMaterial("Baconite Enum", 3, 10000, 50.0F, 4, 15);
EnumToolMaterial SAPPHIRE = EnumHelper.addToolMaterial("Sapphire Enum", 3, 500, 6.5F, 3, 14);
EnumToolMaterial OBSIDIAN = EnumHelper.addToolMaterial("Obsidian Enum", 3, 5000, 6.0F, 4, 5);
EnumArmorMaterial BACONITEA = EnumHelper.addArmorMaterial("Baconite Armor", 40, new int[]{3, 8, 6, 3}, 15);
EnumArmorMaterial SAPPHIREA = EnumHelper.addArmorMaterial("Sapphire Armor", 25, new int[]{2, 6, 5, 2}, 10);
EnumArmorMaterial OBSIDIANA = EnumHelper.addArmorMaterial("Obsidian Armor", 50, new int[]{2, 6, 5, 2}, 5);


pickBaconite = new PickaxeBaconite(509, BACONITE).setUnlocalizedName("mcenrichment:pickaxeBaconite").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(pickBaconite, "Baconite Pickaxe");

axeBaconite = new AxeBaconite(510, BACONITE).setUnlocalizedName("mcenrichment:hatchetBaconite").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(axeBaconite, "Baconite Axe");

hoeBaconite = new HoeBaconite(511, BACONITE).setUnlocalizedName("mcenrichment:hoeBaconite").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(hoeBaconite, "Baconite Hoe");

shovelBaconite = new ShovelBaconite(512, BACONITE).setUnlocalizedName("mcenrichment:shovelBaconite").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(shovelBaconite, "Baconite Shovel");

swordBaconite = new SwordBaconite(513, BACONITE).setUnlocalizedName("mcenrichment:Baconite Sword").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(swordBaconite, "Baconite Sword");

paxcelBaconite = new PaxcelBaconite(514, BACONITE).setUnlocalizedName("mcenrichment:The Multi-Tool").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(paxcelBaconite, "Multi-Tool");

pickSapphire = new PickaxeSapphire(515, SAPPHIRE).setUnlocalizedName("mcenrichment:pickaxeSaphire").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(pickSapphire, "Sapphire Pickaxe");

axeSapphire = new AxeSapphire(516, SAPPHIRE).setUnlocalizedName("mcenrichment:hatchetSaphire").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(axeSapphire, "Sapphire Axe");

hoeSapphire = new HoeSapphire(517, SAPPHIRE).setUnlocalizedName("mcenrichment:hoeSaphire").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(hoeSapphire, "Sapphire Hoe");

shovelSapphire = new ShovelSapphire(518, SAPPHIRE).setUnlocalizedName("mcenrichment:shovelSaphire").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(shovelSapphire, "Sapphire Shovel");

swordSapphire = new SwordSapphire(519, SAPPHIRE).setUnlocalizedName("mcenrichment:swordSaphire").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(swordSapphire, "Sapphire Sword");

pickAmethyst = new PickaxeAmethyst(520, SAPPHIRE).setUnlocalizedName("mcenrichment:pickaxeAmethyst").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(pickAmethyst, "Amethyst Pickaxe");

axeAmethyst = new AxeAmethyst(521, SAPPHIRE).setUnlocalizedName("mcenrichment:hatchetAmethyst").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(axeAmethyst, "Amethyst Axe");

hoeAmethyst = new HoeAmethyst(522, SAPPHIRE).setUnlocalizedName("mcenrichment:hoeAmethyst").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(hoeAmethyst, "Amethyst Hoe");

shovelAmethyst = new ShovelAmethyst(523, SAPPHIRE).setUnlocalizedName("mcenrichment:shovelAmethyst").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(shovelAmethyst, "Amethyst Shovel");

swordAmethyst = new SwordAmethyst(524, SAPPHIRE).setUnlocalizedName("mcenrichment:swordAmethyst").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(swordAmethyst, "Amethyst Sword");

pickObsidian = new PickaxeObsidian(525, OBSIDIAN).setUnlocalizedName("mcenrichment:pickaxeObsidian").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(pickObsidian, "Obsidian Pickaxe");

axeObsidian = new AxeObsidian(526, OBSIDIAN).setUnlocalizedName("mcenrichment:hatchetObsidian").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(axeObsidian, "Obsidian Axe");

hoeObsidian = new HoeObsidian(527, OBSIDIAN).setUnlocalizedName("mcenrichment:hoeObsidian").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(hoeObsidian, "Obsidian Hoe");

shovelObsidian = new ShovelObsidian(528, OBSIDIAN).setUnlocalizedName("mcenrichment:shovelObsidian").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(shovelObsidian, "Obsidian Shovel");

swordObsidian = new SwordObsidian(529, OBSIDIAN).setUnlocalizedName("mcenrichment:swordObsidian").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(swordObsidian, "Obsidian Sword");

pickRuby = new PickaxeRuby(530, SAPPHIRE).setUnlocalizedName("mcenrichment:pickaxeRuby").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(pickRuby, "Ruby Pickaxe");

axeRuby = new AxeRuby(531, SAPPHIRE).setUnlocalizedName("mcenrichment:hatchetRuby").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(axeRuby, "Ruby Axe");

hoeRuby = new HoeRuby(532, SAPPHIRE).setUnlocalizedName("mcenrichment:hoeRuby").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(hoeRuby, "Ruby Hoe");

shovelRuby = new ShovelRuby(533, SAPPHIRE).setUnlocalizedName("mcenrichment:shovelRuby").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(shovelRuby, "Ruby Shovel");

swordRuby = new SwordRuby(534, SAPPHIRE).setUnlocalizedName("mcenrichment:swordRuby").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(swordRuby, "Ruby Sword");

woodSA = new woodSA(535, EnumToolMaterial.WOOD).setUnlocalizedName("mcenrichment:sa1").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(woodSA, "Wood Superaxe");

stoneSA = new stoneSA(536, EnumToolMaterial.STONE).setUnlocalizedName("mcenrichment:sa2").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(stoneSA, "Stone Superaxe");

ironSA = new ironSA(537, EnumToolMaterial.IRON).setUnlocalizedName("mcenrichment:sa3").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(ironSA, "Iron Superaxe");

goldSA = new goldSA(538, EnumToolMaterial.GOLD).setUnlocalizedName("mcenrichment:sa4").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(goldSA, "Gold Superaxe");

diamondSA = new diamondSA(539, EnumToolMaterial.EMERALD).setUnlocalizedName("mcenrichment:sa5").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(diamondSA, "Diamond Superaxe");

amethystSA = new amethystSA(540, SAPPHIRE).setUnlocalizedName("mcenrichment:sa6").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(amethystSA, "Amethyst Superaxe");

rubySA = new rubySA(541, SAPPHIRE).setUnlocalizedName("mcenrichment:sa7").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(rubySA, "Ruby Superaxe");

baconiteSA = new baconiteSA(542, BACONITE).setUnlocalizedName("mcenrichment:sa8").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(baconiteSA, "Baconite Superaxe");

obsidianSA = new obsidianSA(543, OBSIDIAN).setUnlocalizedName("mcenrichment:sa9").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(obsidianSA, "Obsidian Superaxe");

sapphireSA = new sapphireSA(544, SAPPHIRE).setUnlocalizedName("mcenrichment:sa10").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(sapphireSA, "Sapphire Superaxe");

baconCutter = new BaconCutter(545).setUnlocalizedName("mcenrichment:Bacon cutter (knife)").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(baconCutter, "Meat Cutter");
//armor

baconiteHelmet = new BaconiteArmor(546, BACONITEA, proxy.addArmor("Baconite"), 0).setUnlocalizedName("mcenrichment:helmetBaconite").setCreativeTab(tabMCEnrichment); 
LanguageRegistry.addName(baconiteHelmet, "Baconite Helmet");

baconiteChestplate = new BaconiteArmor(547, BACONITEA, proxy.addArmor("Baconite"), 1).setUnlocalizedName("mcenrichment:chestplateBaconite").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(baconiteChestplate, "Baconite Chestplate");

baconiteLeggings = new BaconiteArmor(548, BACONITEA, proxy.addArmor("Baconite"), 2).setUnlocalizedName("mcenrichment:leggingsBaconite").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(baconiteLeggings, "Baconite Leggings");

baconiteBoots = new BaconiteArmor(549, BACONITEA, proxy.addArmor("Baconite"), 3).setUnlocalizedName("mcenrichment:bootsBaconite").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(baconiteBoots, "Baconite Boots");

sapphireHelmet = new SapphireArmor(550, SAPPHIREA, proxy.addArmor("Sapphire"), 0).setUnlocalizedName("helmetSaphire").setCreativeTab(tabMCEnrichment); 
LanguageRegistry.addName(sapphireHelmet, "Sapphire Helmet");

sapphireChestplate = new SapphireArmor(551, SAPPHIREA, proxy.addArmor("Sapphire"), 1).setUnlocalizedName("chestplateSaphire").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(sapphireChestplate, "Sapphire Chestplate");

sapphireLeggings = new SapphireArmor(552, SAPPHIREA, proxy.addArmor("Sapphire"), 2).setUnlocalizedName("leggingsSaphire").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(sapphireLeggings, "Sapphire Leggings");

sapphireBoots = new SapphireArmor(553, SAPPHIREA, proxy.addArmor("Sapphire"), 3).setUnlocalizedName("bootsSaphire").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(sapphireBoots, "Sapphire Boots");

obsidianHelmet = new ObsidianArmor(554, OBSIDIANA, proxy.addArmor("Obsidian"), 0).setUnlocalizedName("helmetObsidian").setCreativeTab(tabMCEnrichment); 
LanguageRegistry.addName(obsidianHelmet, "Obsidian Helmet");

obsidianChestplate = new ObsidianArmor(555, OBSIDIANA, proxy.addArmor("Obsidian"), 1).setUnlocalizedName("chestplateObsidian").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(obsidianChestplate, "Obsidian Chestplate");

obsidianLeggings = new ObsidianArmor(556, OBSIDIANA, proxy.addArmor("Obsidian"), 2).setUnlocalizedName("leggingsObsidian").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(obsidianLeggings, "Obsidian Leggings");

obsidianBoots = new ObsidianArmor(557, OBSIDIANA, proxy.addArmor("Obsidian"), 3).setUnlocalizedName("bootsObsidian").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(obsidianBoots, "Obsidian Boots");

rubyHelmet = new RubyArmor(558, SAPPHIREA, proxy.addArmor("Ruby"), 0).setUnlocalizedName("helmetRuby").setCreativeTab(tabMCEnrichment); 
LanguageRegistry.addName(rubyHelmet, "Ruby Helmet");

rubyChestplate = new RubyArmor(559, SAPPHIREA, proxy.addArmor("Ruby"), 1).setUnlocalizedName("chestplateRuby").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(rubyChestplate, "Ruby Chestplate");

rubyLeggings = new RubyArmor(560, SAPPHIREA, proxy.addArmor("Ruby"), 2).setUnlocalizedName("leggingsRuby").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(rubyLeggings, "Ruby Leggings");

rubyBoots = new RubyArmor(561, SAPPHIREA, proxy.addArmor("Ruby"), 3).setUnlocalizedName("bootsRuby").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(rubyBoots, "Ruby Boots");

amethystHelmet = new amethystArmor(562, SAPPHIREA, proxy.addArmor("amethyst"), 0).setUnlocalizedName("helmetamethyst").setCreativeTab(tabMCEnrichment); 
LanguageRegistry.addName(amethystHelmet, "Amethyst Helmet");

amethystChestplate = new amethystArmor(563, SAPPHIREA, proxy.addArmor("amethyst"), 1).setUnlocalizedName("chestplateamethyst").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(amethystChestplate, "Amethyst Chestplate");

amethystLeggings = new amethystArmor(564, SAPPHIREA, proxy.addArmor("amethyst"), 2).setUnlocalizedName("leggingsamethyst").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(amethystLeggings, "Amethyst Leggings");

amethystBoots = new amethystArmor(565, SAPPHIREA, proxy.addArmor("amethyst"), 3).setUnlocalizedName("bootsamethyst").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(amethystBoots, "Amethyst Boots");
//food

baconRaw = new RawBacon(rawBaconID, 1, 4.0F, false).setUnlocalizedName("mcenrichment:rawBacon").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(baconRaw, "Raw Bacon");

baconCooked = new CookedBacon(567, 20, 10.0F, true).setUnlocalizedName("mcenrichment:cookedBacon").setCreativeTab(tabMCEnrichment);
LanguageRegistry.addName(baconCooked, "Cooked Bacon");

//biome
//biome1 = new Biome1(24).setBiomeName("Biome 1").setTemperatureRainfall(0.7F, 0.8F);
//GameRegistry.addBiome(biome1);
//smelting
GameRegistry.addSmelting(baconiteOreID, new ItemStack (baconiteIngot), 0.1f); 

GameRegistry.addSmelting(baconRaw.itemID, new ItemStack (baconCooked), 0.1f); 

//crafting

GameRegistry.addShapelessRecipe(new ItemStack(paxcelBaconite), new Object[] {
   MCEnrichment.pickBaconite, MCEnrichment.shovelBaconite, MCEnrichment.swordBaconite, MCEnrichment.hoeBaconite, MCEnrichment.axeBaconite,
});

GameRegistry.addRecipe(new ItemStack(baconiteBoots), new Object[] {
    "   ", "T T", "T T",
    'T', MCEnrichment.baconiteIngot,
});

GameRegistry.addRecipe(new ItemStack(baconiteLeggings), new Object[] {
    "TTT", "T T", "T T",
    'T', MCEnrichment.baconiteIngot,
});

GameRegistry.addRecipe(new ItemStack(baconiteHelmet), new Object[] {
    "TTT", "T T",
    'T', MCEnrichment.baconiteIngot,
});

GameRegistry.addRecipe(new ItemStack(baconiteChestplate), new Object[] {
    "T T", "TTT", "TTT",
    'T', MCEnrichment.baconiteIngot,
});

GameRegistry.addRecipe(new ItemStack(sapphireBoots), new Object[] {
    "   ", "T T", "T T",
    'T', MCEnrichment.sapphire,
});

GameRegistry.addRecipe(new ItemStack(sapphireLeggings), new Object[] {
    "TTT", "T T", "T T",
    'T', MCEnrichment.sapphire,
});

GameRegistry.addRecipe(new ItemStack(sapphireHelmet), new Object[] {
    "TTT", "T T",
    'T', MCEnrichment.sapphire,
});

GameRegistry.addRecipe(new ItemStack(sapphireChestplate), new Object[] {
    "T T", "TTT", "TTT",
    'T', MCEnrichment.sapphire,
});

GameRegistry.addRecipe(new ItemStack(pickBaconite), new Object[] {
    "TTT", " X ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(hoeBaconite), new Object[] {
    "TT ", " X ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(axeBaconite), new Object[] {
    "TT ", "TX ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(swordBaconite), new Object[] {
    " T ", " T ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(shovelBaconite), new Object[] {
    " T ", " X ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(pickSapphire), new Object[] {
    "TTT", " X ", " X ",
    'T', MCEnrichment.sapphire , 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(hoeSapphire), new Object[] {
    "TT ", " X ", " X ",
    'T', MCEnrichment.sapphire, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(axeSapphire), new Object[] {
    "TT ", "TX ", " X ",
    'T', MCEnrichment.sapphire, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(swordSapphire), new Object[] {
    " T ", " T ", " X ",
    'T', MCEnrichment.sapphire, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(shovelSapphire), new Object[] {
    " T ", " X ", " X ",
    'T', MCEnrichment.sapphire, 'X', Item.stick

});


GameRegistry.addRecipe(new ItemStack(pickAmethyst), new Object[] {
    "TTT", " X ", " X ",
    'T', MCEnrichment.amethyst , 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(hoeAmethyst), new Object[] {
    "TT ", " X ", " X ",
    'T', MCEnrichment.amethyst, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(axeAmethyst), new Object[] {
    "TT ", "TX ", " X ",
    'T', MCEnrichment.amethyst, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(swordAmethyst), new Object[] {
    " T ", " T ", " X ",
    'T', MCEnrichment.amethyst, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(shovelAmethyst), new Object[] {
    " T ", " X ", " X ",
    'T', MCEnrichment.amethyst, 'X', Item.stick

});


GameRegistry.addRecipe(new ItemStack(bowBaconite), new Object[] {
    " XT", "X T", " XT",
    'X', MCEnrichment.baconiteIngot, 'T', Item.silk
});

GameRegistry.addRecipe(new ItemStack(baconCutter), new Object[] {
    "   ", " T ", "X  ",
    'T', Item.ingotIron, 'X', Item.stick
});
ItemStack(baconCutter.setContainerItem(baconCutter));
GameRegistry.addShapelessRecipe(new ItemStack(baconRaw, 1),
            new Object[] {
        Item.porkRaw, new ItemStack(baconCutter, 1, Short.MAX_VALUE)
});

GameRegistry.addShapelessRecipe(new ItemStack(woodSA, 1),
            new Object[] {
        Item.shears, Item.axeWood
});

GameRegistry.addShapelessRecipe(new ItemStack(stoneSA, 1),
            new Object[] {
        Item.shears, Item.axeStone
});

GameRegistry.addShapelessRecipe(new ItemStack(ironSA, 1),
            new Object[] {
        Item.shears, Item.axeIron
});

GameRegistry.addShapelessRecipe(new ItemStack(goldSA, 1),
            new Object[] {
        Item.shears, Item.axeGold
});

GameRegistry.addShapelessRecipe(new ItemStack(diamondSA, 1),
            new Object[] {
        Item.shears, Item.axeDiamond
});


GameRegistry.addShapelessRecipe(new ItemStack(amethystSA, 1),
            new Object[] {
        Item.shears, MCEnrichment.axeAmethyst
});

GameRegistry.addShapelessRecipe(new ItemStack(baconiteSA, 1),
            new Object[] {
        Item.shears, MCEnrichment.axeBaconite
});

GameRegistry.addShapelessRecipe(new ItemStack(obsidianSA, 1),
            new Object[] {
        Item.shears, MCEnrichment.axeObsidian
});

GameRegistry.addShapelessRecipe(new ItemStack(sapphireSA, 1),
            new Object[] {
        Item.shears, MCEnrichment.axeSapphire
});

GameRegistry.addRecipe(new ItemStack(rubyBoots), new Object[] {
    "   ", "T T", "T T",
    'T', MCEnrichment.ruby,
});

GameRegistry.addRecipe(new ItemStack(rubyLeggings), new Object[] {
    "TTT", "T T", "T T",
    'T', MCEnrichment.ruby,
});

GameRegistry.addRecipe(new ItemStack(rubyHelmet), new Object[] {
    "TTT", "T T",
    'T', MCEnrichment.ruby,
});

GameRegistry.addRecipe(new ItemStack(rubyChestplate), new Object[] {
    "T T", "TTT", "TTT",
    'T', MCEnrichment.ruby,
});

GameRegistry.addRecipe(new ItemStack(pickBaconite), new Object[] {
    "TTT", " X ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(hoeBaconite), new Object[] {
    "TT ", " X ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(axeBaconite), new Object[] {
    "TT ", "TX ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(swordBaconite), new Object[] {
    " T ", " T ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(shovelBaconite), new Object[] {
    " T ", " X ", " X ",
    'T', MCEnrichment.baconiteIngot, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(pickRuby), new Object[] {
    "TTT", " X ", " X ",
    'T', MCEnrichment.ruby, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(hoeRuby), new Object[] {
    "TT ", " X ", " X ",
    'T', MCEnrichment.ruby, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(axeRuby), new Object[] {
    "TT ", "TX ", " X ",
    'T', MCEnrichment.ruby, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(swordRuby), new Object[] {
    " T ", " T ", " X ",
    'T', MCEnrichment.ruby, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(shovelRuby), new Object[] {
    " T ", " X ", " X ",
    'T', MCEnrichment.ruby, 'X', Item.stick
});


GameRegistry.addRecipe(new ItemStack(pickObsidian), new Object[] {
    "TTT", " X ", " X ",
    'T', Block.obsidian, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(hoeObsidian), new Object[] {
    "TT ", " X ", " X ",
    'T', Block.obsidian, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(axeObsidian), new Object[] {
    "TT ", "TX ", " X ",
    'T', Block.obsidian, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(swordObsidian), new Object[] {
    " T ", " T ", " X ",
    'T', Block.obsidian, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(shovelObsidian), new Object[] {
    " T ", " X ", " X ",
    'T', Block.obsidian, 'X', Item.stick
});

GameRegistry.addRecipe(new ItemStack(obsidianBoots), new Object[] {
    "   ", "T T", "T T",
    'T', Block.obsidian,
});

GameRegistry.addRecipe(new ItemStack(obsidianLeggings), new Object[] {
    "TTT", "T T", "T T",
    'T', Block.obsidian,
});

GameRegistry.addRecipe(new ItemStack(obsidianHelmet), new Object[] {
    "TTT", "T T",
    'T', Block.obsidian,
});

GameRegistry.addRecipe(new ItemStack(obsidianChestplate), new Object[] {
    "T T", "TTT", "TTT",
    'T', Block.obsidian,
});


GameRegistry.addRecipe(new ItemStack(sapphireBoots), new Object[] {
    "   ", "T T", "T T",
    'T', MCEnrichment.sapphire,
});

GameRegistry.addRecipe(new ItemStack(sapphireLeggings), new Object[] {
    "TTT", "T T", "T T",
    'T', MCEnrichment.sapphire,
});

GameRegistry.addRecipe(new ItemStack(sapphireHelmet), new Object[] {
    "TTT", "T T",
    'T', MCEnrichment.sapphire,
});

GameRegistry.addRecipe(new ItemStack(sapphireChestplate), new Object[] {
    "T T", "TTT", "TTT",
    'T', MCEnrichment.sapphire,
});

GameRegistry.addRecipe(new ItemStack(amethystBoots), new Object[] {
    "   ", "T T", "T T",
    'T', MCEnrichment.amethyst,
});

GameRegistry.addRecipe(new ItemStack(amethystLeggings), new Object[] {
    "TTT", "T T", "T T",
    'T', MCEnrichment.amethyst,
});

GameRegistry.addRecipe(new ItemStack(amethystHelmet), new Object[] {
    "TTT", "T T",
    'T', MCEnrichment.amethyst,
});

GameRegistry.addRecipe(new ItemStack(amethystChestplate), new Object[] {
    "T T", "TTT", "TTT",
    'T', MCEnrichment.amethyst,
});

GameRegistry.addRecipe(new ItemStack(Block.cloth), new Object[] {
    "TTT", "TTT", "TTT",
    'T', Item.silk
});
}

private void ItemStack(Item setContainerItem) {


}



}

 

Client Proxy:

package mods.mcenrichment.common;

import net.minecraftforge.client.MinecraftForgeClient;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.registry.TickRegistry;
import cpw.mods.fml.relauncher.Side;

public class ClientProxy extends ServerProxy{

@Override
public void registerRenderThings(){
	RenderingRegistry.registerEntityRenderingHandler(EntityWoodTNT.class, new RenderWoodTNT());
	RenderingRegistry.registerEntityRenderingHandler(EntityStoneTNT.class, new RenderStoneTNT());
}

public int addArmor(String armor){
return RenderingRegistry.addNewArmourRendererPrefix(armor);
}



}

 

Explosive Stone Block:

package mods.mcenrichment.common;

import java.util.Random;

import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.projectile.EntityArrow;
import net.minecraft.item.Item;
import net.minecraft.util.Icon;
import net.minecraft.world.Explosion;
import net.minecraft.world.World;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;

public class ExplosiveStone extends Block
{
    

    public ExplosiveStone(int par1)
    {
        super(par1, Material.tnt);
        this.setCreativeTab(CreativeTabs.tabRedstone);
    }


    /**
     * Called whenever the block is added into the world. Args: world, x, y, z
     */
    public void onBlockAdded(World par1World, int par2, int par3, int par4)
    {
        super.onBlockAdded(par1World, par2, par3, par4);

        if (par1World.isBlockIndirectlyGettingPowered(par2, par3, par4))
        {
            this.onBlockDestroyedByPlayer(par1World, par2, par3, par4, 1);
            par1World.setBlockToAir(par2, par3, par4);
        }
    }

    /**
     * Lets the block know when one of its neighbor changes. Doesn't know which neighbor changed (coordinates passed are
     * their own) Args: x, y, z, neighbor blockID
     */
    public void onNeighborBlockChange(World par1World, int par2, int par3, int par4, int par5)
    {
        if (par1World.isBlockIndirectlyGettingPowered(par2, par3, par4))
        {
            this.onBlockDestroyedByPlayer(par1World, par2, par3, par4, 1);
            par1World.setBlockToAir(par2, par3, par4);
        }
    }

    /**
     * Returns the quantity of items to drop on block destruction.
     */
    public int quantityDropped(Random par1Random)
    {
        return 1;
    }

    /**
     * Called upon the block being destroyed by an explosion
     */
    public void onBlockDestroyedByExplosion(World par1World, int par2, int par3, int par4, Explosion par5Explosion)
    {
        if (!par1World.isRemote)
        {
            EntityStoneTNT entitytntprimed = new EntityStoneTNT(par1World, (double)((float)par2 + 0.5F), (double)((float)par3 + 0.5F), (double)((float)par4 + 0.5F), par5Explosion.func_94613_c());
            entitytntprimed.fuse = par1World.rand.nextInt(entitytntprimed.fuse / 4) + entitytntprimed.fuse / 8;
            par1World.spawnEntityInWorld(entitytntprimed);
        }
    }

    /**
     * Called right before the block is destroyed by a player.  Args: world, x, y, z, metaData
     */
    public void onBlockDestroyedByPlayer(World par1World, int par2, int par3, int par4, int par5)
    {
        this.func_94391_a(par1World, par2, par3, par4, par5, (EntityLiving)null);
    }

    public void func_94391_a(World par1World, int par2, int par3, int par4, int par5, EntityLiving par6EntityLiving)
    {
        if (!par1World.isRemote)
        {
            if ((par5 & 1) == 1)
            {
            	EntityStoneTNT entitytntprimed = new EntityStoneTNT(par1World, (double)((float)par2 + 0.5F), (double)((float)par3 + 0.5F), (double)((float)par4 + 0.5F), par6EntityLiving);
                par1World.spawnEntityInWorld(entitytntprimed);
                par1World.playSoundAtEntity(entitytntprimed, "random.fuse", 1.0F, 1.0F);
            }
        }
    }

    /**
     * Called upon block activation (right click on the block.)
     */
    public boolean onBlockActivated(World par1World, int par2, int par3, int par4, EntityPlayer par5EntityPlayer, int par6, float par7, float par8, float par9)
    {
        if (par5EntityPlayer.getCurrentEquippedItem() != null && par5EntityPlayer.getCurrentEquippedItem().itemID == Item.flintAndSteel.itemID)
        {
            this.func_94391_a(par1World, par2, par3, par4, 1, par5EntityPlayer);
            par1World.setBlockToAir(par2, par3, par4);
            return true;
        }
        else
        {
            return super.onBlockActivated(par1World, par2, par3, par4, par5EntityPlayer, par6, par7, par8, par9);
        }
    }

    /**
     * Triggered whenever an entity collides with this block (enters into the block). Args: world, x, y, z, entity
     */
    public void onEntityCollidedWithBlock(World par1World, int par2, int par3, int par4, Entity par5Entity)
    {
        if (par5Entity instanceof EntityArrow && !par1World.isRemote)
        {
            EntityArrow entityarrow = (EntityArrow)par5Entity;

            if (entityarrow.isBurning())
            {
                this.func_94391_a(par1World, par2, par3, par4, 1, entityarrow.shootingEntity instanceof EntityLiving ? (EntityLiving)entityarrow.shootingEntity : null);
                par1World.setBlockToAir(par2, par3, par4);
            }
        }
    }

    /**
     * Return whether this block can drop from an explosion.
     */
    public boolean canDropFromExplosion(Explosion par1Explosion)
    {
        return false;
    }


}

 

EntityStoneTNT:

package mods.mcenrichment.common;

import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;

public class EntityStoneTNT extends Entity
{
    /** How long the fuse is */
    public int fuse;
    private EntityLiving tntPlacedBy;

    public EntityStoneTNT(World par1World)
    {
        super(par1World);
        this.fuse = 80;
        this.preventEntitySpawning = true;
        this.setSize(0.98F, 0.98F);
        this.yOffset = this.height / 2.0F;
    }

    public EntityStoneTNT(World par1World, double par2, double par4, double par6, EntityLiving par8EntityLiving)
    {
        this(par1World);
        this.setPosition(par2, par4, par6);
        float f = (float)(Math.random() * Math.PI * 2.0D);
        this.motionX = (double)(-((float)Math.sin((double)f)) * 0.02F);
        this.motionY = 0.20000000298023224D;
        this.motionZ = (double)(-((float)Math.cos((double)f)) * 0.02F);
        this.fuse = 80;
        this.prevPosX = par2;
        this.prevPosY = par4;
        this.prevPosZ = par6;
        this.tntPlacedBy = par8EntityLiving;
    }

    protected void entityInit() {}

    /**
     * returns if this entity triggers Block.onEntityWalking on the blocks they walk on. used for spiders and wolves to
     * prevent them from trampling crops
     */
    protected boolean canTriggerWalking()
    {
        return false;
    }

    /**
     * Returns true if other Entities should be prevented from moving through this Entity.
     */
    public boolean canBeCollidedWith()
    {
        return !this.isDead;
    }

    /**
     * Called to update the entity's position/logic.
     */
    public void onUpdate()
    {
        this.prevPosX = this.posX;
        this.prevPosY = this.posY;
        this.prevPosZ = this.posZ;
        this.motionY -= 0.03999999910593033D;
        this.moveEntity(this.motionX, this.motionY, this.motionZ);
        this.motionX *= 0.9800000190734863D;
        this.motionY *= 0.9800000190734863D;
        this.motionZ *= 0.9800000190734863D;

        if (this.onGround)
        {
            this.motionX *= 0.699999988079071D;
            this.motionZ *= 0.699999988079071D;
            this.motionY *= -0.5D;
        }

        if (this.fuse-- <= 0)
        {
            this.setDead();

            if (!this.worldObj.isRemote)
            {
                this.explode();
            }
        }
        else
        {
            this.worldObj.spawnParticle("smoke", this.posX, this.posY + 0.5D, this.posZ, 0.0D, 0.0D, 0.0D);
        }
    }

    private void explode()
    {
        float f = 4.0F;
        this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, f, true);
    }

    /**
     * (abstract) Protected helper method to write subclass entity data to NBT.
     */
    protected void writeEntityToNBT(NBTTagCompound par1NBTTagCompound)
    {
        par1NBTTagCompound.setByte("Fuse", (byte)this.fuse);
    }

    /**
     * (abstract) Protected helper method to read subclass entity data from NBT.
     */
    protected void readEntityFromNBT(NBTTagCompound par1NBTTagCompound)
    {
        this.fuse = par1NBTTagCompound.getByte("Fuse");
    }

    @SideOnly(Side.CLIENT)
    public float getShadowSize()
    {
        return 0.0F;
    }

    public EntityLiving func_94083_c()
    {
        return this.tntPlacedBy;
    }
}

 

RenderStoneTNT:

package mods.mcenrichment.common;

import net.minecraft.block.Block;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.client.renderer.entity.Render;
import net.minecraft.entity.Entity;

import org.lwjgl.opengl.GL11;

import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;

@SideOnly(Side.CLIENT)
public class RenderStoneTNT extends Render
{
    private RenderBlocks blockRenderer = new RenderBlocks();

    public RenderStoneTNT()
    {
        this.shadowSize = 0.5F;
    }

    public void renderPrimedTNT(EntityStoneTNT par1EntityTNTPrimed, double par2, double par4, double par6, float par8, float par9)
    {
        GL11.glPushMatrix();
        GL11.glTranslatef((float)par2, (float)par4, (float)par6);
        float f2;

        if ((float)par1EntityTNTPrimed.fuse - par9 + 1.0F < 10.0F)
        {
            f2 = 1.0F - ((float)par1EntityTNTPrimed.fuse - par9 + 1.0F) / 10.0F;

            if (f2 < 0.0F)
            {
                f2 = 0.0F;
            }

            if (f2 > 1.0F)
            {
                f2 = 1.0F;
            }

            f2 *= f2;
            f2 *= f2;
            float f3 = 1.0F + f2 * 0.3F;
            GL11.glScalef(f3, f3, f3);
        }

        f2 = (1.0F - ((float)par1EntityTNTPrimed.fuse - par9 + 1.0F) / 100.0F) * 0.8F;
        this.loadTexture("/terrain.png");
        this.blockRenderer.renderBlockAsItem(MCEnrichment.explosiveStone, 0, par1EntityTNTPrimed.getBrightness(par9));

        if (par1EntityTNTPrimed.fuse / 5 % 2 == 0)
        {
            GL11.glDisable(GL11.GL_TEXTURE_2D);
            GL11.glDisable(GL11.GL_LIGHTING);
            GL11.glEnable(GL11.GL_BLEND);
            GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_DST_ALPHA);
            GL11.glColor4f(1.0F, 1.0F, 1.0F, f2);
            this.blockRenderer.renderBlockAsItem(MCEnrichment.explosiveStone, 0, 1.0F);
            GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
            GL11.glDisable(GL11.GL_BLEND);
            GL11.glEnable(GL11.GL_LIGHTING);
            GL11.glEnable(GL11.GL_TEXTURE_2D);
        }

        GL11.glPopMatrix();
    }

    /**
     * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then
     * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic
     * (Render<T extends Entity) and this method has signature public void doRender(T entity, double d, double d1,
     * double d2, float f, float f1). But JAD is pre 1.5 so doesn't do that.
     */
    public void doRender(Entity par1Entity, double par2, double par4, double par6, float par8, float par9)
    {
        this.renderPrimedTNT((EntityStoneTNT)par1Entity, par2, par4, par6, par8, par9);
    }
}

 

 

Link to comment
Share on other sites

All I can say is to read the TNT code. Though reading minecraft code doesn't always help :P

I am Mew. The Legendary Psychic. I behave oddly and am always playing practical jokes.

 

I have also found that I really love making extremely long and extremely but sometimes not so descriptive variables. Sort of like what I just did there xD

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Sometimes, tweaking load order or specific configs can also help ease those conflicts.
    • I have recently tired downloading forge so i can run mods for hypixel skyblock but whenever i download forge and do it the same way as videos and tutorials forge keeps downloading as log file and doesnt download the .jar file any help will be aprecciated.
    • So I have created a Create Mod Server with my friends and i to play everyone can join play except one of my friends because when he tries to launch the game from the CurseForge Launcher it will load but never open or give him a crash report, we have tried everything from deleting CF and reinstalling it to Updating his drivers, IDK what to do if anyone can help I would be very Grateful
    • I get this error when trying to start the server for forged mods. In the code below it mentions distant horizons but no matter what mod I put in (deleting distant horizons) it still gives an error and doesn't launch Crash Report UUID: 3e91d5c7-18a7-43c2-a935-a8d28de560d1 FML: 47.3 Forge: net.minecraftforge:47.3.10[23:33:47] [main/ERROR] [minecraft/Main]: Failed to start the minecraft server net.minecraftforge.fml.LoadingFailedException: Loading errors encountered: [    Distant Horizons (distanthorizons) encountered an error during the sided_setup event phase§7java.lang.ExceptionInInitializerError: null]     at net.minecraftforge.fml.ModLoader.waitForTransition(ModLoader.java:246) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at net.minecraftforge.fml.ModLoader.lambda$dispatchAndHandleError$20(ModLoader.java:210) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at java.util.Optional.ifPresent(Optional.java:178) ~[?:?] {}     at net.minecraftforge.fml.ModLoader.dispatchAndHandleError(ModLoader.java:210) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at net.minecraftforge.fml.ModLoader.lambda$loadMods$15(ModLoader.java:190) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?] {}     at net.minecraftforge.fml.ModLoader.loadMods(ModLoader.java:190) ~[fmlcore-1.20.1-47.3.10.jar%23104!/:?] {}     at net.minecraft.server.loading.ServerModLoader.load(ServerModLoader.java:31) ~[forge-1.20.1-47.3.10-universal.jar%23108!/:?] {re:classloading}     at net.minecraft.server.Main.main(Main.java:125) ~[server-1.20.1-20230612.114412-srg.jar%23103!/:?] {re:classloading}     at jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {}     at java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.3.10.jar%2369!/:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.lambda$run$1(CommonLaunchHandler.java:103) ~[fmlloader-1.20.1-47.3.10.jar%2369!/:?] {}     at net.minecraftforge.fml.loading.targets.CommonServerLaunchHandler.lambda$makeService$0(CommonServerLaunchHandler.java:27) ~[fmlloader-1.20.1-47.3.10.jar%2369!/:?] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar%2355!/:?] {}     at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?] {}  
    • This error keeps coming up after player tries to join server, doesn't happen to anyone else.  Error: Internal Exception: io.netty.handler.codec.DecoderException: java.lang.ArrayIndexOutOfBoundsException: Index 17196645 out of bounds for length 13 Heres the latest.log https://pastebin.com/uaw3KC0K  Heres the debug.log https://drive.google.com/file/d/1QzqtCMUf7ps1Iz85AOsMM7W8QhbHjBeU/view?usp=sharing
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.