Teneanea improvements and leaves
This commit is contained in:
parent
e3d5065e12
commit
5ee7a94ef6
28 changed files with 469 additions and 54 deletions
|
@ -24,6 +24,7 @@ import net.minecraft.sound.BlockSoundGroup;
|
|||
import net.minecraft.state.StateManager;
|
||||
import net.minecraft.state.property.DirectionProperty;
|
||||
import net.minecraft.state.property.Properties;
|
||||
import net.minecraft.tag.BlockTags;
|
||||
import net.minecraft.util.BlockMirror;
|
||||
import net.minecraft.util.BlockRotation;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
|
@ -38,13 +39,24 @@ import ru.betterend.interfaces.IRenderTypeable;
|
|||
import ru.betterend.util.BlocksHelper;
|
||||
import ru.betterend.util.MHelper;
|
||||
|
||||
public class BlockGlowingFur extends BlockBaseNotFull implements IRenderTypeable {
|
||||
public class BlockFur extends BlockBaseNotFull implements IRenderTypeable {
|
||||
private static final EnumMap<Direction, VoxelShape> BOUNDING_SHAPES = Maps.newEnumMap(Direction.class);
|
||||
public static final DirectionProperty FACING = Properties.FACING;
|
||||
private final ItemConvertible drop;
|
||||
private final int dropChance;
|
||||
|
||||
public BlockGlowingFur(ItemConvertible drop, int dropChance) {
|
||||
public BlockFur(ItemConvertible drop, int light, int dropChance) {
|
||||
super(FabricBlockSettings.of(Material.REPLACEABLE_PLANT)
|
||||
.breakByTool(FabricToolTags.SHEARS)
|
||||
.sounds(BlockSoundGroup.WET_GRASS)
|
||||
.luminance(light)
|
||||
.breakByHand(true)
|
||||
.noCollision());
|
||||
this.drop = drop;
|
||||
this.dropChance = dropChance;
|
||||
}
|
||||
|
||||
public BlockFur(ItemConvertible drop, int dropChance) {
|
||||
super(FabricBlockSettings.of(Material.REPLACEABLE_PLANT)
|
||||
.breakByTool(FabricToolTags.SHEARS)
|
||||
.sounds(BlockSoundGroup.WET_GRASS)
|
||||
|
@ -86,7 +98,7 @@ public class BlockGlowingFur extends BlockBaseNotFull implements IRenderTypeable
|
|||
public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) {
|
||||
Direction direction = (Direction) state.get(FACING);
|
||||
BlockPos blockPos = pos.offset(direction.getOpposite());
|
||||
return sideCoversSmallSquare(world, blockPos, direction);
|
||||
return sideCoversSmallSquare(world, blockPos, direction) || world.getBlockState(pos).isIn(BlockTags.LEAVES);
|
||||
}
|
||||
|
||||
@Override
|
|
@ -11,6 +11,9 @@ import net.minecraft.block.Material;
|
|||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.loot.context.LootContext;
|
||||
import net.minecraft.sound.BlockSoundGroup;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.world.WorldView;
|
||||
|
||||
public class BlockWallMushroom extends BlockWallPlant {
|
||||
public BlockWallMushroom(int light) {
|
||||
|
@ -28,4 +31,9 @@ public class BlockWallMushroom extends BlockWallPlant {
|
|||
public List<ItemStack> getDroppedStacks(BlockState state, LootContext.Builder builder) {
|
||||
return Lists.newArrayList(new ItemStack(this));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSupport(WorldView world, BlockPos pos, BlockState blockState, Direction direction) {
|
||||
return blockState.getMaterial().isSolid() && blockState.isSideSolidFullSquare(world, pos, direction);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue