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 eea8bea0f40db8d36c59e628babf788fa920df94..0d51fb4be8b49e3b57c3c55aff6bcf13d5c78ddd 100644 --- a/src/main/java/net/minecraft/core/BlockPos.java +++ b/src/main/java/net/minecraft/core/BlockPos.java @@ -576,9 +576,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; } @@ -643,19 +643,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 7d5f99cac756c54e5922bf85d5d359edcc21f1e8..2f2bcc1b9b32e58bf70ae6c171177ceb333ed6cd 100644 --- a/src/main/java/net/minecraft/core/Vec3i.java +++ b/src/main/java/net/minecraft/core/Vec3i.java @@ -16,9 +16,9 @@ public class Vec3i implements Comparable { vec -> 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 CODEC.validate(