Advertisement
Guest User

Tile

a guest
Jul 27th, 2017
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.91 KB | None | 0 0
  1. package de.mt.modules.rotary.blocks.tile;
  2.  
  3. import javax.annotation.Nonnull;
  4. import javax.annotation.Nullable;
  5.  
  6. import com.google.common.collect.ImmutableMap;
  7.  
  8. import de.mt.MassiveTech;
  9. import de.mt.api.Constants;
  10. import net.minecraft.tileentity.TileEntity;
  11. import net.minecraft.util.EnumFacing;
  12. import net.minecraft.util.ResourceLocation;
  13. import net.minecraftforge.common.animation.Event;
  14. import net.minecraftforge.common.animation.ITimeValue;
  15. import net.minecraftforge.common.animation.TimeValues.VariableValue;
  16. import net.minecraftforge.common.capabilities.Capability;
  17. import net.minecraftforge.common.model.animation.CapabilityAnimation;
  18. import net.minecraftforge.common.model.animation.IAnimationStateMachine;
  19.  
  20. public class TileShaft extends TileEntity
  21. {
  22.     private VariableValue cycleLength = new VariableValue(4);
  23.  
  24.     @Nullable
  25.     private IAnimationStateMachine asm = MassiveTech.proxy.load(new ResourceLocation(MassiveTech.ID, Constants.Shaft.ASMS), ImmutableMap.<String, ITimeValue>of(
  26.             "cycle_length", cycleLength));
  27.  
  28.     public void click()
  29.     {
  30.         if(asm != null)
  31.         {
  32.             if (asm.currentState().equals("default"))
  33.                 asm.transition("moving");
  34.             if (asm.currentState().equals("moving"))
  35.                 asm.transition("default");
  36.         }
  37.     }
  38.    
  39.     @Override
  40.     public boolean hasFastRenderer()
  41.     {
  42.         return true;
  43.     }
  44.  
  45.     @Override
  46.     public boolean hasCapability(@Nonnull Capability<?> capability, @Nullable EnumFacing facing)
  47.     {
  48.         if(capability == CapabilityAnimation.ANIMATION_CAPABILITY) return true;
  49.         return super.hasCapability(capability, facing);
  50.     }
  51.  
  52.     @Override
  53.     public <T> T getCapability(@Nonnull Capability<T> capability, @Nullable EnumFacing facing)
  54.     {
  55.         if(capability == CapabilityAnimation.ANIMATION_CAPABILITY) return CapabilityAnimation.ANIMATION_CAPABILITY.cast(asm);
  56.         return super.getCapability(capability, facing);
  57.     }
  58.  
  59.     public void handleEvents(float time, Iterable<Event> pastEvents)
  60.     {
  61.        
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement