mirror of
https://github.com/YatopiaMC/Yatopia.git
synced 2024-12-01 15:13:24 +01:00
939aa76bf3
Upstream/An Sidestream has released updates that appears to apply and compile correctly This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing. Tuinity Changes: f32fe9a Updated Upstream (Paper) Airplane Changes: 125aff7 Updated Upstream (Tuinity) Origami Changes: 756162f Update Paper 2f9721c Update snakeyaml and enable comment loading/saving
50 lines
2.5 KiB
Diff
50 lines
2.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: JellySquid <jellysquid+atwork@protonmail.com>
|
|
Date: Mon, 11 May 2020 21:00:44 +0200
|
|
Subject: [PATCH] lithium MixinDirection
|
|
|
|
Original code by JellySquid, licensed under GNU Lesser General Public License v3.0
|
|
you can find the original code on https://github.com/CaffeineMC/lithium-fabric/ (Yarn mappings)
|
|
|
|
diff --git a/src/main/java/net/minecraft/core/EnumDirection.java b/src/main/java/net/minecraft/core/EnumDirection.java
|
|
index 0a40df2151bd388b6633a6f50b14f1f41ed4ce62..e7f56ae5214af02e5dbcf16b781032545702a0d8 100644
|
|
--- a/src/main/java/net/minecraft/core/EnumDirection.java
|
|
+++ b/src/main/java/net/minecraft/core/EnumDirection.java
|
|
@@ -24,7 +24,7 @@ public enum EnumDirection implements INamable {
|
|
DOWN(0, 1, -1, "down", EnumDirection.EnumAxisDirection.NEGATIVE, EnumDirection.EnumAxis.Y, new BaseBlockPosition(0, -1, 0)), UP(1, 0, -1, "up", EnumDirection.EnumAxisDirection.POSITIVE, EnumDirection.EnumAxis.Y, new BaseBlockPosition(0, 1, 0)), NORTH(2, 3, 2, "north", EnumDirection.EnumAxisDirection.NEGATIVE, EnumDirection.EnumAxis.Z, new BaseBlockPosition(0, 0, -1)), SOUTH(3, 2, 0, "south", EnumDirection.EnumAxisDirection.POSITIVE, EnumDirection.EnumAxis.Z, new BaseBlockPosition(0, 0, 1)), WEST(4, 5, 1, "west", EnumDirection.EnumAxisDirection.NEGATIVE, EnumDirection.EnumAxis.X, new BaseBlockPosition(-1, 0, 0)), EAST(5, 4, 3, "east", EnumDirection.EnumAxisDirection.POSITIVE, EnumDirection.EnumAxis.X, new BaseBlockPosition(1, 0, 0));
|
|
|
|
private final int g;
|
|
- private final int h;
|
|
+ private final int h; // Yatopia this is idOpposit(yarn)
|
|
private final int i;
|
|
private final String j;
|
|
private final EnumDirection.EnumAxis k;
|
|
@@ -112,8 +112,12 @@ public enum EnumDirection implements INamable {
|
|
return this.l;
|
|
}
|
|
|
|
+ /**
|
|
+ * @reason Avoid the modulo/abs operations
|
|
+ * @author JellySquid
|
|
+ */
|
|
public EnumDirection opposite() {
|
|
- return fromType1(this.h);
|
|
+ return getValues()[this.h];
|
|
}
|
|
|
|
public EnumDirection g() {
|
|
@@ -199,8 +203,12 @@ public enum EnumDirection implements INamable {
|
|
return (float) ((this.i & 3) * 90);
|
|
}
|
|
|
|
+ /**
|
|
+ * @reason Do not allocate an excessive number of Direction arrays
|
|
+ * @author JellySquid
|
|
+ */
|
|
public static EnumDirection a(Random random) {
|
|
- return (EnumDirection) SystemUtils.a((Object[]) EnumDirection.n, random);
|
|
+ return getValues()[random.nextInt(getValues().length)];
|
|
}
|
|
|
|
public static EnumDirection a(double d0, double d1, double d2) {
|