diff --git a/build.gradle b/build.gradle index 55e935c6..7768e20a 100644 --- a/build.gradle +++ b/build.gradle @@ -32,8 +32,8 @@ ext.buildnumber = 0 project.buildnumber = System.getenv('BUILD_NUMBER') != null ? System.getenv('BUILD_NUMBER') : project.ext.gitHash version = "${mod_version}.${buildnumber}" -group = "com.cricketcraft.chisel" // http://maven.apache.org/guides/mini/guide-naming-conventions.html -archivesBaseName = dev ? "Chisel2_DEV" : "Chisel2" +group = "team.chisel" // http://maven.apache.org/guides/mini/guide-naming-conventions.html +archivesBaseName = dev ? "Chisel_DEV" : "Chisel" minecraft { version = "${minecraft_version}-${forge_version}" @@ -185,7 +185,7 @@ curse { projectId = project.projectId changelog = System.getenv("CHANGELOG").equals("none") ? getChangelogText() : System.getenv("CHANGELOG") releaseType = 'release' - displayName = "Chisel 2 - ${mod_version}" + displayName = "Chisel - ${mod_version}" additionalArtifact deobfJar, sourcesJar, apiJar } diff --git a/changelog b/changelog index a040e753..bbf0929e 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,29 @@ +CT2.5.0: +New +- Lots of new endstone variants +- Purpur blocks +- New technical blocks (piping, battery, and more) + +Changes +- Under new management! Name of the project has been changed to "Chisel" +- Now includes CTMLib 1.2.0-10 +- Greatly improve the look of energized voidstone +- Retexture 2 of the voidstone variants (bevel and metalborder) +- Removed special player rendering +- Fixed EMC registrations so that they are actually dynamic +- Lavastone and Waterstone now use the still texture, not flowing + +Fixes +- Fix "The Turkey Bug" +- Fix crash when an unchiselable item made its way into the autochisel +- Fix VariationInfos always returning CUSTOM for their texture type +- Fix antiblocks not working when smooth lighting is off +- Fix Botania compat +- Fix pick block on bookshelves + +API +- Add IConnectable for allowing other blocks to determine if chisel blocks will connect to them + 2.4.1: New - New UberWavy futura block diff --git a/eclipseFormat.xml b/eclipseFormat.xml index 9c789066..cedf6acd 100644 --- a/eclipseFormat.xml +++ b/eclipseFormat.xml @@ -26,12 +26,12 @@ - + - + diff --git a/gradle.properties b/gradle.properties index ddcaa820..48b5e47c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,12 +1,12 @@ -mod_version=2.4.1 +mod_version=CT2.5.0 minecraft_version=1.7.10 forge_version=10.13.4.1481-1.7.10 -ctmlib_version=1.0.1.5 -ccl_version=1.1.3.136 -ccc_version=1.0.6.43 -nei_version=1.0.4.107 +ctmlib_version=1.2.0-10 +ccl_version=1.1.3.140 +ccc_version=1.0.7.46 +nei_version=1.0.5.111 waila_version=1.5.10 fmp_version=1.2.0.344 -projectId=225236 +projectId=235279 diff --git a/settings.gradle b/settings.gradle index 1b169179..c76d7f7d 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1 +1 @@ -rootProject.name = 'Chisel2' \ No newline at end of file +rootProject.name = 'Chisel' \ No newline at end of file diff --git a/src/main/java/com/cricketcraft/chisel/api/ChiselAPIProps.java b/src/main/java/com/cricketcraft/chisel/api/ChiselAPIProps.java index dc50c1c5..04a4683f 100644 --- a/src/main/java/com/cricketcraft/chisel/api/ChiselAPIProps.java +++ b/src/main/java/com/cricketcraft/chisel/api/ChiselAPIProps.java @@ -3,5 +3,5 @@ package com.cricketcraft.chisel.api; public class ChiselAPIProps { public static final String VERSION = "0.1.0"; - public static String MOD_ID = null; // Set by Chisel + public static String MOD_ID = null; // Set by Chisel } diff --git a/src/main/java/com/cricketcraft/chisel/api/IAdvancedChisel.java b/src/main/java/com/cricketcraft/chisel/api/IAdvancedChisel.java index 6a01ed97..c6832c0a 100644 --- a/src/main/java/com/cricketcraft/chisel/api/IAdvancedChisel.java +++ b/src/main/java/com/cricketcraft/chisel/api/IAdvancedChisel.java @@ -1,18 +1,16 @@ package com.cricketcraft.chisel.api; -import com.cricketcraft.chisel.api.carving.IChiselMode; - import net.minecraft.item.ItemStack; +import com.cricketcraft.chisel.api.carving.IChiselMode; + /** - * Implement this on chisel items which require more control over chisel modes - * (including adding new modes). + * Implement this on chisel items which require more control over chisel modes (including adding new modes). */ public interface IAdvancedChisel { /** - * Gets the next mode the button in the GUI should switch to given the - * current mode. + * Gets the next mode the button in the GUI should switch to given the current mode. * * @param stack * The {@link ItemStack} representing the chisel diff --git a/src/main/java/com/cricketcraft/chisel/api/ICarvable.java b/src/main/java/com/cricketcraft/chisel/api/ICarvable.java index 463363b6..2d56407c 100644 --- a/src/main/java/com/cricketcraft/chisel/api/ICarvable.java +++ b/src/main/java/com/cricketcraft/chisel/api/ICarvable.java @@ -1,16 +1,16 @@ package com.cricketcraft.chisel.api; -import net.minecraft.item.ItemStack; import net.minecraft.world.IBlockAccess; import com.cricketcraft.chisel.api.carving.CarvableHelper; import com.cricketcraft.chisel.api.carving.IVariationInfo; +import com.cricketcraft.ctmlib.ICTMBlock; import com.cricketcraft.ctmlib.ISubmapManager; /** * To be implemented on blocks that can be chiseled and need advanced metadata to variation mapping. Currently not very usable without internal classes. */ -public interface ICarvable { +public interface ICarvable extends ICTMBlock { /** * Gets a {@link ISubmapManager} from this block, based on metadata. @@ -31,15 +31,14 @@ public interface ICarvable { * The metadata of the block * @return The {@link ISubmapManager} that represents this block in the world. */ - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata); + @Override + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata); /** * Gets the {@link ISubmapManager} for this block when it is in item form. * - * @param stack - * The {@link ItemStack} representing this block; * @return A {@link ISubmapManager} */ - public IVariationInfo getVariation(ItemStack stack); + @Override + public IVariationInfo getManager(int meta); } - \ No newline at end of file diff --git a/src/main/java/com/cricketcraft/chisel/api/IConnectable.java b/src/main/java/com/cricketcraft/chisel/api/IConnectable.java new file mode 100644 index 00000000..583ada35 --- /dev/null +++ b/src/main/java/com/cricketcraft/chisel/api/IConnectable.java @@ -0,0 +1,26 @@ +package com.cricketcraft.chisel.api; + +import net.minecraft.world.IBlockAccess; + +/** + * This extension of {@link IFacade} allows the block to say whether or not OTHER CTM blocks can connect to IT. + */ +public interface IConnectable { + + /** + * Determines whether other CTM blocks can connect to this one. + * + * @param world + * @param x + * The X position of the block that is connecting to this one. NOT the position of your block. + * @param y + * The Y position of the block that is connecting to this one. NOT the position of your block. + * @param z + * The Z position of the block that is connecting to this one. NOT the position of your block. + * @param side + * The side being drawn. + * @return True if a block can connect to this one from the given direction. False otherwise. + */ + boolean canConnectCTM(IBlockAccess world, int x, int y, int z, int side); + +} diff --git a/src/main/java/com/cricketcraft/chisel/api/IFacade.java b/src/main/java/com/cricketcraft/chisel/api/IFacade.java index 202a63a1..3a4af772 100644 --- a/src/main/java/com/cricketcraft/chisel/api/IFacade.java +++ b/src/main/java/com/cricketcraft/chisel/api/IFacade.java @@ -5,36 +5,45 @@ import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; /** - * To be implemented on blocks that "hide" another block inside, so connected textuers can still be - * accomplished. + * To be implemented on blocks that "hide" another block inside, so connected textuers can still be accomplished. */ -public interface IFacade -{ - /** - * Gets the block this facade is acting as. - * - * @param world {@link World} - * @param x X coord of your block - * @param y Y coord of your block - * @param z Z coord of your block - * @param side The side being rendered, NOT the side being connected from. - *

- * This value can be -1 if no side is specified. Please handle this appropriately. - * @return The block inside of your facade block. - */ - Block getFacade(IBlockAccess world, int x, int y, int z, int side); +public interface IFacade { - /** - * Gets the metadata of the block that this facade is acting as. - * - * @param world {@link World} - * @param x X coord of your block - * @param y Y coord of your block - * @param z Z coord of your block - * @param side The side being rendered, NOT the side being connected from. - *

- * This value can be -1 if no side is specified. Please handle this appropriately. - * @return The metadata of your facade block. - */ - int getFacadeMetadata(IBlockAccess world, int x, int y, int z, int side); + /** + * Gets the block this facade is acting as. + * + * @param world + * {@link World} + * @param x + * X coord of your block + * @param y + * Y coord of your block + * @param z + * Z coord of your block + * @param side + * The side being rendered, NOT the side being connected from. + *

+ * This value can be -1 if no side is specified. Please handle this appropriately. + * @return The block inside of your facade block. + */ + Block getFacade(IBlockAccess world, int x, int y, int z, int side); + + /** + * Gets the metadata of the block that this facade is acting as. + * + * @param world + * {@link World} + * @param x + * X coord of your block + * @param y + * Y coord of your block + * @param z + * Z coord of your block + * @param side + * The side being rendered, NOT the side being connected from. + *

+ * This value can be -1 if no side is specified. Please handle this appropriately. + * @return The metadata of your facade block. + */ + int getFacadeMetadata(IBlockAccess world, int x, int y, int z, int side); } \ No newline at end of file diff --git a/src/main/java/com/cricketcraft/chisel/api/Statistics.java b/src/main/java/com/cricketcraft/chisel/api/Statistics.java index b34c5cc5..64e8c6b7 100644 --- a/src/main/java/com/cricketcraft/chisel/api/Statistics.java +++ b/src/main/java/com/cricketcraft/chisel/api/Statistics.java @@ -6,10 +6,10 @@ import net.minecraft.util.ChatComponentTranslation; public class Statistics { - public static StatBase blocksChiseled = (new StatBasic("stat.blockChiseled", new ChatComponentTranslation("stat.blockChiseled", new Object[0]))); + public static StatBase blocksChiseled = (new StatBasic("stat.blockChiseled", new ChatComponentTranslation("stat.blockChiseled", new Object[0]))); - public static void init(){ - blocksChiseled.initIndependentStat(); - blocksChiseled.registerStat(); - } + public static void init() { + blocksChiseled.initIndependentStat(); + blocksChiseled.registerStat(); + } } diff --git a/src/main/java/com/cricketcraft/chisel/api/carving/CarvableHelper.java b/src/main/java/com/cricketcraft/chisel/api/carving/CarvableHelper.java index 85986dca..6decc1e2 100644 --- a/src/main/java/com/cricketcraft/chisel/api/carving/CarvableHelper.java +++ b/src/main/java/com/cricketcraft/chisel/api/carving/CarvableHelper.java @@ -26,42 +26,42 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class CarvableHelper { - + public static Class itemCarvableClass = null; private Block theBlock; - + public ArrayList infoList = new ArrayList(); IVariationInfo[] infoMap = new IVariationInfo[16]; public boolean forbidChiseling = false; - + public CarvableHelper(Block block) { this.theBlock = block; } - - public void addVariation(String description, int metadata, ISubmapManager manager) { - addVariation(description, metadata, null, manager); - } - public void addVariation(String description, int metadata, Block bb) { - addVariation(description, metadata, null, bb, 0, ChiselAPIProps.MOD_ID); - } + public void addVariation(String description, int metadata, ISubmapManager manager) { + addVariation(description, metadata, null, manager); + } - public void addVariation(String description, int metadata, Block bb, int blockMeta) { - addVariation(description, metadata, null, bb, blockMeta, ChiselAPIProps.MOD_ID); - } + public void addVariation(String description, int metadata, Block bb) { + addVariation(description, metadata, null, bb, 0, ChiselAPIProps.MOD_ID); + } - public void addVariation(String description, int metadata, Block bb, int blockMeta, Material material) { - addVariation(description, metadata, null, bb, blockMeta, ChiselAPIProps.MOD_ID); - } + public void addVariation(String description, int metadata, Block bb, int blockMeta) { + addVariation(description, metadata, null, bb, blockMeta, ChiselAPIProps.MOD_ID); + } - public void addVariation(String description, int metadata, String texture) { - addVariation(description, metadata, texture, (ISubmapManager) null); - } - - public void addVariation(String description, int metadata, String texture, ISubmapManager manager) { - addVariation(description, metadata, texture, null, 0, ChiselAPIProps.MOD_ID, manager, metadata); - } + public void addVariation(String description, int metadata, Block bb, int blockMeta, Material material) { + addVariation(description, metadata, null, bb, blockMeta, ChiselAPIProps.MOD_ID); + } + + public void addVariation(String description, int metadata, String texture) { + addVariation(description, metadata, texture, (ISubmapManager) null); + } + + public void addVariation(String description, int metadata, String texture, ISubmapManager manager) { + addVariation(description, metadata, texture, null, 0, ChiselAPIProps.MOD_ID, manager, metadata); + } public void addVariation(String description, int metadata, Block bb, String modid) { addVariation(description, metadata, null, bb, 0, modid); @@ -92,9 +92,8 @@ public class CarvableHelper { if (infoList.size() >= 16) return; - IVariationInfo info = FMLCommonHandler.instance().getSide().isClient() - ? getClientInfo(modid, texture, description, metadata, block, blockMeta, customManager, order) - : getServerInfo(modid, texture, description, metadata, block, blockMeta, customManager, order); + IVariationInfo info = FMLCommonHandler.instance().getSide().isClient() ? getClientInfo(modid, texture, description, metadata, block, blockMeta, customManager, order) : getServerInfo(modid, + texture, description, metadata, block, blockMeta, customManager, order); infoList.add(info); infoMap[metadata] = info; @@ -106,7 +105,7 @@ public class CarvableHelper { if (type == TextureType.CUSTOM && customManager == null && block == null) { throw new IllegalArgumentException(String.format("Could not find texture %s, and no custom texture manager was provided.", texture)); } - + ISubmapManager manager; if (customManager != null) { manager = customManager; @@ -115,9 +114,9 @@ public class CarvableHelper { } else { manager = type.createManagerFor(var, texture); } - return new VariationInfoBase(var, description, manager); + return new VariationInfoBase(var, description, manager, type); } - + private IVariationInfo getServerInfo(String modid, String texture, String description, int metadata, Block block, int blockMeta, ISubmapManager customManager, int order) { ICarvingVariation var = CarvingUtils.getDefaultVariationFor(theBlock, metadata, order); return new VariationInfoBase(var, description, null); @@ -141,8 +140,8 @@ public class CarvableHelper { IVariationInfo info = infoMap[metadata]; if (info == null) return getMissingIcon(); - - return info.getSubmapManager().getIcon(side, metadata); + + return info.getIcon(side, metadata); } public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { @@ -155,7 +154,7 @@ public class CarvableHelper { if (info == null) return getMissingIcon(); - return info.getSubmapManager().getIcon(world, x, y, z, side); + return info.getIcon(world, x, y, z, side); } public void registerAll(Block block, String name) { @@ -199,7 +198,7 @@ public class CarvableHelper { @SideOnly(Side.CLIENT) public void registerBlockIcons(String modName, Block block, IIconRegister register) { for (IVariationInfo info : infoList) { - info.getSubmapManager().registerIcons(modName, block, register); + info.registerIcons(modName, block, register); } } diff --git a/src/main/java/com/cricketcraft/chisel/api/carving/CarvingUtils.java b/src/main/java/com/cricketcraft/chisel/api/carving/CarvingUtils.java index 36fc02bf..ad6be70a 100644 --- a/src/main/java/com/cricketcraft/chisel/api/carving/CarvingUtils.java +++ b/src/main/java/com/cricketcraft/chisel/api/carving/CarvingUtils.java @@ -119,6 +119,7 @@ public class CarvingUtils { this.name = name; } + @Override public List getVariations() { return Lists.newArrayList(variations); } diff --git a/src/main/java/com/cricketcraft/chisel/api/carving/IVariationInfo.java b/src/main/java/com/cricketcraft/chisel/api/carving/IVariationInfo.java index 41d7bf61..ce213ef0 100644 --- a/src/main/java/com/cricketcraft/chisel/api/carving/IVariationInfo.java +++ b/src/main/java/com/cricketcraft/chisel/api/carving/IVariationInfo.java @@ -3,13 +3,11 @@ package com.cricketcraft.chisel.api.carving; import com.cricketcraft.chisel.api.rendering.TextureType; import com.cricketcraft.ctmlib.ISubmapManager; -public interface IVariationInfo { - - ISubmapManager getSubmapManager(); +public interface IVariationInfo extends ISubmapManager { ICarvingVariation getVariation(); String getDescription(); - + TextureType getType(); } diff --git a/src/main/java/com/cricketcraft/chisel/api/carving/VariationInfoBase.java b/src/main/java/com/cricketcraft/chisel/api/carving/VariationInfoBase.java index ecdc1ba6..0ab6621f 100644 --- a/src/main/java/com/cricketcraft/chisel/api/carving/VariationInfoBase.java +++ b/src/main/java/com/cricketcraft/chisel/api/carving/VariationInfoBase.java @@ -1,6 +1,12 @@ package com.cricketcraft.chisel.api.carving; +import net.minecraft.block.Block; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.util.IIcon; import net.minecraft.util.StatCollector; +import net.minecraft.world.IBlockAccess; +import net.minecraftforge.common.util.ForgeDirection; import com.cricketcraft.chisel.api.rendering.TextureType; import com.cricketcraft.ctmlib.ISubmapManager; @@ -33,13 +39,40 @@ public class VariationInfoBase implements IVariationInfo { return StatCollector.translateToLocal(unlocDesc); } - @Override - public ISubmapManager getSubmapManager() { - return manager; - } - @Override public TextureType getType() { return type; } + + // ISubmapManager delegation + + @Override + public IIcon getIcon(int side, int meta) { + return manager.getIcon(side, meta); + } + + @Override + public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { + return manager.getIcon(world, x, y, z, side); + } + + @Override + public void registerIcons(String modName, Block block, IIconRegister register) { + manager.registerIcons(modName, block, register); + } + + @Override + public RenderBlocks createRenderContext(RenderBlocks rendererOld, Block block, IBlockAccess world) { + return manager.createRenderContext(rendererOld, block, world); + } + + @Override + public void preRenderSide(RenderBlocks renderer, IBlockAccess world, int x, int y, int z, ForgeDirection side) { + manager.preRenderSide(renderer, world, x, y, z, side); + } + + @Override + public void postRenderSide(RenderBlocks renderer, IBlockAccess world, int x, int y, int z, ForgeDirection side) { + manager.postRenderSide(renderer, world, x, y, z, side); + } } diff --git a/src/main/java/com/cricketcraft/chisel/api/rendering/ClientUtils.java b/src/main/java/com/cricketcraft/chisel/api/rendering/ClientUtils.java new file mode 100644 index 00000000..071182be --- /dev/null +++ b/src/main/java/com/cricketcraft/chisel/api/rendering/ClientUtils.java @@ -0,0 +1,7 @@ +package com.cricketcraft.chisel.api.rendering; + +public class ClientUtils { + + public static int renderCTMId; + +} diff --git a/src/main/java/com/cricketcraft/chisel/api/rendering/TextureType.java b/src/main/java/com/cricketcraft/chisel/api/rendering/TextureType.java index 5c9fa0d0..53b14859 100644 --- a/src/main/java/com/cricketcraft/chisel/api/rendering/TextureType.java +++ b/src/main/java/com/cricketcraft/chisel/api/rendering/TextureType.java @@ -29,7 +29,7 @@ import cpw.mods.fml.relauncher.SideOnly; /** * Handles all default {@link ISubmapManager} behavior */ -@SuppressWarnings({ "unchecked", "deprecation" }) +@SuppressWarnings("unchecked") public enum TextureType { // @formatter:off diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableBeacon.java b/src/main/java/com/cricketcraft/chisel/block/BlockCarvableBeacon.java deleted file mode 100644 index 101655c2..00000000 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableBeacon.java +++ /dev/null @@ -1,74 +0,0 @@ -package com.cricketcraft.chisel.block; - -import net.minecraft.block.BlockBeacon; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.block.tileentity.TileEntityCarvableBeacon; -import com.cricketcraft.chisel.init.ChiselTabs; - -public class BlockCarvableBeacon extends BlockBeacon implements ICarvable { - - public static int renderId; - - public CarvableHelper carverHelper; - - public BlockCarvableBeacon() { - super(); - setCreativeTab(ChiselTabs.tabOtherChiselBlocks); - setLightLevel(5.0F); - setBlockTextureName("beacon"); - carverHelper = new CarvableHelper(this); - } - - @Override - public TileEntity createNewTileEntity(World world, int meta) { - return new TileEntityCarvableBeacon(); - } - - @Override - public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int par5, float hitX, float hitY, float hitZ) { - if (world.isRemote) { - return true; - } else { - TileEntityCarvableBeacon tileentitybeacon = (TileEntityCarvableBeacon) world.getTileEntity(x, y, z); - - if (tileentitybeacon != null) { - player.func_146104_a(tileentitybeacon); - } - - return true; - } - } - - @Override - public int getRenderType() { - return renderId; - } - - @Override - public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) { - super.onBlockPlacedBy(world, x, y, z, player, stack); - - if (stack.hasDisplayName()) { - ((TileEntityCarvableBeacon) world.getTileEntity(x, y, z)).func_145999_a(stack.getDisplayName()); - } - } - - @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { - return carverHelper.getVariation(metadata); - } - - @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); - } -} diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableColor.java b/src/main/java/com/cricketcraft/chisel/block/BlockCarvableColor.java deleted file mode 100644 index 46f93eb7..00000000 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableColor.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.cricketcraft.chisel.block; - -import net.minecraft.block.material.Material; -import net.minecraft.world.World; -import net.minecraftforge.common.util.ForgeDirection; - -public class BlockCarvableColor extends BlockCarvable { - - public BlockCarvableColor() { - this(Material.rock); - } - - public BlockCarvableColor(Material m) { - super(m); - } - - @Override - public boolean recolourBlock(World world, int x, int y, int z, ForgeDirection side, int color) { - int newColor = 15 - color; - if (world.getBlockMetadata(x, y, z) != newColor) { - world.setBlockMetadataWithNotify(x, y, z, newColor, 3); - return true; - } - return false; - } -} diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePumpkin.java b/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePumpkin.java deleted file mode 100644 index 14d21ff1..00000000 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePumpkin.java +++ /dev/null @@ -1,126 +0,0 @@ -package com.cricketcraft.chisel.block; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockPumpkin; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.monster.EntityIronGolem; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.entity.EntityChiselSnowman; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -public class BlockCarvablePumpkin extends BlockPumpkin implements ICarvable { - - public CarvableHelper carverHelper; - - @SideOnly(Side.CLIENT) - private IIcon top, face; - - private String faceLocation; - - public BlockCarvablePumpkin(boolean isOn) { - super(isOn); - this.setStepSound(Block.soundTypeWood); - if (isOn) - setLightLevel(10.0F); - carverHelper = new CarvableHelper(this); - } - - @Override - public void onBlockAdded(World world, int x, int y, int z){ - if(world.getBlock(x, y - 1, z) == Blocks.snow && world.getBlock(x, y - 2, z) == Blocks.snow){ - if(!world.isRemote){ - //Let's grab the pumpkin before we start - ItemStack pumpkin = new ItemStack(world.getBlock(x, y, z), world.getBlockMetadata(x, y, z)); - - world.setBlock(x, y, z, Blocks.air, 0, 2); - world.setBlock(x, y - 1, z, Blocks.air, 0, 2); - world.setBlock(x, y - 2, z, Blocks.air, 0, 2); - EntityChiselSnowman snowman = new EntityChiselSnowman(world); - snowman.setCurrentItemOrArmor(2, pumpkin); - snowman.setLocationAndAngles((double) x + 0.5D, (double) y - 1.95D, (double) z + 0.5D, 0.0F, 0.0F); - world.spawnEntityInWorld(snowman); - world.notifyBlockChange(x, y, z, Blocks.air); - world.notifyBlockChange(x, y - 1, z, Blocks.air); - world.notifyBlockChange(x, y - 2, z, Blocks.air); - } - - //Spawn some lovely particles - for(int c = 0; c < 120; ++c){ - world.spawnParticle("snowshovel", (double)x + world.rand.nextDouble(), (double) (y - 2) + world.rand.nextDouble() * 2.5D, (double) z + world.rand.nextDouble(), 0.0D, 0.0D, 0.0D); - } - } else if(world.getBlock(x, y - 1, z) == Blocks.iron_block || world.getBlock(x, y - 2, z) == Blocks.iron_block){ - boolean flag = world.getBlock(x - 1, y - 1, z) == Blocks.iron_block && world.getBlock(x + 1, y - 1, z) == Blocks.iron_block; - boolean flag1 = world.getBlock(x, y - 1, z - 1) == Blocks.iron_block && world.getBlock(x, y - 1, z + 1) == Blocks.iron_block; - - if(flag || flag1){ - world.setBlock(x, y, z, Blocks.air, 0, 2); - world.setBlock(x, y - 1, z, Blocks.air, 0, 2); - world.setBlock(x, y - 2, z, Blocks.air, 0, 2); - - if(flag){ - world.setBlock(x - 1, y - 1, z, Blocks.air, 0, 2); - world.setBlock(x + 1, y - 1, z, Blocks.air, 0, 2); - } else { - world.setBlock(x, y - 1, z - 1, Blocks.air, 0, 2); - world.setBlock(x, y - 1, z + 1, Blocks.air, 0, 2); - } - - EntityIronGolem ironGolem = new EntityIronGolem(world); - ironGolem.setPlayerCreated(true); - ironGolem.setLocationAndAngles((double) x + 0.5D, (double) y - 1.95D, (double) z + 0.5D, 0.0F, 0.0F); - world.spawnEntityInWorld(ironGolem); - - world.notifyBlockChange(x, y, z, Blocks.air); - world.notifyBlockChange(x, y - 1, z, Blocks.air); - world.notifyBlockChange(x, y - 2, z, Blocks.air); - - if(flag){ - world.notifyBlockChange(x - 1, y - 1, z, Blocks.air); - world.notifyBlockChange(x + 1, y - 1, z, Blocks.air); - } else { - world.notifyBlockChange(x, y - 1, z - 1, Blocks.air); - world.notifyBlockChange(x, y - 1, z + 1, Blocks.air); - } - } - } - } - - @Override - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int meta) { - return side == 1 ? top : (side == 0 ? top : (meta == 2 && side == 2 ? face : (meta == 3 && side == 5 ? face - : (meta == 0 && side == 3 ? face : (meta == 1 && side == 4 ? face : this.blockIcon))))); - } - - @Override - public void registerBlockIcons(IIconRegister icon) { - top = icon.registerIcon(Chisel.MOD_ID + ":pumpkin/pumpkin_top"); - face = icon.registerIcon(Chisel.MOD_ID + ":" + faceLocation); - this.blockIcon = icon.registerIcon(Chisel.MOD_ID + ":pumpkin/pumpkin_side"); - } - - @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { - return carverHelper.getVariation(metadata); - } - - @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); - } - - public void setInformation(String textureLocation) { - this.faceLocation = textureLocation; - } -} diff --git a/src/main/java/com/cricketcraft/chisel/client/player/PlayerSpecials.java b/src/main/java/com/cricketcraft/chisel/client/player/PlayerSpecials.java deleted file mode 100644 index beb1599f..00000000 --- a/src/main/java/com/cricketcraft/chisel/client/player/PlayerSpecials.java +++ /dev/null @@ -1,157 +0,0 @@ -package com.cricketcraft.chisel.client.player; - -import java.util.Collection; -import java.util.UUID; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.ItemRenderer; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.IIcon; -import net.minecraftforge.client.event.RenderLivingEvent; -import net.minecraftforge.client.event.RenderPlayerEvent; -import net.minecraftforge.common.MinecraftForge; - -import org.lwjgl.opengl.GL11; - -import com.cricketcraft.chisel.init.ChiselItems; -import com.google.common.collect.ArrayListMultimap; -import com.google.common.collect.Lists; -import com.google.common.collect.Multimap; - -import cpw.mods.fml.common.eventhandler.EventPriority; -import cpw.mods.fml.common.eventhandler.SubscribeEvent; - -public class PlayerSpecials { - - private interface IDevRenderer { - - void renderPlayer(EntityPlayer player, boolean post); - - void renderExtras(EntityPlayer player, boolean post); - } - - private class RenderHolstered implements IDevRenderer { - - private ItemStack toRender; - - private RenderHolstered(ItemStack toRender) { - this.toRender = toRender; - } - - @Override - public void renderExtras(EntityPlayer player, boolean post) { - if (!post) { - GL11.glPushMatrix(); - Minecraft.getMinecraft().renderEngine.bindTexture(TextureMap.locationItemsTexture); - if (player.isSneaking()) { - GL11.glRotatef(28.64789F, 1.0F, 0.0F, 0.0F); - } - boolean armor = player.getCurrentArmor(1) != null; - GL11.glRotatef(180.0F, 1.0F, 0.0F, 0.0F); - GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F); - GL11.glTranslatef(-0.25F, -0.85F, armor ? 0.2F : 0.28F); - GL11.glScalef(0.5F, 0.5F, 0.5F); - GL11.glColor3f(1.0F, 1.0F, 1.0F); - int light = 0xF000F0; - int lightmapX = light % 0x10000; - int lightmapY = light / 0x10000; - OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, lightmapX, lightmapY); - - IIcon icon = toRender.getIconIndex(); - ItemRenderer.renderItemIn2D(Tessellator.instance, icon.getMaxU(), icon.getMinV(), icon.getMinU(), icon.getMaxV(), icon.getIconWidth(), icon.getIconHeight(), 1.0F / 16.0F); - GL11.glPopMatrix(); - } - } - - @Override - public void renderPlayer(EntityPlayer player, boolean post) { - } - } - - private class RenderTranslucent implements IDevRenderer { - - @Override - public void renderExtras(EntityPlayer player, boolean post) { - } - - @Override - public void renderPlayer(EntityPlayer player, boolean post) { - if (!post) { - GL11.glColor4f(1.0F, 1.0F, 1.0F, 0.75F); - GL11.glEnable(GL11.GL_BLEND); - GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - } else { - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glDisable(GL11.GL_BLEND); - } - } - } - - public static final PlayerSpecials INSTANCE = new PlayerSpecials(); - - private Multimap renderMap = ArrayListMultimap.create(); - - private PlayerSpecials() { - RenderHolstered backChisel = new RenderHolstered(new ItemStack(ChiselItems.obsidianChisel)); - RenderTranslucent translucent = new RenderTranslucent(); - - renderMap.putAll(UUID.fromString("a7529984-8cb2-4fb9-b799-97980f770101"), Lists.newArrayList(backChisel, translucent)); // Cricket - renderMap.putAll(UUID.fromString("a1d2532b-ee11-4ca3-b4c5-76e168d4c98e"), Lists.newArrayList(backChisel, translucent)); // TheCricket26 - renderMap.putAll(UUID.fromString("5399b615-3440-4c66-939d-ab1375952ac3"), Lists.newArrayList(backChisel, translucent)); // Drullkus - - renderMap.put(UUID.fromString("671516b1-4fb3-4c03-aa7c-9c88cfab3ae8"), new RenderHolstered(new ItemStack(ChiselItems.diamondChisel))); // tterrag - renderMap.put(UUID.fromString("ad18f501-08fa-4e7e-b324-86750009106e"), new RenderHolstered(new ItemStack(ChiselItems.chisel)));//minecreatr - - MinecraftForge.EVENT_BUS.register(this); - } - - public static void init() { - } - - @SubscribeEvent(priority = EventPriority.HIGHEST) - public void onPlayerRenderPre(RenderLivingEvent.Pre event) { - if(nameIsGood(event.entity)){ - GL11.glColor4f(1.0F, 1.0F, 1.0F, 0.75F); - GL11.glEnable(GL11.GL_BLEND); - GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); - } - } - - @SubscribeEvent - public void onPlayerRenderPost(RenderLivingEvent.Post event) { - if(nameIsGood(event.entity)){ - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glDisable(GL11.GL_BLEND); - } - } - - @SubscribeEvent - public void onPlayerRenderSpecialPre(RenderPlayerEvent.Specials.Pre event) { - Collection renders = renderMap.get(event.entityPlayer.getUniqueID()); - for (IDevRenderer r : renders) { - r.renderExtras(event.entityPlayer, false); - } - } - - @SubscribeEvent - public void onPlayerRenderSpecialPost(RenderPlayerEvent.Specials.Post event) { - Collection renders = renderMap.get(event.entityPlayer.getUniqueID()); - for (IDevRenderer r : renders) { - r.renderExtras(event.entityPlayer, true); - } - } - - private boolean nameIsGood(Entity entity){ - if(EnumChatFormatting.getTextWithoutFormattingCodes(entity.getCommandSenderName()).equals("Cricket") - || EnumChatFormatting.getTextWithoutFormattingCodes(entity.getCommandSenderName()).equals("Drullkus") - || EnumChatFormatting.getTextWithoutFormattingCodes(entity.getCommandSenderName()).equals("minecreatr")) - return true; - return false; - } -} diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RenderChiselSnowman.java b/src/main/java/com/cricketcraft/chisel/client/render/RenderChiselSnowman.java deleted file mode 100644 index 55953901..00000000 --- a/src/main/java/com/cricketcraft/chisel/client/render/RenderChiselSnowman.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.cricketcraft.chisel.client.render; - -import com.cricketcraft.chisel.entity.EntityChiselSnowman; -import net.minecraft.block.Block; -import net.minecraft.client.model.ModelSnowMan; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.entity.RenderLiving; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.IItemRenderer; -import net.minecraftforge.client.MinecraftForgeClient; -import static net.minecraftforge.client.IItemRenderer.ItemRenderType.*; -import static net.minecraftforge.client.IItemRenderer.ItemRendererHelper.*; -import org.lwjgl.opengl.GL11; - -public class RenderChiselSnowman extends RenderLiving{ - - private static final ResourceLocation snowManTextures = new ResourceLocation("textures/entity/snowman.png"); - private ModelSnowMan snowMan; - - public RenderChiselSnowman() { - super(new ModelSnowMan(), 0.5F); - snowMan = (ModelSnowMan)super.mainModel; - setRenderPassModel(this.snowMan); - } - - @Override - protected void renderEquippedItems(EntityLivingBase entityLivingBase, float size){ - this.renderEquippedItems((EntityChiselSnowman) entityLivingBase, size); - } - - @Override - protected ResourceLocation getEntityTexture(Entity entity) { - return this.getEntityTexture((EntityChiselSnowman) entity); - } - - protected ResourceLocation getEntityTexture(EntityChiselSnowman snowman){ - return snowManTextures; - } - - protected void renderEquippedItems(EntityChiselSnowman snowman, float size){ - super.renderEquippedItems(snowman, size); - ItemStack itemStack = snowman.getEquipmentInSlot(2); - - if(itemStack.getItem() instanceof ItemBlock){ - GL11.glPushMatrix(); - this.snowMan.head.postRender(0.0625F); - - IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(itemStack, EQUIPPED); - boolean is3D = (customRenderer != null && customRenderer.shouldUseRenderHelper(EQUIPPED, itemStack, BLOCK_3D)); - - if(is3D || RenderBlocks.renderItemIn3d(Block.getBlockFromItem(itemStack.getItem()).getRenderType())){ - float f1 = 0.625F; - GL11.glTranslatef(0.0F, -0.34375F, 0.0F); - GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F); - GL11.glScalef(f1, -f1, f1); - } - this.renderManager.itemRenderer.renderItem(snowman, itemStack, 0); - GL11.glPopMatrix(); - } - } -} diff --git a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerRCTM.java b/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerRCTM.java deleted file mode 100644 index afb460a1..00000000 --- a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerRCTM.java +++ /dev/null @@ -1,147 +0,0 @@ -package com.cricketcraft.chisel.client.render; - -import net.minecraft.block.Block; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.util.IIcon; -import net.minecraft.util.MathHelper; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.client.event.TextureStitchEvent.Post; -import net.minecraftforge.common.util.ForgeDirection; - -import org.apache.commons.lang3.tuple.Triple; - -import com.cricketcraft.chisel.api.carving.CarvingUtils; -import com.cricketcraft.chisel.api.rendering.TextureType; -import com.cricketcraft.chisel.api.rendering.TextureType.AbstractSubmapManager; -import com.cricketcraft.ctmlib.RenderBlocksCTM; -import com.cricketcraft.ctmlib.TextureSubmap; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -public class SubmapManagerRCTM extends SubmapManagerBase { - - @SideOnly(Side.CLIENT) - private class RenderBlocksRCTM extends RenderBlocksCTM { - - @Override - public void renderFaceXNeg(Block block, double x, double y, double z, IIcon icon) { - submap = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.submap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.WEST.ordinal()); - submapSmall = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.smallSubmap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.WEST.ordinal()); - super.renderFaceXNeg(block, x, y, z, icon); - } - - @Override - public void renderFaceXPos(Block block, double x, double y, double z, IIcon icon) { - submap = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.submap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.EAST.ordinal()); - submapSmall = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.smallSubmap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.EAST.ordinal()); - super.renderFaceXPos(block, x, y, z, icon); - } - - @Override - public void renderFaceYNeg(Block block, double x, double y, double z, IIcon icon) { - submap = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.submap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.DOWN.ordinal()); - submapSmall = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.smallSubmap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.DOWN.ordinal()); - super.renderFaceYNeg(block, x, y, z, icon); - } - - @Override - public void renderFaceYPos(Block block, double x, double y, double z, IIcon icon) { - submap = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.submap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.UP.ordinal()); - submapSmall = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.smallSubmap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.UP.ordinal()); - super.renderFaceYPos(block, x, y, z, icon); - } - - @Override - public void renderFaceZNeg(Block block, double x, double y, double z, IIcon icon) { - submap = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.submap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.NORTH.ordinal()); - submapSmall = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.smallSubmap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.UP.ordinal()); - super.renderFaceZNeg(block, x, y, z, icon); - } - - @Override - public void renderFaceZPos(Block block, double x, double y, double z, IIcon icon) { - submap = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.submap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.SOUTH.ordinal()); - submapSmall = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerRCTM.this.smallSubmap, MathHelper.floor_double(x), MathHelper.floor_double(y), MathHelper.floor_double(z), ForgeDirection.SOUTH.ordinal()); - super.renderFaceZPos(block, x, y, z, icon); - } - } - - private class Submap extends TextureSubmap { - - private TextureSubmap[][] submap; - - public Submap(IIcon base, int wh, TextureSubmap[][] submap) { - super(base, wh, wh); - this.submap = submap; - } - - @Override - public void TexturesStitched(Post event) { - super.TexturesStitched(event); - for (int i = 0; i < icons.length; i++) { - for (int j = 0; j < icons[i].length; j++) { - icons[i][j] = submap[i][j]; - submap[i][j].TexturesStitched(event); - } - } - } - } - - @SideOnly(Side.CLIENT) - private RenderBlocksCTM rb; - - private TextureSubmap submap, smallSubmap; - private int size; - private String texturePath; - private int meta; - private IIcon defaultIcon; - private TextureType rType; - - public SubmapManagerRCTM(int meta, String texturePath, TextureType rType) { - assert rType == TextureType.R16 || rType == TextureType.R9 || rType == TextureType.R4 - : "Not a valid random type!"; - - this.meta = meta; - this.texturePath = texturePath; - this.size = Integer.parseInt(rType.name().substring(1, rType.name().length())); // >.> - this.rType = rType; - } - - @Override - public IIcon getIcon(int side, int meta) { - return defaultIcon; - } - - @Override - public RenderBlocks createRenderContext(RenderBlocks rendererOld, Block block, IBlockAccess world) { - if (rb == null) { - rb = new RenderBlocksRCTM(); - } - rb.setRenderBoundsFromBlock(block); - return rb; - } - - @SuppressWarnings("unchecked") - @Override - public void registerIcons(String modName, Block block, IIconRegister register) { - IIcon base = register.registerIcon(modName + ":" + texturePath); - TextureSubmap[][] submaps = new TextureSubmap[size][size]; - TextureSubmap[][] submapsSmall = new TextureSubmap[size][size]; - int wh = (int) Math.sqrt(size); - for (int i = 0; i < size; i++) { - AbstractSubmapManager manager = (AbstractSubmapManager) TextureType.CTMX.createManagerFor(CarvingUtils.getDefaultVariationFor(block, meta, 0), texturePath + "-ctm-" + i); - manager.registerIcons(modName, block, register); - Object cached = manager.getCachedObject(); - Triple triple = (Triple) cached; - submaps[size % wh][size / wh] = triple.getMiddle(); - submapsSmall[size % wh][size / wh] = triple.getRight(); - if (i == 0) { - defaultIcon = triple.getRight().getSubIcon(0, 0); - } - } - submap = new Submap(base, wh, submaps); - smallSubmap = new Submap(base, wh, submapsSmall); - } -} diff --git a/src/main/java/com/cricketcraft/chisel/client/render/tile/RenderCarvableBeacon.java b/src/main/java/com/cricketcraft/chisel/client/render/tile/RenderCarvableBeacon.java deleted file mode 100644 index f7610514..00000000 --- a/src/main/java/com/cricketcraft/chisel/client/render/tile/RenderCarvableBeacon.java +++ /dev/null @@ -1,161 +0,0 @@ -package com.cricketcraft.chisel.client.render.tile; - -import java.awt.Color; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockBeacon; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.tileentity.TileEntityBeaconRenderer; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemDye; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.MathHelper; -import net.minecraft.util.ResourceLocation; -import net.minecraft.world.IBlockAccess; - -import org.lwjgl.opengl.GL11; - -import com.cricketcraft.chisel.block.tileentity.TileEntityCarvableBeacon; - -import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; -import cpw.mods.fml.client.registry.RenderingRegistry; - -public class RenderCarvableBeacon extends TileEntityBeaconRenderer implements ISimpleBlockRenderingHandler { - private static final ResourceLocation texture = new ResourceLocation("textures/entity/beacon_beam.png"); - - private int renderId; - - public RenderCarvableBeacon() { - this.renderId = RenderingRegistry.getNextAvailableRenderId(); - } - - public void renderTileEntityAt(TileEntityCarvableBeacon beacon, double x, double y, double z, float partialTicks) { - float f1 = beacon.func_146002_i(); - GL11.glAlphaFunc(GL11.GL_GREATER, 0.1F); - if(f1 > 0.1F){ - Color color = new Color(ItemDye.field_150922_c[beacon.getWorldObj().getBlockMetadata(beacon.xCoord, beacon.yCoord, beacon.zCoord)]); - Tessellator tessellator = Tessellator.instance; - this.bindTexture(texture); - GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0F); - GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0F); - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_CULL_FACE); - GL11.glDisable(GL11.GL_BLEND); - GL11.glDepthMask(true); - OpenGlHelper.glBlendFunc(770, 1, 1, 0); - float f2 = (float) beacon.getWorldObj().getTotalWorldTime() + partialTicks; - float f3 = -f2 * 0.2F - (float) MathHelper.floor_float(-f2 * 0.1F); - byte b0 = 1; - double d3 = (double) f2 * 0.025D * (1.0D - (double) (b0 & 1) * 2.5D); - tessellator.startDrawingQuads(); - tessellator.setColorRGBA(color.getRed(), color.getGreen(), color.getBlue(), 32); - double d5 = (double) b0 * 0.2D; - double d7 = 0.5D + Math.cos(d3 + 2.356194490192345D) * d5; - double d9 = 0.5D + Math.sin(d3 + 2.356194490192345D) * d5; - double d11 = 0.5D + Math.cos(d3 + (Math.PI / 4D)) * d5; - double d13 = 0.5D + Math.sin(d3 + (Math.PI / 4D)) * d5; - double d15 = 0.5D + Math.cos(d3 + 3.9269908169872414D) * d5; - double d17 = 0.5D + Math.sin(d3 + 3.9269908169872414D) * d5; - double d19 = 0.5D + Math.cos(d3 + 5.497787143782138D) * d5; - double d21 = 0.5D + Math.sin(d3 + 5.497787143782138D) * d5; - double d23 = (double) (256.0F * f1); - double d25 = 0.0D; - double d27 = 1.0D; - double d28 = (double) (-1.0F + f3); - double d29 = (double) (256.0F * f1) * (0.5D / d5) + d28; - tessellator.addVertexWithUV(x + d7, y + d23, z + d9, d27, d29); - tessellator.addVertexWithUV(x + d7, y, z + d9, d27, d28); - tessellator.addVertexWithUV(x + d11, y, z + d13, d25, d28); - tessellator.addVertexWithUV(x + d11, y + d23, z + d13, d25, d29); - tessellator.addVertexWithUV(x + d19, y + d23, z + d21, d27, d29); - tessellator.addVertexWithUV(x + d19, y, z + d21, d27, d28); - tessellator.addVertexWithUV(x + d15, y, z + d17, d25, d28); - tessellator.addVertexWithUV(x + d15, y + d23, z + d17, d25, d29); - tessellator.addVertexWithUV(x + d11, y + d23, z + d13, d27, d29); - tessellator.addVertexWithUV(x + d11, y, z + d13, d27, d28); - tessellator.addVertexWithUV(x + d19, y, z + d21, d25, d28); - tessellator.addVertexWithUV(x + d19, y + d23, z + d21, d25, d29); - tessellator.addVertexWithUV(x + d15, y + d23, z + d17, d27, d29); - tessellator.addVertexWithUV(x + d15, y, z + d17, d27, d28); - tessellator.addVertexWithUV(x + d7, y, z + d9, d25, d28); - tessellator.addVertexWithUV(x + d7, y + d23, z + d9, d25, d29); - tessellator.draw(); - GL11.glEnable(GL11.GL_BLEND); - OpenGlHelper.glBlendFunc(770, 771, 1, 0); - GL11.glDepthMask(false); - tessellator.startDrawingQuads(); - tessellator.setColorRGBA(color.getRed(), color.getGreen(), color.getBlue(), 32); - double d30 = 0.2D; - double d4 = 0.2D; - double d6 = 0.8D; - double d8 = 0.2D; - double d10 = 0.2D; - double d12 = 0.8D; - double d14 = 0.8D; - double d16 = 0.8D; - double d18 = (double) (256.0F * f1); - double d20 = 0.0D; - double d22 = 1.0D; - double d24 = (double) (-1.0F + f3); - double d26 = (double) (256.0F * f1) + d24; - tessellator.addVertexWithUV(x + d30, y + d18, z + d4, d22, d26); - tessellator.addVertexWithUV(x + d30, y, z + d4, d22, d24); - tessellator.addVertexWithUV(x + d6, y, z + d8, d20, d24); - tessellator.addVertexWithUV(x + d6, y + d18, z + d8, d20, d26); - tessellator.addVertexWithUV(x + d14, y + d18, z + d16, d22, d26); - tessellator.addVertexWithUV(x + d14, y, z + d16, d22, d24); - tessellator.addVertexWithUV(x + d10, y, z + d12, d20, d24); - tessellator.addVertexWithUV(x + d10, y + d18, z + d12, d20, d26); - tessellator.addVertexWithUV(x + d6, y + d18, z + d8, d22, d26); - tessellator.addVertexWithUV(x + d6, y, z + d8, d22, d24); - tessellator.addVertexWithUV(x + d14, y, z + d16, d20, d24); - tessellator.addVertexWithUV(x + d14, y + d18, z + d16, d20, d26); - tessellator.addVertexWithUV(x + d10, y + d18, z + d12, d22, d26); - tessellator.addVertexWithUV(x + d10, y, z + d12, d22, d24); - tessellator.addVertexWithUV(x + d30, y, z + d4, d20, d24); - tessellator.addVertexWithUV(x + d30, y + d18, z + d4, d20, d26); - tessellator.draw(); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glEnable(GL11.GL_TEXTURE_2D); - GL11.glDepthMask(true); - } - } - - public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float partialTicks) { - this.renderTileEntityAt((TileEntityCarvableBeacon) tile, x, y, z, partialTicks); - } - - @Override - public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) { - renderer.renderBlockAsItem(Blocks.beacon, 0, 1); - } - - @Override - public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) { - float f = 0.1875F; - renderer.setOverrideBlockTexture(renderer.getBlockIcon(Blocks.glass)); - renderer.renderStandardBlockWithAmbientOcclusion(block, x, y, z, 1, 1, 1); - renderer.renderAllFaces = true; - renderer.setOverrideBlockTexture(renderer.getBlockIcon(Blocks.obsidian)); - renderer.setRenderBounds(0.125D, 0.00625D, 0.125D, 0.875D, (double)f, 0.875D); - renderer.renderStandardBlockWithAmbientOcclusion(block, x, y, z, 1, 1, 1); - renderer.setOverrideBlockTexture(renderer.getBlockIcon(Blocks.beacon)); - renderer.setRenderBounds(0.1875D, (double)f, 0.1875D, 0.8125D, 0.875D, 0.8125D); - renderer.renderStandardBlockWithAmbientOcclusion(block, x, y, z, 1, 1, 1); - renderer.renderAllFaces = false; - renderer.clearOverrideBlockTexture(); - return true; - } - - @Override - public boolean shouldRender3DInInventory(int modelId) { - return true; - } - - @Override - public int getRenderId() { - return renderId; - } -} diff --git a/src/main/java/com/cricketcraft/chisel/compat/Compatibility.java b/src/main/java/com/cricketcraft/chisel/compat/Compatibility.java deleted file mode 100644 index 21860741..00000000 --- a/src/main/java/com/cricketcraft/chisel/compat/Compatibility.java +++ /dev/null @@ -1,245 +0,0 @@ -package com.cricketcraft.chisel.compat; - -import java.util.Map; - -import net.minecraft.block.Block; -import net.minecraft.item.ItemStack; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.init.ChiselBlocks; -import com.cricketcraft.chisel.init.ChiselItems; -import com.google.common.collect.Maps; -import com.pahimar.ee3.api.exchange.EnergyValueRegistryProxy; - -import cpw.mods.fml.common.FMLLog; -import cpw.mods.fml.common.Loader; -import cpw.mods.fml.common.event.FMLPostInitializationEvent; -import cpw.mods.fml.common.registry.GameRegistry; - -import org.apache.logging.log4j.Level; - -public class Compatibility { - - public static String[] rockColorNames = { "gray", "lightgray", "brown", "tan", "reddish", "bluish", "greenish" }; - - public static Map tconMap = Maps.newHashMap(); - - static - { - tconMap.put(0, "obsidian"); - tconMap.put(1, "sandstone"); - tconMap.put(2, "netherrack"); - tconMap.put(3, "stonebricksmooth"); - tconMap.put(12, "end_stone"); - } - - public static void init(FMLPostInitializationEvent event) { - - /* Proj Red */ - addSupport("ProjRed|Exploration", "projectred.exploration.stone", "marble", 0, 99); - addSupport("ProjRed|Exploration", "projectred.exploration.stone", "marble", 1, 99); - - /* Bluepower */ - addSupport("bluepower", "marble", "marble", 0, 99); - - /* Artifice */ - addSupport("Artifice", "artifice.marble", "marble", 0, 99); - addSupport("Artifice", "artifice.marble.slab", "marble_slab", 0, 99); - for (String s : rockColorNames) { - addSupport("Artifice", "artifice.limestone." + s, "limestone", 0, 99); - } - - /* Mariculture */ - Block block = GameRegistry.findBlock("mariculture", "limestone"); - if (block != null) { - for (int i = 0; i < 16; i++) { - addSupport("limestone", block, i, 99); - } - } - - /* Geologica */ - addSupport("PFAAGeologica", "strongStone", "marble", 5, 99); - addSupport("PFAAGeologica", "strongStoneSlab", "marbleSlab", 5, 99); - addSupport("PFAAGeologica", "strongStoneBrickStairs.marble", "marbleStairs", 0, 99); - addSupport("PFAAGeologica", "mediumStone", "limestone", 0, 99); - addSupport("PFAAGeologica", "mediumStoneSlab", "limestoneSlab", 0, 99); - addSupport("PFAAGeologica", "mediumStoneBrickStairs.limestone", "limestoneStairs", 0, 99); - addSupport("PFAAGeologica", "strongStoneBrick", "stoneBrick", 3, 99); - addSupport("PFAAGeologica", "strongCobble", "cobblestone", 3, 99); - - /* Thaumcraft TODO There is probably a cleaner way of doing this */ - if (Loader.isModLoaded("Thaumcraft")) { - loadThaumcraftAspects(); - } - - for (Integer i : tconMap.keySet()) - { - addSupport("TConstruct", "decoration.multibrick", tconMap.get(i), i, 99); - addSupport("TConstruct", "decoration.multibrickfancy", tconMap.get(i), i, 99); - } - - addSupport("TConstruct", "decoration.multibrickfancy", "stonebricksmooth", 14, 99); - addSupport("TConstruct", "decoration.multibrickfancy", "stonebricksmooth", 15, 99); - - addSupport("Botania", "endStoneBrick", "end_stone", 12, 0); - - if(Loader.isModLoaded("EE3")){ - loadEE3Values(); - } - } - - public static void addSupport(String modname, String blockname, String name, int metadata, int order) { - if (Loader.isModLoaded(modname) && GameRegistry.findBlock(modname, blockname) != null) { - addSupport(name, GameRegistry.findBlock(modname, blockname), metadata, order); - } - } - - public static void addSupport(String name, Block block, int metadata, int order) { - Carving.chisel.addVariation(name, block, metadata, order); - } - - private static void loadThaumcraftAspects() { -// ThaumcraftApi.registerObjectTag(new ItemStack(ChiselBlocks.cobblestone, 1, OreDictionary.WILDCARD_VALUE), (new AspectList()).add(Aspect.ENTROPY, 1).add(Aspect.EARTH, 1)); -// ThaumcraftApi.registerObjectTag(new ItemStack(ChiselBlocks.cobblestoneWall, 1, OreDictionary.WILDCARD_VALUE), (new AspectList()).add(Aspect.ENTROPY, 1).add(Aspect.EARTH, 1)); - } - - private static void loadEE3Values(){ - FMLLog.log(Chisel.MOD_ID, Level.INFO, "[Chisel 2] Oooh is that Equivalent Exchange I see?"); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselItems.ballomoss, 1), 16); - - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.sand_snakestone, 1, 1), 8); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.sand_snakestone, 1, 13), 8); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 0), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 1), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 2), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 3), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 4), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 1), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 2), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 3), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 4), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 12), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 13), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 14), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 15), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.present, 1, 4), 80); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.road_line, 1, 0), 24); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.road_line, 1, 1), 24); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.road_line, 1, 2), 24); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.road_line, 1, 3), 24); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 0), 24); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 1), 24); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 2), 24); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 3), 24); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass2, 1), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 0), 32); - - for(int x = 0; x < ChiselBlocks.pumpkin.length; x++){ - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.pumpkin[x], 1), 144); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.jackolantern[x], 1), 153); - } - - for(int x = 0; x < ChiselBlocks.torches.length; x++){ - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.torches[x], 1), 9); - } - - for(int x = 0; x < 10; x++){ - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.valentines, 1, x), 3); - } - - for(int x = 0 ; x < 16; x++){ - if(x <= 10)EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.concrete, 1, x), 8); - if(x <= 14)EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.grimstone, 1, x), 5); - if(x < 14)EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.grimstone, 1, x), 7); - if(x < 12)EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.dirt, 1, x), 1); - if(x < 5){ - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.rebel, 1, x), 39); - } - - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.fantasyblock, 1, x), 29444); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.fantasyblock, 1, x), 31444); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.limestone, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.marble, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.marble_pillar, 1, x), 8); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.marble_pillar_slab, 1, x), 4); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.sandstone_scribbles, 1, x), 4); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.stonebricksmooth, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.templeblock, 1, x), 108); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.mossy_templeblock, 1, x), 108); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glowstone, 1, x), 1536); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.ice, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.woolen_clay, 1, x), 153); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.factoryblock, 1, x), 32); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.hexPlating, 1, x), 37); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.gold_block, 1, x), 18432); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_block, 1, x), 2304); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.laboratoryblock, 1, x), 33); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical, 1, x), 32); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.tyrian, 1, x), 33); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.hexLargePlating, 1, x), 37); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.circuits, 1, x), 37); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.factoryblock2, 1, x), 32); - - if(x < 15)EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.warningSign, 1, x), 6); - - if(x < 4)EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.factoryblock2, 1, x), 32); - - for(int c = 0; c < ChiselBlocks.stainedGlass.length; c++){ - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.stainedGlass[c], 1, x), 1); - } - - for(int c = 0; c < ChiselBlocks.stainedGlassPane.length; c++){ - if(x <= 13)EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.stainedGlassPane[c], 1, x), 1); - } - - if(x > 0) { - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cobblestone, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.mossy_cobblestone, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.netherrack, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.obsidian, 1, x), 64); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.sandstone, 1, x), 4); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstonerunic, 1, x), 160); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.redstone_block, 1, x), 288); - if(x <= 8)EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.bookshelf, 1, x), 528); - if (x <= 12) { - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.diamond_block, 1, x), 73728); - if (x != 12) - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.emerald_block, 1, x), 73728); - } - - for (int c = 0; c < ChiselBlocks.planks.length; c++) { - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.planks[c], 1, x), 8); - } - } - } - - for(int x = 0; x <= 6; x++){ - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.andesite, 1, x), 129); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.diorite, 1, x), 257); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.granite, 1, x), 513); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.lavastone, 1, x), 9); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.lavastone, 1, 7), 9); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstone, 1, x), 160); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstone, 1, 7), 160); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstone2, 1, x), 256); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstone2, 1, 7), 256); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.waterstone, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.ice_pillar, 1, x), 1); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_bars, 1, x), 96); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_bars, 1, 7), 96); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_bars, 1, 8), 96); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_bars, 1, 9), 96); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall, 1, x), 32); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall, 1, 7), 32); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall, 1, 8), 32); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall_block, 1, x), 32); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall_block, 1, 7), 32); - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall_block, 1, 8), 32); - if(x > 0){ - EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.brickCustom, 1, x), 256); - } - } - } -} diff --git a/src/main/java/com/cricketcraft/chisel/entity/EntityChiselSnowman.java b/src/main/java/com/cricketcraft/chisel/entity/EntityChiselSnowman.java deleted file mode 100644 index bffbc7ab..00000000 --- a/src/main/java/com/cricketcraft/chisel/entity/EntityChiselSnowman.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.cricketcraft.chisel.entity; - -import net.minecraft.entity.monster.EntitySnowman; -import net.minecraft.world.World; - -public class EntityChiselSnowman extends EntitySnowman{ - - public EntityChiselSnowman(World world){ - super(world); - } - - //No special features just needed to get around the hardcoding -} diff --git a/src/main/java/com/cricketcraft/chisel/item/ItemCarvablePumpkin.java b/src/main/java/com/cricketcraft/chisel/item/ItemCarvablePumpkin.java deleted file mode 100644 index 753e2724..00000000 --- a/src/main/java/com/cricketcraft/chisel/item/ItemCarvablePumpkin.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.cricketcraft.chisel.item; - -import java.util.List; - -import net.minecraft.block.Block; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; - -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.config.Configurations; -import com.cricketcraft.chisel.utils.General; - -public class ItemCarvablePumpkin extends ItemBlock { - - public ItemCarvablePumpkin(Block block) { - super(block); - setMaxDamage(0); - setHasSubtypes(true); - } - - @Override - public boolean isValidArmor(ItemStack itemStack, int armorType, Entity entity){ - return true; - } - - @Override - public int getMetadata(int i) { - return i; - } - - @Override - public IIcon getIconFromDamage(int damage) { - return Block.getBlockFromItem(this).getIcon(2, damage); - } - - @SuppressWarnings({ "unchecked", "rawtypes" }) - @Override - public void addInformation(ItemStack stack, EntityPlayer player, List lines, boolean advancedTooltips) { - if (!Configurations.blockDescriptions) - return; - - Item item = General.getItem(stack); - if (item == null) - return; - - Block block = Block.getBlockFromItem(this); - if (!(block instanceof ICarvable)) - return; - - ICarvable carvable = (ICarvable) block; - IVariationInfo var = carvable.getVariation(stack); - if (var == null) - return; - - lines.add(var.getDescription()); - } -} diff --git a/src/main/java/com/cricketcraft/chisel/utils/BlockTexturedOre.java b/src/main/java/com/cricketcraft/chisel/utils/BlockTexturedOre.java deleted file mode 100644 index 9e501e5e..00000000 --- a/src/main/java/com/cricketcraft/chisel/utils/BlockTexturedOre.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.cricketcraft.chisel.utils; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.util.IIcon; - -public class BlockTexturedOre extends Block { - - int currentPass; - Block base; - IIcon icon; - String iconFile; - - public BlockTexturedOre(Material mat, Block base) { - super(mat); - - this.base = base; - } - - public BlockTexturedOre(Material mat, String iconFile) { - super(mat); - - this.iconFile = iconFile; - } - - @Override - public boolean renderAsNormalBlock() { - return false; - } - - @Override - public int getRenderType() { - return BlockTexturedOreRenderer.id; - } - - @Override - public int getRenderBlockPass() { - return 1; - } - - @Override - public boolean canRenderInPass(int pass) { - currentPass = pass; - - return pass == 1 || pass == 0; - } - - @Override - public void registerBlockIcons(IIconRegister register) { - if (iconFile != null) - icon = register.registerIcon(iconFile); - } - -} diff --git a/src/main/java/com/cricketcraft/chisel/utils/BlockTexturedOreRenderer.java b/src/main/java/com/cricketcraft/chisel/utils/BlockTexturedOreRenderer.java deleted file mode 100644 index 72e43111..00000000 --- a/src/main/java/com/cricketcraft/chisel/utils/BlockTexturedOreRenderer.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.cricketcraft.chisel.utils; - -import net.minecraft.block.Block; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.init.Blocks; -import net.minecraft.world.IBlockAccess; - -import org.lwjgl.opengl.GL11; - -import com.cricketcraft.ctmlib.Drawing; - -import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; -import cpw.mods.fml.client.registry.RenderingRegistry; - -public class BlockTexturedOreRenderer implements ISimpleBlockRenderingHandler { - - float bot = -0.001f, top = 1.0f - bot; - static int id; - - public BlockTexturedOreRenderer() { - id = RenderingRegistry.getNextAvailableRenderId(); - } - - @Override - public void renderInventoryBlock(Block blck, int meta, int modelID, RenderBlocks renderer) { - if (blck == null || !(blck instanceof BlockTexturedOre)) - return; - - BlockTexturedOre block = (BlockTexturedOre) blck; - - if (block.icon != null) { - renderer.overrideBlockTexture = block.icon; - renderer.renderBlockAsItem(Blocks.stone, meta, 1.0f); - renderer.overrideBlockTexture = null; - } else if (block.base != null) { - renderer.renderBlockAsItem(block.base, meta, 1.0f); - } - - GL11.glEnable(3042); - GL11.glBlendFunc(770, 771); - renderer.setRenderBounds(bot, bot, bot, top, top, top); - GL11.glTranslatef(-0.5F, -0.5F, -0.5F); - Drawing.drawBlock(block, meta, renderer); - GL11.glDisable(3042); - } - - @Override - public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block blck, int modelId, RenderBlocks renderer) { - if (blck == null || !(blck instanceof BlockTexturedOre)) - return false; - BlockTexturedOre block = (BlockTexturedOre) blck; - - if (block.currentPass == 0) { - if (block.icon != null) { - renderer.overrideBlockTexture = block.icon; - renderer.renderStandardBlock(block, x, y, z); - renderer.overrideBlockTexture = null; - } else if (block.base != null) { - renderer.renderBlockByRenderType(block.base, x, y, z); - } - } else { - renderer.setRenderBounds(bot, bot, bot, top, top, top); - renderer.renderStandardBlock(block, x, y, z); - } - - return true; - } - - @Override - public boolean shouldRender3DInInventory(int modelId) { - return true; - } - - @Override - public int getRenderId() { - return id; - } -} diff --git a/src/main/java/com/cricketcraft/chisel/utils/DummyContainer.java b/src/main/java/com/cricketcraft/chisel/utils/DummyContainer.java deleted file mode 100644 index a0567933..00000000 --- a/src/main/java/com/cricketcraft/chisel/utils/DummyContainer.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.cricketcraft.chisel.utils; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; - -public class DummyContainer extends Container { - - @Override - public boolean canInteractWith(EntityPlayer entityplayer) { - return true; - } -} diff --git a/src/main/java/com/cricketcraft/chisel/utils/GuiHandler.java b/src/main/java/com/cricketcraft/chisel/utils/GuiHandler.java deleted file mode 100644 index 5e3b4a03..00000000 --- a/src/main/java/com/cricketcraft/chisel/utils/GuiHandler.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.cricketcraft.chisel.utils; - -import java.util.ArrayList; -import java.util.Collections; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.world.World; -import cpw.mods.fml.common.network.IGuiHandler; -import cpw.mods.fml.common.network.NetworkRegistry; - -public abstract class GuiHandler implements Comparable { - - static ArrayList items = new ArrayList(); - - int index; - Object mod; - String name; - - public GuiHandler(String n) { - items.add(this); - name = n; - } - - public void open(EntityPlayer player, World world, int x, int y, int z) { - player.openGui(mod, index, world, x, y, z); - } - - @Override - public int compareTo(Object a) { - return name.compareTo(((GuiHandler) a).name); - } - - public static void register(Object mod) { - Collections.sort(items); - int index = 0; - - for (GuiHandler h : items) { - h.mod = mod; - h.index = index++; - } - - NetworkRegistry.INSTANCE.registerGuiHandler(mod, new IGuiHandler() { - - @Override - public Object getServerGuiElement(int id, EntityPlayer player, World world, int x, int y, int z) { - if (id < 0 || id >= items.size()) { - return null; - } - - return items.get(id).getServerGuiElement(id, player, world, x, y, z); - } - - @Override - public Object getClientGuiElement(int id, EntityPlayer player, World world, int x, int y, int z) { - if (id < 0 || id >= items.size()) { - return null; - } - - return items.get(id).getClientGuiElement(id, player, world, x, y, z); - } - }); - } - - public abstract Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z); - - public abstract Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z); -} diff --git a/src/main/java/com/cricketcraft/chisel/utils/ItemMetaBlock.java b/src/main/java/com/cricketcraft/chisel/utils/ItemMetaBlock.java deleted file mode 100644 index 002f01c3..00000000 --- a/src/main/java/com/cricketcraft/chisel/utils/ItemMetaBlock.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.cricketcraft.chisel.utils; - -import net.minecraft.block.Block; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; - -public class ItemMetaBlock extends ItemBlock { - - public ItemMetaBlock(Block b) { - super(b); - setMaxDamage(0); - setHasSubtypes(true); - } - - @Override - public String getUnlocalizedName(ItemStack itemstack) { - if (itemstack == null) { - return Block.getBlockFromItem(this).getUnlocalizedName(); - } - - return Block.getBlockFromItem(this).getUnlocalizedName(); - } - - @Override - public int getMetadata(int i) { - return i; - } -} diff --git a/src/main/java/com/cricketcraft/chisel/BlockNameConversion.java b/src/main/java/team/chisel/BlockNameConversion.java similarity index 98% rename from src/main/java/com/cricketcraft/chisel/BlockNameConversion.java rename to src/main/java/team/chisel/BlockNameConversion.java index d791cd62..fd543ba8 100644 --- a/src/main/java/com/cricketcraft/chisel/BlockNameConversion.java +++ b/src/main/java/team/chisel/BlockNameConversion.java @@ -1,12 +1,10 @@ -package com.cricketcraft.chisel; +package team.chisel; import java.util.HashMap; +import team.chisel.utils.General; import net.minecraft.block.Block; import net.minecraft.item.Item; - -import com.cricketcraft.chisel.utils.General; - import cpw.mods.fml.common.FMLLog; import cpw.mods.fml.common.registry.GameRegistry; diff --git a/src/main/java/com/cricketcraft/chisel/Chisel.java b/src/main/java/team/chisel/Chisel.java similarity index 71% rename from src/main/java/com/cricketcraft/chisel/Chisel.java rename to src/main/java/team/chisel/Chisel.java index 80589626..0e840135 100644 --- a/src/main/java/com/cricketcraft/chisel/Chisel.java +++ b/src/main/java/team/chisel/Chisel.java @@ -1,16 +1,11 @@ -package com.cricketcraft.chisel; +package team.chisel; import java.io.File; import net.minecraft.block.Block; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.Item; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.ChatComponentText; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.config.Configuration; -import net.minecraftforge.event.entity.EntityJoinWorldEvent; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -18,23 +13,23 @@ import org.apache.logging.log4j.Logger; import com.cricketcraft.chisel.api.ChiselAPIProps; import com.cricketcraft.chisel.api.Statistics; import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.block.BlockCarvable; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.compat.Compatibility; -import com.cricketcraft.chisel.compat.IMCHandler; -import com.cricketcraft.chisel.compat.fmp.FMPCompat; -import com.cricketcraft.chisel.config.Configurations; -import com.cricketcraft.chisel.entity.EntityChiselSnowman; -import com.cricketcraft.chisel.init.ChiselBlocks; -import com.cricketcraft.chisel.init.ChiselTabs; -import com.cricketcraft.chisel.item.ItemCarvable; -import com.cricketcraft.chisel.item.chisel.ChiselController; -import com.cricketcraft.chisel.network.ChiselGuiHandler; -import com.cricketcraft.chisel.network.PacketHandler; -import com.cricketcraft.chisel.proxy.CommonProxy; -import com.cricketcraft.chisel.utils.General; -import com.cricketcraft.chisel.world.GeneratorChisel; +import team.chisel.block.BlockCarvable; +import team.chisel.carving.Carving; +import team.chisel.compat.Compatibility; +import team.chisel.compat.IMCHandler; +import team.chisel.compat.fmp.FMPCompat; +import team.chisel.config.Configurations; +import team.chisel.entity.EntityChiselSnowman; +import team.chisel.init.ChiselBlocks; +import team.chisel.init.ChiselTabs; +import team.chisel.item.ItemCarvable; +import team.chisel.item.chisel.ChiselController; +import team.chisel.network.ChiselGuiHandler; +import team.chisel.network.PacketHandler; +import team.chisel.proxy.CommonProxy; +import team.chisel.utils.General; +import team.chisel.world.GeneratorChisel; import cpw.mods.fml.client.event.ConfigChangedEvent; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.FMLLog; @@ -57,12 +52,12 @@ import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.GameRegistry.Type; -@Mod(modid = Chisel.MOD_ID, name = Chisel.MOD_NAME, version = Chisel.VERSION, guiFactory = "com.cricketcraft.chisel.client.gui.GuiFactory", dependencies = "after:EE3;after:ForgeMultipart;after:Thaumcraft;after:appliedenergistics2;after:Railcraft;after:AWWayofTime;after:TwilightForest") +@Mod(modid = Chisel.MOD_ID, name = Chisel.MOD_NAME, version = Chisel.VERSION, guiFactory = "team.chisel.client.gui.GuiFactory", dependencies = "after:EE3;after:ForgeMultipart;after:Thaumcraft;after:appliedenergistics2;after:Railcraft;after:AWWayofTime;after:TwilightForest") public class Chisel { public static final String MOD_ID = "chisel"; public static final BlockCarvable.SoundType soundTempleFootstep = new BlockCarvable.SoundType("dig.stone", MOD_ID + ":step.templeblock", 1.0f, 1.0f); - public static final String MOD_NAME = "Chisel 2"; + public static final String MOD_NAME = "Chisel"; public static final String VERSION = "@VERSION@"; public static final BlockCarvable.SoundType soundHolystoneFootstep = new BlockCarvable.SoundType("holystone", 1.0f, 1.0f); public static final BlockCarvable.SoundType soundMetalFootstep = new BlockCarvable.SoundType("metal", 1.0f, 1.0f); @@ -77,14 +72,14 @@ public class Chisel { @Instance(MOD_ID) public static Chisel instance; - - public Chisel() { + + public Chisel() { ChiselAPIProps.MOD_ID = MOD_ID; CarvableHelper.itemCarvableClass = ItemCarvable.class; Carving.construct(); } - @SidedProxy(clientSide = "com.cricketcraft.chisel.proxy.ClientProxy", serverSide = "com.cricketcraft.chisel.proxy.CommonProxy") + @SidedProxy(clientSide = "team.chisel.proxy.ClientProxy", serverSide = "team.chisel.proxy.CommonProxy") public static CommonProxy proxy; @EventHandler @@ -157,13 +152,13 @@ public class Chisel { addWorldgen(Features.DIORITE, ChiselBlocks.diorite, Configurations.dioriteAmount, 40, 100, 0.5); GameRegistry.registerWorldGenerator(GeneratorChisel.INSTANCE, 1000); - EntityRegistry.registerModEntity(EntityChiselSnowman.class, "snowman", 0, this, 80, 1, true); + EntityRegistry.registerModEntity(EntityChiselSnowman.class, "snowman", 0, this, 80, 1, true); proxy.init(); MinecraftForge.EVENT_BUS.register(this); FMLCommonHandler.instance().bus().register(instance); - FMLInterModComms.sendMessage("Waila", "register", "com.cricketcraft.chisel.compat.WailaCompat.register"); + FMLInterModComms.sendMessage("Waila", "register", "team.chisel.compat.WailaCompat.register"); } private void addWorldgen(Features feature, Block block, double... data) { @@ -182,8 +177,6 @@ public class Chisel { public void postInit(FMLPostInitializationEvent event) { ChiselTabs.postInit(); Compatibility.init(event); - FMLLog.severe("Unable to lookup chisel:... is not an error, please do not treat it as such"); - FMLLog.bigWarning("In case you didn't see the red above I suggest you read it - Cricket"); } @EventHandler @@ -199,16 +192,4 @@ public class Chisel { Configurations.refreshConfig(); } } - - @SubscribeEvent - public void thankYou(EntityJoinWorldEvent event){ - if(!event.world.isRemote && event.entity instanceof EntityPlayerMP){ - EntityPlayerMP player = (EntityPlayerMP) event.entity; - if(!player.getEntityData().getCompoundTag(EntityPlayer.PERSISTED_NBT_TAG).getBoolean("thanked")){ - NBTTagCompound tag = player.getEntityData().getCompoundTag(EntityPlayer.PERSISTED_NBT_TAG); - tag.setBoolean("thanked", true); - player.addChatMessage(new ChatComponentText("Thank you for half a million downloads! - The Chisel Team")); - } - } - } } diff --git a/src/main/java/com/cricketcraft/chisel/Features.java b/src/main/java/team/chisel/Features.java similarity index 91% rename from src/main/java/com/cricketcraft/chisel/Features.java rename to src/main/java/team/chisel/Features.java index f8ac0c62..e10d778c 100644 --- a/src/main/java/com/cricketcraft/chisel/Features.java +++ b/src/main/java/team/chisel/Features.java @@ -1,20 +1,33 @@ -package com.cricketcraft.chisel; - -import static com.cricketcraft.chisel.init.ChiselBlocks.andesite; -import static com.cricketcraft.chisel.init.ChiselBlocks.diorite; -import static com.cricketcraft.chisel.init.ChiselBlocks.granite; -import static com.cricketcraft.chisel.init.ChiselBlocks.jackolantern; -import static com.cricketcraft.chisel.init.ChiselBlocks.planks; -import static com.cricketcraft.chisel.init.ChiselBlocks.pumpkin; -import static com.cricketcraft.chisel.init.ChiselBlocks.stainedGlass; -import static com.cricketcraft.chisel.init.ChiselBlocks.stainedGlassPane; -import static com.cricketcraft.chisel.init.ChiselBlocks.torches; -import static com.cricketcraft.chisel.utils.General.featureColors; -import static com.cricketcraft.chisel.utils.General.sGNames; +package team.chisel; import java.util.List; -import com.cricketcraft.chisel.item.chisel.ItemChisel; +import team.chisel.block.*; +import team.chisel.carving.Carving; +import team.chisel.client.render.SubmapManagerAntiblock; +import team.chisel.client.render.SubmapManagerCarpetFloor; +import team.chisel.client.render.SubmapManagerCombinedCTM; +import team.chisel.client.render.SubmapManagerFakeController; +import team.chisel.client.render.SubmapManagerLeaves; +import team.chisel.client.render.SubmapManagerSlab; +import team.chisel.client.render.SubmapManagerVoidstone; +import team.chisel.compat.fmp.ItemBlockChiselTorchPart; +import team.chisel.config.Configurations; +import team.chisel.entity.EntityBallOMoss; +import team.chisel.entity.EntityCloudInABottle; +import team.chisel.entity.EntitySmashingRock; +import team.chisel.init.ChiselBlocks; +import team.chisel.init.ChiselItems; +import team.chisel.init.ChiselTabs; +import team.chisel.item.ItemBallOMoss; +import team.chisel.item.ItemBlockPresent; +import team.chisel.item.ItemCarvable; +import team.chisel.item.ItemCarvablePumpkin; +import team.chisel.item.ItemCarvableSlab; +import team.chisel.item.ItemCloudInABottle; +import team.chisel.item.ItemSmashingRock; +import team.chisel.item.ItemUpgrade; +import team.chisel.item.chisel.ItemChisel; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; @@ -24,39 +37,24 @@ import net.minecraft.item.ItemDye; import net.minecraft.item.ItemStack; import net.minecraft.item.crafting.FurnaceRecipes; import net.minecraft.world.World; - -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.CarvingUtils.SimpleCarvingGroup; -import com.cricketcraft.chisel.api.carving.ICarvingVariation; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.block.*; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.client.render.SubmapManagerAntiblock; -import com.cricketcraft.chisel.client.render.SubmapManagerCarpetFloor; -import com.cricketcraft.chisel.client.render.SubmapManagerFakeController; -import com.cricketcraft.chisel.client.render.SubmapManagerLeaves; -import com.cricketcraft.chisel.client.render.SubmapManagerSlab; -import com.cricketcraft.chisel.client.render.SubmapManagerVoidstone; -import com.cricketcraft.chisel.compat.fmp.ItemBlockChiselTorchPart; -import com.cricketcraft.chisel.config.Configurations; -import com.cricketcraft.chisel.entity.EntityBallOMoss; -import com.cricketcraft.chisel.entity.EntityCloudInABottle; -import com.cricketcraft.chisel.entity.EntitySmashingRock; -import com.cricketcraft.chisel.init.ChiselBlocks; -import com.cricketcraft.chisel.init.ChiselItems; -import com.cricketcraft.chisel.init.ChiselTabs; -import com.cricketcraft.chisel.item.*; -import com.google.common.collect.Lists; - -import cpw.mods.fml.common.Loader; -import cpw.mods.fml.common.registry.EntityRegistry; -import cpw.mods.fml.common.registry.GameRegistry; - import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.oredict.OreDictionary; import net.minecraftforge.oredict.ShapedOreRecipe; import net.minecraftforge.oredict.ShapelessOreRecipe; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.ICarvingVariation; +import com.cricketcraft.chisel.api.carving.IVariationInfo; +import com.cricketcraft.chisel.api.carving.CarvingUtils.SimpleCarvingGroup; +import com.cricketcraft.chisel.api.rendering.TextureType; +import com.google.common.collect.Lists; + +import static team.chisel.init.ChiselBlocks.*; +import static team.chisel.utils.General.*; +import cpw.mods.fml.common.Loader; +import cpw.mods.fml.common.registry.EntityRegistry; +import cpw.mods.fml.common.registry.GameRegistry; + public enum Features { AE_CERTUS_QUARTZ("appliedenergistics2") { @@ -126,13 +124,13 @@ public enum Features { @Override void addBlocks() { BlockCarvable andesite = (BlockCarvable) new BlockCarvable(Material.rock).setHardness(2.0F).setResistance(10.0F).setCreativeTab(ChiselTabs.tabStoneChiselBlocks); - andesite.carverHelper.addVariation(Configurations.imTooGoodForDescriptions ? "" : "tile.andesite.0.desc", 0, "andesite/andesite"); + andesite.carverHelper.addVariation(Configurations.imTooGoodForDescriptions ? "" : "tile.andesite.0.desc", 0, "andesite/andesite"); andesite.carverHelper.addVariation("tile.andesite.1.desc", 1, "andesite/andesitePolished"); - andesite.carverHelper.addVariation("tile.andesite.2.desc", 2, "andesite/andesitePillar"); - andesite.carverHelper.addVariation("tile.andesite.3.desc", 3, "andesite/andesiteLBrick"); - andesite.carverHelper.addVariation("tile.andesite.4.desc", 4, "andesite/andesiteOrnate"); - andesite.carverHelper.addVariation("tile.andesite.5.desc", 5, "andesite/andesitePrism"); - andesite.carverHelper.addVariation("tile.andesite.6.desc", 6, "andesite/andesiteTiles"); + andesite.carverHelper.addVariation("tile.andesite.2.desc", 2, "andesite/andesitePillar"); + andesite.carverHelper.addVariation("tile.andesite.3.desc", 3, "andesite/andesiteLBrick"); + andesite.carverHelper.addVariation("tile.andesite.4.desc", 4, "andesite/andesiteOrnate"); + andesite.carverHelper.addVariation("tile.andesite.5.desc", 5, "andesite/andesitePrism"); + andesite.carverHelper.addVariation("tile.andesite.6.desc", 6, "andesite/andesiteTiles"); andesite.carverHelper.registerAll(andesite, "andesite"); andesite.carverHelper.registerOre("blockAndesite"); andesite.carverHelper.registerOre("stoneAndesite"); @@ -167,8 +165,8 @@ public enum Features { if (meta == 0) { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ChiselBlocks.antiBlock, 8, 15), "SSS", "SGS", "SSS", 'S', "stone", 'G', "dustGlowstone")); } - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ChiselBlocks.antiBlock, 8, meta), "BBB", "BdB", "BBB", - 'd', dyeOres[meta], 'B', new ItemStack(ChiselBlocks.antiBlock, 1, OreDictionary.WILDCARD_VALUE))); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ChiselBlocks.antiBlock, 8, meta), "BBB", "BdB", "BBB", 'd', dyeOres[meta], 'B', new ItemStack(ChiselBlocks.antiBlock, 1, + OreDictionary.WILDCARD_VALUE))); } @Override @@ -191,11 +189,11 @@ public enum Features { arcane.carverHelper.addVariation("tile.arcane.4.desc", 4, "arcane/runesGlow"); arcane.carverHelper.addVariation("tile.arcane.5.desc", 5, "arcane/bigBrick"); arcane.carverHelper.addVariation("tile.arcane.6.desc", 6, "arcane/conduitGlowAnim"); - arcane.carverHelper.addVariation("tile.arcane.7.desc", 7, "arcane/BorderBrain"); - arcane.carverHelper.addVariation("tile.arcane.8.desc", 8, "arcane/ArcaneBorder"); - arcane.carverHelper.addVariation("tile.arcane.9.desc", 9, "arcane/arcaneMatrix"); - arcane.carverHelper.addVariation("tile.arcane.10.desc", 10, "arcane/thaumcraftLogo"); - arcane.carverHelper.addVariation("tile.arcane.11.desc", 11, "arcane/arcaneCrackAnim"); + arcane.carverHelper.addVariation("tile.arcane.7.desc", 7, "arcane/BorderBrain"); + arcane.carverHelper.addVariation("tile.arcane.8.desc", 8, "arcane/ArcaneBorder"); + arcane.carverHelper.addVariation("tile.arcane.9.desc", 9, "arcane/arcaneMatrix"); + arcane.carverHelper.addVariation("tile.arcane.10.desc", 10, "arcane/thaumcraftLogo"); + arcane.carverHelper.addVariation("tile.arcane.11.desc", 11, "arcane/arcaneCrackAnim"); arcane.carverHelper.registerAll(arcane, "arcane"); Carving.chisel.registerOre("arcane", "arcane"); } @@ -251,11 +249,12 @@ public enum Features { }, BEACON { + @Override - void addBlocks(){ + void addBlocks() { BlockCarvableBeacon beacon = (BlockCarvableBeacon) new BlockCarvableBeacon().setCreativeTab(ChiselTabs.tabOtherChiselBlocks); Carving.chisel.addVariation("beacon", Blocks.beacon, 0, 0); - for(int meta = 0; meta < 16; meta++){ + for (int meta = 0; meta < 16; meta++) { beacon.carverHelper.addVariation("tile.beacon." + ItemDye.field_150923_a[meta] + ".desc", meta, "beacon", (meta + 1)); } beacon.carverHelper.registerAll(beacon, "beacon"); @@ -392,8 +391,8 @@ public enum Features { @Override void addBlocks() { - BlockCarvableCarpet carpet = (BlockCarvableCarpet) new BlockCarvableCarpet(Material.cloth).setCreativeTab(ChiselTabs.tabOtherChiselBlocks).setHardness(0.1F).setStepSound(Block.soundTypeCloth) - .setLightOpacity(0).setStepSound(Block.soundTypeCloth); + BlockCarvableCarpet carpet = (BlockCarvableCarpet) new BlockCarvableCarpet(Material.cloth).setCreativeTab(ChiselTabs.tabOtherChiselBlocks).setHardness(0.1F) + .setStepSound(Block.soundTypeCloth).setLightOpacity(0).setStepSound(Block.soundTypeCloth); carpet.carverHelper.addVariation("tile.carpet.0.desc", 0, new SubmapManagerCarpetFloor("white")); carpet.carverHelper.addVariation("tile.carpet.1.desc", 1, new SubmapManagerCarpetFloor("orange")); @@ -580,8 +579,7 @@ public enum Features { } }, - COPPER - { + COPPER { @Override void addBlocks() { @@ -617,7 +615,7 @@ public enum Features { diamond_block.carverHelper.addVariation("tile.diamond.10.desc", 10, "diamond/terrain-diamond-fourornate"); diamond_block.carverHelper.addVariation("tile.diamond.11.desc", 11, "diamond/terrain-diamond-zelda"); diamond_block.carverHelper.addVariation("tile.diamond.12.desc", 12, "diamond/terrain-diamond-ornatelayer"); - diamond_block.carverHelper.registerAll(diamond_block, "diamond_block"); + diamond_block.carverHelper.registerAll(diamond_block, "diamond_block"); Carving.chisel.registerOre("diamond_block", "blockDiamond"); } }, @@ -628,13 +626,13 @@ public enum Features { void addBlocks() { BlockCarvable diorite = (BlockCarvable) new BlockCarvable(Material.rock).setHardness(2.0F).setResistance(10.0F).setCreativeTab(ChiselTabs.tabStoneChiselBlocks); - diorite.carverHelper.addVariation(Configurations.imTooGoodForDescriptions ? "" : "tile.diorite.0.desc", 0, "diorite/diorite"); + diorite.carverHelper.addVariation(Configurations.imTooGoodForDescriptions ? "" : "tile.diorite.0.desc", 0, "diorite/diorite"); diorite.carverHelper.addVariation("tile.diorite.1.desc", 1, "diorite/dioritePolished"); diorite.carverHelper.addVariation("tile.diorite.2.desc", 2, "diorite/dioritePillar"); - diorite.carverHelper.addVariation("tile.diorite.3.desc", 3, "diorite/dioriteLBrick"); - diorite.carverHelper.addVariation("tile.diorite.4.desc", 4, "diorite/dioriteOrnate"); - diorite.carverHelper.addVariation("tile.diorite.5.desc", 5, "diorite/dioritePrism"); - diorite.carverHelper.addVariation("tile.diorite.6.desc", 6, "diorite/dioriteTiles"); + diorite.carverHelper.addVariation("tile.diorite.3.desc", 3, "diorite/dioriteLBrick"); + diorite.carverHelper.addVariation("tile.diorite.4.desc", 4, "diorite/dioriteOrnate"); + diorite.carverHelper.addVariation("tile.diorite.5.desc", 5, "diorite/dioritePrism"); + diorite.carverHelper.addVariation("tile.diorite.6.desc", 6, "diorite/dioriteTiles"); diorite.carverHelper.registerAll(diorite, "diorite"); diorite.carverHelper.registerOre("blockDiorite"); diorite.carverHelper.registerOre("stoneDiorite"); @@ -701,16 +699,30 @@ public enum Features { } }, - END_STONE { + END_STONE { - @Override - void addBlocks() { - //BlockCarvable end_stone = (BlockCarvable) new BlockCarvable(Material.rock).setHardness(2.0F).setResistance(10.0F).setCreativeTab(ChiselTabs.tabStoneChiselBlocks); - Carving.chisel.addVariation("end_stone", Blocks.end_stone , 0, 0); - //end_stone.carverHelper.registerAll(emerald_block, "endStone"); - Carving.chisel.registerOre("end_stone", "end_stone"); - } - }, + @Override + void addBlocks() { + BlockCarvable end_Stone = (BlockCarvable) new BlockCarvable(Material.rock).setHardness(2.0F).setResistance(10.0F).setCreativeTab(ChiselTabs.tabStoneChiselBlocks); + Carving.chisel.addVariation("end_Stone", Blocks.end_stone, 0, -1); + end_Stone.carverHelper.addVariation("tile.end_Stone.0.desc", 0, "endstone/end_bricks"); + end_Stone.carverHelper.addVariation("tile.end_Stone.1.desc", 1, "endstone/chaoticBricks"); + end_Stone.carverHelper.addVariation("tile.end_Stone.2.desc", 2, "endstone/CheckeredTile"); + end_Stone.carverHelper.addVariation("tile.end_Stone.3.desc", 3, "endstone/enderCircuit"); + end_Stone.carverHelper.addVariation("tile.end_Stone.4.desc", 4, "endstone/endFrenchBricks"); + end_Stone.carverHelper.addVariation("tile.end_Stone.5.desc", 5, "endstone/endPillar"); + end_Stone.carverHelper.addVariation("tile.end_Stone.6.desc", 6, "endstone/endStoneEtched"); + end_Stone.carverHelper.addVariation("tile.end_Stone.7.desc", 7, "endstone/prismaticEndStone"); + end_Stone.carverHelper.addVariation("tile.end_Stone.8.desc", 8, "endstone/endStoneChunk"); + end_Stone.carverHelper.addVariation("tile.end_Stone.9.desc", 9, "endstone/EnderFrame", new SubmapManagerCombinedCTM(9, "endstone/EnderFrame", TextureType.V9)); + end_Stone.carverHelper.addVariation("tile.end_Stone.10.desc", 10, "endstone/arcaneEndStone"); + end_Stone.carverHelper.addVariation("tile.end_Stone.11.desc", 11, "endstone/framedEndStone"); + end_Stone.carverHelper.addVariation("tile.end_Stone.12.desc", 12, "endstone/endStoneOrnate"); + end_Stone.carverHelper.addVariation("tile.end_Stone.13.desc", 13, "endstone/endStoneLargeTile"); + end_Stone.carverHelper.registerAll(end_Stone, "end_Stone"); + Carving.chisel.registerOre("end_Stone", "end_Stone"); + } + }, FACTORY { @@ -822,14 +834,14 @@ public enum Features { futura.carverHelper.addVariation("tile.futura.5.desc", 5, "futura/WIP/controller", new SubmapManagerFakeController(5, "futura/WIP/uberWavy")); futura.carverHelper.registerAll(futura, "futura"); - BlockCarvable circuits = (BlockCarvable) new BlockCarvableGlow("animations/strobe").setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10.0F); - for (int i = 0; i < 16; i++) { - circuits.carverHelper.addVariation("tile.futuraCircuit." + ItemDye.field_150921_b[i] + ".desc", i, "futura/circuitPlate", (i+20)); - } + BlockCarvable circuits = (BlockCarvable) new BlockCarvableGlow("animations/strobe").setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10.0F); + for (int i = 0; i < 16; i++) { + circuits.carverHelper.addVariation("tile.futuraCircuit." + ItemDye.field_150921_b[i] + ".desc", i, "futura/circuitPlate", (i + 20)); + } - circuits.carverHelper.registerBlock(circuits, "futuraCircuit"); - circuits.carverHelper.registerVariations("futura"); - Carving.chisel.registerOre("futura", "futura"); + circuits.carverHelper.registerBlock(circuits, "futuraCircuit"); + circuits.carverHelper.registerVariations("futura"); + Carving.chisel.registerOre("futura", "futura"); } @Override @@ -864,8 +876,8 @@ public enum Features { BlockCarvableGlass glass2 = (BlockCarvableGlass) new BlockCarvableGlass().setCreativeTab(ChiselTabs.tabOtherChiselBlocks).setHardness(0.3F).setStepSound(Block.soundTypeGlass); glass2.carverHelper.addVariation("tile.glass2.0.desc", 0, "glass/chrono", 20); - glass2.carverHelper.registerBlock(glass2, "glass2"); - glass2.carverHelper.registerVariations("glass"); + glass2.carverHelper.registerBlock(glass2, "glass2"); + glass2.carverHelper.registerVariations("glass"); } }, @@ -1000,18 +1012,18 @@ public enum Features { gold_block.carverHelper.addVariation("tile.gold.13.desc", 13, "gold/terrain-gold-spaceblack"); gold_block.carverHelper.addVariation("tile.gold.14.desc", 14, "gold/terrain-gold-simple"); - BlockCarvable gold2 = (BlockCarvable) new BlockBeaconBase(Material.iron).setStepSound(Block.soundTypeMetal).setCreativeTab(ChiselTabs.tabModdedChiselBlocks).setHardness(5F) - .setResistance(10F); - gold2.carverHelper.addVariation("tile.metalOre.0.desc", 0, "metals/gold/caution", 20); - gold2.carverHelper.addVariation("tile.metalOre.1.desc", 1, "metals/gold/crate", 21); - gold2.carverHelper.addVariation("tile.metalOre.2.desc", 2, "metals/gold/thermal", 22); - gold2.carverHelper.addVariation("tile.metalOre.3.desc", 3, "metals/gold/adv", 23); - gold2.carverHelper.addVariation("tile.metalOre.4.desc", 4, "metals/gold/egregious", 24); - gold2.carverHelper.addVariation("tile.metalOre.5.desc", 5, "metals/gold/bolted", 25); - gold2.carverHelper.registerBlock(gold2, "gold2"); - gold2.carverHelper.registerVariations("gold_block"); + BlockCarvable gold2 = (BlockCarvable) new BlockBeaconBase(Material.iron).setStepSound(Block.soundTypeMetal).setCreativeTab(ChiselTabs.tabModdedChiselBlocks).setHardness(5F) + .setResistance(10F); + gold2.carverHelper.addVariation("tile.metalOre.0.desc", 0, "metals/gold/caution", 20); + gold2.carverHelper.addVariation("tile.metalOre.1.desc", 1, "metals/gold/crate", 21); + gold2.carverHelper.addVariation("tile.metalOre.2.desc", 2, "metals/gold/thermal", 22); + gold2.carverHelper.addVariation("tile.metalOre.3.desc", 3, "metals/gold/adv", 23); + gold2.carverHelper.addVariation("tile.metalOre.4.desc", 4, "metals/gold/egregious", 24); + gold2.carverHelper.addVariation("tile.metalOre.5.desc", 5, "metals/gold/bolted", 25); + gold2.carverHelper.registerBlock(gold2, "gold2"); + gold2.carverHelper.registerVariations("gold_block"); - gold_block.carverHelper.registerAll(gold_block, "gold_block"); + gold_block.carverHelper.registerAll(gold_block, "gold_block"); Carving.chisel.registerOre("gold_block", "blockGold"); } }, @@ -1022,13 +1034,13 @@ public enum Features { void addBlocks() { BlockCarvable granite = (BlockCarvable) new BlockCarvable(Material.rock).setHardness(2.0F).setResistance(10.0F).setCreativeTab(ChiselTabs.tabStoneChiselBlocks); - granite.carverHelper.addVariation(Configurations.imTooGoodForDescriptions ? "" : "tile.granite.0.desc", 0, "granite/granite"); + granite.carverHelper.addVariation(Configurations.imTooGoodForDescriptions ? "" : "tile.granite.0.desc", 0, "granite/granite"); granite.carverHelper.addVariation("tile.granite.1.desc", 1, "granite/granitePolished"); granite.carverHelper.addVariation("tile.granite.2.desc", 2, "granite/granitePillar"); - granite.carverHelper.addVariation("tile.granite.3.desc", 3, "granite/graniteLBrick"); - granite.carverHelper.addVariation("tile.granite.4.desc", 4, "granite/graniteOrnate"); - granite.carverHelper.addVariation("tile.granite.5.desc", 5, "granite/granitePrism"); - granite.carverHelper.addVariation("tile.granite.6.desc", 6, "granite/graniteTiles"); + granite.carverHelper.addVariation("tile.granite.3.desc", 3, "granite/graniteLBrick"); + granite.carverHelper.addVariation("tile.granite.4.desc", 4, "granite/graniteOrnate"); + granite.carverHelper.addVariation("tile.granite.5.desc", 5, "granite/granitePrism"); + granite.carverHelper.addVariation("tile.granite.6.desc", 6, "granite/graniteTiles"); granite.carverHelper.registerAll(granite, "granite"); granite.carverHelper.registerOre("blockGranite"); granite.carverHelper.registerOre("stoneGranite"); @@ -1074,21 +1086,21 @@ public enum Features { @Override void addBlocks() { - BlockCarvable hexPlating = (BlockCarvable) new BlockCarvableGlow("animations/archetype2").setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(9001.0F); - for (int i = 0; i < 16; i++) { - hexPlating.carverHelper.addVariation("tile.hexPlating." + ItemDye.field_150921_b[i] + ".desc", i, "hexPlating/hexBase"); - } - hexPlating.carverHelper.registerAll(hexPlating, "hexPlating"); - Carving.chisel.registerOre("hexPlating", "hexPlating"); + BlockCarvable hexPlating = (BlockCarvable) new BlockCarvableGlow("animations/archetype2").setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2).setResistance(12); + for (int i = 0; i < 16; i++) { + hexPlating.carverHelper.addVariation("tile.hexPlating." + ItemDye.field_150921_b[i] + ".desc", i, "hexPlating/hexBase"); + } + hexPlating.carverHelper.registerAll(hexPlating, "hexPlating"); + Carving.chisel.registerOre("hexPlating", "hexPlating"); - BlockCarvable hexLargePlating = (BlockCarvable) new BlockCarvableGlow("animations/archetype2").setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(9001.0F); - for (int i = 0; i < 16; i++) { - hexLargePlating.carverHelper.addVariation("tile.hexPlating." + ItemDye.field_150921_b[i] + ".desc", i, "hexPlating/hexNew", (i+20)); - } + BlockCarvable hexLargePlating = (BlockCarvable) new BlockCarvableGlow("animations/archetype2").setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2).setResistance(12); + for (int i = 0; i < 16; i++) { + hexLargePlating.carverHelper.addVariation("tile.hexPlating." + ItemDye.field_150921_b[i] + ".desc", i, "hexPlating/hexNew", (i + 20)); + } - hexLargePlating.carverHelper.registerBlock(hexLargePlating, "hexLargePlating"); - hexLargePlating.carverHelper.registerVariations("hexPlating"); - Carving.chisel.registerOre("hexPlating", "hexPlating"); + hexLargePlating.carverHelper.registerBlock(hexLargePlating, "hexLargePlating"); + hexLargePlating.carverHelper.registerVariations("hexPlating"); + Carving.chisel.registerOre("hexPlating", "hexPlating"); } @Override @@ -1259,18 +1271,18 @@ public enum Features { iron_block.carverHelper.addVariation("tile.iron.14.desc", 14, "iron/terrain-iron-vents"); iron_block.carverHelper.addVariation("tile.iron.15.desc", 15, "iron/terrain-iron-simple"); - BlockCarvable iron2 = (BlockCarvable) new BlockBeaconBase(Material.iron).setStepSound(Block.soundTypeMetal).setCreativeTab(ChiselTabs.tabModdedChiselBlocks).setHardness(5F) - .setResistance(10F); - iron2.carverHelper.addVariation("tile.metalOre.0.desc", 0, "metals/iron/caution", 20); - iron2.carverHelper.addVariation("tile.metalOre.1.desc", 1, "metals/iron/crate", 21); - iron2.carverHelper.addVariation("tile.metalOre.2.desc", 2, "metals/iron/thermal", 22); - iron2.carverHelper.addVariation("tile.metalOre.3.desc", 3, "metals/iron/adv", 23); - iron2.carverHelper.addVariation("tile.metalOre.4.desc", 4, "metals/iron/egregious", 24); - iron2.carverHelper.addVariation("tile.metalOre.5.desc", 5, "metals/iron/bolted", 25); - iron2.carverHelper.registerBlock(iron2, "iron2"); - iron2.carverHelper.registerVariations("iron_block"); + BlockCarvable iron2 = (BlockCarvable) new BlockBeaconBase(Material.iron).setStepSound(Block.soundTypeMetal).setCreativeTab(ChiselTabs.tabModdedChiselBlocks).setHardness(5F) + .setResistance(10F); + iron2.carverHelper.addVariation("tile.metalOre.0.desc", 0, "metals/iron/caution", 20); + iron2.carverHelper.addVariation("tile.metalOre.1.desc", 1, "metals/iron/crate", 21); + iron2.carverHelper.addVariation("tile.metalOre.2.desc", 2, "metals/iron/thermal", 22); + iron2.carverHelper.addVariation("tile.metalOre.3.desc", 3, "metals/iron/adv", 23); + iron2.carverHelper.addVariation("tile.metalOre.4.desc", 4, "metals/iron/egregious", 24); + iron2.carverHelper.addVariation("tile.metalOre.5.desc", 5, "metals/iron/bolted", 25); + iron2.carverHelper.registerBlock(iron2, "iron2"); + iron2.carverHelper.registerVariations("iron_block"); - iron_block.carverHelper.registerAll(iron_block, "iron_block"); + iron_block.carverHelper.registerAll(iron_block, "iron_block"); Carving.chisel.registerOre("iron_block", "blockIron"); } }, @@ -1340,7 +1352,7 @@ public enum Features { lapis_block.carverHelper.addVariation("tile.lapis.7.desc", 7, "lapis/a1-blocklapis-smooth"); lapis_block.carverHelper.addVariation("tile.lapis.8.desc", 8, "lapis/a1-blocklapis-ornatelayer"); - lapis_block.carverHelper.registerAll(lapis_block, "lapis_block"); + lapis_block.carverHelper.registerAll(lapis_block, "lapis_block"); Carving.chisel.registerOre("lapis_block", "lapis"); } }, @@ -1393,6 +1405,7 @@ public enum Features { BlockLeaf leaves = (BlockLeaf) new BlockLeaf(Material.leaves).setCreativeTab(ChiselTabs.tabOtherChiselBlocks).setHardness(0.2F).setStepSound(Block.soundTypeGrass); Carving.chisel.addGroup(new SimpleCarvingGroup("leaves") { + @Override public List getVariations() { if (Configurations.chiselBackToVanillaLeaves) { return super.getVariations(); @@ -1680,38 +1693,37 @@ public enum Features { } }, - NATION { + NATION { - @Override - void addBlocks() { - BlockCarvable imperial = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10F); - imperial.carverHelper.addVariation("tile.imperial.0.desc", 0, "military/imperialCamo"); - imperial.carverHelper.addVariation("tile.imperial.1.desc", 1, "military/imperialCamoSecluded"); - imperial.carverHelper.addVariation("tile.imperial.2.desc", 2, "military/imperialPlate"); - imperial.carverHelper.addVariation("tile.imperial.3.desc", 3, "military/imperialCautionWhite"); - imperial.carverHelper.addVariation("tile.imperial.4.desc", 4, "military/imperialCautionOrange"); - imperial.carverHelper.registerBlock(imperial, "nation"); + @Override + void addBlocks() { + BlockCarvable imperial = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10F); + imperial.carverHelper.addVariation("tile.imperial.0.desc", 0, "military/imperialCamo"); + imperial.carverHelper.addVariation("tile.imperial.1.desc", 1, "military/imperialCamoSecluded"); + imperial.carverHelper.addVariation("tile.imperial.2.desc", 2, "military/imperialPlate"); + imperial.carverHelper.addVariation("tile.imperial.3.desc", 3, "military/imperialCautionWhite"); + imperial.carverHelper.addVariation("tile.imperial.4.desc", 4, "military/imperialCautionOrange"); + imperial.carverHelper.registerBlock(imperial, "nation"); - BlockCarvable rebel = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10F); - rebel.carverHelper.addVariation("tile.rebel.0.desc", 0, "military/rebelCamo", 20); - rebel.carverHelper.addVariation("tile.rebel.1.desc", 1, "military/rebelCamoSecluded", 21); - rebel.carverHelper.addVariation("tile.rebel.2.desc", 2, "military/rebelPlate", 22); - rebel.carverHelper.addVariation("tile.rebel.3.desc", 3, "military/rebelCautionWhite", 23); - rebel.carverHelper.addVariation("tile.rebel.4.desc", 4, "military/rebelCautionRed", 24); - rebel.carverHelper.registerBlock(rebel, "rebel"); + BlockCarvable rebel = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10F); + rebel.carverHelper.addVariation("tile.rebel.0.desc", 0, "military/rebelCamo", 20); + rebel.carverHelper.addVariation("tile.rebel.1.desc", 1, "military/rebelCamoSecluded", 21); + rebel.carverHelper.addVariation("tile.rebel.2.desc", 2, "military/rebelPlate", 22); + rebel.carverHelper.addVariation("tile.rebel.3.desc", 3, "military/rebelCautionWhite", 23); + rebel.carverHelper.addVariation("tile.rebel.4.desc", 4, "military/rebelCautionRed", 24); + rebel.carverHelper.registerBlock(rebel, "rebel"); - imperial.carverHelper.registerVariations("military"); - rebel.carverHelper.registerVariations("military"); + imperial.carverHelper.registerVariations("military"); + rebel.carverHelper.registerVariations("military"); - Carving.chisel.registerOre("military", "military"); - } + Carving.chisel.registerOre("military", "military"); + } - @Override - void addRecipes() { - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ChiselBlocks.rebel, 32, 0), new Object[] { "xyx", "yzy", "xyx", 'x', "stone", 'y', - Items.iron_ingot, 'z', Items.gold_nugget })); - } - }, + @Override + void addRecipes() { + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ChiselBlocks.rebel, 32, 0), new Object[] { "xyx", "yzy", "xyx", 'x', "stone", 'y', Items.iron_ingot, 'z', Items.gold_nugget })); + } + }, NETHER_BRICK { @@ -1780,7 +1792,8 @@ public enum Features { @Override void addBlocks() { - BlockCarvable obsidian = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(50.0F).setResistance(2000.0F).setStepSound(Block.soundTypeStone); + BlockCarvable obsidian = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(50.0F).setResistance(2000.0F) + .setStepSound(Block.soundTypeStone); Carving.chisel.addVariation("obsidian", Blocks.obsidian, 0, 0); obsidian.carverHelper.addVariation("tile.obsidian.1.desc", 1, "obsidian/pillar"); @@ -1799,7 +1812,7 @@ public enum Features { obsidian.carverHelper.addVariation("tile.obsidian.14.desc", 14, "obsidian/greek"); obsidian.carverHelper.addVariation("tile.obsidian.15.desc", 15, "obsidian/crate"); - obsidian.carverHelper.registerAll(obsidian, "obsidian"); + obsidian.carverHelper.registerAll(obsidian, "obsidian"); Carving.chisel.registerOre("obsidian", "obsidian"); } }, @@ -1829,6 +1842,7 @@ public enum Features { packedice.carverHelper.registerAll(packedice, "packedice"); Carving.chisel.registerOre("packedice", "packedice"); } + @Override void addRecipes() { GameRegistry.addRecipe(new ItemStack(ChiselBlocks.packedice_pillar, 6, 0), "XX", "XX", "XX", 'X', new ItemStack(ChiselBlocks.packedice, 1, OreDictionary.WILDCARD_VALUE)); @@ -1839,8 +1853,8 @@ public enum Features { @Override void addBlocks() { - BlockCarvablePackedIce packedice_pillar = (BlockCarvablePackedIce) new BlockCarvablePackedIce().setCreativeTab(ChiselTabs.tabOtherChiselBlocks) - .setHardness(0.5F).setLightOpacity(3).setStepSound(Block.soundTypeGlass); + BlockCarvablePackedIce packedice_pillar = (BlockCarvablePackedIce) new BlockCarvablePackedIce().setCreativeTab(ChiselTabs.tabOtherChiselBlocks).setHardness(0.5F).setLightOpacity(3) + .setStepSound(Block.soundTypeGlass); packedice_pillar.carverHelper.addVariation("tile.packedice_pillar.0.desc", 0, "icepillar/plainplain"); packedice_pillar.carverHelper.addVariation("tile.packedice_pillar.1.desc", 1, "icepillar/plaingreek"); @@ -1977,6 +1991,33 @@ public enum Features { } }, + PURPUR { + + @Override + void addBlocks() { + BlockCarvable purpur = (BlockCarvable) new BlockCarvable(Material.rock).setHardness(2.0F).setResistance(10.0F).setCreativeTab(ChiselTabs.tabStoneChiselBlocks); + purpur.carverHelper.addVariation("tile.purpur.0.desc", 0, "end_purpur/purpur_block"); + purpur.carverHelper.addVariation("tile.purpur.1.desc", 1, "end_purpur/purpur_pillar"); + purpur.carverHelper.addVariation("tile.purpur.2.desc", 2, "end_purpur/shulker"); + purpur.carverHelper.addVariation("tile.purpur.3.desc", 3, "end_purpur/tilePurpur"); + purpur.carverHelper.addVariation("tile.purpur.4.desc", 4, "end_purpur/tileBrokenPurpur"); + purpur.carverHelper.addVariation("tile.purpur.5.desc", 5, "end_purpur/prismaticPurpur"); + purpur.carverHelper.addVariation("tile.purpur.6.desc", 6, "end_purpur/purpurBricks"); + purpur.carverHelper.addVariation("tile.purpur.7.desc", 7, "end_purpur/purpurCobble"); + purpur.carverHelper.addVariation("tile.purpur.8.desc", 8, "end_purpur/arcanePurpur"); + purpur.carverHelper.addVariation("tile.purpur.9.desc", 9, "end_purpur/purpurLargeTile"); + purpur.carverHelper.addVariation("tile.purpur.10.desc", 10, "end_purpur/purpurOrnate"); + + purpur.carverHelper.registerAll(purpur, "purpur"); + Carving.chisel.registerOre("purpur", "purpur"); + } + + @Override + void addRecipes() { + GameRegistry.addShapelessRecipe(new ItemStack(ChiselBlocks.purpur), new ItemStack(Item.getItemFromBlock(Blocks.end_stone), 1), new ItemStack(Items.dye, 1, 5)); + } + }, + QUARTZ { @Override @@ -2148,7 +2189,7 @@ public enum Features { redstone_block.carverHelper.addVariation("tile.redstone_block.14.desc", 14, "redstone/a1-blockredstone-skullred"); redstone_block.carverHelper.addVariation("tile.redstone_block.15.desc", 15, "redstone/a1-blockredstone-redstonezelda"); - redstone_block.carverHelper.registerAll(redstone_block, "redstone_block"); + redstone_block.carverHelper.registerAll(redstone_block, "redstone_block"); Carving.chisel.registerOre("redstone_block", "redstone"); } }, @@ -2356,10 +2397,10 @@ public enum Features { } } - stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.0.desc", 0, "stonebrick2/masonBricksPlain", 16); - stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.1.desc", 1, "stonebrick2/masonBricksFelsic", 17); - stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.2.desc", 2, "stonebrick2/masonBricksMafic", 18); - stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.3.desc", 3, "stonebrick2/masonBricksMixed", 19); + stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.0.desc", 0, "stonebrick2/masonBricksPlain", 16); + stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.1.desc", 1, "stonebrick2/masonBricksFelsic", 17); + stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.2.desc", 2, "stonebrick2/masonBricksMafic", 18); + stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.3.desc", 3, "stonebrick2/masonBricksMixed", 19); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.4.desc", 4, "stonebrick/smallbricks"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.5.desc", 5, "stonebrick/largebricks"); stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.6.desc", 6, "stonebrick/smallchaotic"); @@ -2374,9 +2415,9 @@ public enum Features { stonebricksmooth.carverHelper.addVariation("tile.stonebricksmooth.15.desc", 15, "stonebrick/poison"); stonebricksmooth.carverHelper.registerAll(stonebricksmooth, "stonebricksmooth"); - Carving.chisel.registerOre("stonebricksmooth", "stonebricksmooth"); + Carving.chisel.registerOre("stonebricksmooth", "stonebricksmooth"); - //Carving.chisel.addVariation("stonebricksmooth", GameRegistry.findBlock("Chisel-2", "tile.TFTowerStone"), 0, 0); + // Carving.chisel.addVariation("stonebricksmooth", GameRegistry.findBlock("Chisel-2", "tile.TFTowerStone"), 0, 0); } }, @@ -2414,31 +2455,47 @@ public enum Features { technical.carverHelper.addVariation("tile.technical.13.desc", 13, "technical/grate"); technical.carverHelper.addVariation("tile.technical.14.desc", 14, "technical/malfunctionFan"); technical.carverHelper.addVariation("tile.technical.15.desc", 15, "technical/grateRusty"); - technical.carverHelper.registerAll(technical, "technical"); + technical.carverHelper.registerAll(technical, "technical"); BlockCarvableGlass technical2 = (BlockCarvableGlass) new BlockCarvableGlass().setHardness(2.0F).setResistance(10F); technical2.carverHelper.addVariation("tile.technical.0.desc", 0, "technical/scaffoldTransparent", 20); technical2.carverHelper.addVariation("tile.technical.4.desc", 1, "technical/fanFastTransparent", 21); technical2.carverHelper.addVariation("tile.technical.6.desc", 2, "technical/fanStillTransparent", 22); technical2.carverHelper.addVariation("tile.technical.14.desc", 3, "technical/fanStillTransparent", 23); - technical2.carverHelper.registerBlock(technical2, "technical2"); - technical2.carverHelper.registerVariations("technical"); + technical2.carverHelper.registerBlock(technical2, "technical2"); + technical2.carverHelper.registerVariations("technical"); - BlockCarvable technical3 = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10F); - technical3.carverHelper.addVariation("tile.technical3.0.desc", 0, "technical/massiveFan", 40); - technical3.carverHelper.addVariation("tile.technical3.1.desc", 1, "technical/massiveHexPlating", 41); - technical2.carverHelper.registerBlock(technical3, "technical3"); - technical2.carverHelper.registerVariations("technical"); + BlockCarvable technicalLarge = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10F); + technicalLarge.carverHelper.addVariation("tile.technical3.0.desc", 0, "technical/massiveFan", 40); + technicalLarge.carverHelper.addVariation("tile.technical3.1.desc", 1, "technical/massiveHexPlating", 41); + technicalLarge.carverHelper.registerBlock(technicalLarge, "technical3"); + technicalLarge.carverHelper.registerVariations("technical"); - Carving.chisel.registerOre("technical", "technical"); + BlockCarvable technical4 = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabMetalChiselBlocks).setHardness(2.0F).setResistance(10F); + technical4.carverHelper.addVariation("tile.technical4.0.desc", 0, "technical/new/weatheredGreenPanels"); + technical4.carverHelper.addVariation("tile.technical4.1.desc", 1, "technical/new/weatheredOrangePanels"); + technical4.carverHelper.addVariation("tile.technical4.2.desc", 2, "technical/new/Sturdy"); + technical4.carverHelper.addVariation("tile.technical4.3.desc", 3, "technical/new/MegaCell"); + technical4.carverHelper + .addVariation("tile.technical4.4.desc", 4, "technical/new/ExhaustPlating"/* , new SubmapManagerCombinedCTM(4, "technical/new/test/ExhaustPlating", TextureType.R4) */); + technical4.carverHelper.addVariation("tile.technical4.5.desc", 5, "technical/new/MakeshiftPanels"); + technical4.carverHelper.addVariation("tile.technical4.6.desc", 6, "technical/new/Piping"); + // The animation is malfunctioning. :( + // technical4.carverHelper.addVariation("tile.technical4.7.desc", 7, "technical/new/TapeDrive"); + technical4.carverHelper.registerBlock(technical4, "technical4"); + technical4.carverHelper.registerVariations("technical"); + + Carving.chisel.registerOre("technical", "technical"); } @Override void addRecipes() { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ChiselBlocks.technical, Configurations.factoryBlockAmount, 0), new Object[] { "xyx", "yxy", "xyx", 'x', "stone", 'y', Items.iron_ingot })); - /*GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ChiselBlocks.technical2, Configurations.factoryBlockAmount, 0), new Object[] { "xyx", "yzy", "xyx", 'x', "stone", 'y', - "ingotIron", 'z', Blocks.glass })); //*/ + /* + * GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ChiselBlocks.technical2, Configurations.factoryBlockAmount, 0), new Object[] { "xyx", "yzy", "xyx", 'x', "stone", 'y', + * "ingotIron", 'z', Blocks.glass })); // + */ } }, @@ -2701,8 +2758,7 @@ public enum Features { voidstone.carverHelper.registerAll(voidstone, "voidstone"); Carving.chisel.registerOre("voidstone", "voidstone"); - BlockCarvable voidstone2 = (BlockCarvable) new BlockCarvable().setStepSound(Block.soundTypeStone) - .setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(5.0F).setResistance(10.0F); + BlockCarvable voidstone2 = (BlockCarvable) new BlockCarvable().setStepSound(Block.soundTypeStone).setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(5.0F).setResistance(10.0F); voidstone2.carverHelper.addVariation("tile.voidstone.0.desc", 0, new SubmapManagerVoidstone("voidstone/animated/raw", 0)); voidstone2.carverHelper.addVariation("tile.voidstone.1.desc", 1, new SubmapManagerVoidstone("voidstone/animated/quarters", 1)); voidstone2.carverHelper.addVariation("tile.voidstone.2.desc", 2, new SubmapManagerVoidstone("voidstone/animated/smooth", 2)); @@ -2717,7 +2773,6 @@ public enum Features { BlockCarvable voidstonerunic = (BlockCarvable) new BlockCarvable(Material.rock).setCreativeTab(ChiselTabs.tabStoneChiselBlocks).setHardness(5.0F).setResistance(10.0F); - for (int i = 1; i < 16; i++) voidstonerunic.carverHelper.addVariation("tile.voidstoneRunic." + sGNames[i].replaceAll(" ", "").toLowerCase() + ".desc", i, "voidstone/runes/rune" + sGNames[i].replaceAll(" ", "")); voidstonerunic.carverHelper.registerAll(voidstonerunic, "voidstoneRunic"); @@ -2852,7 +2907,6 @@ public enum Features { void addBlocks() { BlockCarvable woolen_clay = (BlockCarvable) new BlockCarvable(Material.clay).setCreativeTab(ChiselTabs.tabOtherChiselBlocks).setHardness(2F).setResistance(10F); - for (int i = 0; i < 16; i++) woolen_clay.carverHelper.addVariation("tile.woolenClay." + i + ".desc", i, "woolenClay/" + sGNames[i].replaceAll(" ", "").toLowerCase()); woolen_clay.carverHelper.registerAll(woolen_clay, "woolen_clay"); diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockAutoChisel.java b/src/main/java/team/chisel/block/BlockAutoChisel.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/block/BlockAutoChisel.java rename to src/main/java/team/chisel/block/BlockAutoChisel.java index 6ade4931..21f38b70 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockAutoChisel.java +++ b/src/main/java/team/chisel/block/BlockAutoChisel.java @@ -1,5 +1,7 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; +import team.chisel.Chisel; +import team.chisel.block.tileentity.TileEntityAutoChisel; import net.minecraft.block.Block; import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; @@ -8,9 +10,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; - public class BlockAutoChisel extends BlockContainer { public BlockAutoChisel() { diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockBeaconBase.java b/src/main/java/team/chisel/block/BlockBeaconBase.java similarity index 91% rename from src/main/java/com/cricketcraft/chisel/block/BlockBeaconBase.java rename to src/main/java/team/chisel/block/BlockBeaconBase.java index 6abf5196..3bfecfda 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockBeaconBase.java +++ b/src/main/java/team/chisel/block/BlockBeaconBase.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import net.minecraft.block.material.Material; import net.minecraft.world.IBlockAccess; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvable.java b/src/main/java/team/chisel/block/BlockCarvable.java similarity index 90% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvable.java rename to src/main/java/team/chisel/block/BlockCarvable.java index eb892c6e..dd2a7df9 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvable.java +++ b/src/main/java/team/chisel/block/BlockCarvable.java @@ -1,24 +1,21 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; +import com.cricketcraft.chisel.api.rendering.ClientUtils; + +import team.chisel.Chisel; +import team.chisel.init.ChiselTabs; 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 net.minecraft.world.IBlockAccess; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.api.ChiselAPIProps; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.init.ChiselTabs; -import com.cricketcraft.ctmlib.ClientUtils; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -73,6 +70,7 @@ public class BlockCarvable extends Block implements ICarvable { carverHelper.registerBlockIcons(Chisel.MOD_ID, this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item item, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); @@ -84,13 +82,13 @@ public class BlockCarvable extends Block implements ICarvable { } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } public static class SoundType extends Block.SoundType { @@ -180,5 +178,4 @@ public class BlockCarvable extends Block implements ICarvable { return this.soundNamePlace; } } - } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableAntiBlock.java b/src/main/java/team/chisel/block/BlockCarvableAntiBlock.java similarity index 88% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableAntiBlock.java rename to src/main/java/team/chisel/block/BlockCarvableAntiBlock.java index bf448935..2ac77918 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableAntiBlock.java +++ b/src/main/java/team/chisel/block/BlockCarvableAntiBlock.java @@ -1,11 +1,11 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; + +import com.cricketcraft.chisel.api.ICarvable; import net.minecraft.block.material.Material; import net.minecraft.entity.EnumCreatureType; import net.minecraft.world.IBlockAccess; -import com.cricketcraft.chisel.api.ICarvable; - public class BlockCarvableAntiBlock extends BlockCarvableColor implements ICarvable { public BlockCarvableAntiBlock() { @@ -14,6 +14,6 @@ public class BlockCarvableAntiBlock extends BlockCarvableColor implements ICarva @Override public boolean canCreatureSpawn(EnumCreatureType type, IBlockAccess world, int x, int y, int z) { - return false; + return false; } } diff --git a/src/main/java/team/chisel/block/BlockCarvableBeacon.java b/src/main/java/team/chisel/block/BlockCarvableBeacon.java new file mode 100644 index 00000000..b0ee3f4d --- /dev/null +++ b/src/main/java/team/chisel/block/BlockCarvableBeacon.java @@ -0,0 +1,74 @@ +package team.chisel.block; + +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; + +import team.chisel.block.tileentity.TileEntityCarvableBeacon; +import team.chisel.init.ChiselTabs; +import net.minecraft.block.BlockBeacon; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +public class BlockCarvableBeacon extends BlockBeacon implements ICarvable { + + public static int renderId; + + public CarvableHelper carverHelper; + + public BlockCarvableBeacon() { + super(); + setCreativeTab(ChiselTabs.tabOtherChiselBlocks); + setLightLevel(5.0F); + setBlockTextureName("beacon"); + carverHelper = new CarvableHelper(this); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + return new TileEntityCarvableBeacon(); + } + + @Override + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int par5, float hitX, float hitY, float hitZ) { + if (world.isRemote) { + return true; + } else { + TileEntityCarvableBeacon tileentitybeacon = (TileEntityCarvableBeacon) world.getTileEntity(x, y, z); + + if (tileentitybeacon != null) { + player.func_146104_a(tileentitybeacon); + } + + return true; + } + } + + @Override + public int getRenderType() { + return renderId; + } + + @Override + public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) { + super.onBlockPlacedBy(world, x, y, z, player, stack); + + if (stack.hasDisplayName()) { + ((TileEntityCarvableBeacon) world.getTileEntity(x, y, z)).func_145999_a(stack.getDisplayName()); + } + } + + @Override + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { + return carverHelper.getVariation(metadata); + } + + @Override + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); + } +} diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableBookshelf.java b/src/main/java/team/chisel/block/BlockCarvableBookshelf.java similarity index 84% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableBookshelf.java rename to src/main/java/team/chisel/block/BlockCarvableBookshelf.java index 5d809a1e..0d940f7d 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableBookshelf.java +++ b/src/main/java/team/chisel/block/BlockCarvableBookshelf.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; @@ -44,10 +44,15 @@ public class BlockCarvableBookshelf extends BlockCarvable { return Items.book; } - @Override - public int damageDropped(int damage){ - return 0; - } + @Override + public int damageDropped(int damage) { + return 0; + } + + @Override + public int getDamageValue(World world, int x, int y, int z) { + return world.getBlockMetadata(x, y, z); + } @Override public float getEnchantPowerBonus(World world, int x, int y, int z) { diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableCarpet.java b/src/main/java/team/chisel/block/BlockCarvableCarpet.java similarity index 81% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableCarpet.java rename to src/main/java/team/chisel/block/BlockCarvableCarpet.java index 9383506e..1700e870 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableCarpet.java +++ b/src/main/java/team/chisel/block/BlockCarvableCarpet.java @@ -1,21 +1,20 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; +import com.cricketcraft.chisel.api.rendering.ClientUtils; + import net.minecraft.block.BlockCarpet; 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 net.minecraft.world.IBlockAccess; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.ctmlib.ClientUtils; - public class BlockCarvableCarpet extends BlockCarpet implements ICarvable { public CarvableHelper carverHelper; @@ -44,23 +43,24 @@ public class BlockCarvableCarpet extends BlockCarpet implements ICarvable { carverHelper.registerBlockIcons("Chisel", this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item item, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); } - + @Override public int getRenderType() { return ClientUtils.renderCTMId; } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } } diff --git a/src/main/java/team/chisel/block/BlockCarvableColor.java b/src/main/java/team/chisel/block/BlockCarvableColor.java new file mode 100644 index 00000000..1d63b8c1 --- /dev/null +++ b/src/main/java/team/chisel/block/BlockCarvableColor.java @@ -0,0 +1,26 @@ +package team.chisel.block; + +import net.minecraft.block.material.Material; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + +public class BlockCarvableColor extends BlockCarvable { + + public BlockCarvableColor() { + this(Material.rock); + } + + public BlockCarvableColor(Material m) { + super(m); + } + + @Override + public boolean recolourBlock(World world, int x, int y, int z, ForgeDirection side, int color) { + int newColor = 15 - color; + if (world.getBlockMetadata(x, y, z) != newColor) { + world.setBlockMetadataWithNotify(x, y, z, newColor, 3); + return true; + } + return false; + } +} diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlass.java b/src/main/java/team/chisel/block/BlockCarvableGlass.java similarity index 82% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlass.java rename to src/main/java/team/chisel/block/BlockCarvableGlass.java index ec9a96b6..ced2665a 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlass.java +++ b/src/main/java/team/chisel/block/BlockCarvableGlass.java @@ -1,22 +1,20 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; +import com.cricketcraft.chisel.api.rendering.ClientUtils; + +import team.chisel.init.ChiselTabs; import net.minecraft.block.BlockGlass; 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 net.minecraft.world.IBlockAccess; - -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.init.ChiselTabs; -import com.cricketcraft.ctmlib.ClientUtils; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -67,19 +65,20 @@ public class BlockCarvableGlass extends BlockGlass implements ICarvable { carverHelper.registerBlockIcons("Chisel", this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item item, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } @Override diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlow.java b/src/main/java/team/chisel/block/BlockCarvableGlow.java similarity index 82% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlow.java rename to src/main/java/team/chisel/block/BlockCarvableGlow.java index af963c6c..e1cead80 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlow.java +++ b/src/main/java/team/chisel/block/BlockCarvableGlow.java @@ -1,12 +1,10 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; -import com.cricketcraft.chisel.client.render.SubmapManagerBase; +import team.chisel.Chisel; +import team.chisel.client.render.SubmapManagerBase; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; - -import com.cricketcraft.chisel.Chisel; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -29,7 +27,7 @@ public class BlockCarvableGlow extends BlockCarvableColor { this.glowTexturePath = glowTexture; } - public BlockCarvableGlow(Material material, String glowTexture, SubmapManagerBase submapManagerBase){ + public BlockCarvableGlow(Material material, String glowTexture, SubmapManagerBase submapManagerBase) { super(material); this.glowTexturePath = glowTexture; this.submapManagerBase = submapManagerBase; @@ -41,11 +39,11 @@ public class BlockCarvableGlow extends BlockCarvableColor { glowTexture = register.registerIcon(Chisel.MOD_ID + ":" + glowTexturePath); } - public boolean hasSubmapManager(){ + public boolean hasSubmapManager() { return submapManagerBase == null; } - public SubmapManagerBase getSubmapManager(){ + public SubmapManagerBase getSubmapManager() { return hasSubmapManager() ? submapManagerBase : null; } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlowstone.java b/src/main/java/team/chisel/block/BlockCarvableGlowstone.java similarity index 69% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlowstone.java rename to src/main/java/team/chisel/block/BlockCarvableGlowstone.java index c38c4fed..731e6047 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableGlowstone.java +++ b/src/main/java/team/chisel/block/BlockCarvableGlowstone.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; @@ -32,11 +32,11 @@ public class BlockCarvableGlowstone extends BlockCarvable { public int damageDropped(int i) { return 0; } + @Override - public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z, EntityPlayer player) - { - Block glowstone = world.getBlock(x, y, z); - int meta = world.getBlockMetadata(x, y, z); - return new ItemStack(Item.getItemFromBlock(glowstone), 1, meta); - } + public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z, EntityPlayer player) { + Block glowstone = world.getBlock(x, y, z); + int meta = world.getBlockMetadata(x, y, z); + return new ItemStack(Item.getItemFromBlock(glowstone), 1, meta); + } } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableIce.java b/src/main/java/team/chisel/block/BlockCarvableIce.java similarity index 85% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableIce.java rename to src/main/java/team/chisel/block/BlockCarvableIce.java index 49e601cd..6986d082 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableIce.java +++ b/src/main/java/team/chisel/block/BlockCarvableIce.java @@ -1,24 +1,23 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; +import com.cricketcraft.chisel.api.rendering.ClientUtils; + import net.minecraft.block.Block; import net.minecraft.block.BlockIce; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; import net.minecraft.stats.StatList; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.ctmlib.ClientUtils; - public class BlockCarvableIce extends BlockIce implements ICarvable { public CarvableHelper carverHelper; @@ -27,7 +26,7 @@ public class BlockCarvableIce extends BlockIce implements ICarvable { super(); carverHelper = new CarvableHelper(this); } - + @Override public int getRenderType() { return ClientUtils.renderCTMId; @@ -43,6 +42,7 @@ public class BlockCarvableIce extends BlockIce implements ICarvable { carverHelper.registerBlockIcons("Chisel", this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item item, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); @@ -64,12 +64,12 @@ public class BlockCarvableIce extends BlockIce implements ICarvable { } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableIceStairs.java b/src/main/java/team/chisel/block/BlockCarvableIceStairs.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableIceStairs.java rename to src/main/java/team/chisel/block/BlockCarvableIceStairs.java index 4f954edf..cc2cf87d 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableIceStairs.java +++ b/src/main/java/team/chisel/block/BlockCarvableIceStairs.java @@ -1,14 +1,14 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; +import com.cricketcraft.chisel.api.carving.CarvableHelper; + +import team.chisel.init.ChiselBlocks; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.world.World; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.init.ChiselBlocks; - public class BlockCarvableIceStairs extends BlockCarvableStairs { public BlockCarvableIceStairs(Block block, int meta, CarvableHelper helper) { diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableLamp.java b/src/main/java/team/chisel/block/BlockCarvableLamp.java similarity index 90% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableLamp.java rename to src/main/java/team/chisel/block/BlockCarvableLamp.java index de9214f5..806e5283 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableLamp.java +++ b/src/main/java/team/chisel/block/BlockCarvableLamp.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; @@ -63,12 +63,9 @@ public class BlockCarvableLamp extends BlockCarvable { } /* - * @Override public void updateTick(World world, int x, int y, int z, Random - * rand){ if (world.isRemote) return; + * @Override public void updateTick(World world, int x, int y, int z, Random rand){ if (world.isRemote) return; * - * if(powered && !world.isBlockIndirectlyGettingPowered(x, y, z)){ int - * meta=world.getBlockMetadata(x, y, z); world.setBlock(x, y, z, - * Block.redstoneLampIdle.blockID, meta, 2); } } + * if(powered && !world.isBlockIndirectlyGettingPowered(x, y, z)){ int meta=world.getBlockMetadata(x, y, z); world.setBlock(x, y, z, Block.redstoneLampIdle.blockID, meta, 2); } } */ @Override diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableLayered.java b/src/main/java/team/chisel/block/BlockCarvableLayered.java similarity index 91% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableLayered.java rename to src/main/java/team/chisel/block/BlockCarvableLayered.java index 2cf740ab..02889ac7 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableLayered.java +++ b/src/main/java/team/chisel/block/BlockCarvableLayered.java @@ -1,15 +1,14 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; +import team.chisel.Chisel; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; - -import com.cricketcraft.chisel.Chisel; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class BlockCarvableLayered extends BlockCarvable { + @SideOnly(Side.CLIENT) private IIcon baseTexture; private String baseTexLocation; @@ -18,14 +17,17 @@ public class BlockCarvableLayered extends BlockCarvable { super(mat); this.baseTexLocation = baseTexLocation; } + @Override public void registerBlockIcons(IIconRegister register) { super.registerBlockIcons(register); baseTexture = register.registerIcon(Chisel.MOD_ID + ":" + baseTexLocation); } + public IIcon getBaseTex() { return baseTexture; } + @Override public int getRenderType() { return Chisel.renderLayeredId; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePackedIce.java b/src/main/java/team/chisel/block/BlockCarvablePackedIce.java similarity index 87% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvablePackedIce.java rename to src/main/java/team/chisel/block/BlockCarvablePackedIce.java index e3d2eba2..22c97afe 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePackedIce.java +++ b/src/main/java/team/chisel/block/BlockCarvablePackedIce.java @@ -1,8 +1,13 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; import java.util.Random; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; +import com.cricketcraft.chisel.api.rendering.ClientUtils; + import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; @@ -10,17 +15,11 @@ import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; import net.minecraft.stats.StatList; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.ctmlib.ClientUtils; - public class BlockCarvablePackedIce extends Block implements ICarvable { public CarvableHelper carverHelper; @@ -35,7 +34,7 @@ public class BlockCarvablePackedIce extends Block implements ICarvable { public int getRenderType() { return ClientUtils.renderCTMId; } - + @Override public IIcon getIcon(int side, int metadata) { return carverHelper.getIcon(side, metadata); @@ -51,6 +50,7 @@ public class BlockCarvablePackedIce extends Block implements ICarvable { carverHelper.registerBlockIcons("Chisel", this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item item, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); @@ -72,12 +72,12 @@ public class BlockCarvablePackedIce extends Block implements ICarvable { } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePackedIceStairs.java b/src/main/java/team/chisel/block/BlockCarvablePackedIceStairs.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvablePackedIceStairs.java rename to src/main/java/team/chisel/block/BlockCarvablePackedIceStairs.java index 2cd199dd..d3d1cf3a 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePackedIceStairs.java +++ b/src/main/java/team/chisel/block/BlockCarvablePackedIceStairs.java @@ -1,14 +1,14 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; +import com.cricketcraft.chisel.api.carving.CarvableHelper; + +import team.chisel.init.ChiselBlocks; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.world.World; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.init.ChiselBlocks; - public class BlockCarvablePackedIceStairs extends BlockCarvableStairs { public BlockCarvablePackedIceStairs(Block block, int meta, CarvableHelper helper) { diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePane.java b/src/main/java/team/chisel/block/BlockCarvablePane.java similarity index 81% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvablePane.java rename to src/main/java/team/chisel/block/BlockCarvablePane.java index 57685247..e4e9f63c 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePane.java +++ b/src/main/java/team/chisel/block/BlockCarvablePane.java @@ -1,22 +1,20 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; + +import team.chisel.client.render.RendererCTMPane; +import team.chisel.init.ChiselTabs; import net.minecraft.block.BlockPane; 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 net.minecraft.world.IBlockAccess; - -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.client.render.RendererCTMPane; -import com.cricketcraft.chisel.init.ChiselTabs; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -64,18 +62,19 @@ public class BlockCarvablePane extends BlockPane implements ICarvable { carverHelper.registerBlockIcons("Chisel", this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item item, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePowered.java b/src/main/java/team/chisel/block/BlockCarvablePowered.java similarity index 60% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvablePowered.java rename to src/main/java/team/chisel/block/BlockCarvablePowered.java index f922b9da..b6f7fa43 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvablePowered.java +++ b/src/main/java/team/chisel/block/BlockCarvablePowered.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import net.minecraft.block.material.Material; import net.minecraft.world.IBlockAccess; @@ -10,8 +10,7 @@ public class BlockCarvablePowered extends BlockCarvable { } /** - * Can this block provide power. Only wire currently seems to have this - * change based on its state. + * Can this block provide power. Only wire currently seems to have this change based on its state. */ @Override public boolean canProvidePower() { @@ -19,11 +18,8 @@ public class BlockCarvablePowered extends BlockCarvable { } /** - * Returns true if the block is emitting indirect/weak redstone power on the - * specified side. If isBlockNormalCube returns true, standard redstone - * propagation rules will apply instead and this will not be called. Args: - * World, X, Y, Z, side. Note that the side is reversed - eg it is 1 (up) - * when checking the bottom of the block. + * Returns true if the block is emitting indirect/weak redstone power on the specified side. If isBlockNormalCube returns true, standard redstone propagation rules will apply instead and this will + * not be called. Args: World, X, Y, Z, side. Note that the side is reversed - eg it is 1 (up) when checking the bottom of the block. */ @Override public int isProvidingWeakPower(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5) { diff --git a/src/main/java/team/chisel/block/BlockCarvablePumpkin.java b/src/main/java/team/chisel/block/BlockCarvablePumpkin.java new file mode 100644 index 00000000..5af4e17b --- /dev/null +++ b/src/main/java/team/chisel/block/BlockCarvablePumpkin.java @@ -0,0 +1,125 @@ +package team.chisel.block; + +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; + +import team.chisel.Chisel; +import team.chisel.entity.EntityChiselSnowman; +import net.minecraft.block.Block; +import net.minecraft.block.BlockPumpkin; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.monster.EntityIronGolem; +import net.minecraft.init.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +public class BlockCarvablePumpkin extends BlockPumpkin implements ICarvable { + + public CarvableHelper carverHelper; + + @SideOnly(Side.CLIENT) + private IIcon top, face; + + private String faceLocation; + + public BlockCarvablePumpkin(boolean isOn) { + super(isOn); + this.setStepSound(Block.soundTypeWood); + if (isOn) + setLightLevel(10.0F); + carverHelper = new CarvableHelper(this); + } + + @Override + public void onBlockAdded(World world, int x, int y, int z) { + if (world.getBlock(x, y - 1, z) == Blocks.snow && world.getBlock(x, y - 2, z) == Blocks.snow) { + if (!world.isRemote) { + // Let's grab the pumpkin before we start + ItemStack pumpkin = new ItemStack(world.getBlock(x, y, z), world.getBlockMetadata(x, y, z)); + + world.setBlock(x, y, z, Blocks.air, 0, 2); + world.setBlock(x, y - 1, z, Blocks.air, 0, 2); + world.setBlock(x, y - 2, z, Blocks.air, 0, 2); + EntityChiselSnowman snowman = new EntityChiselSnowman(world); + snowman.setCurrentItemOrArmor(2, pumpkin); + snowman.setLocationAndAngles(x + 0.5D, y - 1.95D, z + 0.5D, 0.0F, 0.0F); + world.spawnEntityInWorld(snowman); + world.notifyBlockChange(x, y, z, Blocks.air); + world.notifyBlockChange(x, y - 1, z, Blocks.air); + world.notifyBlockChange(x, y - 2, z, Blocks.air); + } + + // Spawn some lovely particles + for (int c = 0; c < 120; ++c) { + world.spawnParticle("snowshovel", x + world.rand.nextDouble(), y - 2 + world.rand.nextDouble() * 2.5D, z + world.rand.nextDouble(), 0.0D, 0.0D, 0.0D); + } + } else if (world.getBlock(x, y - 1, z) == Blocks.iron_block || world.getBlock(x, y - 2, z) == Blocks.iron_block) { + boolean flag = world.getBlock(x - 1, y - 1, z) == Blocks.iron_block && world.getBlock(x + 1, y - 1, z) == Blocks.iron_block; + boolean flag1 = world.getBlock(x, y - 1, z - 1) == Blocks.iron_block && world.getBlock(x, y - 1, z + 1) == Blocks.iron_block; + + if (flag || flag1) { + world.setBlock(x, y, z, Blocks.air, 0, 2); + world.setBlock(x, y - 1, z, Blocks.air, 0, 2); + world.setBlock(x, y - 2, z, Blocks.air, 0, 2); + + if (flag) { + world.setBlock(x - 1, y - 1, z, Blocks.air, 0, 2); + world.setBlock(x + 1, y - 1, z, Blocks.air, 0, 2); + } else { + world.setBlock(x, y - 1, z - 1, Blocks.air, 0, 2); + world.setBlock(x, y - 1, z + 1, Blocks.air, 0, 2); + } + + EntityIronGolem ironGolem = new EntityIronGolem(world); + ironGolem.setPlayerCreated(true); + ironGolem.setLocationAndAngles(x + 0.5D, y - 1.95D, z + 0.5D, 0.0F, 0.0F); + world.spawnEntityInWorld(ironGolem); + + world.notifyBlockChange(x, y, z, Blocks.air); + world.notifyBlockChange(x, y - 1, z, Blocks.air); + world.notifyBlockChange(x, y - 2, z, Blocks.air); + + if (flag) { + world.notifyBlockChange(x - 1, y - 1, z, Blocks.air); + world.notifyBlockChange(x + 1, y - 1, z, Blocks.air); + } else { + world.notifyBlockChange(x, y - 1, z - 1, Blocks.air); + world.notifyBlockChange(x, y - 1, z + 1, Blocks.air); + } + } + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + return side == 1 ? top : (side == 0 ? top : (meta == 2 && side == 2 ? face : (meta == 3 && side == 5 ? face + : (meta == 0 && side == 3 ? face : (meta == 1 && side == 4 ? face : this.blockIcon))))); + } + + @Override + public void registerBlockIcons(IIconRegister icon) { + top = icon.registerIcon(Chisel.MOD_ID + ":pumpkin/pumpkin_top"); + face = icon.registerIcon(Chisel.MOD_ID + ":" + faceLocation); + this.blockIcon = icon.registerIcon(Chisel.MOD_ID + ":pumpkin/pumpkin_side"); + } + + @Override + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { + return carverHelper.getVariation(metadata); + } + + @Override + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); + } + + public void setInformation(String textureLocation) { + this.faceLocation = textureLocation; + } +} diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableSand.java b/src/main/java/team/chisel/block/BlockCarvableSand.java similarity index 91% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableSand.java rename to src/main/java/team/chisel/block/BlockCarvableSand.java index b18e2ebf..4968828b 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableSand.java +++ b/src/main/java/team/chisel/block/BlockCarvableSand.java @@ -1,23 +1,21 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; +import com.cricketcraft.chisel.api.rendering.ClientUtils; + +import team.chisel.Chisel; +import team.chisel.init.ChiselTabs; import net.minecraft.block.Block; import net.minecraft.block.BlockSand; 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 net.minecraft.world.IBlockAccess; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.init.ChiselTabs; -import com.cricketcraft.ctmlib.ClientUtils; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -63,6 +61,7 @@ public class BlockCarvableSand extends BlockSand implements ICarvable { carverHelper.registerBlockIcons("Chisel", this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item item, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); @@ -74,13 +73,13 @@ public class BlockCarvableSand extends BlockSand implements ICarvable { } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } public static class SoundType extends Block.SoundType { diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableSlab.java b/src/main/java/team/chisel/block/BlockCarvableSlab.java similarity index 82% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableSlab.java rename to src/main/java/team/chisel/block/BlockCarvableSlab.java index 99f36912..cc25e8d3 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableSlab.java +++ b/src/main/java/team/chisel/block/BlockCarvableSlab.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; import java.util.Random; @@ -16,7 +16,6 @@ import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; - import static net.minecraftforge.common.util.ForgeDirection.UP; public class BlockCarvableSlab extends BlockCarvable { @@ -63,6 +62,7 @@ public class BlockCarvableSlab extends BlockCarvable { setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F); } + @SuppressWarnings("rawtypes") @Override public void addCollisionBoxesToList(World par1World, int par2, int par3, int par4, AxisAlignedBB par5AxisAlignedBB, List par6List, Entity par7Entity) { setBlockBoundsBasedOnState(par1World, par2, par3, par4); @@ -101,25 +101,31 @@ public class BlockCarvableSlab extends BlockCarvable { // return master.getIcon(side, metadata); } + @SuppressWarnings("rawtypes") @Override public void getSubBlocks(Item block, CreativeTabs tabs, List list) { if (isBottom) super.getSubBlocks(block, tabs, list); } + /** - * Checks if the block is a solid face on the given side, used by placement logic. - * - * @param world The current world - * @param x X Position - * @param y Y position - * @param z Z position - * @param side The side to check - * @return True if the block is solid on the specified side. - */ + * Checks if the block is a solid face on the given side, used by placement logic. + * + * @param world + * The current world + * @param x + * X Position + * @param y + * Y position + * @param z + * Z position + * @param side + * The side to check + * @return True if the block is solid on the specified side. + */ @Override - public boolean isSideSolid(IBlockAccess world, int x, int y, int z, ForgeDirection side) - { - return !isBottom && (side == UP); - } + public boolean isSideSolid(IBlockAccess world, int x, int y, int z, ForgeDirection side) { + return !isBottom && (side == UP); + } } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableStairs.java b/src/main/java/team/chisel/block/BlockCarvableStairs.java similarity index 88% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableStairs.java rename to src/main/java/team/chisel/block/BlockCarvableStairs.java index 891ce02c..48d23e36 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableStairs.java +++ b/src/main/java/team/chisel/block/BlockCarvableStairs.java @@ -1,7 +1,12 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; + +import team.chisel.client.render.RendererStairs; import net.minecraft.block.Block; import net.minecraft.block.BlockStairs; import net.minecraft.client.renderer.texture.IIconRegister; @@ -14,11 +19,6 @@ import net.minecraft.util.MathHelper; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.client.render.RendererStairs; - public class BlockCarvableStairs extends BlockStairs implements ICarvable { CarvableHelper carverHelper; @@ -72,7 +72,7 @@ public class BlockCarvableStairs extends BlockStairs implements ICarvable { if (par6ItemStack.getItemDamage() >= 8) { meta += 8; } - + par1World.setBlockMetadataWithNotify(par2, par3, par4, meta, 2); } @@ -82,12 +82,12 @@ public class BlockCarvableStairs extends BlockStairs implements ICarvable { } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(blockMeta + (metadata / 8)); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(blockMeta + (stack.getItemDamage() / 8)); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(blockMeta + (meta / 8)); } } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableTorch.java b/src/main/java/team/chisel/block/BlockCarvableTorch.java similarity index 82% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableTorch.java rename to src/main/java/team/chisel/block/BlockCarvableTorch.java index 29a3e3d5..1e3ac285 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableTorch.java +++ b/src/main/java/team/chisel/block/BlockCarvableTorch.java @@ -1,19 +1,17 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; -import net.minecraft.block.BlockTorch; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.item.ItemStack; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -import com.cricketcraft.chisel.Chisel; import com.cricketcraft.chisel.api.ICarvable; import com.cricketcraft.chisel.api.carving.CarvableHelper; import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.init.ChiselTabs; +import team.chisel.Chisel; +import team.chisel.init.ChiselTabs; +import net.minecraft.block.BlockTorch; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -35,32 +33,33 @@ public class BlockCarvableTorch extends BlockTorch implements ICarvable { } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } @Override public void registerBlockIcons(IIconRegister icon) { this.blockIcon = icon.registerIcon(Chisel.MOD_ID + ":torch/" + texLocation); } - + public BlockCarvableTorch disableParticles() { this.emitsParticles = false; return this; } + @Override @SideOnly(Side.CLIENT) public void randomDisplayTick(World p_149734_1_, int p_149734_2_, int p_149734_3_, int p_149734_4_, Random p_149734_5_) { if (emitsParticles) { int l = p_149734_1_.getBlockMetadata(p_149734_2_, p_149734_3_, p_149734_4_); - double d0 = (double) ((float) p_149734_2_ + 0.5F); - double d1 = (double) ((float) p_149734_3_ + 0.7F); - double d2 = (double) ((float) p_149734_4_ + 0.5F); + double d0 = p_149734_2_ + 0.5F; + double d1 = p_149734_3_ + 0.7F; + double d2 = p_149734_4_ + 0.5F; double d3 = 0.2199999988079071D; double d4 = 0.27000001072883606D; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableWall.java b/src/main/java/team/chisel/block/BlockCarvableWall.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/block/BlockCarvableWall.java rename to src/main/java/team/chisel/block/BlockCarvableWall.java index 5f61549e..ae89959a 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCarvableWall.java +++ b/src/main/java/team/chisel/block/BlockCarvableWall.java @@ -1,7 +1,9 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.carving.CarvableHelper; + import net.minecraft.block.Block; import net.minecraft.block.BlockWall; import net.minecraft.client.renderer.texture.IIconRegister; @@ -9,8 +11,6 @@ import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.util.IIcon; -import com.cricketcraft.chisel.api.carving.CarvableHelper; - public class BlockCarvableWall extends BlockWall { CarvableHelper carverHelper; @@ -36,6 +36,7 @@ public class BlockCarvableWall extends BlockWall { carverHelper.registerBlockIcons("Chisel", this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item block, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockCloud.java b/src/main/java/team/chisel/block/BlockCloud.java similarity index 94% rename from src/main/java/com/cricketcraft/chisel/block/BlockCloud.java rename to src/main/java/team/chisel/block/BlockCloud.java index 7a644302..928c5cdd 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockCloud.java +++ b/src/main/java/team/chisel/block/BlockCloud.java @@ -1,7 +1,8 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; +import team.chisel.config.Configurations; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.entity.Entity; @@ -9,9 +10,6 @@ import net.minecraft.item.Item; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; - -import com.cricketcraft.chisel.config.Configurations; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -43,6 +41,7 @@ public class BlockCloud extends BlockCarvable { return Configurations.ghostCloud ? 1 : 0; } + @Override @SideOnly(Side.CLIENT) public boolean shouldSideBeRendered(IBlockAccess world, int x, int y, int z, int side) { Block block = world.getBlock(x, y, z); diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockConcrete.java b/src/main/java/team/chisel/block/BlockConcrete.java similarity index 73% rename from src/main/java/com/cricketcraft/chisel/block/BlockConcrete.java rename to src/main/java/team/chisel/block/BlockConcrete.java index 5eea1404..32ba888e 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockConcrete.java +++ b/src/main/java/team/chisel/block/BlockConcrete.java @@ -1,12 +1,10 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; +import team.chisel.client.GeneralChiselClient; +import team.chisel.config.Configurations; import net.minecraft.entity.Entity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.World; - -import com.cricketcraft.chisel.client.GeneralChiselClient; -import com.cricketcraft.chisel.config.Configurations; - import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.relauncher.Side; @@ -18,10 +16,10 @@ public class BlockConcrete extends BlockCarvable { @Override public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) { - if(Configurations.fullBlockConcrete) + if (Configurations.fullBlockConcrete) return AxisAlignedBB.getBoundingBox(par2, par3, par4, (par2 + 1), ((par3 + 1)), (par4 + 1)); else - return AxisAlignedBB.getBoundingBox(par2, par3, par4, (par2 + 1), ((par3 + 1) - 0.125F), (par4 + 1)); + return AxisAlignedBB.getBoundingBox(par2, par3, par4, (par2 + 1), ((par3 + 1) - 0.125F), (par4 + 1)); } @Override diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockEldritch.java b/src/main/java/team/chisel/block/BlockEldritch.java similarity index 69% rename from src/main/java/com/cricketcraft/chisel/block/BlockEldritch.java rename to src/main/java/team/chisel/block/BlockEldritch.java index 6d3366b9..9063b2fa 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockEldritch.java +++ b/src/main/java/team/chisel/block/BlockEldritch.java @@ -1,6 +1,6 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; -import com.cricketcraft.chisel.Chisel; +import team.chisel.Chisel; public class BlockEldritch extends BlockCarvable { diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockGrimstone.java b/src/main/java/team/chisel/block/BlockGrimstone.java similarity index 80% rename from src/main/java/com/cricketcraft/chisel/block/BlockGrimstone.java rename to src/main/java/team/chisel/block/BlockGrimstone.java index decf4cdf..14f6b597 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockGrimstone.java +++ b/src/main/java/team/chisel/block/BlockGrimstone.java @@ -1,16 +1,15 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; +import team.chisel.Chisel; +import team.chisel.client.GeneralChiselClient; +import team.chisel.utils.General; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; import net.minecraft.world.World; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.client.GeneralChiselClient; -import com.cricketcraft.chisel.utils.General; - public class BlockGrimstone extends BlockCarvable { public IIcon iconStar; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockHolystone.java b/src/main/java/team/chisel/block/BlockHolystone.java similarity index 83% rename from src/main/java/com/cricketcraft/chisel/block/BlockHolystone.java rename to src/main/java/team/chisel/block/BlockHolystone.java index 4d937ea0..652e8029 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockHolystone.java +++ b/src/main/java/team/chisel/block/BlockHolystone.java @@ -1,15 +1,14 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; +import team.chisel.client.GeneralChiselClient; +import team.chisel.utils.General; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; import net.minecraft.world.World; -import com.cricketcraft.chisel.client.GeneralChiselClient; -import com.cricketcraft.chisel.utils.General; - public class BlockHolystone extends BlockCarvable { public IIcon iconStar; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockLavastone.java b/src/main/java/team/chisel/block/BlockLavastone.java similarity index 84% rename from src/main/java/com/cricketcraft/chisel/block/BlockLavastone.java rename to src/main/java/team/chisel/block/BlockLavastone.java index b212e9e0..e7740042 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockLavastone.java +++ b/src/main/java/team/chisel/block/BlockLavastone.java @@ -1,12 +1,11 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; +import team.chisel.client.GeneralChiselClient; import net.minecraft.block.material.Material; import net.minecraft.world.World; -import com.cricketcraft.chisel.client.GeneralChiselClient; - public class BlockLavastone extends BlockMultiLayer { public BlockLavastone(Material mat, String baseIcon) { diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockLeaf.java b/src/main/java/team/chisel/block/BlockLeaf.java similarity index 87% rename from src/main/java/com/cricketcraft/chisel/block/BlockLeaf.java rename to src/main/java/team/chisel/block/BlockLeaf.java index 00ecc295..ea523fd1 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockLeaf.java +++ b/src/main/java/team/chisel/block/BlockLeaf.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockMultiLayer.java b/src/main/java/team/chisel/block/BlockMultiLayer.java similarity index 83% rename from src/main/java/com/cricketcraft/chisel/block/BlockMultiLayer.java rename to src/main/java/team/chisel/block/BlockMultiLayer.java index 1e60e6be..3161dd68 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockMultiLayer.java +++ b/src/main/java/team/chisel/block/BlockMultiLayer.java @@ -1,20 +1,19 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; + 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 net.minecraft.world.IBlockAccess; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; - public class BlockMultiLayer extends BlockMultiLayerBase implements ICarvable { public CarvableHelper carverHelper; @@ -48,18 +47,19 @@ public class BlockMultiLayer extends BlockMultiLayerBase implements ICarvable { carverHelper.registerBlockIcons("Chisel", this, register); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item block, CreativeTabs tabs, List list) { carverHelper.registerSubBlocks(this, tabs, list); } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } } diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockMultiLayerBase.java b/src/main/java/team/chisel/block/BlockMultiLayerBase.java similarity index 90% rename from src/main/java/com/cricketcraft/chisel/block/BlockMultiLayerBase.java rename to src/main/java/team/chisel/block/BlockMultiLayerBase.java index 1ff637ef..45dd2a6e 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockMultiLayerBase.java +++ b/src/main/java/team/chisel/block/BlockMultiLayerBase.java @@ -1,13 +1,12 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; +import team.chisel.client.render.RendererMultiLayer; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; import net.minecraftforge.client.ForgeHooksClient; -import com.cricketcraft.chisel.client.render.RendererMultiLayer; - public abstract class BlockMultiLayerBase extends Block { public Block base; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockPresent.java b/src/main/java/team/chisel/block/BlockPresent.java similarity index 88% rename from src/main/java/com/cricketcraft/chisel/block/BlockPresent.java rename to src/main/java/team/chisel/block/BlockPresent.java index cb6a3ec0..0a6653ea 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockPresent.java +++ b/src/main/java/team/chisel/block/BlockPresent.java @@ -1,7 +1,13 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.CarvableHelper; +import com.cricketcraft.chisel.api.carving.IVariationInfo; + +import team.chisel.Chisel; +import team.chisel.block.tileentity.TileEntityPresent; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; @@ -18,13 +24,6 @@ import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.CarvableHelper; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.block.tileentity.TileEntityPresent; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -118,16 +117,18 @@ public class BlockPresent extends Block implements ICarvable { @Override public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z) { - if(world.getTileEntity(x, y, z) instanceof TileEntityPresent) - return getBoundingBox((TileEntityPresent) world.getTileEntity(x, y, z)); - else return null; + if (world.getTileEntity(x, y, z) instanceof TileEntityPresent) + return getBoundingBox((TileEntityPresent) world.getTileEntity(x, y, z)); + else + return null; } @Override public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { - if(world.getTileEntity(x, y, z) instanceof TileEntityPresent) - return getBoundingBox((TileEntityPresent) world.getTileEntity(x, y, z)); - else return null; + if (world.getTileEntity(x, y, z) instanceof TileEntityPresent) + return getBoundingBox((TileEntityPresent) world.getTileEntity(x, y, z)); + else + return null; } public AxisAlignedBB getBoundingBox(TileEntityPresent me) { @@ -147,8 +148,8 @@ public class BlockPresent extends Block implements ICarvable { return AxisAlignedBB.getBoundingBox(x + minX, y + minY, z + minZ, x + maxX, y + maxY, z + maxZ); } - public void setBlockBoundsBasedOnState(IBlockAccess world, int x, int y, int z) - { + @Override + public void setBlockBoundsBasedOnState(IBlockAccess world, int x, int y, int z) { TileEntityPresent te = (TileEntityPresent) world.getTileEntity(x, y, z); if (!te.isConnected()) { setBlockBounds(0.0625F, 0, 0.0625F, 0.9375F, 0.875F, 0.9365F); @@ -215,12 +216,12 @@ public class BlockPresent extends Block implements ICarvable { } @Override - public IVariationInfo getVariation(IBlockAccess world, int x, int y, int z, int metadata) { + public IVariationInfo getManager(IBlockAccess world, int x, int y, int z, int metadata) { return carverHelper.getVariation(metadata); } @Override - public IVariationInfo getVariation(ItemStack stack) { - return carverHelper.getVariation(stack.getItemDamage()); + public IVariationInfo getManager(int meta) { + return carverHelper.getVariation(meta); } } \ No newline at end of file diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockRoadLine.java b/src/main/java/team/chisel/block/BlockRoadLine.java similarity index 95% rename from src/main/java/com/cricketcraft/chisel/block/BlockRoadLine.java rename to src/main/java/team/chisel/block/BlockRoadLine.java index 5d0ffec9..09366bda 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockRoadLine.java +++ b/src/main/java/team/chisel/block/BlockRoadLine.java @@ -1,5 +1,7 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; +import team.chisel.Chisel; +import team.chisel.config.Configurations; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; @@ -8,10 +10,6 @@ import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.config.Configurations; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockSnakestone.java b/src/main/java/team/chisel/block/BlockSnakestone.java similarity index 98% rename from src/main/java/com/cricketcraft/chisel/block/BlockSnakestone.java rename to src/main/java/team/chisel/block/BlockSnakestone.java index 5fa597d3..b2e25408 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockSnakestone.java +++ b/src/main/java/team/chisel/block/BlockSnakestone.java @@ -1,7 +1,8 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.List; +import team.chisel.client.render.RendererSnakeStone; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; @@ -13,8 +14,6 @@ import net.minecraft.util.IIcon; import net.minecraft.util.MathHelper; import net.minecraft.world.World; -import com.cricketcraft.chisel.client.render.RendererSnakeStone; - public class BlockSnakestone extends Block { static final int SEC_HEAD = 0; @@ -211,7 +210,6 @@ public class BlockSnakestone extends Block { public boolean rotateBodyPart(World world, int x, int y, int z) { int[] con = getConnections(world, x, y, z); int blockMeta = world.getBlockMetadata(x, y, z); - int kind = blockMeta & 0xc; if (con[1] == -1) return false; @@ -288,8 +286,6 @@ public class BlockSnakestone extends Block { @Override public IIcon getIcon(int side, int meta) { - int type = meta & 0xc; - int orient = meta & 0x3; switch (meta | (side << 4)) { @@ -506,6 +502,7 @@ public class BlockSnakestone extends Block { return iconCross; } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void getSubBlocks(Item item, CreativeTabs tabs, List list) { list.add(new ItemStack(item, 1, 1)); diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockSnakestoneObsidian.java b/src/main/java/team/chisel/block/BlockSnakestoneObsidian.java similarity index 88% rename from src/main/java/com/cricketcraft/chisel/block/BlockSnakestoneObsidian.java rename to src/main/java/team/chisel/block/BlockSnakestoneObsidian.java index 8983fed7..a81cb56b 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockSnakestoneObsidian.java +++ b/src/main/java/team/chisel/block/BlockSnakestoneObsidian.java @@ -1,13 +1,12 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import java.util.Random; +import team.chisel.client.GeneralChiselClient; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; import net.minecraft.world.World; -import com.cricketcraft.chisel.client.GeneralChiselClient; - public class BlockSnakestoneObsidian extends BlockSnakestone { public static IIcon[] particles = new IIcon[8]; diff --git a/src/main/java/com/cricketcraft/chisel/block/BlockWaterstone.java b/src/main/java/team/chisel/block/BlockWaterstone.java similarity index 86% rename from src/main/java/com/cricketcraft/chisel/block/BlockWaterstone.java rename to src/main/java/team/chisel/block/BlockWaterstone.java index 0af23f16..c17d73c8 100644 --- a/src/main/java/com/cricketcraft/chisel/block/BlockWaterstone.java +++ b/src/main/java/team/chisel/block/BlockWaterstone.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block; +package team.chisel.block; import net.minecraft.block.material.Material; diff --git a/src/main/java/com/cricketcraft/chisel/block/CarvableStairsMaker.java b/src/main/java/team/chisel/block/CarvableStairsMaker.java similarity index 90% rename from src/main/java/com/cricketcraft/chisel/block/CarvableStairsMaker.java rename to src/main/java/team/chisel/block/CarvableStairsMaker.java index f4e2074a..43006219 100644 --- a/src/main/java/com/cricketcraft/chisel/block/CarvableStairsMaker.java +++ b/src/main/java/team/chisel/block/CarvableStairsMaker.java @@ -1,13 +1,12 @@ -package com.cricketcraft.chisel.block; - -import com.cricketcraft.chisel.init.ChiselTabs; -import net.minecraft.block.Block; -import net.minecraft.item.ItemStack; +package team.chisel.block; import com.cricketcraft.chisel.api.carving.CarvableHelper; import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.item.ItemCarvable; +import team.chisel.init.ChiselTabs; +import team.chisel.item.ItemCarvable; +import net.minecraft.block.Block; +import net.minecraft.item.ItemStack; import cpw.mods.fml.common.registry.GameRegistry; public class CarvableStairsMaker { diff --git a/src/main/java/com/cricketcraft/chisel/block/IStairsCreator.java b/src/main/java/team/chisel/block/IStairsCreator.java similarity index 84% rename from src/main/java/com/cricketcraft/chisel/block/IStairsCreator.java rename to src/main/java/team/chisel/block/IStairsCreator.java index 8d5d1641..160b9a35 100644 --- a/src/main/java/com/cricketcraft/chisel/block/IStairsCreator.java +++ b/src/main/java/team/chisel/block/IStairsCreator.java @@ -1,9 +1,9 @@ -package com.cricketcraft.chisel.block; - -import net.minecraft.block.Block; +package team.chisel.block; import com.cricketcraft.chisel.api.carving.CarvableHelper; +import net.minecraft.block.Block; + public interface IStairsCreator { public BlockCarvableStairs create(Block block, int meta, CarvableHelper helper); diff --git a/src/main/java/com/cricketcraft/chisel/block/tileentity/IDoubleChest.java b/src/main/java/team/chisel/block/tileentity/IDoubleChest.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/block/tileentity/IDoubleChest.java rename to src/main/java/team/chisel/block/tileentity/IDoubleChest.java index 90ded712..12083d26 100644 --- a/src/main/java/com/cricketcraft/chisel/block/tileentity/IDoubleChest.java +++ b/src/main/java/team/chisel/block/tileentity/IDoubleChest.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.block.tileentity; +package team.chisel.block.tileentity; import net.minecraft.item.ItemStack; diff --git a/src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityAutoChisel.java b/src/main/java/team/chisel/block/tileentity/TileEntityAutoChisel.java similarity index 95% rename from src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityAutoChisel.java rename to src/main/java/team/chisel/block/tileentity/TileEntityAutoChisel.java index 359998be..e279fecf 100644 --- a/src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityAutoChisel.java +++ b/src/main/java/team/chisel/block/tileentity/TileEntityAutoChisel.java @@ -1,7 +1,16 @@ -package com.cricketcraft.chisel.block.tileentity; +package team.chisel.block.tileentity; import java.util.List; +import com.cricketcraft.chisel.api.IChiselItem; + +import team.chisel.carving.Carving; +import team.chisel.client.GeneralChiselClient; +import team.chisel.init.ChiselItems; +import team.chisel.network.PacketHandler; +import team.chisel.network.message.MessageAutoChisel; +import team.chisel.network.message.MessageSlotUpdate; +import team.chisel.utils.General; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.ISidedInventory; @@ -13,23 +22,16 @@ import net.minecraft.network.Packet; import net.minecraft.network.play.server.S35PacketUpdateTileEntity; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.StatCollector; - -import com.cricketcraft.chisel.api.IChiselItem; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.client.GeneralChiselClient; -import com.cricketcraft.chisel.init.ChiselItems; -import com.cricketcraft.chisel.network.PacketHandler; -import com.cricketcraft.chisel.network.message.MessageAutoChisel; -import com.cricketcraft.chisel.network.message.MessageSlotUpdate; -import com.cricketcraft.chisel.utils.General; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class TileEntityAutoChisel extends TileEntity implements ISidedInventory { public enum Upgrade { - SPEED, AUTOMATION, STACK, REVERSION; + SPEED, + AUTOMATION, + STACK, + REVERSION; public String getUnlocalizedName() { return ChiselItems.upgrade.getUnlocalizedName() + "_" + this.name().toLowerCase(); @@ -178,7 +180,8 @@ public class TileEntityAutoChisel extends TileEntity implements ISidedInventory private ItemStack getTarget() { if (inventory[BASE] != null && hasUpgrade(Upgrade.REVERSION)) { // if we have a reversion upgrade, use that for the target - return Carving.chisel.getItemsForChiseling(inventory[BASE]).get(0); + List possible = Carving.chisel.getItemsForChiseling(inventory[BASE]); + return possible.isEmpty() ? null : possible.get(0); } else { return inventory[TARGET]; } diff --git a/src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityCarvableBeacon.java b/src/main/java/team/chisel/block/tileentity/TileEntityCarvableBeacon.java similarity index 56% rename from src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityCarvableBeacon.java rename to src/main/java/team/chisel/block/tileentity/TileEntityCarvableBeacon.java index 03637ac1..ec52c06f 100644 --- a/src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityCarvableBeacon.java +++ b/src/main/java/team/chisel/block/tileentity/TileEntityCarvableBeacon.java @@ -1,14 +1,15 @@ -package com.cricketcraft.chisel.block.tileentity; +package team.chisel.block.tileentity; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.tileentity.TileEntityBeacon; import net.minecraft.util.AxisAlignedBB; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; public class TileEntityCarvableBeacon extends TileEntityBeacon { - @Override - @SideOnly(Side.CLIENT) - public AxisAlignedBB getRenderBoundingBox() { - return INFINITE_EXTENT_AABB; - } + + @Override + @SideOnly(Side.CLIENT) + public AxisAlignedBB getRenderBoundingBox() { + return INFINITE_EXTENT_AABB; + } } diff --git a/src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityPresent.java b/src/main/java/team/chisel/block/tileentity/TileEntityPresent.java similarity index 94% rename from src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityPresent.java rename to src/main/java/team/chisel/block/tileentity/TileEntityPresent.java index d24e2505..09bce79e 100644 --- a/src/main/java/com/cricketcraft/chisel/block/tileentity/TileEntityPresent.java +++ b/src/main/java/team/chisel/block/tileentity/TileEntityPresent.java @@ -1,5 +1,8 @@ -package com.cricketcraft.chisel.block.tileentity; +package team.chisel.block.tileentity; +import team.chisel.init.ChiselBlocks; +import team.chisel.network.PacketHandler; +import team.chisel.network.message.MessagePresentConnect; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; @@ -14,10 +17,6 @@ import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -import com.cricketcraft.chisel.init.ChiselBlocks; -import com.cricketcraft.chisel.network.PacketHandler; -import com.cricketcraft.chisel.network.message.MessagePresentConnect; - public class TileEntityPresent extends TileEntity implements IInventory, IDoubleChest { private TileEntityPresent connection = null; @@ -34,7 +33,7 @@ public class TileEntityPresent extends TileEntity implements IInventory, IDouble if (!isConnected() && autoSearch && worldObj != null /* ugh */) { if (cachedDir != null) { connectTo(cachedDir); - } else if (!worldObj.isRemote){ + } else if (!worldObj.isRemote) { findConnections(); } autoSearch = false; @@ -46,7 +45,8 @@ public class TileEntityPresent extends TileEntity implements IInventory, IDouble } private boolean connectTo(TileEntityPresent present, ForgeDirection dir) { - if (present.getBlockMetadata() == getBlockMetadata() && !present.isConnected() && (present.cachedDir == null || present.cachedDir == dir.getOpposite()) && Math.abs(present.xCoord - xCoord + present.yCoord - yCoord + present.zCoord - zCoord) == 1) { + if (present.getBlockMetadata() == getBlockMetadata() && !present.isConnected() && (present.cachedDir == null || present.cachedDir == dir.getOpposite()) + && Math.abs(present.xCoord - xCoord + present.yCoord - yCoord + present.zCoord - zCoord) == 1) { connection = present; connection.connection = this; connection.cachedDir = dir.getOpposite(); @@ -71,9 +71,7 @@ public class TileEntityPresent extends TileEntity implements IInventory, IDouble /** * @param preserveDir - * If true, this is only a virtual disconnect, meaning the other - * chest still exists, but is still loaded, so maintain a - * cachedDir for reconnection upon chunk load. + * If true, this is only a virtual disconnect, meaning the other chest still exists, but is still loaded, so maintain a cachedDir for reconnection upon chunk load. */ public void disconnect(boolean preserveDir) { if (isConnected()) { diff --git a/src/main/java/com/cricketcraft/chisel/carving/Carving.java b/src/main/java/team/chisel/carving/Carving.java similarity index 98% rename from src/main/java/com/cricketcraft/chisel/carving/Carving.java rename to src/main/java/team/chisel/carving/Carving.java index 7d50fefa..d7cb498b 100644 --- a/src/main/java/com/cricketcraft/chisel/carving/Carving.java +++ b/src/main/java/team/chisel/carving/Carving.java @@ -1,33 +1,34 @@ -package com.cricketcraft.chisel.carving; +package team.chisel.carving; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraftforge.oredict.OreDictionary; - -import com.cricketcraft.chisel.Chisel; import com.cricketcraft.chisel.api.carving.CarvingUtils; import com.cricketcraft.chisel.api.carving.ICarvingGroup; import com.cricketcraft.chisel.api.carving.ICarvingRegistry; import com.cricketcraft.chisel.api.carving.ICarvingVariation; +import team.chisel.Chisel; +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraftforge.oredict.OreDictionary; + public class Carving implements ICarvingRegistry { GroupList groups = new GroupList(); public static final ICarvingRegistry chisel = new Carving(); public static final Carving needle = new Carving(); - + static { CarvingUtils.chisel = chisel; } - - public static void construct() {} + + public static void construct() { + } private Carving() { } @@ -142,7 +143,7 @@ public class Carving implements ICarvingRegistry { ICarvingGroup g = groups.getGroupByName(groupName); return groups.remove(g) ? g : null; } - + @Override public ICarvingVariation removeVariation(Block block, int metadata) { return removeVariation(block, metadata, null); diff --git a/src/main/java/com/cricketcraft/chisel/carving/GroupList.java b/src/main/java/team/chisel/carving/GroupList.java similarity index 99% rename from src/main/java/com/cricketcraft/chisel/carving/GroupList.java rename to src/main/java/team/chisel/carving/GroupList.java index f4f9560d..aede0369 100644 --- a/src/main/java/com/cricketcraft/chisel/carving/GroupList.java +++ b/src/main/java/team/chisel/carving/GroupList.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.carving; +package team.chisel.carving; import java.util.Collection; import java.util.HashMap; diff --git a/src/main/java/com/cricketcraft/chisel/client/GeneralChiselClient.java b/src/main/java/team/chisel/client/GeneralChiselClient.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/client/GeneralChiselClient.java rename to src/main/java/team/chisel/client/GeneralChiselClient.java index 56bda997..bd54ea65 100644 --- a/src/main/java/com/cricketcraft/chisel/client/GeneralChiselClient.java +++ b/src/main/java/team/chisel/client/GeneralChiselClient.java @@ -1,7 +1,19 @@ -package com.cricketcraft.chisel.client; +package team.chisel.client; import java.util.Random; +import team.chisel.block.BlockGrimstone; +import team.chisel.block.BlockHolystone; +import team.chisel.block.BlockLavastone; +import team.chisel.block.BlockSnakestoneObsidian; +import team.chisel.block.tileentity.TileEntityAutoChisel; +import team.chisel.carving.Carving; +import team.chisel.config.Configurations; +import team.chisel.entity.fx.EntityBallOMossFX; +import team.chisel.entity.fx.EntityGrimstoneFX; +import team.chisel.entity.fx.EntityHolystoneFX; +import team.chisel.entity.fx.EntitySnakestoneObsidianFX; +import team.chisel.utils.GeneralClient; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.entity.EntityPlayerSP; @@ -12,19 +24,6 @@ import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; import net.minecraft.world.World; -import com.cricketcraft.chisel.block.BlockGrimstone; -import com.cricketcraft.chisel.block.BlockHolystone; -import com.cricketcraft.chisel.block.BlockLavastone; -import com.cricketcraft.chisel.block.BlockSnakestoneObsidian; -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.config.Configurations; -import com.cricketcraft.chisel.entity.fx.EntityBallOMossFX; -import com.cricketcraft.chisel.entity.fx.EntityGrimstoneFX; -import com.cricketcraft.chisel.entity.fx.EntityHolystoneFX; -import com.cricketcraft.chisel.entity.fx.EntitySnakestoneObsidianFX; -import com.cricketcraft.chisel.utils.GeneralClient; - public class GeneralChiselClient { public static Random rand = new Random(); diff --git a/src/main/java/com/cricketcraft/chisel/client/gui/GuiAutoChisel.java b/src/main/java/team/chisel/client/gui/GuiAutoChisel.java similarity index 93% rename from src/main/java/com/cricketcraft/chisel/client/gui/GuiAutoChisel.java rename to src/main/java/team/chisel/client/gui/GuiAutoChisel.java index 6d20815f..c18d778e 100644 --- a/src/main/java/com/cricketcraft/chisel/client/gui/GuiAutoChisel.java +++ b/src/main/java/team/chisel/client/gui/GuiAutoChisel.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.gui; +package team.chisel.client.gui; import java.util.List; @@ -11,8 +11,9 @@ import net.minecraft.util.StatCollector; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; -import com.cricketcraft.chisel.inventory.ContainerAutoChisel; +import team.chisel.block.tileentity.TileEntityAutoChisel; +import team.chisel.inventory.ContainerAutoChisel; + import com.google.common.base.Strings; import com.google.common.collect.Lists; diff --git a/src/main/java/com/cricketcraft/chisel/client/gui/GuiChisel.java b/src/main/java/team/chisel/client/gui/GuiChisel.java similarity index 89% rename from src/main/java/com/cricketcraft/chisel/client/gui/GuiChisel.java rename to src/main/java/team/chisel/client/gui/GuiChisel.java index 91fa00f3..4392e14b 100644 --- a/src/main/java/com/cricketcraft/chisel/client/gui/GuiChisel.java +++ b/src/main/java/team/chisel/client/gui/GuiChisel.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.gui; +package team.chisel.client.gui; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.inventory.GuiContainer; @@ -13,14 +13,15 @@ import org.lwjgl.opengl.GL11; import com.cricketcraft.chisel.api.IAdvancedChisel; import com.cricketcraft.chisel.api.IChiselItem; import com.cricketcraft.chisel.api.carving.IChiselMode; -import com.cricketcraft.chisel.inventory.ContainerChisel; -import com.cricketcraft.chisel.inventory.InventoryChiselSelection; -import com.cricketcraft.chisel.inventory.SlotChiselInput; -import com.cricketcraft.chisel.item.chisel.ChiselMode; -import com.cricketcraft.chisel.network.PacketHandler; -import com.cricketcraft.chisel.network.message.MessageChiselMode; -import com.cricketcraft.chisel.utils.General; -import com.cricketcraft.chisel.utils.GeneralClient; + +import team.chisel.inventory.ContainerChisel; +import team.chisel.inventory.InventoryChiselSelection; +import team.chisel.inventory.SlotChiselInput; +import team.chisel.item.chisel.ChiselMode; +import team.chisel.network.PacketHandler; +import team.chisel.network.message.MessageChiselMode; +import team.chisel.utils.General; +import team.chisel.utils.GeneralClient; public class GuiChisel extends GuiContainer { diff --git a/src/main/java/com/cricketcraft/chisel/client/gui/GuiChiselConfig.java b/src/main/java/team/chisel/client/gui/GuiChiselConfig.java similarity index 81% rename from src/main/java/com/cricketcraft/chisel/client/gui/GuiChiselConfig.java rename to src/main/java/team/chisel/client/gui/GuiChiselConfig.java index b29e10d7..818c1282 100644 --- a/src/main/java/com/cricketcraft/chisel/client/gui/GuiChiselConfig.java +++ b/src/main/java/team/chisel/client/gui/GuiChiselConfig.java @@ -1,13 +1,11 @@ -package com.cricketcraft.chisel.client.gui; +package team.chisel.client.gui; +import team.chisel.Chisel; +import team.chisel.config.Configurations; import net.minecraft.client.gui.GuiScreen; import net.minecraftforge.common.config.ConfigCategory; import net.minecraftforge.common.config.ConfigElement; import net.minecraftforge.common.config.Configuration; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.config.Configurations; - import cpw.mods.fml.client.config.GuiConfig; public class GuiChiselConfig extends GuiConfig { diff --git a/src/main/java/com/cricketcraft/chisel/client/gui/GuiFactory.java b/src/main/java/team/chisel/client/gui/GuiFactory.java similarity index 93% rename from src/main/java/com/cricketcraft/chisel/client/gui/GuiFactory.java rename to src/main/java/team/chisel/client/gui/GuiFactory.java index cda1e647..f5b2464c 100644 --- a/src/main/java/com/cricketcraft/chisel/client/gui/GuiFactory.java +++ b/src/main/java/team/chisel/client/gui/GuiFactory.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.gui; +package team.chisel.client.gui; import java.util.Set; diff --git a/src/main/java/com/cricketcraft/chisel/client/gui/GuiPresent.java b/src/main/java/team/chisel/client/gui/GuiPresent.java similarity index 86% rename from src/main/java/com/cricketcraft/chisel/client/gui/GuiPresent.java rename to src/main/java/team/chisel/client/gui/GuiPresent.java index dea00f6d..6b31b054 100644 --- a/src/main/java/com/cricketcraft/chisel/client/gui/GuiPresent.java +++ b/src/main/java/team/chisel/client/gui/GuiPresent.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.gui; +package team.chisel.client.gui; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.entity.player.InventoryPlayer; @@ -6,8 +6,8 @@ import net.minecraft.util.ResourceLocation; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.block.tileentity.TileEntityPresent; -import com.cricketcraft.chisel.inventory.ContainerPresent; +import team.chisel.block.tileentity.TileEntityPresent; +import team.chisel.inventory.ContainerPresent; public class GuiPresent extends GuiContainer { diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RenderBlocksEldritch.java b/src/main/java/team/chisel/client/render/RenderBlocksEldritch.java similarity index 99% rename from src/main/java/com/cricketcraft/chisel/client/render/RenderBlocksEldritch.java rename to src/main/java/team/chisel/client/render/RenderBlocksEldritch.java index c8e82e0c..44a48ac0 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RenderBlocksEldritch.java +++ b/src/main/java/team/chisel/client/render/RenderBlocksEldritch.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; diff --git a/src/main/java/team/chisel/client/render/RenderChiselSnowman.java b/src/main/java/team/chisel/client/render/RenderChiselSnowman.java new file mode 100644 index 00000000..9471f3dd --- /dev/null +++ b/src/main/java/team/chisel/client/render/RenderChiselSnowman.java @@ -0,0 +1,67 @@ +package team.chisel.client.render; + +import net.minecraft.block.Block; +import net.minecraft.client.model.ModelSnowMan; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.client.renderer.entity.RenderLiving; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.client.IItemRenderer; +import net.minecraftforge.client.MinecraftForgeClient; + +import org.lwjgl.opengl.GL11; + +import team.chisel.entity.EntityChiselSnowman; +import static net.minecraftforge.client.IItemRenderer.ItemRenderType.EQUIPPED; +import static net.minecraftforge.client.IItemRenderer.ItemRendererHelper.BLOCK_3D; + +public class RenderChiselSnowman extends RenderLiving { + + private static final ResourceLocation snowManTextures = new ResourceLocation("textures/entity/snowman.png"); + private ModelSnowMan snowMan; + + public RenderChiselSnowman() { + super(new ModelSnowMan(), 0.5F); + snowMan = (ModelSnowMan) super.mainModel; + setRenderPassModel(this.snowMan); + } + + @Override + protected void renderEquippedItems(EntityLivingBase entityLivingBase, float size) { + this.renderEquippedItems((EntityChiselSnowman) entityLivingBase, size); + } + + @Override + protected ResourceLocation getEntityTexture(Entity entity) { + return this.getEntityTexture((EntityChiselSnowman) entity); + } + + protected ResourceLocation getEntityTexture(EntityChiselSnowman snowman) { + return snowManTextures; + } + + protected void renderEquippedItems(EntityChiselSnowman snowman, float size) { + super.renderEquippedItems(snowman, size); + ItemStack itemStack = snowman.getEquipmentInSlot(2); + + if (itemStack.getItem() instanceof ItemBlock) { + GL11.glPushMatrix(); + this.snowMan.head.postRender(0.0625F); + + IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(itemStack, EQUIPPED); + boolean is3D = (customRenderer != null && customRenderer.shouldUseRenderHelper(EQUIPPED, itemStack, BLOCK_3D)); + + if (is3D || RenderBlocks.renderItemIn3d(Block.getBlockFromItem(itemStack.getItem()).getRenderType())) { + float f1 = 0.625F; + GL11.glTranslatef(0.0F, -0.34375F, 0.0F); + GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F); + GL11.glScalef(f1, -f1, f1); + } + this.renderManager.itemRenderer.renderItem(snowman, itemStack, 0); + GL11.glPopMatrix(); + } + } +} diff --git a/src/main/java/team/chisel/client/render/RendererCTM.java b/src/main/java/team/chisel/client/render/RendererCTM.java new file mode 100644 index 00000000..79ce0d66 --- /dev/null +++ b/src/main/java/team/chisel/client/render/RendererCTM.java @@ -0,0 +1,14 @@ +package team.chisel.client.render; + +import com.cricketcraft.chisel.api.rendering.ClientUtils; +import com.cricketcraft.ctmlib.CTMRenderer; + +import cpw.mods.fml.client.registry.RenderingRegistry; + +public class RendererCTM extends CTMRenderer { + + public RendererCTM() { + super(RenderingRegistry.getNextAvailableRenderId()); + ClientUtils.renderCTMId = getRenderId(); + } +} diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RendererCTMPane.java b/src/main/java/team/chisel/client/render/RendererCTMPane.java similarity index 99% rename from src/main/java/com/cricketcraft/chisel/client/render/RendererCTMPane.java rename to src/main/java/team/chisel/client/render/RendererCTMPane.java index bd3f9edf..31e4be49 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RendererCTMPane.java +++ b/src/main/java/team/chisel/client/render/RendererCTMPane.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.block.BlockPane; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RendererEldritch.java b/src/main/java/team/chisel/client/render/RendererEldritch.java similarity index 66% rename from src/main/java/com/cricketcraft/chisel/client/render/RendererEldritch.java rename to src/main/java/team/chisel/client/render/RendererEldritch.java index 9d63228d..38be1206 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RendererEldritch.java +++ b/src/main/java/team/chisel/client/render/RendererEldritch.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; @@ -6,7 +6,8 @@ import net.minecraft.world.IBlockAccess; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.Chisel; +import team.chisel.Chisel; + import com.cricketcraft.ctmlib.Drawing; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; @@ -33,24 +34,17 @@ public class RendererEldritch implements ISimpleBlockRenderingHandler { // tessellator.setBrightness(block.getMixedBrightnessForBlock(world, x, // y, z)); /* - * double d0 = 0.4000000059604645D; double d1 = 0.5D - d0; double d2 = - * 0.20000000298023224D; + * double d0 = 0.4000000059604645D; double d1 = 0.5D - d0; double d2 = 0.20000000298023224D; */ // renderer.renderTorchAtAngle(Block.torchWood, x - d1, y + d2, z, -d0, // 0.0D, 0); /* - * Icon icon = block.getIcon(2, meta); double u0 = icon.getMinU(); - * double v0 = icon.getMaxV(); double u1 = icon.getMaxU(); double v1 = - * icon.getMinV(); double uu = icon.getInterpolatedU(8.0D); double vv = - * icon.getInterpolatedV(8.0D); + * Icon icon = block.getIcon(2, meta); double u0 = icon.getMinU(); double v0 = icon.getMaxV(); double u1 = icon.getMaxU(); double v1 = icon.getMinV(); double uu = icon.getInterpolatedU(8.0D); + * double vv = icon.getInterpolatedV(8.0D); * * - * int lyp=block.getMixedBrightnessForBlock(world, x, y+1, z); int - * lym=block.getMixedBrightnessForBlock(world, x, y-1, z); int - * lxp=block.getMixedBrightnessForBlock(world, x+1, y, z); int - * lxm=block.getMixedBrightnessForBlock(world, x-1, y, z); int - * lzp=block.getMixedBrightnessForBlock(world, x, y, z+1); int - * lzm=block.getMixedBrightnessForBlock(world, x, y, z-1); + * int lyp=block.getMixedBrightnessForBlock(world, x, y+1, z); int lym=block.getMixedBrightnessForBlock(world, x, y-1, z); int lxp=block.getMixedBrightnessForBlock(world, x+1, y, z); int + * lxm=block.getMixedBrightnessForBlock(world, x-1, y, z); int lzp=block.getMixedBrightnessForBlock(world, x, y, z+1); int lzm=block.getMixedBrightnessForBlock(world, x, y, z-1); * * * @@ -63,13 +57,9 @@ public class RendererEldritch implements ISimpleBlockRenderingHandler { * * * - * icon = block.getIcon(0, meta); u0 = icon.getMinU(); v0 = - * icon.getMinV(); u1 = icon.getMaxU(); v1 = icon.getMaxV(); - * vertex(1,u0,v0); vertex(5,u1,v0); vertex(6,u1,v1); vertex(2,u0,v1); + * icon = block.getIcon(0, meta); u0 = icon.getMinU(); v0 = icon.getMinV(); u1 = icon.getMaxU(); v1 = icon.getMaxV(); vertex(1,u0,v0); vertex(5,u1,v0); vertex(6,u1,v1); vertex(2,u0,v1); * - * icon = block.getIcon(1, meta); u0 = icon.getMinU(); v0 = - * icon.getMinV(); u1 = icon.getMaxU(); v1 = icon.getMaxV(); - * vertex(0,u0,v0); vertex(3,u0,v1); vertex(7,u1,v1); vertex(4,u1,v0); + * icon = block.getIcon(1, meta); u0 = icon.getMinU(); v0 = icon.getMinV(); u1 = icon.getMaxU(); v1 = icon.getMaxV(); vertex(0,u0,v0); vertex(3,u0,v1); vertex(7,u1,v1); vertex(4,u1,v0); */ renderer.blockAccess = world; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RendererLayeredGlow.java b/src/main/java/team/chisel/client/render/RendererLayeredGlow.java similarity index 82% rename from src/main/java/com/cricketcraft/chisel/client/render/RendererLayeredGlow.java rename to src/main/java/team/chisel/client/render/RendererLayeredGlow.java index 59e5c32e..1da8f717 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RendererLayeredGlow.java +++ b/src/main/java/team/chisel/client/render/RendererLayeredGlow.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; @@ -7,10 +7,11 @@ import net.minecraft.world.IBlockAccess; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.block.BlockCarvableGlow; -import com.cricketcraft.chisel.config.Configurations; -import com.cricketcraft.chisel.utils.GeneralClient; +import team.chisel.Chisel; +import team.chisel.block.BlockCarvableGlow; +import team.chisel.config.Configurations; +import team.chisel.utils.GeneralClient; + import com.cricketcraft.ctmlib.Drawing; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; @@ -27,7 +28,7 @@ public class RendererLayeredGlow implements ISimpleBlockRenderingHandler { GL11.glTranslatef(-0.5F, -0.5F, -0.5F); GeneralClient.setGLColorFromInt(Configurations.configColors[metadata]); GL11.glDisable(GL11.GL_LIGHTING); - Drawing.drawBlock(block, ((BlockCarvableGlow)block).getGlowTexture(), renderer); + Drawing.drawBlock(block, ((BlockCarvableGlow) block).getGlowTexture(), renderer); GL11.glEnable(GL11.GL_LIGHTING); GL11.glColor3f(1, 1, 1); Drawing.drawBlock(block, metadata, renderer); @@ -42,7 +43,7 @@ public class RendererLayeredGlow implements ISimpleBlockRenderingHandler { renderer.renderStandardBlock(block, x, y, z); return true; } - + @Override public boolean shouldRender3DInInventory(int modelId) { return true; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RendererMultiLayer.java b/src/main/java/team/chisel/client/render/RendererMultiLayer.java similarity index 95% rename from src/main/java/com/cricketcraft/chisel/client/render/RendererMultiLayer.java rename to src/main/java/team/chisel/client/render/RendererMultiLayer.java index 1d059d5c..acf6bbf7 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RendererMultiLayer.java +++ b/src/main/java/team/chisel/client/render/RendererMultiLayer.java @@ -1,15 +1,16 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; -import com.cricketcraft.chisel.block.BlockMultiLayerBase; -import com.cricketcraft.ctmlib.Drawing; - -import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; -import cpw.mods.fml.client.registry.RenderingRegistry; +import team.chisel.block.BlockMultiLayerBase; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.init.Blocks; import net.minecraft.world.IBlockAccess; import net.minecraftforge.client.MinecraftForgeClient; + +import com.cricketcraft.ctmlib.Drawing; + +import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; +import cpw.mods.fml.client.registry.RenderingRegistry; import static org.lwjgl.opengl.GL11.*; public class RendererMultiLayer implements ISimpleBlockRenderingHandler { @@ -35,7 +36,7 @@ public class RendererMultiLayer implements ISimpleBlockRenderingHandler { } else if (block.base != null) { renderer.renderBlockAsItem(block.base, meta, 1.0f); } - + glPushMatrix(); glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RendererRoadLine.java b/src/main/java/team/chisel/client/render/RendererRoadLine.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/client/render/RendererRoadLine.java rename to src/main/java/team/chisel/client/render/RendererRoadLine.java index 0227317c..bd14d639 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RendererRoadLine.java +++ b/src/main/java/team/chisel/client/render/RendererRoadLine.java @@ -1,5 +1,7 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; +import team.chisel.Chisel; +import team.chisel.block.BlockRoadLine; import net.minecraft.block.Block; import net.minecraft.client.renderer.EntityRenderer; import net.minecraft.client.renderer.RenderBlocks; @@ -7,8 +9,6 @@ import net.minecraft.client.renderer.Tessellator; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.block.BlockRoadLine; import com.cricketcraft.ctmlib.Drawing; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RendererSimpleLayered.java b/src/main/java/team/chisel/client/render/RendererSimpleLayered.java similarity index 85% rename from src/main/java/com/cricketcraft/chisel/client/render/RendererSimpleLayered.java rename to src/main/java/team/chisel/client/render/RendererSimpleLayered.java index 55c893a6..f7524283 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RendererSimpleLayered.java +++ b/src/main/java/team/chisel/client/render/RendererSimpleLayered.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; @@ -6,8 +6,9 @@ import net.minecraft.world.IBlockAccess; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.block.BlockCarvableLayered; +import team.chisel.Chisel; +import team.chisel.block.BlockCarvableLayered; + import com.cricketcraft.ctmlib.Drawing; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; @@ -23,7 +24,7 @@ public class RendererSimpleLayered implements ISimpleBlockRenderingHandler { public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) { GL11.glTranslatef(-0.5F, -0.5F, -0.5F); GL11.glDisable(GL11.GL_LIGHTING); - Drawing.drawBlock(block, ((BlockCarvableLayered)block).getBaseTex(), renderer); + Drawing.drawBlock(block, ((BlockCarvableLayered) block).getBaseTex(), renderer); GL11.glEnable(GL11.GL_LIGHTING); Drawing.drawBlock(block, metadata, renderer); GL11.glTranslatef(0.5F, 0.5F, 0.5F); diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RendererSnakeStone.java b/src/main/java/team/chisel/client/render/RendererSnakeStone.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/client/render/RendererSnakeStone.java rename to src/main/java/team/chisel/client/render/RendererSnakeStone.java index 54939ff8..a04c0c5a 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RendererSnakeStone.java +++ b/src/main/java/team/chisel/client/render/RendererSnakeStone.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; @@ -6,7 +6,8 @@ import net.minecraft.world.IBlockAccess; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.block.BlockSnakestone; +import team.chisel.block.BlockSnakestone; + import com.cricketcraft.ctmlib.Drawing; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/RendererStairs.java b/src/main/java/team/chisel/client/render/RendererStairs.java similarity index 93% rename from src/main/java/com/cricketcraft/chisel/client/render/RendererStairs.java rename to src/main/java/team/chisel/client/render/RendererStairs.java index e835c47c..c2c2a9ae 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/RendererStairs.java +++ b/src/main/java/team/chisel/client/render/RendererStairs.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; @@ -6,7 +6,8 @@ import net.minecraft.world.IBlockAccess; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.block.BlockCarvableStairs; +import team.chisel.block.BlockCarvableStairs; + import com.cricketcraft.ctmlib.Drawing; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerAntiblock.java b/src/main/java/team/chisel/client/render/SubmapManagerAntiblock.java similarity index 62% rename from src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerAntiblock.java rename to src/main/java/team/chisel/client/render/SubmapManagerAntiblock.java index cfd84aed..027383a1 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerAntiblock.java +++ b/src/main/java/team/chisel/client/render/SubmapManagerAntiblock.java @@ -1,11 +1,17 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; +import org.lwjgl.opengl.GL11; + +import team.chisel.init.ChiselBlocks; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; +import net.minecraftforge.client.IItemRenderer; +import com.cricketcraft.ctmlib.Drawing; import com.cricketcraft.ctmlib.RenderBlocksCTM; import com.cricketcraft.ctmlib.TextureSubmap; @@ -13,26 +19,62 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class SubmapManagerAntiblock extends SubmapManagerBase { + + @SideOnly(Side.CLIENT) + public static class AntiblockItemRenderer implements IItemRenderer { + + @Override + public boolean handleRenderType(ItemStack item, ItemRenderType type) { + return true; + } + + @Override + public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { + return true; + } + + @Override + public void renderItem(ItemRenderType type, ItemStack item, Object... data) { + GL11.glDisable(GL11.GL_LIGHTING); + Drawing.drawBlock(ChiselBlocks.antiBlock, ChiselBlocks.antiBlock.getIcon(0, item.getItemDamage()), (RenderBlocks) data[0]); + GL11.glEnable(GL11.GL_LIGHTING); + } + } @SideOnly(Side.CLIENT) private static class RenderBlocksCTMFullbright extends RenderBlocksCTM { @Override protected void fillLightmap(int bottomLeft, int bottomRight, int topRight, int topLeft) { + ao(); int maxLight = 0xF000F0; super.fillLightmap(maxLight, maxLight, maxLight, maxLight); } @Override protected void fillColormap(float bottomLeft, float bottomRight, float topRight, float topLeft, float[][] map) { + ao(); int color = 0xFFFFFF; super.fillColormap(color, color, color, color, map); } + + @Override + public boolean renderStandardBlock(Block block, int x, int y, int z) { + boolean ret = super.renderStandardBlock(block, x, y, z); + this.enableAO = false; + return ret; + } + + private void ao() { + if (this.inWorld) { + this.enableAO = true; + } + } }; @SideOnly(Side.CLIENT) private static RenderBlocksCTMFullbright rb; - + private String color; private TextureSubmap submap, submapSmall; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerBase.java b/src/main/java/team/chisel/client/render/SubmapManagerBase.java similarity index 95% rename from src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerBase.java rename to src/main/java/team/chisel/client/render/SubmapManagerBase.java index a970a9b7..0d483f58 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerBase.java +++ b/src/main/java/team/chisel/client/render/SubmapManagerBase.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; @@ -11,14 +11,13 @@ import com.cricketcraft.ctmlib.ISubmapManager; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; - public abstract class SubmapManagerBase implements ISubmapManager { @Override public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { return getIcon(side, world.getBlockMetadata(x, y, z)); } - + @Override @SideOnly(Side.CLIENT) public RenderBlocks createRenderContext(RenderBlocks rendererOld, Block block, IBlockAccess world) { diff --git a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerCarpetFloor.java b/src/main/java/team/chisel/client/render/SubmapManagerCarpetFloor.java similarity index 97% rename from src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerCarpetFloor.java rename to src/main/java/team/chisel/client/render/SubmapManagerCarpetFloor.java index 54e76af5..25a248f3 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerCarpetFloor.java +++ b/src/main/java/team/chisel/client/render/SubmapManagerCarpetFloor.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; diff --git a/src/main/java/team/chisel/client/render/SubmapManagerCombinedCTM.java b/src/main/java/team/chisel/client/render/SubmapManagerCombinedCTM.java new file mode 100644 index 00000000..5d721825 --- /dev/null +++ b/src/main/java/team/chisel/client/render/SubmapManagerCombinedCTM.java @@ -0,0 +1,153 @@ +package team.chisel.client.render; + +import net.minecraft.block.Block; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.util.IIcon; +import net.minecraft.util.MathHelper; +import net.minecraft.world.IBlockAccess; +import net.minecraftforge.common.util.ForgeDirection; + +import org.apache.commons.lang3.tuple.Triple; + +import com.cricketcraft.chisel.api.carving.CarvingUtils; +import com.cricketcraft.chisel.api.rendering.TextureType; +import com.cricketcraft.chisel.api.rendering.TextureType.AbstractSubmapManager; +import com.cricketcraft.ctmlib.RenderBlocksCTM; +import com.cricketcraft.ctmlib.TextureSubmap; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +public class SubmapManagerCombinedCTM extends SubmapManagerBase { + + @SideOnly(Side.CLIENT) + private class RenderBlocksCombinedCTM extends RenderBlocksCTM { + + @Override + public void renderFaceXNeg(Block block, double x, double y, double z, IIcon icon) { + setIcons(rType, x, y, z, ForgeDirection.WEST); + super.renderFaceXNeg(block, x, y, z, inWorld ? submapSmall.getSubIcon(0, 0) : icon); + } + + @Override + public void renderFaceXPos(Block block, double x, double y, double z, IIcon icon) { + setIcons(rType, x, y, z, ForgeDirection.EAST); + super.renderFaceXPos(block, x, y, z, inWorld ? submapSmall.getSubIcon(0, 0) : icon); + } + + @Override + public void renderFaceYNeg(Block block, double x, double y, double z, IIcon icon) { + setIcons(rType, x, y, z, ForgeDirection.DOWN); + super.renderFaceYNeg(block, x, y, z, inWorld ? submapSmall.getSubIcon(0, 0) : icon); + } + + @Override + public void renderFaceYPos(Block block, double x, double y, double z, IIcon icon) { + setIcons(rType, x, y, z, ForgeDirection.UP); + super.renderFaceYPos(block, x, y, z, inWorld ? submapSmall.getSubIcon(0, 0) : icon); + } + + @Override + public void renderFaceZNeg(Block block, double x, double y, double z, IIcon icon) { + setIcons(rType, x, y, z, ForgeDirection.NORTH); + super.renderFaceZNeg(block, x, y, z, inWorld ? submapSmall.getSubIcon(0, 0) : icon); + } + + @Override + public void renderFaceZPos(Block block, double x, double y, double z, IIcon icon) { + setIcons(rType, x, y, z, ForgeDirection.SOUTH); + super.renderFaceZPos(block, x, y, z, inWorld ? submapSmall.getSubIcon(0, 0) : icon); + } + + private void setIcons(TextureType type, double x, double y, double z, ForgeDirection side) { + int ix = MathHelper.floor_double(x); + int iy = MathHelper.floor_double(y); + int iz = MathHelper.floor_double(z); + if (type == TextureType.V4 || type == TextureType.V9) { + submap = (TextureSubmap) TextureType.getVIcon(rType, SubmapManagerCombinedCTM.this.submap, ix, iy, iz, side.ordinal()); + submapSmall = (TextureSubmap) TextureType.getVIcon(rType, SubmapManagerCombinedCTM.this.smallSubmap, ix, iy, iz, side.ordinal()); + } else { + submap = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerCombinedCTM.this.submap, ix, iy, iz, side.ordinal()); + submapSmall = (TextureSubmap) TextureType.getRIcon(rType, SubmapManagerCombinedCTM.this.smallSubmap, ix, iy, iz, side.ordinal()); + } + } + } + + private class Submap extends TextureSubmap { + + private TextureSubmap[][] submap; + + public Submap(IIcon base, int wh, TextureSubmap[][] submap) { + super(base, wh, wh); + this.submap = submap; + } + + @Override + public void texturesStitched() { + for (int i = 0; i < icons.length; i++) { + for (int j = 0; j < icons[i].length; j++) { + icons[i][j] = submap[i][j]; + submap[i][j].texturesStitched(); + } + } + } + } + + @SideOnly(Side.CLIENT) + private RenderBlocksCTM rb; + + private TextureSubmap submap, smallSubmap; + private int size; + private String texturePath; + private int meta; + private IIcon defaultIcon; + private TextureType rType; + + public SubmapManagerCombinedCTM(int meta, String texturePath, TextureType rType) { + assert rType == TextureType.R16 || rType == TextureType.R9 || rType == TextureType.R4 || rType == TextureType.V4 || rType == TextureType.V9 : "Not a valid random type!"; + + this.meta = meta; + this.texturePath = texturePath; + this.size = Integer.parseInt(rType.name().substring(1, rType.name().length())); // >.> + this.rType = rType; + } + + @Override + public IIcon getIcon(int side, int meta) { + return defaultIcon; + } + + @Override + @SideOnly(Side.CLIENT) + public RenderBlocks createRenderContext(RenderBlocks rendererOld, Block block, IBlockAccess world) { + if (rb == null) { + rb = new RenderBlocksCombinedCTM(); + } + rb.setRenderBoundsFromBlock(block); + return rb; + } + + @SuppressWarnings("unchecked") + @Override + @SideOnly(Side.CLIENT) + public void registerIcons(String modName, Block block, IIconRegister register) { + IIcon base = register.registerIcon(modName + ":" + texturePath); + int wh = (int) Math.sqrt(size); + TextureSubmap[][] submaps = new TextureSubmap[wh][wh]; + TextureSubmap[][] submapsSmall = new TextureSubmap[wh][wh]; + for (int i = 0; i < size; i++) { + AbstractSubmapManager manager = (AbstractSubmapManager) TextureType.CTMX.createManagerFor(CarvingUtils.getDefaultVariationFor(block, meta, 0), texturePath + "-" + i); + manager.registerIcons(modName, block, register); + Object cached = manager.getCachedObject(); + Triple triple = (Triple) cached; + submaps[i % wh][i / wh] = triple.getMiddle(); + submapsSmall[i % wh][i / wh] = triple.getRight(); + if (i == 0) { + defaultIcon = triple.getRight().getBaseIcon(); + } + } + submap = new Submap(base, wh, submaps); + smallSubmap = new Submap(base, wh, submapsSmall); + } +} diff --git a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerFakeController.java b/src/main/java/team/chisel/client/render/SubmapManagerFakeController.java similarity index 59% rename from src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerFakeController.java rename to src/main/java/team/chisel/client/render/SubmapManagerFakeController.java index b8438269..45388ded 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerFakeController.java +++ b/src/main/java/team/chisel/client/render/SubmapManagerFakeController.java @@ -1,35 +1,35 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; -import com.cricketcraft.chisel.Chisel; +import team.chisel.Chisel; +import team.chisel.init.ChiselBlocks; import net.minecraft.block.Block; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; -import com.cricketcraft.chisel.init.ChiselBlocks; import com.cricketcraft.ctmlib.CTM; import com.cricketcraft.ctmlib.TextureSubmap; - -import static com.cricketcraft.ctmlib.Dir.*; +import com.google.common.base.Optional; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import static com.cricketcraft.ctmlib.Dir.*; public class SubmapManagerFakeController extends SubmapManagerBase { private TextureSubmap map; private CTM ctm = CTM.getInstance(); private int meta; - private String texturePath; + private String texturePath; - public SubmapManagerFakeController(int meta, String texture) { - ctm.disableObscuredFaceCheck = true; - this.meta = meta; - texturePath = texture; - } + public SubmapManagerFakeController(int meta, String texture) { + ctm.disableObscuredFaceCheck = Optional.of(true); + this.meta = meta; + texturePath = texture; + } public SubmapManagerFakeController(int meta) { - ctm.disableObscuredFaceCheck = true; + ctm.disableObscuredFaceCheck = Optional.of(true); this.meta = meta; } @@ -39,8 +39,7 @@ public class SubmapManagerFakeController extends SubmapManagerBase { } @Override - public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) - { + public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { ctm.buildConnectionMap(world, x, y, z, side, ChiselBlocks.futura, meta); if (ctm.connectedAnd(TOP, TOP_RIGHT, RIGHT, BOTTOM_RIGHT, BOTTOM, BOTTOM_LEFT, LEFT, TOP_LEFT)) { @@ -58,15 +57,11 @@ public class SubmapManagerFakeController extends SubmapManagerBase { @SideOnly(Side.CLIENT) public void registerIcons(String modName, Block block, IIconRegister register) { - if (texturePath != null) - { - map = new TextureSubmap(register.registerIcon(modName + ":" + texturePath), 2, 2); - } - else - { - Chisel.logger.info("SubmapManagerFakeController was called on block " + block.getUnlocalizedName() - + " without declaring texture, using a default texture instead."); - map = new TextureSubmap(register.registerIcon(modName + ":futura/WIP/controller"), 2, 2); - } + if (texturePath != null) { + map = new TextureSubmap(register.registerIcon(modName + ":" + texturePath), 2, 2); + } else { + Chisel.logger.info("SubmapManagerFakeController was called on block " + block.getUnlocalizedName() + " without declaring texture, using a default texture instead."); + map = new TextureSubmap(register.registerIcon(modName + ":futura/WIP/controller"), 2, 2); + } } } diff --git a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerLeaves.java b/src/main/java/team/chisel/client/render/SubmapManagerLeaves.java similarity index 93% rename from src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerLeaves.java rename to src/main/java/team/chisel/client/render/SubmapManagerLeaves.java index 6a289c73..91b4b2c5 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerLeaves.java +++ b/src/main/java/team/chisel/client/render/SubmapManagerLeaves.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.texture.IIconRegister; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerSlab.java b/src/main/java/team/chisel/client/render/SubmapManagerSlab.java similarity index 98% rename from src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerSlab.java rename to src/main/java/team/chisel/client/render/SubmapManagerSlab.java index d3928aaa..3351a9f8 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerSlab.java +++ b/src/main/java/team/chisel/client/render/SubmapManagerSlab.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; @@ -58,7 +58,7 @@ public class SubmapManagerSlab implements ISubmapManager { rb.submapSmall = submapSmall; return rb; } - + private boolean hadOverride = false; @Override diff --git a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerVoidstone.java b/src/main/java/team/chisel/client/render/SubmapManagerVoidstone.java similarity index 93% rename from src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerVoidstone.java rename to src/main/java/team/chisel/client/render/SubmapManagerVoidstone.java index b03c495d..d5484ccb 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/SubmapManagerVoidstone.java +++ b/src/main/java/team/chisel/client/render/SubmapManagerVoidstone.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render; +package team.chisel.client.render; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; @@ -22,11 +22,11 @@ public class SubmapManagerVoidstone extends SubmapManagerBase { // TODO there must be a better more generic way to do this... @SideOnly(Side.CLIENT) private class RenderBlocksVoidstone extends RenderBlocksCTM { - + @Override public void renderFaceXNeg(Block block, double x, double y, double z, IIcon icon) { super.renderFaceXNeg(block, x, y, z, icon); - setRenderBounds(0.001, 0, 0, 1, 1, 1); + renderMinX += 0.001; setOverrideBlockTexture(getBase(x, y, z, ForgeDirection.WEST.ordinal())); super.renderFaceXNeg(block, x, y, z, null); clearOverrideBlockTexture(); @@ -36,7 +36,7 @@ public class SubmapManagerVoidstone extends SubmapManagerBase { public void renderFaceXPos(Block block, double x, double y, double z, IIcon icon) { super.renderFaceXPos(block, x, y, z, icon); setOverrideBlockTexture(getBase(x, y, z, ForgeDirection.EAST.ordinal())); - setRenderBounds(0, 0, 0, 0.999, 1, 1); + renderMaxX -= 0.001; super.renderFaceXPos(block, x, y, z, null); clearOverrideBlockTexture(); } @@ -45,7 +45,7 @@ public class SubmapManagerVoidstone extends SubmapManagerBase { public void renderFaceYNeg(Block block, double x, double y, double z, IIcon icon) { super.renderFaceYNeg(block, x, y, z, icon); setOverrideBlockTexture(getBase(x, y, z, ForgeDirection.DOWN.ordinal())); - setRenderBounds(0, 0.001, 0, 1, 1, 1); + renderMinY += 0.001; super.renderFaceYNeg(block, x, y, z, null); clearOverrideBlockTexture(); } @@ -54,7 +54,7 @@ public class SubmapManagerVoidstone extends SubmapManagerBase { public void renderFaceYPos(Block block, double x, double y, double z, IIcon icon) { super.renderFaceYPos(block, x, y, z, icon); setOverrideBlockTexture(getBase(x, y, z, ForgeDirection.UP.ordinal())); - setRenderBounds(0, 0, 0, 1, 0.999, 1); + renderMaxY -= 0.001; super.renderFaceYPos(block, x, y, z, null); clearOverrideBlockTexture(); } @@ -63,7 +63,7 @@ public class SubmapManagerVoidstone extends SubmapManagerBase { public void renderFaceZNeg(Block block, double x, double y, double z, IIcon icon) { super.renderFaceZNeg(block, x, y, z, icon); setOverrideBlockTexture(getBase(x, y, z, ForgeDirection.NORTH.ordinal())); - setRenderBounds(0, 0, 0.001, 1, 1, 1); + renderMinZ += 0.001; super.renderFaceZNeg(block, x, y, z, null); clearOverrideBlockTexture(); } @@ -72,7 +72,7 @@ public class SubmapManagerVoidstone extends SubmapManagerBase { public void renderFaceZPos(Block block, double x, double y, double z, IIcon icon) { super.renderFaceZPos(block, x, y, z, icon); setOverrideBlockTexture(getBase(x, y, z, ForgeDirection.SOUTH.ordinal())); - setRenderBounds(0, 0, 0, 1, 1, 0.999); + renderMaxZ -= 0.001; super.renderFaceZPos(block, x, y, z, null); clearOverrideBlockTexture(); } @@ -100,7 +100,7 @@ public class SubmapManagerVoidstone extends SubmapManagerBase { public IIcon getIcon(int side, int meta) { return overlay.getIcon(side, meta); } - + @Override public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) { return overlay.getIcon(world, x, y, z, side); diff --git a/src/main/java/com/cricketcraft/chisel/client/render/item/ItemChiselRenderer.java b/src/main/java/team/chisel/client/render/item/ItemChiselRenderer.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/client/render/item/ItemChiselRenderer.java rename to src/main/java/team/chisel/client/render/item/ItemChiselRenderer.java index 3e5e4f47..0cdf0a90 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/item/ItemChiselRenderer.java +++ b/src/main/java/team/chisel/client/render/item/ItemChiselRenderer.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render.item; +package team.chisel.client.render.item; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.RenderBlocks; diff --git a/src/main/java/com/cricketcraft/chisel/client/render/tile/RenderAutoChisel.java b/src/main/java/team/chisel/client/render/tile/RenderAutoChisel.java similarity index 97% rename from src/main/java/com/cricketcraft/chisel/client/render/tile/RenderAutoChisel.java rename to src/main/java/team/chisel/client/render/tile/RenderAutoChisel.java index 8c4317c1..f4a82a39 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/tile/RenderAutoChisel.java +++ b/src/main/java/team/chisel/client/render/tile/RenderAutoChisel.java @@ -1,7 +1,9 @@ -package com.cricketcraft.chisel.client.render.tile; +package team.chisel.client.render.tile; import java.util.Random; +import team.chisel.Chisel; +import team.chisel.block.tileentity.TileEntityAutoChisel; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.RenderBlocks; @@ -22,13 +24,8 @@ import net.minecraftforge.client.model.obj.GroupObject; import net.minecraftforge.client.model.obj.TextureCoordinate; import net.minecraftforge.client.model.obj.Vertex; import net.minecraftforge.client.model.obj.WavefrontObject; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; - import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; import cpw.mods.fml.client.registry.RenderingRegistry; - import static org.lwjgl.opengl.GL11.*; public class RenderAutoChisel extends TileEntitySpecialRenderer implements ISimpleBlockRenderingHandler, IItemRenderer { diff --git a/src/main/java/team/chisel/client/render/tile/RenderCarvableBeacon.java b/src/main/java/team/chisel/client/render/tile/RenderCarvableBeacon.java new file mode 100644 index 00000000..f86b765f --- /dev/null +++ b/src/main/java/team/chisel/client/render/tile/RenderCarvableBeacon.java @@ -0,0 +1,161 @@ +package team.chisel.client.render.tile; + +import java.awt.Color; + +import net.minecraft.block.Block; +import net.minecraft.client.renderer.OpenGlHelper; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.client.renderer.tileentity.TileEntityBeaconRenderer; +import net.minecraft.init.Blocks; +import net.minecraft.item.ItemDye; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.MathHelper; +import net.minecraft.util.ResourceLocation; +import net.minecraft.world.IBlockAccess; + +import org.lwjgl.opengl.GL11; + +import team.chisel.block.tileentity.TileEntityCarvableBeacon; +import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; +import cpw.mods.fml.client.registry.RenderingRegistry; + +public class RenderCarvableBeacon extends TileEntityBeaconRenderer implements ISimpleBlockRenderingHandler { + + private static final ResourceLocation texture = new ResourceLocation("textures/entity/beacon_beam.png"); + + private int renderId; + + public RenderCarvableBeacon() { + this.renderId = RenderingRegistry.getNextAvailableRenderId(); + } + + public void renderTileEntityAt(TileEntityCarvableBeacon beacon, double x, double y, double z, float partialTicks) { + float f1 = beacon.func_146002_i(); + GL11.glAlphaFunc(GL11.GL_GREATER, 0.1F); + if (f1 > 0.1F) { + Color color = new Color(ItemDye.field_150922_c[beacon.getWorldObj().getBlockMetadata(beacon.xCoord, beacon.yCoord, beacon.zCoord)]); + Tessellator tessellator = Tessellator.instance; + this.bindTexture(texture); + GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, 10497.0F); + GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, 10497.0F); + GL11.glDisable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glDisable(GL11.GL_BLEND); + GL11.glDepthMask(true); + OpenGlHelper.glBlendFunc(770, 1, 1, 0); + float f2 = beacon.getWorldObj().getTotalWorldTime() + partialTicks; + float f3 = -f2 * 0.2F - MathHelper.floor_float(-f2 * 0.1F); + byte b0 = 1; + double d3 = f2 * 0.025D * (1.0D - (b0 & 1) * 2.5D); + tessellator.startDrawingQuads(); + tessellator.setColorRGBA(color.getRed(), color.getGreen(), color.getBlue(), 32); + double d5 = b0 * 0.2D; + double d7 = 0.5D + Math.cos(d3 + 2.356194490192345D) * d5; + double d9 = 0.5D + Math.sin(d3 + 2.356194490192345D) * d5; + double d11 = 0.5D + Math.cos(d3 + (Math.PI / 4D)) * d5; + double d13 = 0.5D + Math.sin(d3 + (Math.PI / 4D)) * d5; + double d15 = 0.5D + Math.cos(d3 + 3.9269908169872414D) * d5; + double d17 = 0.5D + Math.sin(d3 + 3.9269908169872414D) * d5; + double d19 = 0.5D + Math.cos(d3 + 5.497787143782138D) * d5; + double d21 = 0.5D + Math.sin(d3 + 5.497787143782138D) * d5; + double d23 = 256.0F * f1; + double d25 = 0.0D; + double d27 = 1.0D; + double d28 = -1.0F + f3; + double d29 = 256.0F * f1 * (0.5D / d5) + d28; + tessellator.addVertexWithUV(x + d7, y + d23, z + d9, d27, d29); + tessellator.addVertexWithUV(x + d7, y, z + d9, d27, d28); + tessellator.addVertexWithUV(x + d11, y, z + d13, d25, d28); + tessellator.addVertexWithUV(x + d11, y + d23, z + d13, d25, d29); + tessellator.addVertexWithUV(x + d19, y + d23, z + d21, d27, d29); + tessellator.addVertexWithUV(x + d19, y, z + d21, d27, d28); + tessellator.addVertexWithUV(x + d15, y, z + d17, d25, d28); + tessellator.addVertexWithUV(x + d15, y + d23, z + d17, d25, d29); + tessellator.addVertexWithUV(x + d11, y + d23, z + d13, d27, d29); + tessellator.addVertexWithUV(x + d11, y, z + d13, d27, d28); + tessellator.addVertexWithUV(x + d19, y, z + d21, d25, d28); + tessellator.addVertexWithUV(x + d19, y + d23, z + d21, d25, d29); + tessellator.addVertexWithUV(x + d15, y + d23, z + d17, d27, d29); + tessellator.addVertexWithUV(x + d15, y, z + d17, d27, d28); + tessellator.addVertexWithUV(x + d7, y, z + d9, d25, d28); + tessellator.addVertexWithUV(x + d7, y + d23, z + d9, d25, d29); + tessellator.draw(); + GL11.glEnable(GL11.GL_BLEND); + OpenGlHelper.glBlendFunc(770, 771, 1, 0); + GL11.glDepthMask(false); + tessellator.startDrawingQuads(); + tessellator.setColorRGBA(color.getRed(), color.getGreen(), color.getBlue(), 32); + double d30 = 0.2D; + double d4 = 0.2D; + double d6 = 0.8D; + double d8 = 0.2D; + double d10 = 0.2D; + double d12 = 0.8D; + double d14 = 0.8D; + double d16 = 0.8D; + double d18 = 256.0F * f1; + double d20 = 0.0D; + double d22 = 1.0D; + double d24 = -1.0F + f3; + double d26 = 256.0F * f1 + d24; + tessellator.addVertexWithUV(x + d30, y + d18, z + d4, d22, d26); + tessellator.addVertexWithUV(x + d30, y, z + d4, d22, d24); + tessellator.addVertexWithUV(x + d6, y, z + d8, d20, d24); + tessellator.addVertexWithUV(x + d6, y + d18, z + d8, d20, d26); + tessellator.addVertexWithUV(x + d14, y + d18, z + d16, d22, d26); + tessellator.addVertexWithUV(x + d14, y, z + d16, d22, d24); + tessellator.addVertexWithUV(x + d10, y, z + d12, d20, d24); + tessellator.addVertexWithUV(x + d10, y + d18, z + d12, d20, d26); + tessellator.addVertexWithUV(x + d6, y + d18, z + d8, d22, d26); + tessellator.addVertexWithUV(x + d6, y, z + d8, d22, d24); + tessellator.addVertexWithUV(x + d14, y, z + d16, d20, d24); + tessellator.addVertexWithUV(x + d14, y + d18, z + d16, d20, d26); + tessellator.addVertexWithUV(x + d10, y + d18, z + d12, d22, d26); + tessellator.addVertexWithUV(x + d10, y, z + d12, d22, d24); + tessellator.addVertexWithUV(x + d30, y, z + d4, d20, d24); + tessellator.addVertexWithUV(x + d30, y + d18, z + d4, d20, d26); + tessellator.draw(); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_TEXTURE_2D); + GL11.glDepthMask(true); + } + } + + @Override + public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float partialTicks) { + this.renderTileEntityAt((TileEntityCarvableBeacon) tile, x, y, z, partialTicks); + } + + @Override + public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) { + renderer.renderBlockAsItem(Blocks.beacon, 0, 1); + } + + @Override + public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) { + float f = 0.1875F; + renderer.setOverrideBlockTexture(renderer.getBlockIcon(Blocks.glass)); + renderer.renderStandardBlockWithAmbientOcclusion(block, x, y, z, 1, 1, 1); + renderer.renderAllFaces = true; + renderer.setOverrideBlockTexture(renderer.getBlockIcon(Blocks.obsidian)); + renderer.setRenderBounds(0.125D, 0.00625D, 0.125D, 0.875D, f, 0.875D); + renderer.renderStandardBlockWithAmbientOcclusion(block, x, y, z, 1, 1, 1); + renderer.setOverrideBlockTexture(renderer.getBlockIcon(Blocks.beacon)); + renderer.setRenderBounds(0.1875D, f, 0.1875D, 0.8125D, 0.875D, 0.8125D); + renderer.renderStandardBlockWithAmbientOcclusion(block, x, y, z, 1, 1, 1); + renderer.renderAllFaces = false; + renderer.clearOverrideBlockTexture(); + return true; + } + + @Override + public boolean shouldRender3DInInventory(int modelId) { + return true; + } + + @Override + public int getRenderId() { + return renderId; + } +} diff --git a/src/main/java/com/cricketcraft/chisel/client/render/tile/RenderPresent.java b/src/main/java/team/chisel/client/render/tile/RenderPresent.java similarity index 94% rename from src/main/java/com/cricketcraft/chisel/client/render/tile/RenderPresent.java rename to src/main/java/team/chisel/client/render/tile/RenderPresent.java index 0c66ba49..3bd0977a 100644 --- a/src/main/java/com/cricketcraft/chisel/client/render/tile/RenderPresent.java +++ b/src/main/java/team/chisel/client/render/tile/RenderPresent.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.client.render.tile; +package team.chisel.client.render.tile; import java.util.HashMap; @@ -14,9 +14,10 @@ import net.minecraftforge.common.util.ForgeDirection; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.block.tileentity.TileEntityPresent; -import com.cricketcraft.chisel.init.ChiselBlocks; +import team.chisel.Chisel; +import team.chisel.block.tileentity.TileEntityPresent; +import team.chisel.init.ChiselBlocks; + import com.google.common.collect.Maps; import cpw.mods.fml.client.FMLClientHandler; @@ -25,7 +26,7 @@ public class RenderPresent extends TileEntitySpecialRenderer implements IItemRen private ModelChest smallChest = new ModelChest(); private ModelChest largeChest = new ModelLargeChest(); - + private HashMap textureCache = Maps.newHashMap(); public void renderTileEntityAt(TileEntityPresent present, double x, double y, double z, float partialTicks) { @@ -38,7 +39,7 @@ public class RenderPresent extends TileEntitySpecialRenderer implements IItemRen bindTexture(present); if (!present.isConnected()) { GL11.glRotatef(90 * rotation + 180, 0, 1, 0); - switch(rotation) { + switch (rotation) { case 0: GL11.glTranslatef(-1, 0, -1); break; @@ -52,7 +53,7 @@ public class RenderPresent extends TileEntitySpecialRenderer implements IItemRen smallChest.renderAll(); } else if (present.isParent()) { ForgeDirection dir = present.getConnectionDir(); - switch(dir) { + switch (dir) { case NORTH: GL11.glRotatef(-90, 0, 1, 0); GL11.glTranslatef(0, 0, -1); @@ -75,7 +76,7 @@ public class RenderPresent extends TileEntitySpecialRenderer implements IItemRen } GL11.glPopMatrix(); } - + private void bindTexture(TileEntityPresent present) { int idx = present.getWorldObj().getBlockMetadata(present.xCoord, present.yCoord, present.zCoord) + (present.isConnected() ? 0 : 16); ResourceLocation rl = textureCache.get(idx); @@ -92,7 +93,7 @@ public class RenderPresent extends TileEntitySpecialRenderer implements IItemRen public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float partialTicks) { this.renderTileEntityAt((TileEntityPresent) tileEntity, x, y, z, partialTicks); } - + @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { return type != ItemRenderType.FIRST_PERSON_MAP; diff --git a/src/main/java/team/chisel/compat/Compatibility.java b/src/main/java/team/chisel/compat/Compatibility.java new file mode 100644 index 00000000..2a83dae9 --- /dev/null +++ b/src/main/java/team/chisel/compat/Compatibility.java @@ -0,0 +1,290 @@ +package team.chisel.compat; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +import com.pahimar.ee3.api.exchange.RecipeRegistryProxy; + +import net.minecraft.block.Block; +import net.minecraft.item.ItemStack; + +import org.apache.logging.log4j.Level; + +import team.chisel.Chisel; +import team.chisel.carving.Carving; +import team.chisel.init.ChiselBlocks; +import team.chisel.init.ChiselItems; +import team.chisel.utils.RecipeUtil; + +import com.cricketcraft.chisel.api.carving.ICarvingGroup; +import com.cricketcraft.chisel.api.carving.ICarvingVariation; +import com.google.common.collect.Maps; +import com.pahimar.ee3.api.exchange.EnergyValueRegistryProxy; + +import cpw.mods.fml.common.FMLLog; +import cpw.mods.fml.common.Loader; +import cpw.mods.fml.common.event.FMLPostInitializationEvent; +import cpw.mods.fml.common.registry.GameRegistry; + +public class Compatibility { + + public static String[] rockColorNames = { "gray", "lightgray", "brown", "tan", "reddish", "bluish", "greenish" }; + + public static Map tconMap = Maps.newHashMap(); + + static { + tconMap.put(0, "obsidian"); + tconMap.put(1, "sandstone"); + tconMap.put(2, "netherrack"); + tconMap.put(3, "stonebricksmooth"); + tconMap.put(12, "end_stone"); + } + + public static void init(FMLPostInitializationEvent event) { + + /* Proj Red */ + addSupport("ProjRed|Exploration", "projectred.exploration.stone", "marble", 0, 99); + addSupport("ProjRed|Exploration", "projectred.exploration.stone", "marble", 1, 99); + + /* Bluepower */ + addSupport("bluepower", "marble", "marble", 0, 99); + + /* Artifice */ + addSupport("Artifice", "artifice.marble", "marble", 0, 99); + addSupport("Artifice", "artifice.marble.slab", "marble_slab", 0, 99); + for (String s : rockColorNames) { + addSupport("Artifice", "artifice.limestone." + s, "limestone", 0, 99); + } + + /* Mariculture */ + Block block = GameRegistry.findBlock("mariculture", "limestone"); + if (block != null) { + for (int i = 0; i < 16; i++) { + addSupport("limestone", block, i, 99); + } + } + + /* Geologica */ + addSupport("PFAAGeologica", "strongStone", "marble", 5, 99); + addSupport("PFAAGeologica", "strongStoneSlab", "marbleSlab", 5, 99); + addSupport("PFAAGeologica", "strongStoneBrickStairs.marble", "marbleStairs", 0, 99); + addSupport("PFAAGeologica", "mediumStone", "limestone", 0, 99); + addSupport("PFAAGeologica", "mediumStoneSlab", "limestoneSlab", 0, 99); + addSupport("PFAAGeologica", "mediumStoneBrickStairs.limestone", "limestoneStairs", 0, 99); + addSupport("PFAAGeologica", "strongStoneBrick", "stoneBrick", 3, 99); + addSupport("PFAAGeologica", "strongCobble", "cobblestone", 3, 99); + + /* Thaumcraft TODO There is probably a cleaner way of doing this */ + if (Loader.isModLoaded("Thaumcraft")) { + loadThaumcraftAspects(); + } + + for (Integer i : tconMap.keySet()) { + addSupport("TConstruct", "decoration.multibrick", tconMap.get(i), i, 99); + addSupport("TConstruct", "decoration.multibrickfancy", tconMap.get(i), i, 99); + } + + addSupport("TConstruct", "decoration.multibrickfancy", "stonebricksmooth", 14, 99); + addSupport("TConstruct", "decoration.multibrickfancy", "stonebricksmooth", 15, 99); + + addSupport("Botania", "endStoneBrick", "end_stone", 0, 0); + addSupport("Botania", "endStoneBrick", "end_stone", 1, 0); + + if (Loader.isModLoaded("EE3")) { + loadEE3Values(); + } + } + + + public static void addSupport(String modname, String blockname, String name, int metadata, int order) { + if (Loader.isModLoaded(modname) && GameRegistry.findBlock(modname, blockname) != null) { + addSupport(name, GameRegistry.findBlock(modname, blockname), metadata, order); + } + } + + public static void addSupport(String name, Block block, int metadata, int order) { + Carving.chisel.addVariation(name, block, metadata, order); + } + + private static void loadThaumcraftAspects() { + // ThaumcraftApi.registerObjectTag(new ItemStack(ChiselBlocks.cobblestone, 1, OreDictionary.WILDCARD_VALUE), (new AspectList()).add(Aspect.ENTROPY, 1).add(Aspect.EARTH, 1)); + // ThaumcraftApi.registerObjectTag(new ItemStack(ChiselBlocks.cobblestoneWall, 1, OreDictionary.WILDCARD_VALUE), (new AspectList()).add(Aspect.ENTROPY, 1).add(Aspect.EARTH, 1)); + } + + private static void loadEE3Values() { + for (String groupName : Carving.chisel.getSortedGroupNames()){ + ICarvingGroup group = Carving.chisel.getGroup(groupName); + List baseStacks = new ArrayList(); + for (ICarvingVariation variation : group.getVariations()){ + if (RecipeUtil.isCreatable(new ItemStack(variation.getBlock(), 1, variation.getBlockMeta()))){ + baseStacks.add(new ItemStack(variation.getBlock(), 1, variation.getBlockMeta())); + } + } + for (ICarvingVariation variation : group.getVariations()){ + ItemStack stack = new ItemStack(variation.getBlock(), 1, variation.getBlockMeta()); + for (ItemStack baseStack : baseStacks) { +// if (baseStack==null){ +// Chisel.logger.error("Base Stack is null"); +// if (stack!=null){ +// Chisel.logger.info("Non base for base stack is "+stack); +// } +// continue; +// } +// if (stack==null){ +// Chisel.logger.error("Non Base stack is null"); +// Chisel.logger.info("Base stack for null stack is "+baseStack); +// continue; +// } + //Chisel.logger.info("Adding emc recipe for "+baseStack+" to "+stack); + RecipeRegistryProxy.addRecipe(stack, Arrays.asList(baseStack)); + } + } + } +// FMLLog.log(Chisel.MOD_ID, Level.INFO, "[Chisel 2] Oooh is that Equivalent Exchange I see?"); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselItems.ballomoss, 1), 16); +// +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.sand_snakestone, 1, 1), 8); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.sand_snakestone, 1, 13), 8); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 0), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 1), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 2), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 3), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cloud, 1, 4), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 1), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 2), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 3), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 4), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 12), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 13), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 14), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass_pane, 1, 15), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.present, 1, 4), 80); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.road_line, 1, 0), 24); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.road_line, 1, 1), 24); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.road_line, 1, 2), 24); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.road_line, 1, 3), 24); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 0), 24); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 1), 24); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 2), 24); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 3), 24); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass2, 1), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical2, 1, 0), 32); +// +// for (int x = 0; x < ChiselBlocks.pumpkin.length; x++) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.pumpkin[x], 1), 144); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.jackolantern[x], 1), 153); +// } +// +// for (int x = 0; x < ChiselBlocks.torches.length; x++) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.torches[x], 1), 9); +// } +// +// for (int x = 0; x < 10; x++) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.valentines, 1, x), 3); +// } +// +// for (int x = 0; x < 16; x++) { +// if (x <= 10) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.concrete, 1, x), 8); +// if (x <= 14) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.grimstone, 1, x), 5); +// if (x < 14) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.grimstone, 1, x), 7); +// if (x < 12) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.dirt, 1, x), 1); +// if (x < 5) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.rebel, 1, x), 39); +// } +// +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.fantasyblock, 1, x), 29444); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.fantasyblock, 1, x), 31444); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.limestone, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.marble, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.marble_pillar, 1, x), 8); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.marble_pillar_slab, 1, x), 4); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.sandstone_scribbles, 1, x), 4); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.stonebricksmooth, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.templeblock, 1, x), 108); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.mossy_templeblock, 1, x), 108); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glowstone, 1, x), 1536); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.ice, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.woolen_clay, 1, x), 153); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.factoryblock, 1, x), 32); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.hexPlating, 1, x), 37); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.gold_block, 1, x), 18432); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_block, 1, x), 2304); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.laboratoryblock, 1, x), 33); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.technical, 1, x), 32); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.tyrian, 1, x), 33); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.hexLargePlating, 1, x), 37); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.circuits, 1, x), 37); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.factoryblock2, 1, x), 32); +// +// if (x < 15) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.warningSign, 1, x), 6); +// +// if (x < 4) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.factoryblock2, 1, x), 32); +// +// for (int c = 0; c < ChiselBlocks.stainedGlass.length; c++) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.stainedGlass[c], 1, x), 1); +// } +// +// for (int c = 0; c < ChiselBlocks.stainedGlassPane.length; c++) { +// if (x <= 13) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.stainedGlassPane[c], 1, x), 1); +// } +// +// if (x > 0) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.cobblestone, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.mossy_cobblestone, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.netherrack, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.obsidian, 1, x), 64); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.sandstone, 1, x), 4); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstonerunic, 1, x), 160); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.glass, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.redstone_block, 1, x), 288); +// if (x <= 8) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.bookshelf, 1, x), 528); +// if (x <= 12) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.diamond_block, 1, x), 73728); +// if (x != 12) +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.emerald_block, 1, x), 73728); +// } +// +// for (int c = 0; c < ChiselBlocks.planks.length; c++) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.planks[c], 1, x), 8); +// } +// } +// } +// +// for (int x = 0; x <= 6; x++) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.andesite, 1, x), 129); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.diorite, 1, x), 257); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.granite, 1, x), 513); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.lavastone, 1, x), 9); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.lavastone, 1, 7), 9); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstone, 1, x), 160); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstone, 1, 7), 160); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstone2, 1, x), 256); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.voidstone2, 1, 7), 256); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.waterstone, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.ice_pillar, 1, x), 1); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_bars, 1, x), 96); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_bars, 1, 7), 96); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_bars, 1, 8), 96); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.iron_bars, 1, 9), 96); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall, 1, x), 32); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall, 1, 7), 32); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall, 1, 8), 32); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall_block, 1, x), 32); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall_block, 1, 7), 32); +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.paperwall_block, 1, 8), 32); +// if (x > 0) { +// EnergyValueRegistryProxy.addPreAssignedEnergyValue(new ItemStack(ChiselBlocks.brickCustom, 1, x), 256); +// } +// } + } +} diff --git a/src/main/java/com/cricketcraft/chisel/compat/IMCHandler.java b/src/main/java/team/chisel/compat/IMCHandler.java similarity index 91% rename from src/main/java/com/cricketcraft/chisel/compat/IMCHandler.java rename to src/main/java/team/chisel/compat/IMCHandler.java index 80d702f4..1349b408 100644 --- a/src/main/java/com/cricketcraft/chisel/compat/IMCHandler.java +++ b/src/main/java/team/chisel/compat/IMCHandler.java @@ -1,12 +1,11 @@ -package com.cricketcraft.chisel.compat; +package team.chisel.compat; -import net.minecraft.block.Block; - -import com.cricketcraft.chisel.Chisel; import com.cricketcraft.chisel.api.IMC; import com.cricketcraft.chisel.api.carving.ICarvingRegistry; -import com.cricketcraft.chisel.carving.Carving; +import team.chisel.Chisel; +import team.chisel.carving.Carving; +import net.minecraft.block.Block; import cpw.mods.fml.common.event.FMLInterModComms.IMCMessage; public class IMCHandler { @@ -14,7 +13,7 @@ public class IMCHandler { public static final IMCHandler INSTANCE = new IMCHandler(); private int order = 1000; - + private IMCHandler() { } diff --git a/src/main/java/com/cricketcraft/chisel/compat/WailaCompat.java b/src/main/java/team/chisel/compat/WailaCompat.java similarity index 90% rename from src/main/java/com/cricketcraft/chisel/compat/WailaCompat.java rename to src/main/java/team/chisel/compat/WailaCompat.java index de7c923d..910889a7 100644 --- a/src/main/java/com/cricketcraft/chisel/compat/WailaCompat.java +++ b/src/main/java/team/chisel/compat/WailaCompat.java @@ -1,7 +1,9 @@ -package com.cricketcraft.chisel.compat; +package team.chisel.compat; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; + import mcp.mobius.waila.api.IWailaConfigHandler; import mcp.mobius.waila.api.IWailaDataAccessor; import mcp.mobius.waila.api.IWailaDataProvider; @@ -13,8 +15,6 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; -import com.cricketcraft.chisel.api.ICarvable; - public class WailaCompat implements IWailaDataProvider { private WailaCompat() { @@ -35,7 +35,7 @@ public class WailaCompat implements IWailaDataProvider { if (accessor.getBlock() instanceof ICarvable) { ICarvable block = (ICarvable) accessor.getBlock(); MovingObjectPosition pos = accessor.getPosition(); - strings.add(block.getVariation(accessor.getWorld(), pos.blockX, pos.blockY, pos.blockZ, accessor.getMetadata()).getDescription()); + strings.add(block.getManager(accessor.getWorld(), pos.blockX, pos.blockY, pos.blockZ, accessor.getMetadata()).getDescription()); } return strings; } diff --git a/src/main/java/com/cricketcraft/chisel/compat/fmp/FMPCompat.java b/src/main/java/team/chisel/compat/fmp/FMPCompat.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/compat/fmp/FMPCompat.java rename to src/main/java/team/chisel/compat/fmp/FMPCompat.java index 3c6c864a..a39af9e6 100644 --- a/src/main/java/com/cricketcraft/chisel/compat/fmp/FMPCompat.java +++ b/src/main/java/team/chisel/compat/fmp/FMPCompat.java @@ -1,16 +1,16 @@ -package com.cricketcraft.chisel.compat.fmp; - -import com.cricketcraft.chisel.init.ChiselBlocks; -import com.google.common.collect.Lists; +package team.chisel.compat.fmp; +import team.chisel.init.ChiselBlocks; import net.minecraft.block.Block; import net.minecraft.world.World; import codechicken.lib.vec.BlockCoord; +import codechicken.multipart.MultiPartRegistry; import codechicken.multipart.MultiPartRegistry.IPartConverter; import codechicken.multipart.MultiPartRegistry.IPartFactory; -import codechicken.multipart.MultiPartRegistry; import codechicken.multipart.TMultiPart; +import com.google.common.collect.Lists; + public class FMPCompat implements IPartFactory, IPartConverter { public void init() { diff --git a/src/main/java/com/cricketcraft/chisel/compat/fmp/ItemBlockChiselTorchPart.java b/src/main/java/team/chisel/compat/fmp/ItemBlockChiselTorchPart.java similarity index 95% rename from src/main/java/com/cricketcraft/chisel/compat/fmp/ItemBlockChiselTorchPart.java rename to src/main/java/team/chisel/compat/fmp/ItemBlockChiselTorchPart.java index 4f7c9f48..fb91cdd6 100644 --- a/src/main/java/com/cricketcraft/chisel/compat/fmp/ItemBlockChiselTorchPart.java +++ b/src/main/java/team/chisel/compat/fmp/ItemBlockChiselTorchPart.java @@ -1,5 +1,6 @@ -package com.cricketcraft.chisel.compat.fmp; +package team.chisel.compat.fmp; +import team.chisel.block.BlockCarvableTorch; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemBlock; @@ -9,9 +10,6 @@ import codechicken.lib.vec.BlockCoord; import codechicken.multipart.TMultiPart; import codechicken.multipart.TileMultipart; import codechicken.multipart.minecraft.TorchPart; - -import com.cricketcraft.chisel.block.BlockCarvableTorch; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -25,6 +23,7 @@ public class ItemBlockChiselTorchPart extends ItemBlock { this.torch = torch; } + @Override @SideOnly(Side.CLIENT) public boolean func_150936_a(World world, int x, int y, int z, int side, EntityPlayer player, ItemStack stack) { return (placePart(world, new BlockCoord(x, y, z).offset(side), stack, side, false)) || (super.func_150936_a(world, x, y, z, side, player, stack)); diff --git a/src/main/java/com/cricketcraft/chisel/compat/fmp/PartChiselTorch.java b/src/main/java/team/chisel/compat/fmp/PartChiselTorch.java similarity index 91% rename from src/main/java/com/cricketcraft/chisel/compat/fmp/PartChiselTorch.java rename to src/main/java/team/chisel/compat/fmp/PartChiselTorch.java index 90a6c456..4d89c25b 100644 --- a/src/main/java/com/cricketcraft/chisel/compat/fmp/PartChiselTorch.java +++ b/src/main/java/team/chisel/compat/fmp/PartChiselTorch.java @@ -1,7 +1,6 @@ -package com.cricketcraft.chisel.compat.fmp; - -import com.cricketcraft.chisel.init.ChiselBlocks; +package team.chisel.compat.fmp; +import team.chisel.init.ChiselBlocks; import net.minecraft.block.Block; import net.minecraft.nbt.NBTTagCompound; import codechicken.lib.data.MCDataInput; diff --git a/src/main/java/com/cricketcraft/chisel/compat/nei/NEIChiselConfig.java b/src/main/java/team/chisel/compat/nei/NEIChiselConfig.java similarity index 85% rename from src/main/java/com/cricketcraft/chisel/compat/nei/NEIChiselConfig.java rename to src/main/java/team/chisel/compat/nei/NEIChiselConfig.java index f67a892f..88a1e1c0 100644 --- a/src/main/java/com/cricketcraft/chisel/compat/nei/NEIChiselConfig.java +++ b/src/main/java/team/chisel/compat/nei/NEIChiselConfig.java @@ -1,12 +1,10 @@ -package com.cricketcraft.chisel.compat.nei; +package team.chisel.compat.nei; +import team.chisel.Chisel; +import team.chisel.client.gui.GuiChisel; import net.minecraft.item.ItemStack; import codechicken.nei.api.API; import codechicken.nei.api.IConfigureNEI; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.client.gui.GuiChisel; - import cpw.mods.fml.common.registry.GameRegistry; public class NEIChiselConfig implements IConfigureNEI { diff --git a/src/main/java/com/cricketcraft/chisel/compat/nei/RecipeHandlerChisel.java b/src/main/java/team/chisel/compat/nei/RecipeHandlerChisel.java similarity index 97% rename from src/main/java/com/cricketcraft/chisel/compat/nei/RecipeHandlerChisel.java rename to src/main/java/team/chisel/compat/nei/RecipeHandlerChisel.java index f4a54520..01e47b72 100644 --- a/src/main/java/com/cricketcraft/chisel/compat/nei/RecipeHandlerChisel.java +++ b/src/main/java/team/chisel/compat/nei/RecipeHandlerChisel.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.compat.nei; +package team.chisel.compat.nei; import java.awt.Point; import java.awt.Rectangle; @@ -11,17 +11,17 @@ import net.minecraftforge.oredict.OreDictionary; import org.lwjgl.opengl.GL11; +import com.cricketcraft.chisel.api.carving.CarvingUtils; +import com.cricketcraft.chisel.api.carving.ICarvingGroup; +import com.cricketcraft.chisel.api.carving.ICarvingVariation; + +import team.chisel.carving.Carving; +import team.chisel.client.gui.GuiChisel; import codechicken.lib.gui.GuiDraw; import codechicken.nei.NEIServerUtils; import codechicken.nei.PositionedStack; import codechicken.nei.recipe.TemplateRecipeHandler; -import com.cricketcraft.chisel.api.carving.CarvingUtils; -import com.cricketcraft.chisel.api.carving.ICarvingGroup; -import com.cricketcraft.chisel.api.carving.ICarvingVariation; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.client.gui.GuiChisel; - public class RecipeHandlerChisel extends TemplateRecipeHandler { private static final int SLOTS_PER_PAGE = 45; @@ -83,7 +83,7 @@ public class RecipeHandlerChisel extends TemplateRecipeHandler { public String getGuiTexture() { return "Chisel:textures/chiselNEI.png"; } - + @Override public Class getGuiClass() { return GuiChisel.class; @@ -111,6 +111,7 @@ public class RecipeHandlerChisel extends TemplateRecipeHandler { this.transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(75, 22, 15, 13), "chisel2.chisel", new Object[0])); } + @Override public void loadCraftingRecipes(String outputId, Object... results) { if (outputId.equals("chisel2.chisel")) { for (String name : Carving.chisel.getSortedGroupNames()) { diff --git a/src/main/java/com/cricketcraft/chisel/config/Configurations.java b/src/main/java/team/chisel/config/Configurations.java similarity index 98% rename from src/main/java/com/cricketcraft/chisel/config/Configurations.java rename to src/main/java/team/chisel/config/Configurations.java index 1d99bc99..0d21b44b 100644 --- a/src/main/java/com/cricketcraft/chisel/config/Configurations.java +++ b/src/main/java/team/chisel/config/Configurations.java @@ -1,15 +1,16 @@ -package com.cricketcraft.chisel.config; +package team.chisel.config; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.Features; -import com.cricketcraft.ctmlib.CTM; +import java.util.Locale; import net.minecraft.item.ItemDye; import net.minecraftforge.common.config.Configuration; import org.apache.commons.lang3.StringUtils; -import java.util.Locale; +import team.chisel.Chisel; +import team.chisel.Features; + +import com.cricketcraft.ctmlib.CTM; public class Configurations { diff --git a/src/main/java/com/cricketcraft/chisel/entity/EntityBallOMoss.java b/src/main/java/team/chisel/entity/EntityBallOMoss.java similarity index 91% rename from src/main/java/com/cricketcraft/chisel/entity/EntityBallOMoss.java rename to src/main/java/team/chisel/entity/EntityBallOMoss.java index 3aa727f4..5d4ae5a0 100644 --- a/src/main/java/com/cricketcraft/chisel/entity/EntityBallOMoss.java +++ b/src/main/java/team/chisel/entity/EntityBallOMoss.java @@ -1,5 +1,9 @@ -package com.cricketcraft.chisel.entity; +package team.chisel.entity; +import team.chisel.Chisel; +import team.chisel.client.GeneralChiselClient; +import team.chisel.init.ChiselBlocks; +import team.chisel.utils.General; import net.minecraft.block.Block; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.projectile.EntityThrowable; @@ -7,11 +11,6 @@ import net.minecraft.init.Blocks; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.client.GeneralChiselClient; -import com.cricketcraft.chisel.init.ChiselBlocks; -import com.cricketcraft.chisel.utils.General; - public class EntityBallOMoss extends EntityThrowable { public EntityBallOMoss(World par1World) { diff --git a/src/main/java/team/chisel/entity/EntityChiselSnowman.java b/src/main/java/team/chisel/entity/EntityChiselSnowman.java new file mode 100644 index 00000000..799037de --- /dev/null +++ b/src/main/java/team/chisel/entity/EntityChiselSnowman.java @@ -0,0 +1,13 @@ +package team.chisel.entity; + +import net.minecraft.entity.monster.EntitySnowman; +import net.minecraft.world.World; + +public class EntityChiselSnowman extends EntitySnowman { + + public EntityChiselSnowman(World world) { + super(world); + } + + // No special features just needed to get around the hardcoding +} diff --git a/src/main/java/com/cricketcraft/chisel/entity/EntityCloudInABottle.java b/src/main/java/team/chisel/entity/EntityCloudInABottle.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/entity/EntityCloudInABottle.java rename to src/main/java/team/chisel/entity/EntityCloudInABottle.java index 6dacbf43..bbaef2e3 100644 --- a/src/main/java/com/cricketcraft/chisel/entity/EntityCloudInABottle.java +++ b/src/main/java/team/chisel/entity/EntityCloudInABottle.java @@ -1,14 +1,13 @@ -package com.cricketcraft.chisel.entity; +package team.chisel.entity; import java.util.Random; +import team.chisel.init.ChiselBlocks; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.projectile.EntityThrowable; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; -import com.cricketcraft.chisel.init.ChiselBlocks; - public class EntityCloudInABottle extends EntityThrowable { Random rand = new Random(); diff --git a/src/main/java/com/cricketcraft/chisel/entity/EntitySmashingRock.java b/src/main/java/team/chisel/entity/EntitySmashingRock.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/entity/EntitySmashingRock.java rename to src/main/java/team/chisel/entity/EntitySmashingRock.java index 11828eed..5a8976aa 100644 --- a/src/main/java/com/cricketcraft/chisel/entity/EntitySmashingRock.java +++ b/src/main/java/team/chisel/entity/EntitySmashingRock.java @@ -1,5 +1,6 @@ -package com.cricketcraft.chisel.entity; +package team.chisel.entity; +import team.chisel.utils.General; import net.minecraft.block.Block; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.projectile.EntityThrowable; @@ -7,8 +8,6 @@ import net.minecraft.init.Blocks; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; -import com.cricketcraft.chisel.utils.General; - public class EntitySmashingRock extends EntityThrowable { public EntitySmashingRock(World par1World) { diff --git a/src/main/java/com/cricketcraft/chisel/entity/fx/EntityBallOMossFX.java b/src/main/java/team/chisel/entity/fx/EntityBallOMossFX.java similarity index 93% rename from src/main/java/com/cricketcraft/chisel/entity/fx/EntityBallOMossFX.java rename to src/main/java/team/chisel/entity/fx/EntityBallOMossFX.java index d4caf24b..33291149 100644 --- a/src/main/java/com/cricketcraft/chisel/entity/fx/EntityBallOMossFX.java +++ b/src/main/java/team/chisel/entity/fx/EntityBallOMossFX.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.entity.fx; +package team.chisel.entity.fx; import net.minecraft.client.particle.EntityFX; import net.minecraft.client.renderer.Tessellator; @@ -7,10 +7,9 @@ import net.minecraft.world.World; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.block.BlockSnakestoneObsidian; -import com.cricketcraft.chisel.init.ChiselItems; -import com.cricketcraft.chisel.utils.General; - +import team.chisel.block.BlockSnakestoneObsidian; +import team.chisel.init.ChiselItems; +import team.chisel.utils.General; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/main/java/com/cricketcraft/chisel/entity/fx/EntityGrimstoneFX.java b/src/main/java/team/chisel/entity/fx/EntityGrimstoneFX.java similarity index 90% rename from src/main/java/com/cricketcraft/chisel/entity/fx/EntityGrimstoneFX.java rename to src/main/java/team/chisel/entity/fx/EntityGrimstoneFX.java index e44864b2..585980ee 100644 --- a/src/main/java/com/cricketcraft/chisel/entity/fx/EntityGrimstoneFX.java +++ b/src/main/java/team/chisel/entity/fx/EntityGrimstoneFX.java @@ -1,12 +1,11 @@ -package com.cricketcraft.chisel.entity.fx; +package team.chisel.entity.fx; +import team.chisel.block.BlockGrimstone; +import team.chisel.utils.General; import net.minecraft.client.particle.EntityFX; import net.minecraft.client.renderer.Tessellator; import net.minecraft.world.World; -import com.cricketcraft.chisel.block.BlockGrimstone; -import com.cricketcraft.chisel.utils.General; - public class EntityGrimstoneFX extends EntityFX { float initialScale; diff --git a/src/main/java/com/cricketcraft/chisel/entity/fx/EntityHolystoneFX.java b/src/main/java/team/chisel/entity/fx/EntityHolystoneFX.java similarity index 90% rename from src/main/java/com/cricketcraft/chisel/entity/fx/EntityHolystoneFX.java rename to src/main/java/team/chisel/entity/fx/EntityHolystoneFX.java index 5bd79a61..d2d79c15 100644 --- a/src/main/java/com/cricketcraft/chisel/entity/fx/EntityHolystoneFX.java +++ b/src/main/java/team/chisel/entity/fx/EntityHolystoneFX.java @@ -1,12 +1,11 @@ -package com.cricketcraft.chisel.entity.fx; +package team.chisel.entity.fx; +import team.chisel.block.BlockHolystone; +import team.chisel.utils.General; import net.minecraft.client.particle.EntityFX; import net.minecraft.client.renderer.Tessellator; import net.minecraft.world.World; -import com.cricketcraft.chisel.block.BlockHolystone; -import com.cricketcraft.chisel.utils.General; - public class EntityHolystoneFX extends EntityFX { float initialScale; diff --git a/src/main/java/com/cricketcraft/chisel/entity/fx/EntitySnakestoneObsidianFX.java b/src/main/java/team/chisel/entity/fx/EntitySnakestoneObsidianFX.java similarity index 90% rename from src/main/java/com/cricketcraft/chisel/entity/fx/EntitySnakestoneObsidianFX.java rename to src/main/java/team/chisel/entity/fx/EntitySnakestoneObsidianFX.java index 1b06e566..43bb7af5 100644 --- a/src/main/java/com/cricketcraft/chisel/entity/fx/EntitySnakestoneObsidianFX.java +++ b/src/main/java/team/chisel/entity/fx/EntitySnakestoneObsidianFX.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.entity.fx; +package team.chisel.entity.fx; import net.minecraft.client.particle.EntityFX; import net.minecraft.client.renderer.Tessellator; @@ -6,8 +6,8 @@ import net.minecraft.world.World; import org.lwjgl.opengl.GL11; -import com.cricketcraft.chisel.block.BlockSnakestoneObsidian; -import com.cricketcraft.chisel.utils.General; +import team.chisel.block.BlockSnakestoneObsidian; +import team.chisel.utils.General; public class EntitySnakestoneObsidianFX extends EntityFX { @@ -60,7 +60,7 @@ public class EntitySnakestoneObsidianFX extends EntityFX { noClip = true; - setParticleIcon(block.particles[General.rand.nextInt(block.particles.length)]); + setParticleIcon(BlockSnakestoneObsidian.particles[General.rand.nextInt(BlockSnakestoneObsidian.particles.length)]); } @Override diff --git a/src/main/java/com/cricketcraft/chisel/init/ChiselBlocks.java b/src/main/java/team/chisel/init/ChiselBlocks.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/init/ChiselBlocks.java rename to src/main/java/team/chisel/init/ChiselBlocks.java index ead9941b..98e86a58 100644 --- a/src/main/java/com/cricketcraft/chisel/init/ChiselBlocks.java +++ b/src/main/java/team/chisel/init/ChiselBlocks.java @@ -1,10 +1,8 @@ -package com.cricketcraft.chisel.init; +package team.chisel.init; +import team.chisel.Chisel; +import team.chisel.block.*; import net.minecraft.block.Block; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.block.*; - import cpw.mods.fml.common.registry.GameRegistry.ObjectHolder; @ObjectHolder(Chisel.MOD_ID) @@ -34,7 +32,7 @@ public final class ChiselBlocks { public static final BlockCarvableGlowstone glowstone = null; public static final BlockCarvable lapis_block = null; public static final BlockCarvable emerald_block = null; - public static final BlockCarvable rebel = null; + public static final BlockCarvable rebel = null; public static final BlockCarvable nether_brick = null; public static final BlockCarvable netherrack = null; public static final BlockCarvable mossy_cobblestone = null; @@ -88,7 +86,7 @@ public final class ChiselBlocks { public static final BlockCarvable arcane = null; public static final BlockCarvable thaumium = null; public static final BlockCarvable tallow = null; - + public static final BlockCarvable copperblock = null; public static final BlockCarvable bronzeblock = null; public static final BlockCarvable aluminumblock = null; @@ -128,6 +126,9 @@ public final class ChiselBlocks { public static final BlockCarvable diorite = null; public static final BlockCarvable andesite = null; + // 1.9... drull pls + public static final BlockCarvable purpur = null; + private ChiselBlocks() { } } diff --git a/src/main/java/com/cricketcraft/chisel/init/ChiselItems.java b/src/main/java/team/chisel/init/ChiselItems.java similarity index 61% rename from src/main/java/com/cricketcraft/chisel/init/ChiselItems.java rename to src/main/java/team/chisel/init/ChiselItems.java index 8ca3cf86..1809e04d 100644 --- a/src/main/java/com/cricketcraft/chisel/init/ChiselItems.java +++ b/src/main/java/team/chisel/init/ChiselItems.java @@ -1,11 +1,11 @@ -package com.cricketcraft.chisel.init; +package team.chisel.init; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.item.ItemBallOMoss; -import com.cricketcraft.chisel.item.ItemCloudInABottle; -import com.cricketcraft.chisel.item.ItemSmashingRock; -import com.cricketcraft.chisel.item.ItemUpgrade; -import com.cricketcraft.chisel.item.chisel.ItemChisel; +import team.chisel.Chisel; +import team.chisel.item.ItemBallOMoss; +import team.chisel.item.ItemCloudInABottle; +import team.chisel.item.ItemSmashingRock; +import team.chisel.item.ItemUpgrade; +import team.chisel.item.chisel.ItemChisel; import cpw.mods.fml.common.registry.GameRegistry.ObjectHolder; @ObjectHolder(Chisel.MOD_ID) diff --git a/src/main/java/com/cricketcraft/chisel/init/ChiselTabs.java b/src/main/java/team/chisel/init/ChiselTabs.java similarity index 97% rename from src/main/java/com/cricketcraft/chisel/init/ChiselTabs.java rename to src/main/java/team/chisel/init/ChiselTabs.java index 24064a51..1ae29836 100644 --- a/src/main/java/com/cricketcraft/chisel/init/ChiselTabs.java +++ b/src/main/java/team/chisel/init/ChiselTabs.java @@ -1,13 +1,11 @@ -package com.cricketcraft.chisel.init; +package team.chisel.init; +import team.chisel.Features; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; - -import com.cricketcraft.chisel.Features; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/main/java/com/cricketcraft/chisel/inventory/ContainerAutoChisel.java b/src/main/java/team/chisel/inventory/ContainerAutoChisel.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/inventory/ContainerAutoChisel.java rename to src/main/java/team/chisel/inventory/ContainerAutoChisel.java index 6a6f409e..91b906f6 100644 --- a/src/main/java/com/cricketcraft/chisel/inventory/ContainerAutoChisel.java +++ b/src/main/java/team/chisel/inventory/ContainerAutoChisel.java @@ -1,5 +1,8 @@ -package com.cricketcraft.chisel.inventory; +package team.chisel.inventory; +import team.chisel.block.tileentity.TileEntityAutoChisel; +import team.chisel.network.PacketHandler; +import team.chisel.network.message.MessageAutoChisel; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.inventory.Container; @@ -7,10 +10,6 @@ import net.minecraft.inventory.IInventory; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; -import com.cricketcraft.chisel.network.PacketHandler; -import com.cricketcraft.chisel.network.message.MessageAutoChisel; - public class ContainerAutoChisel extends Container { public TileEntityAutoChisel autoChisel; diff --git a/src/main/java/com/cricketcraft/chisel/inventory/ContainerChisel.java b/src/main/java/team/chisel/inventory/ContainerChisel.java similarity index 95% rename from src/main/java/com/cricketcraft/chisel/inventory/ContainerChisel.java rename to src/main/java/team/chisel/inventory/ContainerChisel.java index 114b11cb..2288f6b9 100644 --- a/src/main/java/com/cricketcraft/chisel/inventory/ContainerChisel.java +++ b/src/main/java/team/chisel/inventory/ContainerChisel.java @@ -1,5 +1,10 @@ -package com.cricketcraft.chisel.inventory; +package team.chisel.inventory; +import com.cricketcraft.chisel.api.carving.ICarvingRegistry; + +import team.chisel.carving.Carving; +import team.chisel.item.chisel.ItemChisel; +import team.chisel.utils.General; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.inventory.Container; @@ -7,11 +12,6 @@ import net.minecraft.inventory.Slot; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import com.cricketcraft.chisel.api.carving.ICarvingRegistry; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.item.chisel.ItemChisel; -import com.cricketcraft.chisel.utils.General; - public class ContainerChisel extends Container { public final InventoryChiselSelection inventory; diff --git a/src/main/java/com/cricketcraft/chisel/inventory/ContainerPresent.java b/src/main/java/team/chisel/inventory/ContainerPresent.java similarity index 84% rename from src/main/java/com/cricketcraft/chisel/inventory/ContainerPresent.java rename to src/main/java/team/chisel/inventory/ContainerPresent.java index db068864..cb200884 100644 --- a/src/main/java/com/cricketcraft/chisel/inventory/ContainerPresent.java +++ b/src/main/java/team/chisel/inventory/ContainerPresent.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.inventory; +package team.chisel.inventory; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -44,29 +44,21 @@ public class ContainerPresent extends Container { ItemStack itemstack = null; Slot slot = (Slot) this.inventorySlots.get(p_82846_2_); - if (slot != null && slot.getHasStack()) - { + if (slot != null && slot.getHasStack()) { ItemStack itemstack1 = slot.getStack(); itemstack = itemstack1.copy(); - if (p_82846_2_ < rows * 9) - { - if (!this.mergeItemStack(itemstack1, rows * 9, inventorySlots.size(), true)) - { + if (p_82846_2_ < rows * 9) { + if (!this.mergeItemStack(itemstack1, rows * 9, inventorySlots.size(), true)) { return null; } - } - else if (!this.mergeItemStack(itemstack1, 0, rows * 9, false)) - { + } else if (!this.mergeItemStack(itemstack1, 0, rows * 9, false)) { return null; } - if (itemstack1.stackSize == 0) - { + if (itemstack1.stackSize == 0) { slot.putStack((ItemStack) null); - } - else - { + } else { slot.onSlotChanged(); } } diff --git a/src/main/java/com/cricketcraft/chisel/inventory/InventoryChiselSelection.java b/src/main/java/team/chisel/inventory/InventoryChiselSelection.java similarity index 91% rename from src/main/java/com/cricketcraft/chisel/inventory/InventoryChiselSelection.java rename to src/main/java/team/chisel/inventory/InventoryChiselSelection.java index bb42c15f..a5c9c115 100644 --- a/src/main/java/com/cricketcraft/chisel/inventory/InventoryChiselSelection.java +++ b/src/main/java/team/chisel/inventory/InventoryChiselSelection.java @@ -1,7 +1,11 @@ -package com.cricketcraft.chisel.inventory; +package team.chisel.inventory; import java.util.List; +import com.cricketcraft.chisel.api.IChiselItem; + +import team.chisel.item.chisel.ItemChisel; +import team.chisel.utils.General; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; @@ -9,10 +13,6 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.item.ItemTool; -import com.cricketcraft.chisel.api.IChiselItem; -import com.cricketcraft.chisel.item.chisel.ItemChisel; -import com.cricketcraft.chisel.utils.General; - public class InventoryChiselSelection implements IInventory { ItemStack chisel = null; @@ -128,7 +128,7 @@ public class InventoryChiselSelection implements IInventory { activeVariations = 0; while (activeVariations < normalSlots && activeVariations < list.size()) { - if(Block.blockRegistry.getNameForObject(Block.getBlockFromItem(list.get(activeVariations).getItem())) != null) { + if (Block.blockRegistry.getNameForObject(Block.getBlockFromItem(list.get(activeVariations).getItem())) != null) { inventory[activeVariations] = list.get(activeVariations); activeVariations++; } @@ -165,7 +165,7 @@ public class InventoryChiselSelection implements IInventory { @Override public boolean isItemValidForSlot(int i, ItemStack stack) { - //Really didn't think people would chisel a shovel + // Really didn't think people would chisel a shovel if (stack.getItem() instanceof ItemTool) { return false; } diff --git a/src/main/java/com/cricketcraft/chisel/inventory/SlotChiselInput.java b/src/main/java/team/chisel/inventory/SlotChiselInput.java similarity index 95% rename from src/main/java/com/cricketcraft/chisel/inventory/SlotChiselInput.java rename to src/main/java/team/chisel/inventory/SlotChiselInput.java index 77e3ad4e..39b742d1 100644 --- a/src/main/java/com/cricketcraft/chisel/inventory/SlotChiselInput.java +++ b/src/main/java/team/chisel/inventory/SlotChiselInput.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.inventory; +package team.chisel.inventory; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; diff --git a/src/main/java/com/cricketcraft/chisel/inventory/SlotChiselPlayer.java b/src/main/java/team/chisel/inventory/SlotChiselPlayer.java similarity index 94% rename from src/main/java/com/cricketcraft/chisel/inventory/SlotChiselPlayer.java rename to src/main/java/team/chisel/inventory/SlotChiselPlayer.java index ae416653..384bb7b0 100644 --- a/src/main/java/com/cricketcraft/chisel/inventory/SlotChiselPlayer.java +++ b/src/main/java/team/chisel/inventory/SlotChiselPlayer.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.inventory; +package team.chisel.inventory; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; diff --git a/src/main/java/com/cricketcraft/chisel/inventory/SlotChiselSelection.java b/src/main/java/team/chisel/inventory/SlotChiselSelection.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/inventory/SlotChiselSelection.java rename to src/main/java/team/chisel/inventory/SlotChiselSelection.java index e1013216..56c88745 100644 --- a/src/main/java/com/cricketcraft/chisel/inventory/SlotChiselSelection.java +++ b/src/main/java/team/chisel/inventory/SlotChiselSelection.java @@ -1,17 +1,17 @@ -package com.cricketcraft.chisel.inventory; +package team.chisel.inventory; +import com.cricketcraft.chisel.api.IChiselItem; +import com.cricketcraft.chisel.api.Statistics; + +import team.chisel.carving.Carving; +import team.chisel.utils.General; +import team.chisel.utils.GeneralClient; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; import net.minecraft.util.MathHelper; -import com.cricketcraft.chisel.api.IChiselItem; -import com.cricketcraft.chisel.api.Statistics; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.utils.General; -import com.cricketcraft.chisel.utils.GeneralClient; - public class SlotChiselSelection extends Slot { private final ContainerChisel container; diff --git a/src/main/java/com/cricketcraft/chisel/item/BaseItem.java b/src/main/java/team/chisel/item/BaseItem.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/item/BaseItem.java rename to src/main/java/team/chisel/item/BaseItem.java index ab243307..192ebd85 100644 --- a/src/main/java/com/cricketcraft/chisel/item/BaseItem.java +++ b/src/main/java/team/chisel/item/BaseItem.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.item; +package team.chisel.item; import java.util.Enumeration; import java.util.List; @@ -73,7 +73,7 @@ public class BaseItem extends Item { String[] ret = new String[lines.size()]; int c = 0; // counter for (Enumeration e = lines.elements(); e.hasMoreElements(); c++) { - ret[c] = (String) e.nextElement(); + ret[c] = e.nextElement(); } return ret; diff --git a/src/main/java/com/cricketcraft/chisel/item/ItemBallOMoss.java b/src/main/java/team/chisel/item/ItemBallOMoss.java similarity index 88% rename from src/main/java/com/cricketcraft/chisel/item/ItemBallOMoss.java rename to src/main/java/team/chisel/item/ItemBallOMoss.java index 0446e3be..1e105bbd 100644 --- a/src/main/java/com/cricketcraft/chisel/item/ItemBallOMoss.java +++ b/src/main/java/team/chisel/item/ItemBallOMoss.java @@ -1,11 +1,10 @@ -package com.cricketcraft.chisel.item; +package team.chisel.item; +import team.chisel.entity.EntityBallOMoss; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.World; -import com.cricketcraft.chisel.entity.EntityBallOMoss; - public class ItemBallOMoss extends BaseItem { public ItemBallOMoss() { diff --git a/src/main/java/com/cricketcraft/chisel/item/ItemBlockPresent.java b/src/main/java/team/chisel/item/ItemBlockPresent.java similarity index 84% rename from src/main/java/com/cricketcraft/chisel/item/ItemBlockPresent.java rename to src/main/java/team/chisel/item/ItemBlockPresent.java index d9acdc07..45e20deb 100644 --- a/src/main/java/com/cricketcraft/chisel/item/ItemBlockPresent.java +++ b/src/main/java/team/chisel/item/ItemBlockPresent.java @@ -1,14 +1,13 @@ -package com.cricketcraft.chisel.item; +package team.chisel.item; import net.minecraft.block.Block; - public class ItemBlockPresent extends ItemCarvable { public ItemBlockPresent(Block block) { super(block); } - + @Override public int getMetadata(int i) { return 0; diff --git a/src/main/java/com/cricketcraft/chisel/item/ItemCarvable.java b/src/main/java/team/chisel/item/ItemCarvable.java similarity index 86% rename from src/main/java/com/cricketcraft/chisel/item/ItemCarvable.java rename to src/main/java/team/chisel/item/ItemCarvable.java index e63d8a32..ee5aa126 100644 --- a/src/main/java/com/cricketcraft/chisel/item/ItemCarvable.java +++ b/src/main/java/team/chisel/item/ItemCarvable.java @@ -1,7 +1,12 @@ -package com.cricketcraft.chisel.item; +package team.chisel.item; import java.util.List; +import com.cricketcraft.chisel.api.ICarvable; +import com.cricketcraft.chisel.api.carving.IVariationInfo; + +import team.chisel.config.Configurations; +import team.chisel.utils.General; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; @@ -9,11 +14,6 @@ import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; -import com.cricketcraft.chisel.api.ICarvable; -import com.cricketcraft.chisel.api.carving.IVariationInfo; -import com.cricketcraft.chisel.config.Configurations; -import com.cricketcraft.chisel.utils.General; - public class ItemCarvable extends ItemBlock { public ItemCarvable(Block block) { @@ -47,7 +47,7 @@ public class ItemCarvable extends ItemBlock { return; ICarvable carvable = (ICarvable) block; - IVariationInfo var = carvable.getVariation(stack); + IVariationInfo var = carvable.getManager(stack.getItemDamage()); if (var == null) return; diff --git a/src/main/java/team/chisel/item/ItemCarvablePumpkin.java b/src/main/java/team/chisel/item/ItemCarvablePumpkin.java new file mode 100644 index 00000000..c105f923 --- /dev/null +++ b/src/main/java/team/chisel/item/ItemCarvablePumpkin.java @@ -0,0 +1,17 @@ +package team.chisel.item; + +import net.minecraft.block.Block; +import net.minecraft.entity.Entity; +import net.minecraft.item.ItemStack; + +public class ItemCarvablePumpkin extends ItemCarvable { + + public ItemCarvablePumpkin(Block block) { + super(block); + } + + @Override + public boolean isValidArmor(ItemStack itemStack, int armorType, Entity entity) { + return true; + } +} diff --git a/src/main/java/com/cricketcraft/chisel/item/ItemCarvableSlab.java b/src/main/java/team/chisel/item/ItemCarvableSlab.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/item/ItemCarvableSlab.java rename to src/main/java/team/chisel/item/ItemCarvableSlab.java index 668d45ed..dbee69de 100644 --- a/src/main/java/com/cricketcraft/chisel/item/ItemCarvableSlab.java +++ b/src/main/java/team/chisel/item/ItemCarvableSlab.java @@ -1,13 +1,12 @@ -package com.cricketcraft.chisel.item; +package team.chisel.item; +import team.chisel.block.BlockCarvableSlab; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -import com.cricketcraft.chisel.block.BlockCarvableSlab; - public class ItemCarvableSlab extends ItemCarvable { public ItemCarvableSlab(Block block) { diff --git a/src/main/java/com/cricketcraft/chisel/item/ItemCloudInABottle.java b/src/main/java/team/chisel/item/ItemCloudInABottle.java similarity index 88% rename from src/main/java/com/cricketcraft/chisel/item/ItemCloudInABottle.java rename to src/main/java/team/chisel/item/ItemCloudInABottle.java index 729a5406..51f477fc 100644 --- a/src/main/java/com/cricketcraft/chisel/item/ItemCloudInABottle.java +++ b/src/main/java/team/chisel/item/ItemCloudInABottle.java @@ -1,11 +1,10 @@ -package com.cricketcraft.chisel.item; +package team.chisel.item; +import team.chisel.entity.EntityCloudInABottle; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.World; -import com.cricketcraft.chisel.entity.EntityCloudInABottle; - public class ItemCloudInABottle extends BaseItem { public ItemCloudInABottle() { diff --git a/src/main/java/com/cricketcraft/chisel/item/ItemSmashingRock.java b/src/main/java/team/chisel/item/ItemSmashingRock.java similarity index 88% rename from src/main/java/com/cricketcraft/chisel/item/ItemSmashingRock.java rename to src/main/java/team/chisel/item/ItemSmashingRock.java index 1f75cdfd..d726db82 100644 --- a/src/main/java/com/cricketcraft/chisel/item/ItemSmashingRock.java +++ b/src/main/java/team/chisel/item/ItemSmashingRock.java @@ -1,11 +1,10 @@ -package com.cricketcraft.chisel.item; +package team.chisel.item; +import team.chisel.entity.EntitySmashingRock; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.World; -import com.cricketcraft.chisel.entity.EntitySmashingRock; - public class ItemSmashingRock extends BaseItem { public ItemSmashingRock() { diff --git a/src/main/java/com/cricketcraft/chisel/item/ItemUpgrade.java b/src/main/java/team/chisel/item/ItemUpgrade.java similarity index 89% rename from src/main/java/com/cricketcraft/chisel/item/ItemUpgrade.java rename to src/main/java/team/chisel/item/ItemUpgrade.java index 5cbafc12..55dd320c 100644 --- a/src/main/java/com/cricketcraft/chisel/item/ItemUpgrade.java +++ b/src/main/java/team/chisel/item/ItemUpgrade.java @@ -1,16 +1,15 @@ -package com.cricketcraft.chisel.item; +package team.chisel.item; import java.util.List; +import team.chisel.Chisel; +import team.chisel.block.tileentity.TileEntityAutoChisel.Upgrade; 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 com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel.Upgrade; - public class ItemUpgrade extends BaseItem { public IIcon[] icons = new IIcon[4]; diff --git a/src/main/java/com/cricketcraft/chisel/item/chisel/ChiselController.java b/src/main/java/team/chisel/item/chisel/ChiselController.java similarity index 95% rename from src/main/java/com/cricketcraft/chisel/item/chisel/ChiselController.java rename to src/main/java/team/chisel/item/chisel/ChiselController.java index c0aa31d3..b4e586b4 100644 --- a/src/main/java/com/cricketcraft/chisel/item/chisel/ChiselController.java +++ b/src/main/java/team/chisel/item/chisel/ChiselController.java @@ -1,22 +1,21 @@ -package com.cricketcraft.chisel.item.chisel; +package team.chisel.item.chisel; import java.util.List; +import com.cricketcraft.chisel.api.IChiselItem; +import com.cricketcraft.chisel.api.carving.ICarvingGroup; +import com.cricketcraft.chisel.api.carving.ICarvingVariation; +import com.cricketcraft.chisel.api.carving.IChiselMode; + +import team.chisel.Chisel; +import team.chisel.carving.Carving; +import team.chisel.utils.General; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.event.entity.player.PlayerInteractEvent; import net.minecraftforge.oredict.OreDictionary; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.api.IChiselItem; -import com.cricketcraft.chisel.api.carving.ICarvingGroup; -import com.cricketcraft.chisel.api.carving.ICarvingVariation; -import com.cricketcraft.chisel.api.carving.IChiselMode; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.utils.General; - import cpw.mods.fml.common.eventhandler.SubscribeEvent; public final class ChiselController { diff --git a/src/main/java/com/cricketcraft/chisel/item/chisel/ChiselMode.java b/src/main/java/team/chisel/item/chisel/ChiselMode.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/item/chisel/ChiselMode.java rename to src/main/java/team/chisel/item/chisel/ChiselMode.java index 9bfb5ed2..97686fc5 100644 --- a/src/main/java/com/cricketcraft/chisel/item/chisel/ChiselMode.java +++ b/src/main/java/team/chisel/item/chisel/ChiselMode.java @@ -1,5 +1,12 @@ -package com.cricketcraft.chisel.item.chisel; +package team.chisel.item.chisel; +import com.cricketcraft.chisel.api.IChiselItem; +import com.cricketcraft.chisel.api.Statistics; +import com.cricketcraft.chisel.api.carving.ICarvingVariation; +import com.cricketcraft.chisel.api.carving.IChiselMode; + +import team.chisel.network.PacketHandler; +import team.chisel.network.message.MessageChiselSound; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; @@ -8,13 +15,6 @@ import net.minecraft.util.MathHelper; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -import com.cricketcraft.chisel.api.IChiselItem; -import com.cricketcraft.chisel.api.Statistics; -import com.cricketcraft.chisel.api.carving.ICarvingVariation; -import com.cricketcraft.chisel.api.carving.IChiselMode; -import com.cricketcraft.chisel.network.PacketHandler; -import com.cricketcraft.chisel.network.message.MessageChiselSound; - public enum ChiselMode implements IChiselMode { SINGLE { @@ -49,7 +49,7 @@ public enum ChiselMode implements IChiselMode { public void chiselAll(EntityPlayer player, World world, int x, int y, int z, ForgeDirection side, ICarvingVariation variation) { Block block = world.getBlock(x, y, z); int meta = world.getBlockMetadata(x, y, z); - int facing = MathHelper.floor_double((double) (player.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3; + int facing = MathHelper.floor_double(player.rotationYaw * 4.0F / 360.0F + 0.5D) & 3; for (int i = -1; i <= 1; i++) { if (side != ForgeDirection.DOWN && side != ForgeDirection.UP) { setVariation(player, world, x, y + i, z, block, meta, variation); @@ -69,7 +69,7 @@ public enum ChiselMode implements IChiselMode { public void chiselAll(EntityPlayer player, World world, int x, int y, int z, ForgeDirection side, ICarvingVariation variation) { Block block = world.getBlock(x, y, z); int meta = world.getBlockMetadata(x, y, z); - int facing = MathHelper.floor_double((double) (player.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3; + int facing = MathHelper.floor_double(player.rotationYaw * 4.0F / 360.0F + 0.5D) & 3; for (int i = -1; i <= 1; i++) { if (side != ForgeDirection.DOWN && side != ForgeDirection.UP) { if (side == ForgeDirection.EAST || side == ForgeDirection.WEST) { diff --git a/src/main/java/com/cricketcraft/chisel/item/chisel/ItemChisel.java b/src/main/java/team/chisel/item/chisel/ItemChisel.java similarity index 87% rename from src/main/java/com/cricketcraft/chisel/item/chisel/ItemChisel.java rename to src/main/java/team/chisel/item/chisel/ItemChisel.java index 7f90a83f..2a564760 100644 --- a/src/main/java/com/cricketcraft/chisel/item/chisel/ItemChisel.java +++ b/src/main/java/team/chisel/item/chisel/ItemChisel.java @@ -1,13 +1,11 @@ -package com.cricketcraft.chisel.item.chisel; +package team.chisel.item.chisel; -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.api.IChiselItem; -import com.cricketcraft.chisel.api.carving.ICarvingRegistry; -import com.cricketcraft.chisel.api.carving.ICarvingVariation; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.config.Configurations; -import com.google.common.collect.HashMultimap; -import com.google.common.collect.Multimap; +import java.util.List; +import java.util.Locale; + +import team.chisel.Chisel; +import team.chisel.carving.Carving; +import team.chisel.config.Configurations; import net.minecraft.block.Block; import net.minecraft.client.resources.I18n; import net.minecraft.entity.EntityLivingBase; @@ -21,7 +19,11 @@ import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.common.MinecraftForge; -import java.util.List; +import com.cricketcraft.chisel.api.IChiselItem; +import com.cricketcraft.chisel.api.carving.ICarvingRegistry; +import com.cricketcraft.chisel.api.carving.ICarvingVariation; +import com.google.common.collect.HashMultimap; +import com.google.common.collect.Multimap; public class ItemChisel extends Item implements IChiselItem { @@ -47,32 +49,31 @@ public class ItemChisel extends Item implements IChiselItem { super(); this.type = type; setMaxStackSize(1); - setTextureName(Chisel.MOD_ID + ":chisel_" + type.name().toLowerCase()); + setTextureName(Chisel.MOD_ID + ":chisel_" + type.name().toLowerCase(Locale.ENGLISH)); MinecraftForge.EVENT_BUS.register(this); } @Override - public int getMaxDamage(ItemStack stack){ - if(Configurations.allowChiselDamage) + public int getMaxDamage(ItemStack stack) { + if (Configurations.allowChiselDamage) return type.maxDamage; return 0; } @Override - public boolean isDamageable(){ + public boolean isDamageable() { return Configurations.allowChiselDamage; } @Override - public boolean getIsRepairable(ItemStack damagedItem, ItemStack repairMaterial) - { + public boolean getIsRepairable(ItemStack damagedItem, ItemStack repairMaterial) { switch (type) { - case DIAMOND: - return repairMaterial.getItem().equals(Items.diamond); - case IRON: - return repairMaterial.getItem().equals(Items.iron_ingot); - case OBSIDIAN: - return repairMaterial.getItem().equals(Item.getItemFromBlock(Blocks.obsidian)); + case DIAMOND: + return repairMaterial.getItem().equals(Items.diamond); + case IRON: + return repairMaterial.getItem().equals(Items.iron_ingot); + case OBSIDIAN: + return repairMaterial.getItem().equals(Item.getItemFromBlock(Blocks.obsidian)); } return false; diff --git a/src/main/java/com/cricketcraft/chisel/network/ChiselGuiHandler.java b/src/main/java/team/chisel/network/ChiselGuiHandler.java similarity index 72% rename from src/main/java/com/cricketcraft/chisel/network/ChiselGuiHandler.java rename to src/main/java/team/chisel/network/ChiselGuiHandler.java index 002b357a..da3999d1 100644 --- a/src/main/java/com/cricketcraft/chisel/network/ChiselGuiHandler.java +++ b/src/main/java/team/chisel/network/ChiselGuiHandler.java @@ -1,19 +1,17 @@ -package com.cricketcraft.chisel.network; +package team.chisel.network; +import team.chisel.block.tileentity.TileEntityAutoChisel; +import team.chisel.block.tileentity.TileEntityPresent; +import team.chisel.client.gui.GuiAutoChisel; +import team.chisel.client.gui.GuiChisel; +import team.chisel.client.gui.GuiPresent; +import team.chisel.inventory.ContainerAutoChisel; +import team.chisel.inventory.ContainerChisel; +import team.chisel.inventory.ContainerPresent; +import team.chisel.inventory.InventoryChiselSelection; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; - -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; -import com.cricketcraft.chisel.block.tileentity.TileEntityPresent; -import com.cricketcraft.chisel.client.gui.GuiAutoChisel; -import com.cricketcraft.chisel.client.gui.GuiChisel; -import com.cricketcraft.chisel.client.gui.GuiPresent; -import com.cricketcraft.chisel.inventory.ContainerAutoChisel; -import com.cricketcraft.chisel.inventory.ContainerChisel; -import com.cricketcraft.chisel.inventory.ContainerPresent; -import com.cricketcraft.chisel.inventory.InventoryChiselSelection; - import cpw.mods.fml.common.network.IGuiHandler; public class ChiselGuiHandler implements IGuiHandler { diff --git a/src/main/java/com/cricketcraft/chisel/network/PacketHandler.java b/src/main/java/team/chisel/network/PacketHandler.java similarity index 66% rename from src/main/java/com/cricketcraft/chisel/network/PacketHandler.java rename to src/main/java/team/chisel/network/PacketHandler.java index 290e2cd9..b95ebe31 100644 --- a/src/main/java/com/cricketcraft/chisel/network/PacketHandler.java +++ b/src/main/java/team/chisel/network/PacketHandler.java @@ -1,12 +1,11 @@ -package com.cricketcraft.chisel.network; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.network.message.MessageAutoChisel; -import com.cricketcraft.chisel.network.message.MessageChiselMode; -import com.cricketcraft.chisel.network.message.MessageChiselSound; -import com.cricketcraft.chisel.network.message.MessagePresentConnect; -import com.cricketcraft.chisel.network.message.MessageSlotUpdate; +package team.chisel.network; +import team.chisel.Chisel; +import team.chisel.network.message.MessageAutoChisel; +import team.chisel.network.message.MessageChiselMode; +import team.chisel.network.message.MessageChiselSound; +import team.chisel.network.message.MessagePresentConnect; +import team.chisel.network.message.MessageSlotUpdate; import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper; import cpw.mods.fml.relauncher.Side; diff --git a/src/main/java/com/cricketcraft/chisel/network/message/MessageAutoChisel.java b/src/main/java/team/chisel/network/message/MessageAutoChisel.java similarity index 89% rename from src/main/java/com/cricketcraft/chisel/network/message/MessageAutoChisel.java rename to src/main/java/team/chisel/network/message/MessageAutoChisel.java index 1d4410ca..b7564561 100644 --- a/src/main/java/com/cricketcraft/chisel/network/message/MessageAutoChisel.java +++ b/src/main/java/team/chisel/network/message/MessageAutoChisel.java @@ -1,12 +1,10 @@ -package com.cricketcraft.chisel.network.message; +package team.chisel.network.message; +import team.chisel.block.tileentity.TileEntityAutoChisel; +import team.chisel.network.message.base.MessageCoords; import io.netty.buffer.ByteBuf; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; - -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; -import com.cricketcraft.chisel.network.message.base.MessageCoords; - import cpw.mods.fml.common.network.ByteBufUtils; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; @@ -20,7 +18,7 @@ public class MessageAutoChisel extends MessageCoords { ItemStack base; boolean playSound, breakChisel; int chiseled; - + public MessageAutoChisel(TileEntityAutoChisel tile, int chiseled, boolean playSound, boolean breakChisel) { super(tile); this.base = tile.getStackInSlot(TileEntityAutoChisel.BASE); @@ -31,7 +29,7 @@ public class MessageAutoChisel extends MessageCoords { this.breakChisel = breakChisel; this.chiseled = chiseled; } - + @Override public void toBytes(ByteBuf buf) { super.toBytes(buf); @@ -40,7 +38,7 @@ public class MessageAutoChisel extends MessageCoords { buf.writeInt(chiseled); ByteBufUtils.writeItemStack(buf, base); } - + @Override public void fromBytes(ByteBuf buf) { super.fromBytes(buf); @@ -52,6 +50,7 @@ public class MessageAutoChisel extends MessageCoords { public static class Handler implements IMessageHandler { + @Override public IMessage onMessage(MessageAutoChisel message, MessageContext ctx) { TileEntity te = message.getTileEntity(ctx); diff --git a/src/main/java/com/cricketcraft/chisel/network/message/MessageChiselMode.java b/src/main/java/team/chisel/network/message/MessageChiselMode.java similarity index 88% rename from src/main/java/com/cricketcraft/chisel/network/message/MessageChiselMode.java rename to src/main/java/team/chisel/network/message/MessageChiselMode.java index 855c41a7..fd2e1bc9 100644 --- a/src/main/java/com/cricketcraft/chisel/network/message/MessageChiselMode.java +++ b/src/main/java/team/chisel/network/message/MessageChiselMode.java @@ -1,14 +1,13 @@ -package com.cricketcraft.chisel.network.message; - -import io.netty.buffer.ByteBuf; -import net.minecraft.item.ItemStack; +package team.chisel.network.message; import com.cricketcraft.chisel.api.IAdvancedChisel; import com.cricketcraft.chisel.api.IChiselItem; import com.cricketcraft.chisel.api.carving.IChiselMode; -import com.cricketcraft.chisel.item.chisel.ChiselMode; -import com.cricketcraft.chisel.utils.General; +import team.chisel.item.chisel.ChiselMode; +import team.chisel.utils.General; +import io.netty.buffer.ByteBuf; +import net.minecraft.item.ItemStack; import cpw.mods.fml.common.network.ByteBufUtils; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; @@ -16,25 +15,27 @@ import cpw.mods.fml.common.network.simpleimpl.MessageContext; public class MessageChiselMode implements IMessage { - public MessageChiselMode(){ + public MessageChiselMode() { } - + private String mode; - + public MessageChiselMode(IChiselMode iChiselMode) { this.mode = iChiselMode.name(); } + @Override public void toBytes(ByteBuf buf) { ByteBufUtils.writeUTF8String(buf, mode); } - + @Override public void fromBytes(ByteBuf buf) { this.mode = ByteBufUtils.readUTF8String(buf); } - + public static class Handler implements IMessageHandler { + @Override public IMessage onMessage(MessageChiselMode message, MessageContext ctx) { ItemStack stack = ctx.getServerHandler().playerEntity.getCurrentEquippedItem(); diff --git a/src/main/java/com/cricketcraft/chisel/network/message/MessageChiselSound.java b/src/main/java/team/chisel/network/message/MessageChiselSound.java similarity index 85% rename from src/main/java/com/cricketcraft/chisel/network/message/MessageChiselSound.java rename to src/main/java/team/chisel/network/message/MessageChiselSound.java index a910eda5..1c2db9a7 100644 --- a/src/main/java/com/cricketcraft/chisel/network/message/MessageChiselSound.java +++ b/src/main/java/team/chisel/network/message/MessageChiselSound.java @@ -1,15 +1,14 @@ -package com.cricketcraft.chisel.network.message; +package team.chisel.network.message; +import com.cricketcraft.chisel.api.carving.ICarvingVariation; + +import team.chisel.Chisel; +import team.chisel.client.GeneralChiselClient; +import team.chisel.item.chisel.ItemChisel; +import team.chisel.network.message.base.MessageCoords; import io.netty.buffer.ByteBuf; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.api.carving.ICarvingVariation; -import com.cricketcraft.chisel.client.GeneralChiselClient; -import com.cricketcraft.chisel.item.chisel.ItemChisel; -import com.cricketcraft.chisel.network.message.base.MessageCoords; - import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; diff --git a/src/main/java/com/cricketcraft/chisel/network/message/MessagePresentConnect.java b/src/main/java/team/chisel/network/message/MessagePresentConnect.java similarity index 89% rename from src/main/java/com/cricketcraft/chisel/network/message/MessagePresentConnect.java rename to src/main/java/team/chisel/network/message/MessagePresentConnect.java index 82907574..b266c28d 100644 --- a/src/main/java/com/cricketcraft/chisel/network/message/MessagePresentConnect.java +++ b/src/main/java/team/chisel/network/message/MessagePresentConnect.java @@ -1,37 +1,34 @@ -package com.cricketcraft.chisel.network.message; +package team.chisel.network.message; +import team.chisel.block.tileentity.TileEntityPresent; +import team.chisel.network.message.base.MessageCoords; import io.netty.buffer.ByteBuf; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.util.ForgeDirection; - -import com.cricketcraft.chisel.block.tileentity.TileEntityPresent; -import com.cricketcraft.chisel.network.message.base.MessageCoords; - import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; - public class MessagePresentConnect extends MessageCoords { - + private ForgeDirection dir; private boolean connect, preserveDir; - + public MessagePresentConnect() { super(); } - + public MessagePresentConnect(TileEntityPresent present, ForgeDirection dir, boolean connecting) { this(present, dir, connecting, false); } - + public MessagePresentConnect(TileEntityPresent present, ForgeDirection dir, boolean connecting, boolean preserveDir) { super(present); this.dir = dir; this.connect = connecting; this.preserveDir = preserveDir; } - + @Override public void toBytes(ByteBuf buf) { super.toBytes(buf); @@ -39,7 +36,7 @@ public class MessagePresentConnect extends MessageCoords { buf.writeBoolean(connect); buf.writeBoolean(preserveDir); } - + @Override public void fromBytes(ByteBuf buf) { super.fromBytes(buf); @@ -47,9 +44,9 @@ public class MessagePresentConnect extends MessageCoords { connect = buf.readBoolean(); preserveDir = buf.readBoolean(); } - + public static class Handler implements IMessageHandler { - + @Override public IMessage onMessage(MessagePresentConnect message, MessageContext ctx) { TileEntity te = message.getTileEntity(ctx); diff --git a/src/main/java/com/cricketcraft/chisel/network/message/MessageSlotUpdate.java b/src/main/java/team/chisel/network/message/MessageSlotUpdate.java similarity index 89% rename from src/main/java/com/cricketcraft/chisel/network/message/MessageSlotUpdate.java rename to src/main/java/team/chisel/network/message/MessageSlotUpdate.java index 47a74d85..0f9cab22 100644 --- a/src/main/java/com/cricketcraft/chisel/network/message/MessageSlotUpdate.java +++ b/src/main/java/team/chisel/network/message/MessageSlotUpdate.java @@ -1,13 +1,11 @@ -package com.cricketcraft.chisel.network.message; +package team.chisel.network.message; +import team.chisel.Chisel; +import team.chisel.network.message.base.MessageCoords; import io.netty.buffer.ByteBuf; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; - -import com.cricketcraft.chisel.Chisel; -import com.cricketcraft.chisel.network.message.base.MessageCoords; - import cpw.mods.fml.common.network.ByteBufUtils; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; diff --git a/src/main/java/com/cricketcraft/chisel/network/message/base/MessageCoords.java b/src/main/java/team/chisel/network/message/base/MessageCoords.java similarity index 92% rename from src/main/java/com/cricketcraft/chisel/network/message/base/MessageCoords.java rename to src/main/java/team/chisel/network/message/base/MessageCoords.java index 0bf50c3f..ed2170b2 100644 --- a/src/main/java/com/cricketcraft/chisel/network/message/base/MessageCoords.java +++ b/src/main/java/team/chisel/network/message/base/MessageCoords.java @@ -1,12 +1,10 @@ -package com.cricketcraft.chisel.network.message.base; +package team.chisel.network.message.base; +import team.chisel.Chisel; import io.netty.buffer.ByteBuf; import net.minecraft.block.Block; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; - -import com.cricketcraft.chisel.Chisel; - import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import cpw.mods.fml.relauncher.Side; diff --git a/src/main/java/com/cricketcraft/chisel/proxy/ClientProxy.java b/src/main/java/team/chisel/proxy/ClientProxy.java similarity index 61% rename from src/main/java/com/cricketcraft/chisel/proxy/ClientProxy.java rename to src/main/java/team/chisel/proxy/ClientProxy.java index 27d21f62..76872b1b 100644 --- a/src/main/java/com/cricketcraft/chisel/proxy/ClientProxy.java +++ b/src/main/java/team/chisel/proxy/ClientProxy.java @@ -1,41 +1,49 @@ -package com.cricketcraft.chisel.proxy; +package team.chisel.proxy; -import com.cricketcraft.chisel.block.BlockCarvableBeacon; -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; -import com.cricketcraft.chisel.block.tileentity.TileEntityCarvableBeacon; -import com.cricketcraft.chisel.block.tileentity.TileEntityPresent; -import com.cricketcraft.chisel.client.player.PlayerSpecials; -import com.cricketcraft.chisel.client.render.*; -import com.cricketcraft.chisel.client.render.item.ItemChiselRenderer; -import com.cricketcraft.chisel.client.render.tile.RenderAutoChisel; -import com.cricketcraft.chisel.client.render.tile.RenderCarvableBeacon; -import com.cricketcraft.chisel.client.render.tile.RenderPresent; -import com.cricketcraft.chisel.entity.EntityBallOMoss; -import com.cricketcraft.chisel.entity.EntityChiselSnowman; -import com.cricketcraft.chisel.entity.EntityCloudInABottle; -import com.cricketcraft.chisel.entity.EntitySmashingRock; -import com.cricketcraft.chisel.init.ChiselBlocks; -import com.cricketcraft.chisel.init.ChiselItems; - -import cpw.mods.fml.client.registry.ClientRegistry; -import cpw.mods.fml.client.registry.RenderingRegistry; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.entity.RenderSnowball; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.world.World; import net.minecraftforge.client.MinecraftForgeClient; +import team.chisel.block.BlockCarvableBeacon; +import team.chisel.block.tileentity.TileEntityAutoChisel; +import team.chisel.block.tileentity.TileEntityCarvableBeacon; +import team.chisel.block.tileentity.TileEntityPresent; +import team.chisel.client.render.RenderChiselSnowman; +import team.chisel.client.render.RendererCTM; +import team.chisel.client.render.RendererCTMPane; +import team.chisel.client.render.RendererEldritch; +import team.chisel.client.render.RendererLayeredGlow; +import team.chisel.client.render.RendererMultiLayer; +import team.chisel.client.render.RendererRoadLine; +import team.chisel.client.render.RendererSimpleLayered; +import team.chisel.client.render.RendererSnakeStone; +import team.chisel.client.render.RendererStairs; +import team.chisel.client.render.item.ItemChiselRenderer; +import team.chisel.client.render.tile.RenderAutoChisel; +import team.chisel.client.render.tile.RenderCarvableBeacon; +import team.chisel.client.render.tile.RenderPresent; +import team.chisel.entity.EntityBallOMoss; +import team.chisel.entity.EntityChiselSnowman; +import team.chisel.entity.EntityCloudInABottle; +import team.chisel.entity.EntitySmashingRock; +import team.chisel.init.ChiselBlocks; +import team.chisel.init.ChiselItems; +import cpw.mods.fml.client.registry.ClientRegistry; +import cpw.mods.fml.client.registry.RenderingRegistry; public class ClientProxy extends CommonProxy { ItemChiselRenderer renderer = new ItemChiselRenderer(); - + @Override public void preInit() { } @Override public void init() { + RenderingRegistry.registerBlockHandler(new RendererCTM()); RenderingRegistry.registerBlockHandler(new RendererStairs()); RenderingRegistry.registerBlockHandler(new RendererCTMPane()); RenderingRegistry.registerBlockHandler(new RendererRoadLine()); @@ -43,19 +51,19 @@ public class ClientProxy extends CommonProxy { RenderingRegistry.registerBlockHandler(new RendererEldritch()); RenderingRegistry.registerBlockHandler(new RendererLayeredGlow()); RenderingRegistry.registerBlockHandler(new RendererSimpleLayered()); - + RenderingRegistry.registerBlockHandler(new RendererMultiLayer()); RenderAutoChisel rac = new RenderAutoChisel(); RenderingRegistry.registerBlockHandler(rac); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(ChiselBlocks.autoChisel), rac); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityAutoChisel.class, rac); - + RenderCarvableBeacon rcb = new RenderCarvableBeacon(); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityCarvableBeacon.class, rcb); RenderingRegistry.registerBlockHandler(rcb); BlockCarvableBeacon.renderId = rcb.getRenderId(); - + RenderPresent rp = new RenderPresent(); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(ChiselBlocks.present), rp); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityPresent.class, rp); @@ -63,12 +71,11 @@ public class ClientProxy extends CommonProxy { RenderingRegistry.registerEntityRenderingHandler(EntityCloudInABottle.class, new RenderSnowball(ChiselItems.cloudinabottle)); RenderingRegistry.registerEntityRenderingHandler(EntityBallOMoss.class, new RenderSnowball(ChiselItems.ballomoss)); RenderingRegistry.registerEntityRenderingHandler(EntitySmashingRock.class, new RenderSnowball(ChiselItems.smashingrock)); - RenderingRegistry.registerEntityRenderingHandler(EntityChiselSnowman.class, new RenderChiselSnowman()); + RenderingRegistry.registerEntityRenderingHandler(EntityChiselSnowman.class, new RenderChiselSnowman()); MinecraftForgeClient.registerItemRenderer(ChiselItems.chisel, renderer); MinecraftForgeClient.registerItemRenderer(ChiselItems.diamondChisel, renderer); - - PlayerSpecials.init(); +// MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(ChiselBlocks.antiBlock), new SubmapManagerAntiblock.AntiblockItemRenderer()); } @Override diff --git a/src/main/java/com/cricketcraft/chisel/proxy/CommonProxy.java b/src/main/java/team/chisel/proxy/CommonProxy.java similarity index 71% rename from src/main/java/com/cricketcraft/chisel/proxy/CommonProxy.java rename to src/main/java/team/chisel/proxy/CommonProxy.java index 15faabd2..c50e8ce8 100644 --- a/src/main/java/com/cricketcraft/chisel/proxy/CommonProxy.java +++ b/src/main/java/team/chisel/proxy/CommonProxy.java @@ -1,12 +1,10 @@ -package com.cricketcraft.chisel.proxy; +package team.chisel.proxy; -import com.cricketcraft.chisel.block.tileentity.TileEntityCarvableBeacon; +import team.chisel.block.tileentity.TileEntityAutoChisel; +import team.chisel.block.tileentity.TileEntityCarvableBeacon; +import team.chisel.block.tileentity.TileEntityPresent; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.world.World; - -import com.cricketcraft.chisel.block.tileentity.TileEntityAutoChisel; -import com.cricketcraft.chisel.block.tileentity.TileEntityPresent; - import cpw.mods.fml.common.registry.GameRegistry; public class CommonProxy { diff --git a/src/main/java/com/cricketcraft/chisel/utils/General.java b/src/main/java/team/chisel/utils/General.java similarity index 96% rename from src/main/java/com/cricketcraft/chisel/utils/General.java rename to src/main/java/team/chisel/utils/General.java index 174a28a8..5e5f405d 100644 --- a/src/main/java/com/cricketcraft/chisel/utils/General.java +++ b/src/main/java/team/chisel/utils/General.java @@ -1,7 +1,14 @@ -package com.cricketcraft.chisel.utils; +package team.chisel.utils; import java.util.Random; +import com.cricketcraft.chisel.api.IAdvancedChisel; +import com.cricketcraft.chisel.api.carving.CarvingUtils; +import com.cricketcraft.chisel.api.carving.ICarvingVariation; +import com.cricketcraft.chisel.api.carving.IChiselMode; + +import team.chisel.carving.Carving; +import team.chisel.item.chisel.ChiselMode; import joptsimple.internal.Strings; import net.minecraft.block.Block; import net.minecraft.entity.Entity; @@ -15,13 +22,6 @@ import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; import net.minecraft.world.World; -import com.cricketcraft.chisel.api.IAdvancedChisel; -import com.cricketcraft.chisel.api.carving.CarvingUtils; -import com.cricketcraft.chisel.api.carving.ICarvingVariation; -import com.cricketcraft.chisel.api.carving.IChiselMode; -import com.cricketcraft.chisel.carving.Carving; -import com.cricketcraft.chisel.item.chisel.ChiselMode; - public class General { public static Random rand = new Random(); @@ -125,24 +125,25 @@ public class General { } private static final String MODE_KEY = "chiselMode"; + public static IChiselMode getChiselMode(ItemStack chisel) { if (chisel == null) { return ChiselMode.SINGLE; } - + if (chisel.stackTagCompound == null || Strings.isNullOrEmpty(chisel.stackTagCompound.getString(MODE_KEY))) { initTag(chisel); chisel.stackTagCompound.setString(MODE_KEY, ChiselMode.SINGLE.name()); } - + String name = chisel.stackTagCompound.getString(MODE_KEY); if (chisel.getItem() instanceof IAdvancedChisel) { - return ((IAdvancedChisel)chisel.getItem()).getMode(chisel, name); + return ((IAdvancedChisel) chisel.getItem()).getMode(chisel, name); } return Enum.valueOf(ChiselMode.class, chisel.stackTagCompound.getString(MODE_KEY)); } - + public static void setChiselMode(ItemStack chisel, IChiselMode mode) { initTag(chisel); chisel.stackTagCompound.setString(MODE_KEY, mode.name()); diff --git a/src/main/java/com/cricketcraft/chisel/utils/GeneralClient.java b/src/main/java/team/chisel/utils/GeneralClient.java similarity index 74% rename from src/main/java/com/cricketcraft/chisel/utils/GeneralClient.java rename to src/main/java/team/chisel/utils/GeneralClient.java index 4a1354f6..c83aceb4 100644 --- a/src/main/java/com/cricketcraft/chisel/utils/GeneralClient.java +++ b/src/main/java/team/chisel/utils/GeneralClient.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.utils; +package team.chisel.utils; import java.util.HashMap; import java.util.Random; @@ -29,12 +29,11 @@ public class GeneralClient { Minecraft.getMinecraft().getTextureManager().bindTexture(res); } - - public static void setGLColorFromInt(int color) - { - float red = (color >> 16 & 255) / 255.0F; - float green = (color >> 8 & 255) / 255.0F; - float blue = (color & 255) / 255.0F; - GL11.glColor4f(red, green, blue, 1.0F); - } + + public static void setGLColorFromInt(int color) { + float red = (color >> 16 & 255) / 255.0F; + float green = (color >> 8 & 255) / 255.0F; + float blue = (color & 255) / 255.0F; + GL11.glColor4f(red, green, blue, 1.0F); + } } diff --git a/src/main/java/team/chisel/utils/RecipeUtil.java b/src/main/java/team/chisel/utils/RecipeUtil.java new file mode 100644 index 00000000..a0e55afb --- /dev/null +++ b/src/main/java/team/chisel/utils/RecipeUtil.java @@ -0,0 +1,36 @@ +package team.chisel.utils; + +import cpw.mods.fml.common.registry.GameRegistry; +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.CraftingManager; +import net.minecraft.item.crafting.FurnaceRecipes; +import net.minecraft.item.crafting.IRecipe; + +import java.util.List; + +/** + * Utility for crafting/recipe things + */ +public class RecipeUtil { + + public static boolean isCraftable(ItemStack stack){ + for (IRecipe recipe : (List)CraftingManager.getInstance().getRecipeList()){ + if (recipe.getRecipeOutput()==null){ + continue; + } + if (stack.isItemEqual(recipe.getRecipeOutput())){ + return true; + } + } + return false; + } + + public static boolean isSmeltable(ItemStack stack){ + return FurnaceRecipes.smelting().getSmeltingList().containsKey(stack); + } + + public static boolean isCreatable(ItemStack stack){ + return isCraftable(stack) || isSmeltable(stack); + } + +} diff --git a/src/main/java/com/cricketcraft/chisel/world/GeneratorChisel.java b/src/main/java/team/chisel/world/GeneratorChisel.java similarity index 98% rename from src/main/java/com/cricketcraft/chisel/world/GeneratorChisel.java rename to src/main/java/team/chisel/world/GeneratorChisel.java index 75e9b5e2..ad5de157 100644 --- a/src/main/java/com/cricketcraft/chisel/world/GeneratorChisel.java +++ b/src/main/java/team/chisel/world/GeneratorChisel.java @@ -1,4 +1,4 @@ -package com.cricketcraft.chisel.world; +package team.chisel.world; import java.util.Map; import java.util.Random; diff --git a/src/main/resources/assets/chisel/lang/en_US.lang b/src/main/resources/assets/chisel/lang/en_US.lang index f7300f95..11545f65 100644 --- a/src/main/resources/assets/chisel/lang/en_US.lang +++ b/src/main/resources/assets/chisel/lang/en_US.lang @@ -258,6 +258,7 @@ tile.futura.1.desc=Glowing Screen with Cyan Borders tile.futura.2.desc=Applied Labyrinthic Neon Lines tile.futura.3.desc=Poptart Rainbow tile.futura.4.desc=Purple Applied Labyrinthic Neon Lines +tile.futura.5.desc=Psychedelic Poptart Rainbow.v02 tile.futuraCircuit.black.desc=Black tile.futuraCircuit.blue.desc=Blue tile.futuraCircuit.brown.desc=Brown @@ -329,6 +330,7 @@ tile.grimstone.14.desc=Flaky Grimstone tile.chisel.technical.name=Technical Block tile.chisel.technical2.name=Transparent Technical Block tile.chisel.technical3.name=Industrial Technical Block +tile.chisel.technical4.name=Technical Block tile.technical.0.desc=Scaffold tile.technical.1.desc=Panels with Caution Tape tile.technical.2.desc=An Old Relic from the land of Oneteufyv @@ -347,6 +349,45 @@ tile.technical.14.desc=Fan (Malfunctioning) tile.technical.15.desc=Rusty Grate tile.technical3.0.desc=I'm a big fan of this massive fan! tile.technical3.1.desc=Industrial Armor Plating +tile.technical4.0.desc=Corroded Metal Chunks +tile.technical4.1.desc=Rusted Metal Chunks +tile.technical4.2.desc=Sturdy +tile.technical4.3.desc=MegaCellâ„¢ Battery +tile.technical4.4.desc=Thermal Exhaust Plating +tile.technical4.5.desc=Makeshift Plating +tile.technical4.6.desc=Tape Drive? (I'm too young for this.) +tile.technical4.7.desc=Pipe Dream + +#End Stone +tile.chisel.end_Stone.name=End Stone +tile.end_Stone.0.desc=End Stone Bricks +tile.end_Stone.1.desc=End Chaotic Bricks +tile.end_Stone.2.desc=Checkered Tiles +tile.end_Stone.3.desc=Ender Circuit +tile.end_Stone.4.desc=Fancy Bricks +tile.end_Stone.5.desc=End Stone Pillar +tile.end_Stone.6.desc=Etched End Stone +tile.end_Stone.7.desc=Prismatic End Stone +tile.end_Stone.8.desc=End Stone Chunk +tile.end_Stone.9.desc=Framed End Stone Chunk +tile.end_Stone.10.desc=Arcane Block of End Stone +tile.end_Stone.11.desc=Framed End Stone +tile.end_Stone.12.desc=Ornate End Stone +tile.end_Stone.13.desc=End Stone Large Tile + +#Purpur +tile.chisel.purpur.name=Purpur Block +tile.purpur.0.desc=Medium Tiles +tile.purpur.1.desc=Pillar +tile.purpur.2.desc=Not Shulker +tile.purpur.3.desc=Small Tiles +tile.purpur.4.desc=Broken Small Tiles +tile.purpur.5.desc=Prismatic Purpur +tile.purpur.6.desc=Rough Bricks +tile.purpur.7.desc=Cracked Surface +tile.purpur.8.desc=Arcane Block of Purpur +tile.purpur.9.desc=Purpur Large Tile +tile.purpur.10.desc=Ornate Purpur #Metal Blocks tile.chisel.aluminumblock.name=Block of Aluminum diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-darkpanel.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-darkpanel.png new file mode 100644 index 00000000..8fa338ba Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-darkpanel.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-dent.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-dent.png new file mode 100644 index 00000000..29a3008f Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-dent.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-emboss.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-emboss.png new file mode 100644 index 00000000..76e3f792 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-emboss.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-fourtile.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-fourtile.png new file mode 100644 index 00000000..e5a6f305 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-fourtile.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french-creep.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french-creep.png new file mode 100644 index 00000000..9f415648 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french-creep.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french.png new file mode 100644 index 00000000..36f1b519 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french2.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french2.png new file mode 100644 index 00000000..d7814d82 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-french2.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-marker.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-marker.png new file mode 100644 index 00000000..f431a957 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-marker.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-ornate1.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-ornate1.png new file mode 100644 index 00000000..8dac4c73 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-ornate1.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-ornate2.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-ornate2.png new file mode 100644 index 00000000..32d3911e Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-ornate2.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-rough-ctmv.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-rough-ctmv.png new file mode 100644 index 00000000..27708746 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-rough-ctmv.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-rough.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-rough.png new file mode 100644 index 00000000..fde10d7a Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-rough.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smallbrick.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smallbrick.png new file mode 100644 index 00000000..ce511602 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smallbrick.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smallbroken.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smallbroken.png new file mode 100644 index 00000000..5291e261 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smallbroken.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smalltile.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smalltile.png new file mode 100644 index 00000000..2403dc4b Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smalltile.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smooth-creep.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smooth-creep.png new file mode 100644 index 00000000..e55c8054 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smooth-creep.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smooth.png b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smooth.png new file mode 100644 index 00000000..79adfa03 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/birdstone/birdstone-smooth.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/arcanePurpur.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/arcanePurpur.png new file mode 100644 index 00000000..d952275f Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/arcanePurpur.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/prismaticPurpur.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/prismaticPurpur.png new file mode 100644 index 00000000..a919365b Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/prismaticPurpur.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurBricks.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurBricks.png new file mode 100644 index 00000000..87244376 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurBricks.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurCobble.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurCobble.png new file mode 100644 index 00000000..08674bbf Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurCobble.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurLargeTile.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurLargeTile.png new file mode 100644 index 00000000..ac3bc5b7 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurLargeTile.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurOrnate.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurOrnate.png new file mode 100644 index 00000000..78adad2e Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpurOrnate.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_block.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_block.png new file mode 100755 index 00000000..9c657760 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_block.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_pillar-side.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_pillar-side.png new file mode 100755 index 00000000..5dc57e7c Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_pillar-side.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_pillar-top.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_pillar-top.png new file mode 100755 index 00000000..3269d450 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/purpur_pillar-top.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/shulker-side.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/shulker-side.png new file mode 100644 index 00000000..177ac788 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/shulker-side.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/shulker-top.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/shulker-top.png new file mode 100644 index 00000000..1d29ef54 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/shulker-top.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/tileBrokenPurpur.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/tileBrokenPurpur.png new file mode 100644 index 00000000..771e24d8 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/tileBrokenPurpur.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/end_purpur/tilePurpur.png b/src/main/resources/assets/chisel/textures/blocks/end_purpur/tilePurpur.png new file mode 100644 index 00000000..38b70b2e Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/end_purpur/tilePurpur.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/CheckeredTile.png b/src/main/resources/assets/chisel/textures/blocks/endstone/CheckeredTile.png new file mode 100644 index 00000000..e4f340df Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/CheckeredTile.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-0-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-0-ctm.png new file mode 100644 index 00000000..d178a56c Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-0-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-0.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-0.png new file mode 100644 index 00000000..f10508a3 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-0.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-1-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-1-ctm.png new file mode 100644 index 00000000..b3205a12 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-1-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-1.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-1.png new file mode 100644 index 00000000..d1f95695 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-1.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-2-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-2-ctm.png new file mode 100644 index 00000000..46dca7cb Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-2-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-2.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-2.png new file mode 100644 index 00000000..dfc0caaa Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-2.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-3-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-3-ctm.png new file mode 100644 index 00000000..1c7d8151 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-3-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-3.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-3.png new file mode 100644 index 00000000..6d8183aa Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-3.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-4-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-4-ctm.png new file mode 100644 index 00000000..60501dfa Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-4-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-4.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-4.png new file mode 100644 index 00000000..0c73a02c Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-4.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-5-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-5-ctm.png new file mode 100644 index 00000000..23a65aa8 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-5-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-5.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-5.png new file mode 100644 index 00000000..f4dd277b Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-5.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-6-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-6-ctm.png new file mode 100644 index 00000000..f0c74830 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-6-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-6.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-6.png new file mode 100644 index 00000000..dff943f4 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-6.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-7-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-7-ctm.png new file mode 100644 index 00000000..1b97f83e Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-7-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-7.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-7.png new file mode 100644 index 00000000..87451231 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-7.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-8-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-8-ctm.png new file mode 100644 index 00000000..9de1a119 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-8-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-8.png b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-8.png new file mode 100644 index 00000000..1ac06604 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/EnderFrame-8.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/arcaneEndStone.png b/src/main/resources/assets/chisel/textures/blocks/endstone/arcaneEndStone.png new file mode 100644 index 00000000..5408057b Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/arcaneEndStone.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/chaoticBricks.png b/src/main/resources/assets/chisel/textures/blocks/endstone/chaoticBricks.png new file mode 100644 index 00000000..6f609005 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/chaoticBricks.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/endFrenchBricks.png b/src/main/resources/assets/chisel/textures/blocks/endstone/endFrenchBricks.png new file mode 100644 index 00000000..85030ee1 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/endFrenchBricks.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/endPillar-side.png b/src/main/resources/assets/chisel/textures/blocks/endstone/endPillar-side.png new file mode 100644 index 00000000..f68a5da9 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/endPillar-side.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/endPillar-top.png b/src/main/resources/assets/chisel/textures/blocks/endstone/endPillar-top.png new file mode 100644 index 00000000..d5876b35 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/endPillar-top.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneChunk-v9.png b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneChunk-v9.png new file mode 100644 index 00000000..6e4aff58 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneChunk-v9.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneEtched-side.png b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneEtched-side.png new file mode 100644 index 00000000..1f0d0087 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneEtched-side.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneEtched-top.png b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneEtched-top.png new file mode 100644 index 00000000..712d2f88 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneEtched-top.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneLargeTile.png b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneLargeTile.png new file mode 100644 index 00000000..48e45b61 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneLargeTile.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneOrnate.png b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneOrnate.png new file mode 100644 index 00000000..997310a5 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/endStoneOrnate.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/end_bricks.png b/src/main/resources/assets/chisel/textures/blocks/endstone/end_bricks.png new file mode 100755 index 00000000..667186a3 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/end_bricks.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/enderCircuit.png b/src/main/resources/assets/chisel/textures/blocks/endstone/enderCircuit.png new file mode 100644 index 00000000..44814ca5 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/enderCircuit.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/framedEndStone-ctm.png b/src/main/resources/assets/chisel/textures/blocks/endstone/framedEndStone-ctm.png new file mode 100644 index 00000000..2cf1db83 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/framedEndStone-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/framedEndStone.png b/src/main/resources/assets/chisel/textures/blocks/endstone/framedEndStone.png new file mode 100644 index 00000000..f66db79b Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/framedEndStone.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/endstone/prismaticEndStone.png b/src/main/resources/assets/chisel/textures/blocks/endstone/prismaticEndStone.png new file mode 100644 index 00000000..5e63a01b Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/endstone/prismaticEndStone.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/ExhaustPlating-ctm.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/ExhaustPlating-ctm.png new file mode 100644 index 00000000..dc597841 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/ExhaustPlating-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/ExhaustPlating.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/ExhaustPlating.png new file mode 100644 index 00000000..53cea6b0 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/ExhaustPlating.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/MakeshiftPanels-v9.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/MakeshiftPanels-v9.png new file mode 100644 index 00000000..41a2f2fc Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/MakeshiftPanels-v9.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-bottom.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-bottom.png new file mode 100644 index 00000000..46773a4e Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-bottom.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-side.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-side.png new file mode 100644 index 00000000..64c7abfc Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-side.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-top.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-top.png new file mode 100644 index 00000000..aadb9b60 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/MegaCell-top.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/OldeTimeyServerAnim.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/OldeTimeyServerAnim.png new file mode 100644 index 00000000..c263042c Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/OldeTimeyServerAnim.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/OldeTimeyServerAnim.png.mcmeta b/src/main/resources/assets/chisel/textures/blocks/technical/new/OldeTimeyServerAnim.png.mcmeta new file mode 100644 index 00000000..4bfd9101 --- /dev/null +++ b/src/main/resources/assets/chisel/textures/blocks/technical/new/OldeTimeyServerAnim.png.mcmeta @@ -0,0 +1,15 @@ +{ + "animation": { + "frames": [ + 0, + 4, + 5, + 6, + 7, + 4, + 5, + 6, + 7, + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/Piping-r9.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/Piping-r9.png new file mode 100644 index 00000000..cf1ed4a2 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/Piping-r9.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/Sturdy-ctm.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/Sturdy-ctm.png new file mode 100644 index 00000000..90b5ffab Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/Sturdy-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/Sturdy.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/Sturdy.png new file mode 100644 index 00000000..40893771 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/Sturdy.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/TapeDrive.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/TapeDrive.png new file mode 100644 index 00000000..0c72813f Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/TapeDrive.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/TapeDrive.png.mcmeta b/src/main/resources/assets/chisel/textures/blocks/technical/new/TapeDrive.png.mcmeta new file mode 100644 index 00000000..772ddd31 --- /dev/null +++ b/src/main/resources/assets/chisel/textures/blocks/technical/new/TapeDrive.png.mcmeta @@ -0,0 +1,12 @@ +{ + "animation": { + "frametime": 5, + "frames": [ + 0, + 2, + 4, + 6, + 8, + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-0-ctm.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-0-ctm.png new file mode 100644 index 00000000..c9c7254f Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-0-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-0.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-0.png new file mode 100644 index 00000000..7150adc9 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-0.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-1-ctm.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-1-ctm.png new file mode 100644 index 00000000..57b5ee4f Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-1-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-1.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-1.png new file mode 100644 index 00000000..bfd12cc1 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-1.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-2-ctm.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-2-ctm.png new file mode 100644 index 00000000..c6eceba4 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-2-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-2.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-2.png new file mode 100644 index 00000000..e25c5e3b Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-2.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-3-ctm.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-3-ctm.png new file mode 100644 index 00000000..179ef910 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-3-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-3.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-3.png new file mode 100644 index 00000000..d608cbf7 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-3.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-0.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-0.png new file mode 100644 index 00000000..c9c7254f Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-0.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-1.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-1.png new file mode 100644 index 00000000..57b5ee4f Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-1.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-2.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-2.png new file mode 100644 index 00000000..c6eceba4 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-2.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-3.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-3.png new file mode 100644 index 00000000..179ef910 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/test/ExhaustPlating-ctm-3.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/weatheredGreenPanels-r4.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/weatheredGreenPanels-r4.png new file mode 100644 index 00000000..2aa90ad4 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/weatheredGreenPanels-r4.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/technical/new/weatheredOrangePanels-r4.png b/src/main/resources/assets/chisel/textures/blocks/technical/new/weatheredOrangePanels-r4.png new file mode 100644 index 00000000..40057726 Binary files /dev/null and b/src/main/resources/assets/chisel/textures/blocks/technical/new/weatheredOrangePanels-r4.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/bevel-ctm.png b/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/bevel-ctm.png index a1cdc540..7292fe21 100644 Binary files a/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/bevel-ctm.png and b/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/bevel-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/bevel.png b/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/bevel.png index ceccd547..c6560a7a 100644 Binary files a/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/bevel.png and b/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/bevel.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/metalborder-ctm.png b/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/metalborder-ctm.png index 25f68e25..9286b236 100644 Binary files a/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/metalborder-ctm.png and b/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/metalborder-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/metalborder.png b/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/metalborder.png index 0a6e3bf2..ce481588 100644 Binary files a/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/metalborder.png and b/src/main/resources/assets/chisel/textures/blocks/voidstone/animated/metalborder.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/voidstone/bevel-ctm.png b/src/main/resources/assets/chisel/textures/blocks/voidstone/bevel-ctm.png index eadcb3ab..ac9d35ad 100644 Binary files a/src/main/resources/assets/chisel/textures/blocks/voidstone/bevel-ctm.png and b/src/main/resources/assets/chisel/textures/blocks/voidstone/bevel-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/voidstone/bevel.png b/src/main/resources/assets/chisel/textures/blocks/voidstone/bevel.png index c3a66727..5cd67db6 100644 Binary files a/src/main/resources/assets/chisel/textures/blocks/voidstone/bevel.png and b/src/main/resources/assets/chisel/textures/blocks/voidstone/bevel.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/voidstone/metalborder-ctm.png b/src/main/resources/assets/chisel/textures/blocks/voidstone/metalborder-ctm.png index 6f984697..7c5d1e6c 100644 Binary files a/src/main/resources/assets/chisel/textures/blocks/voidstone/metalborder-ctm.png and b/src/main/resources/assets/chisel/textures/blocks/voidstone/metalborder-ctm.png differ diff --git a/src/main/resources/assets/chisel/textures/blocks/voidstone/metalborder.png b/src/main/resources/assets/chisel/textures/blocks/voidstone/metalborder.png index 315ad47c..d2f5c275 100644 Binary files a/src/main/resources/assets/chisel/textures/blocks/voidstone/metalborder.png and b/src/main/resources/assets/chisel/textures/blocks/voidstone/metalborder.png differ diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index 537f24c0..5cb316e2 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -1,14 +1,14 @@ [ { "modid": "chisel", - "name": "Chisel 2", + "name": "Chisel", "description": "A mod that adds in many fancy blocks for decoration, which are crafted utilising the Chisel.", "version": "${version}", "mcversion": "${mcversion}", "url": "http://www.minecraftforum.net/forums/thread/1294901", "updateUrl": "", - "authorList": [ "AUTOMATIC_MAIDEN", "Pokefenn", "Cricket", "tterrag" ], - "credits": "This mod uses a lot of textures from the Painterly pack: http://painterlypack.net/. Also one stone variation is designed to look like a block from Doku. Oh, and asie for porting the mod to 1.7.2. Oh wait and Drullkus for some wonderful art.", + "authorList": [ "tterrag", "Drullkus", "minecreatr" ], + "credits": "AUTOMATIC_MAIDEN for the original mod,\nasie for porting to 1.7.2,\nand Pokenfenn/Cricket for continuing it in 1.7.\nThis mod uses textures from the Painterly Pack: http://painterlypack.net/.", "logoFile": "/banner.jpg", "screenshots": [], "dependencies": []