Advertisement
ButterAleks

Untitled

Dec 31st, 2018
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.43 KB | None | 0 0
  1. Registry Handler
  2.  
  3. package com.ButterAleks.RandomIdeas.util.handlers;
  4.  
  5.  
  6. import com.ButterAleks.RandomIdeas.init.ModBlocks;
  7. import com.ButterAleks.RandomIdeas.init.ModEntitys;
  8. import com.ButterAleks.RandomIdeas.init.ModItems;
  9. import com.ButterAleks.RandomIdeas.util.IHasModel;
  10.  
  11. import net.minecraft.block.Block;
  12. import net.minecraft.item.Item;
  13. import net.minecraftforge.client.event.ModelRegistryEvent;
  14. import net.minecraftforge.event.RegistryEvent;
  15. import net.minecraftforge.fml.common.Mod.EventBusSubscriber;
  16. import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
  17.  
  18. @EventBusSubscriber
  19. public class RegistryHandler
  20. {
  21. @SubscribeEvent
  22. public static void onItemRegister(RegistryEvent.Register<Item> event)
  23. {
  24. event.getRegistry().registerAll(ModItems.ITEMS.toArray(new Item[0]));
  25. }
  26.  
  27. @SubscribeEvent
  28. public static void onBlockRegister(RegistryEvent.Register<Block> event)
  29. {
  30. event.getRegistry().registerAll(ModBlocks.BLOCKS.toArray(new Block[0]));
  31. }
  32.  
  33. @SubscribeEvent
  34. public static void onModelRegister(ModelRegistryEvent event)
  35. {
  36. for(Item item : ModItems.ITEMS)
  37. {
  38. if(item instanceof IHasModel)
  39. {
  40. ((IHasModel)item).registerModels();
  41. }
  42. }
  43.  
  44. for(Block block : ModBlocks.BLOCKS)
  45. {
  46. if(block instanceof IHasModel)
  47. {
  48. ((IHasModel)block).registerModels();
  49. }
  50. }
  51. }
  52. public static void preInitRegistries()
  53. {
  54. ModEntitys.registerEntities();
  55. RenderHandler.registerEntityRenders();
  56. }
  57. }
  58.  
  59. Render Handler
  60.  
  61. package com.ButterAleks.RandomIdeas.util.handlers;
  62.  
  63. import com.ButterAleks.RandomIdeas.entity.EntityTestEntity;
  64. import com.ButterAleks.RandomIdeas.entity.render.RenderTestEntity;
  65.  
  66. import net.minecraft.client.renderer.entity.Render;
  67. import net.minecraft.client.renderer.entity.RenderManager;
  68. import net.minecraftforge.fml.client.registry.IRenderFactory;
  69. import net.minecraftforge.fml.client.registry.RenderingRegistry;
  70.  
  71. public class RenderHandler
  72. {
  73. public static void registerEntityRenders()
  74. {
  75. RenderingRegistry.registerEntityRenderingHandler(EntityTestEntity.class, new IRenderFactory<EntityTestEntity>()
  76. {
  77. public Render<? super EntityTestEntity> createRenderFor(RenderManager manager)
  78. {
  79. return new RenderTestEntity(manager);
  80. }
  81. });
  82. }
  83. }
  84.  
  85. Reference
  86.  
  87. package com.ButterAleks.RandomIdeas.util;
  88.  
  89. public class Reference
  90. {
  91. public static final String MOD_ID = "ri";
  92. public static final String NAME = "Random Ideas";
  93. public static final String VERSION = "1.0";
  94. public static final String ACCEPTED_VERSION = "[1.12.2]";
  95. public static final String CLIENT_PROXY_CLASS = "com.ButterAleks.RandomIdeas.proxy.ClientProxy";
  96. public static final String COMMON_PROXY_CLASS = "com.ButterAleks.RandomIdeas.proxy.CommonProxy";
  97.  
  98. public static final int TEST_ENTITY = 1;
  99. }
  100.  
  101. EntityTestEntity
  102.  
  103. package com.ButterAleks.RandomIdeas.entity;
  104.  
  105. import net.minecraft.entity.Entity;
  106. import net.minecraft.entity.EntityAgeable;
  107. import net.minecraft.entity.monster.EntityEnderman;
  108. import net.minecraft.entity.passive.EntityCow;
  109. import net.minecraft.nbt.NBTTagCompound;
  110. import net.minecraft.util.DamageSource;
  111. import net.minecraft.util.SoundEvent;
  112. import net.minecraft.world.World;
  113.  
  114. public class EntityTestEntity extends EntityEnderman
  115. {
  116.  
  117. public EntityTestEntity(World worldIn)
  118. {
  119. super(worldIn);
  120. }
  121.  
  122.  
  123. protected SoundEvent getAmbientSound()
  124. {
  125. return super.getAmbientSound();
  126. }
  127. protected SoundEvent getHurtSound(DamageSource source)
  128. {
  129. return super.getHurtSound(source);
  130. }
  131. protected SoundEvent getDeathSound()
  132. {
  133. return super.getDeathSound();
  134. }
  135. }
  136.  
  137. RenderTestEntity
  138.  
  139. package com.ButterAleks.RandomIdeas.entity.render;
  140.  
  141. import com.ButterAleks.RandomIdeas.entity.EntityTestEntity;
  142. import com.ButterAleks.RandomIdeas.entity.model.ModelTestEntity;
  143. import com.ButterAleks.RandomIdeas.util.Reference;
  144.  
  145. import net.minecraft.client.model.ModelBase;
  146. import net.minecraft.client.renderer.entity.RenderLiving;
  147. import net.minecraft.client.renderer.entity.RenderManager;
  148. import net.minecraft.util.ResourceLocation;
  149.  
  150. public class RenderTestEntity extends RenderLiving<EntityTestEntity>
  151. {
  152. public static final ResourceLocation TEXTURES = new ResourceLocation(Reference.MOD_ID + ":textures/entity/test_entity.png");
  153.  
  154. public RenderTestEntity(RenderManager manager) {
  155. super(manager, new ModelTestEntity(), 0.5F);
  156. }
  157. @Override
  158. protected ResourceLocation getEntityTexture(EntityTestEntity entity)
  159. {
  160. return TEXTURES;
  161. }
  162. @Override
  163. protected void applyRotations(EntityTestEntity entityLiving, float p_77043_2_, float rotationYaw, float partialTicks)
  164. {
  165. super.applyRotations(entityLiving, p_77043_2_, rotationYaw, partialTicks);
  166. }
  167. }
  168.  
  169. ModEntitys
  170.  
  171. package com.ButterAleks.RandomIdeas.init;
  172.  
  173. import com.ButterAleks.RandomIdeas.Main;
  174. import com.ButterAleks.RandomIdeas.entity.EntityTestEntity;
  175. import com.ButterAleks.RandomIdeas.util.Reference;
  176.  
  177. import net.minecraft.entity.Entity;
  178. import net.minecraft.util.ResourceLocation;
  179. import net.minecraftforge.fml.common.registry.EntityRegistry;
  180.  
  181. public class ModEntitys
  182. {
  183. public static void registerEntities()
  184. {
  185. registerEntity("test_entity", EntityTestEntity.class, Reference.TEST_ENTITY, 50, 1381653, 0000000);
  186. }
  187. public static void registerEntity(String name, Class<? extends Entity> entity, int id, int range, int color1, int color2)
  188. {
  189. EntityRegistry.registerModEntity(new ResourceLocation(Reference.MOD_ID + ":" + name), entity, name, id, Main.instance, range, 1, true, color1, color2);
  190. }
  191. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement