From b49dfb45b0006a40740149cf166df5c7012ced27 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Mon, 12 Jul 2021 19:13:13 +0300 Subject: [PATCH] Flower pot drop --- .../ru/betterend/blocks/FlowerPotBlock.java | 18 ++++++++++++++++++ .../resources/betterend.mixins.client.json | 2 +- src/main/resources/fabric.mod.json | 3 ++- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/main/java/ru/betterend/blocks/FlowerPotBlock.java b/src/main/java/ru/betterend/blocks/FlowerPotBlock.java index 0b4815a9..9a8b2f24 100644 --- a/src/main/java/ru/betterend/blocks/FlowerPotBlock.java +++ b/src/main/java/ru/betterend/blocks/FlowerPotBlock.java @@ -1,5 +1,6 @@ package ru.betterend.blocks; +import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.gson.JsonElement; import com.google.gson.JsonObject; @@ -33,6 +34,7 @@ import net.minecraft.world.level.block.SaplingBlock; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.IntegerProperty; +import net.minecraft.world.level.storage.loot.LootContext.Builder; import net.minecraft.world.phys.BlockHitResult; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.Shapes; @@ -56,6 +58,8 @@ import ru.betterend.interfaces.PottableTerrain; import ru.betterend.registry.EndBlocks; import java.io.File; +import java.util.Collections; +import java.util.List; import java.util.Map; import java.util.Optional; @@ -79,6 +83,20 @@ public class FlowerPotBlock extends BaseBlockNotFull implements IRenderTyped, IP builder.add(PLANT_ID, SOIL_ID, POT_LIGHT); } + @Override + public List getDrops(BlockState state, Builder builder) { + List drop = Lists.newArrayList(new ItemStack(this)); + int id = state.getValue(SOIL_ID) - 1; + if (id >= 0 && id < soils.length && soils[id] != null) { + drop.add(new ItemStack(soils[id])); + } + id = state.getValue(PLANT_ID) - 1; + if (id >= 0 && id < plants.length && plants[id] != null) { + drop.add(new ItemStack(plants[id])); + } + return drop; + } + @Override public BlockState updateShape(BlockState state, Direction facing, BlockState neighborState, LevelAccessor world, BlockPos pos, BlockPos neighborPos) { int plantID = state.getValue(PLANT_ID); diff --git a/src/main/resources/betterend.mixins.client.json b/src/main/resources/betterend.mixins.client.json index bb8bed5f..8d7acbb2 100644 --- a/src/main/resources/betterend.mixins.client.json +++ b/src/main/resources/betterend.mixins.client.json @@ -7,7 +7,7 @@ "AbstractSoundInstanceAccessor", "ClientPlayNetworkHandlerMixin", "HumanoidMobRendererMixin", - "ArmorStandRendererMixin", + "ArmorStandRendererMixin", "ClientRecipeBookMixin", "MinecraftClientMixin", "PlayerRendererMixin", diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 05ab7c29..0548b3b3 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -50,6 +50,7 @@ "suggests": { "byg": ">=1.1.3", "blockus": ">=2.0.2", - "nourish": ">=1.2.0" + "nourish": ">=1.2.0", + "colored_lights": ">=1.0.3" } }