mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 15:00:13 +01:00
Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Warning: this commit contains more mapping changes from upstream, As always, ensure that you have working backups and test this build before deployment; Developers working on paper will, yet again, need to delete their work/Minecraft/1.13.2 folder Bukkit Changes: 7fca5fd4 SPIGOT-4558: Preserve user order in the face of copied defaults in configurations 15c9b1eb Ignore spurious slot IDs sent by client, e.g. in enchanting tables 5d2a10c5 SPIGOT-3747: Add API for force loaded chunks d6dd2bb3 SPIGOT-3538: Add getHitBlockFace for ProjectileHitEvent 771db4aa SPIGOT-794: Call EntityPlaceEvent for Minecart placement 55462509 Add InventoryView#getSlotType 2f3ce5b6 Remove EntityTransformEvent and CustomItemTagContainer from draft API f04ad7b6 Make ProjectileLaunchEvent extend EntitySpawnEvent ccb85808 Define EntitySpawnEvent b8cc3ebe Add PlayerItemDamageEvent 184a495d Ease ClassLoader Deadlocks Where Possible 11ac4728 Expand Boolean Prompt Values in Conversation API aae62d51 Added getAllSessionData() to the Conversation API. 9290ff91 Add InventoryView#getInventory API 995e530f Add API to get / set base arrow damage CraftBukkit Changes:c4a67eed
SPIGOT-4556: Fix plugins closing inventory during drop events5be2ddcb
Replace version constants with methods to prevent compiler inlininga5b9c7b3
Use API method to create offset command completions2bc7d1df
SPIGOT-3747: Add API for force loaded chunksa408f375
SPIGOT-3538: Add getHitBlockFace for ProjectileHitEventb54b9409
SPIGOT-2864: Make Arrow / Item setTicksLived behave like FallingBlock79ded7a8
SPIGOT-1811: Death message not shown on respawn screenb4a4f15d
SPIGOT-943: InventoryCloseEvent called on death regardless of open inventory0afed592
SPIGOT-794: Call EntityPlaceEvent for Minecart placement2b2d084a
Add InventoryView#getSlotType01a9959a
Do not use deprecated ItemSpawnEvent constructor9642498d
SPIGOT-4547: Call EntitySpawnEvent as general spawn fallback event963f4a5f
Add PlayerItemDamageEvent63db0445
Add API to get / set base arrow damage531c25d7
Add CraftMagicNumbers.MAPPINGS_VERSION for use by NMS pluginsd05c8b14
Mappings Updatebd36e200
SPIGOT-4551: Ignore invalid attribute modifier slots Spigot Changes: 518206a1 Remove redundant trove depend 1959ad21 MC-11211,SPIGOT-4552: Fix placing double slabs at y = 255 29ab5e43 SPIGOT-3661: Allow arguments in restart-script 7cc46316 SPIGOT-852: Growth modifiers for beetroots, potatoes, carrots 82e117e1 Squelch "fatal: Resolve operation not in progress" message 0a1a68e7 Mappings Update & Patch Rebuild
This commit is contained in:
parent
8ef9dc94ca
commit
08b01ae4df
363 changed files with 1838 additions and 2537 deletions
|
@ -5,7 +5,7 @@ Subject: [PATCH] Ability to get Tile Entities from a chunk without snapshots
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/Chunk.java b/src/main/java/org/bukkit/Chunk.java
|
||||
index b347a3ccf..8a8043351 100644
|
||||
index 33cd0ea0..35407d5e 100644
|
||||
--- a/src/main/java/org/bukkit/Chunk.java
|
||||
+++ b/src/main/java/org/bukkit/Chunk.java
|
||||
@@ -0,0 +0,0 @@ public interface Chunk {
|
||||
|
|
|
@ -1,53 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: willies952002 <admin@domnian.com>
|
||||
Date: Wed, 29 Aug 2018 00:37:30 -0400
|
||||
Subject: [PATCH] Add Force-Loaded Chunk API
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/Chunk.java b/src/main/java/org/bukkit/Chunk.java
|
||||
index 8a804335..4b9e0ca4 100644
|
||||
--- a/src/main/java/org/bukkit/Chunk.java
|
||||
+++ b/src/main/java/org/bukkit/Chunk.java
|
||||
@@ -0,0 +0,0 @@ public interface Chunk {
|
||||
* @return true if slimes are able to spawn in this chunk
|
||||
*/
|
||||
boolean isSlimeChunk();
|
||||
+
|
||||
+ // Paper start - Force-Loaded Chunk API
|
||||
+ /**
|
||||
+ * Checks if the chunk is currently force-loaded
|
||||
+ *
|
||||
+ * @return true if the chunk is force-loaded, otherwise false
|
||||
+ */
|
||||
+ boolean isForceLoaded();
|
||||
+
|
||||
+ /**
|
||||
+ * Set's whether a chunk is force-loaded or not
|
||||
+ *
|
||||
+ * @param force whether or not to force load this chunk
|
||||
+ */
|
||||
+ void setForceLoaded(boolean force);
|
||||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index de89122e..aa28c452 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
return isChunkGenerated((int) chunkKey, (int) (chunkKey >> 32));
|
||||
}
|
||||
|
||||
+ /**
|
||||
+ * Checks if a chunk is force-loaded.
|
||||
+ * Note: This will only return true if the chunk is also generated
|
||||
+ *
|
||||
+ * @param x X-coordinate of the chunk
|
||||
+ * @param z Z-coordinate of the chunk
|
||||
+ * @return true if the chunk is force-loaded. otherwise false
|
||||
+ */
|
||||
+ public boolean isChunkForceLoaded(int x, int z);
|
||||
+
|
||||
/**
|
||||
* This is the Legacy API before Java 8 was supported. Java 8 Consumer is provided,
|
||||
* as well as future support
|
||||
--
|
|
@ -9,7 +9,7 @@ Allows creating recipes that must match isSimilar to full item stack.
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/inventory/ItemStackRecipeChoice.java b/src/main/java/com/destroystokyo/paper/inventory/ItemStackRecipeChoice.java
|
||||
new file mode 100644
|
||||
index 000000000..43e6576b1
|
||||
index 00000000..43e6576b
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/inventory/ItemStackRecipeChoice.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Add LivingEntity#getTargetEntity
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/entity/TargetEntityInfo.java b/src/main/java/com/destroystokyo/paper/entity/TargetEntityInfo.java
|
||||
new file mode 100644
|
||||
index 000000000..5df8eed23
|
||||
index 00000000..5df8eed2
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/entity/TargetEntityInfo.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -46,7 +46,7 @@ index 000000000..5df8eed23
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
index bd47e7209..34a8fe3f7 100644
|
||||
index bd47e720..34a8fe3f 100644
|
||||
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
@@ -0,0 +0,0 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
||||
|
|
|
@ -8,7 +8,7 @@ are related to each other by a trait.
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/MaterialSetTag.java b/src/main/java/com/destroystokyo/paper/MaterialSetTag.java
|
||||
new file mode 100644
|
||||
index 000000000..b4f78e075
|
||||
index 00000000..b4f78e07
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/MaterialSetTag.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -153,7 +153,7 @@ index 000000000..b4f78e075
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/MaterialTags.java b/src/main/java/com/destroystokyo/paper/MaterialTags.java
|
||||
new file mode 100644
|
||||
index 000000000..7a48445da
|
||||
index 00000000..7a48445d
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/MaterialTags.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -536,7 +536,7 @@ index 000000000..7a48445da
|
|||
+}
|
||||
diff --git a/src/test/java/com/destroystokyo/paper/MaterialTagsTest.java b/src/test/java/com/destroystokyo/paper/MaterialTagsTest.java
|
||||
new file mode 100644
|
||||
index 000000000..328c51471
|
||||
index 00000000..328c5147
|
||||
--- /dev/null
|
||||
+++ b/src/test/java/com/destroystokyo/paper/MaterialTagsTest.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -566,7 +566,7 @@ index 000000000..328c51471
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/test/java/org/bukkit/TestServer.java b/src/test/java/org/bukkit/TestServer.java
|
||||
index 2d8403206..613675c3b 100644
|
||||
index 2d840320..613675c3 100644
|
||||
--- a/src/test/java/org/bukkit/TestServer.java
|
||||
+++ b/src/test/java/org/bukkit/TestServer.java
|
||||
@@ -0,0 +0,0 @@ public class TestServer implements InvocationHandler {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Add TNTPrimeEvent
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/block/TNTPrimeEvent.java b/src/main/java/com/destroystokyo/paper/event/block/TNTPrimeEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..2ae8826bb
|
||||
index 00000000..2ae8826b
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/block/TNTPrimeEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add World.getEntity(UUID) API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index e83b2ac7..7c700cc2 100644
|
||||
index 70e7c9e3..301d9418 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
|
|
@ -217,7 +217,7 @@ index fe8d3468..074769c1 100644
|
|||
return key;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/inventory/meta/ItemMeta.java b/src/main/java/org/bukkit/inventory/meta/ItemMeta.java
|
||||
index df51f3ca..e9f640fb 100644
|
||||
index 4d0351c4..03e3cfd4 100644
|
||||
--- a/src/main/java/org/bukkit/inventory/meta/ItemMeta.java
|
||||
+++ b/src/main/java/org/bukkit/inventory/meta/ItemMeta.java
|
||||
@@ -0,0 +0,0 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable {
|
||||
|
|
|
@ -7,7 +7,7 @@ Not here to name and shame, only so server admins can be aware of which
|
|||
plugins have and haven't been updated.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java
|
||||
index a4aabfe7f..f462b631b 100644
|
||||
index a4aabfe7..f462b631 100644
|
||||
--- a/src/main/java/org/bukkit/UnsafeValues.java
|
||||
+++ b/src/main/java/org/bukkit/UnsafeValues.java
|
||||
@@ -0,0 +0,0 @@ public interface UnsafeValues {
|
||||
|
@ -22,7 +22,7 @@ index a4aabfe7f..f462b631b 100644
|
|||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
|
||||
index b1d384e82..72c0c0bc6 100644
|
||||
index b1d384e8..72c0c0bc 100644
|
||||
--- a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
|
||||
+++ b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
|
||||
@@ -0,0 +0,0 @@ public class PluginsCommand extends BukkitCommand {
|
||||
|
@ -42,7 +42,7 @@ index b1d384e82..72c0c0bc6 100644
|
|||
|
||||
StringBuilder pluginList = new StringBuilder();
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
index 3cff01b6b..2b9aad0a7 100644
|
||||
index c7782e7d..39f92d88 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
@@ -0,0 +0,0 @@ public final class JavaPluginLoader implements PluginLoader {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add hand to bucket events
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java b/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java
|
||||
index 8fb121a91..7b9596f30 100644
|
||||
index 8fb121a9..7b9596f3 100644
|
||||
--- a/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.block.Block;
|
||||
|
@ -30,7 +30,7 @@ index 8fb121a91..7b9596f30 100644
|
|||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
diff --git a/src/main/java/org/bukkit/event/player/PlayerBucketEvent.java b/src/main/java/org/bukkit/event/player/PlayerBucketEvent.java
|
||||
index 56584687f..3dbe428ba 100644
|
||||
index 56584687..3dbe428b 100644
|
||||
--- a/src/main/java/org/bukkit/event/player/PlayerBucketEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/player/PlayerBucketEvent.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.block.Block;
|
||||
|
@ -82,7 +82,7 @@ index 56584687f..3dbe428ba 100644
|
|||
return cancelled;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java b/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java
|
||||
index 94e042a36..884b9240b 100644
|
||||
index 94e042a3..884b9240 100644
|
||||
--- a/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.block.Block;
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add more Witch API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/Witch.java b/src/main/java/org/bukkit/entity/Witch.java
|
||||
index 7ac07ac07ac0..7ac07ac07ac0 100644
|
||||
index 4b27f689..64ec8409 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Witch.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Witch.java
|
||||
@@ -0,0 +0,0 @@ package org.bukkit.entity;
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add player view distance API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
||||
index a631529df..4208b0d2c 100644
|
||||
index a631529d..4208b0d2 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Player.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Player.java
|
||||
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Add ray tracing methods to LivingEntity
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/block/TargetBlockInfo.java b/src/main/java/com/destroystokyo/paper/block/TargetBlockInfo.java
|
||||
new file mode 100644
|
||||
index 000000000..fe43d9557
|
||||
index 00000000..fe43d955
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/block/TargetBlockInfo.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -61,7 +61,7 @@ index 000000000..fe43d9557
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
index e3bc04e1c..bd47e7209 100644
|
||||
index e3bc04e1..bd47e720 100644
|
||||
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
|
||||
@@ -0,0 +0,0 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add sun related API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index aa28c452..27e58136 100644
|
||||
index 668c9b7a..67e062b8 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
|
|
@ -14,7 +14,7 @@ parent of the plugin logger to avoid this.
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/utils/PaperPluginLogger.java b/src/main/java/com/destroystokyo/paper/utils/PaperPluginLogger.java
|
||||
new file mode 100644
|
||||
index 000000000..d052b2f55
|
||||
index 00000000..d052b2f5
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/utils/PaperPluginLogger.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -58,7 +58,7 @@ index 000000000..d052b2f55
|
|||
+
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPlugin.java b/src/main/java/org/bukkit/plugin/java/JavaPlugin.java
|
||||
index a81dae439..15f22ade2 100644
|
||||
index a81dae43..15f22ade 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/JavaPlugin.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/JavaPlugin.java
|
||||
@@ -0,0 +0,0 @@ public abstract class JavaPlugin extends PluginBase {
|
||||
|
@ -85,7 +85,7 @@ index a81dae439..15f22ade2 100644
|
|||
|
||||
/**
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
|
||||
index 44093af29..ab79b71bf 100644
|
||||
index bc33ff33..213f6234 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
|
||||
@@ -0,0 +0,0 @@ public final class PluginClassLoader extends URLClassLoader { // Spigot
|
||||
|
@ -94,8 +94,8 @@ index 44093af29..ab79b71bf 100644
|
|||
private IllegalStateException pluginState;
|
||||
+ private java.util.logging.Logger logger; // Paper - add field
|
||||
|
||||
// Spigot Start
|
||||
static
|
||||
static {
|
||||
ClassLoader.registerAsParallelCapable();
|
||||
@@ -0,0 +0,0 @@ public final class PluginClassLoader extends URLClassLoader { // Spigot
|
||||
this.manifest = jar.getManifest();
|
||||
this.url = file.toURI().toURL();
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Additional world.getNearbyEntities API's
|
|||
Provides more methods to get nearby entities, and filter by types and predicates
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index 849ad2cb..99fbf327 100644
|
||||
index e66caa41..d9010176 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ package org.bukkit;
|
||||
|
|
|
@ -49,7 +49,7 @@ index 8dcb15fb..7e1ee875 100644
|
|||
* @return A new location where X/Y/Z are the center of the block
|
||||
*/
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index 6635285f..071a8490 100644
|
||||
index 92688252..1467debe 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Allow disabling armour stand ticking
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/ArmorStand.java b/src/main/java/org/bukkit/entity/ArmorStand.java
|
||||
index 099da6ce1..859f166fb 100644
|
||||
index 099da6ce..859f166f 100644
|
||||
--- a/src/main/java/org/bukkit/entity/ArmorStand.java
|
||||
+++ b/src/main/java/org/bukkit/entity/ArmorStand.java
|
||||
@@ -0,0 +0,0 @@ public interface ArmorStand extends LivingEntity {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] AnvilDamageEvent
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/block/AnvilDamagedEvent.java b/src/main/java/com/destroystokyo/paper/event/block/AnvilDamagedEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..fd3c5c02e
|
||||
index 00000000..fd3c5c02
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/block/AnvilDamagedEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Arrow pickup rule API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/Arrow.java b/src/main/java/org/bukkit/entity/Arrow.java
|
||||
index 99814eee..34dde443 100644
|
||||
index b74d5f9d..99a44006 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Arrow.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Arrow.java
|
||||
@@ -0,0 +0,0 @@ public interface Arrow extends Projectile {
|
||||
|
|
|
@ -8,7 +8,7 @@ Adds API's to load or generate chunks asynchronously.
|
|||
Also adds utility methods to Entity to teleport asynchronously.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index 00d72565..8e322cab 100644
|
||||
index deabd400..92688252 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
@ -365,7 +365,7 @@ index 00d72565..8e322cab 100644
|
|||
|
||||
/**
|
||||
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
|
||||
index f94160bf..5ee57656 100644
|
||||
index 2dd7a03c..59787c47 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Entity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Entity.java
|
||||
@@ -0,0 +0,0 @@ public interface Entity extends Metadatable, CommandSender, Nameable {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Automatically disable plugins that fail to load
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
index 81b42822..3af99b5b 100644
|
||||
index 54594546..bf972302 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
@@ -0,0 +0,0 @@ public final class JavaPluginLoader implements PluginLoader {
|
||||
|
|
|
@ -7,7 +7,7 @@ This should close more memory leaks from /reload and disabling plugins,
|
|||
by closing the class loader and the jar file.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/plugin/PluginLoader.java b/src/main/java/org/bukkit/plugin/PluginLoader.java
|
||||
index e7981a1d9..d34756f15 100644
|
||||
index e7981a1d..d34756f1 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/PluginLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/PluginLoader.java
|
||||
@@ -0,0 +0,0 @@ public interface PluginLoader {
|
||||
|
@ -31,7 +31,7 @@ index e7981a1d9..d34756f15 100644
|
|||
+ // Paper end - close Classloader on disable
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/plugin/PluginManager.java b/src/main/java/org/bukkit/plugin/PluginManager.java
|
||||
index e5638d560..b72d5a9bc 100644
|
||||
index e5638d56..b72d5a9b 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/PluginManager.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/PluginManager.java
|
||||
@@ -0,0 +0,0 @@ public interface PluginManager {
|
||||
|
@ -54,7 +54,7 @@ index e5638d560..b72d5a9bc 100644
|
|||
* Gets a {@link Permission} from its fully qualified name
|
||||
*
|
||||
diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
index bd0588a20..cb2b0b9cb 100644
|
||||
index bd0588a2..cb2b0b9c 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
@@ -0,0 +0,0 @@ public final class SimplePluginManager implements PluginManager {
|
||||
|
@ -100,7 +100,7 @@ index bd0588a20..cb2b0b9cb 100644
|
|||
lookupNames.clear();
|
||||
HandlerList.unregisterAll();
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
index 72d506d1f..3411a365c 100644
|
||||
index 77207f14..c7782e7d 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
@@ -0,0 +0,0 @@ public final class JavaPluginLoader implements PluginLoader {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Don't use snapshots for Timings Tile Entity reports
|
|||
|
||||
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingHistory.java b/src/main/java/co/aikar/timings/TimingHistory.java
|
||||
index c2c2fb83..769facd8 100644
|
||||
index 28d0954a..7ad9400a 100644
|
||||
--- a/src/main/java/co/aikar/timings/TimingHistory.java
|
||||
+++ b/src/main/java/co/aikar/timings/TimingHistory.java
|
||||
@@ -0,0 +0,0 @@ public class TimingHistory {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] EnderDragon Events
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonFireballHitEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonFireballHitEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..ef2a8dab9
|
||||
index 00000000..ef2a8dab
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonFireballHitEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -84,7 +84,7 @@ index 000000000..ef2a8dab9
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonFlameEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonFlameEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..d8c3ab330
|
||||
index 00000000..d8c3ab33
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonFlameEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -146,7 +146,7 @@ index 000000000..d8c3ab330
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonShootFireballEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonShootFireballEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..aa70dda10
|
||||
index 00000000..aa70dda1
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/entity/EnderDragonShootFireballEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -8,7 +8,7 @@ Add the following:
|
|||
- Enable/Disable slot interactions
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/ArmorStand.java b/src/main/java/org/bukkit/entity/ArmorStand.java
|
||||
index 859f166fb..eda4873d5 100644
|
||||
index 859f166f..eda4873d 100644
|
||||
--- a/src/main/java/org/bukkit/entity/ArmorStand.java
|
||||
+++ b/src/main/java/org/bukkit/entity/ArmorStand.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -98,7 +98,7 @@ index 162a76e8..056a4d6b 100644
|
|||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index 1f63eba8..e83b2ac7 100644
|
||||
index 379fd2fa..70e7c9e3 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Expand Location Manipulation API
|
|||
Adds set(x, y, z), add(base, x, y, z), subtract(base, x, y, z);
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java
|
||||
index 056a4d6bb..8dcb15fb8 100644
|
||||
index 056a4d6b..8dcb15fb 100644
|
||||
--- a/src/main/java/org/bukkit/Location.java
|
||||
+++ b/src/main/java/org/bukkit/Location.java
|
||||
@@ -0,0 +0,0 @@ public class Location implements Cloneable, ConfigurationSerializable {
|
||||
|
|
|
@ -452,7 +452,7 @@ index 4d0acaf5..827aa00c 100644
|
|||
* Options which can be applied to redstone dust particles - a particle
|
||||
* color and size.
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index 3cc161de..c9b3ff76 100644
|
||||
index d9010176..379fd2fa 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Expose attack cooldown methods for Player
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
||||
index c9f027f99..7f6ae5d16 100644
|
||||
index c9f027f9..7f6ae5d1 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Player.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Player.java
|
||||
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
|
|
|
@ -21,7 +21,7 @@ index 43239f84..fe8d3468 100644
|
|||
*/
|
||||
@Deprecated
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index 04573ec2..0750d64c 100644
|
||||
index 6ce38e03..e66caa41 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
|
|
@ -1,55 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Brokkonaut <hannos17@gmx.de>
|
||||
Date: Sat, 30 Jun 2018 05:45:04 +0200
|
||||
Subject: [PATCH] Improve ProjectileHitEvent to include the BlockFace where the
|
||||
projectile has hit
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/event/entity/ProjectileHitEvent.java b/src/main/java/org/bukkit/event/entity/ProjectileHitEvent.java
|
||||
index 35f4148bb..db105e764 100644
|
||||
--- a/src/main/java/org/bukkit/event/entity/ProjectileHitEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/entity/ProjectileHitEvent.java
|
||||
@@ -0,0 +0,0 @@ public class ProjectileHitEvent extends EntityEvent {
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
private final Entity hitEntity;
|
||||
private final Block hitBlock;
|
||||
+ private final org.bukkit.block.BlockFace hitBlockFace; // Paper
|
||||
|
||||
public ProjectileHitEvent(final Projectile projectile) {
|
||||
this(projectile, null, null);
|
||||
@@ -0,0 +0,0 @@ public class ProjectileHitEvent extends EntityEvent {
|
||||
}
|
||||
|
||||
public ProjectileHitEvent(final Projectile projectile, Entity hitEntity, Block hitBlock) {
|
||||
+ // Paper Start - Add a constructor that includes a BlockFace parameter
|
||||
+ this(projectile, hitEntity, hitBlock, null);
|
||||
+ }
|
||||
+
|
||||
+ public ProjectileHitEvent(final Projectile projectile, Entity hitEntity, Block hitBlock, org.bukkit.block.BlockFace hitBlockFace) {
|
||||
+ // Paper End
|
||||
super(projectile);
|
||||
this.hitEntity = hitEntity;
|
||||
this.hitBlock = hitBlock;
|
||||
+ this.hitBlockFace = hitBlockFace; // Paper
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -0,0 +0,0 @@ public class ProjectileHitEvent extends EntityEvent {
|
||||
return hitBlock;
|
||||
}
|
||||
|
||||
+ // Paper Start
|
||||
+ /**
|
||||
+ * Gets the face of the block that the projectile has hit.
|
||||
+ *
|
||||
+ * @return hit block face or else null
|
||||
+ */
|
||||
+ public org.bukkit.block.BlockFace getHitBlockFace() {
|
||||
+ return hitBlockFace;
|
||||
+ }
|
||||
+ // Paper End
|
||||
+
|
||||
/**
|
||||
* Gets the entity that was hit, if it was an entity that was hit.
|
||||
*
|
||||
--
|
|
@ -7,7 +7,7 @@ Allows you to determine why an inventory was closed, enabling plugin developers
|
|||
to "confirm" things based on if it was player triggered close or not.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
index ca789867d..d4b3caebd 100644
|
||||
index ca789867..d4b3caeb 100644
|
||||
--- a/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
@@ -0,0 +0,0 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder
|
||||
|
@ -27,7 +27,7 @@ index ca789867d..d4b3caebd 100644
|
|||
* Returns the ItemStack currently in your hand, can be empty.
|
||||
*
|
||||
diff --git a/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java b/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
|
||||
index 19889b278..e6e45b936 100644
|
||||
index 19889b27..e6e45b93 100644
|
||||
--- a/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.inventory.InventoryView;
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Make the default permission message configurable
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
|
||||
index 233a71540..22ca2900c 100644
|
||||
index 233a7154..22ca2900 100644
|
||||
--- a/src/main/java/org/bukkit/Bukkit.java
|
||||
+++ b/src/main/java/org/bukkit/Bukkit.java
|
||||
@@ -0,0 +0,0 @@ public final class Bukkit {
|
||||
|
@ -24,7 +24,7 @@ index 233a71540..22ca2900c 100644
|
|||
* Creates a PlayerProfile for the specified uuid, with name as null
|
||||
* @param uuid UUID to create profile for
|
||||
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
||||
index b8076fc3f..9c78f18f6 100644
|
||||
index b8076fc3..9c78f18f 100644
|
||||
--- a/src/main/java/org/bukkit/Server.java
|
||||
+++ b/src/main/java/org/bukkit/Server.java
|
||||
@@ -0,0 +0,0 @@ public interface Server extends PluginMessageRecipient {
|
||||
|
@ -41,7 +41,7 @@ index b8076fc3f..9c78f18f6 100644
|
|||
* Creates a PlayerProfile for the specified uuid, with name as null
|
||||
* @param uuid UUID to create profile for
|
||||
diff --git a/src/main/java/org/bukkit/command/Command.java b/src/main/java/org/bukkit/command/Command.java
|
||||
index 4a479627d..77171cd17 100644
|
||||
index 4a479627..77171cd1 100644
|
||||
--- a/src/main/java/org/bukkit/command/Command.java
|
||||
+++ b/src/main/java/org/bukkit/command/Command.java
|
||||
@@ -0,0 +0,0 @@ public abstract class Command {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Material API additions
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
|
||||
index 14cae61fb..393024343 100644
|
||||
index 14cae61f..39302434 100644
|
||||
--- a/src/main/java/org/bukkit/Material.java
|
||||
+++ b/src/main/java/org/bukkit/Material.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.material.MaterialData;
|
||||
|
|
|
@ -13,7 +13,7 @@ You can use EntityPathfindEvent to cancel new pathfinds from overriding your cur
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/entity/Pathfinder.java b/src/main/java/com/destroystokyo/paper/entity/Pathfinder.java
|
||||
new file mode 100644
|
||||
index 000000000..d6953b390
|
||||
index 00000000..d6953b39
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/entity/Pathfinder.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -185,7 +185,7 @@ index 000000000..d6953b390
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/entity/Mob.java b/src/main/java/org/bukkit/entity/Mob.java
|
||||
index d029d34ea..48eddcd30 100644
|
||||
index d029d34e..48eddcd3 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Mob.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Mob.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.loot.Lootable;
|
||||
|
|
|
@ -18,7 +18,7 @@ Optimized it to simply be a single get call cutting permission map
|
|||
lookups in half.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/permissions/PermissibleBase.java b/src/main/java/org/bukkit/permissions/PermissibleBase.java
|
||||
index d4cb00a82..486f69f86 100644
|
||||
index d4cb00a8..486f69f8 100644
|
||||
--- a/src/main/java/org/bukkit/permissions/PermissibleBase.java
|
||||
+++ b/src/main/java/org/bukkit/permissions/PermissibleBase.java
|
||||
@@ -0,0 +0,0 @@ public class PermissibleBase implements Permissible {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Player.setPlayerProfile API
|
|||
This can be useful for changing name or skins after a player has logged in.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
||||
index 5f3e085e3..1e349066d 100644
|
||||
index 5f3e085e..1e349066 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Player.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Player.java
|
||||
@@ -0,0 +0,0 @@ package org.bukkit.entity;
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] PlayerElytraBoostEvent
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/player/PlayerElytraBoostEvent.java b/src/main/java/com/destroystokyo/paper/event/player/PlayerElytraBoostEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..cecb2182c
|
||||
index 00000000..cecb2182
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/player/PlayerElytraBoostEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] PlayerLaunchProjectileEvent
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/player/PlayerLaunchProjectileEvent.java b/src/main/java/com/destroystokyo/paper/event/player/PlayerLaunchProjectileEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..d2b244a41
|
||||
index 00000000..d2b244a4
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/player/PlayerLaunchProjectileEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -10,7 +10,7 @@ spawners.
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/PreSpawnerSpawnEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/PreSpawnerSpawnEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..d72212105
|
||||
index 00000000..d7221210
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/entity/PreSpawnerSpawnEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -7,7 +7,7 @@ Allows you to easily access the chunks X/z as a long, and a method
|
|||
to look up by the long key too.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/Chunk.java b/src/main/java/org/bukkit/Chunk.java
|
||||
index 079b9feb..b347a3cc 100644
|
||||
index 441ed7ad..33cd0ea0 100644
|
||||
--- a/src/main/java/org/bukkit/Chunk.java
|
||||
+++ b/src/main/java/org/bukkit/Chunk.java
|
||||
@@ -0,0 +0,0 @@ public interface Chunk {
|
||||
|
@ -44,7 +44,7 @@ index 079b9feb..b347a3cc 100644
|
|||
* Gets the world containing this chunk
|
||||
*
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index 7c700cc2..00d72565 100644
|
||||
index 301d9418..deabd400 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Remove Precondition on name for AttributeModifier
|
|||
Vanilla allows empty names
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/attribute/AttributeModifier.java b/src/main/java/org/bukkit/attribute/AttributeModifier.java
|
||||
index 2bc9878ff..0943eee46 100644
|
||||
index 2bc9878f..0943eee4 100644
|
||||
--- a/src/main/java/org/bukkit/attribute/AttributeModifier.java
|
||||
+++ b/src/main/java/org/bukkit/attribute/AttributeModifier.java
|
||||
@@ -0,0 +0,0 @@ public class AttributeModifier implements ConfigurationSerializable {
|
||||
|
|
|
@ -16,7 +16,7 @@ which results in a hard crash.
|
|||
This change removes the synchronize and adds some protection around enable/disable
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
index cb2b0b9cb..a7dd902fb 100644
|
||||
index cb2b0b9c..a7dd902f 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
@@ -0,0 +0,0 @@ public final class SimplePluginManager implements PluginManager {
|
||||
|
@ -79,7 +79,7 @@ index cb2b0b9cb..a7dd902fb 100644
|
|||
RegisteredListener[] listeners = handlers.getRegisteredListeners();
|
||||
|
||||
diff --git a/src/test/java/org/bukkit/plugin/PluginManagerTest.java b/src/test/java/org/bukkit/plugin/PluginManagerTest.java
|
||||
index 6b86128e1..56308c0c6 100644
|
||||
index 6b86128e..56308c0c 100644
|
||||
--- a/src/test/java/org/bukkit/plugin/PluginManagerTest.java
|
||||
+++ b/src/test/java/org/bukkit/plugin/PluginManagerTest.java
|
||||
@@ -0,0 +0,0 @@ public class PluginManagerTest {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] SkeletonHorse Additions
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/SkeletonHorseTrapEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/SkeletonHorseTrapEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..55bae018e
|
||||
index 00000000..55bae018
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/entity/SkeletonHorseTrapEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -54,7 +54,7 @@ index 000000000..55bae018e
|
|||
+}
|
||||
+
|
||||
diff --git a/src/main/java/org/bukkit/entity/SkeletonHorse.java b/src/main/java/org/bukkit/entity/SkeletonHorse.java
|
||||
index b2c6b6a86..ba9983463 100644
|
||||
index b2c6b6a8..ba998346 100644
|
||||
--- a/src/main/java/org/bukkit/entity/SkeletonHorse.java
|
||||
+++ b/src/main/java/org/bukkit/entity/SkeletonHorse.java
|
||||
@@ -0,0 +0,0 @@ package org.bukkit.entity;
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Timings v2
|
|||
|
||||
diff --git a/src/main/java/co/aikar/timings/FullServerTickHandler.java b/src/main/java/co/aikar/timings/FullServerTickHandler.java
|
||||
new file mode 100644
|
||||
index 000000000..98079dc0c
|
||||
index 00000000..98079dc0
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/FullServerTickHandler.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -94,7 +94,7 @@ index 000000000..98079dc0c
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/NullTimingHandler.java b/src/main/java/co/aikar/timings/NullTimingHandler.java
|
||||
new file mode 100644
|
||||
index 000000000..8c43e2061
|
||||
index 00000000..8c43e206
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/NullTimingHandler.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -161,7 +161,7 @@ index 000000000..8c43e2061
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimedEventExecutor.java b/src/main/java/co/aikar/timings/TimedEventExecutor.java
|
||||
new file mode 100644
|
||||
index 000000000..feddcdbd4
|
||||
index 00000000..feddcdbd
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimedEventExecutor.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -248,7 +248,7 @@ index 000000000..feddcdbd4
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/Timing.java b/src/main/java/co/aikar/timings/Timing.java
|
||||
new file mode 100644
|
||||
index 000000000..b2260104c
|
||||
index 00000000..b2260104
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/Timing.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -330,7 +330,7 @@ index 000000000..b2260104c
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingData.java b/src/main/java/co/aikar/timings/TimingData.java
|
||||
new file mode 100644
|
||||
index 000000000..f222d6b7d
|
||||
index 00000000..f222d6b7
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingData.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -456,7 +456,7 @@ index 000000000..f222d6b7d
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingHandler.java b/src/main/java/co/aikar/timings/TimingHandler.java
|
||||
new file mode 100644
|
||||
index 000000000..521c985e6
|
||||
index 00000000..521c985e
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingHandler.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -662,7 +662,7 @@ index 000000000..521c985e6
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingHistory.java b/src/main/java/co/aikar/timings/TimingHistory.java
|
||||
new file mode 100644
|
||||
index 000000000..28d0954a3
|
||||
index 00000000..28d0954a
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingHistory.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -1013,7 +1013,7 @@ index 000000000..28d0954a3
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingHistoryEntry.java b/src/main/java/co/aikar/timings/TimingHistoryEntry.java
|
||||
new file mode 100644
|
||||
index 000000000..0e114eb32
|
||||
index 00000000..0e114eb3
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingHistoryEntry.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -1074,7 +1074,7 @@ index 000000000..0e114eb32
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingIdentifier.java b/src/main/java/co/aikar/timings/TimingIdentifier.java
|
||||
new file mode 100644
|
||||
index 000000000..a7f1f44d7
|
||||
index 00000000..a7f1f44d
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingIdentifier.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -1186,7 +1186,7 @@ index 000000000..a7f1f44d7
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/Timings.java b/src/main/java/co/aikar/timings/Timings.java
|
||||
new file mode 100644
|
||||
index 000000000..f907649ba
|
||||
index 00000000..f907649b
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/Timings.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -1476,7 +1476,7 @@ index 000000000..f907649ba
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingsCommand.java b/src/main/java/co/aikar/timings/TimingsCommand.java
|
||||
new file mode 100644
|
||||
index 000000000..56b10e898
|
||||
index 00000000..56b10e89
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingsCommand.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -1601,7 +1601,7 @@ index 000000000..56b10e898
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingsExport.java b/src/main/java/co/aikar/timings/TimingsExport.java
|
||||
new file mode 100644
|
||||
index 000000000..df7f42595
|
||||
index 00000000..df7f4259
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingsExport.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -1949,7 +1949,7 @@ index 000000000..df7f42595
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingsManager.java b/src/main/java/co/aikar/timings/TimingsManager.java
|
||||
new file mode 100644
|
||||
index 000000000..f63e7033c
|
||||
index 00000000..f63e7033
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingsManager.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -2142,7 +2142,7 @@ index 000000000..f63e7033c
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/TimingsReportListener.java b/src/main/java/co/aikar/timings/TimingsReportListener.java
|
||||
new file mode 100644
|
||||
index 000000000..e7c389c05
|
||||
index 00000000..e7c389c0
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/TimingsReportListener.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -2220,7 +2220,7 @@ index 000000000..e7c389c05
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/timings/UnsafeTimingHandler.java b/src/main/java/co/aikar/timings/UnsafeTimingHandler.java
|
||||
new file mode 100644
|
||||
index 000000000..5edaba128
|
||||
index 00000000..5edaba12
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/timings/UnsafeTimingHandler.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -2277,7 +2277,7 @@ index 000000000..5edaba128
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/util/Counter.java b/src/main/java/co/aikar/util/Counter.java
|
||||
new file mode 100644
|
||||
index 000000000..23ac07f2c
|
||||
index 00000000..23ac07f2
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/util/Counter.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -2318,7 +2318,7 @@ index 000000000..23ac07f2c
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/util/JSONUtil.java b/src/main/java/co/aikar/util/JSONUtil.java
|
||||
new file mode 100644
|
||||
index 000000000..962749750
|
||||
index 00000000..96274975
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/util/JSONUtil.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -2453,7 +2453,7 @@ index 000000000..962749750
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/util/LoadingIntMap.java b/src/main/java/co/aikar/util/LoadingIntMap.java
|
||||
new file mode 100644
|
||||
index 000000000..24eae4bea
|
||||
index 00000000..24eae4be
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/util/LoadingIntMap.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -2530,7 +2530,7 @@ index 000000000..24eae4bea
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/util/LoadingMap.java b/src/main/java/co/aikar/util/LoadingMap.java
|
||||
new file mode 100644
|
||||
index 000000000..9a4f9dca8
|
||||
index 00000000..9a4f9dca
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/util/LoadingMap.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -2875,7 +2875,7 @@ index 000000000..9a4f9dca8
|
|||
+}
|
||||
diff --git a/src/main/java/co/aikar/util/MRUMapCache.java b/src/main/java/co/aikar/util/MRUMapCache.java
|
||||
new file mode 100644
|
||||
index 000000000..df592d855
|
||||
index 00000000..df592d85
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/co/aikar/util/MRUMapCache.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -2982,7 +2982,7 @@ index 000000000..df592d855
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
|
||||
index 2ce174401..7fdd1a084 100644
|
||||
index 2ce17440..7fdd1a08 100644
|
||||
--- a/src/main/java/org/bukkit/Bukkit.java
|
||||
+++ b/src/main/java/org/bukkit/Bukkit.java
|
||||
@@ -0,0 +0,0 @@ public final class Bukkit {
|
||||
|
@ -2994,7 +2994,7 @@ index 2ce174401..7fdd1a084 100644
|
|||
|
||||
/**
|
||||
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
||||
index 63392d5e7..0e7a81c88 100644
|
||||
index 63392d5e..0e7a81c8 100644
|
||||
--- a/src/main/java/org/bukkit/Server.java
|
||||
+++ b/src/main/java/org/bukkit/Server.java
|
||||
@@ -0,0 +0,0 @@ public interface Server extends PluginMessageRecipient {
|
||||
|
@ -3028,7 +3028,7 @@ index 63392d5e7..0e7a81c88 100644
|
|||
*
|
||||
diff --git a/src/main/java/org/bukkit/command/BufferedCommandSender.java b/src/main/java/org/bukkit/command/BufferedCommandSender.java
|
||||
new file mode 100644
|
||||
index 000000000..fd452bce4
|
||||
index 00000000..fd452bce
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/org/bukkit/command/BufferedCommandSender.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -3051,7 +3051,7 @@ index 000000000..fd452bce4
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/command/Command.java b/src/main/java/org/bukkit/command/Command.java
|
||||
index 4c931f186..4a479627d 100644
|
||||
index 4c931f18..4a479627 100644
|
||||
--- a/src/main/java/org/bukkit/command/Command.java
|
||||
+++ b/src/main/java/org/bukkit/command/Command.java
|
||||
@@ -0,0 +0,0 @@ public abstract class Command {
|
||||
|
@ -3081,7 +3081,7 @@ index 4c931f186..4a479627d 100644
|
|||
return true;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/command/FormattedCommandAlias.java b/src/main/java/org/bukkit/command/FormattedCommandAlias.java
|
||||
index 502578837..9c80f4640 100644
|
||||
index 50257883..9c80f464 100644
|
||||
--- a/src/main/java/org/bukkit/command/FormattedCommandAlias.java
|
||||
+++ b/src/main/java/org/bukkit/command/FormattedCommandAlias.java
|
||||
@@ -0,0 +0,0 @@ public class FormattedCommandAlias extends Command {
|
||||
|
@ -3104,7 +3104,7 @@ index 502578837..9c80f4640 100644
|
|||
}
|
||||
diff --git a/src/main/java/org/bukkit/command/MessageCommandSender.java b/src/main/java/org/bukkit/command/MessageCommandSender.java
|
||||
new file mode 100644
|
||||
index 000000000..5527e7c86
|
||||
index 00000000..5527e7c8
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/org/bukkit/command/MessageCommandSender.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -3214,7 +3214,7 @@ index 000000000..5527e7c86
|
|||
+
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/command/SimpleCommandMap.java b/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
index d9183db2f..43e52a77a 100644
|
||||
index d9183db2..43e52a77 100644
|
||||
--- a/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
+++ b/src/main/java/org/bukkit/command/SimpleCommandMap.java
|
||||
@@ -0,0 +0,0 @@ public class SimpleCommandMap implements CommandMap {
|
||||
|
@ -3249,7 +3249,7 @@ index d9183db2f..43e52a77a 100644
|
|||
// Note: we don't return the result of target.execute as thats success / failure, we return handled (true) or not handled (false)
|
||||
diff --git a/src/main/java/org/bukkit/command/defaults/TimingsCommand.java b/src/main/java/org/bukkit/command/defaults/TimingsCommand.java
|
||||
deleted file mode 100644
|
||||
index bba914d7f..000000000
|
||||
index bba914d7..00000000
|
||||
--- a/src/main/java/org/bukkit/command/defaults/TimingsCommand.java
|
||||
+++ /dev/null
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -3507,7 +3507,7 @@ index bba914d7f..000000000
|
|||
- // Spigot end
|
||||
-}
|
||||
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
||||
index 5054276ff..0993f31b1 100644
|
||||
index 5054276f..0993f31b 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Player.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Player.java
|
||||
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
||||
|
@ -3523,7 +3523,7 @@ index 5054276ff..0993f31b1 100644
|
|||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
index 8b130abb7..80c152ba9 100644
|
||||
index 8b130abb..80c152ba 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
|
||||
@@ -0,0 +0,0 @@ public final class SimplePluginManager implements PluginManager {
|
||||
|
@ -3580,7 +3580,7 @@ index 8b130abb7..80c152ba9 100644
|
|||
}
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
index 113b899cc..81b428222 100644
|
||||
index 2d4c75ab..54594546 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.plugin.PluginLoader;
|
||||
|
@ -3593,7 +3593,7 @@ index 113b899cc..81b428222 100644
|
|||
/**
|
||||
@@ -0,0 +0,0 @@ public final class JavaPluginLoader implements PluginLoader {
|
||||
private final Pattern[] fileFilters = new Pattern[] { Pattern.compile("\\.jar$"), };
|
||||
private final Map<String, Class<?>> classes = new java.util.concurrent.ConcurrentHashMap<String, Class<?>>(); // Spigot
|
||||
private final Map<String, Class<?>> classes = new ConcurrentHashMap<String, Class<?>>();
|
||||
private final List<PluginClassLoader> loaders = new CopyOnWriteArrayList<PluginClassLoader>();
|
||||
- public static final CustomTimingsHandler pluginParentTimer = new CustomTimingsHandler("** Plugins"); // Spigot
|
||||
|
||||
|
@ -3629,7 +3629,7 @@ index 113b899cc..81b428222 100644
|
|||
eventSet.add(new TimedRegisteredListener(listener, executor, eh.priority(), plugin, eh.ignoreCancelled()));
|
||||
} else {
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
|
||||
index af8af8ef0..44093af29 100644
|
||||
index 7a8abe75..bc33ff33 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.plugin.PluginDescriptionFile;
|
||||
|
@ -3640,10 +3640,10 @@ index af8af8ef0..44093af29 100644
|
|||
+public final class PluginClassLoader extends URLClassLoader { // Spigot
|
||||
+ public JavaPlugin getPlugin() { return plugin; } // Spigot
|
||||
private final JavaPluginLoader loader;
|
||||
private final Map<String, Class<?>> classes = new java.util.concurrent.ConcurrentHashMap<String, Class<?>>(); // Spigot
|
||||
private final Map<String, Class<?>> classes = new ConcurrentHashMap<String, Class<?>>();
|
||||
private final PluginDescriptionFile description;
|
||||
diff --git a/src/main/java/org/bukkit/util/CachedServerIcon.java b/src/main/java/org/bukkit/util/CachedServerIcon.java
|
||||
index 5ca863b36..048047067 100644
|
||||
index 5ca863b3..04804706 100644
|
||||
--- a/src/main/java/org/bukkit/util/CachedServerIcon.java
|
||||
+++ b/src/main/java/org/bukkit/util/CachedServerIcon.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.event.server.ServerListPingEvent;
|
||||
|
@ -3655,7 +3655,7 @@ index 5ca863b36..048047067 100644
|
|||
+ public String getData(); // Spigot
|
||||
+}
|
||||
diff --git a/src/main/java/org/spigotmc/CustomTimingsHandler.java b/src/main/java/org/spigotmc/CustomTimingsHandler.java
|
||||
index 8d982974e..e9f76006e 100644
|
||||
index 8d982974..e9f76006 100644
|
||||
--- a/src/main/java/org/spigotmc/CustomTimingsHandler.java
|
||||
+++ b/src/main/java/org/spigotmc/CustomTimingsHandler.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Turtle API
|
|||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/TurtleGoHomeEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/TurtleGoHomeEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..11248ee93
|
||||
index 00000000..11248ee9
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/entity/TurtleGoHomeEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -57,7 +57,7 @@ index 000000000..11248ee93
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/TurtleLayEggEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/TurtleLayEggEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..7cb00f78d
|
||||
index 00000000..7cb00f78
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/entity/TurtleLayEggEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -144,7 +144,7 @@ index 000000000..7cb00f78d
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/TurtleStartDiggingEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/TurtleStartDiggingEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..5d53ee08b
|
||||
index 00000000..5d53ee08
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/entity/TurtleStartDiggingEvent.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -206,7 +206,7 @@ index 000000000..5d53ee08b
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/entity/Turtle.java b/src/main/java/org/bukkit/entity/Turtle.java
|
||||
index 0a4cd2993..e547eead4 100644
|
||||
index 0a4cd299..e547eead 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Turtle.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Turtle.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Use ASM for event executors.
|
|||
Uses method handles for private or static methods.
|
||||
|
||||
diff --git a/pom.xml b/pom.xml
|
||||
index b5cc156cd..310c30bb6 100644
|
||||
index f9fbc40a..1d42d42a 100644
|
||||
--- a/pom.xml
|
||||
+++ b/pom.xml
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -29,7 +29,7 @@ index b5cc156cd..310c30bb6 100644
|
|||
<build>
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java b/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java
|
||||
new file mode 100644
|
||||
index 000000000..9ff99e3b3
|
||||
index 00000000..9ff99e3b
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -75,7 +75,7 @@ index 000000000..9ff99e3b3
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java b/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java
|
||||
new file mode 100644
|
||||
index 000000000..f60f01005
|
||||
index 00000000..f60f0100
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -120,7 +120,7 @@ index 000000000..f60f01005
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java
|
||||
new file mode 100644
|
||||
index 000000000..140cf0ad3
|
||||
index 00000000..140cf0ad
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -170,7 +170,7 @@ index 000000000..140cf0ad3
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java
|
||||
new file mode 100644
|
||||
index 000000000..6941d9fbf
|
||||
index 00000000..6941d9fb
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -208,7 +208,7 @@ index 000000000..6941d9fbf
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java
|
||||
new file mode 100644
|
||||
index 000000000..1473ff8cd
|
||||
index 00000000..1473ff8c
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -277,7 +277,7 @@ index 000000000..1473ff8cd
|
|||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/utils/UnsafeUtils.java b/src/main/java/com/destroystokyo/paper/utils/UnsafeUtils.java
|
||||
new file mode 100644
|
||||
index 000000000..62acbf821
|
||||
index 00000000..62acbf82
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/utils/UnsafeUtils.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -315,7 +315,7 @@ index 000000000..62acbf821
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/plugin/EventExecutor.java b/src/main/java/org/bukkit/plugin/EventExecutor.java
|
||||
index 3b2c99ea7..b45b6c1c3 100644
|
||||
index 3b2c99ea..b45b6c1c 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/EventExecutor.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/EventExecutor.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.event.Event;
|
||||
|
@ -401,7 +401,7 @@ index 3b2c99ea7..b45b6c1c3 100644
|
|||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
index 3af99b5bd..72d506d1f 100644
|
||||
index bf972302..77207f14 100644
|
||||
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
|
||||
@@ -0,0 +0,0 @@ public final class JavaPluginLoader implements PluginLoader {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Vex#getSummoner API
|
|||
Get's the Mob that summoned this Vex
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/Vex.java b/src/main/java/org/bukkit/entity/Vex.java
|
||||
index a2f2fcaec..d395e405d 100644
|
||||
index a2f2fcae..d395e405 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Vex.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Vex.java
|
||||
@@ -0,0 +0,0 @@ package org.bukkit.entity;
|
||||
|
|
|
@ -33,7 +33,7 @@ index 7e1ee875..9457832b 100644
|
|||
/**
|
||||
* Sets the position of this Location and returns itself
|
||||
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
||||
index adace47c..de89122e 100644
|
||||
index 1467debe..668c9b7a 100644
|
||||
--- a/src/main/java/org/bukkit/World.java
|
||||
+++ b/src/main/java/org/bukkit/World.java
|
||||
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
|
||||
|
|
|
@ -10,7 +10,7 @@ of giving the player experience points.
|
|||
Both an API To standalone mend, and apply mending logic to .giveExp has been added.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EnchantmentManager.java b/src/main/java/net/minecraft/server/EnchantmentManager.java
|
||||
index e1ea8da88..f1921e151 100644
|
||||
index 108ec49aa..72f0bec4e 100644
|
||||
--- a/src/main/java/net/minecraft/server/EnchantmentManager.java
|
||||
+++ b/src/main/java/net/minecraft/server/EnchantmentManager.java
|
||||
@@ -0,0 +0,0 @@ public class EnchantmentManager {
|
||||
|
@ -19,8 +19,8 @@ index e1ea8da88..f1921e151 100644
|
|||
|
||||
+ public static ItemStack getRandomEquippedItemWithEnchant(Enchantment enchantment, EntityLiving entityliving) { return b(enchantment, entityliving); } // Paper - OBFHELPER
|
||||
public static ItemStack b(Enchantment enchantment, EntityLiving entityliving) {
|
||||
List<ItemStack> list = enchantment.a(entityliving);// Paper - decompile fix
|
||||
if (list.isEmpty()) {
|
||||
List<ItemStack> list = enchantment.a(entityliving);
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
|
||||
index 4bcae2c21..09d85764b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java
|
||||
|
@ -39,7 +39,7 @@ index 4bcae2c21..09d85764b 100644
|
|||
return i * 2;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 8046a2a5f..45f7a4143 100644
|
||||
index eb0330ee1..5a01466e2 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -0,0 +0,0 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Ability to change PlayerProfile in AsyncPreLoginEvent
|
|||
This will allow you to change the players name or skin on login.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java
|
||||
index 30be39b0c..ca3a211a5 100644
|
||||
index 15c01333e..da5a7b3e9 100644
|
||||
--- a/src/main/java/net/minecraft/server/LoginListener.java
|
||||
+++ b/src/main/java/net/minecraft/server/LoginListener.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Ability to get Tile Entities from a chunk without snapshots
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java
|
||||
index 76d395c4e..12c6d850d 100644
|
||||
index e65768499..9ba2fa5de 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java
|
||||
@@ -0,0 +0,0 @@ public class CraftChunk implements Chunk {
|
||||
|
|
|
@ -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/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java
|
||||
index c9019260b..e980e31fc 100644
|
||||
index 507c93804..a4c282220 100644
|
||||
--- a/src/main/java/net/minecraft/server/BlockPosition.java
|
||||
+++ b/src/main/java/net/minecraft/server/BlockPosition.java
|
||||
@@ -0,0 +0,0 @@ public class BlockPosition extends BaseBlockPosition {
|
||||
|
@ -22,7 +22,7 @@ index c9019260b..e980e31fc 100644
|
|||
return new BlockPosition(this);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 69645d517..9682b0a01 100644
|
||||
index 583cee415..192f0aedd 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
|
||||
|
@ -46,7 +46,7 @@ index 20b7c2c6d..d659c57db 100644
|
|||
private float b;
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
index ac250182b..06bb8cf1f 100644
|
||||
index 4809af8f0..7401bafa9 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 {
|
||||
|
@ -68,7 +68,7 @@ index ac250182b..06bb8cf1f 100644
|
|||
return this.moveController;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
index 95af2d529..162de836e 100644
|
||||
index fe1c5a49b..f58ebe3c2 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 {
|
||||
|
@ -81,7 +81,7 @@ index 95af2d529..162de836e 100644
|
|||
protected int ticksFarFromPlayer;
|
||||
protected float aZ;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLlama.java b/src/main/java/net/minecraft/server/EntityLlama.java
|
||||
index 9c48bb3c9..22cea8552 100644
|
||||
index b19bd2b99..5e1976871 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityLlama.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityLlama.java
|
||||
@@ -0,0 +0,0 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn
|
||||
|
@ -93,29 +93,31 @@ index 9c48bb3c9..22cea8552 100644
|
|||
return this.bQ != null;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PathfinderGoal.java b/src/main/java/net/minecraft/server/PathfinderGoal.java
|
||||
index acc099e95..339c78eec 100644
|
||||
index a146a8b45..a19853463 100644
|
||||
--- a/src/main/java/net/minecraft/server/PathfinderGoal.java
|
||||
+++ b/src/main/java/net/minecraft/server/PathfinderGoal.java
|
||||
@@ -0,0 +0,0 @@ public abstract class PathfinderGoal {
|
||||
}
|
||||
|
||||
public void d() {
|
||||
public void c() {}
|
||||
|
||||
- public void d() {}
|
||||
+ public void d() {
|
||||
+ onTaskReset(); // Paper
|
||||
}
|
||||
+ }
|
||||
+ public void onTaskReset() {} // Paper
|
||||
|
||||
public void e() {
|
||||
}
|
||||
public void e() {}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java b/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java
|
||||
index 9a75cb63b..cf10605aa 100644
|
||||
index d5c08aa7c..756d63239 100644
|
||||
--- a/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java
|
||||
+++ b/src/main/java/net/minecraft/server/PathfinderGoalGotoTarget.java
|
||||
@@ -0,0 +0,0 @@
|
||||
package net.minecraft.server;
|
||||
@@ -0,0 +0,0 @@ package net.minecraft.server;
|
||||
|
||||
public abstract class PathfinderGoalGotoTarget extends PathfinderGoal {
|
||||
|
||||
- private final EntityCreature f;
|
||||
+ private final EntityCreature f; public EntityCreature getEntity() { return f; } // Paper - OBFHELPER
|
||||
+ private final EntityCreature f;public EntityCreature getEntity() { return f; } // Paper - OBFHELPER
|
||||
public double a;
|
||||
protected int b;
|
||||
protected int c;
|
||||
|
@ -126,8 +128,8 @@ index 9a75cb63b..cf10605aa 100644
|
|||
private final int i;
|
||||
private final int j;
|
||||
@@ -0,0 +0,0 @@ public abstract class PathfinderGoalGotoTarget extends PathfinderGoal {
|
||||
public PathfinderGoalGotoTarget(EntityCreature entitycreature, double d0, int ix) {
|
||||
this(entitycreature, d0, ix, 1);
|
||||
public PathfinderGoalGotoTarget(EntityCreature entitycreature, double d0, int i) {
|
||||
this(entitycreature, d0, i, 1);
|
||||
}
|
||||
+ // Paper start - activation range improvements
|
||||
+ @Override
|
||||
|
@ -137,22 +139,22 @@ index 9a75cb63b..cf10605aa 100644
|
|||
+ }
|
||||
+ // Paper end
|
||||
|
||||
public PathfinderGoalGotoTarget(EntityCreature entitycreature, double d0, int ix, int jx) {
|
||||
public PathfinderGoalGotoTarget(EntityCreature entitycreature, double d0, int i, int j) {
|
||||
this.d = BlockPosition.ZERO;
|
||||
@@ -0,0 +0,0 @@ public abstract class PathfinderGoalGotoTarget extends PathfinderGoal {
|
||||
blockposition$mutableblockposition.g(blockposition).d(i1, k - 1, j1);
|
||||
if (this.f.f(blockposition$mutableblockposition) && this.a(this.f.world, blockposition$mutableblockposition)) {
|
||||
this.d = blockposition$mutableblockposition;
|
||||
+ setTarget(blockposition$mutableblockposition.toBlockPosition()); // Paper
|
||||
blockposition_mutableblockposition.g(blockposition).d(i1, k - 1, j1);
|
||||
if (this.f.f((BlockPosition) blockposition_mutableblockposition) && this.a(this.f.world, blockposition_mutableblockposition)) {
|
||||
this.d = blockposition_mutableblockposition;
|
||||
+ setTarget(blockposition_mutableblockposition.toBlockPosition()); // Paper
|
||||
return true;
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalSelector.java b/src/main/java/net/minecraft/server/PathfinderGoalSelector.java
|
||||
index ae21eb84d..8f35f71f8 100644
|
||||
index f3df91181..3e2f9c749 100644
|
||||
--- a/src/main/java/net/minecraft/server/PathfinderGoalSelector.java
|
||||
+++ b/src/main/java/net/minecraft/server/PathfinderGoalSelector.java
|
||||
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.Logger;
|
||||
public class PathfinderGoalSelector {
|
||||
@@ -0,0 +0,0 @@ public class PathfinderGoalSelector {
|
||||
|
||||
private static final Logger a = LogManager.getLogger();
|
||||
private final Set<PathfinderGoalSelector.PathfinderGoalSelectorItem> b = Sets.newLinkedHashSet();
|
||||
- private final Set<PathfinderGoalSelector.PathfinderGoalSelectorItem> c = Sets.newLinkedHashSet();
|
||||
|
@ -385,7 +387,7 @@ index 09df00e94..d08ef3fe1 100644
|
|||
{
|
||||
isActive = false;
|
||||
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
|
||||
index 87bc8e2d9..06d84a0b6 100644
|
||||
index d3c2abc39..1d222eaff 100644
|
||||
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
|
||||
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
|
||||
@@ -0,0 +0,0 @@ public class SpigotWorldConfig
|
||||
|
|
|
@ -40,7 +40,7 @@ index d1a546c8f..284630f74 100644
|
|||
case TRAPPED_CHEST:
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java
|
||||
new file mode 100644
|
||||
index 000000000..0e8acf12e
|
||||
index 000000000..c00b89c8d
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -55,6 +55,8 @@ index 000000000..0e8acf12e
|
|||
+import net.minecraft.server.MinecraftServer;
|
||||
+import net.minecraft.server.NBTBase;
|
||||
+import net.minecraft.server.NBTTagCompound;
|
||||
+
|
||||
+import org.bukkit.Bukkit;
|
||||
+import org.bukkit.Material;
|
||||
+import org.bukkit.configuration.serialization.DelegateDeserialization;
|
||||
+import org.bukkit.craftbukkit.util.CraftMagicNumbers;
|
||||
|
@ -224,7 +226,7 @@ index 000000000..0e8acf12e
|
|||
+
|
||||
+ if (tag.hasKey(ENTITY_TAG.NBT)) {
|
||||
+ entityTag = tag.getCompound(ENTITY_TAG.NBT);
|
||||
+ MinecraftServer.getServer().dataConverterManager.update(DataConverterTypes.ENTITY, new Dynamic(DynamicOpsNBT.a, entityTag), -1, CraftMagicNumbers.DATA_VERSION);
|
||||
+ MinecraftServer.getServer().dataConverterManager.update(DataConverterTypes.ENTITY, new Dynamic(DynamicOpsNBT.a, entityTag), -1, Bukkit.getUnsafe().getDataVersion());
|
||||
+
|
||||
+ if (entityTag.hasKey(INVISIBLE.NBT)) {
|
||||
+ invisible = entityTag.getBoolean(INVISIBLE.NBT);
|
||||
|
@ -354,7 +356,7 @@ index 000000000..0e8acf12e
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
index c00ced8e8..197563552 100644
|
||||
index 1c94fd908..05d3ff969 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
@@ -0,0 +0,0 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add BeaconEffectEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/TileEntityBeacon.java b/src/main/java/net/minecraft/server/TileEntityBeacon.java
|
||||
index 7bd27ad7f9..eafd207467 100644
|
||||
index fecd65ddb..c6bd54a2c 100644
|
||||
--- a/src/main/java/net/minecraft/server/TileEntityBeacon.java
|
||||
+++ b/src/main/java/net/minecraft/server/TileEntityBeacon.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.entity.HumanEntity;
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Add Debug Entities option to debug dupe uuid issues
|
|||
Add -Ddebug.entities=true to your JVM flags to gain more information
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 9f1610326..1581edc4a 100644
|
||||
index 969e43ed1..8bab03bd0 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
|
||||
|
@ -18,7 +18,7 @@ index 9f1610326..1581edc4a 100644
|
|||
if (bukkitEntity == null) {
|
||||
bukkitEntity = CraftEntity.getEntity(world.getServer(), this);
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index 7711b2eff..67ef109a5 100644
|
||||
index 84efc1cc3..601fe77c5 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 IEntityAccess, GeneratorAccess, IIBlockAc
|
||||
|
@ -30,7 +30,7 @@ index 7711b2eff..67ef109a5 100644
|
|||
public boolean captureBlockStates = false;
|
||||
public boolean captureTreeGeneration = false;
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index 45851cd0c..f37e85eb0 100644
|
||||
index 702a5d9d6..be475288e 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 implements IAsyncTaskHandler {
|
||||
|
|
|
@ -36,7 +36,7 @@ index a92914576..f3f2a0b69 100644
|
|||
public static int tabSpamLimit = 500;
|
||||
private static void tabSpamLimiters() {
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index c3efb5e1b..ca72e6ad1 100644
|
||||
index a55ab0fd9..5a0dbcb42 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -0,0 +0,0 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
|
||||
|
@ -48,7 +48,7 @@ index c3efb5e1b..ca72e6ad1 100644
|
|||
long start = System.nanoTime(), curTime, wait, tickSection = start; // Paper - Further improve server tick loop
|
||||
lastTick = start - TICK_TIME; // Paper
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 71d1929c1..93a8f4cdf 100644
|
||||
index ec197ef51..392cd0e3d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -0,0 +0,0 @@ public final class CraftServer implements Server {
|
||||
|
@ -68,7 +68,7 @@ index 71d1929c1..93a8f4cdf 100644
|
|||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
|
||||
index eed96c60c..496c5cbdf 100644
|
||||
index 9c442dee2..fb09fb097 100644
|
||||
--- a/src/main/java/org/spigotmc/SpigotConfig.java
|
||||
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
|
||||
@@ -0,0 +0,0 @@ public class SpigotConfig
|
||||
|
|
|
@ -22,7 +22,7 @@ index 7ef67350a..9dc2d8be2 100644
|
|||
if (CraftEventFactory.callPigZapEvent(this, entitylightning, entitypigzombie).isCancelled()) {
|
||||
return;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
|
||||
index d2572b3e1..ddf170180 100644
|
||||
index f8e05b75d..213d0b18c 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityVillager.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
|
||||
@@ -0,0 +0,0 @@ public class EntityVillager extends EntityAgeable implements NPC, IMerchant {
|
||||
|
@ -39,7 +39,7 @@ index d2572b3e1..ddf170180 100644
|
|||
entitywitch.prepare(this.world.getDamageScaler(new BlockPosition(entitywitch)), (GroupDataEntity) null, (NBTTagCompound) null);
|
||||
entitywitch.setNoAI(this.isNoAI());
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 35992c4ba..075e6f04e 100644
|
||||
index 4d3bfd69e..b8bf1fbef 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -0,0 +0,0 @@ public class CraftEventFactory {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add LivingEntity#getTargetEntity
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/AxisAlignedBB.java b/src/main/java/net/minecraft/server/AxisAlignedBB.java
|
||||
index 19819b134..49228a884 100644
|
||||
index c5e541985..d6a5c7407 100644
|
||||
--- a/src/main/java/net/minecraft/server/AxisAlignedBB.java
|
||||
+++ b/src/main/java/net/minecraft/server/AxisAlignedBB.java
|
||||
@@ -0,0 +0,0 @@ public class AxisAlignedBB {
|
||||
|
@ -44,9 +44,9 @@ index 19819b134..49228a884 100644
|
|||
+ public MovingObjectPosition calculateIntercept(Vec3D vec3d, Vec3D vec3d1) { return b(vec3d, vec3d1); } // Paper - OBFHELPER
|
||||
@Nullable
|
||||
public MovingObjectPosition b(Vec3D vec3d, Vec3D vec3d1) {
|
||||
return this.a(vec3d, vec3d1, (BlockPosition)null);
|
||||
return this.a(vec3d, vec3d1, (BlockPosition) null);
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 0f646ac7e..23e6f45bf 100644
|
||||
index f26056dd5..35715e434 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
|
||||
|
@ -71,7 +71,7 @@ index 0f646ac7e..23e6f45bf 100644
|
|||
return this.d(this.pitch, this.yaw);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
index 46a4e37a2..34b649dad 100644
|
||||
index 60aaf0547..710ad8b17 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
@@ -0,0 +0,0 @@ package net.minecraft.server;
|
||||
|
@ -130,16 +130,16 @@ index 46a4e37a2..34b649dad 100644
|
|||
|
||||
public int getShieldBlockingDelay() {
|
||||
diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||
index 42b3d3fc5..61806bbc4 100644
|
||||
index f6916fd45..71f08d53c 100644
|
||||
--- a/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||
+++ b/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||
@@ -0,0 +0,0 @@ public final class IEntitySelector {
|
||||
public static final Predicate<Entity> e = (entity) -> {
|
||||
return !(entity instanceof EntityHuman) || !((EntityHuman)entity).isSpectator() && !((EntityHuman)entity).u();
|
||||
return !(entity instanceof EntityHuman) || !((EntityHuman) entity).isSpectator() && !((EntityHuman) entity).u();
|
||||
};
|
||||
+ public static Predicate<Entity> notSpectator() { return f; } // Paper - OBFHELPER
|
||||
public static final Predicate<Entity> f = (entity) -> {
|
||||
return !(entity instanceof EntityHuman) || !((EntityHuman)entity).isSpectator();
|
||||
return !(entity instanceof EntityHuman) || !((EntityHuman) entity).isSpectator();
|
||||
};
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
||||
index eeab59379..d6a4bc64a 100644
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Add MinecraftKey Information to Objects
|
|||
Stores the reference to the objects respective MinecraftKey
|
||||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/PaperCommand.java b/src/main/java/com/destroystokyo/paper/PaperCommand.java
|
||||
index 961966e169..56700fc596 100644
|
||||
index 961966e16..56700fc59 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 {
|
||||
|
@ -19,7 +19,7 @@ index 961966e169..56700fc596 100644
|
|||
MutablePair<Integer, Map<ChunkCoordIntPair, Integer>> info = list.computeIfAbsent(key, k -> MutablePair.of(0, Maps.newHashMap()));
|
||||
ChunkCoordIntPair chunk = new ChunkCoordIntPair(e.getChunkX(), e.getChunkZ());
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index ffaa425ec8..19a3ba79f2 100644
|
||||
index b1a4a6d70..e72ccefc2 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.event.entity.EntityPortalEvent;
|
||||
|
@ -64,7 +64,7 @@ index ffaa425ec8..19a3ba79f2 100644
|
|||
+ }
|
||||
@Nullable
|
||||
public final String getSaveID() {
|
||||
- EntityTypes entitytypes = this.P();
|
||||
- EntityTypes<?> entitytypes = this.P();
|
||||
- MinecraftKey minecraftkey = EntityTypes.getName(entitytypes);
|
||||
-
|
||||
- return entitytypes.a() && minecraftkey != null ? minecraftkey.toString() : null;
|
||||
|
@ -75,7 +75,7 @@ index ffaa425ec8..19a3ba79f2 100644
|
|||
|
||||
protected abstract void a(NBTTagCompound nbttagcompound);
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java
|
||||
index 5c1ab6a0b6..cd411a1423 100644
|
||||
index a07ee150c..d74bfa120 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityTypes.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityTypes.java
|
||||
@@ -0,0 +0,0 @@ public class EntityTypes<T extends Entity> {
|
||||
|
@ -88,7 +88,7 @@ index 5c1ab6a0b6..cd411a1423 100644
|
|||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/KeyedObject.java b/src/main/java/net/minecraft/server/KeyedObject.java
|
||||
new file mode 100644
|
||||
index 0000000000..743142d030
|
||||
index 000000000..743142d03
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/minecraft/server/KeyedObject.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -102,7 +102,7 @@ index 0000000000..743142d030
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
|
||||
index 62b6e6eb38..7390061bf0 100644
|
||||
index 62b6e6eb3..7390061bf 100644
|
||||
--- a/src/main/java/net/minecraft/server/TileEntity.java
|
||||
+++ b/src/main/java/net/minecraft/server/TileEntity.java
|
||||
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.Logger;
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add More Creeper API
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java
|
||||
index 569248abb..b1752d66f 100644
|
||||
index a07337ae4..945a75dd6 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityCreeper.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityCreeper.java
|
||||
@@ -0,0 +0,0 @@ public class EntityCreeper extends EntityMonster {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add PhantomPreSpawnEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPhantom.java b/src/main/java/net/minecraft/server/EntityPhantom.java
|
||||
index 60cb6f583..7a48719c9 100644
|
||||
index a99d90efc..f576264a8 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPhantom.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPhantom.java
|
||||
@@ -0,0 +0,0 @@ public class EntityPhantom extends EntityFlying implements IMonster {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerArmorChangeEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
index a6457e870..fadf1df28 100644
|
||||
index 6e96cea08..ffff7390e 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -30,11 +30,11 @@ index a6457e870..fadf1df28 100644
|
|||
if (!itemstack.isEmpty()) {
|
||||
this.getAttributeMap().a(itemstack.a(enumitemslot));
|
||||
diff --git a/src/main/java/net/minecraft/server/EnumItemSlot.java b/src/main/java/net/minecraft/server/EnumItemSlot.java
|
||||
index a13515a7f..bad1020c0 100644
|
||||
index a9a133993..8f4b5dca9 100644
|
||||
--- a/src/main/java/net/minecraft/server/EnumItemSlot.java
|
||||
+++ b/src/main/java/net/minecraft/server/EnumItemSlot.java
|
||||
@@ -0,0 +0,0 @@ public enum EnumItemSlot {
|
||||
this.j = s1;
|
||||
this.j = s;
|
||||
}
|
||||
|
||||
+ public EnumItemSlot.Function getType() { return this.a(); } // Paper - OBFHELPER
|
||||
|
|
|
@ -34,7 +34,7 @@ how PlayerPreLoginEvent interacts with PlayerConnectionCloseEvent
|
|||
is undefined.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java
|
||||
index 95d34fbfe..d20545bad 100644
|
||||
index ca76f2a38..dfe7a029f 100644
|
||||
--- a/src/main/java/net/minecraft/server/LoginListener.java
|
||||
+++ b/src/main/java/net/minecraft/server/LoginListener.java
|
||||
@@ -0,0 +0,0 @@ public class LoginListener implements PacketLoginInListener, ITickable {
|
||||
|
@ -50,7 +50,7 @@ index 95d34fbfe..d20545bad 100644
|
|||
private SecretKey loginKey;
|
||||
private EntityPlayer l;
|
||||
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
|
||||
index 065bede4c..21e92b921 100644
|
||||
index 0b8796d0a..553637239 100644
|
||||
--- a/src/main/java/net/minecraft/server/NetworkManager.java
|
||||
+++ b/src/main/java/net/minecraft/server/NetworkManager.java
|
||||
@@ -0,0 +0,0 @@ import io.netty.handler.timeout.TimeoutException;
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Add PlayerInitialSpawnEvent
|
|||
For modifying a player's initial spawn location as they join the server
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 26df2ff32f..4320efaef5 100644
|
||||
index c2bb79fe8..4f9c97a08 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -0,0 +0,0 @@ public abstract class PlayerList {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerJumpEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
index d6333d9bb..96e3d20e3 100644
|
||||
index ca6b9063b..7343eb25c 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
@@ -0,0 +0,0 @@ public abstract class EntityHuman extends EntityLiving {
|
||||
|
@ -17,7 +17,7 @@ index d6333d9bb..96e3d20e3 100644
|
|||
super.cH();
|
||||
this.a(StatisticList.JUMP);
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index c8b251e69..00751a9d9 100644
|
||||
index 691c16271..067de3b5f 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.inventory.CraftingInventory;
|
||||
|
|
|
@ -5,20 +5,20 @@ Subject: [PATCH] Add PlayerUseUnknownEntityEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PacketPlayInUseEntity.java b/src/main/java/net/minecraft/server/PacketPlayInUseEntity.java
|
||||
index a4b98c81f..53d38ea40 100644
|
||||
index 77440ac81..8711462e1 100644
|
||||
--- a/src/main/java/net/minecraft/server/PacketPlayInUseEntity.java
|
||||
+++ b/src/main/java/net/minecraft/server/PacketPlayInUseEntity.java
|
||||
@@ -0,0 +0,0 @@ import java.io.IOException;
|
||||
import javax.annotation.Nullable;
|
||||
@@ -0,0 +0,0 @@ import javax.annotation.Nullable;
|
||||
|
||||
public class PacketPlayInUseEntity implements Packet<PacketListenerPlayIn> {
|
||||
|
||||
- private int a;
|
||||
+ private int a; public int getEntityId() { return this.a; } // Paper - add accessor
|
||||
private PacketPlayInUseEntity.EnumEntityUseAction action;
|
||||
private Vec3D c;
|
||||
private EnumHand d;
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index b67861519..dc2c143c8 100644
|
||||
index 91eb73b73..f35714fa1 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 {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add ProjectileCollideEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
|
||||
index cc38cfb04..46606ed5c 100644
|
||||
index 6dee9e169..2aaa27789 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityArrow.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityArrow.java
|
||||
@@ -0,0 +0,0 @@ public abstract class EntityArrow extends Entity implements IProjectile {
|
||||
|
@ -46,7 +46,7 @@ index 3e3619d79..58cc4824c 100644
|
|||
this.a(movingobjectposition);
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
|
||||
index cffb40efb..45a326779 100644
|
||||
index 16aa2b5f2..23f7d36b5 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
|
||||
@@ -0,0 +0,0 @@ public class EntityFishingHook extends Entity {
|
||||
|
@ -67,7 +67,7 @@ index cffb40efb..45a326779 100644
|
|||
vec3d1 = new Vec3D(movingobjectposition.pos.x, movingobjectposition.pos.y, movingobjectposition.pos.z);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityProjectile.java b/src/main/java/net/minecraft/server/EntityProjectile.java
|
||||
index 11638221b..431afaf2f 100644
|
||||
index 751ea456b..bab5b89fe 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityProjectile.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityProjectile.java
|
||||
@@ -0,0 +0,0 @@ public abstract class EntityProjectile extends Entity implements IProjectile {
|
||||
|
@ -87,7 +87,7 @@ index 11638221b..431afaf2f 100644
|
|||
if (movingobjectposition.type == MovingObjectPosition.EnumMovingObjectType.BLOCK && this.world.getType(movingobjectposition.getBlockPosition()).getBlock() == Blocks.NETHER_PORTAL) {
|
||||
this.e(movingobjectposition.getBlockPosition());
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 2a06cbf85..464c5cfc9 100644
|
||||
index 717cd0f42..943963047 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -0,0 +0,0 @@ public class CraftEventFactory {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add TNTPrimeEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/BlockFire.java b/src/main/java/net/minecraft/server/BlockFire.java
|
||||
index 35a265fa2..3bacd8958 100644
|
||||
index 3f421d46a..0fbcd352c 100644
|
||||
--- a/src/main/java/net/minecraft/server/BlockFire.java
|
||||
+++ b/src/main/java/net/minecraft/server/BlockFire.java
|
||||
@@ -0,0 +0,0 @@ package net.minecraft.server;
|
||||
|
@ -112,7 +112,7 @@ index f97fccf56..c821e6b3b 100644
|
|||
world.setAir(blockposition);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java
|
||||
index 473773724..a49f1208b 100644
|
||||
index 79d8be8d4..fcc82d8eb 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityEnderDragon.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java
|
||||
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.Logger;
|
||||
|
|
|
@ -127,7 +127,7 @@ index 000000000..fdd8708f9
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java
|
||||
index 64d2b8aec..95d34fbfe 100644
|
||||
index c5801122d..ca76f2a38 100644
|
||||
--- a/src/main/java/net/minecraft/server/LoginListener.java
|
||||
+++ b/src/main/java/net/minecraft/server/LoginListener.java
|
||||
@@ -0,0 +0,0 @@ public class LoginListener implements PacketLoginInListener, ITickable {
|
||||
|
@ -203,7 +203,7 @@ index 64d2b8aec..95d34fbfe 100644
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
|
||||
index e5cc77c6d..120416b30 100644
|
||||
index 4c1110479..c53697914 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<?>> {
|
||||
|
@ -244,27 +244,27 @@ index b95836d44..621aad150 100644
|
|||
int j = this.g();
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PacketLoginInCustomPayload.java b/src/main/java/net/minecraft/server/PacketLoginInCustomPayload.java
|
||||
index e3c0094f7..edfd4a506 100644
|
||||
index bdac03da4..430445cc6 100644
|
||||
--- a/src/main/java/net/minecraft/server/PacketLoginInCustomPayload.java
|
||||
+++ b/src/main/java/net/minecraft/server/PacketLoginInCustomPayload.java
|
||||
@@ -0,0 +0,0 @@ package net.minecraft.server;
|
||||
import java.io.IOException;
|
||||
@@ -0,0 +0,0 @@ import java.io.IOException;
|
||||
|
||||
public class PacketLoginInCustomPayload implements Packet<PacketLoginInListener> {
|
||||
|
||||
- private int a;
|
||||
- private PacketDataSerializer b;
|
||||
+ private int a; public int getId() { return a; } // Paper - OBFHELPER
|
||||
+ private PacketDataSerializer b; public PacketDataSerializer getBuf() { return b; } // Paper - OBFHELPER
|
||||
|
||||
public PacketLoginInCustomPayload() {
|
||||
}
|
||||
public PacketLoginInCustomPayload() {}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PacketLoginOutCustomPayload.java b/src/main/java/net/minecraft/server/PacketLoginOutCustomPayload.java
|
||||
index 9c5559ece..9de0421bb 100644
|
||||
index 345843a7f..23c96f44b 100644
|
||||
--- a/src/main/java/net/minecraft/server/PacketLoginOutCustomPayload.java
|
||||
+++ b/src/main/java/net/minecraft/server/PacketLoginOutCustomPayload.java
|
||||
@@ -0,0 +0,0 @@ public class PacketLoginOutCustomPayload implements Packet<PacketLoginOutListene
|
||||
public PacketLoginOutCustomPayload() {
|
||||
}
|
||||
|
||||
public PacketLoginOutCustomPayload() {}
|
||||
|
||||
+ // Paper start
|
||||
+ public PacketLoginOutCustomPayload(int id, MinecraftKey channel, PacketDataSerializer buf) {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Add World Util Methods
|
|||
Methods that can be used for other patches to help improve logic.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
|
||||
index 37bea8dbe..eca041265 100644
|
||||
index 446e464b7..dcb036f31 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 {
|
||||
|
@ -18,13 +18,13 @@ index 37bea8dbe..eca041265 100644
|
|||
return this.a(blockposition, i, this.world.o().g());
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/IWorldReader.java b/src/main/java/net/minecraft/server/IWorldReader.java
|
||||
index f5c56de0c..9b972e65d 100644
|
||||
index 237a34082..cf53118cc 100644
|
||||
--- a/src/main/java/net/minecraft/server/IWorldReader.java
|
||||
+++ b/src/main/java/net/minecraft/server/IWorldReader.java
|
||||
@@ -0,0 +0,0 @@ public interface IWorldReader extends IBlockAccess {
|
||||
}
|
||||
|
||||
int getLightLevel(BlockPosition var1, int var2);
|
||||
int getLightLevel(BlockPosition blockposition, int i);
|
||||
+ // Paper start
|
||||
+ default @Nullable
|
||||
+ IBlockData getTypeIfLoaded(BlockPosition var1) {
|
||||
|
@ -42,24 +42,15 @@ index f5c56de0c..9b972e65d 100644
|
|||
+ }
|
||||
+ // Paper end
|
||||
|
||||
boolean isChunkLoaded(int var1, int var2, boolean var3);
|
||||
boolean isChunkLoaded(int i, int j, boolean flag);
|
||||
|
||||
@@ -0,0 +0,0 @@ public interface IWorldReader extends IBlockAccess {
|
||||
WorldBorder worldborder = this.getWorldBorder();
|
||||
boolean flag1 = worldborder.b() < (double)i && (double)j < worldborder.d() && worldborder.c() < (double)i1 && (double)j1 < worldborder.e();
|
||||
VoxelShapeBitSet voxelshapebitset = new VoxelShapeBitSet(j - i, l - k, j1 - i1);
|
||||
- Predicate predicate = (voxelshape3) -> {
|
||||
+ Predicate<VoxelShape> predicate = (voxelshape3) -> { // Paper - decompile fix
|
||||
return !voxelshape3.isEmpty() && VoxelShapes.c(voxelshape, voxelshape3, OperatorBoolean.AND);
|
||||
};
|
||||
Stream stream = StreamSupport.stream(BlockPosition.MutableBlockPosition.b(i, k, i1, j - 1, l - 1, j1 - 1).spliterator(), false).map((blockposition$mutableblockposition) -> {
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index 0e70a3d68..4093d3486 100644
|
||||
index ae7e4a7fa..96442ad7d 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 IEntityAccess, GeneratorAccess, IIBlockAc
|
||||
public final List<Entity> k = Lists.newArrayList();
|
||||
protected final IntHashMap<Entity> entitiesById = new IntHashMap();
|
||||
protected final IntHashMap<Entity> entitiesById = new IntHashMap<>();
|
||||
private final long F = 16777215L;
|
||||
- private int G;
|
||||
+ private int G; public int getSkylightSubtracted() { return this.G; } public void setSkylightSubtracted(int value) { this.G = value;} // Paper - OBFHELPER
|
||||
|
|
|
@ -24,7 +24,7 @@ index 973ea8bca..7c7d5595a 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/BlockIceFrost.java b/src/main/java/net/minecraft/server/BlockIceFrost.java
|
||||
index 1100073f3..598621fbb 100644
|
||||
index 7cac7cc90..792a69ad5 100644
|
||||
--- a/src/main/java/net/minecraft/server/BlockIceFrost.java
|
||||
+++ b/src/main/java/net/minecraft/server/BlockIceFrost.java
|
||||
@@ -0,0 +0,0 @@ public class BlockIceFrost extends BlockIce {
|
||||
|
@ -32,16 +32,19 @@ index 1100073f3..598621fbb 100644
|
|||
|
||||
public void a(IBlockData iblockdata, World world, BlockPosition blockposition, Random random) {
|
||||
+ if (!world.paperConfig.frostedIceEnabled) return; // Paper - add ability to disable frosted ice
|
||||
if ((random.nextInt(3) == 0 || this.a(world, blockposition, 4)) && world.getLightLevel(blockposition) > 11 - iblockdata.get(a) - iblockdata.b(world, blockposition) && this.c(iblockdata, world, blockposition)) {
|
||||
try (BlockPosition.b blockposition$b = BlockPosition.b.r()) {
|
||||
for(EnumDirection enumdirection : EnumDirection.values()) {
|
||||
blockposition$b.g(blockposition).c(enumdirection);
|
||||
IBlockData iblockdata1 = world.getType(blockposition$b);
|
||||
if (iblockdata1.getBlock() == this && !this.c(iblockdata1, world, blockposition$b)) {
|
||||
- world.getBlockTickList().a(blockposition$b, this, MathHelper.nextInt(random, 20, 40));
|
||||
+ world.getBlockTickList().a(blockposition$b, this, MathHelper.nextInt(random, world.paperConfig.frostedIceDelayMin, world.paperConfig.frostedIceDelayMax)); // Paper - use configurable min/max delay
|
||||
if ((random.nextInt(3) == 0 || this.a(world, blockposition, 4)) && world.getLightLevel(blockposition) > 11 - (Integer) iblockdata.get(BlockIceFrost.a) - iblockdata.b(world, blockposition) && this.c(iblockdata, world, blockposition)) {
|
||||
BlockPosition.b blockposition_b = BlockPosition.b.r();
|
||||
Throwable throwable = null;
|
||||
@@ -0,0 +0,0 @@ public class BlockIceFrost extends BlockIce {
|
||||
IBlockData iblockdata1 = world.getType(blockposition_b);
|
||||
|
||||
if (iblockdata1.getBlock() == this && !this.c(iblockdata1, world, blockposition_b)) {
|
||||
- world.getBlockTickList().a(blockposition_b, this, MathHelper.nextInt(random, 20, 40));
|
||||
+ world.getBlockTickList().a(blockposition_b, this, MathHelper.nextInt(random, world.paperConfig.frostedIceDelayMin, world.paperConfig.frostedIceDelayMax)); // Paper - use configurable min/max delay
|
||||
}
|
||||
}
|
||||
} catch (Throwable throwable1) {
|
||||
@@ -0,0 +0,0 @@ public class BlockIceFrost extends BlockIce {
|
||||
}
|
||||
|
||||
} else {
|
||||
|
|
|
@ -19,25 +19,26 @@ index 875650b8d..74185b31f 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EnderDragonBattle.java b/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
||||
index 1e22aa531..e6da1c30f 100644
|
||||
index a6259d9e6..aad7ce93f 100644
|
||||
--- a/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
||||
+++ b/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
||||
@@ -0,0 +0,0 @@ public class EnderDragonBattle {
|
||||
private int h;
|
||||
private int i;
|
||||
private int j;
|
||||
+ private void setDragonKilled(boolean dragonKilled) { this.k = dragonKilled; } // Paper - OBFHELPER
|
||||
private boolean k;
|
||||
- private boolean k;
|
||||
+ private boolean k; private void setDragonKilled(boolean dragonKilled) { this.k = dragonKilled; } // Paper - OBFHELPER
|
||||
private boolean l;
|
||||
private UUID m;
|
||||
- private boolean n = true;
|
||||
+ private boolean n = true; private void setScanForLegacyFight(boolean scanForLegacyFight) { this.n = scanForLegacyFight; } private boolean scanForLegacyFight() { return this.n; } // Paper - OBFHELPER
|
||||
- private boolean n;
|
||||
+ private boolean n; private void setScanForLegacyFight(boolean scanForLegacyFight) { this.n = scanForLegacyFight; } private boolean scanForLegacyFight() { return this.n; } // Paper - OBFHELPER
|
||||
private BlockPosition o;
|
||||
private EnumDragonRespawn p;
|
||||
private int q;
|
||||
private List<EntityEnderCrystal> r;
|
||||
|
||||
public EnderDragonBattle(WorldServer worldserver, NBTTagCompound nbttagcompound) {
|
||||
@@ -0,0 +0,0 @@ public class EnderDragonBattle {
|
||||
this.bossBattle = (BossBattleServer) (new BossBattleServer(new ChatMessage("entity.minecraft.ender_dragon", new Object[0]), BossBattle.BarColor.PINK, BossBattle.BarStyle.PROGRESS)).setPlayMusic(true).c(true);
|
||||
this.e = Lists.newArrayList();
|
||||
this.n = true;
|
||||
+ // Paper start
|
||||
+ setScanForLegacyFight(worldserver.paperConfig.scanForLegacyEnderDragon);
|
||||
+ if (!scanForLegacyFight()) setDragonKilled(true);
|
||||
|
@ -45,13 +46,4 @@ index 1e22aa531..e6da1c30f 100644
|
|||
this.d = worldserver;
|
||||
if (nbttagcompound.hasKeyOfType("DragonKilled", 99)) {
|
||||
if (nbttagcompound.b("DragonUUID")) {
|
||||
@@ -0,0 +0,0 @@ public class EnderDragonBattle {
|
||||
hashset.add(entityplayer);
|
||||
}
|
||||
|
||||
- HashSet hashset1 = Sets.newHashSet(this.bossBattle.getPlayers());
|
||||
+ HashSet<EntityPlayer> hashset1 = Sets.newHashSet(this.bossBattle.getPlayers()); // Paper - decomp fix
|
||||
hashset1.removeAll(hashset);
|
||||
|
||||
for(EntityPlayer entityplayer1 : hashset1) {
|
||||
--
|
|
@ -30,7 +30,7 @@ index 341038fc4..3e1f4be10 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
index 9d4d8c697..8f4319c80 100644
|
||||
index f31f31c37..42a073d70 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 {
|
||||
|
|
|
@ -49,7 +49,7 @@ index 000000000..f699ce18c
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
|
||||
index c5d562dca..37bea8dbe 100644
|
||||
index d1b6344ce..446e464b7 100644
|
||||
--- a/src/main/java/net/minecraft/server/Chunk.java
|
||||
+++ b/src/main/java/net/minecraft/server/Chunk.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -88,12 +88,12 @@ index c5d562dca..37bea8dbe 100644
|
|||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
index 6a9b9fa2a..557aa5180 100644
|
||||
index fe189a841..9a8894238 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
@@ -0,0 +0,0 @@ import java.util.function.BooleanSupplier;
|
||||
@@ -0,0 +0,0 @@ import java.util.concurrent.CompletableFuture;
|
||||
import java.util.function.BooleanSupplier;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
import javax.annotation.Nullable;
|
||||
+import com.destroystokyo.paper.exception.ServerInternalException;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
|
@ -119,7 +119,7 @@ index 6a9b9fa2a..557aa5180 100644
|
|||
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
|
||||
index 95120be5d..5977d3b48 100644
|
||||
index 09ef8729d..bf67dbf54 100644
|
||||
--- a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
|
||||
+++ b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -130,7 +130,7 @@ index 95120be5d..5977d3b48 100644
|
|||
import com.google.common.collect.Maps;
|
||||
import com.google.common.io.Files;
|
||||
@@ -0,0 +0,0 @@ public class NameReferencingFileConverter {
|
||||
root = NBTCompressedStreamTools.a(new java.io.FileInputStream(file1));
|
||||
root = NBTCompressedStreamTools.a(new java.io.FileInputStream(file5));
|
||||
} catch (Exception exception) {
|
||||
exception.printStackTrace();
|
||||
+ ServerInternalException.reportInternalException(exception); // Paper
|
||||
|
@ -146,7 +146,7 @@ index 95120be5d..5977d3b48 100644
|
|||
}
|
||||
// CraftBukkit end
|
||||
diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java
|
||||
index 66fe6ff86..06417b9ec 100644
|
||||
index e8d9f33c8..5b48bb0b7 100644
|
||||
--- a/src/main/java/net/minecraft/server/RegionFile.java
|
||||
+++ b/src/main/java/net/minecraft/server/RegionFile.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -165,7 +165,7 @@ index 66fe6ff86..06417b9ec 100644
|
|||
|
||||
}
|
||||
@@ -0,0 +0,0 @@ public class RegionFile {
|
||||
this.b(i, j, (int)(SystemUtils.getTimeMillis() / 1000L));
|
||||
this.b(i, j, (int) (SystemUtils.getTimeMillis() / 1000L));
|
||||
} catch (IOException ioexception) {
|
||||
ioexception.printStackTrace();
|
||||
+ ServerInternalException.reportInternalException(ioexception); // Paper
|
||||
|
@ -192,7 +192,7 @@ index c5ca89691..e507a996f 100644
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java
|
||||
index 4233b94a1..1ff5dcd85 100644
|
||||
index 6720a9648..2aa0db5c2 100644
|
||||
--- a/src/main/java/net/minecraft/server/SpawnerCreature.java
|
||||
+++ b/src/main/java/net/minecraft/server/SpawnerCreature.java
|
||||
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.LogManager;
|
||||
|
@ -220,7 +220,7 @@ index 4233b94a1..1ff5dcd85 100644
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/VillageSiege.java b/src/main/java/net/minecraft/server/VillageSiege.java
|
||||
index e649d662a..560edb523 100644
|
||||
index 58122b18e..0ac1fb53a 100644
|
||||
--- a/src/main/java/net/minecraft/server/VillageSiege.java
|
||||
+++ b/src/main/java/net/minecraft/server/VillageSiege.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -240,7 +240,7 @@ index e649d662a..560edb523 100644
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index a9239ee7b..0e70a3d68 100644
|
||||
index ae14fb182..ae7e4a7fa 100644
|
||||
--- a/src/main/java/net/minecraft/server/World.java
|
||||
+++ b/src/main/java/net/minecraft/server/World.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -277,16 +277,16 @@ index a9239ee7b..0e70a3d68 100644
|
|||
this.tileEntityListTick.remove(tileTickPosition--);
|
||||
continue;
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldPersistentData.java b/src/main/java/net/minecraft/server/WorldPersistentData.java
|
||||
index f0a826cd1..2dee02669 100644
|
||||
index 478bf4997..8d51af286 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldPersistentData.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldPersistentData.java
|
||||
@@ -0,0 +0,0 @@ public class WorldPersistentData {
|
||||
int j = nbttagcompound.hasKeyOfType("DataVersion", 99) ? nbttagcompound.getInt("DataVersion") : 1343;
|
||||
nbttagcompound1 = GameProfileSerializer.a(idatamanager.i(), DataFixTypes.SAVED_DATA, nbttagcompound, j, i);
|
||||
} catch (Throwable throwable2) {
|
||||
+ com.destroystokyo.paper.exception.ServerInternalException.reportInternalException(throwable2); // Paper
|
||||
throwable = throwable2;
|
||||
throw throwable2;
|
||||
|
||||
nbttagcompound = GameProfileSerializer.a(idatamanager.i(), DataFixTypes.SAVED_DATA, nbttagcompound1, j, i);
|
||||
} catch (Throwable throwable1) {
|
||||
+ com.destroystokyo.paper.exception.ServerInternalException.reportInternalException(throwable1); // Paper
|
||||
throwable = throwable1;
|
||||
throw throwable1;
|
||||
} finally {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
|
||||
index 311c4f5ca..e76882b8e 100644
|
||||
|
|
|
@ -18,13 +18,13 @@ index 5ac88166f..5874d2993 100644
|
|||
if (event.isCancelled()) {
|
||||
return false;
|
||||
diff --git a/src/main/java/net/minecraft/server/ItemBucket.java b/src/main/java/net/minecraft/server/ItemBucket.java
|
||||
index 6e12bf84f..5d8568a1c 100644
|
||||
index 6f5dda880..a064897fc 100644
|
||||
--- a/src/main/java/net/minecraft/server/ItemBucket.java
|
||||
+++ b/src/main/java/net/minecraft/server/ItemBucket.java
|
||||
@@ -0,0 +0,0 @@ public class ItemBucket extends Item {
|
||||
if (iblockdata.getBlock() instanceof IFluidSource) {
|
||||
// CraftBukkit start
|
||||
FluidType dummyFluid = ((IFluidSource) iblockdata.getBlock()).a(DummyGeneratorAccess.INSTANCE, blockposition, iblockdata);
|
||||
FluidType dummyFluid = ((IFluidSource) iblockdata.getBlock()).removeFluid(DummyGeneratorAccess.INSTANCE, blockposition, iblockdata);
|
||||
- PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(entityhuman, blockposition.getX(), blockposition.getY(), blockposition.getZ(), null, itemstack, dummyFluid.b());
|
||||
+ PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(entityhuman, blockposition.getX(), blockposition.getY(), blockposition.getZ(), null, itemstack, dummyFluid.b(), enumhand); // Paper - add enumHand
|
||||
|
||||
|
@ -67,7 +67,7 @@ index 6e12bf84f..5d8568a1c 100644
|
|||
((EntityPlayer) entityhuman).playerConnection.sendPacket(new PacketPlayOutBlockChange(world, blockposition)); // SPIGOT-4238: needed when looking through entity
|
||||
((EntityPlayer) entityhuman).getBukkitEntity().updateInventory(); // SPIGOT-4541
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 41b05f231..c6cd2f3be 100644
|
||||
index fa3bb1047..a2841ee53 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -0,0 +0,0 @@ public class CraftEventFactory {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: [PATCH] Add missing coverages for getTileEntity in order to attempt
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index b5b1a2637..b80315bc5 100644
|
||||
index b17069e41..44b003325 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 implements IAsyncTaskHandler {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add more Witch API
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java
|
||||
index f334ad88d..e3c77839b 100644
|
||||
index feedfc9d9..955e0e19b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityWitch.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityWitch.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add more Zombie API
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
|
||||
index f25bcfd8f..72ea3ba76 100644
|
||||
index 92ad1ad15..85465879d 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityZombie.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
|
||||
@@ -0,0 +0,0 @@ public class EntityZombie extends EntityMonster {
|
||||
|
@ -13,9 +13,9 @@ index f25bcfd8f..72ea3ba76 100644
|
|||
private static final DataWatcherObject<Boolean> bC = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.i);
|
||||
private static final DataWatcherObject<Integer> bD = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.b);
|
||||
- private static final DataWatcherObject<Boolean> bE = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.i);
|
||||
- public static final DataWatcherObject<Boolean> bF = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.i); // PAIL
|
||||
+ private static final DataWatcherObject<Boolean> bE = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.i); private static final DataWatcherObject<Boolean> armsRaised = bE; // Paper - OBFHELPER
|
||||
+ public static final DataWatcherObject<Boolean> bF = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.i); private static final DataWatcherObject<Boolean> drowning = bF; // Paper - OBFHELPER
|
||||
- public static final DataWatcherObject<Boolean> DROWN_CONVERTING = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.i);
|
||||
+ private static final DataWatcherObject<Boolean> bE = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.i); private static final DataWatcherObject<Boolean> armsRaised = bE; // Paper - OBFHELPER
|
||||
+ public static final DataWatcherObject<Boolean> DROWN_CONVERTING = DataWatcher.a(EntityZombie.class, DataWatcherRegistry.i); private static final DataWatcherObject<Boolean> drowning = DROWN_CONVERTING; // Paper - OBFHELPER
|
||||
private final PathfinderGoalBreakDoor bG;
|
||||
private boolean bH;
|
||||
private int bI;
|
||||
|
@ -28,12 +28,12 @@ index f25bcfd8f..72ea3ba76 100644
|
|||
public EntityZombie(EntityTypes<?> entitytypes, World world) {
|
||||
super(entitytypes, world);
|
||||
@@ -0,0 +0,0 @@ public class EntityZombie extends EntityMonster {
|
||||
this.getDataWatcher().register(EntityZombie.bF, false);
|
||||
this.getDataWatcher().register(EntityZombie.DROWN_CONVERTING, false);
|
||||
}
|
||||
|
||||
+ public boolean isDrowning() { return isDrownConverting(); } // Paper - OBFHELPER
|
||||
public boolean isDrownConverting() {
|
||||
return (Boolean) this.getDataWatcher().get(EntityZombie.bF);
|
||||
return (Boolean) this.getDataWatcher().get(EntityZombie.DROWN_CONVERTING);
|
||||
}
|
||||
|
||||
+ public void setArmsRaised(boolean raised) { s(raised); } // Paper - OBFHELPER
|
||||
|
@ -51,13 +51,7 @@ index f25bcfd8f..72ea3ba76 100644
|
|||
return this.bH;
|
||||
}
|
||||
@@ -0,0 +0,0 @@ public class EntityZombie extends EntityMonster {
|
||||
super.movementTick();
|
||||
}
|
||||
|
||||
+ public void startDrowning(int drownedConversionTime) { a(drownedConversionTime); } // Paper - OBFHELPER
|
||||
public void a(int i) { // PAIL
|
||||
this.drownedConversionTime = i;
|
||||
this.getDataWatcher().set(EntityZombie.bF, true);
|
||||
this.getDataWatcher().set(EntityZombie.DROWN_CONVERTING, true);
|
||||
}
|
||||
|
||||
+ // Paper start
|
||||
|
@ -99,7 +93,7 @@ index f25bcfd8f..72ea3ba76 100644
|
|||
public void a(NBTTagCompound nbttagcompound) {
|
||||
@@ -0,0 +0,0 @@ public class EntityZombie extends EntityMonster {
|
||||
if (nbttagcompound.hasKeyOfType("DrownedConversionTime", 99) && nbttagcompound.getInt("DrownedConversionTime") > -1) {
|
||||
this.a(nbttagcompound.getInt("DrownedConversionTime"));
|
||||
this.startDrownedConversion(nbttagcompound.getInt("DrownedConversionTime"));
|
||||
}
|
||||
-
|
||||
+ // Paper start
|
||||
|
@ -111,11 +105,11 @@ index f25bcfd8f..72ea3ba76 100644
|
|||
|
||||
public void b(EntityLiving entityliving) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftZombie.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftZombie.java
|
||||
index 7af4ea9f8..4d4c50212 100644
|
||||
index e93ecb076..c516d3475 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftZombie.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftZombie.java
|
||||
@@ -0,0 +0,0 @@ public class CraftZombie extends CraftMonster implements Zombie {
|
||||
getHandle().a(time);
|
||||
getHandle().startDrownedConversion(time);
|
||||
}
|
||||
}
|
||||
+
|
||||
|
@ -125,7 +119,7 @@ index 7af4ea9f8..4d4c50212 100644
|
|||
+ }
|
||||
+
|
||||
+ public void startDrowning(int drownedConversionTime) {
|
||||
+ getHandle().startDrowning(drownedConversionTime);
|
||||
+ getHandle().startDrownedConversion(drownedConversionTime);
|
||||
+ }
|
||||
+
|
||||
+ public void stopDrowning() {
|
||||
|
|
|
@ -26,7 +26,7 @@ index e49eb0caf..aefb0ce97 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
index 16a8cee3e..86c6beefe 100644
|
||||
index f1314831f..651133eb9 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
@@ -0,0 +0,0 @@ public abstract class EntityHuman extends EntityLiving {
|
||||
|
@ -39,7 +39,7 @@ index 16a8cee3e..86c6beefe 100644
|
|||
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 03b986bfa..c8b251e69 100644
|
||||
index 1491de7e7..877598a54 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 {
|
||||
|
|
|
@ -20,7 +20,7 @@ index 48920b045..77368b17a 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index f2f977fff..96db9121b 100644
|
||||
index 8899ad0f6..f78c6e991 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 {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add player view distance API
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
index 1aec6d7c3..1185769ca 100644
|
||||
index 70d5a69f8..f28ca6bb4 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
@@ -0,0 +0,0 @@ public abstract class EntityHuman extends EntityLiving {
|
||||
|
@ -25,7 +25,7 @@ index 1aec6d7c3..1185769ca 100644
|
|||
// CraftBukkit start
|
||||
public boolean fauxSleeping;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityTracker.java b/src/main/java/net/minecraft/server/EntityTracker.java
|
||||
index d7f33bd53..63e22bd9a 100644
|
||||
index 45ab33d1a..3854ae976 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityTracker.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityTracker.java
|
||||
@@ -0,0 +0,0 @@ public class EntityTracker {
|
||||
|
@ -37,7 +37,7 @@ index d7f33bd53..63e22bd9a 100644
|
|||
Iterator iterator = this.c.iterator();
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
|
||||
index 6a622f72e..4272d2036 100644
|
||||
index d00401ce1..dd6c84b4a 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
|
||||
@@ -0,0 +0,0 @@ public class EntityTrackerEntry {
|
||||
|
@ -50,7 +50,7 @@ index 6a622f72e..4272d2036 100644
|
|||
return d0 >= (double) (-i) && d0 <= (double) i && d1 >= (double) (-i) && d1 <= (double) i && this.tracker.a(entityplayer);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
|
||||
index 29e24940f..653031af4 100644
|
||||
index e01222ad2..55161af9c 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 {
|
||||
|
@ -221,7 +221,7 @@ index 29e24940f..653031af4 100644
|
|||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java
|
||||
index ff564508f..4233b94a1 100644
|
||||
index 4eaa5d93b..6720a9648 100644
|
||||
--- a/src/main/java/net/minecraft/server/SpawnerCreature.java
|
||||
+++ b/src/main/java/net/minecraft/server/SpawnerCreature.java
|
||||
@@ -0,0 +0,0 @@ public final class SpawnerCreature {
|
||||
|
@ -234,7 +234,7 @@ index ff564508f..4233b94a1 100644
|
|||
|
||||
for (int i1 = -b0; i1 <= b0; ++i1) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 6635f1a4a..d2ff18cf7 100644
|
||||
index 31140ed18..1a4527f30 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -0,0 +0,0 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add ray tracing methods to LivingEntity
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
index 1dcb9a7e9..5ea5d4b78 100644
|
||||
index 8f5ff37c2..b4dcdda0c 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 {
|
||||
|
|
|
@ -31,7 +31,7 @@ index e10055b7d..2ae623e7d 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
|
||||
index 5977d3b48..c3f3ae03a 100644
|
||||
index bf67dbf54..dcaba3c40 100644
|
||||
--- a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
|
||||
+++ b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java
|
||||
@@ -0,0 +0,0 @@ public class NameReferencingFileConverter {
|
||||
|
|
|
@ -9,7 +9,7 @@ This should hopefully avoid duplicate entities ever being created
|
|||
if the entity was to end up in 2 different chunk slices
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
|
||||
index f7990fbdb..4f01140e7 100644
|
||||
index 42b76b212..ca236a315 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 {
|
||||
|
@ -73,7 +73,7 @@ index f7990fbdb..4f01140e7 100644
|
|||
// Do not pass along players, as doing so can get them stuck outside of time.
|
||||
// (which for example disables inventory icon updates and prevents block breaking)
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index fe0590dea..469dce5df 100644
|
||||
index 12ab5def2..50e616179 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
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add source block to BlockPhysicsEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index e8891d078..0d401bf1d 100644
|
||||
index 823c3900b..b4c9df025 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 IEntityAccess, GeneratorAccess, IIBlockAc
|
||||
|
|
|
@ -18,7 +18,7 @@ index 808d1a120..3030dd9c3 100644
|
|||
|
||||
this.die();
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 075e6f04e..2a06cbf85 100644
|
||||
index b8bf1fbef..717cd0f42 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.entity.Player;
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add sun related API
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
index 877337eed..48c1ae624 100644
|
||||
index 8317ecea8..2aa49aaee 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 {
|
||||
|
@ -17,7 +17,7 @@ index 877337eed..48c1ae624 100644
|
|||
if (this.world.L() && !this.world.isClientSide) {
|
||||
float f = this.az();
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index 9fc0d7576..c8a7f5e59 100644
|
||||
index 55cd98ae2..a186637f5 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 IEntityAccess, GeneratorAccess, IIBlockAc
|
||||
|
@ -29,7 +29,7 @@ index 9fc0d7576..c8a7f5e59 100644
|
|||
return this.G < 4;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 162ff3414..86e70f236 100644
|
||||
index b5a87cfaf..e33135ada 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -0,0 +0,0 @@ public class CraftWorld implements World {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Allow chests to be placed with NBT data
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
|
||||
index d32ea9c92..d1000805a 100644
|
||||
index 99dab7a47..5a67e1f92 100644
|
||||
--- a/src/main/java/net/minecraft/server/ItemStack.java
|
||||
+++ b/src/main/java/net/minecraft/server/ItemStack.java
|
||||
@@ -0,0 +0,0 @@ public final class ItemStack {
|
||||
|
@ -25,7 +25,7 @@ index d32ea9c92..d1000805a 100644
|
|||
for (BlockState blockstate : blocks) {
|
||||
blockstate.update(true, false);
|
||||
diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java
|
||||
index f00c7dade..961e9d62c 100644
|
||||
index c46b761cc..2e0f782f6 100644
|
||||
--- a/src/main/java/net/minecraft/server/TileEntityChest.java
|
||||
+++ b/src/main/java/net/minecraft/server/TileEntityChest.java
|
||||
@@ -0,0 +0,0 @@ public class TileEntityChest extends TileEntityLootable { // Paper - Remove ITic
|
||||
|
|
|
@ -20,7 +20,7 @@ index 4059c7a72..10efe6b3d 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
||||
index 1dcc482c0..c5bddb1da 100644
|
||||
index c604182dd..2c54e3e34 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
||||
@@ -0,0 +0,0 @@ public class EntityArmorStand extends EntityLiving {
|
||||
|
@ -141,7 +141,7 @@ index 1dcc482c0..c5bddb1da 100644
|
|||
|
||||
public Vector3f r() {
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
index 3e9af4481..1dcb9a7e9 100644
|
||||
index 87715c302..8f5ff37c2 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 {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Allow for toggling of spawn chunks
|
|||
|
||||
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
||||
index 02f7e506e3..cef0c47ac7 100644
|
||||
index 3e1f4be10..3f734327c 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 {
|
||||
|
@ -20,7 +20,7 @@ index 02f7e506e3..cef0c47ac7 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index c3c435cab9..30a46a50fb 100644
|
||||
index 209091a9c..ed227d8e8 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 IEntityAccess, GeneratorAccess, IIBlockAc
|
||||
|
|
|
@ -19,7 +19,7 @@ index a55163a45..341038fc4 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/ControllerJump.java b/src/main/java/net/minecraft/server/ControllerJump.java
|
||||
index 74a40671e..5d6260ded 100644
|
||||
index 4ed5192c6..489beed26 100644
|
||||
--- a/src/main/java/net/minecraft/server/ControllerJump.java
|
||||
+++ b/src/main/java/net/minecraft/server/ControllerJump.java
|
||||
@@ -0,0 +0,0 @@ public class ControllerJump {
|
||||
|
@ -31,7 +31,7 @@ index 74a40671e..5d6260ded 100644
|
|||
this.b.o(this.a);
|
||||
this.a = false;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
index 7cf459d26..9d4d8c697 100644
|
||||
index cca047b04..f31f31c37 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 {
|
||||
|
@ -56,7 +56,7 @@ index 7cf459d26..9d4d8c697 100644
|
|||
}
|
||||
// Spigot End
|
||||
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalFloat.java b/src/main/java/net/minecraft/server/PathfinderGoalFloat.java
|
||||
index 15c04f890..7db180fa9 100644
|
||||
index 0d9505138..38a0b2db1 100644
|
||||
--- a/src/main/java/net/minecraft/server/PathfinderGoalFloat.java
|
||||
+++ b/src/main/java/net/minecraft/server/PathfinderGoalFloat.java
|
||||
@@ -0,0 +0,0 @@ public class PathfinderGoalFloat extends PathfinderGoal {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: [PATCH] Allow setting the vex's summoner
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityVex.java b/src/main/java/net/minecraft/server/EntityVex.java
|
||||
index 90028c802..6915e5d11 100644
|
||||
index c3864b869..589b13f4e 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityVex.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityVex.java
|
||||
@@ -0,0 +0,0 @@ public class EntityVex extends EntityMonster {
|
||||
|
|
|
@ -8,7 +8,7 @@ This API has more capabilities than .dropItem with the Consumer function
|
|||
Item can be set inside of the Consumer pre spawn function.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index d3be0211f..b50785aa0 100644
|
||||
index d06496762..a436ded60 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -0,0 +0,0 @@ public class CraftWorld implements World {
|
||||
|
|
|
@ -27,7 +27,7 @@ index 3f59e060b..305a1258f 100644
|
|||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java
|
||||
index 90d1096e5..b682b3a43 100644
|
||||
index 852dc7162..74bc08f85 100644
|
||||
--- a/src/main/java/net/minecraft/server/LoginListener.java
|
||||
+++ b/src/main/java/net/minecraft/server/LoginListener.java
|
||||
@@ -0,0 +0,0 @@ public class LoginListener implements PacketLoginInListener, ITickable {
|
||||
|
|
|
@ -8,7 +8,7 @@ which can keep them in the chunk when they shouldnt be if done
|
|||
during entity ticking.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index 78e85aacf..f5f1452b7 100644
|
||||
index 93b0544e0..2dd617de9 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 IEntityAccess, GeneratorAccess, IIBlockAc
|
||||
|
|
|
@ -1049,7 +1049,7 @@ index 000000000..37093419c
|
|||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
|
||||
index 414c27516..c3a54576f 100644
|
||||
index edf4d9130..71d865b76 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 {
|
||||
|
@ -1071,7 +1071,7 @@ index 414c27516..c3a54576f 100644
|
|||
this.initLighting();
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
|
||||
index 41a7103ef..c12db3cfa 100644
|
||||
index 450c9e79b..f3e766967 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
|
||||
@@ -0,0 +0,0 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
|
||||
|
@ -1093,7 +1093,7 @@ index 41a7103ef..c12db3cfa 100644
|
|||
chunksection.getBlocks().a(nbttagcompound, "Palette", "BlockStates");
|
||||
chunksection.a(new NibbleArray(nbttagcompound.getByteArray("BlockLight")));
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkSection.java b/src/main/java/net/minecraft/server/ChunkSection.java
|
||||
index 7e4c79a1c..bdfc7d81f 100644
|
||||
index 621ed1fc5..2af07ae59 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkSection.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkSection.java
|
||||
@@ -0,0 +0,0 @@ public class ChunkSection {
|
||||
|
@ -1108,13 +1108,13 @@ index 7e4c79a1c..bdfc7d81f 100644
|
|||
+
|
||||
+ public ChunkSection(int i, boolean flag, IChunkAccess chunk, IWorldReader world, boolean initializeBlocks) { // Paper - Anti-Xray
|
||||
this.yPos = i;
|
||||
- this.blockIds = new DataPaletteBlock<IBlockData>(GLOBAL_PALETTE, Block.REGISTRY_ID, GameProfileSerializer::d, GameProfileSerializer::a, Blocks.AIR.getBlockData());
|
||||
+ this.blockIds = new DataPaletteBlock<IBlockData>(GLOBAL_PALETTE, Block.REGISTRY_ID, GameProfileSerializer::d, GameProfileSerializer::a, Blocks.AIR.getBlockData(), world instanceof GeneratorAccess ? ((GeneratorAccess) world).getMinecraftWorld().chunkPacketBlockController.getPredefinedBlockData(world, chunk, this, flag, initializeBlocks) : null, initializeBlocks); // Paper - Anti-Xray - Add predefined block data
|
||||
- this.blockIds = new DataPaletteBlock<>(ChunkSection.GLOBAL_PALETTE, Block.REGISTRY_ID, GameProfileSerializer::d, GameProfileSerializer::a, Blocks.AIR.getBlockData());
|
||||
+ this.blockIds = new DataPaletteBlock<>(ChunkSection.GLOBAL_PALETTE, Block.REGISTRY_ID, GameProfileSerializer::d, GameProfileSerializer::a, Blocks.AIR.getBlockData(), world instanceof GeneratorAccess ? ((GeneratorAccess) world).getMinecraftWorld().chunkPacketBlockController.getPredefinedBlockData(world, chunk, this, flag, initializeBlocks) : null, initializeBlocks); // Paper - Anti-Xray - Add predefined block data
|
||||
this.emittedLight = new NibbleArray();
|
||||
if (flag) {
|
||||
this.skyLight = new NibbleArray();
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
|
||||
index 9deab61fc..ad7e4a036 100644
|
||||
index 56958a5ce..d3898599f 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
|
||||
@@ -0,0 +0,0 @@ public class ChunkTaskScheduler extends Scheduler<ChunkCoordIntPair, ChunkStatus
|
||||
|
@ -1136,7 +1136,7 @@ index 9deab61fc..ad7e4a036 100644
|
|||
}) : (Scheduler.a) this.progressCache.get(chunkcoordintpair.a());
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/DataPaletteBlock.java b/src/main/java/net/minecraft/server/DataPaletteBlock.java
|
||||
index 6e7454b13..71a3636be 100644
|
||||
index 6fcfc5ef7..454903a0e 100644
|
||||
--- a/src/main/java/net/minecraft/server/DataPaletteBlock.java
|
||||
+++ b/src/main/java/net/minecraft/server/DataPaletteBlock.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -1157,18 +1157,18 @@ index 6e7454b13..71a3636be 100644
|
|||
@@ -0,0 +0,0 @@ public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
|
||||
}
|
||||
|
||||
public DataPaletteBlock(DataPalette<T> datapalette, RegistryBlockID<T> registryblockid, Function<NBTTagCompound, T> function, Function<T, NBTTagCompound> function1, T object) {
|
||||
public DataPaletteBlock(DataPalette<T> datapalette, RegistryBlockID<T> registryblockid, Function<NBTTagCompound, T> function, Function<T, NBTTagCompound> function1, T t0) {
|
||||
+ // Paper start - Anti-Xray - Support default constructor
|
||||
+ this(datapalette, registryblockid, function, function1, object, null, true);
|
||||
+ this(datapalette, registryblockid, function, function1, t0, null, true);
|
||||
+ }
|
||||
+
|
||||
+ public DataPaletteBlock(DataPalette<T> datapalette, RegistryBlockID<T> registryblockid, Function<NBTTagCompound, T> function, Function<T, NBTTagCompound> function1, T object, T[] predefinedObjects, boolean initialize) {
|
||||
+ public DataPaletteBlock(DataPalette<T> datapalette, RegistryBlockID<T> registryblockid, Function<NBTTagCompound, T> function, Function<T, NBTTagCompound> function1, T t0, T[] predefinedObjects, boolean initialize) {
|
||||
+ // Paper end - Anti-Xray - Add predefined objects
|
||||
this.b = datapalette;
|
||||
this.d = registryblockid;
|
||||
this.e = function;
|
||||
this.f = function1;
|
||||
this.g = (T)object;
|
||||
this.g = t0;
|
||||
- this.b(4);
|
||||
+ // Paper start - Anti-Xray - Add predefined objects
|
||||
+ this.predefinedObjects = predefinedObjects;
|
||||
|
@ -1198,7 +1198,7 @@ index 6e7454b13..71a3636be 100644
|
|||
+ // Paper end
|
||||
}
|
||||
|
||||
private static int b(int ix, int jx, int k) {
|
||||
private static int b(int i, int j, int k) {
|
||||
@@ -0,0 +0,0 @@ public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
|
||||
}
|
||||
}
|
||||
|
@ -1212,18 +1212,20 @@ index 6e7454b13..71a3636be 100644
|
|||
+ }
|
||||
+ }
|
||||
+ // Paper end
|
||||
public int onResize(int ix, T object) {
|
||||
+
|
||||
public int onResize(int i, T t0) {
|
||||
this.b();
|
||||
DataBits databits = this.a;
|
||||
DataPalette<T> datapalette = this.h; // Paper - decompile fix
|
||||
this.b(ix);
|
||||
@@ -0,0 +0,0 @@ public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
|
||||
|
||||
int j;
|
||||
|
||||
+ this.addPredefinedObjects(); // Paper - Anti-Xray - Add predefined objects
|
||||
for(int jx = 0; jx < databits.b(); ++jx) {
|
||||
T object1 = datapalette.a(databits.a(jx)); // Paper - decompile fix
|
||||
if (object1 != null) {
|
||||
for (j = 0; j < databits.b(); ++j) {
|
||||
T t1 = datapalette.a(databits.a(j));
|
||||
|
||||
@@ -0,0 +0,0 @@ public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
|
||||
return (T)(object == null ? this.g : object);
|
||||
return t0 == null ? this.g : t0;
|
||||
}
|
||||
|
||||
- public void writeDataPaletteBlock(PacketDataSerializer packetDataSerializer) { this.b(packetDataSerializer); } // Paper - OBFHELPER
|
||||
|
@ -1256,22 +1258,22 @@ index 6e7454b13..71a3636be 100644
|
|||
public void a(NBTTagCompound nbttagcompound, String s, String s1) {
|
||||
this.b();
|
||||
NBTTagList nbttaglist = nbttagcompound.getList(s, 10);
|
||||
- int ix = Math.max(4, MathHelper.d(nbttaglist.size()));
|
||||
- if (ix != this.i) {
|
||||
- int i = Math.max(4, MathHelper.d(nbttaglist.size()));
|
||||
+ // Paper - Anti-Xray - TODO: Should this.predefinedObjects.length just be added here (faster) or should the contents be compared to calculate the size (less RAM)?
|
||||
+ int ix = Math.max(4, MathHelper.d(nbttaglist.size() + (this.predefinedObjects == null ? 0 : this.predefinedObjects.length))); // Paper - Anti-Xray - Calculate the size with predefined objects
|
||||
+
|
||||
+ if (true || ix != this.i) { // Paper - Anti-Xray - Not initialized yet
|
||||
this.b(ix);
|
||||
+ int i = Math.max(4, MathHelper.d(nbttaglist.size() + (this.predefinedObjects == null ? 0 : this.predefinedObjects.length))); // Paper - Anti-Xray - Calculate the size with predefined objects
|
||||
|
||||
- if (i != this.i) {
|
||||
+ if (true || i != this.i) { // Paper - Anti-Xray - Not initialized yet
|
||||
this.b(i);
|
||||
}
|
||||
|
||||
this.h.a(nbttaglist);
|
||||
+ this.addPredefinedObjects(); // Paper - Anti-Xray - Add predefined objects
|
||||
long[] along = nbttagcompound.o(s1);
|
||||
int jx = along.length * 64 / 4096;
|
||||
if (this.h == this.b) {
|
||||
int j = along.length * 64 / 4096;
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
|
||||
index e75b1a76e..e5cc77c6d 100644
|
||||
index 4a50aab51..4c1110479 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<?>> {
|
||||
|
@ -1332,7 +1334,7 @@ index e75b1a76e..e5cc77c6d 100644
|
|||
public void a() {
|
||||
this.o();
|
||||
diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
|
||||
index 22a262bb6..40ec398ee 100644
|
||||
index 18ef7232e..8e35d14f9 100644
|
||||
--- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
|
||||
+++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
@ -1348,9 +1350,10 @@ index 22a262bb6..40ec398ee 100644
|
|||
private boolean f;
|
||||
+ private volatile boolean ready = false; // Paper - Async-Anti-Xray - Ready flag for the network manager
|
||||
|
||||
public PacketPlayOutMapChunk() {
|
||||
- public PacketPlayOutMapChunk() {}
|
||||
+ public PacketPlayOutMapChunk() {
|
||||
+ this.ready = true; // Paper - Async-Anti-Xray - Set the ready flag to true
|
||||
}
|
||||
+ }
|
||||
|
||||
public PacketPlayOutMapChunk(Chunk chunk, int i) {
|
||||
+ ChunkPacketInfo<IBlockData> chunkPacketInfo = chunk.world.chunkPacketBlockController.getChunkPacketInfo(this, chunk, i); // Paper - Anti-Xray - Add chunk packet info
|
||||
|
@ -1358,6 +1361,7 @@ index 22a262bb6..40ec398ee 100644
|
|||
this.b = chunk.locZ;
|
||||
this.f = i == 65535;
|
||||
boolean flag = chunk.getWorld().worldProvider.g();
|
||||
|
||||
this.d = new byte[this.a(chunk, flag, i)];
|
||||
- this.c = this.a(new PacketDataSerializer(this.h()), chunk, flag, i);
|
||||
+
|
||||
|
@ -1369,8 +1373,8 @@ index 22a262bb6..40ec398ee 100644
|
|||
+
|
||||
+ this.c = this.writeChunk(new PacketDataSerializer(this.h()), chunk, flag, i, chunkPacketInfo); // Paper - Anti-Xray - Add chunk packet info
|
||||
this.e = Lists.newArrayList();
|
||||
Iterator iterator = chunk.getTileEntities().entrySet().iterator();
|
||||
|
||||
for(Entry entry : chunk.getTileEntities().entrySet()) {
|
||||
@@ -0,0 +0,0 @@ public class PacketPlayOutMapChunk implements Packet<PacketListenerPlayOut> {
|
||||
}
|
||||
}
|
||||
|
@ -1381,16 +1385,15 @@ index 22a262bb6..40ec398ee 100644
|
|||
+ // Paper start - Async-Anti-Xray - Getter and Setter for the ready flag
|
||||
+ public boolean isReady() {
|
||||
+ return this.ready;
|
||||
}
|
||||
|
||||
+ }
|
||||
+
|
||||
+ public void setReady(boolean ready) {
|
||||
+ this.ready = ready;
|
||||
+ }
|
||||
}
|
||||
+ // Paper end
|
||||
+
|
||||
|
||||
public void a(PacketDataSerializer packetdataserializer) throws IOException {
|
||||
this.a = packetdataserializer.readInt();
|
||||
this.b = packetdataserializer.readInt();
|
||||
@@ -0,0 +0,0 @@ public class PacketPlayOutMapChunk implements Packet<PacketListenerPlayOut> {
|
||||
return bytebuf;
|
||||
}
|
||||
|
@ -1409,7 +1412,7 @@ index 22a262bb6..40ec398ee 100644
|
|||
ChunkSection[] achunksection = chunk.getSections();
|
||||
int k = 0;
|
||||
@@ -0,0 +0,0 @@ public class PacketPlayOutMapChunk implements Packet<PacketListenerPlayOut> {
|
||||
ChunkSection chunksection = achunksection[k];
|
||||
|
||||
if (chunksection != Chunk.a && (!this.f() || !chunksection.a()) && (i & 1 << k) != 0) {
|
||||
j |= 1 << k;
|
||||
- chunksection.getBlocks().b(packetdataserializer);
|
||||
|
@ -1418,7 +1421,7 @@ index 22a262bb6..40ec398ee 100644
|
|||
if (flag) {
|
||||
packetdataserializer.writeBytes(chunksection.getSkyLightArray().asBytes());
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java
|
||||
index db43a8a9a..b58683e6f 100644
|
||||
index 7d3f846a1..240f59066 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 {
|
||||
|
@ -1445,11 +1448,11 @@ index db43a8a9a..b58683e6f 100644
|
|||
+ // Paper - Anti-Xray - Loading chunks here could cause a ConcurrentModificationException #1104
|
||||
+ // Paper - Anti-Xray - TODO: Check if this is still the case for 1.13
|
||||
+ //this.chunk.world.chunkPacketBlockController.onChunkPacketCreate(this.chunk, this.h, true); // Paper - Anti-Xray - Load nearby chunks if necessary
|
||||
this.a(new PacketPlayOutMapChunk(this.chunk, this.h));
|
||||
this.a((Packet) (new PacketPlayOutMapChunk(this.chunk, this.h)));
|
||||
} else {
|
||||
this.a(new PacketPlayOutMultiBlockChange(this.dirtyCount, this.dirtyBlocks, this.chunk));
|
||||
this.a((Packet) (new PacketPlayOutMultiBlockChange(this.dirtyCount, this.dirtyBlocks, this.chunk)));
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java
|
||||
index 23223e89d..23fc4d8e1 100644
|
||||
index c884fcd34..1d76c4c99 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerInteractManager.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java
|
||||
@@ -0,0 +0,0 @@ public class PlayerInteractManager {
|
||||
|
@ -1462,7 +1465,7 @@ index 23223e89d..23fc4d8e1 100644
|
|||
|
||||
public void a(BlockPosition blockposition) {
|
||||
diff --git a/src/main/java/net/minecraft/server/ProtoChunk.java b/src/main/java/net/minecraft/server/ProtoChunk.java
|
||||
index faaad0f41..9fd966dfb 100644
|
||||
index 16e3469d0..e4c0cc6a3 100644
|
||||
--- a/src/main/java/net/minecraft/server/ProtoChunk.java
|
||||
+++ b/src/main/java/net/minecraft/server/ProtoChunk.java
|
||||
@@ -0,0 +0,0 @@ public class ProtoChunk implements IChunkAccess {
|
||||
|
@ -1472,9 +1475,9 @@ index faaad0f41..9fd966dfb 100644
|
|||
+ private GeneratorAccess world; // Paper - Anti-Xray
|
||||
|
||||
+ // Paper start - Anti-Xray - Support default constructors
|
||||
public ProtoChunk(int ix, int jx, ChunkConverter chunkconverter) {
|
||||
- this(new ChunkCoordIntPair(ix, jx), chunkconverter);
|
||||
+ this(new ChunkCoordIntPair(ix, jx), chunkconverter, null);
|
||||
public ProtoChunk(int i, int j, ChunkConverter chunkconverter) {
|
||||
- this(new ChunkCoordIntPair(i, j), chunkconverter);
|
||||
+ this(new ChunkCoordIntPair(i, j), chunkconverter, null);
|
||||
}
|
||||
|
||||
public ProtoChunk(ChunkCoordIntPair chunkcoordintpair, ChunkConverter chunkconverter) {
|
||||
|
@ -1495,11 +1498,11 @@ index faaad0f41..9fd966dfb 100644
|
|||
return iblockdata;
|
||||
}
|
||||
|
||||
- this.j[jx >> 4] = new ChunkSection(jx >> 4 << 4, this.x());
|
||||
+ this.j[jx >> 4] = new ChunkSection(jx >> 4 << 4, this.x(), this, this.world, true); // Paper - Anti-Xray
|
||||
- this.j[j >> 4] = new ChunkSection(j >> 4 << 4, this.x());
|
||||
+ this.j[j >> 4] = new ChunkSection(j >> 4 << 4, this.x(), this, this.world, true); // Paper - Anti-Xray
|
||||
}
|
||||
|
||||
IBlockData iblockdata1 = this.j[jx >> 4].getType(ix & 15, jx & 15, kx & 15);
|
||||
IBlockData iblockdata1 = this.j[j >> 4].getType(i & 15, j & 15, k & 15);
|
||||
@@ -0,0 +0,0 @@ public class ProtoChunk implements IChunkAccess {
|
||||
return;
|
||||
}
|
||||
|
@ -1510,7 +1513,7 @@ index faaad0f41..9fd966dfb 100644
|
|||
|
||||
if (enumskyblock == EnumSkyBlock.SKY) {
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index 780c0a7e8..67b20c056 100644
|
||||
index b4c9df025..a95c8df4b 100644
|
||||
--- a/src/main/java/net/minecraft/server/World.java
|
||||
+++ b/src/main/java/net/minecraft/server/World.java
|
||||
@@ -0,0 +0,0 @@
|
||||
|
|
|
@ -5,12 +5,12 @@ Subject: [PATCH] AnvilDamageEvent
|
|||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/ContainerAnvil.java b/src/main/java/net/minecraft/server/ContainerAnvil.java
|
||||
index a7b04a967..c8f988c2c 100644
|
||||
index 1560dd382..d206e0465 100644
|
||||
--- a/src/main/java/net/minecraft/server/ContainerAnvil.java
|
||||
+++ b/src/main/java/net/minecraft/server/ContainerAnvil.java
|
||||
@@ -0,0 +0,0 @@ public class ContainerAnvil extends Container {
|
||||
if (!world.isClientSide) {
|
||||
if (!entityhuman.abilities.canInstantlyBuild && iblockdata.a(TagsBlock.ANVIL) && entityhuman.getRandom().nextFloat() < 0.12F) {
|
||||
if (!entityhuman1.abilities.canInstantlyBuild && iblockdata.a(TagsBlock.ANVIL) && entityhuman1.getRandom().nextFloat() < 0.12F) {
|
||||
IBlockData iblockdata1 = BlockAnvil.a_(iblockdata);
|
||||
+ // Paper start
|
||||
+ com.destroystokyo.paper.event.block.AnvilDamagedEvent event = new com.destroystokyo.paper.event.block.AnvilDamagedEvent(getBukkitView(), iblockdata1 != null ? org.bukkit.craftbukkit.block.data.CraftBlockData.fromData(iblockdata1) : null);
|
||||
|
|
|
@ -458,7 +458,7 @@ index 000000000..8f18c2869
|
|||
+
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
|
||||
index 25e49de19..8246194df 100644
|
||||
index 71d865b76..6d3f5b651 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 {
|
||||
|
@ -562,7 +562,7 @@ index 2021c0d02..154ab09e0 100644
|
|||
|
||||
public void putAll(Map<? extends Long, ? extends Chunk> map) {
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
index b9f8a86aa..4fe173cfb 100644
|
||||
index fce3f673d..7b460d7dd 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 implements IChunkProvider {
|
||||
|
@ -712,7 +712,7 @@ index b9f8a86aa..4fe173cfb 100644
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
|
||||
index c12db3cfa..6cacacb0b 100644
|
||||
index f3e766967..c70308198 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
|
||||
@@ -0,0 +0,0 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
|
||||
|
@ -739,7 +739,7 @@ index c12db3cfa..6cacacb0b 100644
|
|||
completion = new Supplier<NBTTagCompound>() {
|
||||
public NBTTagCompound get() {
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkSection.java b/src/main/java/net/minecraft/server/ChunkSection.java
|
||||
index bdfc7d81f..a5c4564d6 100644
|
||||
index 2af07ae59..9c6844d44 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkSection.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkSection.java
|
||||
@@ -0,0 +0,0 @@ public class ChunkSection {
|
||||
|
@ -759,18 +759,18 @@ index bdfc7d81f..a5c4564d6 100644
|
|||
+ // Paper end
|
||||
|
||||
public IBlockData getType(int i, int j, int k) {
|
||||
return this.blockIds.a(i, j, k);
|
||||
return (IBlockData) this.blockIds.a(i, j, k);
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
|
||||
index ad7e4a036..f10f235ed 100644
|
||||
index d3898599f..8f061f5ca 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
|
||||
@@ -0,0 +0,0 @@ public class ChunkTaskScheduler extends Scheduler<ChunkCoordIntPair, ChunkStatus
|
||||
private final ChunkGenerator<?> d;
|
||||
private final IChunkLoader e;
|
||||
private final IAsyncTaskHandler f;
|
||||
- private final Long2ObjectMap<Scheduler.a> progressCache = new ExpiringMap<Scheduler.a>(8192, 5000) { // CraftBukkit - decompile error
|
||||
+ final Long2ObjectMap<Scheduler.a> progressCache = new ExpiringMap<Scheduler.a>(8192, 5000) { // CraftBukkit - decompile error // Paper - protected
|
||||
protected boolean a(Scheduler.a scheduler_a) {
|
||||
- private final Long2ObjectMap<Scheduler<ChunkCoordIntPair, ChunkStatus, ProtoChunk>.a> progressCache = new ExpiringMap<Scheduler<ChunkCoordIntPair, ChunkStatus, ProtoChunk>.a>(8192, 5000) {
|
||||
+ protected final Long2ObjectMap<Scheduler<ChunkCoordIntPair, ChunkStatus, ProtoChunk>.a> progressCache = new ExpiringMap<Scheduler<ChunkCoordIntPair, ChunkStatus, ProtoChunk>.a>(8192, 5000) { // Paper - protected
|
||||
protected boolean a(Scheduler<ChunkCoordIntPair, ChunkStatus, ProtoChunk>.a scheduler_a) {
|
||||
ProtoChunk protochunk = (ProtoChunk) scheduler_a.a();
|
||||
|
||||
return !protochunk.ab_() /*&& !protochunk.h()*/; // Paper
|
||||
|
@ -781,7 +781,7 @@ index ad7e4a036..f10f235ed 100644
|
|||
public ChunkTaskScheduler(int i, World world, ChunkGenerator<?> chunkgenerator, IChunkLoader ichunkloader, IAsyncTaskHandler iasynctaskhandler) {
|
||||
super("WorldGen", i, ChunkStatus.FINALIZED, () -> {
|
||||
@@ -0,0 +0,0 @@ public class ChunkTaskScheduler extends Scheduler<ChunkCoordIntPair, ChunkStatus
|
||||
protected Scheduler.a a(ChunkCoordIntPair chunkcoordintpair, boolean flag) {
|
||||
protected Scheduler<ChunkCoordIntPair, ChunkStatus, ProtoChunk>.a a(ChunkCoordIntPair chunkcoordintpair, boolean flag) {
|
||||
IChunkLoader ichunkloader = this.e;
|
||||
|
||||
- synchronized (this.e) {
|
||||
|
@ -832,7 +832,7 @@ index ad7e4a036..f10f235ed 100644
|
|||
|
||||
protected ProtoChunk a(ChunkCoordIntPair chunkcoordintpair, ChunkStatus chunkstatus, Map<ChunkCoordIntPair, ProtoChunk> map) {
|
||||
diff --git a/src/main/java/net/minecraft/server/DataPaletteBlock.java b/src/main/java/net/minecraft/server/DataPaletteBlock.java
|
||||
index 71a3636be..ff0fe2541 100644
|
||||
index 454903a0e..dcbcb655c 100644
|
||||
--- a/src/main/java/net/minecraft/server/DataPaletteBlock.java
|
||||
+++ b/src/main/java/net/minecraft/server/DataPaletteBlock.java
|
||||
@@ -0,0 +0,0 @@ package net.minecraft.server;
|
||||
|
@ -868,12 +868,13 @@ index 71a3636be..ff0fe2541 100644
|
|||
|
||||
- private void b() {
|
||||
- if (this.j.isLocked() && !this.j.isHeldByCurrentThread()) {
|
||||
- String s = (String)Thread.getAllStackTraces().keySet().stream().filter(Objects::nonNull).map((thread) -> {
|
||||
- return thread.getName() + ": \n\tat " + (String)Arrays.stream(thread.getStackTrace()).map(Object::toString).collect(Collectors.joining("\n\tat "));
|
||||
- String s = (String) Thread.getAllStackTraces().keySet().stream().filter(Objects::nonNull).map((thread) -> {
|
||||
- return thread.getName() + ": \n\tat " + (String) Arrays.stream(thread.getStackTrace()).map(Object::toString).collect(Collectors.joining("\n\tat "));
|
||||
- }).collect(Collectors.joining("\n"));
|
||||
- CrashReport crashreport = new CrashReport("Writing into PalettedContainer from multiple threads", new IllegalStateException());
|
||||
- CrashReportSystemDetails crashreportsystemdetails = crashreport.a("Thread dumps");
|
||||
- crashreportsystemdetails.a("Thread dumps", s);
|
||||
-
|
||||
- crashreportsystemdetails.a("Thread dumps", (Object) s);
|
||||
- throw new ReportedException(crashreport);
|
||||
- } else {
|
||||
- this.j.lock();
|
||||
|
@ -889,6 +890,7 @@ index 71a3636be..ff0fe2541 100644
|
|||
+ readLock = NOOP_LOCK;
|
||||
+ writeLock = NOOP_LOCK;
|
||||
+ }
|
||||
+
|
||||
+ private void b() {
|
||||
+ writeLock.lock();
|
||||
+ }
|
||||
|
@ -898,17 +900,18 @@ index 71a3636be..ff0fe2541 100644
|
|||
}
|
||||
+ // Paper end
|
||||
|
||||
public DataPaletteBlock(DataPalette<T> datapalette, RegistryBlockID<T> registryblockid, Function<NBTTagCompound, T> function, Function<T, NBTTagCompound> function1, T object) {
|
||||
public DataPaletteBlock(DataPalette<T> datapalette, RegistryBlockID<T> registryblockid, Function<NBTTagCompound, T> function, Function<T, NBTTagCompound> function1, T t0) {
|
||||
// Paper start - Anti-Xray - Support default constructor
|
||||
@@ -0,0 +0,0 @@ public class DataPaletteBlock<T> implements DataPaletteExpandable<T> {
|
||||
}
|
||||
|
||||
protected T a(int ix) {
|
||||
- T object = this.h.a(this.a.a(ix)); // Paper - decompile fix
|
||||
- return (T)(object == null ? this.g : object);
|
||||
protected T a(int i) {
|
||||
- T t0 = this.h.a(this.a.a(i));
|
||||
-
|
||||
- return t0 == null ? this.g : t0;
|
||||
+ try { // Paper start - read lock
|
||||
+ readLock.lock();
|
||||
+ T object = this.h.a(this.a.a(ix)); // Paper - decompile fix
|
||||
+ T object = this.h.a(this.a.a(i)); // Paper - decompile fix
|
||||
+ return (T)(object == null ? this.g : object);
|
||||
+ } finally {
|
||||
+ readLock.unlock();
|
||||
|
@ -917,12 +920,12 @@ index 71a3636be..ff0fe2541 100644
|
|||
|
||||
// Paper start - Anti-Xray - Support default methods
|
||||
diff --git a/src/main/java/net/minecraft/server/DefinedStructureManager.java b/src/main/java/net/minecraft/server/DefinedStructureManager.java
|
||||
index 271dc41d4..bd15534c2 100644
|
||||
index f5a6387f2..f45685099 100644
|
||||
--- a/src/main/java/net/minecraft/server/DefinedStructureManager.java
|
||||
+++ b/src/main/java/net/minecraft/server/DefinedStructureManager.java
|
||||
@@ -0,0 +0,0 @@ import org.apache.logging.log4j.Logger;
|
||||
|
||||
public class DefinedStructureManager implements IResourcePackListener {
|
||||
|
||||
private static final Logger a = LogManager.getLogger();
|
||||
- private final Map<MinecraftKey, DefinedStructure> b = Maps.newHashMap();
|
||||
+ private final Map<MinecraftKey, DefinedStructure> b = Maps.newConcurrentMap(); // Paper
|
||||
|
@ -930,7 +933,7 @@ index 271dc41d4..bd15534c2 100644
|
|||
private final MinecraftServer d;
|
||||
private final java.nio.file.Path e;
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index ef5a21505..93171edb4 100644
|
||||
index 11d5c2655..80e395b1a 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
|
||||
|
@ -956,19 +959,28 @@ index 4698ee99f..dfb45cc4e 100644
|
|||
Chunk a(GeneratorAccess generatoraccess, int i, int j, Consumer<Chunk> consumer) throws IOException;
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MathHelper.java b/src/main/java/net/minecraft/server/MathHelper.java
|
||||
index 49fba0979..9ad646f8d 100644
|
||||
index 8bb2593aa..67bb28954 100644
|
||||
--- a/src/main/java/net/minecraft/server/MathHelper.java
|
||||
+++ b/src/main/java/net/minecraft/server/MathHelper.java
|
||||
@@ -0,0 +0,0 @@ import java.util.function.IntPredicate;
|
||||
public class MathHelper {
|
||||
|
||||
public static final float a = c(2.0F);
|
||||
- private static final float[] b = (float[]) SystemUtils.a((Object) (new float[65536]), (afloat) -> {
|
||||
+ private static final float[] b = (float[]) SystemUtils.a((new float[65536]), (afloat) -> { // Paper - Decompile fix
|
||||
for (int i = 0; i < afloat.length; ++i) {
|
||||
afloat[i] = (float) Math.sin((double) i * 3.141592653589793D * 2.0D / 65536.0D);
|
||||
}
|
||||
@@ -0,0 +0,0 @@ public class MathHelper {
|
||||
return Math.floorMod(i, j);
|
||||
}
|
||||
|
||||
+ public static float normalizeYaw(float fx) { return g(fx); } // Paper - OBFHELPER
|
||||
public static float g(float fx) {
|
||||
fx = fx % 360.0F;
|
||||
if (fx >= 180.0F) {
|
||||
public static float g(float f) {
|
||||
f %= 360.0F;
|
||||
if (f >= 180.0F) {
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 63b5cdd41..32aee07d1 100644
|
||||
index d0be8d2fb..84d588122 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -0,0 +0,0 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
|
||||
|
@ -983,25 +995,25 @@ index 63b5cdd41..32aee07d1 100644
|
|||
}
|
||||
|
||||
BlockPosition blockposition = worldserver.getSpawn();
|
||||
- ArrayList arraylist = Lists.newArrayList();
|
||||
+ List<ChunkCoordIntPair> arraylist = worldserver.getChunkProvider().getSpiralOutChunks(blockposition, worldserver.paperConfig.keepLoadedRange >> 4); // Paper
|
||||
Set set = Sets.newConcurrentHashSet();
|
||||
- List<ChunkCoordIntPair> list = Lists.newArrayList();
|
||||
+ List<ChunkCoordIntPair> list = worldserver.getChunkProvider().getSpiralOutChunks(blockposition, worldserver.paperConfig.keepLoadedRange >> 4); // Paper
|
||||
Set<ChunkCoordIntPair> set = Sets.newConcurrentHashSet();
|
||||
|
||||
- // Paper start
|
||||
- short radius = worldserver.paperConfig.keepLoadedRange;
|
||||
- for (int i = -radius; i <= radius && this.isRunning(); i += 16) {
|
||||
- for (int j = -radius; j <= radius && this.isRunning(); j += 16) {
|
||||
- // Paper end
|
||||
- arraylist.add(new ChunkCoordIntPair(blockposition.getX() + i >> 4, blockposition.getZ() + j >> 4));
|
||||
- list.add(new ChunkCoordIntPair(blockposition.getX() + i >> 4, blockposition.getZ() + j >> 4));
|
||||
- }
|
||||
- } // Paper
|
||||
+ // Paper - remove arraylist creation, call spiral above
|
||||
if (this.isRunning()) { // Paper
|
||||
int expected = arraylist.size(); // Paper
|
||||
int expected = list.size(); // Paper
|
||||
|
||||
|
||||
- CompletableFuture completablefuture = worldserver.getChunkProvider().a((Iterable) arraylist, (chunk) -> {
|
||||
+ CompletableFuture completablefuture = worldserver.getChunkProvider().loadAllChunks((Iterable) arraylist, (chunk) -> { // Paper
|
||||
-
|
||||
- CompletableFuture completablefuture = worldserver.getChunkProvider().a((Iterable) list, (chunk) -> {
|
||||
+ CompletableFuture completablefuture = worldserver.getChunkProvider().loadAllChunks(list, (chunk) -> { // Paper
|
||||
set.add(chunk.getPos());
|
||||
- if (set.size() < expected && set.size() % 25 == 0) this.a(new ChatMessage("menu.preparingSpawn", new Object[0]), set.size() * 100 / expected); // Paper
|
||||
+ if (waitForChunks && (set.size() == expected || (set.size() < expected && set.size() % (set.size() / 10) == 0))) {
|
||||
|
@ -1718,7 +1730,7 @@ index 000000000..e9a38f9d9
|
|||
+
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java
|
||||
index b58683e6f..e61538b3c 100644
|
||||
index 240f59066..e4cf8548d 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 {
|
||||
|
@ -1772,15 +1784,16 @@ index b58683e6f..e61538b3c 100644
|
|||
+ return Math.sqrt((x * x) + (z * z));
|
||||
+ }
|
||||
|
||||
public PlayerChunk(PlayerChunkMap playerchunkmap, int ix, int j) {
|
||||
public PlayerChunk(PlayerChunkMap playerchunkmap, int i, int j) {
|
||||
this.playerChunkMap = playerchunkmap;
|
||||
this.location = new ChunkCoordIntPair(ix, j);
|
||||
@@ -0,0 +0,0 @@ public class PlayerChunk {
|
||||
ChunkProviderServer chunkproviderserver = playerchunkmap.getWorld().getChunkProvider();
|
||||
chunkproviderserver.a(ix, j);
|
||||
- this.chunk = chunkproviderserver.getChunkAt(ix, j, true, false);
|
||||
- this.chunkExists = this.chunk != null || org.bukkit.craftbukkit.chunkio.ChunkIOExecutor.hasQueuedChunkLoad(playerChunkMap.getWorld(), ix, j); // Paper
|
||||
+ this.chunk = chunkproviderserver.getChunkAt(ix, j, false, false); // Paper
|
||||
+ this.chunkExists = this.chunk != null || chunkproviderserver.chunkGoingToExists(ix, j); // Paper
|
||||
|
||||
chunkproviderserver.a(i, j);
|
||||
- this.chunk = chunkproviderserver.getChunkAt(i, j, true, false);
|
||||
- this.chunkExists = this.chunk != null || org.bukkit.craftbukkit.chunkio.ChunkIOExecutor.hasQueuedChunkLoad(playerChunkMap.getWorld(), i, j); // Paper
|
||||
+ this.chunk = chunkproviderserver.getChunkAt(i, j, false, false); // Paper
|
||||
+ this.chunkExists = this.chunk != null || chunkproviderserver.chunkGoingToExists(i, j); // Paper
|
||||
markChunkUsed(); // Paper - delay chunk unloads
|
||||
}
|
||||
|
||||
|
@ -1815,7 +1828,7 @@ index b58683e6f..e61538b3c 100644
|
|||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
|
||||
index 27343174d..77b36ff89 100644
|
||||
index 679488a3c..b7dda8e28 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 {
|
||||
|
@ -1875,7 +1888,7 @@ index 27343174d..77b36ff89 100644
|
|||
|
||||
private void e() {
|
||||
diff --git a/src/main/java/net/minecraft/server/RegionLimitedWorldAccess.java b/src/main/java/net/minecraft/server/RegionLimitedWorldAccess.java
|
||||
index d0b3e43c0..eb7f03898 100644
|
||||
index de6dd4fed..da6df06d8 100644
|
||||
--- a/src/main/java/net/minecraft/server/RegionLimitedWorldAccess.java
|
||||
+++ b/src/main/java/net/minecraft/server/RegionLimitedWorldAccess.java
|
||||
@@ -0,0 +0,0 @@ public class RegionLimitedWorldAccess implements GeneratorAccess {
|
||||
|
@ -1888,7 +1901,7 @@ index d0b3e43c0..eb7f03898 100644
|
|||
this.m = world.getChunkProvider().getChunkGenerator().getSettings();
|
||||
this.i = world.getSeaLevel();
|
||||
diff --git a/src/main/java/net/minecraft/server/SchedulerBatch.java b/src/main/java/net/minecraft/server/SchedulerBatch.java
|
||||
index d868149d1..0d45d933e 100644
|
||||
index 8e909d9ca..f214a74a2 100644
|
||||
--- a/src/main/java/net/minecraft/server/SchedulerBatch.java
|
||||
+++ b/src/main/java/net/minecraft/server/SchedulerBatch.java
|
||||
@@ -0,0 +0,0 @@ public class SchedulerBatch<K, T extends SchedulerTask<K, T>, R> {
|
||||
|
@ -1916,7 +1929,7 @@ index d868149d1..0d45d933e 100644
|
|||
}
|
||||
|
||||
+ public CompletableFuture<R> add(K k0) { return a(k0); } // Paper - OBFHELPER
|
||||
public CompletableFuture<R> a(K object) {
|
||||
public CompletableFuture<R> a(K k0) {
|
||||
if (!this.c) {
|
||||
throw new RuntimeException("Batch not properly started. Please use startBatch to create a new batch.");
|
||||
@@ -0,0 +0,0 @@ public class SchedulerBatch<K, T extends SchedulerTask<K, T>, R> {
|
||||
|
@ -1943,7 +1956,7 @@ index d868149d1..0d45d933e 100644
|
|||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/StructurePiece.java b/src/main/java/net/minecraft/server/StructurePiece.java
|
||||
index 510543db4..ce9e5d4e0 100644
|
||||
index d9def7135..945a005e9 100644
|
||||
--- a/src/main/java/net/minecraft/server/StructurePiece.java
|
||||
+++ b/src/main/java/net/minecraft/server/StructurePiece.java
|
||||
@@ -0,0 +0,0 @@ public abstract class StructurePiece {
|
||||
|
@ -1953,41 +1966,53 @@ index 510543db4..ce9e5d4e0 100644
|
|||
- private static final Set<Block> d = ImmutableSet.builder().add(Blocks.NETHER_BRICK_FENCE).add(Blocks.TORCH).add(Blocks.WALL_TORCH).add(Blocks.OAK_FENCE).add(Blocks.SPRUCE_FENCE).add(Blocks.DARK_OAK_FENCE).add(Blocks.ACACIA_FENCE).add(Blocks.BIRCH_FENCE).add(Blocks.JUNGLE_FENCE).add(Blocks.LADDER).add(Blocks.IRON_BARS).build();
|
||||
+ private static final Set<Block> d = ImmutableSet.<Block>builder().add(Blocks.NETHER_BRICK_FENCE).add(Blocks.TORCH).add(Blocks.WALL_TORCH).add(Blocks.OAK_FENCE).add(Blocks.SPRUCE_FENCE).add(Blocks.DARK_OAK_FENCE).add(Blocks.ACACIA_FENCE).add(Blocks.BIRCH_FENCE).add(Blocks.JUNGLE_FENCE).add(Blocks.LADDER).add(Blocks.IRON_BARS).build(); // Paper - decompile error
|
||||
|
||||
public StructurePiece() {
|
||||
}
|
||||
public StructurePiece() {}
|
||||
|
||||
@@ -0,0 +0,0 @@ public abstract class StructurePiece {
|
||||
}
|
||||
|
||||
public static StructurePiece a(List<StructurePiece> list, StructureBoundingBox structureboundingbox) {
|
||||
- for(StructurePiece structurepiece : list) {
|
||||
+ synchronized (list) { for(StructurePiece structurepiece : list) { // Paper - synchronize main structure list
|
||||
if (structurepiece.d() != null && structurepiece.d().a(structureboundingbox)) {
|
||||
return structurepiece;
|
||||
}
|
||||
- }
|
||||
+ }} // Paper
|
||||
+ StructurePiece structurepiece; // Paper
|
||||
+ synchronized (list) { // Paper - synchronize main structure list
|
||||
Iterator iterator = list.iterator();
|
||||
|
||||
return null;
|
||||
- StructurePiece structurepiece;
|
||||
+ //StructurePiece structurepiece; // Paper - move up
|
||||
|
||||
do {
|
||||
if (!iterator.hasNext()) {
|
||||
@@ -0,0 +0,0 @@ public abstract class StructurePiece {
|
||||
|
||||
structurepiece = (StructurePiece) iterator.next();
|
||||
} while (structurepiece.d() == null || !structurepiece.d().a(structureboundingbox));
|
||||
-
|
||||
+ } // Paper
|
||||
return structurepiece;
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/StructureStart.java b/src/main/java/net/minecraft/server/StructureStart.java
|
||||
index 1926c902a..1117e4ae2 100644
|
||||
index 284e96710..8b08efe1f 100644
|
||||
--- a/src/main/java/net/minecraft/server/StructureStart.java
|
||||
+++ b/src/main/java/net/minecraft/server/StructureStart.java
|
||||
@@ -0,0 +0,0 @@ import java.util.List;
|
||||
import java.util.Random;
|
||||
@@ -0,0 +0,0 @@ import java.util.Random;
|
||||
|
||||
public abstract class StructureStart {
|
||||
|
||||
- protected final List<StructurePiece> a = Lists.newArrayList();
|
||||
+ protected final List<StructurePiece> a = java.util.Collections.synchronizedList(Lists.newArrayList()); // Paper
|
||||
protected StructureBoundingBox b;
|
||||
protected int c;
|
||||
protected int d;
|
||||
@@ -0,0 +0,0 @@ public abstract class StructureStart {
|
||||
protected void a(IBlockAccess var1) {
|
||||
this.b = StructureBoundingBox.a();
|
||||
|
||||
- for(StructurePiece structurepiece : this.a) {
|
||||
+ synchronized (this.a) {for(StructurePiece structurepiece : this.a) { // Paper - synchronize
|
||||
protected void a(IBlockAccess iblockaccess) {
|
||||
this.b = StructureBoundingBox.a();
|
||||
+ synchronized (this.a) { // Paper - synchronize
|
||||
Iterator iterator = this.a.iterator();
|
||||
|
||||
while (iterator.hasNext()) {
|
||||
StructurePiece structurepiece = (StructurePiece) iterator.next();
|
||||
|
||||
this.b.b(structurepiece.d());
|
||||
- }
|
||||
+ }} // Paper
|
||||
|
@ -1996,10 +2021,14 @@ index 1926c902a..1117e4ae2 100644
|
|||
|
||||
@@ -0,0 +0,0 @@ public abstract class StructureStart {
|
||||
int l = k - this.b.e;
|
||||
this.b.a(0, l, 0);
|
||||
|
||||
- for(StructurePiece structurepiece : this.a) {
|
||||
+ synchronized (this.a) {for(StructurePiece structurepiece : this.a) { // Paper - synchronize
|
||||
this.b.a(0, l, 0);
|
||||
+ synchronized (this.a) { // Paper - synchronize
|
||||
Iterator iterator = this.a.iterator();
|
||||
|
||||
while (iterator.hasNext()) {
|
||||
StructurePiece structurepiece = (StructurePiece) iterator.next();
|
||||
|
||||
structurepiece.a(0, l, 0);
|
||||
- }
|
||||
+ }} // Paper
|
||||
|
@ -2008,10 +2037,14 @@ index 1926c902a..1117e4ae2 100644
|
|||
|
||||
@@ -0,0 +0,0 @@ public abstract class StructureStart {
|
||||
int i1 = l - this.b.b;
|
||||
this.b.a(0, i1, 0);
|
||||
|
||||
- for(StructurePiece structurepiece : this.a) {
|
||||
+ synchronized (this.a) {for(StructurePiece structurepiece : this.a) { // Paper - synchronize
|
||||
this.b.a(0, i1, 0);
|
||||
+ synchronized (this.a) {
|
||||
Iterator iterator = this.a.iterator();
|
||||
|
||||
while (iterator.hasNext()) {
|
||||
StructurePiece structurepiece = (StructurePiece) iterator.next();
|
||||
|
||||
structurepiece.a(0, i1, 0);
|
||||
- }
|
||||
+ }} // Paper
|
||||
|
@ -2019,7 +2052,7 @@ index 1926c902a..1117e4ae2 100644
|
|||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index cb09e1052..cd31792b7 100644
|
||||
index f48d5d9f7..b5b0fcf8c 100644
|
||||
--- a/src/main/java/net/minecraft/server/World.java
|
||||
+++ b/src/main/java/net/minecraft/server/World.java
|
||||
@@ -0,0 +0,0 @@ import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
|
||||
|
@ -2116,13 +2149,13 @@ index cb09e1052..cd31792b7 100644
|
|||
if (entity.valid) { MinecraftServer.LOGGER.error("Attempted Double World add on " + entity, new Throwable()); return true; } // Paper
|
||||
if (!CraftEventFactory.doEntityAddEventCalling(this, entity, spawnReason)) {
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldGenStronghold.java b/src/main/java/net/minecraft/server/WorldGenStronghold.java
|
||||
index fa99fe014..4f49786aa 100644
|
||||
index 69d8a25bd..d0eaa9e9f 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldGenStronghold.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldGenStronghold.java
|
||||
@@ -0,0 +0,0 @@ import java.util.Random;
|
||||
import javax.annotation.Nullable;
|
||||
@@ -0,0 +0,0 @@ import javax.annotation.Nullable;
|
||||
|
||||
public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrongholdConfiguration> {
|
||||
|
||||
- private boolean b;
|
||||
- private ChunkCoordIntPair[] c;
|
||||
- private long d;
|
||||
|
@ -2132,10 +2165,9 @@ index fa99fe014..4f49786aa 100644
|
|||
+ //private long d;
|
||||
+ // Paper end
|
||||
|
||||
public WorldGenStronghold() {
|
||||
}
|
||||
public WorldGenStronghold() {}
|
||||
|
||||
protected boolean a(ChunkGenerator<?> chunkgenerator, Random var2, int i, int j) {
|
||||
protected boolean a(ChunkGenerator<?> chunkgenerator, Random random, int i, int j) {
|
||||
- if (this.d != chunkgenerator.getSeed()) {
|
||||
+ // Paper start
|
||||
+ /*if (this.d != chunkgenerator.getSeed()) {
|
||||
|
@ -2153,11 +2185,11 @@ index fa99fe014..4f49786aa 100644
|
|||
+ }} // Paper
|
||||
+ // Paper end
|
||||
|
||||
- for(ChunkCoordIntPair chunkcoordintpair : this.c) {
|
||||
+ for(ChunkCoordIntPair chunkcoordintpair : chunkgenerator.getWorld().strongholdCoords) { // Paper
|
||||
if (i == chunkcoordintpair.x && j == chunkcoordintpair.z) {
|
||||
return true;
|
||||
}
|
||||
- ChunkCoordIntPair[] achunkcoordintpair = this.c;
|
||||
+ ChunkCoordIntPair[] achunkcoordintpair = chunkgenerator.getWorld().strongholdCoords; // Paper
|
||||
int k = achunkcoordintpair.length;
|
||||
|
||||
for (int l = 0; l < k; ++l) {
|
||||
@@ -0,0 +0,0 @@ public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrong
|
||||
}
|
||||
|
||||
|
@ -2193,77 +2225,84 @@ index fa99fe014..4f49786aa 100644
|
|||
+ // Paper end
|
||||
|
||||
BlockPosition blockposition1 = null;
|
||||
BlockPosition.MutableBlockPosition blockposition$mutableblockposition = new BlockPosition.MutableBlockPosition(0, 0, 0);
|
||||
BlockPosition.MutableBlockPosition blockposition_mutableblockposition = new BlockPosition.MutableBlockPosition(0, 0, 0);
|
||||
double d0 = Double.MAX_VALUE;
|
||||
+ // Paper start
|
||||
+ /*
|
||||
ChunkCoordIntPair[] achunkcoordintpair = this.c;
|
||||
int j = achunkcoordintpair.length;
|
||||
|
||||
- for(ChunkCoordIntPair chunkcoordintpair : this.c) {
|
||||
+ for(ChunkCoordIntPair chunkcoordintpair : chunkgenerator.getWorld().strongholdCoords) { // Paper
|
||||
blockposition$mutableblockposition.c((chunkcoordintpair.x << 4) + 8, 32, (chunkcoordintpair.z << 4) + 8);
|
||||
double d1 = blockposition$mutableblockposition.n(blockposition);
|
||||
if (blockposition1 == null) {
|
||||
for (int k = 0; k < j; ++k) {
|
||||
- ChunkCoordIntPair chunkcoordintpair = achunkcoordintpair[k];
|
||||
+ */
|
||||
+ for (ChunkCoordIntPair chunkcoordintpair : world.strongholdCoords) {
|
||||
+ // Paper end
|
||||
|
||||
blockposition_mutableblockposition.c((chunkcoordintpair.x << 4) + 8, 32, (chunkcoordintpair.z << 4) + 8);
|
||||
double d1 = blockposition_mutableblockposition.n(blockposition);
|
||||
@@ -0,0 +0,0 @@ public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrong
|
||||
}
|
||||
|
||||
private void a(ChunkGenerator<?> chunkgenerator) {
|
||||
- this.d = chunkgenerator.getSeed();
|
||||
+ //this.d = chunkgenerator.getSeed(); // Paper
|
||||
ArrayList arraylist = Lists.newArrayList();
|
||||
List<BiomeBase> list = Lists.newArrayList();
|
||||
Iterator iterator = IRegistry.BIOME.iterator();
|
||||
|
||||
for(BiomeBase biomebase : IRegistry.BIOME) {
|
||||
@@ -0,0 +0,0 @@ public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrong
|
||||
int i2 = chunkgenerator.getSettings().e();
|
||||
int j2 = chunkgenerator.getSettings().f();
|
||||
int i = chunkgenerator.getSettings().g();
|
||||
- this.c = new ChunkCoordIntPair[j2];
|
||||
+ ChunkCoordIntPair[] strongholdCoords = chunkgenerator.getWorld().strongholdCoords = new ChunkCoordIntPair[j2]; // Paper
|
||||
int j = 0;
|
||||
Long2ObjectMap long2objectmap = chunkgenerator.getStructureStartCache(this);
|
||||
synchronized(long2objectmap) {
|
||||
@@ -0,0 +0,0 @@ public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrong
|
||||
int j = chunkgenerator.getSettings().f();
|
||||
int k = chunkgenerator.getSettings().g();
|
||||
|
||||
while(objectiterator.hasNext()) {
|
||||
StructureStart structurestart = (StructureStart)objectiterator.next();
|
||||
- if (j < this.c.length) {
|
||||
- this.c[j++] = new ChunkCoordIntPair(structurestart.e(), structurestart.f());
|
||||
+ if (j < strongholdCoords.length) { // Paper
|
||||
+ strongholdCoords[j++] = new ChunkCoordIntPair(structurestart.e(), structurestart.f()); // Paper
|
||||
- this.c = new ChunkCoordIntPair[j];
|
||||
+ ChunkCoordIntPair[] strongholdCoords = chunkgenerator.getWorld().strongholdCoords = new ChunkCoordIntPair[j]; // Paper
|
||||
int l = 0;
|
||||
Long2ObjectMap<StructureStart> long2objectmap = chunkgenerator.getStructureStartCache(this);
|
||||
|
||||
@@ -0,0 +0,0 @@ public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrong
|
||||
while (objectiterator.hasNext()) {
|
||||
StructureStart structurestart = (StructureStart) objectiterator.next();
|
||||
|
||||
- if (l < this.c.length) {
|
||||
- this.c[l++] = new ChunkCoordIntPair(structurestart.e(), structurestart.f());
|
||||
+ if (l < strongholdCoords.length) { // Paper
|
||||
+ strongholdCoords[l++] = new ChunkCoordIntPair(structurestart.e(), structurestart.f()); // Paper
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +0,0 @@ public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrong
|
||||
random.setSeed(chunkgenerator.getSeed());
|
||||
double d1 = random.nextDouble() * Math.PI * 2.0D;
|
||||
int k = long2objectmap.size();
|
||||
- if (k < this.c.length) {
|
||||
+ if (k < strongholdCoords.length) { // Paper
|
||||
int l = 0;
|
||||
int i1 = 0;
|
||||
double d0 = random.nextDouble() * 3.141592653589793D * 2.0D;
|
||||
int i1 = long2objectmap.size();
|
||||
|
||||
- for(int j1 = 0; j1 < this.c.length; ++j1) {
|
||||
+ for(int j1 = 0; j1 < strongholdCoords.length; ++j1) { // Paper
|
||||
double d0 = (double)(4 * i2 + i2 * i1 * 6) + (random.nextDouble() - 0.5D) * (double)i2 * 2.5D;
|
||||
int k1 = (int)Math.round(Math.cos(d1) * d0);
|
||||
int l1 = (int)Math.round(Math.sin(d1) * d0);
|
||||
- if (i1 < this.c.length) {
|
||||
+ if (i1 < strongholdCoords.length) { // Paper
|
||||
int j1 = 0;
|
||||
int k1 = 0;
|
||||
|
||||
- for (int l1 = 0; l1 < this.c.length; ++l1) {
|
||||
+ for (int l1 = 0; l1 < strongholdCoords.length; ++l1) { // Paper
|
||||
double d1 = (double) (4 * i + i * k1 * 6) + (random.nextDouble() - 0.5D) * (double) i * 2.5D;
|
||||
int i2 = (int) Math.round(Math.cos(d0) * d1);
|
||||
int j2 = (int) Math.round(Math.sin(d0) * d1);
|
||||
@@ -0,0 +0,0 @@ public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrong
|
||||
}
|
||||
|
||||
if (j1 >= k) {
|
||||
- this.c[j1] = new ChunkCoordIntPair(k1, l1);
|
||||
+ strongholdCoords[j1] = new ChunkCoordIntPair(k1, l1); // Paper
|
||||
if (l1 >= i1) {
|
||||
- this.c[l1] = new ChunkCoordIntPair(i2, j2);
|
||||
+ strongholdCoords[l1] = new ChunkCoordIntPair(i2, j2); // Paper
|
||||
}
|
||||
|
||||
d1 += (Math.PI * 2D) / (double)i;
|
||||
d0 += 6.283185307179586D / (double) k;
|
||||
@@ -0,0 +0,0 @@ public class WorldGenStronghold extends StructureGenerator<WorldGenFeatureStrong
|
||||
++i1;
|
||||
l = 0;
|
||||
i = i + 2 * i / (i1 + 1);
|
||||
- i = Math.min(i, this.c.length - j1);
|
||||
+ i = Math.min(i, strongholdCoords.length - j1); // Paper
|
||||
d1 += random.nextDouble() * Math.PI * 2.0D;
|
||||
++k1;
|
||||
j1 = 0;
|
||||
k += 2 * k / (k1 + 1);
|
||||
- k = Math.min(k, this.c.length - l1);
|
||||
+ k = Math.min(k, strongholdCoords.length - l1); // Paper
|
||||
d0 += random.nextDouble() * 3.141592653589793D * 2.0D;
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index b355c3f53..27c8a97be 100644
|
||||
index 0a1ffd009..82cfd694a 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 implements IAsyncTaskHandler {
|
||||
|
@ -2304,7 +2343,7 @@ index a0f255ff1..eb4b3c7a2 100644
|
|||
}
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 7ef3c7746..162ff3414 100644
|
||||
index 95fe3a91b..b5a87cfaf 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -0,0 +0,0 @@ public class CraftWorld implements World {
|
||||
|
@ -2342,7 +2381,7 @@ index 7ef3c7746..162ff3414 100644
|
|||
if (isChunkLoaded(chunkCoordX + x, chunkCoordZ + z)) {
|
||||
unloadChunk(chunkCoordX + x, chunkCoordZ + z);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index f87d2bed7..603f43b7e 100644
|
||||
index fdab6734f..140415687 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -0,0 +0,0 @@ public class CraftEventFactory {
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue