mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Upstream has released updates that appear to apply and compile correctly Paper Changes: 12dec20 Bump paerweight to 1.1.7 e33ed89 Get short commit ref using a more proper method 7d6147d Remove now unneeded patch due to paperweight 1.1.7 e72fa41 Update task dependency for includeMappings so the new task isn't skipped 0ad5526 Trim whitspace off of git hash (oops) Tuinity Changes: e878ba9 Update paper 2bd2849 Bring back fix codec spam patch
63 lines
3.4 KiB
Diff
63 lines
3.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Encode42 <me@encode42.dev>
|
|
Date: Wed, 24 Mar 2021 20:30:37 -0400
|
|
Subject: [PATCH] Configurable sponge absorption
|
|
|
|
Allows the total area and radius of water blocks the sponge can absorb to be changed.
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/SpongeBlock.java b/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
|
index 1ef8eadd4e59f2e5d2bbd84f6f9bcf37b59db5bd..5b10e1110f938745c8f9ed0b55960566bc720c30 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/SpongeBlock.java
|
|
@@ -77,13 +77,13 @@ public class SpongeBlock extends Block {
|
|
if (fluid.is((Tag) FluidTags.WATER)) {
|
|
if (iblockdata.getBlock() instanceof BucketPickup && !((BucketPickup) iblockdata.getBlock()).pickupBlock(blockList, blockposition2, iblockdata).isEmpty()) { // CraftBukkit
|
|
++i;
|
|
- if (j < 6) {
|
|
+ if (j < world.purpurConfig.spongeAbsorptionRadius) { // Purpur
|
|
queue.add(new Tuple<>(blockposition2, j + 1));
|
|
}
|
|
} else if (iblockdata.getBlock() instanceof LiquidBlock) {
|
|
blockList.setBlock(blockposition2, Blocks.AIR.defaultBlockState(), 3); // CraftBukkit
|
|
++i;
|
|
- if (j < 6) {
|
|
+ if (j < world.purpurConfig.spongeAbsorptionRadius) { // Purpur
|
|
queue.add(new Tuple<>(blockposition2, j + 1));
|
|
}
|
|
} else if (material == Material.WATER_PLANT || material == Material.REPLACEABLE_WATER_PLANT) {
|
|
@@ -94,14 +94,14 @@ public class SpongeBlock extends Block {
|
|
blockList.setBlock(blockposition2, Blocks.AIR.defaultBlockState(), 3);
|
|
// CraftBukkit end
|
|
++i;
|
|
- if (j < 6) {
|
|
+ if (j < world.purpurConfig.spongeAbsorptionRadius) { // Purpur
|
|
queue.add(new Tuple<>(blockposition2, j + 1));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
- if (i > 64) {
|
|
+ if (i > world.purpurConfig.spongeAbsorptionArea) { // Purpur
|
|
break;
|
|
}
|
|
}
|
|
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
index cf27ecc93f92d57d25d1721fbb54af334ac725f8..fd195e7263cd3efdd0a8161b474e2dc910261543 100644
|
|
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
@@ -618,6 +618,13 @@ public class PurpurWorldConfig {
|
|
spawnerDeactivateByRedstone = getBoolean("blocks.spawner.deactivate-by-redstone", spawnerDeactivateByRedstone);
|
|
}
|
|
|
|
+ public int spongeAbsorptionArea = 64;
|
|
+ public int spongeAbsorptionRadius = 6;
|
|
+ private void spongeSettings() {
|
|
+ spongeAbsorptionArea = getInt("blocks.sponge.absorption.area", spongeAbsorptionArea);
|
|
+ spongeAbsorptionRadius = getInt("blocks.sponge.absorption.radius", spongeAbsorptionRadius);
|
|
+ }
|
|
+
|
|
public float stonecutterDamage = 0.0F;
|
|
private void stonecutterSettings() {
|
|
stonecutterDamage = (float) getDouble("blocks.stonecutter.damage", stonecutterDamage);
|