From e480daed410bd80d5eda9abbd37f7bd96021e911 Mon Sep 17 00:00:00 2001 From: Alkalus Date: Mon, 20 Nov 2017 20:19:10 +1000 Subject: $ Fixed the Upgraded Alchemical Furnace being built from heavily obfuscated code. % Adjusted Wither Guard recipe to now output 32x per craft, at the added cost of a Netherstar per craft. % Small formatting changes. --- src/Java/gtPlusPlus/core/util/item/ItemUtils.java | 45 ++++++++++++----------- 1 file changed, 24 insertions(+), 21 deletions(-) (limited to 'src/Java/gtPlusPlus/core/util/item') diff --git a/src/Java/gtPlusPlus/core/util/item/ItemUtils.java b/src/Java/gtPlusPlus/core/util/item/ItemUtils.java index 337e301414..3680dfb59d 100644 --- a/src/Java/gtPlusPlus/core/util/item/ItemUtils.java +++ b/src/Java/gtPlusPlus/core/util/item/ItemUtils.java @@ -42,6 +42,9 @@ public class ItemUtils { public static ItemStack getSimpleStack(final Block x){ return getSimpleStack(Item.getItemFromBlock(x), 1); } + public static ItemStack getSimpleStack(final Block x, final int i){ + return getSimpleStack(Item.getItemFromBlock(x), i); + } public static ItemStack getSimpleStack(final Item x, final int i){ try { final ItemStack r = new ItemStack(x, i); @@ -61,8 +64,8 @@ public class ItemUtils { } public static final int WILDCARD_VALUE = Short.MAX_VALUE; - public static ItemStack getWildcardStack(Item x){ - ItemStack y = new ItemStack(x, 1, WILDCARD_VALUE); + public static ItemStack getWildcardStack(final Item x){ + final ItemStack y = new ItemStack(x, 1, WILDCARD_VALUE); return y; } @@ -265,8 +268,8 @@ public class ItemUtils { //Adds a check to grab dusts using GT methodology if possible. ItemStack returnValue = null; if (oredictName.toLowerCase().contains("dust")){ - String MaterialName = oredictName.toLowerCase().replace("dust", ""); - Materials m = Materials.get(MaterialName); + final String MaterialName = oredictName.toLowerCase().replace("dust", ""); + final Materials m = Materials.get(MaterialName); returnValue = getGregtechDust(m, amount); if (returnValue != null){ return returnValue; @@ -284,7 +287,7 @@ public class ItemUtils { Utils.LOG_WARNING(oredictName+" was not valid."); return null; } - catch (Throwable t){ + catch (final Throwable t){ return null; } } @@ -317,7 +320,7 @@ public class ItemUtils { return output; } - public static Item generateSpecialUsePlate(String internalName, String displayName, short[] rgb, int radioactivity){ + public static Item generateSpecialUsePlate(final String internalName, final String displayName, final short[] rgb, final int radioactivity){ return new BaseItemPlate_OLD(internalName, displayName, Utils.rgbtoHexValue(rgb[0], rgb[1], rgb[2]), radioactivity); } @@ -344,7 +347,7 @@ public class ItemUtils { public static MultiPickaxeBase generateMultiPick(final boolean GT_Durability, final Materials material){ final ToolMaterial customMaterial = Utils.generateToolMaterialFromGT(material); - int enchantLevel = material.mEnchantmentToolsLevel; + final int enchantLevel = material.mEnchantmentToolsLevel; final Object enchant = new Pair(material.mEnchantmentTools, enchantLevel); return generateMultiPick(GT_Durability, customMaterial, material.mDefaultLocalName, material.mDurability, material.mRGBa, enchant); } @@ -575,24 +578,24 @@ public class ItemUtils { return outputs; } - private static String getModId(Item item) { + private static String getModId(final Item item) { try { - GameRegistry.UniqueIdentifier id = GameRegistry.findUniqueIdentifierFor(item); - String modname = (id.modId == null ? id.name : id.modId); - return id == null || id.modId.equals("") ? "minecraft" : modname; - } catch (Throwable t){ + final GameRegistry.UniqueIdentifier id = GameRegistry.findUniqueIdentifierFor(item); + final String modname = (id.modId == null ? id.name : id.modId); + return (id == null) || id.modId.equals("") ? "minecraft" : modname; + } catch (final Throwable t){ try { - UniqueIdentifier t2 = GameRegistry.findUniqueIdentifierFor(Block.getBlockFromItem(item)); - String modname = (t2.modId == null ? t2.name : t2.modId); - return t2 == null || t2.modId.equals("") ? "minecraft" : modname; + final UniqueIdentifier t2 = GameRegistry.findUniqueIdentifierFor(Block.getBlockFromItem(item)); + final String modname = (t2.modId == null ? t2.name : t2.modId); + return (t2 == null) || t2.modId.equals("") ? "minecraft" : modname; } - catch (Throwable t3){ + catch (final Throwable t3){ return "bad modid"; } } } - public static String getModId(ItemStack key) { + public static String getModId(final ItemStack key) { return getModId(key.getItem()); } @@ -602,13 +605,13 @@ public class ItemUtils { if (!oreDictList.isEmpty()){ ItemStack returnvalue; for (int xrc=0;xrc Date: Sun, 26 Nov 2017 20:55:02 +1000 Subject: + Added Xp Converter crafting recipe. + Added compressed obsidian. + Added inverted obsidian. + Added crafting & uncrafting recipes for the compressed & inverted obsidian. % Formatting. --- src/Java/gtPlusPlus/core/block/ModBlocks.java | 3 + .../block/general/BlockCompressedObsidian.java | 90 +++++++++++++++ .../core/block/general/BlockTankXpConverter.java | 122 +++++++++++---------- .../core/item/base/itemblock/ItemBlockMeta.java | 44 ++++++++ .../gtPlusPlus/core/recipe/RECIPES_General.java | 43 +++++++- src/Java/gtPlusPlus/core/util/item/ItemUtils.java | 9 +- src/resources/assets/miscutils/lang/en_US.lang | 92 +++++----------- .../assets/miscutils/textures/blocks/SwirlGray.png | Bin 0 -> 270 bytes .../textures/blocks/compressed/obsidian1.png | Bin 0 -> 656 bytes .../textures/blocks/compressed/obsidian2.png | Bin 0 -> 757 bytes .../textures/blocks/compressed/obsidian3.png | Bin 0 -> 856 bytes .../textures/blocks/compressed/obsidian4.png | Bin 0 -> 1022 bytes .../textures/blocks/compressed/obsidian5.png | Bin 0 -> 1245 bytes .../textures/blocks/compressed/obsidian_invert.png | Bin 0 -> 770 bytes 14 files changed, 280 insertions(+), 123 deletions(-) create mode 100644 src/Java/gtPlusPlus/core/block/general/BlockCompressedObsidian.java create mode 100644 src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockMeta.java create mode 100644 src/resources/assets/miscutils/textures/blocks/SwirlGray.png create mode 100644 src/resources/assets/miscutils/textures/blocks/compressed/obsidian1.png create mode 100644 src/resources/assets/miscutils/textures/blocks/compressed/obsidian2.png create mode 100644 src/resources/assets/miscutils/textures/blocks/compressed/obsidian3.png create mode 100644 src/resources/assets/miscutils/textures/blocks/compressed/obsidian4.png create mode 100644 src/resources/assets/miscutils/textures/blocks/compressed/obsidian5.png create mode 100644 src/resources/assets/miscutils/textures/blocks/compressed/obsidian_invert.png (limited to 'src/Java/gtPlusPlus/core/util/item') diff --git a/src/Java/gtPlusPlus/core/block/ModBlocks.java b/src/Java/gtPlusPlus/core/block/ModBlocks.java index 992cd7e991..770494c9f0 100644 --- a/src/Java/gtPlusPlus/core/block/ModBlocks.java +++ b/src/Java/gtPlusPlus/core/block/ModBlocks.java @@ -3,6 +3,7 @@ package gtPlusPlus.core.block; import cpw.mods.fml.common.registry.GameRegistry; import gtPlusPlus.core.block.base.BasicBlock.BlockTypes; import gtPlusPlus.core.block.base.BlockBaseOre; +import gtPlusPlus.core.block.general.BlockCompressedObsidian; import gtPlusPlus.core.block.general.BlockTankXpConverter; import gtPlusPlus.core.block.general.FirePit; import gtPlusPlus.core.block.general.FluidTankInfinite; @@ -60,6 +61,7 @@ public final class ModBlocks { public static Block blockWitherGuard; public static Block blockXpConverter; + public static Block blockCompressedObsidian; public static void init() { Utils.LOG_INFO("Initializing Blocks."); @@ -91,6 +93,7 @@ public final class ModBlocks { blockModularTable = new Machine_ModularityTable(); blockWitherGuard = new BlockWitherProof(); blockXpConverter = new BlockTankXpConverter(); + blockCompressedObsidian = new BlockCompressedObsidian(); } diff --git a/src/Java/gtPlusPlus/core/block/general/BlockCompressedObsidian.java b/src/Java/gtPlusPlus/core/block/general/BlockCompressedObsidian.java new file mode 100644 index 0000000000..48ee7709ec --- /dev/null +++ b/src/Java/gtPlusPlus/core/block/general/BlockCompressedObsidian.java @@ -0,0 +1,90 @@ +package gtPlusPlus.core.block.general; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + +import cpw.mods.fml.common.registry.GameRegistry; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gtPlusPlus.core.creative.AddToCreativeTab; +import gtPlusPlus.core.item.base.itemblock.ItemBlockMeta; +import gtPlusPlus.core.lib.CORE; +import net.minecraft.block.BlockObsidian; +import net.minecraft.block.material.MapColor; +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.World; + +public class BlockCompressedObsidian extends BlockObsidian { + + @SideOnly(Side.CLIENT) + private final IIcon textureArray[] = new IIcon[6]; + + public BlockCompressedObsidian() { + this.setBlockName("blockCompressedObsidian"); + this.setCreativeTab(AddToCreativeTab.tabMachines); + GameRegistry.registerBlock(this, ItemBlockMeta.class, "blockCompressedObsidian"); + } + + @Override + public MapColor getMapColor(final int meta) { + if (meta != 5) { + return MapColor.obsidianColor; + } + else { + return MapColor.sandColor; + } + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(final IIconRegister iicon) { + this.textureArray[0] = iicon.registerIcon(CORE.MODID + ":" + "compressed/" + "obsidian1"); + this.textureArray[1] = iicon.registerIcon(CORE.MODID + ":" + "compressed/" + "obsidian2"); + this.textureArray[2] = iicon.registerIcon(CORE.MODID + ":" + "compressed/" + "obsidian3"); + this.textureArray[3] = iicon.registerIcon(CORE.MODID + ":" + "compressed/" + "obsidian4"); + this.textureArray[4] = iicon.registerIcon(CORE.MODID + ":" + "compressed/" + "obsidian5"); + this.textureArray[5] = iicon.registerIcon(CORE.MODID + ":" + "compressed/" + "obsidian_invert"); + } + + /** + * Gets the block's texture. Args: side, meta + */ + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(final int side, final int meta) { + return this.textureArray[meta]; + } + + @Override + public int damageDropped(final int damage) { + return damage; + } + + @Override + public void getSubBlocks(final Item item, final CreativeTabs tab, final List list) { + for (int i = 0; i < 6; i++) { + list.add(new ItemStack(item, 1, i)); + } + } + + @Override + public Item getItemDropped(final int meta, final Random rand, final int fortune) { + return Item.getItemFromBlock(this); + } + + @Override + public ArrayList getDrops(final World world, final int x, final int y, final int z, final int metadata, + final int fortune) { + int m = metadata; + if (m == 5) { + m = 1; + } + return super.getDrops(world, x, y, z, m, fortune); + } + +} diff --git a/src/Java/gtPlusPlus/core/block/general/BlockTankXpConverter.java b/src/Java/gtPlusPlus/core/block/general/BlockTankXpConverter.java index c2afdfd21f..7e1ab75b84 100644 --- a/src/Java/gtPlusPlus/core/block/general/BlockTankXpConverter.java +++ b/src/Java/gtPlusPlus/core/block/general/BlockTankXpConverter.java @@ -50,7 +50,7 @@ public class BlockTankXpConverter extends BlockContainer { GameRegistry.registerBlock(this, ItemBlockEntityBase.class, "blockTankXpConverter"); LanguageRegistry.addName(this, "Xp Converter"); this.generateRainbowMap(); - if (!this.getTickRandomly()){ + if (!this.getTickRandomly()) { this.setTickRandomly(true); } } @@ -86,44 +86,48 @@ public class BlockTankXpConverter extends BlockContainer { } else { boolean mDidScrewDriver = false; - //Check For Screwdriver + // Check For Screwdriver try { final ItemStack mHandStack = PlayerUtils.getItemStackInPlayersHand(world, player.getDisplayName()); final Item mHandItem = mHandStack.getItem(); - if (((mHandItem instanceof GT_MetaGenerated_Tool_01) && ((mHandItem.getDamage(mHandStack) == 22) || (mHandItem.getDamage(mHandStack) == 150)))){ + if (((mHandItem instanceof GT_MetaGenerated_Tool_01) + && ((mHandItem.getDamage(mHandStack) == 22) || (mHandItem.getDamage(mHandStack) == 150)))) { final TileEntityXpConverter tile = (TileEntityXpConverter) world.getTileEntity(x, y, z); - if (tile != null){ + if (tile != null) { mDidScrewDriver = true; tile.onScrewdriverRightClick((byte) side, player, x, y, z); } } } - catch (final Throwable t){ + catch (final Throwable t) { mDidScrewDriver = false; } - if (!mDidScrewDriver){ - + if (!mDidScrewDriver) { try { final TileEntityXpConverter tile = (TileEntityXpConverter) world.getTileEntity(x, y, z); - if (tile != null){ + if (tile != null) { tile.onRightClick((byte) side, player, x, y, z); } } - catch (final Throwable t){} + catch (final Throwable t) { + } final TileEntityXpConverter tank = (TileEntityXpConverter) world.getTileEntity(x, y, z); - if (tank != null){ - if (tank.tankEssence.getFluid() != null){ - PlayerUtils.messagePlayer(player, "This tank contains "+tank.tankEssence.getFluidAmount()+"L of "+tank.tankEssence.getFluid().getLocalizedName()); + if (tank != null) { + if (tank.tankEssence.getFluid() != null) { + PlayerUtils.messagePlayer(player, "This tank contains " + tank.tankEssence.getFluidAmount() + + "L of " + tank.tankEssence.getFluid().getLocalizedName()); } - if (tank.tankLiquidXp.getFluid() != null){ - PlayerUtils.messagePlayer(player, "This tank contains "+tank.tankLiquidXp.getFluidAmount()+"L of "+tank.tankLiquidXp.getFluid().getLocalizedName()); + if (tank.tankLiquidXp.getFluid() != null) { + PlayerUtils.messagePlayer(player, "This tank contains " + tank.tankLiquidXp.getFluidAmount() + + "L of " + tank.tankLiquidXp.getFluid().getLocalizedName()); } - if ((tank.tankEssence.getFluid() != null) && (tank.tankLiquidXp.getFluid() != null)){ - PlayerUtils.messagePlayer(player, "This is worth "+EnchantingUtils.getLevelForLiquid(tank.tankLiquidXp.getFluidAmount())+" levels."); + if ((tank.tankEssence.getFluid() != null) && (tank.tankLiquidXp.getFluid() != null)) { + PlayerUtils.messagePlayer(player, "This is worth " + + EnchantingUtils.getLevelForLiquid(tank.tankLiquidXp.getFluidAmount()) + " levels."); } } } @@ -152,42 +156,43 @@ public class BlockTankXpConverter extends BlockContainer { } @Override - public boolean canCreatureSpawn(final EnumCreatureType type, final IBlockAccess world, final int x, final int y, final int z) { + public boolean canCreatureSpawn(final EnumCreatureType type, final IBlockAccess world, final int x, final int y, + final int z) { return false; } - private final boolean generateRainbowMap(){ + private final boolean generateRainbowMap() { int id = 0; - this.mRainbowMap.put(id++, new Triplet( 0, 255, 0)); - this.mRainbowMap.put(id++, new Triplet( 51, 255, 0)); - this.mRainbowMap.put(id++, new Triplet(102, 255, 0)); - this.mRainbowMap.put(id++, new Triplet(153, 255, 0)); - this.mRainbowMap.put(id++, new Triplet(204, 255, 0)); - this.mRainbowMap.put(id++, new Triplet(255, 255, 0)); - this.mRainbowMap.put(id++, new Triplet(255, 204, 0)); - this.mRainbowMap.put(id++, new Triplet(255, 153, 0)); - this.mRainbowMap.put(id++, new Triplet(255, 102, 0)); - this.mRainbowMap.put(id++, new Triplet(255, 51, 0)); - this.mRainbowMap.put(id++, new Triplet(255, 0, 0)); - this.mRainbowMap.put(id++, new Triplet(255, 0, 51)); - this.mRainbowMap.put(id++, new Triplet(255, 0, 102)); - this.mRainbowMap.put(id++, new Triplet(255, 0, 153)); - this.mRainbowMap.put(id++, new Triplet(255, 0, 204)); - this.mRainbowMap.put(id++, new Triplet(255, 0, 255)); - this.mRainbowMap.put(id++, new Triplet(204, 0, 255)); - this.mRainbowMap.put(id++, new Triplet(153, 0, 255)); - this.mRainbowMap.put(id++, new Triplet(102, 0, 255)); - this.mRainbowMap.put(id++, new Triplet( 51, 0, 255)); - this.mRainbowMap.put(id++, new Triplet( 0, 0, 255)); - this.mRainbowMap.put(id++, new Triplet( 0, 51, 255)); - this.mRainbowMap.put(id++, new Triplet( 0, 102, 255)); - this.mRainbowMap.put(id++, new Triplet( 0, 153, 255)); - this.mRainbowMap.put(id++, new Triplet( 0, 204, 255)); - this.mRainbowMap.put(id++, new Triplet( 0, 255, 255)); - this.mRainbowMap.put(id++, new Triplet( 0, 255, 204)); - this.mRainbowMap.put(id++, new Triplet( 0, 255, 153)); - this.mRainbowMap.put(id++, new Triplet( 0, 255, 102)); - this.mRainbowMap.put(id++, new Triplet( 0, 255, 51)); + this.mRainbowMap.put(id++, new Triplet(0, 255, 0)); + this.mRainbowMap.put(id++, new Triplet(51, 255, 0)); + this.mRainbowMap.put(id++, new Triplet(102, 255, 0)); + this.mRainbowMap.put(id++, new Triplet(153, 255, 0)); + this.mRainbowMap.put(id++, new Triplet(204, 255, 0)); + this.mRainbowMap.put(id++, new Triplet(255, 255, 0)); + this.mRainbowMap.put(id++, new Triplet(255, 204, 0)); + this.mRainbowMap.put(id++, new Triplet(255, 153, 0)); + this.mRainbowMap.put(id++, new Triplet(255, 102, 0)); + this.mRainbowMap.put(id++, new Triplet(255, 51, 0)); + this.mRainbowMap.put(id++, new Triplet(255, 0, 0)); + this.mRainbowMap.put(id++, new Triplet(255, 0, 51)); + this.mRainbowMap.put(id++, new Triplet(255, 0, 102)); + this.mRainbowMap.put(id++, new Triplet(255, 0, 153)); + this.mRainbowMap.put(id++, new Triplet(255, 0, 204)); + this.mRainbowMap.put(id++, new Triplet(255, 0, 255)); + this.mRainbowMap.put(id++, new Triplet(204, 0, 255)); + this.mRainbowMap.put(id++, new Triplet(153, 0, 255)); + this.mRainbowMap.put(id++, new Triplet(102, 0, 255)); + this.mRainbowMap.put(id++, new Triplet(51, 0, 255)); + this.mRainbowMap.put(id++, new Triplet(0, 0, 255)); + this.mRainbowMap.put(id++, new Triplet(0, 51, 255)); + this.mRainbowMap.put(id++, new Triplet(0, 102, 255)); + this.mRainbowMap.put(id++, new Triplet(0, 153, 255)); + this.mRainbowMap.put(id++, new Triplet(0, 204, 255)); + this.mRainbowMap.put(id++, new Triplet(0, 255, 255)); + this.mRainbowMap.put(id++, new Triplet(0, 255, 204)); + this.mRainbowMap.put(id++, new Triplet(0, 255, 153)); + this.mRainbowMap.put(id++, new Triplet(0, 255, 102)); + this.mRainbowMap.put(id++, new Triplet(0, 255, 51)); this.mRainbowTickMax = this.mRainbowMap.size(); return true; } @@ -198,21 +203,24 @@ public class BlockTankXpConverter extends BlockContainer { } @Override - public int colorMultiplier(final IBlockAccess p_149720_1_, final int p_149720_2_, final int p_149720_3_, final int p_149720_4_) { + public int colorMultiplier(final IBlockAccess p_149720_1_, final int p_149720_2_, final int p_149720_3_, + final int p_149720_4_) { - if ((this.mRainbowTick < 0) || (this.mRainbowTick > this.mRainbowTickMax)){ + if ((this.mRainbowTick < 0) || (this.mRainbowTick > this.mRainbowTickMax)) { this.mRainbowTick = 0; } - //Utils.LOG_INFO("x: "+this.mRainbowTick); - if (this.mRainbowTick <= this.mRainbowTickMax){ + // Utils.LOG_INFO("x: "+this.mRainbowTick); + if (this.mRainbowTick <= this.mRainbowTickMax) { Triplet mT = this.mRainbowMap.get(this.mRainbowTick); try { return Utils.rgbtoHexValue(mT.getValue_1(), mT.getValue_1(), mT.getValue_1()); - } catch (final Throwable t){ + } + catch (final Throwable t) { try { - mT = this.mRainbowMap.get(this.mRainbowTick-1); + mT = this.mRainbowMap.get(this.mRainbowTick - 1); return Utils.rgbtoHexValue(mT.getValue_1(), mT.getValue_1(), mT.getValue_1()); - } catch (final Throwable t1){ + } + catch (final Throwable t1) { return Utils.rgbtoHexValue(0, 0, 0); } } @@ -223,12 +231,12 @@ public class BlockTankXpConverter extends BlockContainer { @Override public void updateTick(final World world, final int x, final int y, final int z, final Random rand) { - //this.mRainbowTick++; + // this.mRainbowTick++; super.updateTick(world, x, y, z, rand); } @Override - public void randomDisplayTick(final World world, final int x, final int y, final int z, final Random rand) { + public void randomDisplayTick(final World world, final int x, final int y, final int z, final Random rand) { this.mRainbowTick++; super.randomDisplayTick(world, x, y, z, rand); } diff --git a/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockMeta.java b/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockMeta.java new file mode 100644 index 0000000000..9cf3f796df --- /dev/null +++ b/src/Java/gtPlusPlus/core/item/base/itemblock/ItemBlockMeta.java @@ -0,0 +1,44 @@ +package gtPlusPlus.core.item.base.itemblock; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.Block; +import net.minecraft.item.ItemBlockWithMetadata; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; + +public class ItemBlockMeta extends ItemBlockWithMetadata +{ + private final Block mBlock; + + public ItemBlockMeta(final Block p_i45326_1_) + { + super(p_i45326_1_, p_i45326_1_); + this.mBlock = p_i45326_1_; + this.setMaxDamage(0); + this.setHasSubtypes(true); + } + + /** + * Gets an icon index based on an item's damage value + */ + @Override + @SideOnly(Side.CLIENT) + public IIcon getIconFromDamage(final int p_77617_1_) + { + return this.mBlock.getIcon(2, p_77617_1_); + } + + /** + * Returns the metadata of the block which this Item (ItemBlock) can place + */ + @Override + public int getMetadata(final int p_77647_1_) + { + return p_77647_1_; + } + + @Override + public String getUnlocalizedName(final ItemStack stack) { + return this.getUnlocalizedName() + "." + stack.getItemDamage(); + } +} \ No newline at end of file diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java index f5f793da77..973a653302 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java @@ -1,5 +1,7 @@ package gtPlusPlus.core.recipe; +import static gtPlusPlus.core.util.item.ItemUtils.getSimpleStack; + import cpw.mods.fml.common.registry.GameRegistry; import gregtech.api.enums.ItemList; import gregtech.api.util.GT_ModHandler; @@ -35,6 +37,7 @@ public class RECIPES_General { if (LoadedMods.Gregtech){ RECIPE_BasicCasingIC2 = ItemUtils.getItemStack("IC2:blockMachine", 1); run(); + addCompressedObsidian(); } } @@ -133,10 +136,16 @@ public class RECIPES_General { RecipeUtils.addShapedGregtechRecipe( "stickBlackSteel", "plateTungstenSteel", "stickBlackSteel", - "plateTungstenSteel", ItemUtils.getSimpleStack(Items.nether_star), "plateTungstenSteel", + "plateTungstenSteel", getSimpleStack(Items.nether_star), "plateTungstenSteel", "stickBlackSteel", "plateTungstenSteel", "stickBlackSteel", ItemUtils.getSimpleStack(ModBlocks.blockWitherGuard, 32)); + RecipeUtils.addShapedGregtechRecipe( + getSimpleStack(Items.experience_bottle), ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 2, 1), getSimpleStack(Items.experience_bottle), + ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 5, 1), getSimpleStack(Items.nether_star), ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 5, 1), + getSimpleStack(Items.experience_bottle), ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 2, 1), getSimpleStack(Items.experience_bottle), + ItemUtils.getSimpleStack(ModBlocks.blockXpConverter, 1)); + //Alkalus Coin /*AddGregtechRecipe.addAssemblylineRecipe( ItemUtils.getSimpleStack(ModItems.itemAlkalusDisk), @@ -161,6 +170,38 @@ public class RECIPES_General { } + private static boolean addCompressedObsidian(){ + //Invert Obsidian + RecipeUtils.addShapedGregtechRecipe( + getSimpleStack(Items.redstone), getSimpleStack(Items.glowstone_dust), getSimpleStack(Items.redstone), + getSimpleStack(Items.glowstone_dust), ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 1, 1), getSimpleStack(Items.glowstone_dust), + getSimpleStack(Items.redstone), getSimpleStack(Items.glowstone_dust), getSimpleStack(Items.redstone), + ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, 5, 1)); + + final ItemStack[] mItems = new ItemStack[6]; + mItems[0] = ItemUtils.getSimpleStack(Blocks.obsidian); + for (int r=0;r<5;r++){ + mItems[r+1] = ItemUtils.simpleMetaStack(ModBlocks.blockCompressedObsidian, r, 1); + } + + //Compressed Obsidian 1-5 + for (int r=0;r<5;r++){ + + final ItemStack input = mItems[r]; + final ItemStack output = mItems[r+1]; + + RecipeUtils.addShapedGregtechRecipe( + input, input, input, + input, input, input, + input, input, input, + output); + + RecipeUtils.addShapelessGregtechRecipe(new ItemStack[]{output}, ItemUtils.getSimpleStack(input, 9)); + + } + return true; + } + } diff --git a/src/Java/gtPlusPlus/core/util/item/ItemUtils.java b/src/Java/gtPlusPlus/core/util/item/ItemUtils.java index 3680dfb59d..fb20c87bac 100644 --- a/src/Java/gtPlusPlus/core/util/item/ItemUtils.java +++ b/src/Java/gtPlusPlus/core/util/item/ItemUtils.java @@ -163,7 +163,7 @@ public class ItemUtils { } @SuppressWarnings("unused") - public static ItemStack simpleMetaStack(final Item item, final int meta, final int itemstackSize){ + public static ItemStack simpleMetaStack(final Item item, final int meta, final int size){ try { if (item == null){ return null; @@ -176,7 +176,7 @@ public class ItemUtils { em = em1; } if (em != null){ - final ItemStack metaStack = new ItemStack(em,itemstackSize,meta); + final ItemStack metaStack = new ItemStack(em,size,meta); return metaStack; } } @@ -187,6 +187,10 @@ public class ItemUtils { } } + public static ItemStack simpleMetaStack(final Block block, final int meta, final int size) { + return simpleMetaStack(Item.getItemFromBlock(block), meta, size); + } + public static ItemStack getCorrectStacktype(final String fqrn, final int stackSize){ final String oreDict = "ore:"; ItemStack temp; @@ -634,4 +638,5 @@ public class ItemUtils { return getItemStackOfAmountFromOreDictNoBroken(oredictName, amount); } + } diff --git a/src/resources/assets/miscutils/lang/en_US.lang b/src/resources/assets/miscutils/lang/en_US.lang index c2d177de48..d81815e0d3 100644 --- a/src/resources/assets/miscutils/lang/en_US.lang +++ b/src/resources/assets/miscutils/lang/en_US.lang @@ -1,3 +1,4 @@ +//Creative Tabs itemGroup.MiscUtilBlockTab=[GT++] Blocks itemGroup.MiscUtilMiscTab=[GT++] Items itemGroup.MiscUtilCombatTab=[GT++] Combat @@ -5,77 +6,33 @@ itemGroup.MiscUtilToolsTab=[GT++] Tools itemGroup.MiscUtilMachineTab=[GT++] Machines itemGroup.MiscUtilOtherTab=[GT++] Items II -item.itemPLACEHOLDER_Circuit.name=Quark Manipulator (UV) - -item.itemPlateEnrichedSoularium.name=Enriched Soularium Plate - -item.itemHeliumBlob.name=Mysterious Hydrogen Substance +//Debug +item.AAA_Broken.name=[Non-existent Item] Report This Recipe On Github, Please. +item.itemBedLocator_Base.name=Bed Locator [NBT Test] +item.itemBaseItemWithCharge.name=Base Chargeable Item +item.miscutils_itemDebugShapeSpawner.name=[Debug] Shapes +//Alternative Materials item.itemPlateBatteryAlloy.name=Plate of Battery Alloy item.itemIngotBatteryAlloy.name=Ingot of Battery Alloy - item.itemStickyRubber.name=Gumlet of Sticky Rubber +//Unused Fuel rods item.itemFuelRod_Empty.name=Empty Fuel Rod item.itemFuelRod_Thorium.name=Thorium Fuel Rod item.itemFuelRod_Uranium.name=Uranium Fuel Rod item.itemFuelRod_Plutonium.name=Plutonium Fuel Rod - -item.itemBedLocator_Base.name=Bed Locator [NBT Test] -item.itemBaseItemWithCharge.name=Base Chargeable Item - -item.miscutils_itemDebugShapeSpawner.name=[Debug] Shapes - -tile.fluidJackDaniels.name=Jack Daniels -tile.blockGriefSaver.name=Anti-Griefer [WIP] -tile.helium_collector.name=Helium Collector -tile.blockNuclearFueledHeliumGenerator.name=Nuclear Fueled Helium Generator [NFHG] -tile.blockMachineCharger.name=Charging Machine -container.Charger=Charging Machine -container.NHG=Nuclear Fueled Helium Generator -container.helium_collector.name=Helium Collector -tile.blockStaballoy.name=Block of Staballoy -tile.blockBloodSteel.name=Block of Blood Steel - - +//Tile Entities tile.blockToolBuilder.name=GregTech Tool Constructor + +//Tools item.itemBufferCore.name=Buffer Core item.itemStaballoyPickaxe.name=Tunnel Digger item.itemStaballoyAxe.name=Tree Feller item.itemSandstoneHammer.name=Cobblestone Breaker - -item.bucket.fluid.grc.jackDanielsWhiskey0.name=Jack Daniels (0) -item.bucket.fluid.grc.jackDanielsWhiskey1.name=Jack Daniels (1) -item.bucket.fluid.grc.jackDanielsWhiskey2.name=Jack Daniels (2) -item.bucket.fluid.grc.jackDanielsWhiskey3.name=Jack Daniels (3) -item.bucket.fluid.grc.jackDanielsWhiskey4.name=Jack Daniels (4) -fluid.grc.jackDanielsWhiskey=Jack Daniels -fluid.grc.jackDanielsWhiskey0=Jack Daniels (0) -fluid.grc.jackDanielsWhiskey1=Jack Daniels (1) -fluid.grc.jackDanielsWhiskey2=Jack Daniels (2) -fluid.grc.jackDanielsWhiskey3=Jack Daniels (3) -fluid.grc.jackDanielsWhiskey4=Jack Daniels (4) -fluid.fluidJackDaniels=Jack Daniels -fluid.grc.jackDanielsWhiskey0.Modifier=Jack Daniels (0) -fluid.grc.jackDanielsWhiskey1.Modifier=Jack Daniels (1) -fluid.grc.jackDanielsWhiskey2.Modifier=Jack Daniels (2) -fluid.grc.jackDanielsWhiskey3.Modifier=Jack Daniels (3) -fluid.grc.jackDanielsWhiskey4.Modifier=Jack Daniels (4) -tile.fluidBlockJackDaniels.name=Jack Daniels -tile.fluid.grc.jackDanielsWhiskey0.name=Jack Daniels (0) -tile.fluid.grc.jackDanielsWhiskey1.name=Jack Daniels (1) -tile.fluid.grc.jackDanielsWhiskey2.name=Jack Daniels (2) -tile.fluid.grc.jackDanielsWhiskey3.name=Jack Daniels (3) -tile.fluid.grc.jackDanielsWhiskey4.name=Jack Daniels (4) -fluid.psc_JD.ferment.2=Fermenting Jack Daniels -fluid.psc_JD.dmature=D Matured Jack Daniels -fluid.psc_JD.mature=Jack Daniels -fluid.psc_JD.distill=Jack Daniels Wash -fluid.psc_JD.name=Jack Daniels -fluid.psc_JD=Jack Daniels - +//Thermal Foundation Stuff item.MiscUtils.bucket.bucketPyrotheum.name=Blazing Pyrotheum Bucket item.MiscUtils.bucket.bucketCryotheum.name=Gelid Cryotheum Bucket item.MiscUtils.bucket.bucketEnder.name=Resonant Ender Bucket @@ -85,11 +42,9 @@ item.MiscUtils.material.rodBlizz.name=Blizz Rod item.MiscUtils.material.dustBlizz.name=Blizz Powder tile.MiscUtils.fluid.pyrotheum.name=Blazing Pyrotheum tile.MiscUtils.fluid.cryotheum.name=Gelid Cryotheum - -tile.miscutils.fluid.cryotheum.name=Gelid Cryotheum -tile.miscutils.fluid.pyrotheum.name=Blazing Pyrotheum tile.miscutils.fluid.ender.name=Resonant Ender +//Forestry Stuff item.frameAccelerated.name=Accelerated Frame item.frameVoid.name=Void Frame item.frameMutagenic.name=Mutagenic Frame @@ -100,22 +55,33 @@ item.frameSoul.name=Soul Frame item.frameHealing.name=Healing Frame item.frameNova.name=Nova Frame +//IC2 stuff item.itemEnergeticRotorBlade.name=Energetic Alloy Rotor Blade item.itemTungstenSteelRotorBlade.name=TungstenSteel Rotor Blade item.itemVibrantRotorBlade.name=Vibrant Alloy Rotor Blade item.itemIridiumRotorBlade.name=Iridium Rotor Blade - item.itemEnergeticShaft.name=Energetic Alloy Shaft item.itemTungstenSteelShaft.name=TungstenSteel Shaft item.itemVibrantShaft.name=Vibrant Alloy Shaft item.itemIridiumShaft.name=Iridium Shaft - item.itemMagnaliumRotorBlade.name=Magnalium Rotor Blade item.itemUltimetRotorBlade.name=Ultimet Blade item.itemMagnaliumShaft.name=Magnalium Shaft item.itemUltimetShaft.name=Ultimet Shaft -item.itemHotIngotRaisinBread.name= Hot Loaf of Raisin Bread -item.AAA_Broken.name=[Non-existent Item] Report This Recipe On Github, Please. + +//Misc Items +item.itemPLACEHOLDER_Circuit.name=Quark Manipulator (UV) +item.itemPlateEnrichedSoularium.name=Enriched Soularium Plate +item.itemHeliumBlob.name=Mysterious Hydrogen Substance item.itemAlkalusDisk.name=Alkalus Disk -item.itemIngotRaisinBread.name=§5ImQ009's §fRaisin Bread \ No newline at end of file +item.itemHotIngotRaisinBread.name= Hot Loaf of Raisin Bread +item.itemIngotRaisinBread.name=§5ImQ009's §fRaisin Bread + +//Misc Blocks +tile.blockCompressedObsidian.0.name=Compressed Obsidian (9) +tile.blockCompressedObsidian.1.name=Compressed Obsidian (81) +tile.blockCompressedObsidian.2.name=Compressed Obsidian (729) +tile.blockCompressedObsidian.3.name=Compressed Obsidian (6561) +tile.blockCompressedObsidian.4.name=Compressed Obsidian (59049) +tile.blockCompressedObsidian.5.name=Inverted Obsidian \ No newline at end of file diff --git a/src/resources/assets/miscutils/textures/blocks/SwirlGray.png b/src/resources/assets/miscutils/textures/blocks/SwirlGray.png new file mode 100644 index 0000000000..337d5fd1bc Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/SwirlGray.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/compressed/obsidian1.png b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian1.png new file mode 100644 index 0000000000..0970b27745 Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian1.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/compressed/obsidian2.png b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian2.png new file mode 100644 index 0000000000..6cf79c75c4 Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian2.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/compressed/obsidian3.png b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian3.png new file mode 100644 index 0000000000..1241b24fad Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian3.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/compressed/obsidian4.png b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian4.png new file mode 100644 index 0000000000..3d07d55d0c Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian4.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/compressed/obsidian5.png b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian5.png new file mode 100644 index 0000000000..5f83804605 Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian5.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/compressed/obsidian_invert.png b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian_invert.png new file mode 100644 index 0000000000..8c55fdddd3 Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/compressed/obsidian_invert.png differ -- cgit