aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/block
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-09-25 21:11:05 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-09-25 21:11:05 +1000
commitd43694eb98a0968190c3dbaa4ab5121c39feaf1f (patch)
tree441d4ed0300d675382539b8a650abe8e7bdf67f9 /src/Java/gtPlusPlus/core/block
parent6a95a11b16cfa38e7789418d93e70b1dc12b19c7 (diff)
downloadGT5-Unofficial-d43694eb98a0968190c3dbaa4ab5121c39feaf1f.tar.gz
GT5-Unofficial-d43694eb98a0968190c3dbaa4ab5121c39feaf1f.tar.bz2
GT5-Unofficial-d43694eb98a0968190c3dbaa4ab5121c39feaf1f.zip
+ Added the Work Bench, from Gregtech 4.
% Renamed a method that converted arrays to fixed sized lists. % Added a Util function to determine server or client easier.
Diffstat (limited to 'src/Java/gtPlusPlus/core/block')
-rw-r--r--src/Java/gtPlusPlus/core/block/ModBlocks.java26
-rw-r--r--src/Java/gtPlusPlus/core/block/machine/Machine_Workbench.java77
2 files changed, 82 insertions, 21 deletions
diff --git a/src/Java/gtPlusPlus/core/block/ModBlocks.java b/src/Java/gtPlusPlus/core/block/ModBlocks.java
index de4520fee9..e8334af98b 100644
--- a/src/Java/gtPlusPlus/core/block/ModBlocks.java
+++ b/src/Java/gtPlusPlus/core/block/ModBlocks.java
@@ -1,6 +1,7 @@
package gtPlusPlus.core.block;
import gtPlusPlus.core.block.general.LightGlass;
+import gtPlusPlus.core.block.machine.Machine_Workbench;
import gtPlusPlus.core.fluids.FluidRegistryHandler;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.util.Utils;
@@ -12,6 +13,7 @@ import cpw.mods.fml.common.registry.GameRegistry;
public final class ModBlocks {
+ public static Block blockWorkbench;
//Blocks
//public static Block blockBloodSteel;
//public static Block blockStaballoy;
@@ -39,15 +41,6 @@ public final class ModBlocks {
public static void registerBlocks(){
Utils.LOG_INFO("Registering Blocks.");
-
- //Blood Steel Block
- //GameRegistry.registerBlock(blockBloodSteel = new BasicBlock("blockBloodSteel", Material.iron), "blockBloodSteel");
-
- //Staballoy Block
- //GameRegistry.registerBlock(blockStaballoy = new BasicBlock("blockStaballoy", Material.iron), "blockStaballoy");
-
- //GameRegistry.registerBlock(MatterFabricatorEffectBlock = new MatterFabricatorEffectBlock(), "blockMF_Effect");
-
GameRegistry.registerBlock(MatterFabricatorEffectBlock = new LightGlass(Material.glass, false).setHardness(0.1F).setBlockTextureName(CORE.MODID + ":" + "blockMFEffect").setStepSound(Block.soundTypeGlass), "blockMFEffect");
@@ -57,19 +50,10 @@ public final class ModBlocks {
//Fluids
FluidRegistryHandler.registerFluids();
- // blockHeliumGenerator = GameRegistry.registerBlock(new HeliumGenerator(), "Helium_Collector");
- // blockNHG = GameRegistry.registerBlock(new Machine_NHG("blockNuclearFueledHeliumGenerator"), "blockNuclearFueledHeliumGenerator");
- // blockCharger = GameRegistry.registerBlock(new Machine_Charger("blockMachineCharger"), "blockMachineCharger");
-
-
- //WIP TODO
- //GameRegistry.registerBlock(blockGriefSaver, "blockGriefSaver");
+ //Workbench
+ blockWorkbench = new Machine_Workbench().setHardness(1.5F);
- //GtFrames
- //GameRegistry.registerBlock(blockGtFrameSet1 = new BlockGtFrameBox("blockGtFrameSet1", Material.iron ,BlockTypes.FRAME, true, Utils.rgbtoHexValue(68, 75, 66), Utils.rgbtoHexValue(68, 75, 166), Utils.rgbtoHexValue(122, 135, 196)), "blockGtFrameSet1");
- //GameRegistry.registerBlock(blockGtFrameTantalloy60 = new BlockBaseModular("blockGtFrameStaballoy", "Staballoy", BlockTypes.FRAME, Utils.rgbtoHexValue(68, 75, 66)), ItemBlockGtFrameBox.class, "blockGtFrameStaballoy");
- //GameRegistry.registerBlock(blockGtFrameTantalloy60 = new BlockBaseModular("blockGtFrameTantalloy60", "Tantalloy-60", BlockTypes.FRAME, Utils.rgbtoHexValue(68, 75, 166)), ItemBlockGtFrameBox.class, "blockGtFrameTantalloy60");
- //GameRegistry.registerBlock(blockGtFrameTantalloy61 = new BlockBaseModular("blockGtFrameTantalloy61", "Tantalloy-61", BlockTypes.FRAME, Utils.rgbtoHexValue(122, 135, 196)), ItemBlockGtFrameBox.class, "blockGtFrameTantalloy61");
+
}
} \ No newline at end of file
diff --git a/src/Java/gtPlusPlus/core/block/machine/Machine_Workbench.java b/src/Java/gtPlusPlus/core/block/machine/Machine_Workbench.java
new file mode 100644
index 0000000000..92ba4a11cc
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/block/machine/Machine_Workbench.java
@@ -0,0 +1,77 @@
+package gtPlusPlus.core.block.machine;
+
+import gtPlusPlus.GTplusplus;
+import gtPlusPlus.core.creative.AddToCreativeTab;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.tileentities.machines.TileEntityWorkbench;
+import net.minecraft.block.BlockContainer;
+import net.minecraft.block.material.Material;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.init.Blocks;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.IIcon;
+import net.minecraft.world.World;
+import cpw.mods.fml.common.registry.GameRegistry;
+import cpw.mods.fml.common.registry.LanguageRegistry;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+
+public class Machine_Workbench extends BlockContainer
+{
+ @SideOnly(Side.CLIENT)
+ private IIcon textureTop;
+ @SideOnly(Side.CLIENT)
+ private IIcon textureFront;
+
+ public Machine_Workbench()
+ {
+ super(Material.iron);
+ this.setBlockName("blockWorkbenchGT");
+ this.setCreativeTab(AddToCreativeTab.tabMachines);
+ GameRegistry.registerBlock(this, "blockWorkbenchGT");
+ LanguageRegistry.addName(this, "Gregtech Workbench");
+
+ }
+
+ /**
+ * Gets the block's texture. Args: side, meta
+ */
+ @Override
+ @SideOnly(Side.CLIENT)
+ public IIcon getIcon(int p_149691_1_, int p_149691_2_)
+ {
+ return p_149691_1_ == 1 ? this.textureTop : (p_149691_1_ == 0 ? Blocks.planks.getBlockTextureFromSide(p_149691_1_) : (p_149691_1_ != 2 && p_149691_1_ != 4 ? this.blockIcon : this.textureFront));
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void registerBlockIcons(IIconRegister p_149651_1_)
+ {
+ this.blockIcon = p_149651_1_.registerIcon(CORE.MODID + ":" + "workbench");
+ this.textureTop = p_149651_1_.registerIcon(CORE.MODID + ":" + "workbench" + "_top");
+ this.textureFront = p_149651_1_.registerIcon(CORE.MODID + ":" + "workbench");
+ }
+
+ /**
+ * Called upon block activation (right click on the block.)
+ */
+ @Override
+ public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float lx, float ly, float lz)
+ {
+ if (world.isRemote) return true;
+
+ TileEntity te = world.getTileEntity(x, y, z);
+ if (te != null && te instanceof TileEntityWorkbench)
+ {
+ player.openGui(GTplusplus.instance, 3, world, x, y, z);
+ return true;
+ }
+ return false;
+ }
+
+ @Override
+ public TileEntity createNewTileEntity(World world, int p_149915_2_) {
+ return new TileEntityWorkbench();
+ }
+} \ No newline at end of file