Advertisement
Guest User

code

a guest
May 5th, 2017
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.97 KB | None | 0 0
  1. //----Item Class-----
  2. //---------------------
  3.  
  4. public class ItemSkyrimArrow extends ItemArrow {
  5.    
  6.     private double damage;
  7.  
  8.     public ItemSkyrimArrow(String unlocalizedName, String registryName, double damage) {
  9.        
  10.         setUnlocalizedName(unlocalizedName);
  11.         setRegistryName(registryName);
  12.        
  13.         this.damage = damage;
  14.         this.setCreativeTab(TalesOfSkyrim.myTab);
  15.     }
  16.    
  17.     @Override
  18.     public EntityArrow createArrow(World worldIn, ItemStack stack, EntityLivingBase shooter)
  19.     {
  20.             EntitySilverArrow entitytippedarrow = new EntitySilverArrow(worldIn, shooter);
  21.             entitytippedarrow.setPotionEffect(new ItemStack(Items.ARROW));
  22.             entitytippedarrow.setDamage(this.damage);
  23.             return entitytippedarrow;
  24.     }
  25.  
  26.     @Override
  27.     public boolean isInfinite(ItemStack stack, ItemStack bow, net.minecraft.entity.player.EntityPlayer player)
  28.     {
  29.         int enchant = net.minecraft.enchantment.EnchantmentHelper.getEnchantmentLevel(net.minecraft.init.Enchantments.INFINITY, bow);
  30.         return enchant <= 0 ? false : this.getClass() == ItemSkyrimArrow.class;
  31.     }
  32. }
  33.  
  34. //----Entity Class-----
  35. //---------------------
  36.  
  37. public class EntitySilverArrow extends EntityTippedArrow {
  38.  
  39.     public EntitySilverArrow(World worldIn) {
  40.         super(worldIn);
  41.  
  42.     }
  43.    
  44.     public EntitySilverArrow(World worldIn, double x, double y, double z)
  45.     {
  46.         super(worldIn, x, y, z);
  47.     }
  48.    
  49.     public EntitySilverArrow(World worldIn, EntityLivingBase shooter)
  50.     {
  51.         super(worldIn, shooter);
  52.     }
  53.  
  54. }
  55.  
  56. //----Render Class-----
  57. //---------------------
  58.  
  59. @SideOnly(Side.CLIENT)
  60. public class RenderSilverArrow extends RenderArrow<EntitySilverArrow> {
  61.    
  62.     protected ResourceLocation resourceLocation = new ResourceLocation(Reference.MOD_ID, "textures/entity/projectiles/silver_arrow.png");
  63.  
  64.     public static final Factory FACTORY = new Factory();
  65.    
  66.     public RenderSilverArrow(RenderManager renderManagerIn) {
  67.         super(renderManagerIn);
  68.  
  69.     }
  70.  
  71.     @Override
  72.     protected ResourceLocation getEntityTexture(EntitySilverArrow entity) {
  73.         return this.resourceLocation;
  74.     }
  75.    
  76.  
  77.     public static class Factory implements IRenderFactory<EntitySilverArrow> {
  78.  
  79.         @Override
  80.         public Render<? super EntitySilverArrow> createRenderFor(RenderManager manager) {
  81.             return new RenderSilverArrow(manager);
  82.         }
  83.  
  84.     }
  85.  
  86. }
  87.  
  88. //----Registering everything-----
  89. //---------------------
  90.  
  91. public class ModEntities {
  92.  
  93.     static int id;
  94.  
  95.     public static void init() {
  96.         id = 1;
  97.     }
  98.    
  99.     public static void register() {
  100.        
  101.         EntityRegistry.registerModEntity(Reference.ToSEntities.SILVER_ARROW.getResourceLocation(), EntitySilverArrow.class, Reference.ToSEntities.SILVER_ARROW.getRegistryName(), id++, TalesOfSkyrim.instance, 64, 20, false);
  102.  
  103.     }
  104.    
  105.    
  106.     @SideOnly(Side.CLIENT)
  107.     public static void registerRenders() {
  108.         RenderingRegistry.registerEntityRenderingHandler(EntitySilverArrow.class, RenderSilverArrow.FACTORY);
  109.  
  110.     }
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement