Advertisement
Guest User

Untitled

a guest
Aug 29th, 2017
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.24 KB | None | 0 0
  1. package io.github.voxelbuster.sbmod.common.block;
  2.  
  3. import io.github.voxelbuster.sbmod.common.StarboundMod;
  4. import net.minecraft.block.Block;
  5. import net.minecraft.block.material.Material;
  6. import net.minecraft.client.renderer.block.statemap.StateMap;
  7. import net.minecraft.item.Item;
  8. import net.minecraft.item.ItemBlock;
  9. import net.minecraft.util.ResourceLocation;
  10. import net.minecraftforge.client.model.ModelLoader;
  11. import net.minecraftforge.event.RegistryEvent;
  12. import net.minecraftforge.fluids.BlockFluidClassic;
  13. import net.minecraftforge.fluids.Fluid;
  14. import net.minecraftforge.fluids.FluidRegistry;
  15. import net.minecraftforge.fml.common.Mod;
  16. import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
  17. import net.minecraftforge.fml.relauncher.Side;
  18. import net.minecraftforge.fml.relauncher.SideOnly;
  19. import net.minecraftforge.registries.IForgeRegistry;
  20.  
  21. @Mod.EventBusSubscriber(modid = StarboundMod.MODID)
  22. public class ModFluids {
  23.  
  24.     public static final Fluid erichiusfuel = new Fluid("erichiusfuel",
  25.             new ResourceLocation(StarboundMod.MODID, "fuelstill"), new ResourceLocation(StarboundMod.MODID, "fuelflowing"))
  26.             .setDensity(2000).setLuminosity(10).setViscosity(100);
  27.  
  28.     public static final Fluid oil = new Fluid("oil",
  29.             new ResourceLocation(StarboundMod.MODID, "oilstill"), new ResourceLocation(StarboundMod.MODID, "oilflowing"))
  30.             .setDensity(1200).setLuminosity(10).setViscosity(400);
  31.  
  32.     public static final Fluid healingwater = new Fluid("healingwater",
  33.             new ResourceLocation(StarboundMod.MODID, "healingwaterstill"), new ResourceLocation(StarboundMod.MODID, "healingwaterflowing"))
  34.             .setDensity(1600).setLuminosity(50).setViscosity(20);
  35.  
  36.     public static BlockFluidClassic fuelblock;
  37.     public static BlockFluidClassic oilblock;
  38.     public static BlockFluidClassic hwaterblock;
  39.  
  40.     public static void registerFluids() {
  41.         FluidRegistry.registerFluid(erichiusfuel);
  42.         FluidRegistry.addBucketForFluid(erichiusfuel);
  43.         FluidRegistry.registerFluid(oil);
  44.         FluidRegistry.addBucketForFluid(oil);
  45.         FluidRegistry.registerFluid(healingwater);
  46.         FluidRegistry.addBucketForFluid(healingwater);
  47.     }
  48.  
  49.     @SubscribeEvent
  50.     public static void registerBlocks(RegistryEvent.Register<Block> event) {
  51.         IForgeRegistry<Block> registry = event.getRegistry();
  52.  
  53.         fuelblock = (BlockFluidClassic) new BlockFluidClassic(erichiusfuel, Material.WATER).setRegistryName(StarboundMod.MODID, "erichiusfuel").setUnlocalizedName("erichiusfuel")
  54.                 .setCreativeTab(StarboundMod.creativeTab);
  55.         oilblock = (BlockFluidClassic) new BlockFluidClassic(oil, Material.WATER).setRegistryName(StarboundMod.MODID, "oil").setUnlocalizedName("oil")
  56.                 .setCreativeTab(StarboundMod.creativeTab);
  57.         hwaterblock = (BlockFluidClassic) new BlockFluidClassic(healingwater, Material.WATER).setRegistryName(StarboundMod.MODID, "healingwater").setUnlocalizedName("healingwater")
  58.                 .setCreativeTab(StarboundMod.creativeTab);
  59.  
  60.         registry.register(fuelblock);
  61.         registry.register(oilblock);
  62.         registry.register(hwaterblock);
  63.     }
  64.  
  65.     @SubscribeEvent
  66.     public static void registerItems(RegistryEvent.Register<Item> event) {
  67.         IForgeRegistry<Item> registry = event.getRegistry();
  68.  
  69.         ItemBlock fuelitem = new ItemBlock(fuelblock);
  70.         fuelitem.setRegistryName(StarboundMod.MODID, "erichiusfuel");
  71.         ItemBlock oilitem = new ItemBlock(oilblock);
  72.         oilitem.setRegistryName(StarboundMod.MODID, "oil");
  73.         ItemBlock hwateritem = new ItemBlock(hwaterblock);
  74.         hwateritem.setRegistryName(StarboundMod.MODID, "healingwater");
  75.  
  76.         registry.register(fuelitem);
  77.         registry.register(oilitem);
  78.         registry.register(hwateritem);
  79.     }
  80.  
  81.     @SideOnly(Side.CLIENT)
  82.     public static void renderFluids() {
  83.         ModelLoader.setCustomStateMapper(fuelblock, new StateMap.Builder().ignore(BlockFluidClassic.LEVEL).build());
  84.         ModelLoader.setCustomStateMapper(oilblock, new StateMap.Builder().ignore(BlockFluidClassic.LEVEL).build());
  85.         ModelLoader.setCustomStateMapper(hwaterblock, new StateMap.Builder().ignore(BlockFluidClassic.LEVEL).build());
  86.     }
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement