aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/block/machine
diff options
context:
space:
mode:
authorAlkalus <Draknyte1@hotmail.com>2020-05-25 02:55:32 +0100
committerAlkalus <Draknyte1@hotmail.com>2020-05-25 02:55:32 +0100
commit6fb4b8a333e69bd591d49d9c5f251797de333c7b (patch)
treec54bb1070920660d96c71dd48d68ef7095b1aafe /src/Java/gtPlusPlus/core/block/machine
parent2b7ae2001ed8f49d2de8f88ef306426af60c279b (diff)
downloadGT5-Unofficial-6fb4b8a333e69bd591d49d9c5f251797de333c7b.tar.gz
GT5-Unofficial-6fb4b8a333e69bd591d49d9c5f251797de333c7b.tar.bz2
GT5-Unofficial-6fb4b8a333e69bd591d49d9c5f251797de333c7b.zip
+ Added the Volumetric Flask Configurator.
+ Added a recipe for the Egg Box. + Added a Book for the Chemical Plant. % Changed the Tooltip for the Egg Box. $ Fixed Robinators not returning the correct block when mined. $ Fixed Electric tool recipes not consuming the original tool. $ Redid handling of all shaped crafting recipes. $ Fixed recipe handling for the last few multiblocks. $ Potentially forgot some other minor fixes.
Diffstat (limited to 'src/Java/gtPlusPlus/core/block/machine')
-rw-r--r--src/Java/gtPlusPlus/core/block/machine/EggBox.java2
-rw-r--r--src/Java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java169
2 files changed, 170 insertions, 1 deletions
diff --git a/src/Java/gtPlusPlus/core/block/machine/EggBox.java b/src/Java/gtPlusPlus/core/block/machine/EggBox.java
index f36dc83704..630c4b5bc2 100644
--- a/src/Java/gtPlusPlus/core/block/machine/EggBox.java
+++ b/src/Java/gtPlusPlus/core/block/machine/EggBox.java
@@ -37,7 +37,7 @@ public class EggBox extends BlockContainer implements ITileTooltip
/**
* Determines which tooltip is displayed within the itemblock.
*/
- private final int mTooltipID = 5;
+ private final int mTooltipID = 7;
public final int field_149956_a = 0;
@Override
diff --git a/src/Java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java b/src/Java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java
new file mode 100644
index 0000000000..4f86de49d3
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java
@@ -0,0 +1,169 @@
+package gtPlusPlus.core.block.machine;
+
+import cpw.mods.fml.common.registry.LanguageRegistry;
+import gregtech.common.items.GT_MetaGenerated_Tool_01;
+import gtPlusPlus.GTplusplus;
+import gtPlusPlus.api.objects.minecraft.CubicObject;
+import gtPlusPlus.core.block.base.BasicTileBlockWithTooltip;
+import gtPlusPlus.core.creative.AddToCreativeTab;
+import gtPlusPlus.core.handler.GuiHandler;
+import gtPlusPlus.core.item.base.itemblock.ItemBlockBasicTile;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.network.packet.Packet_VolumetricFlaskGui2;
+import gtPlusPlus.core.tileentities.general.TileEntityVolumetricFlaskSetter;
+import gtPlusPlus.core.util.minecraft.PlayerUtils;
+import net.minecraft.block.material.Material;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.EnumCreatureType;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemBlock;
+import net.minecraft.item.ItemStack;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.world.IBlockAccess;
+import net.minecraft.world.World;
+
+public class VolumetricFlaskSetter extends BasicTileBlockWithTooltip {
+
+ /**
+ * Determines which tooltip is displayed within the itemblock.
+ */
+ private final int mTooltipID = 8;
+
+ @Override
+ public int getTooltipID() {
+ return this.mTooltipID;
+ }
+
+ @Override
+ public Class<? extends ItemBlock> getItemBlockClass() {
+ return ItemBlockBasicTile.class;
+ }
+
+ @SuppressWarnings("deprecation")
+ public VolumetricFlaskSetter(){
+ super(Material.iron);
+ LanguageRegistry.addName(this, "Volumetric Flask Configurator");
+ }
+
+ /**
+ * Called upon block activation (right click on the block.)
+ */
+ @Override
+ public boolean onBlockActivated(final World world, final int x, final int y, final int z, final EntityPlayer player, final int side, final float lx, final float ly, final float lz)
+ {
+ if (world.isRemote) {
+ return true;
+ }
+ else {
+
+ boolean mDidScrewDriver = false;
+ // 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)))) {
+ final TileEntityVolumetricFlaskSetter tile = (TileEntityVolumetricFlaskSetter) world.getTileEntity(x, y, z);
+ if (tile != null) {
+ mDidScrewDriver = tile.onScrewdriverRightClick((byte) side, player, x, y, z);
+ }
+ }
+ }
+ catch (final Throwable t) {}
+
+ if (!mDidScrewDriver) {
+ final TileEntity te = world.getTileEntity(x, y, z);
+ if ((te != null) && (te instanceof TileEntityVolumetricFlaskSetter)){
+ player.openGui(GTplusplus.instance, GuiHandler.GUI18, world, x, y, z);
+ TileEntityVolumetricFlaskSetter aTile = (TileEntityVolumetricFlaskSetter) te;
+ new Packet_VolumetricFlaskGui2(aTile, aTile.getCustomValue());
+ return true;
+ }
+ }
+ else {
+ return true;
+ }
+
+ }
+ return false;
+ }
+
+ @Override
+ public int getRenderBlockPass() {
+ return 1;
+ }
+
+ @Override
+ public boolean isOpaqueCube() {
+ return false;
+ }
+
+ @Override
+ public TileEntity createNewTileEntity(final World world, final int p_149915_2_) {
+ return new TileEntityVolumetricFlaskSetter();
+ }
+
+ @Override
+ public void onBlockAdded(final World world, final int x, final int y, final int z) {
+ super.onBlockAdded(world, x, y, z);
+ }
+
+ @Override
+ public void onBlockPlacedBy(final World world, final int x, final int y, final int z, final EntityLivingBase entity, final ItemStack stack) {
+ if (stack.hasDisplayName()) {
+ ((TileEntityVolumetricFlaskSetter) world.getTileEntity(x,y,z)).setCustomName(stack.getDisplayName());
+ }
+ }
+
+ @Override
+ public boolean canCreatureSpawn(final EnumCreatureType type, final IBlockAccess world, final int x, final int y, final int z) {
+ return false;
+ }
+
+ @Override
+ public int getMetaCount() {
+ return 0;
+ }
+
+ @Override
+ public String getUnlocalBlockName() {
+ return "blockVolumetricFlaskSetter";
+ }
+
+ @Override
+ protected float initBlockHardness() {
+ return 5f;
+ }
+
+ @Override
+ protected float initBlockResistance() {
+ return 1f;
+ }
+
+ @Override
+ protected CreativeTabs initCreativeTab() {
+ return AddToCreativeTab.tabMachines;
+ }
+
+ @Override
+ protected String getTileEntityName() {
+ return "Volumetric Flask Configurator";
+ }
+
+ @Override
+ public CubicObject<String>[] getCustomTextureDirectoryObject() {
+ String[] aTexData = new String[] {
+ CORE.MODID + ":" + "metro/" + "TEXTURE_METAL_PANEL_A",
+ CORE.MODID + ":" + "metro/" + "TEXTURE_TECH_PANEL_C",
+ CORE.MODID + ":" + "metro/" + "TEXTURE_METAL_PANEL_H",
+ CORE.MODID + ":" + "metro/" + "TEXTURE_METAL_PANEL_H",
+ CORE.MODID + ":" + "metro/" + "TEXTURE_METAL_PANEL_H",
+ CORE.MODID + ":" + "metro/" + "TEXTURE_METAL_PANEL_H"
+ };
+ CubicObject<String>[] aTextureData = new CubicObject[] {new CubicObject<String>(aTexData)};
+ return aTextureData;
+ }
+
+} \ No newline at end of file