Updated Upstream (Paper & Tuinity)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
415f7ca165 Updated Upstream (Bukkit/CraftBukkit)
37df95b189 refactor: do not import List; use FQN
5c65546f5c rebase
fdef125b19 Expose EntityType#getTranslationKey
4d9b14efa4 Use AsyncAppender instead of AsyncLoggerContextSelector to keep loggging IO off main thread (#6381)
8c2adf8e9e Add warning to getOfflinePlayers (#6365)
370b60de14 Optimize indirect passenger iteration (#6366)
80836709e7 Fix block drops position losing precision millions of blocks out (#6387)
e942509e73 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#6379)
ce43ce8265 Make EntityUnleashEvent cancellable (#4993)
591cac3685 Configurable item frame map cursor interval (#6385)
e9aa9ce66b Add config migration for named entity death logging option (#6390)
c2f47a76ae Implement Translatable in appropriate places (#6248)
f12a7f57e1 Clear bucket NBT after dispense (#6391)
4dd33cb8b6 [ci skip] Drop "Fix CME on adding a passenger in CreatureSpawnEvent" (#6384)
565cd3306c [ci skip] Add some helper methods to the ObfHelper util class (#6374)

Tuinity Changes:
6fd7e2b376 Update paper
This commit is contained in:
William Blake Galbreath
2021-08-14 16:40:10 -05:00
parent 158ae61463
commit 635d108ae2
67 changed files with 276 additions and 329 deletions

View File

@@ -4,7 +4,7 @@ version = 1.17.1-R0.1-SNAPSHOT
mcVersion = 1.17.1
packageVersion = 1_17_R1
paperCommit = 80650e893678e726b0d5724031344eb2ec47a51a
paperCommit = 565cd3306ccd13f4d787344623aad5ba0b9e2f04
org.gradle.caching = true
org.gradle.parallel = true

View File

@@ -17,10 +17,10 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 024da3febe3fd6c54aa30e99cb08300bc38ddb92..2002423121ed73faf6b06ccb1f19152980d1ea21 100644
index 83870d54a5ff1017ad7455e9c931fdee54354434..d6607c1cc3b976367f0087810de698281d4733ab 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1677,6 +1677,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1679,6 +1679,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
}
// Paper end
@@ -36,10 +36,10 @@ index 024da3febe3fd6c54aa30e99cb08300bc38ddb92..2002423121ed73faf6b06ccb1f191529
* Sends the component to the player
*
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
index 8ae9198ba7fdb006dc420504a984627add20dbb5..4017cc64532a9a8e42c3a6492878cd96db13fcb3 100644
index 953d3470811d5877bd8a9653343f4c38770b266f..6d5c60a7def6926421df09214e9a9053a321bc00 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -3639,6 +3639,26 @@ public interface World extends PluginMessageRecipient, Metadatable, net.kyori.ad
@@ -3706,6 +3706,26 @@ public interface World extends PluginMessageRecipient, Metadatable, net.kyori.ad
* @param viewDistance view distance in [2, 32]
*/
void setNoTickViewDistance(int viewDistance);
@@ -67,10 +67,10 @@ index 8ae9198ba7fdb006dc420504a984627add20dbb5..4017cc64532a9a8e42c3a6492878cd96
// Spigot start
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 5e8814cc317a705eaf8bdd9f3876a5366c0a0226..7be8c47bdb8cc73c039efe05d81085cdbe0bef58 100644
index 3ec1be36b90dbedb8631135555da4b69110e4791..c87cb640dc829a266e85e97a2e3bb2f0f52a2eaa 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -1818,23 +1818,63 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -1887,23 +1887,63 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* Gets the view distance for this player
*
* @return the player's view distance

View File

@@ -6,11 +6,11 @@ Subject: [PATCH] Build System Changes
todo: merge with rebrand patch
diff --git a/build.gradle.kts b/build.gradle.kts
index d69d367a7527d677661ea56453b95417748b70a9..206ac6d91e9935c12e65244fe5ed9c168781eb6b 100644
index 689d470ebe2c7e25e4c87f6127978d1d283e55b5..9f50b301e8ec5b914e5f9bb0229549078bcbf257 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -28,6 +28,7 @@ dependencies {
api("net.kyori:adventure-text-serializer-plain")
@@ -39,6 +39,7 @@ dependencies {
apiAndDocs("net.kyori:adventure-text-serializer-plain")
api("org.apache.logging.log4j:log4j-api:2.14.1") // Paper
api("org.slf4j:slf4j-api:1.7.30") // Paper
+ api("net.kyori:adventure-text-minimessage:4.1.0-SNAPSHOT") // Purpur

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Purpur config files
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 2002423121ed73faf6b06ccb1f19152980d1ea21..0e37bb7ed1bf1855a5d19519f34018ae8b6a0d95 100644
index d6607c1cc3b976367f0087810de698281d4733ab..6aa18a3ff909b1b24082b5fe4f71d82d67a2354a 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1685,6 +1685,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1687,6 +1687,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
}
// Tuinity end - add config to timings report

View File

@@ -81,10 +81,10 @@ index 0000000000000000000000000000000000000000..0c8b3e5e4ba412624357ea5662a78862
+ }
+}
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 7be8c47bdb8cc73c039efe05d81085cdbe0bef58..3197dee574327da2d1aa65f775ee3f53b88d5d85 100644
index c87cb640dc829a266e85e97a2e3bb2f0f52a2eaa..285c8a5c6991c26e0b9c2b6af252cc1b320a8a2f 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2230,4 +2230,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2299,4 +2299,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@Override
Spigot spigot();
// Spigot end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Bring back server name
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index 88b33dbd6a2b67e9665e0c24b986cf30acb1a5fa..ef3068c0bf8e834c85e2719fe08c406790523161 100644
index d36e4bc3c3713407704b865574cba28662f17315..fc956758335734ac89e86e9c5fbbb6cc965d0e59 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -2061,4 +2061,15 @@ public final class Bukkit {
@@ -2063,4 +2063,15 @@ public final class Bukkit {
public static Server.Spigot spigot() {
return server.spigot();
}
@@ -25,10 +25,10 @@ index 88b33dbd6a2b67e9665e0c24b986cf30acb1a5fa..ef3068c0bf8e834c85e2719fe08c4067
+ // Purpur end
}
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 0e37bb7ed1bf1855a5d19519f34018ae8b6a0d95..70bbd5b7586a35e70b09edfcd2d47bb54757bf9a 100644
index 6aa18a3ff909b1b24082b5fe4f71d82d67a2354a..b1c470734a48e3895e805b49c74809d46a005664 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1807,4 +1807,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1809,4 +1809,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@NotNull
io.papermc.paper.datapack.DatapackManager getDatapackManager();
// Paper end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Lagging threshold
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index ef3068c0bf8e834c85e2719fe08c406790523161..4a7e1521711c4e4728662cd6200d6d9d6b600713 100644
index fc956758335734ac89e86e9c5fbbb6cc965d0e59..39490406f914a5082d9d4b3937d9df63c222efa6 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -2071,5 +2071,14 @@ public final class Bukkit {
@@ -2073,5 +2073,14 @@ public final class Bukkit {
public static String getServerName() {
return server.getServerName();
}
@@ -24,10 +24,10 @@ index ef3068c0bf8e834c85e2719fe08c406790523161..4a7e1521711c4e4728662cd6200d6d9d
// Purpur end
}
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 70bbd5b7586a35e70b09edfcd2d47bb54757bf9a..9b316559dba0b1df674d68bdd51d3497dcd25d61 100644
index b1c470734a48e3895e805b49c74809d46a005664..0b68d0bd03822ed90effc4e57d288973f3164f16 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1815,5 +1815,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1817,5 +1817,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
*/
@NotNull
String getServerName();

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Player invulnerabilities
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 3197dee574327da2d1aa65f775ee3f53b88d5d85..28eb87afaa61a22e1962f0b233854314e474692b 100644
index 285c8a5c6991c26e0b9c2b6af252cc1b320a8a2f..702b2cb940fd269c4ddc0c25c7aefd00d014b942 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2250,5 +2250,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2319,5 +2319,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* Reset the idle timer back to 0
*/
void resetIdleTimer();

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] ItemStack convenience methods
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
index 08eb0cc65308c5d4078814a0bccf84142737e87a..1f113c6befc2498b3770eb5dd61a69a9ea962bd6 100644
index ed6dfb28f8f434680fc8eacbe49a9d0b6cf9be83..a128b647367487f6ba597d9a34378085a18bd8d1 100644
--- a/src/main/java/org/bukkit/Material.java
+++ b/src/main/java/org/bukkit/Material.java
@@ -9819,4 +9819,40 @@ public enum Material implements Keyed {
@@ -9826,4 +9826,40 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata
// </editor-fold>
}
}
@@ -50,7 +50,7 @@ index 08eb0cc65308c5d4078814a0bccf84142737e87a..1f113c6befc2498b3770eb5dd61a69a9
+ // Purpur end
}
diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java
index 14cdc64334d6a19102eca6d7d724c35aecf1c1e2..bbf0f3c1cddb3b11020a80424a4dbca1b53f1c2c 100644
index 59a026d80b0a0a4890becf98efdbe5325b2c622a..ff9815e10cef89e98fb6d0181ac1eee0cc24d296 100644
--- a/src/main/java/org/bukkit/inventory/ItemStack.java
+++ b/src/main/java/org/bukkit/inventory/ItemStack.java
@@ -17,6 +17,18 @@ import org.bukkit.inventory.meta.ItemMeta;
@@ -72,7 +72,7 @@ index 14cdc64334d6a19102eca6d7d724c35aecf1c1e2..bbf0f3c1cddb3b11020a80424a4dbca1
/**
* Represents a stack of items.
@@ -922,4 +934,626 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, net.kyor
@@ -935,4 +947,626 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, net.kyor
return Bukkit.getUnsafe().isValidRepairItemStack(toBeRepaired, this);
}
// Paper end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Fix javadoc warnings (missing @param and @return)
diff --git a/src/main/java/com/destroystokyo/paper/ClientOption.java b/src/main/java/com/destroystokyo/paper/ClientOption.java
index 9dad814cf51bc59ec5dfbf14474fea6557de38aa..7baf7ee3b62135eda8f0d9c1d761b79f596061f1 100644
index cedb51f9f3a9150035c2b44970a096448c441dd9..130fab58e6d448ec08667e2a6c13fc78121f802b 100644
--- a/src/main/java/com/destroystokyo/paper/ClientOption.java
+++ b/src/main/java/com/destroystokyo/paper/ClientOption.java
@@ -4,6 +4,11 @@ import org.jetbrains.annotations.NotNull;
@@ -6,6 +6,11 @@ import org.jetbrains.annotations.NotNull;
import org.bukkit.inventory.MainHand;
@@ -20,7 +20,7 @@ index 9dad814cf51bc59ec5dfbf14474fea6557de38aa..7baf7ee3b62135eda8f0d9c1d761b79f
public final class ClientOption<T> {
public static final ClientOption<SkinParts> SKIN_PARTS = new ClientOption<>(SkinParts.class);
@@ -19,6 +24,11 @@ public final class ClientOption<T> {
@@ -21,6 +26,11 @@ public final class ClientOption<T> {
this.type = type;
}
@@ -489,10 +489,10 @@ index 3afd5f5c0208a4ee93b5dbfc2aab2b9d2e8a7544..7838731e0e16bdccfb79e74ceb64148f
/**
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 9b316559dba0b1df674d68bdd51d3497dcd25d61..988b1c6c819cac350cde581e486e98d886227c4e 100644
index 0b68d0bd03822ed90effc4e57d288973f3164f16..86141c856478c6b39f7ef52f590a68e564da1ba9 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1650,6 +1650,9 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1652,6 +1652,9 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
UnsafeValues getUnsafe();
// Spigot start
@@ -616,10 +616,10 @@ index d1757f3d456ff9efce26ce8baa1d16d896908cc2..a5db52386e11e4b5511ae417a0e7ac92
TASK(ChatColor.GREEN),
CHALLENGE(ChatColor.DARK_PURPLE),
diff --git a/src/main/java/org/bukkit/block/Block.java b/src/main/java/org/bukkit/block/Block.java
index ca488173a20bcf3427906f0a6548f06a97c9dc36..3b6fd2083d00a0cf2add91302a74c8f905563d09 100644
index ad8bce01ba459a036cd4ebbbe4fc974021924fe2..466de59ee63a065151f62029743598f1e8d54253 100644
--- a/src/main/java/org/bukkit/block/Block.java
+++ b/src/main/java/org/bukkit/block/Block.java
@@ -184,6 +184,9 @@ public interface Block extends Metadatable {
@@ -184,6 +184,9 @@ public interface Block extends Metadatable, net.kyori.adventure.translation.Tran
* {@code int z = (int) ((packed << 10) >> 37);}
* </p>
*
@@ -880,7 +880,7 @@ index c6f33ed7502fe8ad58f937ac2e326b85416452c2..6a16e4dcebaf6c899859039774383125
public boolean isTicking();
// Paper end
diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java
index f415b61b0d4b57e1557aaf240a0f2ad5915035fc..e501ef166445ad6c515b95151d151ef759bea8f5 100644
index d36d314383713bac3b11f18d95b0809dce3cd6e0..6a340d660d75968a52005502e6b410e2408140af 100644
--- a/src/main/java/org/bukkit/entity/EntityType.java
+++ b/src/main/java/org/bukkit/entity/EntityType.java
@@ -20,6 +20,9 @@ import org.jetbrains.annotations.Contract;
@@ -890,7 +890,7 @@ index f415b61b0d4b57e1557aaf240a0f2ad5915035fc..e501ef166445ad6c515b95151d151ef7
+/**
+ * Entity type
+ */
public enum EntityType implements Keyed {
public enum EntityType implements Keyed, net.kyori.adventure.translation.Translatable { // Paper - translatable
// These strings MUST match the strings in nms.EntityTypes and are case sensitive.
diff --git a/src/main/java/org/bukkit/entity/Firework.java b/src/main/java/org/bukkit/entity/Firework.java
@@ -949,10 +949,10 @@ index a6a7429ed2e1eefb2b12b7480ed74fcc3963a864..e8027e1d505dda6effbb1698550016e8
NORMAL(false),
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 28eb87afaa61a22e1962f0b233854314e474692b..da1ebc0bddee0b3f53ec0f7a46f7ce1c517c329c 100644
index 702b2cb940fd269c4ddc0c25c7aefd00d014b942..3fc740eca60e4d21c13f1a4495f84ec765c007c9 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2052,6 +2052,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2121,6 +2121,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
void resetCooldown();
/**
@@ -961,7 +961,7 @@ index 28eb87afaa61a22e1962f0b233854314e474692b..da1ebc0bddee0b3f53ec0f7a46f7ce1c
* @return the client option value of the player
*/
@NotNull
@@ -2091,6 +2093,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2160,6 +2162,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
// Paper end
// Spigot start
@@ -1161,10 +1161,10 @@ index 1e702f94e1994bb9ee5c0871152048f4f4b1defc..4cbf2dca3e59967d562d88caf9998382
/**
* When a zombie gets cured and a villager is spawned.
diff --git a/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java b/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
index e0e068799a1868c8e561869015f41f553ef4fbdb..9fa0ba2f81a6724491c22446c87135841d099fb0 100644
index 95248d0f5cf9b62d31a4883955b9088a7fc8a3b3..4367e272a0eb8010afbdb478ca56cfd87eb87315 100644
--- a/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
+++ b/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
@@ -66,6 +66,9 @@ public class EntityUnleashEvent extends EntityEvent {
@@ -85,6 +85,9 @@ public class EntityUnleashEvent extends EntityEvent implements org.bukkit.event.
return handlers;
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Conflict on change for adventure deprecations
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index 4a7e1521711c4e4728662cd6200d6d9d6b600713..34902835cd4e030902feb568a2315c7f5d60f0eb 100644
index 39490406f914a5082d9d4b3937d9df63c222efa6..e4ec2a0c15a6ada5bef9671e427cd56413f18d80 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -346,7 +346,7 @@ public final class Bukkit {
@@ -26,7 +26,7 @@ index 4a7e1521711c4e4728662cd6200d6d9d6b600713..34902835cd4e030902feb568a2315c7f
public static int broadcast(@NotNull String message, @NotNull String permission) {
return server.broadcast(message, permission);
}
@@ -1322,7 +1322,7 @@ public final class Bukkit {
@@ -1324,7 +1324,7 @@ public final class Bukkit {
*
* @see InventoryType#isCreatable()
*/
@@ -35,7 +35,7 @@ index 4a7e1521711c4e4728662cd6200d6d9d6b600713..34902835cd4e030902feb568a2315c7f
@NotNull
public static Inventory createInventory(@Nullable InventoryHolder owner, @NotNull InventoryType type, @NotNull String title) {
return server.createInventory(owner, type, title);
@@ -1372,7 +1372,7 @@ public final class Bukkit {
@@ -1374,7 +1374,7 @@ public final class Bukkit {
* @throws IllegalArgumentException if the size is not a multiple of 9
* @deprecated in favour of {@link #createInventory(InventoryHolder, InventoryType, net.kyori.adventure.text.Component)}
*/
@@ -44,7 +44,7 @@ index 4a7e1521711c4e4728662cd6200d6d9d6b600713..34902835cd4e030902feb568a2315c7f
@NotNull
public static Inventory createInventory(@Nullable InventoryHolder owner, int size, @NotNull String title) throws IllegalArgumentException {
return server.createInventory(owner, size, title);
@@ -1399,7 +1399,7 @@ public final class Bukkit {
@@ -1401,7 +1401,7 @@ public final class Bukkit {
* @deprecated in favour of {@link #createMerchant(net.kyori.adventure.text.Component)}
*/
@NotNull
@@ -53,7 +53,7 @@ index 4a7e1521711c4e4728662cd6200d6d9d6b600713..34902835cd4e030902feb568a2315c7f
public static Merchant createMerchant(@Nullable String title) {
return server.createMerchant(title);
}
@@ -1488,7 +1488,7 @@ public final class Bukkit {
@@ -1490,7 +1490,7 @@ public final class Bukkit {
* @deprecated in favour of {@link #motd()}
*/
@NotNull
@@ -62,7 +62,7 @@ index 4a7e1521711c4e4728662cd6200d6d9d6b600713..34902835cd4e030902feb568a2315c7f
public static String getMotd() {
return server.getMotd();
}
@@ -1510,7 +1510,7 @@ public final class Bukkit {
@@ -1512,7 +1512,7 @@ public final class Bukkit {
* @deprecated in favour of {@link #shutdownMessage()}
*/
@Nullable
@@ -72,7 +72,7 @@ index 4a7e1521711c4e4728662cd6200d6d9d6b600713..34902835cd4e030902feb568a2315c7f
return server.getShutdownMessage();
}
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 988b1c6c819cac350cde581e486e98d886227c4e..061ce81a781ac1c577927972b862f48a453ba400 100644
index 86141c856478c6b39f7ef52f590a68e564da1ba9..80c70522eecb08c0dbfadcdeb21c9cfac42d7902 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -270,7 +270,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -93,7 +93,7 @@ index 988b1c6c819cac350cde581e486e98d886227c4e..061ce81a781ac1c577927972b862f48a
public int broadcast(@NotNull String message, @NotNull String permission);
// Paper start
/**
@@ -1106,7 +1106,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1108,7 +1108,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
*
* @see InventoryType#isCreatable()
*/
@@ -102,7 +102,7 @@ index 988b1c6c819cac350cde581e486e98d886227c4e..061ce81a781ac1c577927972b862f48a
@NotNull
Inventory createInventory(@Nullable InventoryHolder owner, @NotNull InventoryType type, @NotNull String title);
@@ -1150,7 +1150,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1152,7 +1152,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
* @throws IllegalArgumentException if the size is not a multiple of 9
* @deprecated in favour of {@link #createInventory(InventoryHolder, int, net.kyori.adventure.text.Component)}
*/
@@ -111,7 +111,7 @@ index 988b1c6c819cac350cde581e486e98d886227c4e..061ce81a781ac1c577927972b862f48a
@NotNull
Inventory createInventory(@Nullable InventoryHolder owner, int size, @NotNull String title) throws IllegalArgumentException;
@@ -1173,7 +1173,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1175,7 +1175,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
* @deprecated in favour of {@link #createMerchant(net.kyori.adventure.text.Component)}
*/
@NotNull
@@ -120,7 +120,7 @@ index 988b1c6c819cac350cde581e486e98d886227c4e..061ce81a781ac1c577927972b862f48a
Merchant createMerchant(@Nullable String title);
/**
@@ -1246,7 +1246,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1248,7 +1248,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
* @deprecated in favour of {@link #motd()}
*/
@NotNull
@@ -129,7 +129,7 @@ index 988b1c6c819cac350cde581e486e98d886227c4e..061ce81a781ac1c577927972b862f48a
String getMotd();
// Paper start
@@ -1264,7 +1264,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -1266,7 +1266,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
* @deprecated in favour of {@link #shutdownMessage()}
*/
@Nullable
@@ -170,7 +170,7 @@ index c8d37184d8e882a4084a1bfef85faa330588600b..46bae5c13ce2b973b114682f6a338981
/**
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index da1ebc0bddee0b3f53ec0f7a46f7ce1c517c329c..01e3372e67de500b46544bc83a6ba929424e5fda 100644
index 3fc740eca60e4d21c13f1a4495f84ec765c007c9..6c540b0c74ba6f4fe8a1ff35db24050b78775fc3 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -75,7 +75,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -263,7 +263,7 @@ index da1ebc0bddee0b3f53ec0f7a46f7ce1c517c329c..01e3372e67de500b46544bc83a6ba929
public void kickPlayer(@Nullable String message);
// Paper start
@@ -625,7 +625,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -673,7 +673,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @throws IllegalArgumentException if lines is non-null and has a length less than 4
* @deprecated in favour of {@link #sendSignChange(org.bukkit.Location, java.util.List)}
*/
@@ -271,8 +271,8 @@ index da1ebc0bddee0b3f53ec0f7a46f7ce1c517c329c..01e3372e67de500b46544bc83a6ba929
+ @Deprecated // Paper // Purpur - conflict on change
public void sendSignChange(@NotNull Location loc, @Nullable String[] lines) throws IllegalArgumentException;
@@ -647,7 +647,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
/**
@@ -694,7 +694,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @throws IllegalArgumentException if lines is non-null and has a length less than 4
* @deprecated in favour of {@link #sendSignChange(org.bukkit.Location, java.util.List, org.bukkit.DyeColor)}
*/
@@ -281,7 +281,7 @@ index da1ebc0bddee0b3f53ec0f7a46f7ce1c517c329c..01e3372e67de500b46544bc83a6ba929
public void sendSignChange(@NotNull Location loc, @Nullable String[] lines, @NotNull DyeColor dyeColor) throws IllegalArgumentException;
/**
@@ -1796,7 +1796,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -1865,7 +1865,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @deprecated in favour of {@link #locale()}
*/
@NotNull

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Flying Fall Damage API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 01e3372e67de500b46544bc83a6ba929424e5fda..07f188af3ed85b96051b17bf243ae873800abec2 100644
index 6c540b0c74ba6f4fe8a1ff35db24050b78775fc3..8f132156ca772c651648de5333152e1b50adecb8 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2276,5 +2276,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2345,5 +2345,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @param invulnerableTicks Invulnerable ticks remaining
*/
void setSpawnInvulnerableTicks(int invulnerableTicks);

View File

@@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
diff --git a/build.gradle.kts b/build.gradle.kts
index b50463c2356301a1b47a0bf4f50dc1f121d363a1..f5a9c41fdbaede65cf4607737421571f0c344c1f 100644
index 3927eb2cd13499bca7561ae7d9be45ae86522125..324285684ea1a79c3844142046dca9a34f78e1a9 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1,10 +1,16 @@
@@ -24760,7 +24760,7 @@ index 0000000000000000000000000000000000000000..49dc783a312ed62415d28cdd801dad6a
+}
diff --git a/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..bca56d612451a70b55ed37817df7cf4453311477
index 0000000000000000000000000000000000000000..7b437109a1da79a916f194a2802bef68eccc06ab
--- /dev/null
+++ b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java
@@ -0,0 +1,441 @@
@@ -24943,7 +24943,7 @@ index 0000000000000000000000000000000000000000..bca56d612451a70b55ed37817df7cf44
+ "PacketPlayInAutoRecipe" + ".action", PacketLimit.ViolateAction.DROP.name());
+
+ final Map<String, String> mojangToSpigot = new HashMap<>();
+ final Map<String, ObfHelper.ClassMapping> maps = ObfHelper.INSTANCE.mappings();
+ final Map<String, ObfHelper.ClassMapping> maps = ObfHelper.INSTANCE.mappingsByObfName();
+ if (maps != null) {
+ maps.forEach((spigotName, classMapping) ->
+ mojangToSpigot.put(classMapping.mojangName(), classMapping.obfName()));
@@ -32798,7 +32798,7 @@ index 0d143d073fa7cdfa14f12e9c795350dca8ac5e80..8b84befc6840d25dc3d6e2d42a4024a3
return true;
} else {
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
index e5cae2fb67541785072324e5434820ee4b169556..60e58d5f03c66146a86b49c4d1ef17080f094a4c 100644
index fe62ec1a888a93d90f40d86908f83faaed907ba6..d73aa6032bf56448f518cff9f019b3f7a1c5eddb 100644
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
@@ -173,7 +173,7 @@ public class ServerEntity {
@@ -33312,7 +33312,7 @@ index baa25df9f446c8edea9666983425df31c32a13ff..f9ed48f5bbde84fd1804e482f2777b51
public void onTrackingStart(Entity entity) {
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 5ecfd9a1e39343746828520c307879547feb33a7..b0f5224ec677d2806fde65f495819b11775705e5 100644
index bc05cc34f6cd526a1d13261f1ac779d5397cbbac..53ef5ecc750f9d0e2634267a33042f24c969f305 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -261,7 +261,7 @@ public class ServerPlayer extends Player {
@@ -33342,7 +33342,7 @@ index 5ecfd9a1e39343746828520c307879547feb33a7..b0f5224ec677d2806fde65f495819b11
this.setPos(this.getX(), this.getY() + 1.0D, this.getZ());
}
}
@@ -1562,6 +1562,18 @@ public class ServerPlayer extends Player {
@@ -1564,6 +1564,18 @@ public class ServerPlayer extends Player {
this.connection.send(new ClientboundContainerClosePacket(this.containerMenu.containerId));
this.doCloseContainer();
}
@@ -34322,7 +34322,7 @@ index 020a19cd683dd3779c5116d12b3cdcd3b3ca69b4..17d209c347b07acef451180c97835f41
public static final Codec<IntProvider> POSITIVE_CODEC = codec(1, Integer.MAX_VALUE);
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 896d892237b29eb404398db07264eb6f04786754..2453492429a743677db07e31d575c1473fedf4ad 100644
index b8f8f4b369ed5f77a644b6bc8aea5068a0f03582..b4c15376da0ba9c33efe7e7da648690e7a931981 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -356,8 +356,27 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -34655,7 +34655,7 @@ index 896d892237b29eb404398db07264eb6f04786754..2453492429a743677db07e31d575c147
return false;
}
@@ -3727,7 +3916,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -3742,7 +3931,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
}
public void setDeltaMovement(Vec3 velocity) {
@@ -34665,7 +34665,7 @@ index 896d892237b29eb404398db07264eb6f04786754..2453492429a743677db07e31d575c147
}
public void setDeltaMovement(double x, double y, double z) {
@@ -3794,7 +3985,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -3809,7 +4000,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
// Paper end
// Paper start - fix MC-4
if (this instanceof ItemEntity) {
@@ -34674,7 +34674,7 @@ index 896d892237b29eb404398db07264eb6f04786754..2453492429a743677db07e31d575c147
// encode/decode from PacketPlayOutEntity
x = Mth.lfloor(x * 4096.0D) * (1 / 4096.0D);
y = Mth.lfloor(y * 4096.0D) * (1 / 4096.0D);
@@ -3803,7 +3994,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -3818,7 +4009,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
}
// Paper end - fix MC-4
if (this.position.x != x || this.position.y != y || this.position.z != z) {
@@ -34685,7 +34685,7 @@ index 896d892237b29eb404398db07264eb6f04786754..2453492429a743677db07e31d575c147
int j = Mth.floor(y);
int k = Mth.floor(z);
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index a8e5be1c941755b3e5b335d8211ca70a6c6fc32f..5eb93bacd303ebed0a702221f8ae31631d42f45d 100644
index bada11542390b7575466f0e7062470665b8266c4..c73f3aa6dd75fe03c7e18180487d7bd6374b6339 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -789,7 +789,12 @@ public abstract class Mob extends LivingEntity {
@@ -38470,7 +38470,7 @@ index 6d7f16fede01c19f638e1dcdae8b07b79cd86dc0..57dab1be4bfa91c7c9d7e53e7fe388a9
public void restart() {
org.spigotmc.RestartCommand.restart();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index 7dc26321e20e26821096e79356a358879306cd78..2e79e2a23a4aec4b526814f7e959232c0a074860 100644
index eda5af586fa9710e8bb945bc65b8fe1579daea5a..2d59a2ee00feb596f5066b4a118dd06ec156ace7 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -290,7 +290,7 @@ public class CraftWorld implements World {
@@ -38554,7 +38554,7 @@ index 7dc26321e20e26821096e79356a358879306cd78..2e79e2a23a4aec4b526814f7e959232c
return chunks.values().stream().map(ChunkHolder::getFullChunk).filter(Objects::nonNull).map(net.minecraft.world.level.chunk.LevelChunk::getBukkitChunk).toArray(Chunk[]::new);
}
@@ -2672,7 +2675,7 @@ public class CraftWorld implements World {
@@ -2702,7 +2705,7 @@ public class CraftWorld implements World {
// Paper end
return this.world.getChunkSource().getChunkAtAsynchronously(x, z, gen, urgent).thenComposeAsync((either) -> {
net.minecraft.world.level.chunk.LevelChunk chunk = (net.minecraft.world.level.chunk.LevelChunk) either.left().orElse(null);
@@ -38563,7 +38563,7 @@ index 7dc26321e20e26821096e79356a358879306cd78..2e79e2a23a4aec4b526814f7e959232c
return java.util.concurrent.CompletableFuture.completedFuture(chunk == null ? null : chunk.getBukkitChunk());
}, net.minecraft.server.MinecraftServer.getServer());
}
@@ -2697,14 +2700,14 @@ public class CraftWorld implements World {
@@ -2727,14 +2730,14 @@ public class CraftWorld implements World {
throw new IllegalArgumentException("View distance " + viewDistance + " is out of range of [2, 32]");
}
net.minecraft.server.level.ChunkMap chunkMap = getHandle().getChunkSource().chunkMap;
@@ -38580,7 +38580,7 @@ index 7dc26321e20e26821096e79356a358879306cd78..2e79e2a23a4aec4b526814f7e959232c
}
@Override
@@ -2713,11 +2716,22 @@ public class CraftWorld implements World {
@@ -2743,11 +2746,22 @@ public class CraftWorld implements World {
throw new IllegalArgumentException("View distance " + viewDistance + " is out of range of [2, 32]");
}
net.minecraft.server.level.ChunkMap chunkMap = getHandle().getChunkSource().chunkMap;
@@ -38605,7 +38605,7 @@ index 7dc26321e20e26821096e79356a358879306cd78..2e79e2a23a4aec4b526814f7e959232c
// Spigot start
private final org.bukkit.World.Spigot spigot = new org.bukkit.World.Spigot()
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index eb0c436414a66c530d888348c3190eb563b8b44f..4bd8823bfee3fcdeba5c5b7aae3489a92c2ac536 100644
index 22e9dd17f62103c5061435099ce96a3d70d54808..673fce7aa55cffc2c9ee017242d194a0dfd8be6b 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -146,6 +146,13 @@ public class Main {
@@ -38691,7 +38691,7 @@ index 85ca30aef0703db6859e66c62781ecfd334426e7..8ce49478441e77cedf5148ecb81d78b3
@Override
public boolean teleport(Location location) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 3971fed7a0d1399117366a5d7dd2e84adbfda55a..7eed75ad1d5d7c62f35bdaed3766fcdb7aac2ce6 100644
index 63aa742c505e14faa9bf5df29a8f759486fac80b..b2c6d1611422a3900e5c9d4b1983cc74dd820973 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -517,15 +517,70 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Component related conveniences
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index a45a43dd6e48433ecbbbf3ef475fbba9c0531d19..3802a1dc3997704031d22165f60f854f50bda9d6 100644
index 52a81eaac0a080738fc2d12b30693ad161066d77..6d25b3397a45d77b96d04a5b099d58a092d43177 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1678,6 +1678,26 @@ public class ServerPlayer extends Player {
@@ -1680,6 +1680,26 @@ public class ServerPlayer extends Player {
}
// CraftBukkit end
@@ -36,7 +36,7 @@ index a45a43dd6e48433ecbbbf3ef475fbba9c0531d19..3802a1dc3997704031d22165f60f854f
public void displayClientMessage(Component message, boolean actionBar) {
this.sendMessage(message, actionBar ? ChatType.GAME_INFO : ChatType.CHAT, Util.NIL_UUID);
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 936ae5576902e6593bd21af4d3cf3998109347b5..6cb325b098fe64b746940ce79fd927320ec444e6 100644
index ea8956b2c4cbe7059512ebfa9fd7a865e5fae0ac..1bbb3f0658628ec36cd9e177df3acc07ef107428 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1396,6 +1396,62 @@ public abstract class PlayerList {
@@ -103,7 +103,7 @@ index 936ae5576902e6593bd21af4d3cf3998109347b5..6cb325b098fe64b746940ce79fd92732
this.server.sendMessage(message, sender);
Iterator iterator = this.players.iterator();
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 2453492429a743677db07e31d575c1473fedf4ad..28d7e18c9b53b7563b9c4af9afde4e1261d454e4 100644
index b4c15376da0ba9c33efe7e7da648690e7a931981..4425095e6dd259d69cdf318e463e31050e79a7de 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3565,6 +3565,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n

View File

@@ -46,7 +46,7 @@ index f9ed48f5bbde84fd1804e482f2777b516cc3a1ef..29b841462037fa97f72971c490b617d1
return new Throwable(entity + " Added to world at " + new java.util.Date());
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 660f7fbbdd88b8eb2b58aed03925ee63db924a7c..ce796a2cc083ffc5497cdb3bac9da87ea4ba94a7 100644
index 6d25b3397a45d77b96d04a5b099d58a092d43177..651423979d4d5acbcf0bc25d6225a72a16e21826 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -665,6 +665,15 @@ public class ServerPlayer extends Player {
@@ -65,7 +65,7 @@ index 660f7fbbdd88b8eb2b58aed03925ee63db924a7c..ce796a2cc083ffc5497cdb3bac9da87e
}
public void doTick() {
@@ -2437,4 +2446,6 @@ public class ServerPlayer extends Player {
@@ -2439,4 +2448,6 @@ public class ServerPlayer extends Player {
return (CraftPlayer) super.getBukkitEntity();
}
// CraftBukkit end
@@ -86,7 +86,7 @@ index f99d06e53856c14f5b94c28d379b8188ac1411db..c02b3cdd93df7806d52138b02612dd48
if ((entity instanceof AbstractFish && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) {
ServerGamePacketListenerImpl.this.send(new ClientboundAddMobPacket((AbstractFish) entity));
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 28d7e18c9b53b7563b9c4af9afde4e1261d454e4..08efd9b12786077e4f6ae1bfffb912d317f4f418 100644
index 4425095e6dd259d69cdf318e463e31050e79a7de..4cbbe95d3bf14479baa15069d30972471c3bbf0b 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -230,7 +230,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -135,7 +135,7 @@ index 28d7e18c9b53b7563b9c4af9afde4e1261d454e4..08efd9b12786077e4f6ae1bfffb912d3
if (this.passengers.size() == 1 && this.passengers.get(0) == entity) {
this.passengers = ImmutableList.of();
} else {
@@ -4213,4 +4227,41 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -4228,4 +4242,41 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
return ((ServerChunkCache) level.getChunkSource()).isPositionTicking(this);
}
// Paper end
@@ -201,7 +201,7 @@ index d28cecd9bea7c82fa675d333810e2e63a91c615e..8f8bc29d847801938e251904b8334b4b
protected ParticleOptions getInkParticle() {
return ParticleTypes.GLOW_SQUID_INK;
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 2b7eeb5659b1083ef550eb9feb0b7ba8a92a92e3..f8e080a943082a10fef3bd99c86ffe78aae8e0b4 100644
index b2e48e16bc944e6c5898f3d415e935c421243e16..f77609bcc20ac411ae5b0840645381301cee15f0 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -220,9 +220,9 @@ public abstract class LivingEntity extends Entity {
@@ -262,7 +262,7 @@ index 2b7eeb5659b1083ef550eb9feb0b7ba8a92a92e3..f8e080a943082a10fef3bd99c86ffe78
// Paper end
if (!this.level.isClientSide && this.isSensitiveToWater() && this.isInWaterRainOrBubble()) {
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 5eb93bacd303ebed0a702221f8ae31631d42f45d..c8dee3a9a5cafc9f0fd88becd843823836cd19b3 100644
index c73f3aa6dd75fe03c7e18180487d7bd6374b6339..4a3b6eac2c32cd2b69eb81f60ed55cd051412903 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -140,6 +140,8 @@ public abstract class Mob extends LivingEntity {
@@ -5752,7 +5752,7 @@ index 8ce49478441e77cedf5148ecb81d78b32660329e..fb5cd6fe7903f3f96af1abb55832bafb
+ // Purpur end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 622a0f23db838b839f76722df0e5480ec927b4a2..98e0c1e64d23552b8e8de5e17cee09fc0cb08d5c 100644
index db6c0917824b9127abd9f9250dc195a9f1d56f4f..89ad1c69456fb4aaf2ab8742c76343b30b74ecd0 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -537,6 +537,15 @@ public class CraftEventFactory {
@@ -5771,7 +5771,7 @@ index 622a0f23db838b839f76722df0e5480ec927b4a2..98e0c1e64d23552b8e8de5e17cee09fc
return event;
}
@@ -959,6 +968,7 @@ public class CraftEventFactory {
@@ -960,6 +969,7 @@ public class CraftEventFactory {
damageCause = DamageCause.ENTITY_EXPLOSION;
}
event = new EntityDamageByEntityEvent(damager.getBukkitEntity(), entity.getBukkitEntity(), damageCause, modifiers, modifierFunctions);
@@ -5779,7 +5779,7 @@ index 622a0f23db838b839f76722df0e5480ec927b4a2..98e0c1e64d23552b8e8de5e17cee09fc
}
event.setCancelled(cancelled);
@@ -1046,6 +1056,7 @@ public class CraftEventFactory {
@@ -1045,6 +1055,7 @@ public class CraftEventFactory {
if (!event.isCancelled()) {
event.getEntity().setLastDamageCause(event);
}
@@ -5787,7 +5787,7 @@ index 622a0f23db838b839f76722df0e5480ec927b4a2..98e0c1e64d23552b8e8de5e17cee09fc
return event;
}
@@ -1097,6 +1108,7 @@ public class CraftEventFactory {
@@ -1096,6 +1107,7 @@ public class CraftEventFactory {
EntityDamageEvent event;
if (damager != null) {
event = new EntityDamageByEntityEvent(damager.getBukkitEntity(), damagee.getBukkitEntity(), cause, modifiers, modifierFunctions);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] AFK API
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index ce796a2cc083ffc5497cdb3bac9da87ea4ba94a7..ee9ce98995a3130938bd09d8d0ec4855e4419829 100644
index 651423979d4d5acbcf0bc25d6225a72a16e21826..bd4583ff7d76b83003ca327e8301fb1d5ff18f66 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1953,8 +1953,58 @@ public class ServerPlayer extends Player {
@@ -1955,8 +1955,58 @@ public class ServerPlayer extends Player {
public void resetLastActionTime() {
this.lastActionTime = Util.getMillis();
@@ -237,7 +237,7 @@ index 3627b50dd3af5da225004cd3f8158fcbd30d8ea3..58b2f795b7018ac92fd72369bbe58d2f
public boolean untamedTamablesAreRidable = true;
public boolean useNightVisionWhenRiding = false;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 7eed75ad1d5d7c62f35bdaed3766fcdb7aac2ce6..96c515506a2613d622afc28d902281c0b702c309 100644
index b2c6d1611422a3900e5c9d4b1983cc74dd820973..c5c611cfba9feb18d417b45e9909e08be7743e22 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -424,10 +424,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -257,7 +257,7 @@ index 7eed75ad1d5d7c62f35bdaed3766fcdb7aac2ce6..96c515506a2613d622afc28d902281c0
for (ServerPlayer player : (List<ServerPlayer>) server.getHandle().players) {
if (player.getBukkitEntity().canSee(this)) {
player.connection.send(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.UPDATE_DISPLAY_NAME, this.getHandle()));
@@ -2544,4 +2549,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2549,4 +2554,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return this.spigot;
}
// Spigot end

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Player invulnerabilities
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index ee9ce98995a3130938bd09d8d0ec4855e4419829..3dbb4b7bd25274c7e72ffcb6e12aae06b31b5530 100644
index bd4583ff7d76b83003ca327e8301fb1d5ff18f66..59fa9a9bcfde0a0137fa322343052ed68e47edbe 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -259,6 +259,7 @@ public class ServerPlayer extends Player {
@@ -24,7 +24,7 @@ index ee9ce98995a3130938bd09d8d0ec4855e4419829..3dbb4b7bd25274c7e72ffcb6e12aae06
}
// Paper start - Chunk priority
public BlockPos getPointInFront(double inFront) {
@@ -976,6 +978,12 @@ public class ServerPlayer extends Player {
@@ -978,6 +980,12 @@ public class ServerPlayer extends Player {
}
@@ -37,7 +37,7 @@ index ee9ce98995a3130938bd09d8d0ec4855e4419829..3dbb4b7bd25274c7e72ffcb6e12aae06
@Override
public boolean hurt(DamageSource source, float amount) {
if (this.isInvulnerableTo(source)) {
@@ -983,7 +991,7 @@ public class ServerPlayer extends Player {
@@ -985,7 +993,7 @@ public class ServerPlayer extends Player {
} else {
boolean flag = this.server.isDedicatedServer() && this.isPvpAllowed() && "fall".equals(source.msgId);
@@ -46,7 +46,7 @@ index ee9ce98995a3130938bd09d8d0ec4855e4419829..3dbb4b7bd25274c7e72ffcb6e12aae06
return false;
} else {
if (source instanceof EntityDamageSource) {
@@ -1158,6 +1166,7 @@ public class ServerPlayer extends Player {
@@ -1160,6 +1168,7 @@ public class ServerPlayer extends Player {
}
// Paper end
@@ -54,7 +54,7 @@ index ee9ce98995a3130938bd09d8d0ec4855e4419829..3dbb4b7bd25274c7e72ffcb6e12aae06
return this;
}
}
@@ -1943,6 +1952,7 @@ public class ServerPlayer extends Player {
@@ -1945,6 +1954,7 @@ public class ServerPlayer extends Player {
}
public void sendTexturePack(String url, String hash, boolean required, @Nullable Component resourcePackPrompt) {
@@ -62,7 +62,7 @@ index ee9ce98995a3130938bd09d8d0ec4855e4419829..3dbb4b7bd25274c7e72ffcb6e12aae06
this.connection.send(new ClientboundResourcePackPacket(url, hash, required, resourcePackPrompt));
}
@@ -2447,9 +2457,17 @@ public class ServerPlayer extends Player {
@@ -2449,9 +2459,17 @@ public class ServerPlayer extends Player {
@Override
public boolean isImmobile() {
@@ -142,10 +142,10 @@ index 58b2f795b7018ac92fd72369bbe58d2f2c266adc..613dd74b460c0bd15fc8fd4e78380a81
public boolean babiesAreRidable = true;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 96c515506a2613d622afc28d902281c0b702c309..de370ef508e72e16e43b872cbad032b414b6cf62 100644
index c5c611cfba9feb18d417b45e9909e08be7743e22..ec4397cc98b66fef55a91854c42518479b839bbe 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2565,5 +2565,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2570,5 +2570,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void resetIdleTimer() {
getHandle().resetLastActionTime();
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Signs allow color codes
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 3dbb4b7bd25274c7e72ffcb6e12aae06b31b5530..6f060f7e14043186dc15bc71f69de2817f76f2f1 100644
index 59fa9a9bcfde0a0137fa322343052ed68e47edbe..b13328e1563fa01c141a52bf898ebc520098d0d2 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1462,6 +1462,7 @@ public class ServerPlayer extends Player {
@@ -1464,6 +1464,7 @@ public class ServerPlayer extends Player {
@Override
public void openTextEdit(SignBlockEntity sign) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Minecart settings and WASD controls
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 349aac496cf51f0a837d032d509364c13cece6ca..edaff3eb46fd1de456acbc465d644ac9454022d3 100644
index b13328e1563fa01c141a52bf898ebc520098d0d2..b9f7812f19b194dc19b63cabd9369c5ed56dbe73 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -989,6 +989,7 @@ public class ServerPlayer extends Player {
@@ -991,6 +991,7 @@ public class ServerPlayer extends Player {
if (this.isInvulnerableTo(source)) {
return false;
} else {
@@ -148,7 +148,7 @@ index 04d5ef90cd4171f9360017ac0c01ce48ae6ec983..7538262e14c86e4da9cd4cb887b76f64
protected final float explosionResistance;
protected final boolean isRandomlyTicking;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 29c0d3ea1eb0e14b0c58c540512aa0c4c7feac1f..63ee287bb2baa87f56a3a59e4859a0cfe38e696b 100644
index 9ce64a3d7a00877688f1e45a3961159cb35c8d9f..51f8045f4f607db3cf63d30fa6783257466a6022 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -98,6 +98,68 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add canSaveToDisk to Entity
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index ad8497df1b0410989afd22d65e6afd0e72b0926f..35de254dfb565b75286fc130573b8d788dce1982 100644
index 8b41201c84aac11a71a1f2ce730cc1bbe0d47a33..ed2401f46f1ba021c4236c23c655786afd8c36b0 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4264,5 +4264,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -4279,5 +4279,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
public boolean processClick(InteractionHand hand) {
return false;
}
@@ -35,7 +35,7 @@ index f52420f27f51d9dbf214f96a0530c0f17f2bc5fc..12cd1b453150e098975c34e00ec9277f
skull.setPosRaw(headX, headY, headZ);
level.addFreshEntity(skull);
diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/EntityStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/EntityStorage.java
index 396c34c0866bf395b4d86361d96fe103c5d9ae7e..320291b611cbb243a54ea882b16d70d061d21492 100644
index 91d692e9337c2ec6824829259ea6ea1ad343d21a..6c9b139cfb1dfa1eb80fdb72651c8c3f921e74ea 100644
--- a/src/main/java/net/minecraft/world/level/chunk/storage/EntityStorage.java
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/EntityStorage.java
@@ -92,6 +92,7 @@ public class EntityStorage implements EntityPersistentStorage<Entity> {
@@ -63,7 +63,7 @@ index fda24d4ecff91cc28d2a7a45fbb55ea734261153..3cabafb00c293cbbcc60a0cc98479c2d
super_tick();
diff --git a/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java b/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java
index 57b59a12f609fda0787d49575724762362ce12af..9a9b7f80859c70fbd1fa66b390ab005cde813d02 100644
index b196bee2ea6e67897b367d2be1800f16a89a6167..d8a9f3296c46f12e156f1611811cb55470703b03 100644
--- a/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java
+++ b/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java
@@ -38,6 +38,11 @@ public class PhantomFlames extends LlamaSpit {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add option to teleport to spawn if outside world border
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 73028657f5e579d38782bd4a8cecb351d4bcbdb9..da5669ca796dcac29005ae5e90e2b0532a56a92f 100644
index b9f7812f19b194dc19b63cabd9369c5ed56dbe73..32b56e8b042e32daa44638688ea663556627b382 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -2517,5 +2517,25 @@ public class ServerPlayer extends Player {
@@ -2519,5 +2519,25 @@ public class ServerPlayer extends Player {
}
// CraftBukkit end
@@ -35,7 +35,7 @@ index 73028657f5e579d38782bd4a8cecb351d4bcbdb9..da5669ca796dcac29005ae5e90e2b053
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 9240dac662e60d130cdb8c3724c211c89875f6f0..795d454e46cfa39f80c5fc931f4931d8561b03b4 100644
index 12e121aee1e5f2618e3553f38367055f7b96cfa8..49c05f3d877c11dc88b6831fdd78cf1aa2403df7 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -45,6 +45,7 @@ import net.minecraft.network.syncher.EntityDataAccessor;

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Dispensers place anvils option
diff --git a/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java b/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java
index 92623ae25249d63efb92be8bd6c95228f9155ad2..20bf6d01046488eff53a109f5239351aedaafede 100644
index 0d34026a70c72661a9ba6b319690370e589714cc..da1465096178370494c8ed17bd8495f036abe526 100644
--- a/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java
+++ b/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java
@@ -53,6 +53,7 @@ import net.minecraft.world.level.BlockGetter;
@@ -16,7 +16,7 @@ index 92623ae25249d63efb92be8bd6c95228f9155ad2..20bf6d01046488eff53a109f5239351a
import net.minecraft.world.level.block.BaseFireBlock;
import net.minecraft.world.level.block.BeehiveBlock;
import net.minecraft.world.level.block.Block;
@@ -1029,6 +1030,23 @@ public interface DispenseItemBehavior {
@@ -1028,6 +1029,23 @@ public interface DispenseItemBehavior {
}
}
}));

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Stop squids floating on top of water
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 35de254dfb565b75286fc130573b8d788dce1982..d3541a447d7fcee70733ce9b18f4c5abdc4ba55a 100644
index ed2401f46f1ba021c4236c23c655786afd8c36b0..6661ad7943a11e3e938e99c2da03b99346603898 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3829,11 +3829,17 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -3844,11 +3844,17 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
this.yRotO = this.getYRot();
}

View File

@@ -37,7 +37,7 @@ index 8e6df16568c0dab482e10ad1b38920d77f6e684f..6c261b9ddee80139140bd1f091fcdacc
@Nullable
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
index d6a3f3a2edae806b0ebf5bf5ac445116c0d64535..0f295a496d4d94811199fa952ed68325ee1df0f6 100644
index 1a5605b11170dfe1bd37165de886bad0f2e38ecd..94a69b7a1443231cf807fb792478c35334f73e62 100644
--- a/src/main/java/net/minecraft/world/level/block/Block.java
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
@@ -20,6 +20,9 @@ import net.minecraft.core.IdMapper;
@@ -121,7 +121,7 @@ index d6a3f3a2edae806b0ebf5bf5ac445116c0d64535..0f295a496d4d94811199fa952ed68325
+
public static void popResource(Level world, BlockPos pos, ItemStack stack) {
float f = EntityType.ITEM.getHeight() / 2.0F;
double d0 = (double) ((float) pos.getX() + 0.5F) + Mth.nextDouble(world.random, -0.25D, 0.25D);
// Paper start - don't convert potentially massive numbers to floats
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java
index c3a07ccccd5cc38552363c82398f432c8d624288..132c9e6a643995d9fde535a78d9edc9ee97e3a76 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java

View File

@@ -33,10 +33,10 @@ index 3e04510519ca5d03eb16aab8b1094e24101cebf4..12a3304c3b465f2a9d7cf279ea7b945b
if (flag5) {
if (i > 0) {
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 98e0c1e64d23552b8e8de5e17cee09fc0cb08d5c..5608ee1125c41d055e2827ab8a801e704ebb0441 100644
index 89ad1c69456fb4aaf2ab8742c76343b30b74ecd0..c763fce31b074d396a9134c5412bce77a9625c9a 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -967,7 +967,7 @@ public class CraftEventFactory {
@@ -968,7 +968,7 @@ public class CraftEventFactory {
} else {
damageCause = DamageCause.ENTITY_EXPLOSION;
}
@@ -45,7 +45,7 @@ index 98e0c1e64d23552b8e8de5e17cee09fc0cb08d5c..5608ee1125c41d055e2827ab8a801e70
damager.processClick(InteractionHand.MAIN_HAND); // Purpur
}
event.setCancelled(cancelled);
@@ -1050,7 +1050,7 @@ public class CraftEventFactory {
@@ -1049,7 +1049,7 @@ public class CraftEventFactory {
} else {
throw new IllegalStateException(String.format("Unhandled damage of %s by %s from %s", entity, damager.getHandle(), source.msgId));
}
@@ -54,7 +54,7 @@ index 98e0c1e64d23552b8e8de5e17cee09fc0cb08d5c..5608ee1125c41d055e2827ab8a801e70
event.setCancelled(cancelled);
CraftEventFactory.callEvent(event);
if (!event.isCancelled()) {
@@ -1107,7 +1107,7 @@ public class CraftEventFactory {
@@ -1106,7 +1106,7 @@ public class CraftEventFactory {
private static EntityDamageEvent callEntityDamageEvent(Entity damager, Entity damagee, DamageCause cause, Map<DamageModifier, Double> modifiers, Map<DamageModifier, Function<? super Double, Double>> modifierFunctions, boolean cancelled) {
EntityDamageEvent event;
if (damager != null) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add boat fall damage config
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index da5669ca796dcac29005ae5e90e2b0532a56a92f..46f8c78916b1a81b6429d557bb398217f6f5f752 100644
index 32b56e8b042e32daa44638688ea663556627b382..8c93a84f9b44316fedc1544a309d27ef14e7d6d7 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -989,7 +989,16 @@ public class ServerPlayer extends Player {
@@ -991,7 +991,16 @@ public class ServerPlayer extends Player {
if (this.isInvulnerableTo(source)) {
return false;
} else {

View File

@@ -46,10 +46,10 @@ index c1d79527abc7c8a165872758db3d5240615a63aa..2381d75295554c0310e36a26f5332063
public void broadcastAll(Packet<?> packet) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index de370ef508e72e16e43b872cbad032b414b6cf62..c298e104e01e7dd5c1e671822d8544e1e969d6c6 100644
index ec4397cc98b66fef55a91854c42518479b839bbe..15f7092468fd341d4e5d22163ea0e265803e5139 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1564,7 +1564,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1569,7 +1569,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public boolean canSee(Player player) {

View File

@@ -1,29 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Encode42 <me@encode42.dev>
Date: Thu, 10 Dec 2020 13:43:28 -0500
Subject: [PATCH] Configurable default collar color
Subject: [PATCH] Configurable default wolf collar color
This allows for the server to set a default collar color when a wolf or cat is tamed.
This allows for the server to set a default collar color when a wolf is tamed.
Resets to RED when the value is invalid.
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cat.java b/src/main/java/net/minecraft/world/entity/animal/Cat.java
index 052d1e51a891ee17bed0043f6f3fd162c15b16b2..47e5108ed92871111fbca76eb3d0c8419dbbb586 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Cat.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Cat.java
@@ -365,6 +365,13 @@ public class Cat extends TamableAnimal {
public float getRelaxStateOneAmount(float tickDelta) {
return Mth.lerp(tickDelta, this.relaxStateOneAmountO, this.relaxStateOneAmount);
}
+ // Purpur start
+ @Override
+ public void tame(Player player) {
+ setCollarColor(level.purpurConfig.catDefaultCollarColor);
+ super.tame(player);
+ }
+ // Purpur end
@Override
public Cat getBreedOffspring(ServerLevel world, AgeableMob entity) {
diff --git a/src/main/java/net/minecraft/world/entity/animal/Wolf.java b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
index 3e7409ebf1f94b9cf55f2d0b0fe17ca8ec44659f..518dd0e6b4889c049e438b393baa795a5eac3e7d 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
@@ -42,30 +24,10 @@ index 3e7409ebf1f94b9cf55f2d0b0fe17ca8ec44659f..518dd0e6b4889c049e438b393baa795a
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 46338c0dcbe2edc03bb755950475bee95ff6602a..9849604741d2f110e9cded7436616560bdb6ab4b 100644
index 46338c0dcbe2edc03bb755950475bee95ff6602a..d43e3d9ffdf24e00eeec589ab95edaa75d860338 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -594,6 +594,7 @@ public class PurpurWorldConfig {
public boolean catRidable = false;
public boolean catRidableInWater = false;
+ public DyeColor catDefaultCollarColor = DyeColor.RED;
public double catMaxHealth = 10.0D;
public int catSpawnDelay = 1200;
public int catSpawnSwampHutScanRange = 16;
@@ -607,6 +608,11 @@ public class PurpurWorldConfig {
set("mobs.cat.attributes.max-health", null);
set("mobs.cat.attributes.max_health", oldValue);
}
+ try {
+ catDefaultCollarColor = DyeColor.valueOf(getString("mobs.cat.default-collar-color", wolfDefaultCollarColor.name()));
+ } catch (IllegalArgumentException ignore) {
+ catDefaultCollarColor = DyeColor.RED;
+ }
catMaxHealth = getDouble("mobs.cat.attributes.max_health", catMaxHealth);
catSpawnDelay = getInt("mobs.cat.spawn-delay", catSpawnDelay);
catSpawnSwampHutScanRange = getInt("mobs.cat.scan-range-for-other-cats.swamp-hut", catSpawnSwampHutScanRange);
@@ -1768,6 +1774,7 @@ public class PurpurWorldConfig {
@@ -1768,6 +1768,7 @@ public class PurpurWorldConfig {
public boolean wolfRidable = false;
public boolean wolfRidableInWater = false;
public double wolfMaxHealth = 8.0D;
@@ -73,7 +35,7 @@ index 46338c0dcbe2edc03bb755950475bee95ff6602a..9849604741d2f110e9cded7436616560
public boolean wolfMilkCuresRabies = true;
public double wolfNaturalRabid = 0.0D;
public int wolfBreedingTicks = 6000;
@@ -1780,6 +1787,11 @@ public class PurpurWorldConfig {
@@ -1780,6 +1781,11 @@ public class PurpurWorldConfig {
set("mobs.wolf.attributes.max_health", oldValue);
}
wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth);

View File

@@ -17,10 +17,10 @@ index c55aba456aa144e58fc35877c61eff309eaa391f..c39e2d05fa81279a684532ee796880b1
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 9849604741d2f110e9cded7436616560bdb6ab4b..2928bf0fab8a8c1b0b3b04eeacb283eacb524488 100644
index d43e3d9ffdf24e00eeec589ab95edaa75d860338..fde7aa8d1da2a5d9517c8ac23e3624506b3c5ee8 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1184,6 +1184,7 @@ public class PurpurWorldConfig {
@@ -1178,6 +1178,7 @@ public class PurpurWorldConfig {
public float phantomFlameDamage = 1.0F;
public int phantomFlameFireTime = 8;
public boolean phantomAllowGriefing = false;
@@ -28,7 +28,7 @@ index 9849604741d2f110e9cded7436616560bdb6ab4b..2928bf0fab8a8c1b0b3b04eeacb283ea
public double phantomMaxHealth = 20.0D;
public double phantomAttackedByCrystalRadius = 0.0D;
public float phantomAttackedByCrystalDamage = 1.0F;
@@ -1210,6 +1211,7 @@ public class PurpurWorldConfig {
@@ -1204,6 +1205,7 @@ public class PurpurWorldConfig {
phantomFlameDamage = (float) getDouble("mobs.phantom.flames.damage", phantomFlameDamage);
phantomFlameFireTime = getInt("mobs.phantom.flames.fire-time", phantomFlameFireTime);
phantomAllowGriefing = getBoolean("mobs.phantom.allow-griefing", phantomAllowGriefing);

View File

@@ -42,7 +42,7 @@ index fc6a6e88486c5c2dca1b10bfeae24124690d7b8d..7b66b301b10158e9c715834b24bdfab1
}
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 46f8c78916b1a81b6429d557bb398217f6f5f752..98584609ed1ba2bc4cc803482326fa1525a779bb 100644
index 8c93a84f9b44316fedc1544a309d27ef14e7d6d7..b09cd5f750b6789ac21ed7d585d72ad393141a97 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -260,6 +260,7 @@ public class ServerPlayer extends Player {
@@ -69,7 +69,7 @@ index 46f8c78916b1a81b6429d557bb398217f6f5f752..98584609ed1ba2bc4cc803482326fa15
}
// CraftBukkit start - World fallback code, either respawn location or global spawn
@@ -2546,5 +2549,13 @@ public class ServerPlayer extends Player {
@@ -2548,5 +2551,13 @@ public class ServerPlayer extends Player {
this.server.getPlayerList().moveToWorld(this, toLevel, true, to, !toLevel.paperConfig.disableTeleportationSuffocationCheck);
}
}

View File

@@ -28,10 +28,10 @@ index 9d314470361b2e17afdadc355c084254e5b03aff..66dab9b4e5ae05deeae11c8588a0b855
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index d770f6e021d0e3ac77eb0968569af1b08646611b..c6135662832ac5d65b866d540021a17fd83e835d 100644
index 03d2d735b3e8839b467d93696d1a6f4481f57a41..083a450dcd285434c5c6d1ffb52f29d590d3609a 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1559,6 +1559,7 @@ public class PurpurWorldConfig {
@@ -1553,6 +1553,7 @@ public class PurpurWorldConfig {
public boolean striderRidableInWater = false;
public double striderMaxHealth = 20.0D;
public int striderBreedingTicks = 6000;
@@ -39,7 +39,7 @@ index d770f6e021d0e3ac77eb0968569af1b08646611b..c6135662832ac5d65b866d540021a17f
private void striderSettings() {
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
@@ -1569,6 +1570,7 @@ public class PurpurWorldConfig {
@@ -1563,6 +1564,7 @@ public class PurpurWorldConfig {
}
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add MC-4 fix back
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index bd9293161dd28153d102718720b8f8a3c54536ad..8918fd02f4930eacb4fd842add92bc4e682642ae 100644
index beae690820c5cb22b5bc9e4af0578f41084bde27..efc018b81347f95156c5a4c0eadb2127b51813bf 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4034,7 +4034,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -4049,7 +4049,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
// Paper end
// Paper start - fix MC-4
if (this instanceof ItemEntity) {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add mobGriefing bypass to everything affected
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 91fd6709e66ee9c999ba7be3bec2689a5a01528c..a343738d971994c91ac42e41558ca05d6f9f8f57 100644
index cd585f29639dc3d1e165a5e491b53d1971d47d1f..62d1d203b9a3c153449de5f8688ee037fbf5a8b7 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -1682,7 +1682,7 @@ public abstract class LivingEntity extends Entity {
@@ -18,7 +18,7 @@ index 91fd6709e66ee9c999ba7be3bec2689a5a01528c..a343738d971994c91ac42e41558ca05d
BlockState iblockdata = Blocks.WITHER_ROSE.defaultBlockState();
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 5128ee7630096ae87e2ce703b099057e9f769ee6..5bf98ddae4d3b141c3db3892a50638f1a4988e92 100644
index d4d9591de4677070e89a9a10e77b06ef28e5265e..94d0f9b7cc1470419e7c6438584a7914e3752717 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -661,7 +661,7 @@ public abstract class Mob extends LivingEntity {
@@ -393,7 +393,7 @@ index e98fc3c235f9160f1928a8afb0d7991a6d3430cb..db35f756b7adb6b113659ae13b08ab89
return true;
// Purpur end
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce6407d90122 100644
index 126825703e1c5b835b2b1e9b950a7b6c56dacd0c..3b72d437226bbcd83340c2d9f24ddd34fc3b6b2d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -368,9 +368,12 @@ public class PurpurWorldConfig {
@@ -458,7 +458,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
public double twistingVinesGrowthModifier = 0.10D;
public int twistingVinesMaxGrowthAge = 25;
private void twistingVinesSettings() {
@@ -705,6 +723,7 @@ public class PurpurWorldConfig {
@@ -699,6 +717,7 @@ public class PurpurWorldConfig {
public double creeperMaxHealth = 20.0D;
public double creeperChargedChance = 0.0D;
public boolean creeperAllowGriefing = true;
@@ -466,7 +466,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void creeperSettings() {
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
@@ -716,6 +735,7 @@ public class PurpurWorldConfig {
@@ -710,6 +729,7 @@ public class PurpurWorldConfig {
creeperMaxHealth = getDouble("mobs.creeper.attributes.max_health", creeperMaxHealth);
creeperChargedChance = getDouble("mobs.creeper.naturally-charged-chance", creeperChargedChance);
creeperAllowGriefing = getBoolean("mobs.creeper.allow-griefing", creeperAllowGriefing);
@@ -474,7 +474,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean dolphinRidable = false;
@@ -803,6 +823,7 @@ public class PurpurWorldConfig {
@@ -797,6 +817,7 @@ public class PurpurWorldConfig {
public double enderDragonMaxY = 256D;
public double enderDragonMaxHealth = 200.0D;
public boolean enderDragonAlwaysDropsFullExp = false;
@@ -482,7 +482,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void enderDragonSettings() {
enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable);
enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater);
@@ -818,6 +839,7 @@ public class PurpurWorldConfig {
@@ -812,6 +833,7 @@ public class PurpurWorldConfig {
}
enderDragonMaxHealth = getDouble("mobs.ender_dragon.attributes.max_health", enderDragonMaxHealth);
enderDragonAlwaysDropsFullExp = getBoolean("mobs.ender_dragon.always-drop-full-exp", enderDragonAlwaysDropsFullExp);
@@ -490,7 +490,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean endermanRidable = false;
@@ -825,6 +847,7 @@ public class PurpurWorldConfig {
@@ -819,6 +841,7 @@ public class PurpurWorldConfig {
public double endermanMaxHealth = 40.0D;
public boolean endermanAllowGriefing = true;
public boolean endermanDespawnEvenWithBlock = false;
@@ -498,7 +498,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -836,6 +859,7 @@ public class PurpurWorldConfig {
@@ -830,6 +853,7 @@ public class PurpurWorldConfig {
endermanMaxHealth = getDouble("mobs.enderman.attributes.max_health", endermanMaxHealth);
endermanAllowGriefing = getBoolean("mobs.enderman.allow-griefing", endermanAllowGriefing);
endermanDespawnEvenWithBlock = getBoolean("mobs.enderman.can-despawn-with-held-block", endermanDespawnEvenWithBlock);
@@ -506,7 +506,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean endermiteRidable = false;
@@ -855,6 +879,7 @@ public class PurpurWorldConfig {
@@ -849,6 +873,7 @@ public class PurpurWorldConfig {
public boolean evokerRidable = false;
public boolean evokerRidableInWater = false;
public double evokerMaxHealth = 24.0D;
@@ -514,7 +514,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void evokerSettings() {
evokerRidable = getBoolean("mobs.evoker.ridable", evokerRidable);
evokerRidableInWater = getBoolean("mobs.evoker.ridable-in-water", evokerRidableInWater);
@@ -864,6 +889,7 @@ public class PurpurWorldConfig {
@@ -858,6 +883,7 @@ public class PurpurWorldConfig {
set("mobs.evoker.attributes.max_health", oldValue);
}
evokerMaxHealth = getDouble("mobs.evoker.attributes.max_health", evokerMaxHealth);
@@ -522,7 +522,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean foxRidable = false;
@@ -871,6 +897,7 @@ public class PurpurWorldConfig {
@@ -865,6 +891,7 @@ public class PurpurWorldConfig {
public double foxMaxHealth = 10.0D;
public boolean foxTypeChangesWithTulips = false;
public int foxBreedingTicks = 6000;
@@ -530,7 +530,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void foxSettings() {
foxRidable = getBoolean("mobs.fox.ridable", foxRidable);
foxRidableInWater = getBoolean("mobs.fox.ridable-in-water", foxRidableInWater);
@@ -882,6 +909,7 @@ public class PurpurWorldConfig {
@@ -876,6 +903,7 @@ public class PurpurWorldConfig {
foxMaxHealth = getDouble("mobs.fox.attributes.max_health", foxMaxHealth);
foxTypeChangesWithTulips = getBoolean("mobs.fox.tulips-change-type", foxTypeChangesWithTulips);
foxBreedingTicks = getInt("mobs.fox.breeding-delay-ticks", foxBreedingTicks);
@@ -538,7 +538,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean ghastRidable = false;
@@ -1277,6 +1305,7 @@ public class PurpurWorldConfig {
@@ -1271,6 +1299,7 @@ public class PurpurWorldConfig {
public boolean piglinRidable = false;
public boolean piglinRidableInWater = false;
public double piglinMaxHealth = 16.0D;
@@ -546,7 +546,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void piglinSettings() {
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
@@ -1286,6 +1315,7 @@ public class PurpurWorldConfig {
@@ -1280,6 +1309,7 @@ public class PurpurWorldConfig {
set("mobs.piglin.attributes.max_health", oldValue);
}
piglinMaxHealth = getDouble("mobs.piglin.attributes.max_health", piglinMaxHealth);
@@ -554,7 +554,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean piglinBruteRidable = false;
@@ -1305,6 +1335,7 @@ public class PurpurWorldConfig {
@@ -1299,6 +1329,7 @@ public class PurpurWorldConfig {
public boolean pillagerRidable = false;
public boolean pillagerRidableInWater = false;
public double pillagerMaxHealth = 24.0D;
@@ -562,7 +562,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void pillagerSettings() {
pillagerRidable = getBoolean("mobs.pillager.ridable", pillagerRidable);
pillagerRidableInWater = getBoolean("mobs.pillager.ridable-in-water", pillagerRidableInWater);
@@ -1314,6 +1345,7 @@ public class PurpurWorldConfig {
@@ -1308,6 +1339,7 @@ public class PurpurWorldConfig {
set("mobs.pillager.attributes.max_health", oldValue);
}
pillagerMaxHealth = getDouble("mobs.pillager.attributes.max_health", pillagerMaxHealth);
@@ -570,7 +570,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean polarBearRidable = false;
@@ -1355,6 +1387,7 @@ public class PurpurWorldConfig {
@@ -1349,6 +1381,7 @@ public class PurpurWorldConfig {
public double rabbitNaturalToast = 0.0D;
public double rabbitNaturalKiller = 0.0D;
public int rabbitBreedingTicks = 6000;
@@ -578,7 +578,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void rabbitSettings() {
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
@@ -1367,11 +1400,13 @@ public class PurpurWorldConfig {
@@ -1361,11 +1394,13 @@ public class PurpurWorldConfig {
rabbitNaturalToast = getDouble("mobs.rabbit.spawn-toast-chance", rabbitNaturalToast);
rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller);
rabbitBreedingTicks = getInt("mobs.rabbit.breeding-delay-ticks", rabbitBreedingTicks);
@@ -592,7 +592,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void ravagerSettings() {
ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable);
ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater);
@@ -1381,6 +1416,7 @@ public class PurpurWorldConfig {
@@ -1375,6 +1410,7 @@ public class PurpurWorldConfig {
set("mobs.ravager.attributes.max_health", oldValue);
}
ravagerMaxHealth = getDouble("mobs.ravager.attributes.max_health", ravagerMaxHealth);
@@ -600,7 +600,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean salmonRidable = false;
@@ -1399,6 +1435,7 @@ public class PurpurWorldConfig {
@@ -1393,6 +1429,7 @@ public class PurpurWorldConfig {
public boolean sheepRidableInWater = false;
public double sheepMaxHealth = 8.0D;
public int sheepBreedingTicks = 6000;
@@ -608,7 +608,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void sheepSettings() {
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
@@ -1409,6 +1446,7 @@ public class PurpurWorldConfig {
@@ -1403,6 +1440,7 @@ public class PurpurWorldConfig {
}
sheepMaxHealth = getDouble("mobs.sheep.attributes.max_health", sheepMaxHealth);
sheepBreedingTicks = getInt("mobs.sheep.breeding-delay-ticks", sheepBreedingTicks);
@@ -616,7 +616,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean shulkerRidable = false;
@@ -1428,6 +1466,7 @@ public class PurpurWorldConfig {
@@ -1422,6 +1460,7 @@ public class PurpurWorldConfig {
public boolean silverfishRidable = false;
public boolean silverfishRidableInWater = false;
public double silverfishMaxHealth = 8.0D;
@@ -624,7 +624,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void silverfishSettings() {
silverfishRidable = getBoolean("mobs.silverfish.ridable", silverfishRidable);
silverfishRidableInWater = getBoolean("mobs.silverfish.ridable-in-water", silverfishRidableInWater);
@@ -1437,6 +1476,7 @@ public class PurpurWorldConfig {
@@ -1431,6 +1470,7 @@ public class PurpurWorldConfig {
set("mobs.silverfish.attributes.max_health", oldValue);
}
silverfishMaxHealth = getDouble("mobs.silverfish.attributes.max_health", silverfishMaxHealth);
@@ -632,7 +632,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean skeletonRidable = false;
@@ -1504,6 +1544,7 @@ public class PurpurWorldConfig {
@@ -1498,6 +1538,7 @@ public class PurpurWorldConfig {
public int snowGolemSnowBallMax = 20;
public float snowGolemSnowBallModifier = 10.0F;
public double snowGolemAttackDistance = 1.25D;
@@ -640,7 +640,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void snowGolemSettings() {
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
@@ -1520,6 +1561,7 @@ public class PurpurWorldConfig {
@@ -1514,6 +1555,7 @@ public class PurpurWorldConfig {
snowGolemSnowBallMax = getInt("mobs.snow_golem.max-shoot-interval-ticks", snowGolemSnowBallMax);
snowGolemSnowBallModifier = (float) getDouble("mobs.snow_golem.snow-ball-modifier", snowGolemSnowBallModifier);
snowGolemAttackDistance = getDouble("mobs.snow_golem.attack-distance", snowGolemAttackDistance);
@@ -648,7 +648,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean squidRidable = false;
@@ -1679,6 +1721,7 @@ public class PurpurWorldConfig {
@@ -1673,6 +1715,7 @@ public class PurpurWorldConfig {
public int villagerLobotomizeCheck = 60;
public boolean villagerClericsFarmWarts = false;
public boolean villagerClericFarmersThrowWarts = true;
@@ -656,7 +656,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void villagerSettings() {
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
@@ -1705,6 +1748,7 @@ public class PurpurWorldConfig {
@@ -1699,6 +1742,7 @@ public class PurpurWorldConfig {
villagerLobotomizeCheck = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheck);
villagerClericsFarmWarts = getBoolean("mobs.villager.clerics-farm-warts", villagerClericsFarmWarts);
villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts);
@@ -664,7 +664,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean vindicatorRidable = false;
@@ -1761,6 +1805,7 @@ public class PurpurWorldConfig {
@@ -1755,6 +1799,7 @@ public class PurpurWorldConfig {
public double witherMaxHealth = 300.0D;
public float witherHealthRegenAmount = 1.0f;
public int witherHealthRegenDelay = 20;
@@ -672,7 +672,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void witherSettings() {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
@@ -1777,6 +1822,7 @@ public class PurpurWorldConfig {
@@ -1771,6 +1816,7 @@ public class PurpurWorldConfig {
witherMaxHealth = getDouble("mobs.wither.attributes.max_health", witherMaxHealth);
witherHealthRegenAmount = (float) getDouble("mobs.wither.health-regen-amount", witherHealthRegenAmount);
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
@@ -680,7 +680,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
}
public boolean witherSkeletonRidable = false;
@@ -1842,6 +1888,7 @@ public class PurpurWorldConfig {
@@ -1836,6 +1882,7 @@ public class PurpurWorldConfig {
public boolean zombieJockeyTryExistingChickens = true;
public boolean zombieAggressiveTowardsVillagerWhenLagging = true;
public Difficulty zombieBreakDoorMinDifficulty = Difficulty.HARD;
@@ -688,7 +688,7 @@ index e1d0c95da94274d6c9bfbf05490a94c0c39cbd19..56689e99f3f11cc91b9b01bf22bbce64
private void zombieSettings() {
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
@@ -1861,6 +1908,7 @@ public class PurpurWorldConfig {
@@ -1855,6 +1902,7 @@ public class PurpurWorldConfig {
} catch (IllegalArgumentException ignore) {
zombieBreakDoorMinDifficulty = Difficulty.HARD;
}

View File

@@ -113,10 +113,10 @@ index fb5cd6fe7903f3f96af1abb55832bafb7ca7f4a8..4175462de0d6306e4cd0871853ef4f0a
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index c298e104e01e7dd5c1e671822d8544e1e969d6c6..6b268b7fd1fc81d0b43986e4ef4dc0bbe73aa4f7 100644
index 15f7092468fd341d4e5d22163ea0e265803e5139..7474ead18b667290c6bbe1d692b09d58bccf6b39 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1003,6 +1003,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1008,6 +1008,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
if (entity.isVehicle()) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Fix stuck in portals
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 98584609ed1ba2bc4cc803482326fa1525a779bb..60aeda60b99a21c4482c484c0a61494a06ae71ff 100644
index b09cd5f750b6789ac21ed7d585d72ad393141a97..e081a02d6799d8d74db06ca84e224c395e95a308 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1142,6 +1142,7 @@ public class ServerPlayer extends Player {
@@ -1144,6 +1144,7 @@ public class ServerPlayer extends Player {
playerlist.sendPlayerPermissionLevel(this);
worldserver1.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION);
this.unsetRemoved();
@@ -17,7 +17,7 @@ index 98584609ed1ba2bc4cc803482326fa1525a779bb..60aeda60b99a21c4482c484c0a61494a
// CraftBukkit end
this.setLevel(worldserver);
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index a1d4bcbafbc80c653ef622828e67145e72fc2ad0..565af7ade5c3de6a1c7a01755db1b7c6c16f0a3c 100644
index 67e42c3e4c23ac909458d4d6ba7be8ad241ee578..8aff04c7efd268c88c5321c4a5b77c9f1e3a2831 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2698,12 +2698,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Toggle for water sensitive mob damage
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 5bf98ddae4d3b141c3db3892a50638f1a4988e92..9eda9a48fb509f0484576a487a9d0f9cd42574e8 100644
index 94d0f9b7cc1470419e7c6438584a7914e3752717..2587c6e95942e62a6ed9eb699c557a219e2c747f 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -865,7 +865,7 @@ public abstract class Mob extends LivingEntity {
@@ -70,7 +70,7 @@ index 66dab9b4e5ae05deeae11c8588a0b855d8847bdc..19753a1855b11f8cdc9fb77e8d9079bb
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 2bc1ae856fde1965bbab69d541f3544d5e23b095..eb50da9c77637e14b3cab7e18c591f70f679e8e3 100644
index b578c89ed02b093e329ba93775a3552e5a568883..8e3d7bb364f9581dd27145672c87c3933b09b8af 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -634,6 +634,7 @@ public class PurpurWorldConfig {
@@ -89,7 +89,7 @@ index 2bc1ae856fde1965bbab69d541f3544d5e23b095..eb50da9c77637e14b3cab7e18c591f70
}
public boolean catRidable = false;
@@ -866,6 +868,7 @@ public class PurpurWorldConfig {
@@ -860,6 +862,7 @@ public class PurpurWorldConfig {
public boolean endermanAllowGriefing = true;
public boolean endermanDespawnEvenWithBlock = false;
public boolean endermanBypassMobGriefing = false;
@@ -97,7 +97,7 @@ index 2bc1ae856fde1965bbab69d541f3544d5e23b095..eb50da9c77637e14b3cab7e18c591f70
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -878,6 +881,7 @@ public class PurpurWorldConfig {
@@ -872,6 +875,7 @@ public class PurpurWorldConfig {
endermanAllowGriefing = getBoolean("mobs.enderman.allow-griefing", endermanAllowGriefing);
endermanDespawnEvenWithBlock = getBoolean("mobs.enderman.can-despawn-with-held-block", endermanDespawnEvenWithBlock);
endermanBypassMobGriefing = getBoolean("mobs.enderman.bypass-mob-griefing", endermanBypassMobGriefing);
@@ -105,7 +105,7 @@ index 2bc1ae856fde1965bbab69d541f3544d5e23b095..eb50da9c77637e14b3cab7e18c591f70
}
public boolean endermiteRidable = false;
@@ -1563,6 +1567,7 @@ public class PurpurWorldConfig {
@@ -1557,6 +1561,7 @@ public class PurpurWorldConfig {
public float snowGolemSnowBallModifier = 10.0F;
public double snowGolemAttackDistance = 1.25D;
public boolean snowGolemBypassMobGriefing = false;
@@ -113,7 +113,7 @@ index 2bc1ae856fde1965bbab69d541f3544d5e23b095..eb50da9c77637e14b3cab7e18c591f70
private void snowGolemSettings() {
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
@@ -1580,6 +1585,7 @@ public class PurpurWorldConfig {
@@ -1574,6 +1579,7 @@ public class PurpurWorldConfig {
snowGolemSnowBallModifier = (float) getDouble("mobs.snow_golem.snow-ball-modifier", snowGolemSnowBallModifier);
snowGolemAttackDistance = getDouble("mobs.snow_golem.attack-distance", snowGolemAttackDistance);
snowGolemBypassMobGriefing = getBoolean("mobs.snow_golem.bypass-mob-griefing", snowGolemBypassMobGriefing);
@@ -121,7 +121,7 @@ index 2bc1ae856fde1965bbab69d541f3544d5e23b095..eb50da9c77637e14b3cab7e18c591f70
}
public boolean squidRidable = false;
@@ -1633,6 +1639,7 @@ public class PurpurWorldConfig {
@@ -1627,6 +1633,7 @@ public class PurpurWorldConfig {
public double striderMaxHealth = 20.0D;
public int striderBreedingTicks = 6000;
public boolean striderGiveSaddleBack = false;
@@ -129,7 +129,7 @@ index 2bc1ae856fde1965bbab69d541f3544d5e23b095..eb50da9c77637e14b3cab7e18c591f70
private void striderSettings() {
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
@@ -1644,6 +1651,7 @@ public class PurpurWorldConfig {
@@ -1638,6 +1645,7 @@ public class PurpurWorldConfig {
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks);
striderGiveSaddleBack = getBoolean("mobs.strider.give-saddle-back", striderGiveSaddleBack);

View File

@@ -20,10 +20,10 @@ index fd0f5c255729b2c05ead5843ab58fe880971b3db..08bdebf99cdedfc6115405e5198346ee
return;
}
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cat.java b/src/main/java/net/minecraft/world/entity/animal/Cat.java
index 47e5108ed92871111fbca76eb3d0c8419dbbb586..49e319ac0cb6ea71ca6c742c539f2742ef9e3ced 100644
index 052d1e51a891ee17bed0043f6f3fd162c15b16b2..0d521af1a44acc0fd62f209b845b6d128e42baf4 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Cat.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Cat.java
@@ -473,7 +473,7 @@ public class Cat extends TamableAnimal {
@@ -466,7 +466,7 @@ public class Cat extends TamableAnimal {
}
} else if (this.isFood(itemstack)) {
this.usePlayerItem(player, hand, itemstack);
@@ -59,7 +59,7 @@ index 518dd0e6b4889c049e438b393baa795a5eac3e7d..21e154c4e7fe261a41c891b481072fbd
this.navigation.stop();
this.setTarget((LivingEntity) null);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index eb50da9c77637e14b3cab7e18c591f70f679e8e3..51d617ae1055048d068c927ae00f7885c8b53504 100644
index 8e3d7bb364f9581dd27145672c87c3933b09b8af..b87830f9454388eb71efcd9382912e031446c0fc 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -372,6 +372,7 @@ public class PurpurWorldConfig {

View File

@@ -34,10 +34,10 @@ index 4175462de0d6306e4cd0871853ef4f0a06895359..2fb5c5ea01d5f1071c8e8a39e7863ed0
// Purpur end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 7a8db8d481e9487ea83a640af208242f4987ad28..f12eec135f8134409f1abe5c97ffee59913a4d9e 100644
index 72cfffd80ad76abe7cb16bc9133730338c07b6f6..09b99e3465ae142081f01c483116c1d1adb34842 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -408,9 +408,14 @@ public final class CraftMagicNumbers implements UnsafeValues {
@@ -407,9 +407,14 @@ public final class CraftMagicNumbers implements UnsafeValues {
Preconditions.checkNotNull(item, "null cannot be serialized");
Preconditions.checkArgument(item.getType() != Material.AIR, "air cannot be serialized");
@@ -54,7 +54,7 @@ index 7a8db8d481e9487ea83a640af208242f4987ad28..f12eec135f8134409f1abe5c97ffee59
try {
net.minecraft.nbt.NbtIo.writeCompressed(
compound,
@@ -428,21 +433,52 @@ public final class CraftMagicNumbers implements UnsafeValues {
@@ -427,21 +432,52 @@ public final class CraftMagicNumbers implements UnsafeValues {
Preconditions.checkNotNull(data, "null cannot be deserialized");
Preconditions.checkArgument(data.length > 0, "cannot deserialize nothing");

View File

@@ -29,10 +29,10 @@ index bdcbe92cbe431727f5879a04bf734811ffd03c3d..257a1b91c65d9f66173cfe8a31f598a0
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index b55e0bca09241dfe8c5d915a3bcac39a7c01c2e6..20bdebf6ace1c983a2a237328e8d46350a80b0c4 100644
index 6608389d1715b7ce22689128b726195b503cc82c..ee84e6aef5c0e747c71c2b345eebfb99da406b8d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -875,6 +875,7 @@ public class PurpurWorldConfig {
@@ -869,6 +869,7 @@ public class PurpurWorldConfig {
public double enderDragonMaxHealth = 200.0D;
public boolean enderDragonAlwaysDropsFullExp = false;
public boolean enderDragonBypassMobGriefing = false;
@@ -40,7 +40,7 @@ index b55e0bca09241dfe8c5d915a3bcac39a7c01c2e6..20bdebf6ace1c983a2a237328e8d4635
private void enderDragonSettings() {
enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable);
enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater);
@@ -891,6 +892,7 @@ public class PurpurWorldConfig {
@@ -885,6 +886,7 @@ public class PurpurWorldConfig {
enderDragonMaxHealth = getDouble("mobs.ender_dragon.attributes.max_health", enderDragonMaxHealth);
enderDragonAlwaysDropsFullExp = getBoolean("mobs.ender_dragon.always-drop-full-exp", enderDragonAlwaysDropsFullExp);
enderDragonBypassMobGriefing = getBoolean("mobs.ender_dragon.bypass-mob-griefing", enderDragonBypassMobGriefing);
@@ -48,7 +48,7 @@ index b55e0bca09241dfe8c5d915a3bcac39a7c01c2e6..20bdebf6ace1c983a2a237328e8d4635
}
public boolean endermanRidable = false;
@@ -1863,6 +1865,7 @@ public class PurpurWorldConfig {
@@ -1857,6 +1859,7 @@ public class PurpurWorldConfig {
public float witherHealthRegenAmount = 1.0f;
public int witherHealthRegenDelay = 20;
public boolean witherBypassMobGriefing = false;
@@ -56,7 +56,7 @@ index b55e0bca09241dfe8c5d915a3bcac39a7c01c2e6..20bdebf6ace1c983a2a237328e8d4635
private void witherSettings() {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
@@ -1880,6 +1883,7 @@ public class PurpurWorldConfig {
@@ -1874,6 +1877,7 @@ public class PurpurWorldConfig {
witherHealthRegenAmount = (float) getDouble("mobs.wither.health-regen-amount", witherHealthRegenAmount);
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Config to ignore nearby mobs when sleeping
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 60aeda60b99a21c4482c484c0a61494a06ae71ff..90f91e5438e1fbd27da59fec004969c572517d8e 100644
index e081a02d6799d8d74db06ca84e224c395e95a308..26fcead85fe017a27d41697cbf7b6d1da16c8879 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1305,7 +1305,7 @@ public class ServerPlayer extends Player {
@@ -1307,7 +1307,7 @@ public class ServerPlayer extends Player {
return entitymonster.isPreventingPlayerRest((Player) this);
});

View File

@@ -18,10 +18,10 @@ index 3907b7cb559dabdd3cc347678d42071215c66a6c..e8779b23b5e1a399dde19fc66d820101
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 25146133bb6dd7b37bdcf9928e021ae4e27cfb02..be9ed488c41ea7b9bdf7c015e0ee482d5824be81 100644
index 39496742ed05737029e67592755cd74331e1cb95..264d6902931377c55fcbdeb32460648802f56133 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -923,6 +923,8 @@ public class PurpurWorldConfig {
@@ -917,6 +917,8 @@ public class PurpurWorldConfig {
public boolean endermanDespawnEvenWithBlock = false;
public boolean endermanBypassMobGriefing = false;
public boolean endermanTakeDamageFromWater = true;
@@ -30,7 +30,7 @@ index 25146133bb6dd7b37bdcf9928e021ae4e27cfb02..be9ed488c41ea7b9bdf7c015e0ee482d
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -931,11 +933,17 @@ public class PurpurWorldConfig {
@@ -925,11 +927,17 @@ public class PurpurWorldConfig {
set("mobs.enderman.attributes.max-health", null);
set("mobs.enderman.attributes.max_health", oldValue);
}

View File

@@ -20,10 +20,10 @@ index e8779b23b5e1a399dde19fc66d820101d61f36bc..ba61f78874d8578b862f317fe00a3162
} else {
Vec3 vec3d = player.getViewVector(1.0F).normalize();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index be9ed488c41ea7b9bdf7c015e0ee482d5824be81..a51ae6ad7bf6f3c131f2e8ba8701880cf5a3240b 100644
index 264d6902931377c55fcbdeb32460648802f56133..0f7a3541425a825007cb3deaafaaf386cf4b76ba 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -925,6 +925,8 @@ public class PurpurWorldConfig {
@@ -919,6 +919,8 @@ public class PurpurWorldConfig {
public boolean endermanTakeDamageFromWater = true;
public boolean endermanAggroEndermites = true;
public boolean endermanAggroEndermitesOnlyIfPlayerSpawned = false;
@@ -32,7 +32,7 @@ index be9ed488c41ea7b9bdf7c015e0ee482d5824be81..a51ae6ad7bf6f3c131f2e8ba8701880c
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -944,6 +946,8 @@ public class PurpurWorldConfig {
@@ -938,6 +940,8 @@ public class PurpurWorldConfig {
endermanTakeDamageFromWater = getBoolean("mobs.enderman.takes-damage-from-water", endermanTakeDamageFromWater);
endermanAggroEndermites = getBoolean("mobs.enderman.aggressive-towards-endermites", endermanAggroEndermites);
endermanAggroEndermitesOnlyIfPlayerSpawned = getBoolean("mobs.enderman.aggressive-towards-endermites-only-spawned-by-player-thrown-ender-pearls", endermanAggroEndermitesOnlyIfPlayerSpawned);

View File

@@ -32,10 +32,10 @@ index 93a05b945ac248df0ea7a0b9d7264a9c129c3bcf..8f12851f220bb23102f52f523a4c5d98
this.caravanHead.caravanTail = this;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 7fe1c0a068f994d294101a81c88d5695383784e5..5bd82ba53709c558163c4763dae867babed18a0e 100644
index e2a6db623c662b6604c204570b2c0bc927989c3d..1b3b2a94cd33661c913706a297e6660cf7c93086 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1191,6 +1191,7 @@ public class PurpurWorldConfig {
@@ -1185,6 +1185,7 @@ public class PurpurWorldConfig {
public double llamaMovementSpeedMin = 0.175D;
public double llamaMovementSpeedMax = 0.175D;
public int llamaBreedingTicks = 6000;
@@ -43,7 +43,7 @@ index 7fe1c0a068f994d294101a81c88d5695383784e5..5bd82ba53709c558163c4763dae867ba
private void llamaSettings() {
llamaRidable = getBoolean("mobs.llama.ridable", llamaRidable);
llamaRidableInWater = getBoolean("mobs.llama.ridable-in-water", llamaRidableInWater);
@@ -1208,6 +1209,7 @@ public class PurpurWorldConfig {
@@ -1202,6 +1203,7 @@ public class PurpurWorldConfig {
llamaMovementSpeedMin = getDouble("mobs.llama.attributes.movement_speed.min", llamaMovementSpeedMin);
llamaMovementSpeedMax = getDouble("mobs.llama.attributes.movement_speed.max", llamaMovementSpeedMax);
llamaBreedingTicks = getInt("mobs.llama.breeding-delay-ticks", llamaBreedingTicks);

View File

@@ -50,10 +50,10 @@ index c550b8c19837ed9bf730a3eb777bc00de4e7ceb2..02494dcc8a342f65b2855612aebeb019
private void spawnLingeringCloud() {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 5bd82ba53709c558163c4763dae867babed18a0e..62695e21e85c34c135b0559b1fd1983d08f8aa21 100644
index 1b3b2a94cd33661c913706a297e6660cf7c93086..580f2a28adc946643951d16403ff53ebccbe7982 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -798,6 +798,7 @@ public class PurpurWorldConfig {
@@ -792,6 +792,7 @@ public class PurpurWorldConfig {
public double creeperChargedChance = 0.0D;
public boolean creeperAllowGriefing = true;
public boolean creeperBypassMobGriefing = false;
@@ -61,7 +61,7 @@ index 5bd82ba53709c558163c4763dae867babed18a0e..62695e21e85c34c135b0559b1fd1983d
private void creeperSettings() {
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
@@ -810,6 +811,7 @@ public class PurpurWorldConfig {
@@ -804,6 +805,7 @@ public class PurpurWorldConfig {
creeperChargedChance = getDouble("mobs.creeper.naturally-charged-chance", creeperChargedChance);
creeperAllowGriefing = getBoolean("mobs.creeper.allow-griefing", creeperAllowGriefing);
creeperBypassMobGriefing = getBoolean("mobs.creeper.bypass-mob-griefing", creeperBypassMobGriefing);

View File

@@ -31,10 +31,10 @@ index 3c51e6d419a244b9270119590aa299527163c331..b466b0430dd94777975a1e7ab9792166
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 62695e21e85c34c135b0559b1fd1983d08f8aa21..81962cbe701d76d1c10a1e1249ebd4ff72621ca1 100644
index 580f2a28adc946643951d16403ff53ebccbe7982..e5f648e5b7041218f03d3fff0d755c29563c0e8d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1501,6 +1501,7 @@ public class PurpurWorldConfig {
@@ -1495,6 +1495,7 @@ public class PurpurWorldConfig {
public boolean ravagerRidableInWater = false;
public double ravagerMaxHealth = 100.0D;
public boolean ravagerBypassMobGriefing = false;
@@ -42,7 +42,7 @@ index 62695e21e85c34c135b0559b1fd1983d08f8aa21..81962cbe701d76d1c10a1e1249ebd4ff
private void ravagerSettings() {
ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable);
ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater);
@@ -1511,6 +1512,23 @@ public class PurpurWorldConfig {
@@ -1505,6 +1506,23 @@ public class PurpurWorldConfig {
}
ravagerMaxHealth = getDouble("mobs.ravager.attributes.max_health", ravagerMaxHealth);
ravagerBypassMobGriefing = getBoolean("mobs.ravager.bypass-mob-griefing", ravagerBypassMobGriefing);

View File

@@ -31,10 +31,10 @@ index c48935d35a6141c41db22e3ec172d5994fd317a2..fa4644c11cbb252734a6f5dc21c861d2
this.openTradingScreen(player, this.getDisplayName(), 1);
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 279b6e17a03de069202ef191f02dc31840b802cb..4b88e620ec5667cbaa388fe7259533bdbb52e621 100644
index 30e1679f4d342634fdfd8c64520d9c87eeee1462..d734218c0b7277348b0ea4002259f19e59bc31f0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1845,6 +1845,7 @@ public class PurpurWorldConfig {
@@ -1839,6 +1839,7 @@ public class PurpurWorldConfig {
public boolean villagerClericsFarmWarts = false;
public boolean villagerClericFarmersThrowWarts = true;
public boolean villagerBypassMobGriefing = false;
@@ -42,7 +42,7 @@ index 279b6e17a03de069202ef191f02dc31840b802cb..4b88e620ec5667cbaa388fe7259533bd
private void villagerSettings() {
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
@@ -1872,6 +1873,7 @@ public class PurpurWorldConfig {
@@ -1866,6 +1867,7 @@ public class PurpurWorldConfig {
villagerClericsFarmWarts = getBoolean("mobs.villager.clerics-farm-warts", villagerClericsFarmWarts);
villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts);
villagerBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerBypassMobGriefing);
@@ -50,7 +50,7 @@ index 279b6e17a03de069202ef191f02dc31840b802cb..4b88e620ec5667cbaa388fe7259533bd
}
public boolean vindicatorRidable = false;
@@ -1895,6 +1897,7 @@ public class PurpurWorldConfig {
@@ -1889,6 +1891,7 @@ public class PurpurWorldConfig {
public double wanderingTraderMaxHealth = 20.0D;
public boolean wanderingTraderFollowEmeraldBlock = false;
public boolean wanderingTraderCanBeLeashed = false;
@@ -58,7 +58,7 @@ index 279b6e17a03de069202ef191f02dc31840b802cb..4b88e620ec5667cbaa388fe7259533bd
private void wanderingTraderSettings() {
wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable);
wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater);
@@ -1906,6 +1909,7 @@ public class PurpurWorldConfig {
@@ -1900,6 +1903,7 @@ public class PurpurWorldConfig {
wanderingTraderMaxHealth = getDouble("mobs.wandering_trader.attributes.max_health", wanderingTraderMaxHealth);
wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock);
wanderingTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", wanderingTraderCanBeLeashed);

View File

@@ -57,21 +57,6 @@ index 410ac71efff92dfa1f1e11895d0f5bf3fca1be17..f380659b261253e327f018ce9b54b151
((ServerPlayer) player).connection.send(new ClientboundContainerSetSlotPacket(containerId, incrementStateId(), 2, itemstack1));
((ServerPlayer) player).connection.send(new ClientboundContainerSetDataPacket(containerId, 0, cost.get()));
}
diff --git a/src/main/java/net/minecraft/world/item/CrossbowItem.java b/src/main/java/net/minecraft/world/item/CrossbowItem.java
index 264542304babba94e364811da8d7b51b812a2b47..e822e2d30e072eb028373909f582fa42b79aa088 100644
--- a/src/main/java/net/minecraft/world/item/CrossbowItem.java
+++ b/src/main/java/net/minecraft/world/item/CrossbowItem.java
@@ -293,6 +293,10 @@ public class CrossbowItem extends ProjectileWeaponItem implements Vanishable {
entityarrow.setPierceLevel((byte) i);
}
+ if (net.pl3x.purpur.PurpurConfig.allowUnsafeEnchants && EnchantmentHelper.getItemEnchantmentLevel(Enchantments.FLAMING_ARROWS, crossbow) > 0) {
+ entityarrow.setSecondsOnFire(100);
+ }
+
return entityarrow;
}
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
index d1b4fe830170ddee2b6f39eba29e7068e6ae37a3..115f8eb919e90bc4a79db1d0f7875a31cc962f07 100644
--- a/src/main/java/net/minecraft/world/item/ItemStack.java

View File

@@ -31,10 +31,10 @@ index fef1027829c44957e23c0a121033bfb7640d06f0..c42349d0f6b0025525278295b36f4030
pos = pos.below();
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 26e521bc294b439180c3409b638def21eeb05d7f..b3fc476e2b12271c5377785bbd644a6d62810adb 100644
index c2e0c46a626ae143b26e2a77d1077a10c657e61b..9e18b2e38b0c36eae8b7e24aedf3c4e6786a7ff0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1466,6 +1466,7 @@ public class PurpurWorldConfig {
@@ -1460,6 +1460,7 @@ public class PurpurWorldConfig {
public boolean piglinRidableInWater = false;
public double piglinMaxHealth = 16.0D;
public boolean piglinBypassMobGriefing = false;
@@ -42,7 +42,7 @@ index 26e521bc294b439180c3409b638def21eeb05d7f..b3fc476e2b12271c5377785bbd644a6d
private void piglinSettings() {
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
@@ -1476,6 +1477,7 @@ public class PurpurWorldConfig {
@@ -1470,6 +1471,7 @@ public class PurpurWorldConfig {
}
piglinMaxHealth = getDouble("mobs.piglin.attributes.max_health", piglinMaxHealth);
piglinBypassMobGriefing = getBoolean("mobs.piglin.bypass-mob-griefing", piglinBypassMobGriefing);

View File

@@ -18,10 +18,10 @@ index 430aa10101d9f21561155941ff24441fd0c4103a..de91f0dd7f9a62e5a96b4cc3e4f505ec
if (!event.isCancelled()) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index a3c2f63a600b621cc89df8812694ae5734d8e7f6..14147e47de493066787e32636e5b729c83b9fa5a 100644
index f21b019e7074b637d2a4f8cc47749023751d2221..fdb30742017253789472896247c07f5ce530d10c 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2002,6 +2002,7 @@ public class PurpurWorldConfig {
@@ -1996,6 +1996,7 @@ public class PurpurWorldConfig {
public int witherHealthRegenDelay = 20;
public boolean witherBypassMobGriefing = false;
public boolean witherCanRideVehicles = false;
@@ -29,7 +29,7 @@ index a3c2f63a600b621cc89df8812694ae5734d8e7f6..14147e47de493066787e32636e5b729c
private void witherSettings() {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
@@ -2020,6 +2021,7 @@ public class PurpurWorldConfig {
@@ -2014,6 +2015,7 @@ public class PurpurWorldConfig {
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing);
witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles);

View File

@@ -17,10 +17,10 @@ index c46df052a5a39d92688f51377ee1f7b5b5b36faa..d7d2a975386cecb0d50b4f7ed37de8ad
// Paper end
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 90f91e5438e1fbd27da59fec004969c572517d8e..b2bf0ce295520e7dc6f17fd904769e47164675eb 100644
index 26fcead85fe017a27d41697cbf7b6d1da16c8879..ba690d310ee6b9d3a1b1bf2ae13e016daabeb0fc 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -880,6 +880,7 @@ public class ServerPlayer extends Player {
@@ -882,6 +882,7 @@ public class ServerPlayer extends Player {
});
Team scoreboardteambase = this.getTeam();

View File

@@ -21,10 +21,10 @@ index 02494dcc8a342f65b2855612aebeb019095abf65..d66c8866f3c6b1412a6c1876c62e3b29
if (!event.isCancelled()) {
this.dead = true;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c43e0e791de0a932e9e5637f419d480331864823..071c110bfbb8264b1197c2f27d1a3c73f28724a8 100644
index 6cf13cafb904bb273736cc53c69ed9fdc33d23c4..1c2d7b985a9ad7512ce584b69fac518da9ef2f54 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -894,6 +894,7 @@ public class PurpurWorldConfig {
@@ -888,6 +888,7 @@ public class PurpurWorldConfig {
public boolean creeperAllowGriefing = true;
public boolean creeperBypassMobGriefing = false;
public boolean creeperExplodeWhenKilled = false;
@@ -32,7 +32,7 @@ index c43e0e791de0a932e9e5637f419d480331864823..071c110bfbb8264b1197c2f27d1a3c73
private void creeperSettings() {
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
@@ -907,6 +908,7 @@ public class PurpurWorldConfig {
@@ -901,6 +902,7 @@ public class PurpurWorldConfig {
creeperAllowGriefing = getBoolean("mobs.creeper.allow-griefing", creeperAllowGriefing);
creeperBypassMobGriefing = getBoolean("mobs.creeper.bypass-mob-griefing", creeperBypassMobGriefing);
creeperExplodeWhenKilled = getBoolean("mobs.creeper.explode-when-killed", creeperExplodeWhenKilled);

View File

@@ -17,10 +17,10 @@ index f4e983da7206923ee0b0f984e65a6c2b3a6a8aeb..cea3725009af1bc746a593c4db63ed63
this.goalSelector.addGoal(2, new MoveTowardsTargetGoal(this, 0.9D, 32.0F));
this.goalSelector.addGoal(2, new MoveBackToVillageGoal(this, 0.6D, false));
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 071c110bfbb8264b1197c2f27d1a3c73f28724a8..1efced39b92e845a8c416ead0683f5870c0937ac 100644
index 1c2d7b985a9ad7512ce584b69fac518da9ef2f54..e0e493653c95d6fdf7843efd3f3a7bec4d7729fc 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1269,6 +1269,7 @@ public class PurpurWorldConfig {
@@ -1263,6 +1263,7 @@ public class PurpurWorldConfig {
public boolean ironGolemRidableInWater = false;
public boolean ironGolemCanSwim = false;
public double ironGolemMaxHealth = 100.0D;
@@ -28,7 +28,7 @@ index 071c110bfbb8264b1197c2f27d1a3c73f28724a8..1efced39b92e845a8c416ead0683f587
private void ironGolemSettings() {
ironGolemRidable = getBoolean("mobs.iron_golem.ridable", ironGolemRidable);
ironGolemRidableInWater = getBoolean("mobs.iron_golem.ridable-in-water", ironGolemRidableInWater);
@@ -1279,6 +1280,7 @@ public class PurpurWorldConfig {
@@ -1273,6 +1274,7 @@ public class PurpurWorldConfig {
set("mobs.iron_golem.attributes.max_health", oldValue);
}
ironGolemMaxHealth = getDouble("mobs.iron_golem.attributes.max_health", ironGolemMaxHealth);

View File

@@ -50,10 +50,10 @@ index 553b0aff0ccc5baf41d5faae1a2fd88249dd5a74..3da2b68fb03a80676d7a5eed271499f6
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 1efced39b92e845a8c416ead0683f5870c0937ac..8e4340b9453b638bebb3aeb9f9e9eaf5b9176de6 100644
index e0e493653c95d6fdf7843efd3f3a7bec4d7729fc..b54dba107a355fe8f4e12f0763fb0b6590788c05 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1405,6 +1405,7 @@ public class PurpurWorldConfig {
@@ -1399,6 +1399,7 @@ public class PurpurWorldConfig {
public boolean parrotRidableInWater = false;
public double parrotMaxY = 256D;
public double parrotMaxHealth = 6.0D;
@@ -61,7 +61,7 @@ index 1efced39b92e845a8c416ead0683f5870c0937ac..8e4340b9453b638bebb3aeb9f9e9eaf5
private void parrotSettings() {
parrotRidable = getBoolean("mobs.parrot.ridable", parrotRidable);
parrotRidableInWater = getBoolean("mobs.parrot.ridable-in-water", parrotRidableInWater);
@@ -1415,6 +1416,7 @@ public class PurpurWorldConfig {
@@ -1409,6 +1410,7 @@ public class PurpurWorldConfig {
set("mobs.parrot.attributes.max_health", oldValue);
}
parrotMaxHealth = getDouble("mobs.parrot.attributes.max_health", parrotMaxHealth);

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] API for any mob to burn daylight
Co-authored by: Encode42 <me@encode42.dev>
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 5572fe00a915fc31afe3bc7dcf45e894d7cb69b5..c0f97b07f7c0c98699f90f6c2cc6bd67c1fe59ee 100644
index 279ae74bad5215a3aa9979a6447c8a872d06b6b4..8aeb81b4ddff686ad90eb784d827494e8bf2e4d9 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4277,5 +4277,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
@@ -4292,5 +4292,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
public boolean canSaveToDisk() {
return true;
}
@@ -29,7 +29,7 @@ index 5572fe00a915fc31afe3bc7dcf45e894d7cb69b5..c0f97b07f7c0c98699f90f6c2cc6bd67
// Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 246d6bdb7c431f9aca2e337dd2d4dfa5f8baf486..5bb0a3c4d25c5b06e6547a1789b6b27972fbda59 100644
index 730ed778534b47eec77a32772ce9efb556332505..fa2a5d0036fbbab16e1a9237320e1a76dd8e734b 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -265,6 +265,7 @@ public abstract class LivingEntity extends Entity {
@@ -89,7 +89,7 @@ index 246d6bdb7c431f9aca2e337dd2d4dfa5f8baf486..5bb0a3c4d25c5b06e6547a1789b6b279
public boolean isSensitiveToWater() {
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 9eda9a48fb509f0484576a487a9d0f9cd42574e8..870fb7680e39e1ad69532634a25bb1be664c111c 100644
index 2587c6e95942e62a6ed9eb699c557a219e2c747f..4de4a9157cd4ecc74ae26e27ea06e5aaa4c37129 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -1641,17 +1641,7 @@ public abstract class Mob extends LivingEntity {

View File

@@ -26,10 +26,10 @@ index 24523dd712329f2f3abe40bb3f1801ef7946e831..ebd744b08e27d6fc6dda31ada7ad8bb1
} else {
if (fallDistance >= 2.0F) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 6b268b7fd1fc81d0b43986e4ef4dc0bbe73aa4f7..41b7f84c74f12d35da163cc688f624569500f50b 100644
index 7474ead18b667290c6bbe1d692b09d58bccf6b39..98751b195e5bea9ef89e1432fba54d6823036818 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2590,5 +2590,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2595,5 +2595,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void setSpawnInvulnerableTicks(int spawnInvulnerableTime) {
getHandle().spawnInvulnerableTime = spawnInvulnerableTime;
}

View File

@@ -39,10 +39,10 @@ index a7a7e6cd87270e64a92448f03f8b0b0c7e375ec7..9fb19162c0e436122087d03d37b502a1
try {
region.setCurrentlyGenerating(supplier3);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 3a16d61ceab7c097187fb38b17811b0d5f9eceb9..02a0d473cafcf0188f0b9dc1d36f2cc5de6ddb45 100644
index 8c6bd440e8e12c064e9628dde6913991744afa8b..398be3312551c17dce4ae5bd7a898e4d36a040c2 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2266,4 +2266,9 @@ public class PurpurWorldConfig {
@@ -2260,4 +2260,9 @@ public class PurpurWorldConfig {
zombifiedPiglinJockeyTryExistingChickens = getBoolean("mobs.zombified_piglin.jockey.try-existing-chickens", zombifiedPiglinJockeyTryExistingChickens);
zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry);
}

View File

@@ -61,10 +61,10 @@ index f812a75985d26785639491c9a980387a3f261f2d..b11fb39b69f5225ca7da72ca1a2200c7
+ // Purpur end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 02a0d473cafcf0188f0b9dc1d36f2cc5de6ddb45..8a7fba8ebd0818cda7cf81d21f48f861db304ab5 100644
index 398be3312551c17dce4ae5bd7a898e4d36a040c2..35a0a270fad348a2f60ae3f9a480f1a527f525ed 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1723,6 +1723,11 @@ public class PurpurWorldConfig {
@@ -1717,6 +1717,11 @@ public class PurpurWorldConfig {
public boolean shulkerRidable = false;
public boolean shulkerRidableInWater = false;
public double shulkerMaxHealth = 30.0D;
@@ -76,7 +76,7 @@ index 02a0d473cafcf0188f0b9dc1d36f2cc5de6ddb45..8a7fba8ebd0818cda7cf81d21f48f861
private void shulkerSettings() {
shulkerRidable = getBoolean("mobs.shulker.ridable", shulkerRidable);
shulkerRidableInWater = getBoolean("mobs.shulker.ridable-in-water", shulkerRidableInWater);
@@ -1732,6 +1737,11 @@ public class PurpurWorldConfig {
@@ -1726,6 +1731,11 @@ public class PurpurWorldConfig {
set("mobs.shulker.attributes.max_health", oldValue);
}
shulkerMaxHealth = getDouble("mobs.shulker.attributes.max_health", shulkerMaxHealth);

View File

@@ -34,10 +34,10 @@ index 8d3ce6c97a8734c0d13844cafca251a3f4dce8a4..a004d59483dc3ffb404ae28daf76c807
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 11204fc15c7df12827bede661a2b5d4e532b9416..54a43a2512f7d5f66e723acd9a465bb1d215ea94 100644
index a45d894c8234babc0a7b3b8ee03b92d192df168f..342b855ece49e1acbdd1268222ba156bf3012036 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1022,6 +1022,7 @@ public class PurpurWorldConfig {
@@ -1016,6 +1016,7 @@ public class PurpurWorldConfig {
public boolean drownedJockeyOnlyBaby = true;
public double drownedJockeyChance = 0.05D;
public boolean drownedJockeyTryExistingChickens = true;
@@ -45,7 +45,7 @@ index 11204fc15c7df12827bede661a2b5d4e532b9416..54a43a2512f7d5f66e723acd9a465bb1
private void drownedSettings() {
drownedRidable = getBoolean("mobs.drowned.ridable", drownedRidable);
drownedRidableInWater = getBoolean("mobs.drowned.ridable-in-water", drownedRidableInWater);
@@ -1035,6 +1036,7 @@ public class PurpurWorldConfig {
@@ -1029,6 +1030,7 @@ public class PurpurWorldConfig {
drownedJockeyOnlyBaby = getBoolean("mobs.drowned.jockey.only-babies", drownedJockeyOnlyBaby);
drownedJockeyChance = getDouble("mobs.drowned.jockey.chance", drownedJockeyChance);
drownedJockeyTryExistingChickens = getBoolean("mobs.drowned.jockey.try-existing-chickens", drownedJockeyTryExistingChickens);

View File

@@ -18,10 +18,10 @@ index c1130952e3fa22abaa27fcc1c4761c831dc56cc3..1ac08eca469739cb52abd38483c431b6
this.tickTimer = 0;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 54a43a2512f7d5f66e723acd9a465bb1d215ea94..5da1c0004f786dd25d2ac674e6560b707cd7d30d 100644
index 342b855ece49e1acbdd1268222ba156bf3012036..093340d3871ec3db4271d5c33e53edef04d7ce03 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2285,4 +2285,9 @@ public class PurpurWorldConfig {
@@ -2279,4 +2279,9 @@ public class PurpurWorldConfig {
private void seedSettings() {
randomPopulatorSeed = getBoolean("seed.random-populator-seed", randomPopulatorSeed);
}

View File

@@ -25,10 +25,10 @@ index 115f8eb919e90bc4a79db1d0f7875a31cc962f07..d8df4457c28225508d9cb53ed6ea12d2
world.notifyAndUpdatePhysics(newblockposition, null, oldBlock, block, world.getBlockState(newblockposition), updateFlag, 512); // send null chunk as chunk.k() returns false by this point
}
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
index 0f295a496d4d94811199fa952ed68325ee1df0f6..5aab59cba33bcf4b615977dcd9261b0cf2b56aa9 100644
index 94a69b7a1443231cf807fb792478c35334f73e62..2d742ba9d05b599c38b4ffe78b8cf7044652e95f 100644
--- a/src/main/java/net/minecraft/world/level/block/Block.java
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
@@ -461,7 +461,17 @@ public class Block extends BlockBehaviour implements ItemLike {
@@ -465,7 +465,17 @@ public class Block extends BlockBehaviour implements ItemLike {
Block.dropResources(state, world, pos, blockEntity, player, stack);
}

View File

@@ -18,10 +18,10 @@ index ba61f78874d8578b862f317fe00a3162c45253e0..42370072dac9144be5c07f88d24d8ba4
for (int i = 0; i < 64; ++i) {
if (this.teleport()) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 878b35ea7636d29b01550cacb724e12274f15caa..41e10cb7960e0dad7ae049cfd22c4a2ca3f335d0 100644
index 84b41052b3d3f1d99c1edc17e752ff0306eff9fa..d481c7235af2bc9144b9b03fed83e283fe35725f 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1264,6 +1264,7 @@ public class PurpurWorldConfig {
@@ -1258,6 +1258,7 @@ public class PurpurWorldConfig {
public boolean endermanAggroEndermitesOnlyIfPlayerSpawned = false;
public boolean endermanIgnorePlayerDragonHead = false;
public boolean endermanDisableStareAggro = false;
@@ -29,7 +29,7 @@ index 878b35ea7636d29b01550cacb724e12274f15caa..41e10cb7960e0dad7ae049cfd22c4a2c
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -1285,6 +1286,7 @@ public class PurpurWorldConfig {
@@ -1279,6 +1280,7 @@ public class PurpurWorldConfig {
endermanAggroEndermitesOnlyIfPlayerSpawned = getBoolean("mobs.enderman.aggressive-towards-endermites-only-spawned-by-player-thrown-ender-pearls", endermanAggroEndermitesOnlyIfPlayerSpawned);
endermanIgnorePlayerDragonHead = getBoolean("mobs.enderman.ignore-players-wearing-dragon-head", endermanIgnorePlayerDragonHead);
endermanDisableStareAggro = getBoolean("mobs.enderman.disable-player-stare-aggression", endermanDisableStareAggro);

View File

@@ -17,7 +17,7 @@ index 528fd87ae1c1c01e13885d88fc8056b0f932fb61..bfad241892b8280d261ab8301245b91b
if (environment.includeIntegrated) {
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index b2bf0ce295520e7dc6f17fd904769e47164675eb..023b3df9b375aa8f91a5f2e7d3592482afac7c0e 100644
index ba690d310ee6b9d3a1b1bf2ae13e016daabeb0fc..3582316c356ea0ed773602ebbe57cad4ad7a6299 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -261,6 +261,7 @@ public class ServerPlayer extends Player {
@@ -44,7 +44,7 @@ index b2bf0ce295520e7dc6f17fd904769e47164675eb..023b3df9b375aa8f91a5f2e7d3592482
}
// CraftBukkit start - World fallback code, either respawn location or global spawn
@@ -2559,5 +2562,13 @@ public class ServerPlayer extends Player {
@@ -2561,5 +2564,13 @@ public class ServerPlayer extends Player {
public void tpsBar(boolean tpsBar) {
this.tpsBar = tpsBar;
}

View File

@@ -20,10 +20,10 @@ index 16b72398645757ca194cb638f46b4528283e2199..03ae6519a523ee73cce664d85074b5f9
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 19e672657e4e091730aa3a36b8b947153fd2244f..1d78eece2653d8ae83924b7fa0985badb43fb214 100644
index 3f6c3dc857bf212b069f4a848d973de281efe64a..0cb6779f0da78830564b7d30ac2c1e018b9a0861 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1443,6 +1443,7 @@ public class PurpurWorldConfig {
@@ -1437,6 +1437,7 @@ public class PurpurWorldConfig {
public double horseMovementSpeedMin = 0.1125D;
public double horseMovementSpeedMax = 0.3375D;
public int horseBreedingTicks = 6000;
@@ -31,7 +31,7 @@ index 19e672657e4e091730aa3a36b8b947153fd2244f..1d78eece2653d8ae83924b7fa0985bad
private void horseSettings() {
horseRidableInWater = getBoolean("mobs.horse.ridable-in-water", horseRidableInWater);
if (PurpurConfig.version < 10) {
@@ -1459,6 +1460,7 @@ public class PurpurWorldConfig {
@@ -1453,6 +1454,7 @@ public class PurpurWorldConfig {
horseMovementSpeedMin = getDouble("mobs.horse.attributes.movement_speed.min", horseMovementSpeedMin);
horseMovementSpeedMax = getDouble("mobs.horse.attributes.movement_speed.max", horseMovementSpeedMax);
horseBreedingTicks = getInt("mobs.horse.breeding-delay-ticks", horseBreedingTicks);

View File

@@ -18,10 +18,10 @@ index 7fda07f5fa756077dab59de95f15b9197e09581a..6a456f52ae529654c15bd3e8ec717b3f
this.gameEvent(GameEvent.MOB_INTERACT, this.eyeBlockPosition());
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 92659117e80aa413f6a8148fcb6bc8adb920e3cd..e140288d7c6125fd952770903c5d8092f1f17ce2 100644
index a986b6a2ef808a4b4796c160820e73b08121a889..ced739309c3ded34dd2182606d74875df9bb0fc0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2431,6 +2431,8 @@ public class PurpurWorldConfig {
@@ -2425,6 +2425,8 @@ public class PurpurWorldConfig {
public boolean zombieVillagerJockeyOnlyBaby = true;
public double zombieVillagerJockeyChance = 0.05D;
public boolean zombieVillagerJockeyTryExistingChickens = true;
@@ -30,7 +30,7 @@ index 92659117e80aa413f6a8148fcb6bc8adb920e3cd..e140288d7c6125fd952770903c5d8092
private void zombieVillagerSettings() {
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
@@ -2444,6 +2446,8 @@ public class PurpurWorldConfig {
@@ -2438,6 +2440,8 @@ public class PurpurWorldConfig {
zombieVillagerJockeyOnlyBaby = getBoolean("mobs.zombie_villager.jockey.only-babies", zombieVillagerJockeyOnlyBaby);
zombieVillagerJockeyChance = getDouble("mobs.zombie_villager.jockey.chance", zombieVillagerJockeyChance);
zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens);

View File

@@ -18,10 +18,10 @@ index 48c1ddbd9f20e6ece121b166c08341006fa15105..c01c60485eba8f57ad6ead20bd3f9101
// this.world.b(1023, new BlockPosition(this), 0);
//int viewDistance = ((WorldServer) this.world).getServer().getViewDistance() * 16; // Paper - updated to use worlds actual view distance incase we have to uncomment this due to removal of player view distance API
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 81a301c36f9a6077d9a4d1a9812d647449836f70..0a311524e420a5c7f976a85c33830ef0bebf0a37 100644
index 79bd3e9550b1077c248c3fbcf5e0b862026bd47e..99f17f15829e7af1e1b78f38cf90e91642c3680f 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2292,6 +2292,7 @@ public class PurpurWorldConfig {
@@ -2286,6 +2286,7 @@ public class PurpurWorldConfig {
public boolean witherBypassMobGriefing = false;
public boolean witherCanRideVehicles = false;
public float witherExplosionRadius = 1.0F;
@@ -29,7 +29,7 @@ index 81a301c36f9a6077d9a4d1a9812d647449836f70..0a311524e420a5c7f976a85c33830ef0
private void witherSettings() {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
@@ -2311,6 +2312,7 @@ public class PurpurWorldConfig {
@@ -2305,6 +2306,7 @@ public class PurpurWorldConfig {
witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing);
witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles);
witherExplosionRadius = (float) getDouble("mobs.wither.explosion-radius", witherExplosionRadius);

View File

@@ -44,10 +44,10 @@ index fc996199616156d04d6ae06ddc3da8d2c159c771..dd76fe8aa67a9c4142295b72b1c3cb78
}
CraftEventFactory.blockDamage = null;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 562d285c40bea5a6decf754cd6d9874ccba6dc28..a5f09879544c053854f229b66103a51e24238910 100644
index 788f444e790f4fb8a5d7f2238509270d18146149..1aaca52309078e0e40fda29079693be640df4308 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2494,4 +2494,27 @@ public class PurpurWorldConfig {
@@ -2488,4 +2488,27 @@ public class PurpurWorldConfig {
private void hungerSettings() {
hungerStarvationDamage = (float) getDouble("hunger.starvation-damage", hungerStarvationDamage);
}

View File

@@ -18,10 +18,10 @@ index dbae4f3b56d0290c6d28b9beaaa3b459754d43e3..676184c48c3abd8e2fb9a04ae3e165dc
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index a5f09879544c053854f229b66103a51e24238910..ee60bcba9ab36a41f294f6c1c4d1d6937151f07d 100644
index 1aaca52309078e0e40fda29079693be640df4308..fe13c25efe4c3696f20771f1bbdf256c56934a24 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2517,4 +2517,11 @@ public class PurpurWorldConfig {
@@ -2511,4 +2511,11 @@ public class PurpurWorldConfig {
});
conduitBlocks = conduitBlockList.toArray(Block[]::new);
}