Advertisement
Naitenne

Untitled

Dec 9th, 2018
242
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.24 KB | None | 0 0
  1. package net.railsofwar.row.track.capability;
  2.  
  3. import net.minecraft.nbt.NBTBase;
  4. import net.minecraft.util.EnumFacing;
  5. import net.minecraftforge.common.capabilities.Capability;
  6. import net.minecraftforge.common.capabilities.CapabilityInject;
  7. import net.minecraftforge.common.capabilities.ICapabilitySerializable;
  8.  
  9. public class ToolTrackProvider implements ICapabilitySerializable<NBTBase>{
  10.  
  11.     @CapabilityInject(CapabilityToolTrack.IToolTrackCapability.class)
  12.     public static Capability<CapabilityToolTrack.IToolTrackCapability> CAP_TOOL_TRACK = null;
  13.     public static CapabilityToolTrack.IToolTrackCapability capToolInstance = CAP_TOOL_TRACK.getDefaultInstance();
  14.  
  15.     @Override
  16.     public boolean hasCapability(Capability<?> capability, EnumFacing facing){
  17.         return capability == CAP_TOOL_TRACK;
  18.     }
  19.  
  20.     @Override
  21.     public <T> T getCapability(Capability<T> capability, EnumFacing facing){
  22.         return capability == CAP_TOOL_TRACK ? CAP_TOOL_TRACK.cast(capToolInstance) : null;
  23.     }
  24.  
  25.     @Override
  26.     public NBTBase serializeNBT(){
  27.         return CAP_TOOL_TRACK.getStorage().writeNBT(CAP_TOOL_TRACK, capToolInstance, null);
  28.     }
  29.  
  30.     @Override
  31.     public void deserializeNBT(NBTBase nbt){
  32.         CAP_TOOL_TRACK.getStorage().readNBT(CAP_TOOL_TRACK, capToolInstance, null, nbt);
  33.     }
  34.  
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement