Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.artillect.voltaics.tileentity;
- import com.artillect.voltaics.capability.JouleCapabilities;
- import com.artillect.voltaics.lib.JouleUtils;
- import com.artillect.voltaics.power.implementation.BaseJouleContainer;
- import net.minecraft.client.renderer.texture.ITickable;
- import net.minecraft.nbt.NBTTagCompound;
- import net.minecraft.tileentity.TileEntity;
- import net.minecraft.util.EnumFacing;
- import net.minecraftforge.common.capabilities.Capability;
- public class TileEntityInductor extends TileEntity implements ITickable {
- private BaseJouleContainer container;
- public TileEntityInductor() {
- this.container = new BaseJouleContainer(0, 1000, 50, 50);
- }
- @Override
- public void readFromNBT(NBTTagCompound compound) {
- super.readFromNBT(compound);
- this.container = new BaseJouleContainer(compound.getCompoundTag("JouleContainer"));
- }
- @Override
- public NBTTagCompound writeToNBT(NBTTagCompound compound) {
- compound.setTag("JouleContainer", this.container.serializeNBT());
- return super.writeToNBT(compound);
- }
- @Override
- @SuppressWarnings("unchecked")
- public <T> T getCapability (Capability<T> capability, EnumFacing facing) {
- if (capability == JouleCapabilities.CAPABILITY_CONSUMER || capability == JouleCapabilities.CAPABILITY_HOLDER)
- return (T) this.container;
- return super.getCapability(capability, facing);
- }
- @Override
- public boolean hasCapability (Capability<?> capability, EnumFacing facing) {
- if (capability == JouleCapabilities.CAPABILITY_CONSUMER || capability == JouleCapabilities.CAPABILITY_HOLDER)
- return true;
- return super.hasCapability(capability, facing);
- }
- public void update() {
- this.container.givePower(JouleUtils.consumePowerFromAllFaces(this.getWorld(), pos, this.container.getInputRate(), false), false);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement