mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-20 01:47:42 +01:00
Make infinite lava setting per-world
This commit is contained in:
@@ -1,42 +1,89 @@
|
||||
From e42209ce4b8ec56b6adaa9815a9d953793939d23 Mon Sep 17 00:00:00 2001
|
||||
From 51cfe6295662e3ffb5bda3331140c21d342bcc49 Mon Sep 17 00:00:00 2001
|
||||
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
||||
Date: Sat, 23 Nov 2019 17:55:42 -0600
|
||||
Subject: [PATCH] Implement infinite lava
|
||||
|
||||
---
|
||||
src/main/java/net/minecraft/server/FluidTypeLava.java | 2 +-
|
||||
src/main/java/net/pl3x/purpur/PurpurConfig.java | 5 +++++
|
||||
2 files changed, 6 insertions(+), 1 deletion(-)
|
||||
src/main/java/net/minecraft/server/FluidTypeFlowing.java | 9 ++++++++-
|
||||
src/main/java/net/minecraft/server/FluidTypeLava.java | 7 +++++++
|
||||
src/main/java/net/minecraft/server/WorldProvider.java | 2 +-
|
||||
src/main/java/net/pl3x/purpur/PurpurWorldConfig.java | 5 +++++
|
||||
4 files changed, 21 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/FluidTypeFlowing.java b/src/main/java/net/minecraft/server/FluidTypeFlowing.java
|
||||
index 376dca1889..c8abe61cf7 100644
|
||||
--- a/src/main/java/net/minecraft/server/FluidTypeFlowing.java
|
||||
+++ b/src/main/java/net/minecraft/server/FluidTypeFlowing.java
|
||||
@@ -219,7 +219,7 @@ public abstract class FluidTypeFlowing extends FluidType {
|
||||
}
|
||||
}
|
||||
|
||||
- if (this.f() && j >= 2) {
|
||||
+ if (infinite(iworldreader) && j >= 2) { // Purpur
|
||||
IBlockData iblockdata2 = iworldreader.getType(blockposition.down());
|
||||
Fluid fluid1 = iblockdata2.getFluid();
|
||||
|
||||
@@ -290,6 +290,13 @@ public abstract class FluidTypeFlowing extends FluidType {
|
||||
return (Fluid) this.e().h().set(FluidTypeFlowing.FALLING, flag);
|
||||
}
|
||||
|
||||
+ // Purpur start
|
||||
+ protected boolean infinite(IWorldReader iworldreader) {
|
||||
+ return infinite();
|
||||
+ }
|
||||
+ // Purpur end
|
||||
+
|
||||
+ protected boolean infinite() { return f(); } // Purpur - OBFHELPER
|
||||
protected abstract boolean f();
|
||||
|
||||
protected void a(GeneratorAccess generatoraccess, BlockPosition blockposition, IBlockData iblockdata, EnumDirection enumdirection, Fluid fluid) {
|
||||
diff --git a/src/main/java/net/minecraft/server/FluidTypeLava.java b/src/main/java/net/minecraft/server/FluidTypeLava.java
|
||||
index d25368d032..88866ab34a 100644
|
||||
index d25368d032..09f82c2d92 100644
|
||||
--- a/src/main/java/net/minecraft/server/FluidTypeLava.java
|
||||
+++ b/src/main/java/net/minecraft/server/FluidTypeLava.java
|
||||
@@ -149,7 +149,7 @@ public abstract class FluidTypeLava extends FluidTypeFlowing {
|
||||
@@ -147,6 +147,13 @@ public abstract class FluidTypeLava extends FluidTypeFlowing {
|
||||
generatoraccess.triggerEffect(1501, blockposition, 0);
|
||||
}
|
||||
|
||||
+ // Purpur start
|
||||
+ @Override
|
||||
+ protected boolean infinite(IWorldReader iworldreader) {
|
||||
+ return iworldreader.getWorldProvider().getWorld().purpurConfig.lavaInfinite;
|
||||
+ }
|
||||
+ // Purpur end
|
||||
+
|
||||
@Override
|
||||
protected boolean f() {
|
||||
- return false;
|
||||
+ return net.pl3x.purpur.PurpurConfig.infiniteLava; // Purpur
|
||||
return false;
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldProvider.java b/src/main/java/net/minecraft/server/WorldProvider.java
|
||||
index 9eba9a12c0..39252e6873 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldProvider.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldProvider.java
|
||||
@@ -5,7 +5,7 @@ import javax.annotation.Nullable;
|
||||
public abstract class WorldProvider {
|
||||
|
||||
public static final float[] a = new float[]{1.0F, 0.75F, 0.5F, 0.25F, 0.0F, 0.25F, 0.5F, 0.75F};
|
||||
- protected final World b;
|
||||
+ protected final World b; public World getWorld() { return b; } // Purpur - OBFHELPER
|
||||
private final DimensionManager f;
|
||||
protected boolean c;
|
||||
protected boolean d;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 3ad3415c4a..9594d72e35 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -144,6 +144,11 @@ public class PurpurWorldConfig {
|
||||
milkCuresBadOmen = getBoolean("milk-cures-bad-omen", milkCuresBadOmen);
|
||||
}
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
|
||||
index ad8332f0e5..fb4276ddf7 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
|
||||
@@ -319,6 +319,11 @@ public class PurpurConfig {
|
||||
slimeBlocksNotPushable = getBoolean("settings.slime-blocks-not-pushable", slimeBlocksNotPushable);
|
||||
}
|
||||
|
||||
+ public static boolean infiniteLava = false;
|
||||
+ private static void infiniteLava() {
|
||||
+ infiniteLava = getBoolean("settings.infinite-lava", infiniteLava);
|
||||
+ public boolean lavaInfinite = false;
|
||||
+ private void lavaSettings() {
|
||||
+ lavaInfinite = getBoolean("settings.lava-flow.infinite", lavaInfinite);
|
||||
+ }
|
||||
+
|
||||
public static boolean ridableBat = true;
|
||||
public static boolean ridableBee = true;
|
||||
public static boolean ridableBlaze = true;
|
||||
public int limitPillagerOutpostSpawns = 10;
|
||||
private void limitPillagerOutpostSpawns() {
|
||||
limitPillagerOutpostSpawns = getInt("limit-pillager-outpost-spawns", limitPillagerOutpostSpawns);
|
||||
--
|
||||
2.24.0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user