Do not allow a zero max height in BiomeJungle
Fixes GH-592 Thanks to the forge team who noticed this issue long ago
This commit is contained in:
parent
c9759766a3
commit
327535741d
2 changed files with 39 additions and 0 deletions
|
@ -0,0 +1,38 @@
|
||||||
|
From 41ca8dd50089527afea998348956e692c684c93f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
||||||
|
Date: Mon, 23 Jan 2017 15:10:25 -0600
|
||||||
|
Subject: [PATCH] Do not allow a zero max height in BiomeJungle
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/BiomeJungle.java b/src/main/java/net/minecraft/server/BiomeJungle.java
|
||||||
|
index a4e5e49..20c18cd 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/BiomeJungle.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/BiomeJungle.java
|
||||||
|
@@ -39,7 +39,11 @@ public class BiomeJungle extends BiomeBase {
|
||||||
|
super.a(world, random, blockposition);
|
||||||
|
int i = random.nextInt(16) + 8;
|
||||||
|
int j = random.nextInt(16) + 8;
|
||||||
|
- int k = random.nextInt(world.getHighestBlockYAt(blockposition.a(i, 0, j)).getY() * 2);
|
||||||
|
+ // Paper start - Don't allow a 0 height
|
||||||
|
+ int height = world.getHighestBlockYAt(blockposition.add(i, 0, j)).getY() * 2;
|
||||||
|
+ if (height < 1) height = 1;
|
||||||
|
+ int k = random.nextInt(height);
|
||||||
|
+ // Paper end
|
||||||
|
|
||||||
|
(new WorldGenMelon()).generate(world, random, blockposition.a(i, k, j));
|
||||||
|
WorldGenVines worldgenvines = new WorldGenVines();
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java
|
||||||
|
index 6a0b3a6..38a7af5 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/BlockPosition.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/BlockPosition.java
|
||||||
|
@@ -42,6 +42,7 @@ public class BlockPosition extends BaseBlockPosition {
|
||||||
|
this(baseblockposition.getX(), baseblockposition.getY(), baseblockposition.getZ());
|
||||||
|
}
|
||||||
|
|
||||||
|
+ public BlockPosition add(double x, double y, double z) { return this.a(x, y, z); } // Paper - OBFHELPER
|
||||||
|
public BlockPosition a(double d0, double d1, double d2) {
|
||||||
|
return d0 == 0.0D && d1 == 0.0D && d2 == 0.0D ? this : new BlockPosition((double) this.getX() + d0, (double) this.getY() + d1, (double) this.getZ() + d2);
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.9.3
|
||||||
|
|
|
@ -38,6 +38,7 @@ function import {
|
||||||
import AxisAlignedBB
|
import AxisAlignedBB
|
||||||
import BaseBlockPosition
|
import BaseBlockPosition
|
||||||
import BiomeBase
|
import BiomeBase
|
||||||
|
import BiomeJungle
|
||||||
import BiomeMesa
|
import BiomeMesa
|
||||||
import BlockChest
|
import BlockChest
|
||||||
import BlockFalling
|
import BlockFalling
|
||||||
|
|
Loading…
Reference in a new issue