Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.railsofwar.row.track.capability;
- import net.minecraft.nbt.NBTBase;
- import net.minecraft.nbt.NBTTagCompound;
- import net.minecraft.util.EnumFacing;
- import net.minecraft.util.math.BlockPos;
- import net.minecraftforge.common.capabilities.Capability;
- public class CapabilityToolTrack{
- public interface IToolTrackCapability{
- boolean doneFirst();
- boolean invert();
- int scalarB();
- BlockPos getOrigin();
- void setDone(boolean flag);
- void setInvert(boolean flag);
- void setScalarB(int s);
- void setPos(BlockPos pos);
- }
- public static class Storage implements Capability.IStorage<IToolTrackCapability>{
- @Override
- public NBTBase writeNBT(Capability<IToolTrackCapability> capability, IToolTrackCapability instance, EnumFacing side){
- NBTTagCompound tag = new NBTTagCompound();
- // tag.setBoolean("doneFirst", instance.doneFirst());
- // tag.setBoolean("invert", instance.invert());
- // tag.setInteger("scalarB", instance.scalarB());
- // tag.setInteger("x", instance.getOrigin().getX());
- // tag.setInteger("y", instance.getOrigin().getY());
- // tag.setInteger("z", instance.getOrigin().getZ());
- return tag;
- }
- @Override
- public void readNBT(Capability<IToolTrackCapability> capability, IToolTrackCapability instance, EnumFacing side, NBTBase nbt){
- NBTTagCompound tag = (NBTTagCompound) nbt;
- // instance.setDone(tag.getBoolean("doneFirst"));
- // instance.setInvert(tag.getBoolean("invert"));
- // instance.setScalarB(tag.getInteger("scalarB"));
- // instance.setPos(new BlockPos(tag.getInteger("x"), tag.getInteger("y"), tag.getInteger("z")));
- }
- }
- public static class DefaultToolTrack implements IToolTrackCapability{
- private BlockPos pos = new BlockPos(0, 0, 0);
- private boolean doneFirst = false;
- private boolean inverse = false;
- private int scalarB = 0;
- @Override
- public void setDone(boolean flag){
- doneFirst = flag;
- }
- @Override
- public void setInvert(boolean flag){
- inverse = flag;
- }
- @Override
- public void setScalarB(int s){
- scalarB = s;
- }
- @Override
- public void setPos(BlockPos p){
- pos = p;
- }
- @Override
- public boolean doneFirst(){
- return doneFirst;
- }
- @Override
- public boolean invert(){
- return inverse;
- }
- @Override
- public int scalarB(){
- return scalarB;
- }
- @Override
- public BlockPos getOrigin(){
- return pos;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement