From 94f0d9f13755c01c9ec2c2fbc8c1bacc7795be31 Mon Sep 17 00:00:00 2001 From: Micle Date: Thu, 5 Jun 2025 01:28:11 +0100 Subject: [PATCH] WIP: Started work on class for firefly bush block. --- .../block/FireflyBushBlock.java | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/main/java/dev/micle/firefly_bush_backport/block/FireflyBushBlock.java diff --git a/src/main/java/dev/micle/firefly_bush_backport/block/FireflyBushBlock.java b/src/main/java/dev/micle/firefly_bush_backport/block/FireflyBushBlock.java new file mode 100644 index 0000000..fed04a4 --- /dev/null +++ b/src/main/java/dev/micle/firefly_bush_backport/block/FireflyBushBlock.java @@ -0,0 +1,42 @@ +package dev.micle.firefly_bush_backport.block; + +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.block.BonemealableBlock; +import net.minecraft.world.level.block.BushBlock; +import net.minecraft.world.level.block.state.BlockState; + +public class FireflyBushBlock extends BushBlock implements BonemealableBlock { + private static final double FIREFLY_CHANCE_PER_TICK = 0.7; + private static final double FIREFLY_HORIZONTAL_RANGE = 10.0; + private static final double FIREFLY_VERTICAL_RANGE = 5.0; + private static final int FIREFLY_SPAWN_MAX_BRIGHTNESS_LEVEL = 13; + private static final int FIREFLY_AMBIENT_SOUND_CHANCE_ONE_IN = 30; + + public FireflyBushBlock(Properties pProperties) { + super(pProperties); + } + + @Override + public void animateTick(BlockState pState, Level pLevel, BlockPos pPos, RandomSource pRandom) { + super.animateTick(pState, pLevel, pPos, pRandom); + } + + @Override + public boolean isValidBonemealTarget(LevelReader pLevel, BlockPos pPos, BlockState pState, boolean pIsClient) { + return false; + } + + @Override + public boolean isBonemealSuccess(Level pLevel, RandomSource pRandom, BlockPos pPos, BlockState pState) { + return false; + } + + @Override + public void performBonemeal(ServerLevel pLevel, RandomSource pRandom, BlockPos pPos, BlockState pState) { + + } +}