Advertisement
Guest User

Untitled

a guest
Dec 3rd, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.68 KB | None | 0 0
  1. package com.artillect.voltaics.tileentity;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import javax.annotation.Nullable;
  6. import net.minecraft.block.state.IBlockState;
  7. import net.minecraft.entity.player.EntityPlayer;
  8. import net.minecraft.item.ItemStack;
  9. import net.minecraft.nbt.NBTTagCompound;
  10. import net.minecraft.network.NetworkManager;
  11. import net.minecraft.network.play.server.SPacketUpdateTileEntity;
  12. import net.minecraft.tileentity.TileEntity;
  13. import net.minecraft.util.EnumFacing;
  14. import net.minecraft.util.EnumHand;
  15. import net.minecraft.util.ITickable;
  16. import net.minecraft.util.math.BlockPos;
  17. import net.minecraft.world.World;
  18. import net.minecraftforge.common.capabilities.Capability;
  19.  
  20. import com.artillect.voltaics.capability.JouleCapabilities;
  21. import com.artillect.voltaics.lib.JouleUtils;
  22. import com.artillect.voltaics.power.DefaultEnergyCapability;
  23. import com.artillect.voltaics.power.EnergyCapabilityProvider;
  24. import com.artillect.voltaics.power.IEnergyCapability;
  25. import com.artillect.voltaics.power.implementation.BaseJouleContainer;
  26. import com.artillect.voltaics.tileentity.TileEntityLowVoltageConduit.EnumConduitConnection;
  27.  
  28. public class TileEntityVoltaicPile extends TileEntity implements ITickable {
  29.  
  30. private BaseJouleContainer container;
  31.  
  32. public TileEntityVoltaicPile() {
  33. this.container = new BaseJouleContainer(20000, 20000, 50, 50);
  34. }
  35.  
  36. @Override
  37. public void readFromNBT(NBTTagCompound compound) {
  38. super.readFromNBT(compound);
  39. this.container = new BaseJouleContainer(compound.getCompoundTag("JouleContainer"));
  40. }
  41.  
  42. @Override
  43. public NBTTagCompound writeToNBT(NBTTagCompound compound) {
  44. compound.setTag("JouleContainer", this.container.serializeNBT());
  45. return super.writeToNBT(compound);
  46. }
  47.  
  48. @Override
  49. @SuppressWarnings("unchecked")
  50. public <T> T getCapability (Capability<T> capability, EnumFacing facing) {
  51.  
  52. if (capability == JouleCapabilities.CAPABILITY_CONSUMER || capability == JouleCapabilities.CAPABILITY_HOLDER || capability == JouleCapabilities.CAPABILITY_PRODUCER)
  53. return (T) this.container;
  54.  
  55. return super.getCapability(capability, facing);
  56. }
  57.  
  58. @Override
  59. public boolean hasCapability (Capability<?> capability, EnumFacing facing) {
  60.  
  61. if (capability == JouleCapabilities.CAPABILITY_CONSUMER || capability == JouleCapabilities.CAPABILITY_HOLDER || capability == JouleCapabilities.CAPABILITY_PRODUCER)
  62. return true;
  63.  
  64. return super.hasCapability(capability, facing);
  65. }
  66.  
  67. @Override
  68. public void update() {
  69. this.container.takePower(JouleUtils.distributePowerToAllFaces(this.getWorld(), pos, 50, false), false); //Replace 20 with JouleUtils.distributePowerToAllFaces(this.getWorld(), pos, 50, false)
  70. }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement