mirror of
https://github.com/Winds-Studio/Leaf.git
synced 2025-12-19 15:09:25 +00:00
38 lines
2.5 KiB
Diff
38 lines
2.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com>
|
|
Date: Fri, 7 Jun 2024 17:43:43 +0800
|
|
Subject: [PATCH] Remove stream in BlockBehaviour cache blockstate
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
|
index 40f15a30b1a0dd2040e75045f32f33082e70aaeb..cdaa5a8af0c6a8a78e587141b9ab1c84766589e9 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
|
@@ -1385,7 +1385,7 @@ public abstract class BlockBehaviour implements FeatureElement {
|
|
@Nullable
|
|
final VoxelShape[] occlusionShapes;
|
|
protected final VoxelShape collisionShape;
|
|
- protected final boolean largeCollisionShape;
|
|
+ protected boolean largeCollisionShape; // Leaf - not final
|
|
private final boolean[] faceSturdy;
|
|
protected final boolean isCollisionShapeFullBlock;
|
|
|
|
@@ -1417,9 +1417,14 @@ public abstract class BlockBehaviour implements FeatureElement {
|
|
if (!this.collisionShape.isEmpty() && state.hasOffsetFunction()) {
|
|
throw new IllegalStateException(String.format(Locale.ROOT, "%s has a collision shape and an offset type, but is not marked as dynamicShape in its properties.", BuiltInRegistries.BLOCK.getKey(block)));
|
|
} else {
|
|
- this.largeCollisionShape = Arrays.stream(Direction.Axis.values()).anyMatch((enumdirection_enumaxis) -> {
|
|
- return this.collisionShape.min(enumdirection_enumaxis) < 0.0D || this.collisionShape.max(enumdirection_enumaxis) > 1.0D;
|
|
- });
|
|
+ // Leaf start - Remove stream
|
|
+ for (Direction.Axis axis : Direction.Axis.values()) {
|
|
+ if (this.collisionShape.min(axis) < 0.0D || this.collisionShape.max(axis) > 1.0D) {
|
|
+ this.largeCollisionShape = true;
|
|
+ break;
|
|
+ }
|
|
+ }
|
|
+ // Leaf end - Remove stream
|
|
this.faceSturdy = new boolean[BlockBehaviour.BlockStateBase.Cache.DIRECTIONS.length * BlockBehaviour.BlockStateBase.Cache.SUPPORT_TYPE_COUNT];
|
|
Direction[] aenumdirection1 = BlockBehaviour.BlockStateBase.Cache.DIRECTIONS;
|
|
int k = aenumdirection1.length;
|