mirror of
https://github.com/Winds-Studio/Leaf.git
synced 2025-12-19 15:09:25 +00:00
fix tickingPos out of bounds
This commit is contained in:
@@ -39,7 +39,7 @@ index eb849c57992658005e0f514c6f7923f8ca43bebf..2efcdb9bc91b9106b4aef9e24cc20596
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/net/minecraft/world/level/chunk/LevelChunk.java b/net/minecraft/world/level/chunk/LevelChunk.java
|
diff --git a/net/minecraft/world/level/chunk/LevelChunk.java b/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
index 624a177695580510c0a49d4503dee72da7fd7114..8be4f0978451179fca8b9603743e875817040a08 100644
|
index 624a177695580510c0a49d4503dee72da7fd7114..affe9fff1ff2f7e221f8cfe345d40d707e0f3dbc 100644
|
||||||
--- a/net/minecraft/world/level/chunk/LevelChunk.java
|
--- a/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
+++ b/net/minecraft/world/level/chunk/LevelChunk.java
|
+++ b/net/minecraft/world/level/chunk/LevelChunk.java
|
||||||
@@ -151,6 +151,52 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p
|
@@ -151,6 +151,52 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p
|
||||||
@@ -80,12 +80,12 @@ index 624a177695580510c0a49d4503dee72da7fd7114..8be4f0978451179fca8b9603743e8758
|
|||||||
+ LevelChunkSection section = sections[i];
|
+ LevelChunkSection section = sections[i];
|
||||||
+ var l = section.moonrise$getTickingBlockList();
|
+ var l = section.moonrise$getTickingBlockList();
|
||||||
+ int size = l.size();
|
+ int size = l.size();
|
||||||
+ if (size > idx) {
|
+ if (idx < size) {
|
||||||
+ short loc = l.getRaw(size - idx);
|
+ short loc = l.getRaw(idx);
|
||||||
+ return java.util.OptionalLong.of(BlockPos.asLong(
|
+ int x = (loc & 15) | (chunkPos.x << 4);
|
||||||
+ (loc & 15) | (chunkPos.x << 4),
|
+ int y = (loc >>> 8) | ((getMinSectionY() + i) << 4);
|
||||||
+ (loc >>> 8) | (((getMinSectionY() + i) << 4)),
|
+ int z = ((loc >>> 4) & 15) | (chunkPos.z << 4);
|
||||||
+ ((loc >>> 4) & 15) | (chunkPos.z << 4)));
|
+ return java.util.OptionalLong.of(BlockPos.asLong(x, y, z));
|
||||||
+ }
|
+ }
|
||||||
+ idx -= size;
|
+ idx -= size;
|
||||||
+ }
|
+ }
|
||||||
|
|||||||
Reference in New Issue
Block a user