aboutsummaryrefslogtreecommitdiff
path: root/src/Java/miscutil/core/block
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-06-19 14:53:32 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-06-19 14:53:32 +1000
commitd4f11459f2e78e954a4c060c92861614c114d1cb (patch)
treea9d22e4f658e25163ae0fdbe4a1e3395da9efac9 /src/Java/miscutil/core/block
parent2615992e7d0d4ed3ac205800be71c831029b2dc5 (diff)
downloadGT5-Unofficial-d4f11459f2e78e954a4c060c92861614c114d1cb.tar.gz
GT5-Unofficial-d4f11459f2e78e954a4c060c92861614c114d1cb.tar.bz2
GT5-Unofficial-d4f11459f2e78e954a4c060c92861614c114d1cb.zip
+More classes stolen from GT to implement my own items on a metaitem.
+Added LuV -> Max Voltage Machine components. +Added Rocket Engines, High tier diesel generators. +Added new textures for everything. +Added BedLocator_Base.java - Debug item for testing and NBT data storage. +Added Machine_Charger.java - Another Debug machine for testing NBT value manipulation.
Diffstat (limited to 'src/Java/miscutil/core/block')
-rw-r--r--src/Java/miscutil/core/block/ModBlocks.java46
-rw-r--r--src/Java/miscutil/core/block/general/antigrief/TowerDevice.java (renamed from src/Java/miscutil/core/block/antigrief/TowerDevice.java)4
-rw-r--r--src/Java/miscutil/core/block/general/fluids/BlockFluidJackDaniels.java (renamed from src/Java/miscutil/core/block/fluids/BlocktestFluid.java)11
-rw-r--r--src/Java/miscutil/core/block/general/fluids/FluidRegistryHandler.java49
-rw-r--r--src/Java/miscutil/core/block/machine/Machine_Charger.java82
-rw-r--r--src/Java/miscutil/core/block/machine/Machine_NHG.java2
-rw-r--r--src/Java/miscutil/core/block/machine/heliumgen/block/HeliumGenerator.java (renamed from src/Java/miscutil/core/block/heliumgen/block/HeliumGenerator.java)4
-rw-r--r--src/Java/miscutil/core/block/machine/heliumgen/container/ContainerHeliumGenerator.java (renamed from src/Java/miscutil/core/block/heliumgen/container/ContainerHeliumGenerator.java)4
-rw-r--r--src/Java/miscutil/core/block/machine/heliumgen/gui/GUIHeliumGenerator.java (renamed from src/Java/miscutil/core/block/heliumgen/gui/GUIHeliumGenerator.java)6
-rw-r--r--src/Java/miscutil/core/block/machine/heliumgen/slots/InvSlotRadiation.java (renamed from src/Java/miscutil/core/block/heliumgen/slots/InvSlotRadiation.java)4
-rw-r--r--src/Java/miscutil/core/block/machine/heliumgen/tileentity/TileEntityHeliumGenerator.java (renamed from src/Java/miscutil/core/block/heliumgen/tileentity/TileEntityHeliumGenerator.java)4
11 files changed, 159 insertions, 57 deletions
diff --git a/src/Java/miscutil/core/block/ModBlocks.java b/src/Java/miscutil/core/block/ModBlocks.java
index 9893430b69..7ab4a4c5c0 100644
--- a/src/Java/miscutil/core/block/ModBlocks.java
+++ b/src/Java/miscutil/core/block/ModBlocks.java
@@ -1,16 +1,12 @@
package miscutil.core.block;
import miscutil.core.block.base.BasicBlock;
-import miscutil.core.block.fluids.BlocktestFluid;
-import miscutil.core.block.heliumgen.block.HeliumGenerator;
-import miscutil.core.block.machine.Machine_NHG;
-import miscutil.core.lib.CORE;
+import miscutil.core.block.general.fluids.FluidRegistryHandler;
import miscutil.core.util.Utils;
import miscutil.gregtech.common.blocks.GregtechMetaCasingBlocks;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
public final class ModBlocks {
@@ -23,28 +19,10 @@ public final class ModBlocks {
public static Block blockCasingsMisc;
public static Block blockHeliumGenerator;
public static Block blockNHG;
+ public static Block blockCharger;
-
-
-
- //Fluids
- /**
- *
- * Luminosity .setLuminosity(luminosity)
- How much light does the fluid emit. Default: 0, Lava uses 15
- Density .setDensity(density)
- How dense is the fluid, the only effect is whether or not a fluid replaces another fluid when they flow into each other. Default: 1000, the density of water at 4 degrees Celsius in kg/m³
- Temperature .setTemperature(temp)
- How hot, or cold is the fluid. Has currently no effect. Default: 295, the "normal" room temperature in degrees Kelvin, this is approximately 72°F or 22°C.
- Viscosity .setViscosity(viscosity)
- How thick the fluid is. Determines how fast it flows. Default: 1000 for water, lava uses 6000
- Is Gaseous .setGaseous(boolean)
- Indicates if the fluid is gaseous. Used for rendering. Default: false
- *
- */
-
- public static Fluid testFluid = new Fluid("testFluid");
- public static Block testFluidBlock;
+ public static Fluid fluidJackDaniels = new Fluid("fluidJackDaniels");
+ public static Block blockFluidJackDaniels;
@@ -69,19 +47,11 @@ public final class ModBlocks {
blockCasingsMisc = new GregtechMetaCasingBlocks();
//Fluids
- //testFluid
- testFluid.setLuminosity(12);
- testFluid.setDensity(1200);
- testFluid.setTemperature(420);
- testFluid.setViscosity(750);
- testFluid.setGaseous(true);
- FluidRegistry.registerFluid(testFluid);
- testFluidBlock = new BlocktestFluid(testFluid, Material.water).setBlockName("yourFluid");
- GameRegistry.registerBlock(testFluidBlock, CORE.MODID + "_" + testFluidBlock.getUnlocalizedName().substring(5));
- testFluid.setUnlocalizedName(testFluidBlock.getUnlocalizedName());
+ FluidRegistryHandler.registerFluids();
- blockHeliumGenerator = GameRegistry.registerBlock(new HeliumGenerator(), "Helium_Collector");
- blockNHG = GameRegistry.registerBlock(new Machine_NHG("blockNuclearFueledHeliumGenerator"), "blockNuclearFueledHeliumGenerator");
+ // 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
diff --git a/src/Java/miscutil/core/block/antigrief/TowerDevice.java b/src/Java/miscutil/core/block/general/antigrief/TowerDevice.java
index c3b0ab69a8..9ff0d36b33 100644
--- a/src/Java/miscutil/core/block/antigrief/TowerDevice.java
+++ b/src/Java/miscutil/core/block/general/antigrief/TowerDevice.java
@@ -1,4 +1,4 @@
-package miscutil.core.block.antigrief;
+package miscutil.core.block.general.antigrief;
import static miscutil.core.block.ModBlocks.blockGriefSaver;
@@ -7,7 +7,7 @@ import java.util.Random;
import miscutil.core.creative.AddToCreativeTab;
import miscutil.core.lib.CORE;
-import miscutil.core.tileentities.TileEntityReverter;
+import miscutil.core.tileentities.general.TileEntityReverter;
import miscutil.core.util.Utils;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
diff --git a/src/Java/miscutil/core/block/fluids/BlocktestFluid.java b/src/Java/miscutil/core/block/general/fluids/BlockFluidJackDaniels.java
index 8676f21d81..1ddfcbe081 100644
--- a/src/Java/miscutil/core/block/fluids/BlocktestFluid.java
+++ b/src/Java/miscutil/core/block/general/fluids/BlockFluidJackDaniels.java
@@ -1,6 +1,7 @@
-package miscutil.core.block.fluids;
+package miscutil.core.block.general.fluids;
import miscutil.core.creative.AddToCreativeTab;
+import miscutil.core.lib.CORE;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.util.IIcon;
@@ -11,14 +12,14 @@ import net.minecraftforge.fluids.Fluid;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
-public class BlocktestFluid extends BlockFluidClassic {
+public class BlockFluidJackDaniels extends BlockFluidClassic {
@SideOnly(Side.CLIENT)
protected IIcon stillIcon;
@SideOnly(Side.CLIENT)
protected IIcon flowingIcon;
- public BlocktestFluid(Fluid fluid, Material material) {
+ public BlockFluidJackDaniels(Fluid fluid, Material material) {
super(fluid, material);
setCreativeTab(AddToCreativeTab.tabMisc);
}
@@ -31,8 +32,8 @@ public class BlocktestFluid extends BlockFluidClassic {
@SideOnly(Side.CLIENT)
@Override
public void registerBlockIcons(IIconRegister register) {
- stillIcon = register.registerIcon("modid:fluidStill");
- flowingIcon = register.registerIcon("modid:fluidFlowing");
+ stillIcon = register.registerIcon(CORE.MODID+":fluids/fluid.jackdaniels");
+ flowingIcon = register.registerIcon(CORE.MODID+":fluids/fluid.jackdaniels");
}
@Override
diff --git a/src/Java/miscutil/core/block/general/fluids/FluidRegistryHandler.java b/src/Java/miscutil/core/block/general/fluids/FluidRegistryHandler.java
new file mode 100644
index 0000000000..bf03203247
--- /dev/null
+++ b/src/Java/miscutil/core/block/general/fluids/FluidRegistryHandler.java
@@ -0,0 +1,49 @@
+package miscutil.core.block.general.fluids;
+
+import static miscutil.core.block.ModBlocks.blockFluidJackDaniels;
+import static miscutil.core.block.ModBlocks.fluidJackDaniels;
+import miscutil.core.lib.CORE;
+import net.minecraft.block.material.Material;
+import net.minecraftforge.fluids.FluidRegistry;
+import cpw.mods.fml.common.registry.GameRegistry;
+
+public class FluidRegistryHandler {
+
+ //Fluids
+ /**
+ *
+ * Luminosity .setLuminosity(luminosity)
+ How much light does the fluid emit. Default: 0, Lava uses 15
+ Density .setDensity(density)
+ How dense is the fluid, the only effect is whether or not a fluid replaces another fluid when they flow into each other. Default: 1000, the density of water at 4 degrees Celsius in kg/m³
+ Temperature .setTemperature(temp)
+ How hot, or cold is the fluid. Has currently no effect. Default: 295, the "normal" room temperature in degrees Kelvin, this is approximately 72°F or 22°C.
+ Viscosity .setViscosity(viscosity)
+ How thick the fluid is. Determines how fast it flows. Default: 1000 for water, lava uses 6000
+ Is Gaseous .setGaseous(boolean)
+ Indicates if the fluid is gaseous. Used for rendering. Default: false
+ *
+ */
+
+ public static void registerFluids(){
+ run();
+ }
+
+ private static void run(){
+ fluidJackDaniels();
+ }
+
+ private static void fluidJackDaniels(){
+ //testFluid
+ fluidJackDaniels.setLuminosity(12);
+ fluidJackDaniels.setDensity(1200);
+ fluidJackDaniels.setTemperature(420);
+ fluidJackDaniels.setViscosity(750);
+ fluidJackDaniels.setGaseous(true);
+ FluidRegistry.registerFluid(fluidJackDaniels);
+ blockFluidJackDaniels = new BlockFluidJackDaniels(fluidJackDaniels, Material.water).setBlockName("fluidJackDaniels");
+ GameRegistry.registerBlock(blockFluidJackDaniels, CORE.MODID + "_" + blockFluidJackDaniels.getUnlocalizedName().substring(5));
+ fluidJackDaniels.setUnlocalizedName(blockFluidJackDaniels.getUnlocalizedName());
+ }
+
+}
diff --git a/src/Java/miscutil/core/block/machine/Machine_Charger.java b/src/Java/miscutil/core/block/machine/Machine_Charger.java
new file mode 100644
index 0000000000..9efb539afb
--- /dev/null
+++ b/src/Java/miscutil/core/block/machine/Machine_Charger.java
@@ -0,0 +1,82 @@
+package miscutil.core.block.machine;
+
+import java.util.ArrayList;
+
+import miscutil.MiscUtils;
+import miscutil.core.creative.AddToCreativeTab;
+import miscutil.core.lib.CORE;
+import miscutil.core.tileentities.machines.TileEntityCharger;
+import net.minecraft.block.Block;
+import net.minecraft.block.BlockContainer;
+import net.minecraft.block.material.Material;
+import net.minecraft.entity.item.EntityItem;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.world.World;
+import scala.util.Random;
+
+public class Machine_Charger extends BlockContainer
+{
+ private static final String name = "Charging Machine";
+
+ private final Random rand = new Random();
+
+ public Machine_Charger(String unlocalizedName)
+ {
+ super(Material.iron);
+ //GameRegistry.registerBlock(this, unlocalizedName);
+ this.setBlockName(unlocalizedName);
+ this.setBlockTextureName(CORE.MODID + ":" + unlocalizedName);
+ this.setCreativeTab(AddToCreativeTab.tabMachines);
+ }
+
+ @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 TileEntityCharger)
+ {
+ player.openGui(MiscUtils.instance, 1, world, x, y, z);
+ return true;
+ }
+ return false;
+ }
+
+ @Override
+ public void breakBlock(World world, int x, int y, int z, Block block, int par6)
+ {
+ if (world.isRemote) return;
+
+ ArrayList drops = new ArrayList();
+
+ TileEntity teRaw = world.getTileEntity(x, y, z);
+
+ if (teRaw != null && teRaw instanceof TileEntityCharger)
+ {
+ TileEntityCharger te = (TileEntityCharger) teRaw;
+
+ for (int i = 0; i < te.getSizeInventory(); i++)
+ {
+ ItemStack stack = te.getStackInSlot(i);
+
+ if (stack != null) drops.add(stack.copy());
+ }
+ }
+
+ for (int i = 0;i < drops.size();i++)
+ {
+ EntityItem item = new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, (ItemStack) drops.get(i));
+ item.setVelocity((rand.nextDouble() - 0.5) * 0.25, rand.nextDouble() * 0.5 * 0.25, (rand.nextDouble() - 0.5) * 0.25);
+ world.spawnEntityInWorld(item);
+ }
+ }
+
+ @Override
+ public TileEntity createNewTileEntity(World world, int par2)
+ {
+ return new TileEntityCharger();
+ }
+} \ No newline at end of file
diff --git a/src/Java/miscutil/core/block/machine/Machine_NHG.java b/src/Java/miscutil/core/block/machine/Machine_NHG.java
index 1738469fd7..fe06577307 100644
--- a/src/Java/miscutil/core/block/machine/Machine_NHG.java
+++ b/src/Java/miscutil/core/block/machine/Machine_NHG.java
@@ -5,7 +5,7 @@ import java.util.ArrayList;
import miscutil.MiscUtils;
import miscutil.core.creative.AddToCreativeTab;
import miscutil.core.lib.CORE;
-import miscutil.core.tileentities.TileEntityNHG;
+import miscutil.core.tileentities.machines.TileEntityNHG;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
diff --git a/src/Java/miscutil/core/block/heliumgen/block/HeliumGenerator.java b/src/Java/miscutil/core/block/machine/heliumgen/block/HeliumGenerator.java
index f424097240..83897db5e0 100644
--- a/src/Java/miscutil/core/block/heliumgen/block/HeliumGenerator.java
+++ b/src/Java/miscutil/core/block/machine/heliumgen/block/HeliumGenerator.java
@@ -1,9 +1,9 @@
-package miscutil.core.block.heliumgen.block;
+package miscutil.core.block.machine.heliumgen.block;
import java.util.Random;
import miscutil.MiscUtils;
-import miscutil.core.block.heliumgen.tileentity.TileEntityHeliumGenerator;
+import miscutil.core.block.machine.heliumgen.tileentity.TileEntityHeliumGenerator;
import miscutil.core.creative.AddToCreativeTab;
import miscutil.core.lib.CORE;
import net.minecraft.block.Block;
diff --git a/src/Java/miscutil/core/block/heliumgen/container/ContainerHeliumGenerator.java b/src/Java/miscutil/core/block/machine/heliumgen/container/ContainerHeliumGenerator.java
index 7de3efd4c6..17389a5abe 100644
--- a/src/Java/miscutil/core/block/heliumgen/container/ContainerHeliumGenerator.java
+++ b/src/Java/miscutil/core/block/machine/heliumgen/container/ContainerHeliumGenerator.java
@@ -1,11 +1,11 @@
-package miscutil.core.block.heliumgen.container;
+package miscutil.core.block.machine.heliumgen.container;
import ic2.core.ContainerBase;
import ic2.core.slot.SlotInvSlot;
import java.util.List;
-import miscutil.core.block.heliumgen.tileentity.TileEntityHeliumGenerator;
+import miscutil.core.block.machine.heliumgen.tileentity.TileEntityHeliumGenerator;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Slot;
import net.minecraft.inventory.SlotFurnace;
diff --git a/src/Java/miscutil/core/block/heliumgen/gui/GUIHeliumGenerator.java b/src/Java/miscutil/core/block/machine/heliumgen/gui/GUIHeliumGenerator.java
index 309a7b5fba..708ba9c924 100644
--- a/src/Java/miscutil/core/block/heliumgen/gui/GUIHeliumGenerator.java
+++ b/src/Java/miscutil/core/block/machine/heliumgen/gui/GUIHeliumGenerator.java
@@ -1,7 +1,7 @@
-package miscutil.core.block.heliumgen.gui;
+package miscutil.core.block.machine.heliumgen.gui;
-import miscutil.core.block.heliumgen.container.ContainerHeliumGenerator;
-import miscutil.core.block.heliumgen.tileentity.TileEntityHeliumGenerator;
+import miscutil.core.block.machine.heliumgen.container.ContainerHeliumGenerator;
+import miscutil.core.block.machine.heliumgen.tileentity.TileEntityHeliumGenerator;
import miscutil.core.lib.CORE;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.InventoryPlayer;
diff --git a/src/Java/miscutil/core/block/heliumgen/slots/InvSlotRadiation.java b/src/Java/miscutil/core/block/machine/heliumgen/slots/InvSlotRadiation.java
index 22491e6cf2..d8a9c38897 100644
--- a/src/Java/miscutil/core/block/heliumgen/slots/InvSlotRadiation.java
+++ b/src/Java/miscutil/core/block/machine/heliumgen/slots/InvSlotRadiation.java
@@ -1,7 +1,7 @@
-package miscutil.core.block.heliumgen.slots;
+package miscutil.core.block.machine.heliumgen.slots;
import ic2.core.block.invslot.InvSlot;
-import miscutil.core.block.heliumgen.tileentity.TileEntityHeliumGenerator;
+import miscutil.core.block.machine.heliumgen.tileentity.TileEntityHeliumGenerator;
import net.minecraft.item.ItemStack;
public class InvSlotRadiation extends InvSlot
diff --git a/src/Java/miscutil/core/block/heliumgen/tileentity/TileEntityHeliumGenerator.java b/src/Java/miscutil/core/block/machine/heliumgen/tileentity/TileEntityHeliumGenerator.java
index 8793e06d4b..66420a72a5 100644
--- a/src/Java/miscutil/core/block/heliumgen/tileentity/TileEntityHeliumGenerator.java
+++ b/src/Java/miscutil/core/block/machine/heliumgen/tileentity/TileEntityHeliumGenerator.java
@@ -1,4 +1,4 @@
-package miscutil.core.block.heliumgen.tileentity;
+package miscutil.core.block.machine.heliumgen.tileentity;
import ic2.api.Direction;
import ic2.api.reactor.IReactor;
@@ -16,7 +16,7 @@ import ic2.core.util.ConfigUtil;
import java.util.List;
import miscutil.core.block.ModBlocks;
-import miscutil.core.block.heliumgen.slots.InvSlotRadiation;
+import miscutil.core.block.machine.heliumgen.slots.InvSlotRadiation;
import miscutil.core.item.ModItems;
import miscutil.core.util.Utils;
import miscutil.core.util.item.UtilsItems;