9
0
mirror of https://github.com/Samsuik/Sakura.git synced 2025-12-29 03:39:07 +00:00

Make explosion resistant items more configurable

This commit is contained in:
Samsuik
2024-12-25 23:06:07 +00:00
parent 388febbdfb
commit 92bcc1b648
2 changed files with 5 additions and 4 deletions

View File

@@ -595,10 +595,10 @@ index 0000000000000000000000000000000000000000..94dd734ca4049354f925af1736bda57c
+}
diff --git a/src/main/java/me/samsuik/sakura/configuration/WorldConfiguration.java b/src/main/java/me/samsuik/sakura/configuration/WorldConfiguration.java
new file mode 100644
index 0000000000000000000000000000000000000000..1bfc36c5dcd3310f91e337112f54b6c5f4b3b560
index 0000000000000000000000000000000000000000..6c4e4ac7f85e7fca6ecf7606cf8304736bd51d3b
--- /dev/null
+++ b/src/main/java/me/samsuik/sakura/configuration/WorldConfiguration.java
@@ -0,0 +1,242 @@
@@ -0,0 +1,243 @@
+package me.samsuik.sakura.configuration;
+
+import com.mojang.logging.LogUtils;
@@ -796,6 +796,7 @@ index 0000000000000000000000000000000000000000..1bfc36c5dcd3310f91e337112f54b6c5
+
+ public Items items = new Items();
+ public class Items extends ConfigurationPart {
+ public boolean useWhitelistForExplosionResistantItems = true;
+ public List<Item> explosionResistantItems = List.of();
+ }
+

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Added list of ItemEntity's that ignore explosions
diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
index 4423973d4d9a2c3879d98d1d4c8b8c117c677ac5..634a2e000ad788525fbb9f76be9cab8b0397dccc 100644
index 4423973d4d9a2c3879d98d1d4c8b8c117c677ac5..801e4ec55b3df7ed3e2b4cb9fdbd49567d434720 100644
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
@@ -590,6 +590,17 @@ public class ItemEntity extends Entity implements TraceableEntity {
@@ -15,7 +15,7 @@ index 4423973d4d9a2c3879d98d1d4c8b8c117c677ac5..634a2e000ad788525fbb9f76be9cab8b
+ // Sakura start
+ @Override
+ public boolean ignoreExplosion(net.minecraft.world.level.Explosion explosion) {
+ if (this.level().sakuraConfig().entity.items.explosionResistantItems.contains(this.getItem().getItem())) {
+ if (this.level().sakuraConfig().entity.items.explosionResistantItems.contains(this.getItem().getItem()) != this.level().sakuraConfig().entity.items.useWhitelistForExplosionResistantItems) {
+ return true;
+ } else {
+ return super.ignoreExplosion(explosion);