From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Mon, 6 Jul 2020 22:48:48 -0700 Subject: [PATCH] Manually inline methods in BlockPosition diff --git a/src/main/java/net/minecraft/core/BlockPos.java b/src/main/java/net/minecraft/core/BlockPos.java index 3b3d81886d50ee6510ff366e11817a578c645089..541cef99113af865b995af2cfb7a1e4724dd8878 100644 --- a/src/main/java/net/minecraft/core/BlockPos.java +++ b/src/main/java/net/minecraft/core/BlockPos.java @@ -516,9 +516,9 @@ public class BlockPos extends Vec3i { } public BlockPos.MutableBlockPos set(int x, int y, int z) { - this.setX(x); - this.setY(y); - this.setZ(z); + this.x = x; // Paper - Perf: Manually inline methods in BlockPosition + this.y = y; // Paper - Perf: Manually inline methods in BlockPosition + this.z = z; // Paper - Perf: Manually inline methods in BlockPosition return this; } @@ -581,19 +581,19 @@ public class BlockPos extends Vec3i { @Override public BlockPos.MutableBlockPos setX(int i) { - super.setX(i); + this.x = i; // Paper - Perf: Manually inline methods in BlockPosition return this; } @Override public BlockPos.MutableBlockPos setY(int i) { - super.setY(i); + this.y = i; // Paper - Perf: Manually inline methods in BlockPosition return this; } @Override public BlockPos.MutableBlockPos setZ(int i) { - super.setZ(i); + this.z = i; // Paper - Perf: Manually inline methods in BlockPosition return this; } diff --git a/src/main/java/net/minecraft/core/Vec3i.java b/src/main/java/net/minecraft/core/Vec3i.java index 5256ff18d992250e04a6180e196c2d5d3f0928ca..369b54b96c682717ef93d05312714b4d30efaceb 100644 --- a/src/main/java/net/minecraft/core/Vec3i.java +++ b/src/main/java/net/minecraft/core/Vec3i.java @@ -19,9 +19,9 @@ public class Vec3i implements Comparable { return IntStream.of(vec.getX(), vec.getY(), vec.getZ()); }); public static final Vec3i ZERO = new Vec3i(0, 0, 0); - private int x; - private int y; - private int z; + protected int x; // Paper - Perf: Manually inline methods in BlockPosition; protected + protected int y; // Paper - Perf: Manually inline methods in BlockPosition; protected + protected int z; // Paper - Perf: Manually inline methods in BlockPosition; protected public static Codec offsetCodec(int maxAbsValue) { return ExtraCodecs.validate(CODEC, (vec) -> {