/
Belyash5
/
Flu
Обзор
Документация
Войти
/
Belyash5
/
Flu
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/main/java/com/hbm/items/tool/ItemModBucket.java
56 строк
2 KB
Boblet
small test with finite fluids
16 сен 2022, 16:14
16 сен 2022, 16:14
ba21416
Код
Авторство
О чём код?
package com.hbm.items.tool; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; import net.minecraft.item.ItemBucket; import net.minecraft.world.World; public class ItemModBucket extends ItemBucket { protected int overrideFluidMeta = 0; protected Block containedFluid; public ItemModBucket(Block fluid) { super(fluid); this.containedFluid = fluid; } public ItemModBucket(Block fluid, int meta) { this(fluid); this.overrideFluidMeta = meta; } @Override public boolean tryPlaceContainedLiquid(World world, int x, int y, int z) { if(this.containedFluid == Blocks.air) { return false; } else { Material material = world.getBlock(x, y, z).getMaterial(); boolean flag = !material.isSolid(); if(!world.isAirBlock(x, y, z) && !flag) { return false; } else { if(world.provider.isHellWorld && this.containedFluid == Blocks.flowing_water) { world.playSoundEffect((double) ((float) x + 0.5F), (double) ((float) y + 0.5F), (double) ((float) z + 0.5F), "random.fizz", 0.5F, 2.6F + (world.rand.nextFloat() - world.rand.nextFloat()) * 0.8F); for(int l = 0; l < 8; ++l) { world.spawnParticle("largesmoke", (double) x + Math.random(), (double) y + Math.random(), (double) z + Math.random(), 0.0D, 0.0D, 0.0D); } } else { if(!world.isRemote && flag && !material.isLiquid()) { world.func_147480_a(x, y, z, true); } world.setBlock(x, y, z, this.containedFluid, overrideFluidMeta, 3); } return true; } } } }