
Revolution
Members-
Posts
1 -
Joined
-
Last visited
Converted
-
Gender
Undisclosed
-
Personal Text
I am new!
Revolution's Achievements

Tree Puncher (2/8)
0
Reputation
-
I've been looking for setting up blocks with textures (tried a few "fixes" here and there but none of them worked so i just deleted them.) Anyway the texture I'm looking for only loads when I place the block. (Also note there's two types of the block. The item carbonTorch, and the block carbonTorch. The item is throwable, and if it hits a block spawns the block. That is the only way the block can be placed for now, until I add in the item right clicking too anyway). (Also yes some of my code may be inefficient i'll clean that up later I just want this texture to work ) Code below: Main Class: import java.util.Map; import com.rev.entity.CarbonTorchEntity; import com.rev.item.block.CarbonTubeBlockTorch; import com.rev.item.block.CarbonTubeItemTorch; import com.rev.items.tools.*; import com.rev.render.RenderBase; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; import net.minecraft.block.Block; import net.minecraft.block.material.MapColor; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.Item.ToolMaterial; import net.minecraftforge.common.util.EnumHelper; @Mod(modid = "carbontubes", version = "1.0") public class CarbonTubes { @SidedProxy(clientSide = "com.rev.render.TorchClient", serverSide = "com.rev.render.RenderBase") public static RenderBase proxy; static ToolMaterial carbonPick = EnumHelper.addToolMaterial("CARBON", 69, 2000, 12F, 2000, 0); static ToolMaterial carbonShov = EnumHelper.addToolMaterial("CARBON", 69, 2000, 12F, 1500, 0); static ToolMaterial carbonA = EnumHelper.addToolMaterial("CARBON", 69, 2000, 12F, 3000, 0); static ToolMaterial carbonH = EnumHelper.addToolMaterial("CARBON", 69, 2000, 12F, 1000, 0); static ToolMaterial carbonSw = EnumHelper.addToolMaterial("CARBON", 69, 2000, 12F, 5000, 0); public static CreativeTabs carbonTools; public static final Item carbonShovel = (new CarbonTubeItemSpade(carbonShov)).setMaxStackSize(1).setUnlocalizedName("carbonSpade").setTextureName("carbontubes:carbonShovel"); public static final Item carbonPickaxe = (new CarbonTubeItemPick(carbonPick)).setMaxStackSize(1).setUnlocalizedName("carbonPick").setTextureName("carbontubes:carbonPick"); public static final Item carbonAxe = (new CarbonTubeItemAxe(carbonA)).setMaxStackSize(1).setUnlocalizedName("carbonAxe").setTextureName("carbontubes:carbonAxe"); public static final Item carbonHoe = (new CarbonTubeItemHoe(carbonH)).setMaxStackSize(1).setUnlocalizedName("carbonHoe").setTextureName("carbontubes:carbonHoe"); public static final Item carbonSword = (new CarbonTubeItemSword(carbonSw)).setMaxStackSize(1).setUnlocalizedName("carbonSword").setTextureName("carbontubes:carbonSword"); public static final Item carbonITorch = (new CarbonTubeItemTorch()).setMaxStackSize(16).setUnlocalizedName("carbonTorch").setTextureName("carbontubes:carbonTorch"); public static final Block carbonTorch = (new CarbonTubeBlockTorch(Material.redstoneLight)).setBlockName("CarbonTorch").setLightLevel(100.0F).setBlockTextureName("carbontubes:carbonTorch");; @EventHandler public void preInit(FMLPreInitializationEvent event) { } @EventHandler public void Init(FMLInitializationEvent event){ registerGame(); registerEntity(); carbonTools = new CreativeTabs("Carbon Tools") { public Item getTabIconItem() { return carbonShovel; } }; carbonShovel.setCreativeTab(carbonTools); carbonPickaxe.setCreativeTab(carbonTools); carbonAxe.setCreativeTab(carbonTools); carbonHoe.setCreativeTab(carbonTools); carbonSword.setCreativeTab(carbonTools); carbonITorch.setCreativeTab(carbonTools); registerLanguage(); proxy.registerRenderThings(); proxy.registerSounds(); } public void registerLanguage() { LanguageRegistry.addName(carbonShovel, "Carbon Shovel"); LanguageRegistry.addName(carbonPickaxe, "Carbon Pickaxe"); LanguageRegistry.addName(carbonAxe, "Carbon Axe"); LanguageRegistry.addName(carbonHoe, "Carbon Hoe"); LanguageRegistry.addName(carbonSword, "Carbon Sword"); LanguageRegistry.addName(carbonITorch, "Carbon Torch"); LanguageRegistry.addName(carbonTorch, "Carbon Torch"); LanguageRegistry.instance().addStringLocalization("itemGroup.Carbon Tools", "en_US", "Carbon Tools"); } public void registerGame() { GameRegistry.registerItem(carbonShovel, "Carbon Shovel"); GameRegistry.registerItem(carbonPickaxe, "Carbon Pickaxe"); GameRegistry.registerItem(carbonAxe, "Carbon Axe"); GameRegistry.registerItem(carbonHoe, "Carbon Hoe"); GameRegistry.registerItem(carbonSword, "Carbon Sword"); GameRegistry.registerItem(carbonITorch, "Carbon Torch"); GameRegistry.registerBlock(carbonTorch, "Carbon Torch"); } public void registerEntity() { EntityRegistry.registerModEntity(CarbonTorchEntity.class, "Carbon Torch", 4, this, 80, 3, true); } } Block Class: import net.minecraft.block.Block; import net.minecraft.block.BlockTorch; import java.util.Random; import javax.swing.Icon; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Blocks; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.IIcon; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; import net.minecraft.world.World; public class CarbonTubeBlockTorch extends Block { @SideOnly(Side.CLIENT) protected IIcon blockIcon; public CarbonTubeBlockTorch(Material p_i45394_1_) { super(p_i45394_1_); } public AxisAlignedBB getCollisionBoundingBoxFromPool(World p_149668_1_, int p_149668_2_, int p_149668_3_, int p_149668_4_) { return null; } public boolean isOpaqueCube() { return false; } public boolean renderAsNormalBlock() { return false; } /** * The type of render function that is called for this block */ public int getRenderType() { return 1; } private boolean func_150107_m(World p_150107_1_, int p_150107_2_, int p_150107_3_, int p_150107_4_) { if (World.doesBlockHaveSolidTopSurface(p_150107_1_, p_150107_2_, p_150107_3_, p_150107_4_)) { return true; } else { Block var5 = p_150107_1_.getBlock(p_150107_2_, p_150107_3_, p_150107_4_); return var5 == Blocks.fence || var5 == Blocks.nether_brick_fence || var5 == Blocks.glass || var5 == Blocks.cobblestone_wall; } } public boolean canPlaceBlockAt(World p_149742_1_, int p_149742_2_, int p_149742_3_, int p_149742_4_) { return p_149742_1_.isBlockNormalCubeDefault(p_149742_2_ - 1, p_149742_3_, p_149742_4_, true) ? true : (p_149742_1_.isBlockNormalCubeDefault(p_149742_2_ + 1, p_149742_3_, p_149742_4_, true) ? true : (p_149742_1_.isBlockNormalCubeDefault(p_149742_2_, p_149742_3_, p_149742_4_ - 1, true) ? true : (p_149742_1_.isBlockNormalCubeDefault(p_149742_2_, p_149742_3_, p_149742_4_ + 1, true) ? true : this.func_150107_m(p_149742_1_, p_149742_2_, p_149742_3_ - 1, p_149742_4_)))); } public int onBlockPlaced(World p_149660_1_, int p_149660_2_, int p_149660_3_, int p_149660_4_, int p_149660_5_, float p_149660_6_, float p_149660_7_, float p_149660_8_, int p_149660_9_) { int var10 = p_149660_9_; if (p_149660_5_ == 1 && this.func_150107_m(p_149660_1_, p_149660_2_, p_149660_3_ - 1, p_149660_4_)) { var10 = 5; } if (p_149660_5_ == 2 && p_149660_1_.isBlockNormalCubeDefault(p_149660_2_, p_149660_3_, p_149660_4_ + 1, true)) { var10 = 4; } if (p_149660_5_ == 3 && p_149660_1_.isBlockNormalCubeDefault(p_149660_2_, p_149660_3_, p_149660_4_ - 1, true)) { var10 = 3; } if (p_149660_5_ == 4 && p_149660_1_.isBlockNormalCubeDefault(p_149660_2_ + 1, p_149660_3_, p_149660_4_, true)) { var10 = 2; } if (p_149660_5_ == 5 && p_149660_1_.isBlockNormalCubeDefault(p_149660_2_ - 1, p_149660_3_, p_149660_4_, true)) { var10 = 1; } return var10; } /** * Ticks the block if it's been scheduled */ public void updateTick(World p_149674_1_, int p_149674_2_, int p_149674_3_, int p_149674_4_, Random p_149674_5_) { super.updateTick(p_149674_1_, p_149674_2_, p_149674_3_, p_149674_4_, p_149674_5_); if (p_149674_1_.getBlockMetadata(p_149674_2_, p_149674_3_, p_149674_4_) == 0) { this.onBlockAdded(p_149674_1_, p_149674_2_, p_149674_3_, p_149674_4_); } } public void onBlockAdded(World p_149726_1_, int p_149726_2_, int p_149726_3_, int p_149726_4_) { if (p_149726_1_.getBlockMetadata(p_149726_2_, p_149726_3_, p_149726_4_) == 0) { if (p_149726_1_.isBlockNormalCubeDefault(p_149726_2_ - 1, p_149726_3_, p_149726_4_, true)) { p_149726_1_.setBlockMetadataWithNotify(p_149726_2_, p_149726_3_, p_149726_4_, 1, 2); } else if (p_149726_1_.isBlockNormalCubeDefault(p_149726_2_ + 1, p_149726_3_, p_149726_4_, true)) { p_149726_1_.setBlockMetadataWithNotify(p_149726_2_, p_149726_3_, p_149726_4_, 2, 2); } else if (p_149726_1_.isBlockNormalCubeDefault(p_149726_2_, p_149726_3_, p_149726_4_ - 1, true)) { p_149726_1_.setBlockMetadataWithNotify(p_149726_2_, p_149726_3_, p_149726_4_, 3, 2); } else if (p_149726_1_.isBlockNormalCubeDefault(p_149726_2_, p_149726_3_, p_149726_4_ + 1, true)) { p_149726_1_.setBlockMetadataWithNotify(p_149726_2_, p_149726_3_, p_149726_4_, 4, 2); } else if (this.func_150107_m(p_149726_1_, p_149726_2_, p_149726_3_ - 1, p_149726_4_)) { p_149726_1_.setBlockMetadataWithNotify(p_149726_2_, p_149726_3_, p_149726_4_, 5, 2); } } this.func_150109_e(p_149726_1_, p_149726_2_, p_149726_3_, p_149726_4_); } public void onNeighborBlockChange(World p_149695_1_, int p_149695_2_, int p_149695_3_, int p_149695_4_, Block p_149695_5_) { this.func_150108_b(p_149695_1_, p_149695_2_, p_149695_3_, p_149695_4_, p_149695_5_); } protected boolean func_150108_b(World p_150108_1_, int p_150108_2_, int p_150108_3_, int p_150108_4_, Block p_150108_5_) { if (this.func_150109_e(p_150108_1_, p_150108_2_, p_150108_3_, p_150108_4_)) { int var6 = p_150108_1_.getBlockMetadata(p_150108_2_, p_150108_3_, p_150108_4_); boolean var7 = false; if (!p_150108_1_.isBlockNormalCubeDefault(p_150108_2_ - 1, p_150108_3_, p_150108_4_, true) && var6 == 1) { var7 = true; } if (!p_150108_1_.isBlockNormalCubeDefault(p_150108_2_ + 1, p_150108_3_, p_150108_4_, true) && var6 == 2) { var7 = true; } if (!p_150108_1_.isBlockNormalCubeDefault(p_150108_2_, p_150108_3_, p_150108_4_ - 1, true) && var6 == 3) { var7 = true; } if (!p_150108_1_.isBlockNormalCubeDefault(p_150108_2_, p_150108_3_, p_150108_4_ + 1, true) && var6 == 4) { var7 = true; } if (!this.func_150107_m(p_150108_1_, p_150108_2_, p_150108_3_ - 1, p_150108_4_) && var6 == 5) { var7 = true; } if (var7) { this.dropBlockAsItem(p_150108_1_, p_150108_2_, p_150108_3_, p_150108_4_, p_150108_1_.getBlockMetadata(p_150108_2_, p_150108_3_, p_150108_4_), 0); p_150108_1_.setBlockToAir(p_150108_2_, p_150108_3_, p_150108_4_); return true; } else { return false; } } else { return true; } } protected boolean func_150109_e(World p_150109_1_, int p_150109_2_, int p_150109_3_, int p_150109_4_) { if (!this.canPlaceBlockAt(p_150109_1_, p_150109_2_, p_150109_3_, p_150109_4_)) { if (p_150109_1_.getBlock(p_150109_2_, p_150109_3_, p_150109_4_) == this) { this.dropBlockAsItem(p_150109_1_, p_150109_2_, p_150109_3_, p_150109_4_, p_150109_1_.getBlockMetadata(p_150109_2_, p_150109_3_, p_150109_4_), 0); p_150109_1_.setBlockToAir(p_150109_2_, p_150109_3_, p_150109_4_); } return false; } else { return true; } } public MovingObjectPosition collisionRayTrace(World p_149731_1_, int p_149731_2_, int p_149731_3_, int p_149731_4_, Vec3 p_149731_5_, Vec3 p_149731_6_) { int var7 = p_149731_1_.getBlockMetadata(p_149731_2_, p_149731_3_, p_149731_4_) & 7; float var8 = 0.15F; if (var7 == 1) { this.setBlockBounds(0.0F, 0.2F, 0.5F - var8, var8 * 2.0F, 0.8F, 0.5F + var8); } else if (var7 == 2) { this.setBlockBounds(1.0F - var8 * 2.0F, 0.2F, 0.5F - var8, 1.0F, 0.8F, 0.5F + var8); } else if (var7 == 3) { this.setBlockBounds(0.5F - var8, 0.2F, 0.0F, 0.5F + var8, 0.8F, var8 * 2.0F); } else if (var7 == 4) { this.setBlockBounds(0.5F - var8, 0.2F, 1.0F - var8 * 2.0F, 0.5F + var8, 0.8F, 1.0F); } else { var8 = 0.1F; this.setBlockBounds(0.5F - var8, 0.0F, 0.5F - var8, 0.5F + var8, 0.6F, 0.5F + var8); } return super.collisionRayTrace(p_149731_1_, p_149731_2_, p_149731_3_, p_149731_4_, p_149731_5_, p_149731_6_); } /** * A randomly called display update to be able to add particles or other items for display */ public void randomDisplayTick(World p_149734_1_, int p_149734_2_, int p_149734_3_, int p_149734_4_, Random p_149734_5_) { int var6 = p_149734_1_.getBlockMetadata(p_149734_2_, p_149734_3_, p_149734_4_); double var7 = (double)((float)p_149734_2_ + 0.5F); double var9 = (double)((float)p_149734_3_ + 0.7F); double var11 = (double)((float)p_149734_4_ + 0.5F); double var13 = 0.2199999988079071D; double var15 = 0.27000001072883606D; if (var6 == 1) { p_149734_1_.spawnParticle("smoke", var7 - var15, var9 + var13, var11, 0.0D, 0.0D, 0.0D); p_149734_1_.spawnParticle("flame", var7 - var15, var9 + var13, var11, 0.0D, 0.0D, 0.0D); } else if (var6 == 2) { p_149734_1_.spawnParticle("smoke", var7 + var15, var9 + var13, var11, 0.0D, 0.0D, 0.0D); p_149734_1_.spawnParticle("flame", var7 + var15, var9 + var13, var11, 0.0D, 0.0D, 0.0D); } else if (var6 == 3) { p_149734_1_.spawnParticle("smoke", var7, var9 + var13, var11 - var15, 0.0D, 0.0D, 0.0D); p_149734_1_.spawnParticle("flame", var7, var9 + var13, var11 - var15, 0.0D, 0.0D, 0.0D); } else if (var6 == 4) { p_149734_1_.spawnParticle("smoke", var7, var9 + var13, var11 + var15, 0.0D, 0.0D, 0.0D); p_149734_1_.spawnParticle("flame", var7, var9 + var13, var11 + var15, 0.0D, 0.0D, 0.0D); } else { p_149734_1_.spawnParticle("smoke", var7, var9, var11, 0.0D, 0.0D, 0.0D); p_149734_1_.spawnParticle("flame", var7, var9, var11, 0.0D, 0.0D, 0.0D); } } } The texture is in my : carbontubes/textures/blocks/carbonTorch.png