From cd13932bdeb2a4170d1e25517fdb5e2186461c45 Mon Sep 17 00:00:00 2001 From: gigabit101 Date: Sat, 20 Feb 2016 02:21:44 +0000 Subject: [PATCH] Basic generator just needs logic --- .../generator/BlockDieselGenerator.java | 2 +- .../generator/BlockDragonEggSiphoner.java | 2 +- .../blocks/generator/BlockGasTurbine.java | 2 +- .../blocks/generator/BlockGenerator.java | 53 ++++- .../blocks/generator/BlockHeatGenerator.java | 2 +- .../generator/BlockSemiFluidGenerator.java | 2 +- .../java/techreborn/client/GuiHandler.java | 9 + .../container/ContainerDieselGenerator.java | 2 +- .../client/container/ContainerGasTurbine.java | 2 +- .../client/container/ContainerGenerator.java | 51 +++++ .../ContainerSemifluidGenerator.java | 2 +- .../client/gui/GuiDieselGenerator.java | 2 +- .../techreborn/client/gui/GuiGasTurbine.java | 2 +- .../techreborn/client/gui/GuiGenerator.java | 53 +++++ .../client/gui/GuiSemifluidGenerator.java | 2 +- src/main/java/techreborn/init/ModBlocks.java | 11 + .../{ => generator}/TileDieselGenerator.java | 2 +- .../TileDragonEggSiphoner.java | 2 +- .../tiles/{ => generator}/TileGasTurbine.java | 2 +- .../tiles/generator/TileGenerator.java | 214 ++++++++++++++++++ .../{ => generator}/TileHeatGenerator.java | 2 +- .../TileSemifluidGenerator.java | 2 +- .../techreborn/textures/gui/generator.png | Bin 0 -> 2471 bytes 23 files changed, 406 insertions(+), 17 deletions(-) create mode 100644 src/main/java/techreborn/client/container/ContainerGenerator.java create mode 100644 src/main/java/techreborn/client/gui/GuiGenerator.java rename src/main/java/techreborn/tiles/{ => generator}/TileDieselGenerator.java (99%) rename src/main/java/techreborn/tiles/{ => generator}/TileDragonEggSiphoner.java (99%) rename src/main/java/techreborn/tiles/{ => generator}/TileGasTurbine.java (99%) create mode 100644 src/main/java/techreborn/tiles/generator/TileGenerator.java rename src/main/java/techreborn/tiles/{ => generator}/TileHeatGenerator.java (98%) rename src/main/java/techreborn/tiles/{ => generator}/TileSemifluidGenerator.java (99%) create mode 100644 src/main/resources/assets/techreborn/textures/gui/generator.png diff --git a/src/main/java/techreborn/blocks/generator/BlockDieselGenerator.java b/src/main/java/techreborn/blocks/generator/BlockDieselGenerator.java index 106b317de..7ae0d8b36 100644 --- a/src/main/java/techreborn/blocks/generator/BlockDieselGenerator.java +++ b/src/main/java/techreborn/blocks/generator/BlockDieselGenerator.java @@ -9,7 +9,7 @@ import techreborn.Core; import techreborn.blocks.BlockMachineBase; import techreborn.blocks.IAdvancedRotationTexture; import techreborn.client.GuiHandler; -import techreborn.tiles.TileDieselGenerator; +import techreborn.tiles.generator.TileDieselGenerator; public class BlockDieselGenerator extends BlockMachineBase implements IAdvancedRotationTexture { diff --git a/src/main/java/techreborn/blocks/generator/BlockDragonEggSiphoner.java b/src/main/java/techreborn/blocks/generator/BlockDragonEggSiphoner.java index 9504c02fc..2f6a11815 100644 --- a/src/main/java/techreborn/blocks/generator/BlockDragonEggSiphoner.java +++ b/src/main/java/techreborn/blocks/generator/BlockDragonEggSiphoner.java @@ -5,7 +5,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import techreborn.blocks.BlockMachineBase; import techreborn.blocks.IAdvancedRotationTexture; -import techreborn.tiles.TileDragonEggSiphoner; +import techreborn.tiles.generator.TileDragonEggSiphoner; public class BlockDragonEggSiphoner extends BlockMachineBase implements IAdvancedRotationTexture { diff --git a/src/main/java/techreborn/blocks/generator/BlockGasTurbine.java b/src/main/java/techreborn/blocks/generator/BlockGasTurbine.java index 1de59d274..453380ef9 100644 --- a/src/main/java/techreborn/blocks/generator/BlockGasTurbine.java +++ b/src/main/java/techreborn/blocks/generator/BlockGasTurbine.java @@ -9,7 +9,7 @@ import techreborn.Core; import techreborn.blocks.BlockMachineBase; import techreborn.blocks.IAdvancedRotationTexture; import techreborn.client.GuiHandler; -import techreborn.tiles.TileGasTurbine; +import techreborn.tiles.generator.TileGasTurbine; public class BlockGasTurbine extends BlockMachineBase implements IAdvancedRotationTexture { diff --git a/src/main/java/techreborn/blocks/generator/BlockGenerator.java b/src/main/java/techreborn/blocks/generator/BlockGenerator.java index 2d7268758..f785a3eb7 100644 --- a/src/main/java/techreborn/blocks/generator/BlockGenerator.java +++ b/src/main/java/techreborn/blocks/generator/BlockGenerator.java @@ -1,5 +1,56 @@ package techreborn.blocks.generator; -public class BlockGenerator { +import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.BlockPos; +import net.minecraft.world.World; +import techreborn.Core; +import techreborn.blocks.BlockMachineBase; +import techreborn.blocks.IAdvancedRotationTexture; +import techreborn.client.GuiHandler; +import techreborn.tiles.generator.TileDieselGenerator; +import techreborn.tiles.generator.TileGenerator; +public class BlockGenerator extends BlockMachineBase implements IAdvancedRotationTexture { + + public BlockGenerator() { + super(Material.iron); + setUnlocalizedName("techreborn.generator"); + } + + @Override + public TileEntity createNewTileEntity(World world, int p_149915_2_) { + return new TileGenerator(); + } + + @Override + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { + if (!player.isSneaking()){ + player.openGui(Core.INSTANCE, GuiHandler.generatorID, world, x, y, z); + } + return true; + } + + private final String prefix = "techreborn:blocks/machine/"; + + @Override + public String getFront(boolean isActive) { + return prefix + "machine_side"; + } + + @Override + public String getSide(boolean isActive) { + return prefix + "machine_side" ; + } + + @Override + public String getTop(boolean isActive) { + return prefix + "diesel_generator_top_off"; + } + + @Override + public String getBottom(boolean isActive) { + return prefix + "machine_bottom"; + } } diff --git a/src/main/java/techreborn/blocks/generator/BlockHeatGenerator.java b/src/main/java/techreborn/blocks/generator/BlockHeatGenerator.java index 63146eec2..68f1f3ca4 100644 --- a/src/main/java/techreborn/blocks/generator/BlockHeatGenerator.java +++ b/src/main/java/techreborn/blocks/generator/BlockHeatGenerator.java @@ -5,7 +5,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import techreborn.blocks.BlockMachineBase; import techreborn.blocks.IAdvancedRotationTexture; -import techreborn.tiles.TileHeatGenerator; +import techreborn.tiles.generator.TileHeatGenerator; public class BlockHeatGenerator extends BlockMachineBase implements IAdvancedRotationTexture { diff --git a/src/main/java/techreborn/blocks/generator/BlockSemiFluidGenerator.java b/src/main/java/techreborn/blocks/generator/BlockSemiFluidGenerator.java index 493638331..11f6a3040 100644 --- a/src/main/java/techreborn/blocks/generator/BlockSemiFluidGenerator.java +++ b/src/main/java/techreborn/blocks/generator/BlockSemiFluidGenerator.java @@ -9,7 +9,7 @@ import techreborn.Core; import techreborn.blocks.BlockMachineBase; import techreborn.blocks.IAdvancedRotationTexture; import techreborn.client.GuiHandler; -import techreborn.tiles.TileSemifluidGenerator; +import techreborn.tiles.generator.TileSemifluidGenerator; public class BlockSemiFluidGenerator extends BlockMachineBase implements IAdvancedRotationTexture { diff --git a/src/main/java/techreborn/client/GuiHandler.java b/src/main/java/techreborn/client/GuiHandler.java index e5b372b26..236b51486 100644 --- a/src/main/java/techreborn/client/GuiHandler.java +++ b/src/main/java/techreborn/client/GuiHandler.java @@ -9,6 +9,10 @@ import techreborn.client.gui.*; import techreborn.pda.GuiManual; import techreborn.tiles.*; import techreborn.tiles.fusionReactor.TileEntityFusionController; +import techreborn.tiles.generator.TileDieselGenerator; +import techreborn.tiles.generator.TileGasTurbine; +import techreborn.tiles.generator.TileGenerator; +import techreborn.tiles.generator.TileSemifluidGenerator; import techreborn.tiles.idsu.TileIDSU; import techreborn.tiles.lesu.TileLesu; import techreborn.tiles.teir1.TileGrinder; @@ -44,6 +48,7 @@ public class GuiHandler implements IGuiHandler { public static final int fusionID = 29; public static final int vacuumFreezerID = 30; public static final int grinderID = 31; + public static final int generatorID = 32; @Override public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) { @@ -126,6 +131,8 @@ public class GuiHandler implements IGuiHandler { return new ContainerVacuumFreezer((TileVacuumFreezer) world.getTileEntity(new BlockPos(x, y, z)), player); }else if (ID == grinderID) { return new ContainerGrinder((TileGrinder) world.getTileEntity(new BlockPos(x, y, z)), player); + }else if (ID == generatorID) { + return new ContainerGenerator((TileGenerator) world.getTileEntity(new BlockPos(x, y, z)), player); } @@ -214,6 +221,8 @@ public class GuiHandler implements IGuiHandler { return new GuiVacuumFreezer(player, (TileVacuumFreezer) world.getTileEntity(new BlockPos(x, y, z))); }else if (ID == grinderID) { return new GuiGrinder(player, (TileGrinder) world.getTileEntity(new BlockPos(x, y, z))); + }else if (ID == generatorID) { + return new GuiGenerator(player, (TileGenerator) world.getTileEntity(new BlockPos(x, y, z))); } return null; } diff --git a/src/main/java/techreborn/client/container/ContainerDieselGenerator.java b/src/main/java/techreborn/client/container/ContainerDieselGenerator.java index 3aade5127..0cb22f098 100644 --- a/src/main/java/techreborn/client/container/ContainerDieselGenerator.java +++ b/src/main/java/techreborn/client/container/ContainerDieselGenerator.java @@ -8,7 +8,7 @@ import net.minecraftforge.fml.relauncher.SideOnly; import reborncore.client.gui.SlotFake; import reborncore.client.gui.SlotOutput; import reborncore.common.container.RebornContainer; -import techreborn.tiles.TileDieselGenerator; +import techreborn.tiles.generator.TileDieselGenerator; public class ContainerDieselGenerator extends RebornContainer { public TileDieselGenerator tiledieselGenerator; diff --git a/src/main/java/techreborn/client/container/ContainerGasTurbine.java b/src/main/java/techreborn/client/container/ContainerGasTurbine.java index 6e068f914..363ba56b0 100644 --- a/src/main/java/techreborn/client/container/ContainerGasTurbine.java +++ b/src/main/java/techreborn/client/container/ContainerGasTurbine.java @@ -5,7 +5,7 @@ import net.minecraft.inventory.Slot; import reborncore.client.gui.SlotFake; import reborncore.client.gui.SlotOutput; import reborncore.common.container.RebornContainer; -import techreborn.tiles.TileGasTurbine; +import techreborn.tiles.generator.TileGasTurbine; public class ContainerGasTurbine extends RebornContainer { public TileGasTurbine tileGasTurbine; diff --git a/src/main/java/techreborn/client/container/ContainerGenerator.java b/src/main/java/techreborn/client/container/ContainerGenerator.java new file mode 100644 index 000000000..07ed222ac --- /dev/null +++ b/src/main/java/techreborn/client/container/ContainerGenerator.java @@ -0,0 +1,51 @@ +package techreborn.client.container; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.inventory.Container; +import net.minecraft.inventory.Slot; +import net.minecraft.inventory.SlotFurnaceFuel; +import reborncore.client.gui.SlotOutput; +import reborncore.common.container.RebornContainer; +import techreborn.tiles.TileAlloySmelter; +import techreborn.tiles.generator.TileGenerator; + +public class ContainerGenerator extends RebornContainer { + + EntityPlayer player; + + TileGenerator tile; + + @Override + public boolean canInteractWith(EntityPlayer player) { + return true; + } + + public int tickTime; + + public ContainerGenerator(TileGenerator tile, EntityPlayer player) { + super(); + this.tile = tile; + this.player = player; + + // fuel + this.addSlotToContainer(new Slot(tile.inventory, 0, 80, 53)); + // charge + this.addSlotToContainer(new SlotFurnaceFuel(tile.inventory, 1, 80, 17)); + + + int i; + + for (i = 0; i < 3; ++i) { + for (int j = 0; j < 9; ++j) { + this.addSlotToContainer(new Slot(player.inventory, j + i * 9 + + 9, 8 + j * 18, 84 + i * 18)); + } + } + + for (i = 0; i < 9; ++i) { + this.addSlotToContainer(new Slot(player.inventory, i, 8 + i * 18, + 142)); + } + } + +} diff --git a/src/main/java/techreborn/client/container/ContainerSemifluidGenerator.java b/src/main/java/techreborn/client/container/ContainerSemifluidGenerator.java index e35d2bb57..89fa81c5f 100644 --- a/src/main/java/techreborn/client/container/ContainerSemifluidGenerator.java +++ b/src/main/java/techreborn/client/container/ContainerSemifluidGenerator.java @@ -5,7 +5,7 @@ import net.minecraft.inventory.Slot; import reborncore.client.gui.SlotFake; import reborncore.client.gui.SlotOutput; import reborncore.common.container.RebornContainer; -import techreborn.tiles.TileSemifluidGenerator; +import techreborn.tiles.generator.TileSemifluidGenerator; public class ContainerSemifluidGenerator extends RebornContainer { public TileSemifluidGenerator tileSemifluidGenerator; diff --git a/src/main/java/techreborn/client/gui/GuiDieselGenerator.java b/src/main/java/techreborn/client/gui/GuiDieselGenerator.java index 73ff0477c..0bd69fde8 100644 --- a/src/main/java/techreborn/client/gui/GuiDieselGenerator.java +++ b/src/main/java/techreborn/client/gui/GuiDieselGenerator.java @@ -6,7 +6,7 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import techreborn.client.container.ContainerDieselGenerator; -import techreborn.tiles.TileDieselGenerator; +import techreborn.tiles.generator.TileDieselGenerator; public class GuiDieselGenerator extends GuiContainer { diff --git a/src/main/java/techreborn/client/gui/GuiGasTurbine.java b/src/main/java/techreborn/client/gui/GuiGasTurbine.java index 1d045bfa8..30579e8dc 100644 --- a/src/main/java/techreborn/client/gui/GuiGasTurbine.java +++ b/src/main/java/techreborn/client/gui/GuiGasTurbine.java @@ -5,7 +5,7 @@ import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.ResourceLocation; import techreborn.client.container.ContainerGasTurbine; -import techreborn.tiles.TileGasTurbine; +import techreborn.tiles.generator.TileGasTurbine; public class GuiGasTurbine extends GuiContainer { diff --git a/src/main/java/techreborn/client/gui/GuiGenerator.java b/src/main/java/techreborn/client/gui/GuiGenerator.java new file mode 100644 index 000000000..cf823bcbd --- /dev/null +++ b/src/main/java/techreborn/client/gui/GuiGenerator.java @@ -0,0 +1,53 @@ +package techreborn.client.gui; + +import net.minecraft.client.gui.inventory.GuiContainer; +import net.minecraft.client.resources.I18n; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.StatCollector; +import techreborn.client.container.ContainerAlloySmelter; +import techreborn.client.container.ContainerGenerator; +import techreborn.tiles.TileAlloySmelter; +import techreborn.tiles.generator.TileGenerator; + +public class GuiGenerator extends GuiContainer { + + public static final ResourceLocation texture = new ResourceLocation("techreborn", "textures/gui/generator.png"); + + TileGenerator generator; + + public GuiGenerator(EntityPlayer player, TileGenerator generator) { + super(new ContainerGenerator(generator, player)); + this.xSize = 176; + this.ySize = 167; + this.generator = generator; + } + + @Override + public void initGui() { + int k = (this.width - this.xSize) / 2; + int l = (this.height - this.ySize) / 2; + super.initGui(); + } + + @Override + protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) { + this.mc.getTextureManager().bindTexture(texture); + int k = (this.width - this.xSize) / 2; + int l = (this.height - this.ySize) / 2; + this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize); + + int j = 0; + + j = generator.getEnergyScaled(12); + if (j > 0) { + this.drawTexturedModalRect(k + 56, l + 36 + 12 - j, 176, 12 - j, 14, j + 2); + } + } + + protected void drawGuiContainerForegroundLayer(int p_146979_1_, int p_146979_2_) { + String name = StatCollector.translateToLocal("tile.techreborn.generator.name"); + this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); + this.fontRendererObj.drawString(I18n.format("container.inventory", new Object[0]), 8, this.ySize - 96 + 2, 4210752); + } +} diff --git a/src/main/java/techreborn/client/gui/GuiSemifluidGenerator.java b/src/main/java/techreborn/client/gui/GuiSemifluidGenerator.java index 2557f5fe4..88edd5b04 100644 --- a/src/main/java/techreborn/client/gui/GuiSemifluidGenerator.java +++ b/src/main/java/techreborn/client/gui/GuiSemifluidGenerator.java @@ -5,7 +5,7 @@ import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.ResourceLocation; import techreborn.client.container.ContainerSemifluidGenerator; -import techreborn.tiles.TileSemifluidGenerator; +import techreborn.tiles.generator.TileSemifluidGenerator; public class GuiSemifluidGenerator extends GuiContainer { diff --git a/src/main/java/techreborn/init/ModBlocks.java b/src/main/java/techreborn/init/ModBlocks.java index 9ca3b89f7..2901057ea 100644 --- a/src/main/java/techreborn/init/ModBlocks.java +++ b/src/main/java/techreborn/init/ModBlocks.java @@ -18,6 +18,12 @@ import techreborn.blocks.teir1.BlockGrinder; import techreborn.itemblocks.*; import techreborn.tiles.*; import techreborn.tiles.fusionReactor.TileEntityFusionController; +import techreborn.tiles.generator.TileDieselGenerator; +import techreborn.tiles.generator.TileDragonEggSiphoner; +import techreborn.tiles.generator.TileGasTurbine; +import techreborn.tiles.generator.TileGenerator; +import techreborn.tiles.generator.TileHeatGenerator; +import techreborn.tiles.generator.TileSemifluidGenerator; import techreborn.tiles.idsu.TileIDSU; import techreborn.tiles.lesu.TileLesu; import techreborn.tiles.lesu.TileLesuStorage; @@ -67,6 +73,7 @@ public class ModBlocks { public static Block chargeBench; public static Block playerDetector; public static Block Grinder; + public static Block Generator; public static BlockOre ore; public static Block storage; @@ -245,6 +252,10 @@ public class ModBlocks { Grinder = new BlockGrinder(Material.iron); GameRegistry.registerBlock(Grinder, "techreborn.grinder"); GameRegistry.registerTileEntity(TileGrinder.class, "TileGrinderTR"); + + Generator = new BlockGenerator(); + GameRegistry.registerBlock(Generator, "techreborn.generator"); + GameRegistry.registerTileEntity(TileGenerator.class, "TileGeneratorTR"); GameRegistry.registerTileEntity(TileMachineBase.class, "TileMachineBaseTR"); diff --git a/src/main/java/techreborn/tiles/TileDieselGenerator.java b/src/main/java/techreborn/tiles/generator/TileDieselGenerator.java similarity index 99% rename from src/main/java/techreborn/tiles/TileDieselGenerator.java rename to src/main/java/techreborn/tiles/generator/TileDieselGenerator.java index 82f71101c..b0172692f 100644 --- a/src/main/java/techreborn/tiles/TileDieselGenerator.java +++ b/src/main/java/techreborn/tiles/generator/TileDieselGenerator.java @@ -1,4 +1,4 @@ -package techreborn.tiles; +package techreborn.tiles.generator; import ic2.api.tile.IWrenchable; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/java/techreborn/tiles/TileDragonEggSiphoner.java b/src/main/java/techreborn/tiles/generator/TileDragonEggSiphoner.java similarity index 99% rename from src/main/java/techreborn/tiles/TileDragonEggSiphoner.java rename to src/main/java/techreborn/tiles/generator/TileDragonEggSiphoner.java index 3cc1af3d6..1bea1b34f 100644 --- a/src/main/java/techreborn/tiles/TileDragonEggSiphoner.java +++ b/src/main/java/techreborn/tiles/generator/TileDragonEggSiphoner.java @@ -1,4 +1,4 @@ -package techreborn.tiles; +package techreborn.tiles.generator; import ic2.api.tile.IWrenchable; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/java/techreborn/tiles/TileGasTurbine.java b/src/main/java/techreborn/tiles/generator/TileGasTurbine.java similarity index 99% rename from src/main/java/techreborn/tiles/TileGasTurbine.java rename to src/main/java/techreborn/tiles/generator/TileGasTurbine.java index b3563750f..81ab00d61 100644 --- a/src/main/java/techreborn/tiles/TileGasTurbine.java +++ b/src/main/java/techreborn/tiles/generator/TileGasTurbine.java @@ -1,4 +1,4 @@ -package techreborn.tiles; +package techreborn.tiles.generator; import ic2.api.tile.IWrenchable; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/java/techreborn/tiles/generator/TileGenerator.java b/src/main/java/techreborn/tiles/generator/TileGenerator.java new file mode 100644 index 000000000..4fea09d66 --- /dev/null +++ b/src/main/java/techreborn/tiles/generator/TileGenerator.java @@ -0,0 +1,214 @@ +package techreborn.tiles.generator; + +import ic2.api.tile.IWrenchable; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; +import net.minecraft.inventory.IInventory; +import net.minecraft.inventory.ISidedInventory; +import net.minecraft.item.Item; +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.item.ItemSword; +import net.minecraft.item.ItemTool; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.IChatComponent; +import net.minecraftforge.fml.common.IFuelHandler; +import net.minecraftforge.fml.common.registry.GameRegistry; +import reborncore.common.util.Inventory; +import techreborn.config.ConfigTechReborn; +import techreborn.init.ModBlocks; +import techreborn.powerSystem.TilePowerAcceptor; + +public class TileGenerator extends TilePowerAcceptor implements IWrenchable, IInventory +{ + public Inventory inventory = new Inventory(2, "TileGenerator", 64, this); + + public int fuelSlot = 0; + public static int burnTime; + public int currentItemBurnTime; + public static int outputAmount = 40; + + public TileGenerator(){ + super(1); + } + + public static int getItemBurnTime(ItemStack stack) { + if (stack == null) { + return 0; + } else { + Item item = stack.getItem(); + + if (item instanceof ItemBlock && Block.getBlockFromItem(item) != Blocks.air) { + Block block = Block.getBlockFromItem(item); + + if (block == Blocks.wooden_slab) { + return 150; + } + + if (block.getMaterial() == Material.wood) { + return 300; + } + + if (block == Blocks.coal_block) { + return 16000; + } + } + + if (item instanceof ItemTool && ((ItemTool) item).getToolMaterialName().equals("WOOD")) return 200; + if (item instanceof ItemSword && ((ItemSword) item).getToolMaterialName().equals("WOOD")) return 200; + //if (item instanceof ItemHoe && ((ItemHoe) item).getToolMaterialName().equals("WOOD")) return 200; + if (item == Items.stick) return 100; + if (item == Items.coal) return 1600; + if (item == Items.lava_bucket) return 20000; + if (item == Item.getItemFromBlock(Blocks.sapling)) return 100; + if (item == Items.blaze_rod) return 2400; + return GameRegistry.getFuelValue(stack); + } + } + + + + @Override + public boolean wrenchCanSetFacing(EntityPlayer entityPlayer, EnumFacing side) { + return false; + } + + @Override + public EnumFacing getFacing() { + return getFacingEnum(); + } + + @Override + public boolean wrenchCanRemove(EntityPlayer entityPlayer) { + if (entityPlayer.isSneaking()) { + return true; + } + return false; + } + + @Override + public float getWrenchDropRate() { + return 1.0F; + } + + @Override + public int getSizeInventory() { + return inventory.getSizeInventory(); + } + + @Override + public ItemStack getStackInSlot(int p_70301_1_) { + return inventory.getStackInSlot(p_70301_1_); + } + + @Override + public ItemStack decrStackSize(int p_70298_1_, int p_70298_2_) { + return inventory.decrStackSize(p_70298_1_, p_70298_2_); + } + + @Override + public ItemStack removeStackFromSlot(int p_70304_1_) { + return inventory.removeStackFromSlot(p_70304_1_); + } + + @Override + public void setInventorySlotContents(int p_70299_1_, ItemStack p_70299_2_) { + inventory.setInventorySlotContents(p_70299_1_, p_70299_2_); + } + + @Override + public int getInventoryStackLimit() { + return inventory.getInventoryStackLimit(); + } + + @Override + public boolean isUseableByPlayer(EntityPlayer p_70300_1_) { + return inventory.isUseableByPlayer(p_70300_1_); + } + + + @Override + public boolean isItemValidForSlot(int p_94041_1_, ItemStack p_94041_2_) { + return inventory.isItemValidForSlot(p_94041_1_, p_94041_2_); + } + + @Override + public double getMaxPower() { + return ConfigTechReborn.ThermalGeneratorCharge; + } + + @Override + public boolean canAcceptEnergy(EnumFacing direction) { + return false; + } + + @Override + public boolean canProvideEnergy(EnumFacing direction) { + return true; + } + + @Override + public double getMaxOutput() { + return 64; + } + + @Override + public double getMaxInput() { + return 0; + } + + @Override + public void openInventory(EntityPlayer player) { + inventory.openInventory(player); + } + + @Override + public void closeInventory(EntityPlayer player) { + inventory.closeInventory(player); + } + + + @Override + public int getField(int id) { + return inventory.getField(id); + } + + @Override + public void setField(int id, int value) { + inventory.setField(id, value); + } + + @Override + public int getFieldCount() { + return inventory.getFieldCount(); + } + + @Override + public void clear() { + inventory.clear(); + } + + @Override + public String getName() { + return inventory.getName(); + } + + @Override + public boolean hasCustomName() { + return inventory.hasCustomName(); + } + + @Override + public IChatComponent getDisplayName() { + return inventory.getDisplayName(); + } + + @Override + public ItemStack getWrenchDrop(EntityPlayer p0) { + return new ItemStack(ModBlocks.Generator); + } + +} diff --git a/src/main/java/techreborn/tiles/TileHeatGenerator.java b/src/main/java/techreborn/tiles/generator/TileHeatGenerator.java similarity index 98% rename from src/main/java/techreborn/tiles/TileHeatGenerator.java rename to src/main/java/techreborn/tiles/generator/TileHeatGenerator.java index d1cb0a38b..05252810e 100644 --- a/src/main/java/techreborn/tiles/TileHeatGenerator.java +++ b/src/main/java/techreborn/tiles/generator/TileHeatGenerator.java @@ -1,4 +1,4 @@ -package techreborn.tiles; +package techreborn.tiles.generator; import ic2.api.tile.IWrenchable; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/java/techreborn/tiles/TileSemifluidGenerator.java b/src/main/java/techreborn/tiles/generator/TileSemifluidGenerator.java similarity index 99% rename from src/main/java/techreborn/tiles/TileSemifluidGenerator.java rename to src/main/java/techreborn/tiles/generator/TileSemifluidGenerator.java index ee46b6a8c..30fe31fdf 100644 --- a/src/main/java/techreborn/tiles/TileSemifluidGenerator.java +++ b/src/main/java/techreborn/tiles/generator/TileSemifluidGenerator.java @@ -1,4 +1,4 @@ -package techreborn.tiles; +package techreborn.tiles.generator; import ic2.api.tile.IWrenchable; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/resources/assets/techreborn/textures/gui/generator.png b/src/main/resources/assets/techreborn/textures/gui/generator.png new file mode 100644 index 0000000000000000000000000000000000000000..70ebba38ee7133ddf3f5945ddd8b4a8192bb4912 GIT binary patch literal 2471 zcmeHIdogEVQlqLX3JOCesD4zh}gdqTLeE={^2SAaL z;@xNifEaLbIAD$1n3|fpySv+a(@+XIlTfHEU%XL)yHTNZ6QNR-P_9bks4M2FZ{Vma zl~D*Kx~k)|7FrQbuVgZ+BN$v(c)PM(4_T(0{8hWAQkNROQ;jgHBKMXg zK2DODCW=iHpedsG6iH&9fSo6ZE#k3@1T3E*wyFSD@t9RSRzScGX%I&!xM4N?jF#fe zX7aS5+N_aguY+|PBe0c8?+x|u4-M#wWOPR|I$|PU1^bQ#(MFj;?->3|3|}Fgwj3V7 zj|vx-0-;bfAt50tDXFQcX>3_Iw<1IdMf!!lRNx;KSXe%vExJT3H>drgF8Lo5*uS(6 zeK&wq81*m{02u|*z;q78uAo9Cmh~aleuh8mE7q0U;M;{h8vuq;by~)a`X+1gzkc( zZ64;j$30WYBu$AR-Tv+UmK~qfKF2Takpe2#3-z@dv85CnOxTiUCcNEFw z!JEvEH(iSB2QDJBgUer=R|jJUUw)sWG9cIyy*fH>_r9x-4ppx#x~4BXwYAvIjS0SS zhzrP?HOqh;d8h8(5DQW0mr3Q=Ku@s$Xy8?CkwP9;a2W`pE8y!5KrTRsYl> zMemwP8(wh3r=#+bUP9WXHEe9>)yX^TPz%@>GqRMb#jL@J&b5LxRATv4fj;*Sk z;zz5#)4gs)eX29hNJ%GcqCXdj2~vL4n1fjCzV@8Etym35a_@-aLk{tXA>?0rCz15C zwvR_T5++de-|Nn$?8KyA>!t_%K({>h+LgymZ+&OCW7*OVxskZQO+}bAb z;b?8()-rqEZ6t!9*5Ko>7{4Z8c$k<)++KwZv0U@krQQ$r&X`fBJ*}ql#W@pAq6+KWU>2j#cw2>`j-Tcf=QaVX#h+lk>x@m_gMo-4r3p%9#*gbxs zuRV9%QQ3|Lu_UqdT5xGBBk7=py&DcUTCC-od>KF#Sa4Yai$ef3KJE%5Z|}m0*Lkc+ zuxL(}gyEx@>#-V7Z$c1D<}V?@;@COb==_J$6(HDN<^Qqky_S$^--G2Z*4!!&)R%WQ(RJfs;vdZ$t=gvj`OVryHqNrCSM2S3|J&yKcFUzGaXDgMn`T?s@u%{N} zdg9nOkWPI`mr8NWzA_3tL4tG!;{FqdjTK1aYwwYQt4;@pZO28Qik-ES)!n^5 GalZpqFTXwj literal 0 HcmV?d00001