1
0
Fork 0
mirror of https://github.com/PaperMC/Paper.git synced 2025-02-03 21:37:28 +01:00

Stop stripping private use block Unicode from signs

Fixes GH-2943
This commit is contained in:
Zach Brown 2020-02-10 22:35:46 -06:00
parent b8d82b73ea
commit 00156eda4d
46 changed files with 74 additions and 165 deletions
Spigot-Server-Patches
Activation-Range-Improvements.patchAdd-APIs-to-replace-OfflinePlayer-getLastPlayed.patchAdd-LivingEntity-getTargetEntity.patchAdd-ThrownEggHatchEvent.patchAnti-Xray.patchAsynchronous-chunk-IO-and-loading.patchBees-get-gravity-in-void.-Fixes-MC-167279.patchBlockDestroyEvent.patchBook-Size-Limits.patchCatch-exceptions-from-dispenser-entity-spawns.patchChunk-debug-command.patchChunkMapDistance-CME.patchDo-less-work-if-we-have-a-custom-Bukkit-generator.patchDon-t-check-ConvertSigns-boolean-every-sign-save.patchDuplicate-UUID-Resolve-Option.patchEntity-getEntitySpawnReason.patchFix-CB-call-to-changed-postToMainThread-method.patchFix-PlayerEditBookEvent.patchFix-World-isChunkGenerated-calls.patchFix-issues-with-entity-loss-due-to-unloaded-chunks.patchFix-items-not-falling-correctly.patchFix-items-vanishing-through-end-portal.patchFix-sign-edit-memory-leak.patchFix-some-generation-concurrency-issues.patchFix-zero-tick-instant-grow-farms-MC-113809.patchImplement-alternative-item-despawn-rate.patchMC-145656-Fix-Follow-Range-Initial-Target.patchMark-entities-as-being-ticked-when-notifying-navigat.patchOnly-count-Natural-Spawned-mobs-towards-natural-spaw.patchOptimise-IEntityAccess-getPlayerByUUID.patchOptimize-Captured-TileEntity-Lookup.patchOptimize-redstone-algorithm.patchPer-Player-View-Distance-API-placeholders.patchPlayerDeathEvent-getItemsToKeep.patchPrevent-Enderman-from-loading-chunks.patchPrevent-bees-loading-chunks-checking-hive-position.patchReduce-sync-loads.patchStrip-private-area-unicode-characters-from-signs.patchUse-ChunkStatus-cache-when-saving-protochunks.patchUse-Vanilla-Minecart-Speeds.patchUse-getChunkIfLoadedImmediately-in-places.patchWorkaround-for-vehicle-tracking-issue-on-disconnect.patchdon-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patchforce-entity-dismount-during-teleportation.patchimplement-optional-per-player-mob-spawns.patchincremental-chunk-saving.patch

View file

@ -10,7 +10,7 @@ Fixes and adds new Immunities to improve gameplay behavior
Adds water Mobs to activation range config and nerfs fish
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 2917e1bd4..ac34a1008 100644
index 6b5e92de0..2e4b50a19 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@ -34,7 +34,7 @@ index b40c8d2f8..4eda13075 100644
protected EntityCreature(EntityTypes<? extends EntityCreature> entitytypes, World world) {
super(entitytypes, world);
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index 5fb3c948d..e0355d3a3 100644
index cc10db88b..e54f1e840 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 {

View file

@ -16,7 +16,7 @@ intent to remove) and replace it with two new methods, clearly named and
documented as to their purpose.
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 83b7ac459..f51893892 100644
index 68e12cf98..d3bfb72e3 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -0,0 +0,0 @@ public class EntityPlayer extends EntityHuman implements ICrafting {

View file

@ -46,7 +46,7 @@ index 4f60b931a..c950139c0 100644
double[] adouble = new double[]{1.0D};
double d0 = vec3d1.x - vec3d.x;
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 508093063..0c50a1d54 100644
index ec4cac942..7d27c08b9 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke

View file

@ -7,7 +7,7 @@ Adds a new event similar to PlayerEggThrowEvent, but without the Player requirem
(dispensers can throw eggs to hatch them, too).
diff --git a/src/main/java/net/minecraft/server/EntityEgg.java b/src/main/java/net/minecraft/server/EntityEgg.java
index 970f9109d9..bdd82d052a 100644
index 970f9109d..bdd82d052 100644
--- a/src/main/java/net/minecraft/server/EntityEgg.java
+++ b/src/main/java/net/minecraft/server/EntityEgg.java
@@ -0,0 +0,0 @@ public class EntityEgg extends EntityProjectileThrowable {

View file

@ -1558,7 +1558,7 @@ index 5108d3ee9..b556a8fef 100644
this.a(new PacketPlayOutMultiBlockChange(this.dirtyCount, this.dirtyBlocks, chunk), false);
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index 14dd813ed..e3c3c1d58 100644
index 41a7b160c..8525c3ab9 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {

View file

@ -3055,7 +3055,7 @@ index b556a8fef..b82ea26eb 100644
completablefuture = (CompletableFuture) this.statusFutures.get(i);
if (completablefuture != null) {
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index e3c3c1d58..bce04cad0 100644
index 8525c3ab9..85b21012e 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {

View file

@ -31,7 +31,7 @@ index 2b6ac2eeb..0496c0c5d 100644
this.h = ControllerMove.Operation.WAIT;
this.a.setNoGravity(true);
diff --git a/src/main/java/net/minecraft/server/EntityBee.java b/src/main/java/net/minecraft/server/EntityBee.java
index e039ec536..7fdfe9b92 100644
index 73e016257..c7d79efdf 100644
--- a/src/main/java/net/minecraft/server/EntityBee.java
+++ b/src/main/java/net/minecraft/server/EntityBee.java
@@ -0,0 +0,0 @@ public class EntityBee extends EntityAnimal implements EntityBird {

View file

@ -11,7 +11,7 @@ floating in the air.
This can replace many uses of BlockPhysicsEvent
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 2a1359f7d9..0409d62e71 100644
index 8f0b516e8..69f1494ab 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -0,0 +0,0 @@ public abstract class World implements GeneratorAccess, AutoCloseable {

View file

@ -22,7 +22,7 @@ index 7e85a0224..30f35304a 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index d263897da..e5db2de26 100644
index b21fca9e5..784f0a3f2 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -0,0 +0,0 @@ import java.util.Iterator;

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Catch exceptions from dispenser entity spawns
diff --git a/src/main/java/net/minecraft/server/IDispenseBehavior.java b/src/main/java/net/minecraft/server/IDispenseBehavior.java
index abc0cd346..9a8be1474 100644
index 5a8c4dc6b..b6b7e3c6c 100644
--- a/src/main/java/net/minecraft/server/IDispenseBehavior.java
+++ b/src/main/java/net/minecraft/server/IDispenseBehavior.java
@@ -0,0 +0,0 @@ public interface IDispenseBehavior {

View file

@ -32,7 +32,7 @@ https://bugs.mojang.com/browse/MC-141484?focusedCommentId=528273&page=com.atlass
https://bugs.mojang.com/browse/MC-141484?focusedCommentId=528577&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-528577
diff --git a/src/main/java/com/destroystokyo/paper/PaperCommand.java b/src/main/java/com/destroystokyo/paper/PaperCommand.java
index d704fc79c0..09efbf7250 100644
index d704fc79c..09efbf725 100644
--- a/src/main/java/com/destroystokyo/paper/PaperCommand.java
+++ b/src/main/java/com/destroystokyo/paper/PaperCommand.java
@@ -0,0 +0,0 @@ public class PaperCommand extends Command {
@ -185,7 +185,7 @@ index d704fc79c0..09efbf7250 100644
* Ported from MinecraftForge - author: LexManos <LexManos@gmail.com> - License: LGPLv2.1
*/
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 3ef7e4561f..35153af515 100644
index 242ff923a..bedf47b78 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.Logger;
@ -198,7 +198,7 @@ index 3ef7e4561f..35153af515 100644
public final ChunkGenerator<?> chunkGenerator;
private final WorldServer world;
diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java
index 3a482466ec..b6aeca05f7 100644
index 3a482466e..b6aeca05f 100644
--- a/src/main/java/net/minecraft/server/MCUtil.java
+++ b/src/main/java/net/minecraft/server/MCUtil.java
@@ -0,0 +0,0 @@ import com.destroystokyo.paper.block.TargetBlockInfo;
@ -399,7 +399,7 @@ index 3a482466ec..b6aeca05f7 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java
index 3093154bb7..3a0f0314b2 100644
index 3093154bb..3a0f0314b 100644
--- a/src/main/java/net/minecraft/server/PlayerChunk.java
+++ b/src/main/java/net/minecraft/server/PlayerChunk.java
@@ -0,0 +0,0 @@ public class PlayerChunk {
@ -412,7 +412,7 @@ index 3093154bb7..3a0f0314b2 100644
private int dirtyCount;
private int r;
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index b3fa3bd874..803fda511f 100644
index 40f0b2dea..999f0bb43 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@ -434,7 +434,7 @@ index b3fa3bd874..803fda511f 100644
private final DefinedStructureManager definedStructureManager;
private final File w;
diff --git a/src/main/java/net/minecraft/server/Ticket.java b/src/main/java/net/minecraft/server/Ticket.java
index 77bb6b092a..7a8397815a 100644
index 77bb6b092..7a8397815 100644
--- a/src/main/java/net/minecraft/server/Ticket.java
+++ b/src/main/java/net/minecraft/server/Ticket.java
@@ -0,0 +0,0 @@ public final class Ticket<T> implements Comparable<Ticket<?>> {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] ChunkMapDistance CME
diff --git a/src/main/java/net/minecraft/server/ChunkMapDistance.java b/src/main/java/net/minecraft/server/ChunkMapDistance.java
index a35f0e18b..8c1945687 100644
index 8b3b1f9bd..73d157076 100644
--- a/src/main/java/net/minecraft/server/ChunkMapDistance.java
+++ b/src/main/java/net/minecraft/server/ChunkMapDistance.java
@@ -0,0 +0,0 @@ public abstract class ChunkMapDistance {

View file

@ -7,7 +7,7 @@ If the Bukkit generator already has a spawn, use it immediately instead
of spending time generating one that we won't use
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 6d362316f..9055df2ca 100644
index 26d1303dd..edffae055 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {

View file

@ -7,17 +7,17 @@ property lookups arent super cheap. they synchronize, validate
and check security managers.
diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java
index f051f2d3c..5eb86c434 100644
index a93402019..0e9a90b70 100644
--- a/src/main/java/net/minecraft/server/TileEntitySign.java
+++ b/src/main/java/net/minecraft/server/TileEntitySign.java
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
private static final boolean keepInvalidUnicode = Boolean.getBoolean("Paper.keepInvalidUnicode"); // Allow people to keep their bad unicode if they really want it
private boolean privateUnicodeRemoved = false;
public java.util.UUID signEditor;
+ private static final boolean CONVERT_LEGACY_SIGNS = Boolean.getBoolean("convertLegacySigns");
// Paper end
private final String[] g = new String[4];
private EnumColor color;
public java.util.UUID signEditor; // Paper
+ private static final boolean CONVERT_LEGACY_SIGNS = Boolean.getBoolean("convertLegacySigns"); // Paper
public TileEntitySign() {
super(TileEntityTypes.SIGN);
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
}

View file

@ -93,7 +93,7 @@ index c464d6962..3882e5b2a 100644
int k = MathHelper.floor(entity.locY() / 16.0D);
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index c440c2863..5f5a7d479 100644
index dd17967c6..2b452be4b 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@ -105,7 +105,7 @@ index c440c2863..5f5a7d479 100644
this.uniqueID = uuid;
this.am = this.uniqueID.toString();
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index 64335c288..f20bc3a96 100644
index fea28eec7..40f0b2dea 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@

View file

@ -10,7 +10,7 @@ persistenting Living Entity, SPAWNER for spawners,
or DEFAULT since data was not stored.
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 0c50a1d54..c440c2863 100644
index 7d27c08b9..dd17967c6 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Fix CB call to changed postToMainThread method
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 17eeecaf4..8c54022e0 100644
index eee96c3a1..691331217 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 {

View file

@ -10,7 +10,7 @@ it impossible to properly cancel the event or modify the book meta
cancelled writing
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index e5db2de26..c3feccbd6 100644
index 784f0a3f2..4b3ddfd99 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 {

View file

@ -132,7 +132,7 @@ index c91312fac..5108d3ee9 100644
public CompletableFuture<Either<IChunkAccess, PlayerChunk.Failure>> getStatusFutureUnchecked(ChunkStatus chunkstatus) {
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index 7a4778ed6..0964b73d8 100644
index a46d4661d..3dcd23a42 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {

View file

@ -19,7 +19,7 @@ This change ensures the chunks are always loaded when entities are
added to the world, or a valid entity moves between chunks.
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 7492284703..4a648f88ba 100644
index 8074050b4..fd0edea78 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {

View file

@ -15,7 +15,7 @@ This patch resolves the conflict by offsetting checking an item's
move method from Spigot's entity activation range check.
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
index e61af3f5e..d15a9fcfb 100644
index 507627a29..2926fbb95 100644
--- a/src/main/java/net/minecraft/server/EntityItem.java
+++ b/src/main/java/net/minecraft/server/EntityItem.java
@@ -0,0 +0,0 @@ public class EntityItem extends Entity {

View file

@ -13,7 +13,7 @@ Quickly loading the exact world spawn chunk before searching the
heightmap resolves the issue without having to load all spawn chunks.
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 05862e0e7..e6727c58a 100644
index 2e4b50a19..acb7848d8 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke

View file

@ -19,17 +19,17 @@ index 4b3ddfd99..2c94ca6a8 100644
this.sendPacket(tileentity.getUpdatePacket()); // CraftBukkit
return;
diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java
index 4c2273497..f051f2d3c 100644
index 03f6ddf00..a93402019 100644
--- a/src/main/java/net/minecraft/server/TileEntitySign.java
+++ b/src/main/java/net/minecraft/server/TileEntitySign.java
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
// Paper start - Strip invalid unicode from signs on load
private static final boolean keepInvalidUnicode = Boolean.getBoolean("Paper.keepInvalidUnicode"); // Allow people to keep their bad unicode if they really want it
private boolean privateUnicodeRemoved = false;
+ public java.util.UUID signEditor;
// Paper end
private EntityHuman c;
private final String[] g = new String[4];
private EnumColor color;
+ public java.util.UUID signEditor; // Paper
public TileEntitySign() {
super(TileEntityTypes.SIGN);
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
}

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Fix some generation concurrency issues
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 61faf87179..c089080a90 100644
index 406e5c60a..e2cac4a92 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -0,0 +0,0 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@ -33,7 +33,7 @@ index 61faf87179..c089080a90 100644
public CraftWorld getWorld() {
return this.world;
diff --git a/src/main/java/net/minecraft/server/WorldGenFeatureStateProviderWeighted.java b/src/main/java/net/minecraft/server/WorldGenFeatureStateProviderWeighted.java
index 22e14fe1e9..e2af6d43b2 100644
index 22e14fe1e..e2af6d43b 100644
--- a/src/main/java/net/minecraft/server/WorldGenFeatureStateProviderWeighted.java
+++ b/src/main/java/net/minecraft/server/WorldGenFeatureStateProviderWeighted.java
@@ -0,0 +0,0 @@ public class WorldGenFeatureStateProviderWeighted extends WorldGenFeatureStatePr
@ -59,7 +59,7 @@ index 22e14fe1e9..e2af6d43b2 100644
builder.put(dynamicops.createString("type"), dynamicops.createString(IRegistry.t.getKey(this.a).toString())).put(dynamicops.createString("entries"), this.b.a(dynamicops, (iblockdata) -> {
diff --git a/src/main/java/net/minecraft/server/WorldGenStronghold.java b/src/main/java/net/minecraft/server/WorldGenStronghold.java
index fc4348b602..44be7169ff 100644
index fc4348b60..44be7169f 100644
--- a/src/main/java/net/minecraft/server/WorldGenStronghold.java
+++ b/src/main/java/net/minecraft/server/WorldGenStronghold.java
@@ -0,0 +0,0 @@ import javax.annotation.Nullable;

View file

@ -81,7 +81,7 @@ index 55b07444e..3bc3c5aa2 100644
for (i = 1; worldserver.getType(blockposition.down(i)).getBlock() == this; ++i) {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 5ec0acc30..569ae0b9e 100644
index 88cc8763f..b2d8f7b9f 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {

View file

@ -80,7 +80,7 @@ index a09282e00..9d9260ad0 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
index a0d1e7fd2..e61af3f5e 100644
index ef2cf6565..507627a29 100644
--- a/src/main/java/net/minecraft/server/EntityItem.java
+++ b/src/main/java/net/minecraft/server/EntityItem.java
@@ -0,0 +0,0 @@ import java.util.Objects;

View file

@ -19,7 +19,7 @@ index 3bbf77a8e..f8d8cb865 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalNearestAttackableTarget.java b/src/main/java/net/minecraft/server/PathfinderGoalNearestAttackableTarget.java
index 5a2fa079e..b81b9a9a4 100644
index cd17bf2be..b85e67a85 100644
--- a/src/main/java/net/minecraft/server/PathfinderGoalNearestAttackableTarget.java
+++ b/src/main/java/net/minecraft/server/PathfinderGoalNearestAttackableTarget.java
@@ -0,0 +0,0 @@ public class PathfinderGoalNearestAttackableTarget<T extends EntityLiving> exten

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Mark entities as being ticked when notifying navigation
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index e9d3424103..0f652e58e1 100644
index bc789fc29..27dcc2528 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {

View file

@ -38,7 +38,7 @@ index df24e3297..4c5010936 100644
public boolean asynchronous;
public EngineMode engineMode;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 7bf0b8708..53172dac2 100644
index 729cf3ee5..bc789fc29 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {

View file

@ -23,7 +23,7 @@ index d5c284cdd..4157e50e4 100644
EntityHuman entityhuman = (EntityHuman) this.getPlayers().get(i);
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 569ae0b9e..6ec394da5 100644
index b2d8f7b9f..0fed33713 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {

View file

@ -10,7 +10,7 @@ Optimize to check if the captured list even has values in it, and also to
just do a get call since the value can never be null.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 0409d62e71..065cb3c29a 100644
index 69f1494ab..b506f5871 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -0,0 +0,0 @@ public abstract class World implements GeneratorAccess, AutoCloseable {

View file

@ -19,7 +19,7 @@ Aside from making the obvious class/function renames and obfhelpers I didn't nee
Just added Bukkit's event system and took a few liberties with dead code and comment misspellings.
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 0862a1d629..4ba72275b9 100644
index 0862a1d62..4ba72275b 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -0,0 +0,0 @@ public class PaperWorldConfig {
@ -39,7 +39,7 @@ index 0862a1d629..4ba72275b9 100644
}
diff --git a/src/main/java/com/destroystokyo/paper/util/RedstoneWireTurbo.java b/src/main/java/com/destroystokyo/paper/util/RedstoneWireTurbo.java
new file mode 100644
index 0000000000..b69803cbf2
index 000000000..b69803cbf
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/util/RedstoneWireTurbo.java
@@ -0,0 +0,0 @@
@ -959,7 +959,7 @@ index 0000000000..b69803cbf2
+ }
+}
diff --git a/src/main/java/net/minecraft/server/BlockRedstoneWire.java b/src/main/java/net/minecraft/server/BlockRedstoneWire.java
index 5bf2fc0b3f..52a4982ecd 100644
index 5bf2fc0b3..52a4982ec 100644
--- a/src/main/java/net/minecraft/server/BlockRedstoneWire.java
+++ b/src/main/java/net/minecraft/server/BlockRedstoneWire.java
@@ -0,0 +0,0 @@
@ -1127,7 +1127,7 @@ index 5bf2fc0b3f..52a4982ecd 100644
c(iblockdata, world, blockposition);
world.a(blockposition, false);
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index c7b4734e94..2a1359f7d9 100644
index 4ef619118..8f0b516e8 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -0,0 +0,0 @@ public abstract class World implements GeneratorAccess, AutoCloseable {

View file

@ -7,7 +7,7 @@ I hope to look at this more in-depth soon. It appears doable.
However this should not block the update.
diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java
index 3df8e30ec..9acdd6e56 100644
index 6a4ccaeb0..af10fc36e 100644
--- a/src/main/java/net/minecraft/server/EntityEnderDragon.java
+++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java
@@ -0,0 +0,0 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster {

View file

@ -8,7 +8,7 @@ Exposes a mutable array on items a player should keep on death
Example Usage: https://gist.github.com/aikar/5bb202de6057a051a950ce1f29feb0b4
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 4d614b9ef1..77ad4774ec 100644
index 4d614b9ef..77ad4774e 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -0,0 +0,0 @@ public class EntityPlayer extends EntityHuman implements ICrafting {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Prevent Enderman from loading chunks
diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java
index 149de2c57..8741df83b 100644
index d86f76f30..212636dcb 100644
--- a/src/main/java/net/minecraft/server/EntityEnderman.java
+++ b/src/main/java/net/minecraft/server/EntityEnderman.java
@@ -0,0 +0,0 @@ public class EntityEnderman extends EntityMonster {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Prevent bees loading chunks checking hive position
diff --git a/src/main/java/net/minecraft/server/EntityBee.java b/src/main/java/net/minecraft/server/EntityBee.java
index d1d7db062..f67d66b9a 100644
index b39599654..73e016257 100644
--- a/src/main/java/net/minecraft/server/EntityBee.java
+++ b/src/main/java/net/minecraft/server/EntityBee.java
@@ -0,0 +0,0 @@ public class EntityBee extends EntityAnimal implements EntityBird {

View file

@ -268,7 +268,7 @@ index 000000000..59aec1032
+ }
+}
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index c6ece425d..5b6b55cc0 100644
index 2c1937cbe..81d386b4c 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -0,0 +0,0 @@ public class ChunkProviderServer extends IChunkProvider {
@ -311,7 +311,7 @@ index bfbbfb1ba..a2f7c032d 100644
if (chunk != null) {
chunk.a(oclass, axisalignedbb, list, predicate);
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 5eb52817f..6d362316f 100644
index 6506daeec..26d1303dd 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {

View file

@ -1,91 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Zach Brown <1254957+zachbr@users.noreply.github.com>
Date: Tue, 23 Oct 2018 20:53:43 -0400
Subject: [PATCH] Strip private area unicode characters from signs
It is not immediately clear how these characters ended up on signs in
previous versions. It is clear, however, that they now render as empty
unicode boxes in 1.13, whereas previously they rendered as invisible
characters.
When these signs are loaded in versions after this commit, these
characters from the private use area of the Unicode block will be
stripped. The sign will then be marked to ensure this conversion only
runs once.
There is a flag -DPaper.keepInvalidUnicode=true that can be used if you
do not want us to strip these characters from your signs, though I can
think of no reason to use it.
Fixes GH-1571
diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java
index 03f6ddf00..4c2273497 100644
--- a/src/main/java/net/minecraft/server/TileEntitySign.java
+++ b/src/main/java/net/minecraft/server/TileEntitySign.java
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
private final String[] g = new String[4];
private EnumColor color;
+ // Paper start - Strip invalid unicode from signs on load
+ private static final boolean keepInvalidUnicode = Boolean.getBoolean("Paper.keepInvalidUnicode"); // Allow people to keep their bad unicode if they really want it
+ private boolean privateUnicodeRemoved = false;
+ // Paper end
+
public TileEntitySign() {
super(TileEntityTypes.SIGN);
this.color = EnumColor.BLACK;
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
// CraftBukkit end
nbttagcompound.setString("Color", this.color.b());
+ // Paper start - Only remove private area unicode once // TODO - this doesn't need to run for every sign, check data ver
+ if (this.privateUnicodeRemoved) {
+ nbttagcompound.setBoolean("Paper.RemovedPrivateUnicode", true);
+ }
+ // Paper end
+
return nbttagcompound;
}
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
super.load(nbttagcompound);
this.color = EnumColor.a(nbttagcompound.getString("Color"), EnumColor.BLACK);
+ // Paper start - Keep track, only do it once per sign
+ this.privateUnicodeRemoved = nbttagcompound.getBoolean("Paper.RemovedPrivateUnicode");
+ boolean ranUnicodeRemoval = false;
+ // Paper end
+
// CraftBukkit start - Add an option to convert signs correctly
// This is done with a flag instead of all the time because
// we have no way to tell whether a sign is from 1.7.10 or 1.8
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
s = "\"\"";
}
+ // Paper start - Strip private use area unicode from signs
+ if (s != null && !keepInvalidUnicode && !this.privateUnicodeRemoved) {
+ StringBuilder builder = new StringBuilder();
+ for (char character : s.toCharArray()) {
+ if (Character.UnicodeBlock.of(character) != Character.UnicodeBlock.PRIVATE_USE_AREA) {
+ builder.append(character);
+ }
+ }
+ s = builder.toString();
+ ranUnicodeRemoval = true;
+ }
+ // Paper end
+
try {
//IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s.isEmpty() ? "\"\"" : s); // Paper - move down - the old format might throw a json error
@@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity implements ICommandListener { //
this.g[i] = null;
}
+ if (ranUnicodeRemoval) this.privateUnicodeRemoved = true; // Paper - Flag to write NBT
}
public void a(int i, IChatBaseComponent ichatbasecomponent) {
--

View file

@ -7,7 +7,7 @@ The cache should contain the chunk status when saving. If not it
will load it.
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index 6c4804232a..8bd212388a 100644
index 3dcd23a42..41a7b160c 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Use Vanilla Minecart Speeds
CraftBukkit changed the values on flying speed, restore back to vanilla
diff --git a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
index 1b64ad824..4388186db 100644
index c2843d5d6..665bbe07f 100644
--- a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
+++ b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
@@ -0,0 +0,0 @@ public abstract class EntityMinecartAbstract extends Entity {

View file

@ -8,7 +8,7 @@ ticket level 33 (yes getChunkIfLoaded will actually perform a chunk
load in that case).
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index a92f251ca..2917e1bd4 100644
index 2b452be4b..6b5e92de0 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@ -21,7 +21,7 @@ index a92f251ca..2917e1bd4 100644
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 8c54022e0..f6fbba36f 100644
index 691331217..f88bcb29d 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 {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Workaround for vehicle tracking issue on disconnect
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index d3bfb72e39..4d614b9ef1 100644
index d3bfb72e3..4d614b9ef 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -0,0 +0,0 @@ public class EntityPlayer extends EntityHuman implements ICrafting {

View file

@ -6,7 +6,7 @@ Subject: [PATCH] don't go below 0 for pickupDelay, breaks picking up items
vanilla checks for == 0
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
index 5f46c7f86..a0d1e7fd2 100644
index e5c9bac88..ef2cf6565 100644
--- a/src/main/java/net/minecraft/server/EntityItem.java
+++ b/src/main/java/net/minecraft/server/EntityItem.java
@@ -0,0 +0,0 @@ public class EntityItem extends Entity {

View file

@ -20,7 +20,7 @@ this is going to be the best soultion all around.
Improvements/suggestions welcome!
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 7ce0ed251..508093063 100644
index 166c1295d..ec4cac942 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke

View file

@ -545,7 +545,7 @@ index 000000000..4f13d3ff8
+ }
+}
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 5b6b55cc0..7edbd0aac 100644
index 81d386b4c..e5af40e9f 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -0,0 +0,0 @@ public class ChunkProviderServer extends IChunkProvider {
@ -643,7 +643,7 @@ index 79f854966..4100e367a 100644
return this.bb;
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index 9fa6d2b52..36657465f 100644
index 85b21012e..46d205380 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@ -755,7 +755,7 @@ index fdac5bb3a..58bbf2f9d 100644
@Nullable
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 9055df2ca..5ec0acc30 100644
index edffae055..88cc8763f 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {

View file

@ -29,7 +29,7 @@ index 071e5e7f7..486761521 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index d9c53cdc4..76e87c211 100644
index 3882e5b2a..4d300699f 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -0,0 +0,0 @@ public class Chunk implements IChunkAccess {
@ -42,7 +42,7 @@ index d9c53cdc4..76e87c211 100644
private long inhabitedTime;
@Nullable
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index da0f3ada2..13a08bbfb 100644
index bedf47b78..7bbcc8cd7 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -0,0 +0,0 @@ public class ChunkProviderServer extends IChunkProvider {
@ -175,7 +175,7 @@ index 3a0f0314b..c91312fac 100644
public void a(ProtoChunkExtension protochunkextension) {
for (int i = 0; i < this.statusFutures.length(); ++i) {
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index 803fda511..40d80f381 100644
index 999f0bb43..a46d4661d 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -0,0 +0,0 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@ -261,7 +261,7 @@ index 803fda511..40d80f381 100644
return PlayerChunk.getChunkState(playerchunk.getTicketLevel());
});
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 32da4eb4e..fae30a1c1 100644
index 5f9930447..729cf3ee5 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -0,0 +0,0 @@ public class WorldServer extends World {