Switch to using ForgeFlower for Paper Only mc-dev imports

ForgeFlower is better than Spigots FernFlower at decompiling the source.

However, in order to maintain the CraftBukkit patches, we must keep
using spigots for the primary.

However, for any file that we import on top of Spigots imported files
there is nothing stopping us from using better decompiled files.

So these changes will use ForgeFlower to maintain a better set of
decomped files, so anything we add on top of Paper can start off
in a better spot.
This commit is contained in:
Aikar
2018-08-31 18:56:57 -04:00
parent bd4da1aea0
commit e82ef9ec05
74 changed files with 987 additions and 1045 deletions

View File

@@ -5,25 +5,25 @@ Subject: [PATCH] MC Utils
diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java
index 9f3aa2459..ca5c56c2b 100644
index 6ffc535146..5ed34cf7e3 100644
--- a/src/main/java/net/minecraft/server/BlockPosition.java
+++ b/src/main/java/net/minecraft/server/BlockPosition.java
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.Logger;
@Immutable
public class BlockPosition extends BaseBlockPosition {
- private static final Logger b = LogManager.getLogger();
+ //private static final Logger b = LogManager.getLogger(); // Paper - variable name conflict, logger isn't used
public static final BlockPosition ZERO = new BlockPosition(0, 0, 0);
private static final int c = 1 + MathHelper.e(MathHelper.c(30000000));
private static final int d = BlockPosition.c;
private static final int d = c;
@@ -0,0 +0,0 @@ public class BlockPosition extends BaseBlockPosition {
return d0 == 0.0D && d1 == 0.0D && d2 == 0.0D ? this : new BlockPosition((double) this.getX() + d0, (double) this.getY() + d1, (double) this.getZ() + d2);
return d0 == 0.0D && d1 == 0.0D && d2 == 0.0D ? this : new BlockPosition((double)this.getX() + d0, (double)this.getY() + d1, (double)this.getZ() + d2);
}
+ public BlockPosition add(int i, int j, int k) {return a(i, j, k);} // Paper - OBFHELPER
public BlockPosition a(int i, int j, int k) {
return i == 0 && j == 0 && k == 0 ? this : new BlockPosition(this.getX() + i, this.getY() + j, this.getZ() + k);
public BlockPosition a(int ix, int jx, int kx) {
return ix == 0 && jx == 0 && kx == 0 ? this : new BlockPosition(this.getX() + ix, this.getY() + jx, this.getZ() + kx);
}
@@ -0,0 +0,0 @@ public class BlockPosition extends BaseBlockPosition {
return this.d;
@@ -42,7 +42,7 @@ index 9f3aa2459..ca5c56c2b 100644
return this.c(MathHelper.floor(d0), MathHelper.floor(d1), MathHelper.floor(d2));
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index fe5328ef4..b7c40d5ce 100644
index fe5328ef47..b7c40d5ce6 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -0,0 +0,0 @@ import com.google.common.collect.Lists; // CraftBukkit
@@ -63,7 +63,7 @@ index fe5328ef4..b7c40d5ce 100644
public TileEntity a(BlockPosition blockposition, Chunk.EnumTileEntityState chunk_enumtileentitystate) {
// CraftBukkit start
diff --git a/src/main/java/net/minecraft/server/ChunkCoordIntPair.java b/src/main/java/net/minecraft/server/ChunkCoordIntPair.java
index 34586bca6..b0c004b1f 100644
index 744762b8b9..d9608121b6 100644
--- a/src/main/java/net/minecraft/server/ChunkCoordIntPair.java
+++ b/src/main/java/net/minecraft/server/ChunkCoordIntPair.java
@@ -0,0 +0,0 @@ public class ChunkCoordIntPair {
@@ -73,10 +73,10 @@ index 34586bca6..b0c004b1f 100644
+ public static long asLong(final BlockPosition pos) { return a(pos.getX() >> 4, pos.getZ() >> 4); } // Paper - OBFHELPER
+ public static long asLong(int x, int z) { return a(x, z); } // Paper - OBFHELPER
public static long a(int i, int j) {
return (long) i & 4294967295L | ((long) j & 4294967295L) << 32;
return (long)i & 4294967295L | ((long)j & 4294967295L) << 32;
}
diff --git a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
index 3b6b3b9a9..22af9c188 100644
index 3b6b3b9a99..22af9c1885 100644
--- a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
+++ b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.Logger;
@@ -89,7 +89,7 @@ index 3b6b3b9a9..22af9c188 100644
private final IChunkLoader e;
private final IAsyncTaskHandler f;
diff --git a/src/main/java/net/minecraft/server/DataBits.java b/src/main/java/net/minecraft/server/DataBits.java
index d24ec3d53..9e83610f1 100644
index 95ca5f6d80..0dc948a375 100644
--- a/src/main/java/net/minecraft/server/DataBits.java
+++ b/src/main/java/net/minecraft/server/DataBits.java
@@ -0,0 +0,0 @@ public class DataBits {
@@ -101,31 +101,34 @@ index d24ec3d53..9e83610f1 100644
return this.a;
}
diff --git a/src/main/java/net/minecraft/server/DataPalette.java b/src/main/java/net/minecraft/server/DataPalette.java
index dae40b9cd..0be0b0ef5 100644
index 7f905b1e09..5a88e8c911 100644
--- a/src/main/java/net/minecraft/server/DataPalette.java
+++ b/src/main/java/net/minecraft/server/DataPalette.java
@@ -0,0 +0,0 @@ import javax.annotation.Nullable;
@@ -0,0 +0,0 @@ package net.minecraft.server;
import javax.annotation.Nullable;
public interface DataPalette<T> {
+ default int getDataBits(T object) { return this.a(object); } // Paper - OBFHELPER
int a(T t0);
int a(T var1);
- @Nullable
- T a(int var1);
+ @Nullable default T getObject(int dataBits) { return this.a(dataBits); } // Paper - OBFHELPER
@Nullable
T a(int i);
+ @Nullable T a(int var1);
void b(PacketDataSerializer var1);
diff --git a/src/main/java/net/minecraft/server/DataPaletteBlock.java b/src/main/java/net/minecraft/server/DataPaletteBlock.java
index 030ec8704..575f9b558 100644
index 304e47bf20..6e7454b134 100644
--- a/src/main/java/net/minecraft/server/DataPaletteBlock.java
+++ b/src/main/java/net/minecraft/server/DataPaletteBlock.java
@@ -0,0 +0,0 @@ import java.util.stream.Collectors;
@@ -0,0 +0,0 @@ import java.util.function.Function;
import java.util.stream.Collectors;
public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
- private final DataPalette<T> b;
+ private final DataPalette<T> b; private final DataPalette<T> getDataPaletteGlobal() { return this.b; } // Paper - OBFHELPER
private final DataPaletteExpandable<T> c = (i, object) -> {
+ private final DataPalette<T> b;private final DataPalette<T> getDataPaletteGlobal() { return this.b; } // Paper - OBFHELPER
private final DataPaletteExpandable<T> c = (var0, var1) -> {
return 0;
};
@@ -0,0 +0,0 @@ public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
@@ -142,15 +145,15 @@ index 030ec8704..575f9b558 100644
private void b() {
@@ -0,0 +0,0 @@ public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
return j << 8 | k << 4 | i;
return jx << 8 | k << 4 | ix;
}
+ private void initialize(int bitsPerObject) { this.b(bitsPerObject); } // Paper - OBFHELPER
private void b(int i) {
if (i != this.i) {
this.i = i;
private void b(int ix) {
if (ix != this.i) {
this.i = ix;
@@ -0,0 +0,0 @@ public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
return object == null ? this.g : object;
return (T)(object == null ? this.g : object);
}
+ public void writeDataPaletteBlock(PacketDataSerializer packetDataSerializer) { this.b(packetDataSerializer); } // Paper - OBFHELPER
@@ -158,43 +161,56 @@ index 030ec8704..575f9b558 100644
this.b();
packetdataserializer.writeByte(this.i);
diff --git a/src/main/java/net/minecraft/server/EntityCreature.java b/src/main/java/net/minecraft/server/EntityCreature.java
index 2c6fbd1d6..3790039f1 100644
index 2c6fbd1d6f..a5c147b989 100644
--- a/src/main/java/net/minecraft/server/EntityCreature.java
+++ b/src/main/java/net/minecraft/server/EntityCreature.java
@@ -0,0 +0,0 @@ import org.bukkit.event.entity.EntityUnleashEvent;
public abstract class EntityCreature extends EntityInsentient {
+ public org.bukkit.craftbukkit.entity.CraftCreature getBukkitEntity() { return (org.bukkit.craftbukkit.entity.CraftCreature) super.getBukkitEntity(); } // Paper
+ public org.bukkit.craftbukkit.entity.CraftCreature getBukkitCreature() { return (org.bukkit.craftbukkit.entity.CraftCreature) super.getBukkitEntity(); } // Paper
private BlockPosition a;
private float b;
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index ebb177927f..60b1dcd8ea 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -0,0 +0,0 @@ public abstract class EntityInsentient extends EntityLiving {
return this.goalTarget;
}
+ public org.bukkit.craftbukkit.entity.CraftMob getBukkitMob() { return (org.bukkit.craftbukkit.entity.CraftMob) super.getBukkitEntity(); } // Paper
public void setGoalTarget(@Nullable EntityLiving entityliving) {
// CraftBukkit start - fire event
setGoalTarget(entityliving, EntityTargetEvent.TargetReason.UNKNOWN, true);
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index fd050c5f3..91c478588 100644
index fd050c5f32..8d33c16580 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -0,0 +0,0 @@ public abstract class EntityLiving extends Entity {
public org.bukkit.craftbukkit.attribute.CraftAttributeMap craftAttributes;
public boolean collides = true;
public boolean canPickUpLoot;
+ public org.bukkit.craftbukkit.entity.CraftLivingEntity getBukkitEntity() { return (org.bukkit.craftbukkit.entity.CraftLivingEntity) super.getBukkitEntity(); } // Paper
+ public org.bukkit.craftbukkit.entity.CraftLivingEntity getBukkitLivingEntity() { return (org.bukkit.craftbukkit.entity.CraftLivingEntity) super.getBukkitEntity(); } // Paper
@Override
public float getBukkitYaw() {
diff --git a/src/main/java/net/minecraft/server/EntityMonster.java b/src/main/java/net/minecraft/server/EntityMonster.java
index 96e012215..a3449e9a8 100644
index c0f48bbc29..f3cc2cef0a 100644
--- a/src/main/java/net/minecraft/server/EntityMonster.java
+++ b/src/main/java/net/minecraft/server/EntityMonster.java
@@ -0,0 +0,0 @@ package net.minecraft.server;
@@ -0,0 +0,0 @@
package net.minecraft.server;
public abstract class EntityMonster extends EntityCreature implements IMonster {
+ public org.bukkit.craftbukkit.entity.CraftMonster getBukkitEntity() { return (org.bukkit.craftbukkit.entity.CraftMonster) super.getBukkitEntity(); } // Paper
+
+ public org.bukkit.craftbukkit.entity.CraftMonster getBukkitMonster() { return (org.bukkit.craftbukkit.entity.CraftMonster) super.getBukkitEntity(); } // Paper
protected EntityMonster(EntityTypes<?> entitytypes, World world) {
super(entitytypes, world);
this.b_ = 5;
diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java
index 17bfa356f..5c1ab6a0b 100644
index 17bfa356f1..5c1ab6a0b6 100644
--- a/src/main/java/net/minecraft/server/EntityTypes.java
+++ b/src/main/java/net/minecraft/server/EntityTypes.java
@@ -0,0 +0,0 @@ package net.minecraft.server;
@@ -245,7 +261,7 @@ index 17bfa356f..5c1ab6a0b 100644
// Paper end
}
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index c54275bc2..318c4204d 100644
index c54275bc2f..318c4204df 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -0,0 +0,0 @@ import org.bukkit.TreeType;
@@ -276,7 +292,7 @@ index c54275bc2..318c4204d 100644
}
diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java
new file mode 100644
index 000000000..9f9341c98
index 0000000000..9f9341c98f
--- /dev/null
+++ b/src/main/java/net/minecraft/server/MCUtil.java
@@ -0,0 +0,0 @@
@@ -577,18 +593,18 @@ index 000000000..9f9341c98
+ }
+}
diff --git a/src/main/java/net/minecraft/server/NBTTagCompound.java b/src/main/java/net/minecraft/server/NBTTagCompound.java
index 7fc9b5ff3..e658816c2 100644
index 41cd3ceabe..2a66a30264 100644
--- a/src/main/java/net/minecraft/server/NBTTagCompound.java
+++ b/src/main/java/net/minecraft/server/NBTTagCompound.java
@@ -0,0 +0,0 @@ public class NBTTagCompound implements NBTBase {
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.Logger;
public class NBTTagCompound implements NBTBase {
private static final Logger f = LogManager.getLogger();
private static final Pattern g = Pattern.compile("[A-Za-z0-9._+-]+");
- private final Map<String, NBTBase> map = Maps.newHashMap();
+ public final Map<String, NBTBase> map = Maps.newHashMap(); // Paper
public NBTTagCompound() {}
public NBTTagCompound() {
}
@@ -0,0 +0,0 @@ public class NBTTagCompound implements NBTBase {
this.map.put(s, new NBTTagLong(i));
}
@@ -604,16 +620,25 @@ index 7fc9b5ff3..e658816c2 100644
public UUID a(String s) {
return new UUID(this.getLong(s + "Most"), this.getLong(s + "Least"));
@@ -0,0 +0,0 @@ public class NBTTagCompound implements NBTBase {
return chatcomponenttext;
}
public String toString() {
StringBuilder stringbuilder = new StringBuilder("{");
- Object object = this.map.keySet();
+ Collection<String> object = this.map.keySet(); // Paper - decompile fix
if (f.isDebugEnabled()) {
ArrayList arraylist = Lists.newArrayList(this.map.keySet());
Collections.sort(arraylist);
@@ -0,0 +0,0 @@ public class NBTTagCompound implements NBTBase {
}
-
// $FF: synthetic method
- public NBTBase clone() {
- return this.clone();
- }
+ public NBTBase clone_bad() { // Paper - decompile fix
return this.clone();
}
}
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
index 0afaea810..26da89724 100644
index 0afaea8109..26da897243 100644
--- a/src/main/java/net/minecraft/server/NetworkManager.java
+++ b/src/main/java/net/minecraft/server/NetworkManager.java
@@ -0,0 +0,0 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
@@ -654,7 +679,7 @@ index 0afaea810..26da89724 100644
public QueuedPacket(Packet<?> packet, @Nullable GenericFutureListener<? extends Future<? super Void>> genericfuturelistener) {
this.a = packet;
diff --git a/src/main/java/net/minecraft/server/PacketDataSerializer.java b/src/main/java/net/minecraft/server/PacketDataSerializer.java
index d04afceb7..a63a5811d 100644
index d04afceb70..a63a5811d6 100644
--- a/src/main/java/net/minecraft/server/PacketDataSerializer.java
+++ b/src/main/java/net/minecraft/server/PacketDataSerializer.java
@@ -0,0 +0,0 @@ public class PacketDataSerializer extends ByteBuf {
@@ -666,7 +691,7 @@ index d04afceb7..a63a5811d 100644
for (int j = 1; j < 5; ++j) {
if ((i & -1 << j * 7) == 0) {
diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
index a8363f47b..33436ac65 100644
index 12d6c99cf0..af382815f3 100644
--- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
+++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
@@ -0,0 +0,0 @@ public class PacketPlayOutMapChunk implements Packet<PacketListenerPlayOut> {
@@ -687,7 +712,7 @@ index a8363f47b..33436ac65 100644
int j = 0;
ChunkSection[] achunksection = chunk.getSections();
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 43bd6aba9..7dee734a7 100644
index d465608f37..1c57f6e738 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@@ -704,10 +729,10 @@ index 43bd6aba9..7dee734a7 100644
private volatile int chatThrottle;
private static final AtomicIntegerFieldUpdater chatSpamField = AtomicIntegerFieldUpdater.newUpdater(PlayerConnection.class, "chatThrottle");
diff --git a/src/main/java/net/minecraft/server/RegistryBlockID.java b/src/main/java/net/minecraft/server/RegistryBlockID.java
index 7cc7eb773..a804a67e1 100644
index a21006290c..6c6f006f3a 100644
--- a/src/main/java/net/minecraft/server/RegistryBlockID.java
+++ b/src/main/java/net/minecraft/server/RegistryBlockID.java
@@ -0,0 +0,0 @@ public class RegistryBlockID<T> implements Registry { // Paper - decompile fix
@@ -0,0 +0,0 @@ public class RegistryBlockID<T> implements Registry<T> {
return Iterators.filter(this.c.iterator(), Predicates.notNull());
}