mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
41 lines
2.5 KiB
Diff
41 lines
2.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
|
Date: Mon, 5 Jul 2021 20:23:08 -0500
|
|
Subject: [PATCH] option to disable shulker box items from dropping contents
|
|
when destroyed
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java
|
|
index e483186a5292b3b53bfb1af4d56f55fcc1a6106c..ec58193ebd73130f14dc5d8f51caa913b2036fc5 100644
|
|
--- a/src/main/java/net/minecraft/world/item/BlockItem.java
|
|
+++ b/src/main/java/net/minecraft/world/item/BlockItem.java
|
|
@@ -288,7 +288,7 @@ public class BlockItem extends Item {
|
|
|
|
@Override
|
|
public void onDestroyed(ItemEntity entity) {
|
|
- if (this.block instanceof ShulkerBoxBlock) {
|
|
+ if (this.block instanceof ShulkerBoxBlock && entity.level().purpurConfig.shulkerBoxItemDropContentsWhenDestroyed) {
|
|
ItemStack itemstack = entity.getItem();
|
|
CompoundTag nbttagcompound = BlockItem.getBlockEntityData(itemstack);
|
|
|
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
index c2bc762175dfab4f64b00c56bbb28ff26b3cad73..8a6b73793bab42e683e22a54d8b801d65baf5fe5 100644
|
|
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
@@ -221,6 +221,7 @@ public class PurpurWorldConfig {
|
|
public int enderPearlCooldownCreative = 20;
|
|
public float enderPearlEndermiteChance = 0.05F;
|
|
public int glowBerriesEatGlowDuration = 0;
|
|
+ public boolean shulkerBoxItemDropContentsWhenDestroyed = true;
|
|
private void itemSettings() {
|
|
itemImmuneToCactus.clear();
|
|
getList("gameplay-mechanics.item.immune.cactus", new ArrayList<>()).forEach(key -> {
|
|
@@ -267,6 +268,7 @@ public class PurpurWorldConfig {
|
|
enderPearlCooldownCreative = getInt("gameplay-mechanics.item.ender-pearl.creative-cooldown", enderPearlCooldownCreative);
|
|
enderPearlEndermiteChance = (float) getDouble("gameplay-mechanics.item.ender-pearl.endermite-spawn-chance", enderPearlEndermiteChance);
|
|
glowBerriesEatGlowDuration = getInt("gameplay-mechanics.item.glow_berries.eat-glow-duration", glowBerriesEatGlowDuration);
|
|
+ shulkerBoxItemDropContentsWhenDestroyed = getBoolean("gameplay-mechanics.item.shulker_box.drop-contents-when-destroyed", shulkerBoxItemDropContentsWhenDestroyed);
|
|
}
|
|
|
|
public double minecartMaxSpeed = 0.4D;
|