package pl.asie.ubchisel; import com.cricketcraft.chisel.block.BlockCarvable; import com.cricketcraft.chisel.carving.Carving; import com.cricketcraft.chisel.init.ChiselTabs; import cpw.mods.fml.common.registry.GameRegistry; import exterminatorJeff.undergroundBiomes.api.UBIDs; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.item.ItemStack; public class ModuleUBC extends Module { public static final String[] UBC_STONES_FULL = { "andesite", "basalt", "blackGranite", "blueschist", "dacite", "eclogite", "gabbro", "gneiss", "greenschist", "komatiite", "marble", "migmatite", "quartzite", "redGranite", "rhyolite", "soapstone" }; public static final String[] UBC_STONES_FULL_BLOCKNAMES = { "i3", "i5", "i1", "m4", "i7", "m1", "i4", "m0", "m5", "i6", "m2", "m7", "m3", "i0", "i2", "m6" }; public static final String[] UBC_STONES_BASIC = { "chalk", "chert", "dolomite", "greywacke", "lignite", "limestone", "shale", "siltstone" }; public static final String[] UBC_STONES_BASIC_BLOCKNAMES = { "s1", "s7", "s5", "s6", "s4", "s0", "s2", "s3" }; private String getPrefix(String tb) { char bp = tb.charAt(0); return bp == 'i' ? "igneous" : (bp == 's' ? "sedimentary" : "metamorphic"); } private String getName(String tb) { return tb.equals("lignite") ? "ligniteBlock" : tb; } private void addStoneBrick(String s, String tb) { BlockCarvable stonebricksmooth = (BlockCarvable)(new BlockUBCarvable(Material.rock)).setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(1.5F).setResistance(10.0F).setStepSound(Block.soundTypeStone); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.4.desc", 4, "ubc/" + s + "/stonebrick/smallbricks", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.5.desc", 5, "ubc/" + s + "/stonebrick/largebricks", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.6.desc", 6, "ubc/" + s + "/stonebrick/smallchaotic", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.7.desc", 7, "ubc/" + s + "/stonebrick/chaoticbricks", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.8.desc", 8, "ubc/" + s + "/stonebrick/chaotic", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.9.desc", 9, "ubc/" + s + "/stonebrick/fancy", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.10.desc", 10, "ubc/" + s + "/stonebrick/ornate", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.11.desc", 11, "ubc/" + s + "/stonebrick/largeornate", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.12.desc", 12, "ubc/" + s + "/stonebrick/panel-hard", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.13.desc", 13, "ubc/" + s + "/stonebrick/sunken", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.14.desc", 14, "ubc/" + s + "/stonebrick/ornatepanel", "ubchisel"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.15.desc", 15, "ubc/" + s + "/stonebrick/poison", "ubchisel"); AwesomeRegistry.register(stonebricksmooth, s + "_stonebrick"); SplendidRegistry.put(stonebricksmooth, "tile." + getPrefix(tb) + "StoneBrick." + getName(s) + ".name"); } private void addStoneBrickInit(String s, String tb) { char bp = tb.charAt(0); Block other = bp == 'i' ? UBIDs.igneousStoneBrickName.block() : UBIDs.metamorphicStoneBrickName.block(); int meta = Integer.parseInt(tb.substring(1)); Carving.chisel.addVariation(s + "_stonebrick", other, meta, 0); } private void addStone(String s, String tb) { BlockCarvable marble = (BlockCarvable)(new BlockUBCarvable(Material.rock)).setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(2.0F).setResistance(10.0F).setStepSound(Block.soundTypeStone); marble.carverHelper.addVariation("tile.marble.1.desc", 1, "ubc/" + s + "/stone/a1-stoneornamental-marblebrick", "ubchisel"); marble.carverHelper.addVariation("tile.marble.2.desc", 2, "ubc/" + s + "/stone/a1-stoneornamental-marbleclassicpanel", "ubchisel"); marble.carverHelper.addVariation("tile.marble.4.desc", 4, "ubc/" + s + "/stone/panel", "ubchisel"); marble.carverHelper.addVariation("tile.marble.5.desc", 5, "ubc/" + s + "/stone/block", "ubchisel"); marble.carverHelper.addVariation("tile.marble.8.desc", 8, "ubc/" + s + "/stone/a1-stoneornamental-marblecarved", "ubchisel"); marble.carverHelper.addVariation("tile.marble.9.desc", 9, "ubc/" + s + "/stone/a1-stoneornamental-marblecarvedradial", "ubchisel"); marble.carverHelper.addVariation("tile.marble.10.desc", 10, "ubc/" + s + "/stone/terrain-pistonback-marbledent", "ubchisel"); marble.carverHelper.addVariation("tile.marble.11.desc", 11, "ubc/" + s + "/stone/terrain-pistonback-marbledent-small", "ubchisel"); marble.carverHelper.addVariation("tile.marble.12.desc", 12, "ubc/" + s + "/stone/marble-bricks", "ubchisel"); marble.carverHelper.addVariation("tile.marble.13.desc", 13, "ubc/" + s + "/stone/marble-arranged-bricks", "ubchisel"); marble.carverHelper.addVariation("tile.marble.14.desc", 14, "ubc/" + s + "/stone/marble-fancy-bricks", "ubchisel"); marble.carverHelper.addVariation("tile.marble.15.desc", 15, "ubc/" + s + "/stone/marble-blocks", "ubchisel"); AwesomeRegistry.register(marble, s + "_stone"); SplendidRegistry.put(marble, "tile." + getPrefix(tb) + "Stone." + getName(s) + ".name"); } private void addStoneInit(String s, String tb) { char bp = tb.charAt(0); Block other = bp == 'i' ? UBIDs.igneousStoneName.block() : (bp == 's' ? UBIDs.sedimentaryStoneName.block() : UBIDs.metamorphicStoneName.block()); int meta = Integer.parseInt(tb.substring(1)); Carving.chisel.addVariation(s + "_stone", other, meta, 0); } private void addPillarInit(String s, String tb) { char bp = tb.charAt(0); Block other = bp == 'i' ? UBIDs.igneousStoneName.block() : (bp == 's' ? UBIDs.sedimentaryStoneName.block() : UBIDs.metamorphicStoneName.block()); int meta = Integer.parseInt(tb.substring(1)); GameRegistry.addShapedRecipe(new ItemStack(AwesomeRegistry.get(s + "_pillar"), 6, 0), "aa", "aa", "aa", 'a', new ItemStack(other, 1, meta)); } private void addPillar(String s, String tb) { BlockCarvable marble_pillar = (BlockCarvable)(new BlockUBCarvablePillar(Material.rock)).setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(2.0F).setResistance(10.0F).setStepSound(Block.soundTypeStone); marble_pillar.carverHelper.addVariation("tile.marblePillar.0.desc", 0, "ubc/" + s + "/pillar/pillar", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.1.desc", 1, "ubc/" + s + "/pillar/default", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.2.desc", 2, "ubc/" + s + "/pillar/simple", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.3.desc", 3, "ubc/" + s + "/pillar/convex", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.4.desc", 4, "ubc/" + s + "/pillar/rough", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.5.desc", 5, "ubc/" + s + "/pillar/greekdecor", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.6.desc", 6, "ubc/" + s + "/pillar/greekgreek", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.7.desc", 7, "ubc/" + s + "/pillar/greekplain", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.8.desc", 8, "ubc/" + s + "/pillar/plaindecor", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.9.desc", 9, "ubc/" + s + "/pillar/plaingreek", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.10.desc", 10, "ubc/" + s + "/pillar/plainplain", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.11.desc", 11, "ubc/" + s + "/pillar/widedecor", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.12.desc", 12, "ubc/" + s + "/pillar/widegreek", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.13.desc", 13, "ubc/" + s + "/pillar/wideplain", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.14.desc", 14, "ubc/" + s + "/pillar/carved", "ubchisel"); marble_pillar.carverHelper.addVariation("tile.marblePillar.15.desc", 15, "ubc/" + s + "/pillar/ornamental", "ubchisel"); AwesomeRegistry.register(marble_pillar, s + "_pillar"); SplendidRegistry.put(marble_pillar, "tile." + getPrefix(tb) + "Stone." + getName(s) + ".name"); } private void addCobblestone(String s, String tb) { BlockCarvable cobblestone = (BlockCarvable) (new BlockUBCarvable(Material.rock)).setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(2.0F).setResistance(10.0F).setStepSound(Block.soundTypeStone); cobblestone.carverHelper.addVariation("tile.cobblestone.0.desc", 1, "ubc/" + s + "/cobblestone/terrain-cobb-brickaligned", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.1.desc", 2, "ubc/" + s + "/cobblestone/terrain-cob-detailedbrick", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.2.desc", 3, "ubc/" + s + "/cobblestone/terrain-cob-smallbrick", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.3.desc", 4, "ubc/" + s + "/cobblestone/terrain-cobblargetiledark", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.4.desc", 5, "ubc/" + s + "/cobblestone/terrain-cobbsmalltile", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.5.desc", 6, "ubc/" + s + "/cobblestone/terrain-cob-french", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.6.desc", 7, "ubc/" + s + "/cobblestone/terrain-cob-french2", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.8.desc", 9, "ubc/" + s + "/cobblestone/terrain-mossysmalltiledark", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.9.desc", 10, "ubc/" + s + "/cobblestone/terrain-pistonback-dungeontile", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.11.desc", 12, "ubc/" + s + "/cobblestone/terrain-pistonback-darkdent", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.12.desc", 13, "ubc/" + s + "/cobblestone/terrain-pistonback-darkemboss", "ubchisel"); cobblestone.carverHelper.addVariation("tile.cobblestone.14.desc", 15, "ubc/" + s + "/cobblestone/terrain-pistonback-darkpanel", "ubchisel"); AwesomeRegistry.register(cobblestone, s + "_cobblestone"); SplendidRegistry.put(cobblestone, "tile." + getPrefix(tb) + "Cobblestone." + getName(s) + ".name"); } private void addCobblestoneInit(String s, String tb) { char bp = tb.charAt(0); Block other = bp == 'i' ? UBIDs.igneousCobblestoneName.block() : UBIDs.metamorphicCobblestoneName.block(); int meta = Integer.parseInt(tb.substring(1)); Carving.chisel.addVariation(s + "_cobblestone", other, meta, 0); } @Override public String modid() { return "UndergroundBiomes"; } @Override public void preInit() { for (int i = 0; i < UBC_STONES_FULL.length; i++) { String s = UBC_STONES_FULL[i]; String tb = UBC_STONES_FULL_BLOCKNAMES[i]; addStoneBrick(s, tb); addCobblestone(s, tb); addStone(s, tb); addPillar(s, tb); } for (int i = 0; i < UBC_STONES_BASIC.length; i++) { String s = UBC_STONES_BASIC[i]; String tb = UBC_STONES_BASIC_BLOCKNAMES[i]; addStone(s, tb); addPillar(s, tb); } } @Override public void init() { for (int i = 0; i < UBC_STONES_FULL.length; i++) { String s = UBC_STONES_FULL[i]; String tb = UBC_STONES_FULL_BLOCKNAMES[i]; addStoneBrickInit(s, tb); addCobblestoneInit(s, tb); addStoneInit(s, tb); addPillarInit(s, tb); } for (int i = 0; i < UBC_STONES_BASIC.length; i++) { String s = UBC_STONES_BASIC[i]; String tb = UBC_STONES_BASIC_BLOCKNAMES[i]; addStoneInit(s, tb); addPillarInit(s, tb); } } }