9
0
mirror of https://github.com/Samsuik/Sakura.git synced 2026-01-04 15:31:43 +00:00

Destroy Waterlogged Blocks

This commit is contained in:
Samsuik
2023-11-16 01:02:59 +00:00
parent 3594bdeb3c
commit 75399580cc
2 changed files with 26 additions and 2 deletions

View File

@@ -597,10 +597,10 @@ index 0000000000000000000000000000000000000000..ebaa184d795dd57e97c4663f731e1284
+}
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..ac508289b63568359e86b507a3c263cd66dd3774
index 0000000000000000000000000000000000000000..deaee9363553df0ab5aff453c278a51987d4ebb1
--- /dev/null
+++ b/src/main/java/me/samsuik/sakura/configuration/WorldConfiguration.java
@@ -0,0 +1,106 @@
@@ -0,0 +1,107 @@
+package me.samsuik.sakura.configuration;
+
+import com.mojang.logging.LogUtils;
@@ -665,6 +665,7 @@ index 0000000000000000000000000000000000000000..ac508289b63568359e86b507a3c263cd
+ map.put(Blocks.CHIPPED_ANVIL, new DurableMaterial(3, Blocks.END_STONE.getExplosionResistance()));
+ map.put(Blocks.DAMAGED_ANVIL, new DurableMaterial(3, Blocks.END_STONE.getExplosionResistance()));
+ });
+ public boolean destroyWaterloggedBlocks = false;
+ }
+
+ public Mechanics mechanics = new Mechanics();

View File

@@ -0,0 +1,23 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Samsuik <40902469+Samsuik@users.noreply.github.com>
Date: Thu, 16 Nov 2023 00:59:04 +0000
Subject: [PATCH] Destroy Waterlogged Blocks
diff --git a/src/main/java/net/minecraft/world/level/Explosion.java b/src/main/java/net/minecraft/world/level/Explosion.java
index b2f42287db6d107c7e8adabd98f007e6b9c7d42b..793b41e52ff024f2bd1085876f275ffb36ec94c1 100644
--- a/src/main/java/net/minecraft/world/level/Explosion.java
+++ b/src/main/java/net/minecraft/world/level/Explosion.java
@@ -196,6 +196,12 @@ public class Explosion {
BlockState blockState = chunk.getBlockStateFinal(x, y, z);
FluidState fluidState = blockState.getFluidState();
+ // Sakura start
+ if (this.level.sakuraConfig().cannons.explosion.destroyWaterloggedBlocks) {
+ fluidState = Blocks.AIR.defaultBlockState().getFluidState();
+ }
+ // Sakura end
+
Optional<Float> resistance = !calculateResistance ? Optional.empty() : this.damageCalculator.getBlockExplosionResistance((Explosion)(Object)this, this.level, pos, blockState, fluidState);
// Sakura start - durable materials