mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@4d20922 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#11024) PaperMC/Paper@2fa5e0e Fix horse inventories (#11028) PaperMC/Paper@62ed302 Fix entity distance check when applying knockback closes #1553
This commit is contained in:
@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
|
||||
version = 1.21-R0.1-SNAPSHOT
|
||||
|
||||
mcVersion = 1.21
|
||||
paperCommit = 8d91b859cbeb64ecbc3916249fce26a085b320aa
|
||||
paperCommit = 62ed302bf400a21b601bdb9382325eab31612f32
|
||||
|
||||
org.gradle.caching = true
|
||||
org.gradle.parallel = true
|
||||
|
||||
@@ -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 bbc4d7d3ca84642828f9a3f788ca26bba900d15b..205b684223cfa4cf0b3938e11926e854509bb7c9 100644
|
||||
index c043d239c449bf4bb13a24467f2f6c67b4d28d2d..c0911b100176f1a797a336a35a374c05a4769a2c 100644
|
||||
--- a/src/main/java/org/bukkit/Server.java
|
||||
+++ b/src/main/java/org/bukkit/Server.java
|
||||
@@ -2251,6 +2251,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
@@ -2254,6 +2254,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
}
|
||||
// Paper end
|
||||
|
||||
|
||||
@@ -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 b9b751ea0d11381e846d5f35f39f285c075c171a..6ee89d60fa560b38cef94d4516fe861f2776bf34 100644
|
||||
index 4705c1d91e39fcc3c608b1f1a38a30d063ccf06e..bd5147f2c1afd8de5a4be18688e2e95f8719ec7e 100644
|
||||
--- a/src/main/java/org/bukkit/Bukkit.java
|
||||
+++ b/src/main/java/org/bukkit/Bukkit.java
|
||||
@@ -2907,4 +2907,15 @@ public final class Bukkit {
|
||||
@@ -2910,4 +2910,15 @@ public final class Bukkit {
|
||||
public static Server.Spigot spigot() {
|
||||
return server.spigot();
|
||||
}
|
||||
@@ -25,10 +25,10 @@ index b9b751ea0d11381e846d5f35f39f285c075c171a..6ee89d60fa560b38cef94d4516fe861f
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
||||
index 205b684223cfa4cf0b3938e11926e854509bb7c9..6ed3d3108f3124151c863448c01a2d2e6c0ef53d 100644
|
||||
index c0911b100176f1a797a336a35a374c05a4769a2c..f78b65dff2246c13d653296f2fda76848579081d 100644
|
||||
--- a/src/main/java/org/bukkit/Server.java
|
||||
+++ b/src/main/java/org/bukkit/Server.java
|
||||
@@ -2552,4 +2552,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
@@ -2555,4 +2555,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
*/
|
||||
boolean isOwnedByCurrentRegion(@NotNull Entity entity);
|
||||
// Paper end - Folia region threading API
|
||||
|
||||
@@ -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 6ee89d60fa560b38cef94d4516fe861f2776bf34..7c57fe9ce3ee80816a4d2bfe5af6920cebe39c85 100644
|
||||
index bd5147f2c1afd8de5a4be18688e2e95f8719ec7e..2bdd85284ae4c10fe26594be85aa9d8aa699b84f 100644
|
||||
--- a/src/main/java/org/bukkit/Bukkit.java
|
||||
+++ b/src/main/java/org/bukkit/Bukkit.java
|
||||
@@ -2917,5 +2917,14 @@ public final class Bukkit {
|
||||
@@ -2920,5 +2920,14 @@ public final class Bukkit {
|
||||
public static String getServerName() {
|
||||
return server.getServerName();
|
||||
}
|
||||
@@ -24,10 +24,10 @@ index 6ee89d60fa560b38cef94d4516fe861f2776bf34..7c57fe9ce3ee80816a4d2bfe5af6920c
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
||||
index 6ed3d3108f3124151c863448c01a2d2e6c0ef53d..1cc70661901834cc4c00e8772ae57743d6007b74 100644
|
||||
index f78b65dff2246c13d653296f2fda76848579081d..988d00a4ad9330e338240db6b0bbe2b5157b342c 100644
|
||||
--- a/src/main/java/org/bukkit/Server.java
|
||||
+++ b/src/main/java/org/bukkit/Server.java
|
||||
@@ -2560,5 +2560,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
@@ -2563,5 +2563,12 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
*/
|
||||
@NotNull
|
||||
String getServerName();
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Full netherite armor grants fire resistance
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/event/entity/EntityPotionEffectEvent.java b/src/main/java/org/bukkit/event/entity/EntityPotionEffectEvent.java
|
||||
index c95943a0c6a2cc7685b0e2601460d92fa1b4b2f5..30ee288c516eb4f532ae5b2550c4ee4957833396 100644
|
||||
index 8fdfcbc7d20fe0af6b220ab94516247093637621..f6a8928408e11a5ae723366e4ea1280dfcc6111e 100644
|
||||
--- a/src/main/java/org/bukkit/event/entity/EntityPotionEffectEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/entity/EntityPotionEffectEvent.java
|
||||
@@ -217,6 +217,12 @@ public class EntityPotionEffectEvent extends EntityEvent implements Cancellable
|
||||
@@ -216,6 +216,12 @@ public class EntityPotionEffectEvent extends EntityEvent implements Cancellable
|
||||
* When all effects are removed due to a bucket of milk.
|
||||
*/
|
||||
MILK,
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Added the ability to add combustible items
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
|
||||
index 7c57fe9ce3ee80816a4d2bfe5af6920cebe39c85..11c99892e9537e4e84b598ee082cef1afe56f33a 100644
|
||||
index 2bdd85284ae4c10fe26594be85aa9d8aa699b84f..5fd070d4839e5b91cafeefdb9316e3bba102e5be 100644
|
||||
--- a/src/main/java/org/bukkit/Bukkit.java
|
||||
+++ b/src/main/java/org/bukkit/Bukkit.java
|
||||
@@ -2926,5 +2926,24 @@ public final class Bukkit {
|
||||
@@ -2929,5 +2929,24 @@ public final class Bukkit {
|
||||
public static boolean isLagging() {
|
||||
return server.isLagging();
|
||||
}
|
||||
@@ -34,10 +34,10 @@ index 7c57fe9ce3ee80816a4d2bfe5af6920cebe39c85..11c99892e9537e4e84b598ee082cef1a
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
||||
index 1cc70661901834cc4c00e8772ae57743d6007b74..cb20702273cfb21dbd00f93138c166f018d75971 100644
|
||||
index 988d00a4ad9330e338240db6b0bbe2b5157b342c..1724bedbcdc67bfcc2d2d2be6b805901be5df169 100644
|
||||
--- a/src/main/java/org/bukkit/Server.java
|
||||
+++ b/src/main/java/org/bukkit/Server.java
|
||||
@@ -2567,5 +2567,20 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
@@ -2570,5 +2570,20 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
* @return True if lagging
|
||||
*/
|
||||
boolean isLagging();
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Debug Marker API
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
|
||||
index 11c99892e9537e4e84b598ee082cef1afe56f33a..0430e8238609336a4fa0bd220a7c44f6af264945 100644
|
||||
index 5fd070d4839e5b91cafeefdb9316e3bba102e5be..4a870c63cf240c4fa89534bf3ec1b06393efb967 100644
|
||||
--- a/src/main/java/org/bukkit/Bukkit.java
|
||||
+++ b/src/main/java/org/bukkit/Bukkit.java
|
||||
@@ -2945,5 +2945,89 @@ public final class Bukkit {
|
||||
@@ -2948,5 +2948,89 @@ public final class Bukkit {
|
||||
public static void removeFuel(@NotNull Material material) {
|
||||
server.removeFuel(material);
|
||||
}
|
||||
@@ -99,10 +99,10 @@ index 11c99892e9537e4e84b598ee082cef1afe56f33a..0430e8238609336a4fa0bd220a7c44f6
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
||||
index cb20702273cfb21dbd00f93138c166f018d75971..ceb81148f5fd17f00d1a0fb2df1f31c45aa6807d 100644
|
||||
index 1724bedbcdc67bfcc2d2d2be6b805901be5df169..1d594c256200d46882fafce5d2b33e60f0fa3a59 100644
|
||||
--- a/src/main/java/org/bukkit/Server.java
|
||||
+++ b/src/main/java/org/bukkit/Server.java
|
||||
@@ -2582,5 +2582,75 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
@@ -2585,5 +2585,75 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
||||
* @param material The material that will no longer be a fuel
|
||||
*/
|
||||
public void removeFuel(@NotNull Material material);
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Stonecutter damage
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java b/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java
|
||||
index ca634147935c3bda8abad5dc73327e51381793a8..02c6a087dc41ffb004bcc20284135844188f8142 100644
|
||||
index ef5b2a0f18c1c126db0b0c4a4d2a57483680665a..e6c8ffc2583af754eaedc55160ef45c61c22e213 100644
|
||||
--- a/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java
|
||||
@@ -303,7 +303,8 @@ public class EntityDamageEvent extends EntityEvent implements Cancellable {
|
||||
@@ -307,7 +307,8 @@ public class EntityDamageEvent extends EntityEvent implements Cancellable {
|
||||
WORLD_BORDER,
|
||||
/**
|
||||
* Damage caused when an entity contacts a block such as a Cactus,
|
||||
|
||||
@@ -267,10 +267,10 @@ index e85b9bb3f9c225d289a4959921970b9963881199..c1e2d3a75b9d4710ab6d8b5c62af4bc1
|
||||
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index d70c5546c8bd6f364fad9b24880b6867efdab644..aa38e21c30ae104e0f775bd29da4a49366d009f8 100644
|
||||
index 3137391cadef7c67019561e65fedd0664e689eae..eb5ca67ebfd008a0fcc3ab3fc2452a27d7b0a9f8 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -504,7 +504,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -498,7 +498,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
|
||||
@Override
|
||||
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Purpur client support
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 89ed20e9c629cf39a24c7a0ce5c4fee41fc64fd5..92e9a5e38cc60e3ef6d7e2216bf4a85cb2464cdd 100644
|
||||
index 9d1e68c09fa7093cf0f6fa636f90cb15a44cbb38..c8f235df2cfe13458d2b259cdd4a4741db1839dd 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -301,6 +301,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -43,10 +43,10 @@ index b43f87ff4b9853b5d4bbea5ff9686d64d9d0d26b..b66d4047b5e529f5f737efb0ff1edda8
|
||||
try {
|
||||
String channels = payload.toString(com.google.common.base.Charsets.UTF_8);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 7eea190ce8a62960ecc42ff56a4ef71b754184fb..3e912a8cf20c7a97efcbcb4fafa41827a71fa45b 100644
|
||||
index d01b45a48d412e3cb591acee101730704574448a..fcbed2db7a1bfa8e99fa5138a82a4deb3e7fcce9 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -3553,4 +3553,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -3554,4 +3554,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
((ca.spottedleaf.moonrise.patches.chunk_system.player.ChunkSystemServerPlayer)this.getHandle())
|
||||
.moonrise$getViewDistanceHolder().setSendViewDistance(viewDistance);
|
||||
}
|
||||
|
||||
@@ -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 92e9a5e38cc60e3ef6d7e2216bf4a85cb2464cdd..47afcbc699a992358871fe90929f71b4d47d9601 100644
|
||||
index c8f235df2cfe13458d2b259cdd4a4741db1839dd..3b55fcbbc442745bfae4b57b9c0029632d764183 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -2004,6 +2004,26 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -2006,6 +2006,26 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
this.lastSentExp = -1; // CraftBukkit - Added to reset
|
||||
}
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ index e079f4db4e4738f60a6fdbdbf5e4d1baf593a62f..0d07bc9b57336191ba788fb1eed24010
|
||||
public LevelChunk getChunkIfLoaded(int x, int z) {
|
||||
return this.chunkSource.getChunkAtIfLoadedImmediately(x, z); // Paper - Use getChunkIfLoadedImmediately
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 47afcbc699a992358871fe90929f71b4d47d9601..ae41c955ec6cfe284fec5f8e79cb827ea20facc0 100644
|
||||
index 3b55fcbbc442745bfae4b57b9c0029632d764183..d21fd856d41f4047e449baaf910eaa9d37af5ca8 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -806,6 +806,15 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -190,7 +190,7 @@ index 09fdea983772612ef3fff6b2da3cf469a34e4ec0..aa76a24421cdb3908a3544d92eb3d1e3
|
||||
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 b9cef93fe382b666bec04ca95eeaf2d8acbb3c40..1da16005b98be1fc01f277407579516df591e50e 100644
|
||||
index 77d2d93966b99f3dfa2b47a505db74dd2dacfb1e..d42e07a1317248784f5358626bc7ef5649ff0abe 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -237,9 +237,9 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -223,7 +223,7 @@ index b9cef93fe382b666bec04ca95eeaf2d8acbb3c40..1da16005b98be1fc01f277407579516d
|
||||
|
||||
@Override
|
||||
protected void checkFallDamage(double heightDifference, boolean onGround, BlockState state, BlockPos landedPosition) {
|
||||
@@ -3503,8 +3504,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3538,8 +3539,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.pushEntities();
|
||||
this.level().getProfiler().pop();
|
||||
// Paper start - Add EntityMoveEvent
|
||||
@@ -236,7 +236,7 @@ index b9cef93fe382b666bec04ca95eeaf2d8acbb3c40..1da16005b98be1fc01f277407579516d
|
||||
Location from = new Location(this.level().getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO);
|
||||
Location to = new Location(this.level().getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot());
|
||||
io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone());
|
||||
@@ -3514,6 +3517,21 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3549,6 +3552,21 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch());
|
||||
}
|
||||
}
|
||||
@@ -1966,10 +1966,10 @@ index caf4120721be8f2f7e2d737abbf73296cbe170b5..7357680b4fdf9250e086ba01531ade2b
|
||||
this.turtle.setSpeed(Mth.lerp(0.125F, this.turtle.getSpeed(), f1));
|
||||
this.turtle.setDeltaMovement(this.turtle.getDeltaMovement().add(0.0D, (double) this.turtle.getSpeed() * d1 * 0.1D, 0.0D));
|
||||
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 c382a8f95f612db881b9cdbd07316d1ca1cd9c4b..1ae38914582cfb17da882304c8bcba84a7793f79 100644
|
||||
index 31d7beca9797ab1a26792c3e30171a751c3846b1..a643c9043c9685c01ff858bc6002686fa527bbfa 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -126,9 +126,32 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -127,9 +127,32 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
this.setPathfindingMalus(PathType.DANGER_POWDER_SNOW, -1.0F);
|
||||
}
|
||||
|
||||
@@ -2002,7 +2002,7 @@ index c382a8f95f612db881b9cdbd07316d1ca1cd9c4b..1ae38914582cfb17da882304c8bcba84
|
||||
this.goalSelector.addGoal(1, new TamableAnimal.TamableAnimalPanicGoal(1.5D, DamageTypeTags.PANIC_ENVIRONMENTAL_CAUSES));
|
||||
this.goalSelector.addGoal(2, new SitWhenOrderedToGoal(this));
|
||||
this.goalSelector.addGoal(3, new Wolf.WolfAvoidEntityGoal<>(this, Llama.class, 24.0F, 1.5D, 1.5D));
|
||||
@@ -140,6 +163,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -141,6 +164,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
this.goalSelector.addGoal(9, new BegGoal(this, 8.0F));
|
||||
this.goalSelector.addGoal(10, new LookAtPlayerGoal(this, Player.class, 8.0F));
|
||||
this.goalSelector.addGoal(10, new RandomLookAroundGoal(this));
|
||||
@@ -2077,10 +2077,10 @@ index 69986f75d3cf729204cca0c7e5428536af31f695..49dccfc0010b5727250f7e2759150240
|
||||
this.level().getProfiler().pop();
|
||||
this.level().getProfiler().push("allayActivityUpdate");
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
index 792d9039ac0561464c666977ff8308e4c629e5eb..6af72246e7f9bb845a497ef0f3394e634996fd40 100644
|
||||
index 729fd2d52dd48e25ee7a077a3ffafc80ecef7c9f..8fcaf6860ad3c21ea13649219b91a1eb3490242b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
@@ -78,6 +78,23 @@ public class Armadillo extends Animal {
|
||||
@@ -82,6 +82,23 @@ public class Armadillo extends Animal {
|
||||
return Mob.createMobAttributes().add(Attributes.MAX_HEALTH, 12.0D).add(Attributes.MOVEMENT_SPEED, 0.14D);
|
||||
}
|
||||
|
||||
@@ -2176,10 +2176,10 @@ index 01a0731e92d39c8718538244e34a271fb8717fc2..384fb16dac5eede49d89ad9fdcddcec4
|
||||
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
index 147974651d37e81d81ca97bfa31c9df9867492be..32c10771db71c1cd190769614edd1c24762d32c6 100644
|
||||
index 8941752e4600ccd11b3fa1147b2e414785589eed..8fd7e6308b99328dce559d9140cbe182e3121801 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
@@ -84,6 +84,13 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
@@ -87,6 +87,13 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
navigation.setCanWalkOverFences(true);
|
||||
}
|
||||
|
||||
@@ -3117,10 +3117,10 @@ index 61004bb35b0edcc4578b8a9c1b280096466ba279..d4aac30f9c9b356cec9fc1450a9e684f
|
||||
if (this.nextHeightOffsetChangeTick <= 0) {
|
||||
this.nextHeightOffsetChangeTick = 100;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Bogged.java b/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
index 6e290d67b00c88ecd2cf2ce5f612f52ebda9e280..3fc3ab534b00f26cf2f1a79c20909f25021164a1 100644
|
||||
index 9d50b9ac8084f3db1844cc7ad1ce9153614ff9d9..a378635f3310b85b38badf8258b20aa3e12a8da0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
@@ -45,6 +45,23 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
@@ -48,6 +48,23 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
super(type, world);
|
||||
}
|
||||
|
||||
@@ -3173,13 +3173,13 @@ index 87e4b300ac248f6c13d9b4a8f24fd78b24b565b4..504996c8309fcd11de1dd166dee12d7e
|
||||
public boolean doHurtTarget(Entity target) {
|
||||
if (super.doHurtTarget(target)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index cb1b19e2e0d8f0744b2355b8f4da0206b196b19c..bc9db0ebd4280fe4dcb43bc47d5b7fc1f831394b 100644
|
||||
index d1041f2a4f1b3ea29ad532006e18cdc30c5019fa..14409ad5a039646e054345abe06d8d510e81f9ff 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -61,21 +61,98 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
public int explosionRadius = 3;
|
||||
private int droppedSkulls;
|
||||
private Player entityIgniter; // CraftBukkit
|
||||
public Entity entityIgniter; // CraftBukkit
|
||||
+ // Purpur start
|
||||
+ private int spacebarCharge = 0;
|
||||
+ private int prevSpacebarCharge = 0;
|
||||
@@ -5025,10 +5025,10 @@ index 0af34e0f9c9696fbcb11b12fb27472ef17ad532a..d514faecb9e6b244aa043383fa072316
|
||||
this.openTradingScreen(player, this.getDisplayName(), 1);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 54ba25632c2a9e1c93a5b3a0b92e5280864c49d6..92200ab909a9ecabd75e98d4e15e8759dd2b9c86 100644
|
||||
index 09bcbc0ae36e4e69fee87a7e0c49acf496117a39..509d81d6d34137fc62c1eda0e550ccde56fb05a4 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -207,6 +207,19 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -208,6 +208,19 @@ public abstract class Player extends LivingEntity {
|
||||
}
|
||||
// CraftBukkit end
|
||||
|
||||
@@ -5117,10 +5117,10 @@ index 2cde808bfa797256409879505ba205a71f381981..84479dad6078a2a12e6b977185bdbbe7
|
||||
+ // 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 bd6fee3e3ad9116802ff8bb57bfa741b881c4057..9e5d4e8a70aec8619db68d75ef3447cf39e239b9 100644
|
||||
index 9c7cd9387f90d061aec76f7f0451a1da8b42ea3d..40928d1b5b7c585a52c136a38de1f49a4b9d5322 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -593,6 +593,15 @@ public class CraftEventFactory {
|
||||
@@ -594,6 +594,15 @@ public class CraftEventFactory {
|
||||
// Paper end
|
||||
craftServer.getPluginManager().callEvent(event);
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ index aa76a24421cdb3908a3544d92eb3d1e3c2ebedc4..8211c152e6f4232e82e452b08047e457
|
||||
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 1da16005b98be1fc01f277407579516df591e50e..930b3d5e75fd1c1ec717904070b58e66b737c246 100644
|
||||
index d42e07a1317248784f5358626bc7ef5649ff0abe..d6adbad99a6d5b94ce0c62bb2438332a0eaffa80 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -314,6 +314,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -463,10 +463,10 @@ index 7357680b4fdf9250e086ba01531ade2bad7eb07b..60736df3b726c6a408c8b6aae6f0bd3e
|
||||
this.entityData.set(Turtle.HOME_POS, pos.immutable()); // Paper - called with mutablepos...
|
||||
}
|
||||
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 1ae38914582cfb17da882304c8bcba84a7793f79..3268f07668eaa0322aeb77a158dfb2996d16dfcb 100644
|
||||
index a643c9043c9685c01ff858bc6002686fa527bbfa..133aa48278ca51c74b5eb8900202e7076119e445 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -148,6 +148,12 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -149,6 +149,12 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
@@ -497,10 +497,10 @@ index 49dccfc0010b5727250f7e27591502408c903739..902882ca639eee6efe102ea70e182fb1
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
index 6af72246e7f9bb845a497ef0f3394e634996fd40..196de6ac2ba44478f6a2239eb2657957806d7ccc 100644
|
||||
index 8fcaf6860ad3c21ea13649219b91a1eb3490242b..3cc0d4f7a8483fc5133ff3a3e42e0bb0f01bca3c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
@@ -93,6 +93,12 @@ public class Armadillo extends Animal {
|
||||
@@ -97,6 +97,12 @@ public class Armadillo extends Animal {
|
||||
public boolean isControllable() {
|
||||
return level().purpurConfig.armadilloControllable;
|
||||
}
|
||||
@@ -531,10 +531,10 @@ index 384fb16dac5eede49d89ad9fdcddcec442f0e7ca..0cf2dbc7d4ce89bddc8f23095272532c
|
||||
public Map<String, Vector3f> getModelRotationValues() {
|
||||
return this.modelRotationValues;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
index 32c10771db71c1cd190769614edd1c24762d32c6..e0c981cef6992c4a83813c6f77fe11841fe11c1c 100644
|
||||
index 8fd7e6308b99328dce559d9140cbe182e3121801..f71560b8183672640f00e00479e89237ac96558d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
@@ -316,6 +316,23 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
@@ -319,6 +319,23 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
return this.dashCooldown;
|
||||
}
|
||||
|
||||
@@ -883,10 +883,10 @@ index d4aac30f9c9b356cec9fc1450a9e684faf030391..089edbcc1c92783e61e56beb32c47102
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Bogged.java b/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
index 3fc3ab534b00f26cf2f1a79c20909f25021164a1..1dae6f96fe4dcac6d251639c6226a1d15b5ae691 100644
|
||||
index a378635f3310b85b38badf8258b20aa3e12a8da0..71efea7a6bfb5662890dae5faae27a3c80afad2b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
@@ -60,6 +60,12 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
@@ -63,6 +63,12 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
public boolean isControllable() {
|
||||
return level().purpurConfig.boggedControllable;
|
||||
}
|
||||
@@ -917,7 +917,7 @@ index 504996c8309fcd11de1dd166dee12d7e7db8db56..00c48623e8d53e4a00b9c3e40f6fd2c5
|
||||
public boolean doHurtTarget(Entity target) {
|
||||
if (super.doHurtTarget(target)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index bc9db0ebd4280fe4dcb43bc47d5b7fc1f831394b..2e14fb23e36a335bbff0b54cf63c5c096869ad25 100644
|
||||
index 14409ad5a039646e054345abe06d8d510e81f9ff..e702ba0adfe6b6ace68a9f94f6110fe0d4d0258b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -252,6 +252,12 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
|
||||
@@ -37,10 +37,10 @@ index 5263a5eb7860f3b0ae18dbb65f562593630e01ee..ce62bea3341dc7b653180da74b156a59
|
||||
|
||||
public boolean isWhiteListed(GameProfile profile) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 92200ab909a9ecabd75e98d4e15e8759dd2b9c86..9cfaab798a08b749f0920de0e2a9497d55d8d9f2 100644
|
||||
index 509d81d6d34137fc62c1eda0e550ccde56fb05a4..72e99a9d1058e65af2553ac1f3a62f92595e4c8f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -196,6 +196,7 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -197,6 +197,7 @@ public abstract class Player extends LivingEntity {
|
||||
private int currentImpulseContextResetGraceTime;
|
||||
public boolean affectsSpawning = true; // Paper - Affects Spawning API
|
||||
public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage
|
||||
|
||||
@@ -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 ae41c955ec6cfe284fec5f8e79cb827ea20facc0..d39ade65011030b9079bf6001196dd411064e52b 100644
|
||||
index d21fd856d41f4047e449baaf910eaa9d37af5ca8..dd623a9059500b57bebf5e9f065f55647c6df403 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -2367,8 +2367,68 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -2369,8 +2369,68 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
|
||||
public void resetLastActionTime() {
|
||||
this.lastActionTime = Util.getMillis();
|
||||
@@ -192,10 +192,10 @@ index aecb0ad814586bfc5e56755ee14379a69388b38c..98a2a469e3d62f963968ef1be3e97892
|
||||
if (baseEntity == null) {
|
||||
if (this.isCombat && (!targetEntity.canBeSeenAsEnemy() || targetEntity.level().getDifficulty() == Difficulty.PEACEFUL)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index ce184181529a9743cc6a7685dcb7cf572be65350..9ef4ab973508eb139f7a44feb4bd484d8e0e03cd 100644
|
||||
index 72e99a9d1058e65af2553ac1f3a62f92595e4c8f..5e404e470a28f04f5659503bcc6b66caf1880f3f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -202,6 +202,13 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -203,6 +203,13 @@ public abstract class Player extends LivingEntity {
|
||||
public boolean fauxSleeping;
|
||||
public int oldLevel = -1;
|
||||
|
||||
@@ -223,7 +223,7 @@ index 70c2017400168d4fef3c14462798edcfed58d4bf..3c84722c1075290b5301aa5122936d5e
|
||||
if (range < 0.0 || d < range * range) {
|
||||
return true;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 3e912a8cf20c7a97efcbcb4fafa41827a71fa45b..745e57d58966dbe60b2301818c23d25eecdb6dc2 100644
|
||||
index fcbed2db7a1bfa8e99fa5138a82a4deb3e7fcce9..e59d4ef4b3b2e3eaa2d592bb8e9d33259a8a9276 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -576,10 +576,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -243,7 +243,7 @@ index 3e912a8cf20c7a97efcbcb4fafa41827a71fa45b..745e57d58966dbe60b2301818c23d25e
|
||||
if (this.getHandle().connection == null) return; // Paper - Updates are possible before the player has fully joined
|
||||
for (ServerPlayer player : (List<ServerPlayer>) this.server.getHandle().players) {
|
||||
if (player.getBukkitEntity().canSee(this)) {
|
||||
@@ -3559,5 +3564,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -3560,5 +3565,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
public boolean usesPurpurClient() {
|
||||
return getHandle().purpurClient;
|
||||
}
|
||||
@@ -288,7 +288,7 @@ index 5f51a9d16912ecbd9d015f5158d50563904a461f..d80e5f2280aa156bbe455f9638d84f82
|
||||
|
||||
public static int barrelRows = 3;
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 00c74f8b834b20e71299329833395736a3073437..05b8c7da71454399a9e7d0732885326ddb6c9a15 100644
|
||||
index 65cbd35892ab48fccda9bccf2b4dd66be5c84a0d..42bff6f2d864a31dcb1c0087a4e0c9027ece001e 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -91,6 +91,24 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -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 d39ade65011030b9079bf6001196dd411064e52b..71d96fad8cceb9f5699620510b9b8cc4a6fa94f2 100644
|
||||
index dd623a9059500b57bebf5e9f065f55647c6df403..21de886c1b35d3b21fe14a46ac190ab6e94610cc 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1181,6 +1181,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1183,6 +1183,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
if (this.isInvulnerableTo(source)) {
|
||||
return false;
|
||||
} else {
|
||||
@@ -149,7 +149,7 @@ index a768b07dae4bf75b68e3bc1d3de4b68fc7d23842..1b825b9012e24b12f83883f2056839c1
|
||||
protected ResourceKey<LootTable> drops;
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 8db29e6a4abe42ccea3294aaad5258a88518a69b..437aebf391819fac0d17b1f21d179282a5ff3a4d 100644
|
||||
index c5b3a04d81834d6bdf7c4acd06ce4929d7a25769..2591b4f0d0e4e4d9e77efb821c9ae775182713b6 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -96,6 +96,68 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Disable loot drops on death by cramming
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 930b3d5e75fd1c1ec717904070b58e66b737c246..476fedac37b1cb3b6b75417996685ad0b38b26f4 100644
|
||||
index d6adbad99a6d5b94ce0c62bb2438332a0eaffa80..e9d8e80268c8bfa1cac3e1f6b986673605f36d91 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1836,7 +1836,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1853,7 +1853,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
boolean flag = this.lastHurtByPlayerTime > 0;
|
||||
|
||||
this.dropEquipment(); // CraftBukkit - from below
|
||||
@@ -18,7 +18,7 @@ index 930b3d5e75fd1c1ec717904070b58e66b737c246..476fedac37b1cb3b6b75417996685ad0
|
||||
this.dropFromLootTable(damageSource, flag);
|
||||
// Paper start
|
||||
final boolean prev = this.clearEquipmentSlots;
|
||||
@@ -1845,6 +1846,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1862,6 +1863,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
// Paper end
|
||||
this.dropCustomDeathLoot(world, damageSource, flag);
|
||||
this.clearEquipmentSlots = prev; // Paper
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add player death exp control options
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index a561079c018225e1189839dc2ec0acd588aaa1d0..0d29de1fdccc28ed5861ed236a3df80d0021a180 100644
|
||||
index 5e404e470a28f04f5659503bcc6b66caf1880f3f..9dd8dc8f0dc218c5a021d84649f364cd2f1b3a45 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -1973,9 +1973,19 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -1976,9 +1976,19 @@ public abstract class Player extends LivingEntity {
|
||||
@Override
|
||||
protected int getBaseExperienceReward() {
|
||||
if (!this.level().getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) && !this.isSpectator()) {
|
||||
|
||||
@@ -18,10 +18,10 @@ index bb16b73b6a99ca8fa1b25cc1f8a0aa77c5009d27..04c6736d792f9341e21ff76f0ee8efaf
|
||||
&& (!(this instanceof Player player) || !player.getAbilities().invulnerable))) {
|
||||
// Paper end - Configurable nether ceiling damage
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 476fedac37b1cb3b6b75417996685ad0b38b26f4..c8e31fd851026123e2938052cad3c5d227aa12cf 100644
|
||||
index e9d8e80268c8bfa1cac3e1f6b986673605f36d91..515bb0229516da288699af5296273571e8a1aa8b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -2581,7 +2581,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -2616,7 +2616,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
||||
@Override
|
||||
protected void onBelowWorld() {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Dispenser curse of binding protection
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index c8e31fd851026123e2938052cad3c5d227aa12cf..cfd22afaf82b1f88d3d67e11b69ae82af41231cf 100644
|
||||
index 515bb0229516da288699af5296273571e8a1aa8b..c34aa707c306c52c28e6168218ef0177fc9ef624 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -4502,6 +4502,12 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -4537,6 +4537,12 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
return EquipmentSlot.MAINHAND;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Implement elytra settings
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index cfd22afaf82b1f88d3d67e11b69ae82af41231cf..7f69f6bd5d4b3e67dc222deec851372e1d40ba98 100644
|
||||
index c34aa707c306c52c28e6168218ef0177fc9ef624..e503b9e82ab62652d959b2e0c7d7738706222468 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -3563,7 +3563,16 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3598,7 +3598,16 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
int j = i / 10;
|
||||
|
||||
if (j % 2 == 0) {
|
||||
|
||||
@@ -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 71d96fad8cceb9f5699620510b9b8cc4a6fa94f2..128c0daae941cda386417dfa452e97a9b056441d 100644
|
||||
index 21de886c1b35d3b21fe14a46ac190ab6e94610cc..a81b8f310a21208269368cedeb8bc03ba9030137 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -3026,4 +3026,26 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -3035,4 +3035,26 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
return (CraftPlayer) super.getBukkitEntity();
|
||||
}
|
||||
// CraftBukkit end
|
||||
@@ -36,7 +36,7 @@ index 71d96fad8cceb9f5699620510b9b8cc4a6fa94f2..128c0daae941cda386417dfa452e97a9
|
||||
+ // 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 0c607578b493496e79ea08cdf752828252a66c47..d207f9107b2d78bbe5f4eb400f825829ea4f4688 100644
|
||||
index e503b9e82ab62652d959b2e0c7d7738706222468..bfb6f5b07ac201cd99eb39bcdbd02353dd4b810c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -462,6 +462,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -48,7 +48,7 @@ index 0c607578b493496e79ea08cdf752828252a66c47..d207f9107b2d78bbe5f4eb400f825829
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index fd3a0e995deb66afeb2675460e12012b4b5649a6..3f9a61add98784758272cc0e81d807550a57bae1 100644
|
||||
index 65b5ddde3496d1b04bedd410675a548f662aa073..7e416c24a336b53a71b53c020171a32adca6c95c 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -241,6 +241,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Totems work in inventory
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 131f6aa7678d026c3ea64006693439a45019be95..c0e0725408bf0a3937e19e28b2c05c2b23c9cdf7 100644
|
||||
index bfb6f5b07ac201cd99eb39bcdbd02353dd4b810c..13d29b9c6f683f716cbeb965bab96bc257b9e9e0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1635,6 +1635,18 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1652,6 +1652,18 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add adjustable breeding cooldown to config
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Animal.java b/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
index e96fca314bebea5fcdb684d3478af1b6dc5f13cf..5ab29081ab9f5dcf355d1dac2f2a854149ab4699 100644
|
||||
index 1808e1b01afa3041a54c9c9a7586d4d61960527a..5b523f3fa323378a8f96f58a9e252d2ec0d114a7 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
@@ -146,7 +146,7 @@ public abstract class Animal extends AgeableMob {
|
||||
@@ -147,7 +147,7 @@ public abstract class Animal extends AgeableMob {
|
||||
if (this.isFood(itemstack)) {
|
||||
int i = this.getAge();
|
||||
|
||||
@@ -17,7 +17,7 @@ index e96fca314bebea5fcdb684d3478af1b6dc5f13cf..5ab29081ab9f5dcf355d1dac2f2a8541
|
||||
final ItemStack breedCopy = itemstack.copy(); // Paper - Fix EntityBreedEvent copying
|
||||
this.usePlayerItem(player, hand, itemstack);
|
||||
this.setInLove(player, breedCopy); // Paper - Fix EntityBreedEvent copying
|
||||
@@ -234,12 +234,20 @@ public abstract class Animal extends AgeableMob {
|
||||
@@ -235,12 +235,20 @@ public abstract class Animal extends AgeableMob {
|
||||
AgeableMob entityageable = this.getBreedOffspring(world, other);
|
||||
|
||||
if (entityageable != null) {
|
||||
@@ -42,7 +42,7 @@ index e96fca314bebea5fcdb684d3478af1b6dc5f13cf..5ab29081ab9f5dcf355d1dac2f2a8541
|
||||
EntityBreedEvent entityBreedEvent = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityBreedEvent(entityageable, this, other, breeder, this.breedItem, experience);
|
||||
if (entityBreedEvent.isCancelled()) {
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index edd0f51826ebf77a790bcb8c465a116ab9830922..9810b1cb4c771a01df93fd45e2f94019edabf6a5 100644
|
||||
index b06d7ac5bb109bf88cf526d3bf5ac1416927a03b..cf9525f94058e9c3e84d71b08b49c21c960f6e99 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -181,6 +181,49 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||
|
||||
@@ -22,10 +22,10 @@ index 0a608418f87b71d5d71706712e1f82da0d7e4d34..03e7ca83e4c28dfaa5b52bcb100bd542
|
||||
// CraftBukkit end
|
||||
world.broadcastEntityEvent(entityvillager2, (byte) 12);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Animal.java b/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
index 5ab29081ab9f5dcf355d1dac2f2a854149ab4699..27250278968233b3de05c365ae304a4121887160 100644
|
||||
index 5b523f3fa323378a8f96f58a9e252d2ec0d114a7..91c1093ecef7c8917b69674ffc936b4ae71871e2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
@@ -42,6 +42,7 @@ public abstract class Animal extends AgeableMob {
|
||||
@@ -43,6 +43,7 @@ public abstract class Animal extends AgeableMob {
|
||||
@Nullable
|
||||
public UUID loveCause;
|
||||
public ItemStack breedItem; // CraftBukkit - Add breedItem variable
|
||||
@@ -33,7 +33,7 @@ index 5ab29081ab9f5dcf355d1dac2f2a854149ab4699..27250278968233b3de05c365ae304a41
|
||||
|
||||
protected Animal(EntityType<? extends Animal> type, Level world) {
|
||||
super(type, world);
|
||||
@@ -275,8 +276,10 @@ public abstract class Animal extends AgeableMob {
|
||||
@@ -276,8 +277,10 @@ public abstract class Animal extends AgeableMob {
|
||||
entityplayer.awardStat(Stats.ANIMALS_BRED);
|
||||
CriteriaTriggers.BRED_ANIMALS.trigger(entityplayer, this, entityanimal, entityageable);
|
||||
} // Paper
|
||||
@@ -284,10 +284,10 @@ index 60736df3b726c6a408c8b6aae6f0bd3e3efd32b0..751fe2afdea34a6776d428675c392411
|
||||
this.entityData.set(Turtle.HOME_POS, pos.immutable()); // Paper - called with mutablepos...
|
||||
}
|
||||
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 3268f07668eaa0322aeb77a158dfb2996d16dfcb..da375fb6907e0c46ed176bc76a84f2666227547c 100644
|
||||
index 133aa48278ca51c74b5eb8900202e7076119e445..0e862d4f044683ec46c32929310641af5c1cc2d0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -154,6 +154,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -155,6 +155,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
this.getAttribute(Attributes.SCALE).setBaseValue(this.level().purpurConfig.wolfScale);
|
||||
}
|
||||
|
||||
@@ -300,10 +300,10 @@ index 3268f07668eaa0322aeb77a158dfb2996d16dfcb..da375fb6907e0c46ed176bc76a84f266
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(1, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
index 196de6ac2ba44478f6a2239eb2657957806d7ccc..711253a3e004c8ec850579f17d8497ffe2cf3ba0 100644
|
||||
index 3cc0d4f7a8483fc5133ff3a3e42e0bb0f01bca3c..75c05990b9ee6fd429c24415be3b98e258638e89 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
@@ -99,6 +99,11 @@ public class Armadillo extends Animal {
|
||||
@@ -103,6 +103,11 @@ public class Armadillo extends Animal {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.armadilloMaxHealth);
|
||||
this.getAttribute(Attributes.SCALE).setBaseValue(this.level().purpurConfig.armadilloScale);
|
||||
}
|
||||
@@ -332,10 +332,10 @@ index 0cf2dbc7d4ce89bddc8f23095272532cf62b3f51..05ffcccf19ca07285d821de41909cade
|
||||
public Map<String, Vector3f> getModelRotationValues() {
|
||||
return this.modelRotationValues;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
index e0c981cef6992c4a83813c6f77fe11841fe11c1c..260138fcf0191391b68cb9d03cc55e26873bc001 100644
|
||||
index f71560b8183672640f00e00479e89237ac96558d..c567b946e013852acfae7f5a417a292706e218f4 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
@@ -89,6 +89,10 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
@@ -92,6 +92,10 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
public boolean dismountsUnderwater() {
|
||||
return level().purpurConfig.useDismountsUnderwaterTag ? super.dismountsUnderwater() : !level().purpurConfig.camelRidableInWater;
|
||||
}
|
||||
|
||||
@@ -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 128c0daae941cda386417dfa452e97a9b056441d..7737c2b5aaa8ad8367915991b75aff00d041efab 100644
|
||||
index a81b8f310a21208269368cedeb8bc03ba9030137..8f0088dcca65a374351996a28198ba9706ab85e0 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1181,7 +1181,16 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1183,7 +1183,16 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
if (this.isInvulnerableTo(source)) {
|
||||
return false;
|
||||
} else {
|
||||
@@ -27,7 +27,7 @@ index 128c0daae941cda386417dfa452e97a9b056441d..7737c2b5aaa8ad8367915991b75aff00
|
||||
|
||||
if (!flag && this.spawnInvulnerableTime > 0 && !source.is(DamageTypeTags.BYPASSES_INVULNERABILITY)) {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index fd83a86d245b775a884d33528c80ae53257f3a95..9c4511d478a0ad5f5757470454063bae52b1127b 100644
|
||||
index ac1a1f6036a4d2ed2401cf07dc834df997788cd4..fa91c4afeaf1a01d27fea3741e85cc5721d80d14 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -113,6 +113,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -7,10 +7,10 @@ Configurable chance to spawn a wolf that is rabid.
|
||||
Rabid wolves attack all players, mobs, and animals.
|
||||
|
||||
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 da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f70e1e144 100644
|
||||
index 0e862d4f044683ec46c32929310641af5c1cc2d0..77156a6ccd171ed8fd36d71fcd3f0b77ba4f5432 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -106,6 +106,37 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -107,6 +107,37 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
|
||||
return entitytypes == EntityType.SHEEP || entitytypes == EntityType.RABBIT || entitytypes == EntityType.FOX;
|
||||
};
|
||||
@@ -48,7 +48,7 @@ index da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f
|
||||
private static final float START_HEALTH = 8.0F;
|
||||
private static final float TAME_HEALTH = 40.0F;
|
||||
private static final float ARMOR_REPAIR_UNIT = 0.125F;
|
||||
@@ -159,6 +190,30 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -160,6 +191,30 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
return this.level().purpurConfig.wolfBreedingTicks;
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ index da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(1, new FloatGoal(this));
|
||||
@@ -166,6 +221,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -167,6 +222,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
this.goalSelector.addGoal(1, new TamableAnimal.TamableAnimalPanicGoal(1.5D, DamageTypeTags.PANIC_ENVIRONMENTAL_CAUSES));
|
||||
this.goalSelector.addGoal(2, new SitWhenOrderedToGoal(this));
|
||||
this.goalSelector.addGoal(3, new Wolf.WolfAvoidEntityGoal<>(this, Llama.class, 24.0F, 1.5D, 1.5D));
|
||||
@@ -87,7 +87,7 @@ index da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f
|
||||
this.goalSelector.addGoal(4, new LeapAtTargetGoal(this, 0.4F));
|
||||
this.goalSelector.addGoal(5, new MeleeAttackGoal(this, 1.0D, true));
|
||||
this.goalSelector.addGoal(6, new FollowOwnerGoal(this, 1.0D, 10.0F, 2.0F));
|
||||
@@ -179,7 +235,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -180,7 +236,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
this.targetSelector.addGoal(2, new OwnerHurtTargetGoal(this));
|
||||
this.targetSelector.addGoal(3, (new HurtByTargetGoal(this, new Class[0])).setAlertOthers());
|
||||
this.targetSelector.addGoal(4, new NearestAttackableTargetGoal<>(this, Player.class, 10, true, false, this::isAngryAt));
|
||||
@@ -96,7 +96,7 @@ index da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f
|
||||
this.targetSelector.addGoal(6, new NonTameRandomTargetGoal<>(this, Turtle.class, false, Turtle.BABY_ON_LAND_SELECTOR));
|
||||
this.targetSelector.addGoal(7, new NearestAttackableTargetGoal<>(this, AbstractSkeleton.class, false));
|
||||
this.targetSelector.addGoal(8, new ResetUniversalAngerTargetGoal<>(this, true));
|
||||
@@ -228,6 +284,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -229,6 +285,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
public void addAdditionalSaveData(CompoundTag nbt) {
|
||||
super.addAdditionalSaveData(nbt);
|
||||
nbt.putByte("CollarColor", (byte) this.getCollarColor().getId());
|
||||
@@ -104,7 +104,7 @@ index da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f
|
||||
this.getVariant().unwrapKey().ifPresent((resourcekey) -> {
|
||||
nbt.putString("variant", resourcekey.location().toString());
|
||||
});
|
||||
@@ -245,6 +302,10 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -246,6 +303,10 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
if (nbt.contains("CollarColor", 99)) {
|
||||
this.setCollarColor(DyeColor.byId(nbt.getInt("CollarColor")));
|
||||
}
|
||||
@@ -115,7 +115,7 @@ index da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f
|
||||
|
||||
this.readPersistentAngerSaveData(this.level(), nbt);
|
||||
}
|
||||
@@ -263,6 +324,12 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -264,6 +325,12 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
}
|
||||
|
||||
this.setVariant(holder1);
|
||||
@@ -128,7 +128,7 @@ index da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f
|
||||
return super.finalizeSpawn(world, difficulty, spawnReason, (SpawnGroupData) entityData);
|
||||
}
|
||||
|
||||
@@ -306,6 +373,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -307,6 +374,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
public void tick() {
|
||||
super.tick();
|
||||
if (this.isAlive()) {
|
||||
@@ -140,7 +140,7 @@ index da375fb6907e0c46ed176bc76a84f2666227547c..0a3b883ffe3627c5ab7c763f4ecaef4f
|
||||
this.interestedAngleO = this.interestedAngle;
|
||||
if (this.isInterested()) {
|
||||
this.interestedAngle += (1.0F - this.interestedAngle) * 0.4F;
|
||||
@@ -546,6 +618,19 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -547,6 +619,19 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
itemstack.consume(1, player);
|
||||
this.tryToTame(player);
|
||||
return InteractionResult.SUCCESS;
|
||||
|
||||
@@ -26,10 +26,10 @@ index c8266b1a6b609ef92bd83dcb0e86e3cf47ccce6d..356f3728fdadf8190cd6c806789f4fd7
|
||||
@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 0a3b883ffe3627c5ab7c763f4ecaef4f70e1e144..edf12c4f81f8a113a87b70bf4ab91888fc648cd5 100644
|
||||
index 77156a6ccd171ed8fd36d71fcd3f0b77ba4f5432..3f182227b84736273c14474cccfea8e9c7441c74 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -214,6 +214,12 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -215,6 +215,12 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Implement TPSBar
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
|
||||
index 911a12e8af22b5f7a645384fee37c9ad435a9be1..73774049d9d4165036ddf90979d2de837e3701d8 100644
|
||||
index 38a345901a743f5ddac18ba876d5245c5c11f111..c7b7cc0d9ce589b5a0600e9b8c46b2e5d7a520bd 100644
|
||||
--- a/src/main/java/net/minecraft/commands/Commands.java
|
||||
+++ b/src/main/java/net/minecraft/commands/Commands.java
|
||||
@@ -253,6 +253,7 @@ public class Commands {
|
||||
@@ -41,7 +41,7 @@ index 04fd1172b47a74b16955cf93fc20f64fd056b16e..34dfcdb3de191c08dffe22f624f4e968
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 7737c2b5aaa8ad8367915991b75aff00d041efab..a1ef38422631b3856160e054daa14eacb8f13c57 100644
|
||||
index 8f0088dcca65a374351996a28198ba9706ab85e0..1a8b28415c6f1f1c8f19c003d0f4c3a3e2d04479 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -302,6 +302,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -68,7 +68,7 @@ index 7737c2b5aaa8ad8367915991b75aff00d041efab..a1ef38422631b3856160e054daa14eac
|
||||
}
|
||||
|
||||
// CraftBukkit start - World fallback code, either respawn location or global spawn
|
||||
@@ -3056,5 +3059,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -3065,5 +3068,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
this.server.getPlayerList().respawn(this, true, RemovalReason.KILLED, org.bukkit.event.player.PlayerRespawnEvent.RespawnReason.DEATH, to);
|
||||
}
|
||||
}
|
||||
@@ -83,7 +83,7 @@ index 7737c2b5aaa8ad8367915991b75aff00d041efab..a1ef38422631b3856160e054daa14eac
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index 7aec825af7d07b1701519e413432739612527747..9b52cb228de73df4fec47b18f1245b34f7ee8aef 100644
|
||||
index e60111517e9b04a39dcdb36a5f46d8fa868a5adc..afbf8b6453c09a038cddd9a2ec368d121253b12f 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -480,6 +480,7 @@ public abstract class PlayerList {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Full netherite armor grants fire resistance
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 025309a47e9683ec29cd94f997663b7faec1acb4..2dafba96353c208b89da7b65c0d56a51e00547c3 100644
|
||||
index 9dd8dc8f0dc218c5a021d84649f364cd2f1b3a45..33c1b2b387e7412a001841d1bcbb3966c188c1a3 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -386,6 +386,16 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -387,6 +387,16 @@ public abstract class Player extends LivingEntity {
|
||||
this.addEffect(new MobEffectInstance(MobEffects.WATER_BREATHING, 200, 0, false, false, true), org.bukkit.event.entity.EntityPotionEffectEvent.Cause.TURTLE_HELMET); // CraftBukkit
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ index 025309a47e9683ec29cd94f997663b7faec1acb4..2dafba96353c208b89da7b65c0d56a51
|
||||
|
||||
protected ItemCooldowns createItemCooldowns() {
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index ccb801c8fc1b8b9d79b76f639f94d6d7d82a30cc..8f255830efe9daaf7101954703c30f060f8abfd2 100644
|
||||
index cb948241a14bf7348a37ac6f885ecfe49ef858e2..a3cdaaa530d43ddfb5dcf312f39425372e18a0a6 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -286,6 +286,19 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ 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 c0e0725408bf0a3937e19e28b2c05c2b23c9cdf7..2c2af2b2fcebb17c2aeb7431e79d3d82dfe898fc 100644
|
||||
index 13d29b9c6f683f716cbeb965bab96bc257b9e9e0..9537d98a63d631259e476f7f817fa94bc074c79a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1813,7 +1813,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1830,7 +1830,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
boolean flag = false;
|
||||
|
||||
if (this.dead && adversary instanceof WitherBoss) { // Paper
|
||||
|
||||
@@ -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 a1ef38422631b3856160e054daa14eacb8f13c57..794f5ccc2147ad101e06576a704bb153e83550f7 100644
|
||||
index 1a8b28415c6f1f1c8f19c003d0f4c3a3e2d04479..83fe89b418947d2d9753006897c7d5be5881c4a1 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1424,6 +1424,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1426,6 +1426,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
worldserver1.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION);
|
||||
this.unsetRemoved();
|
||||
// CraftBukkit end
|
||||
|
||||
@@ -395,10 +395,10 @@ index 751fe2afdea34a6776d428675c3924112668d530..099fd99cf3d455329487fbbf572bb0b2
|
||||
this.entityData.set(Turtle.HOME_POS, pos.immutable()); // Paper - called with mutablepos...
|
||||
}
|
||||
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 edf12c4f81f8a113a87b70bf4ab91888fc648cd5..43fcaa66b1c3a53a625aca63c50793e91b97d30f 100644
|
||||
index 3f182227b84736273c14474cccfea8e9c7441c74..ac35bb9fc72ffc217b006c652b336e57bce62e8f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -220,6 +220,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -221,6 +221,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
super.tame(player);
|
||||
}
|
||||
|
||||
@@ -625,7 +625,7 @@ index 00c48623e8d53e4a00b9c3e40f6fd2c5af4f61b7..e1db768336872a63a20094ea9058550b
|
||||
public boolean doHurtTarget(Entity target) {
|
||||
if (super.doHurtTarget(target)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index d498b12998f04cf1a4332a358b374d48f8b3b7eb..798d00aae04ba48ca0bbd70ccf3b3e91180d97b4 100644
|
||||
index 576d8288a9a5e39479623cac6cbf0f2cc81096db..1ce1cf48624d8273dccc571ee37a08c06951acad 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -266,6 +266,11 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
|
||||
@@ -46,10 +46,10 @@ index 0711b1c38b4bef53aeb0d447774db4a639704e8d..884fc114ef70d49fd0d64fcea46fb277
|
||||
this.level().broadcastEntityEvent(this, (byte) 7);
|
||||
} else {
|
||||
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 43fcaa66b1c3a53a625aca63c50793e91b97d30f..b79707bafd7c18eda8ea64bc33d2262515d80642 100644
|
||||
index ac35bb9fc72ffc217b006c652b336e57bce62e8f..bd9d07665d113c2b15d499a49533436405ed7a4e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -649,7 +649,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -650,7 +650,7 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
|
||||
private void tryToTame(Player player) {
|
||||
// CraftBukkit - added event call and isCancelled check.
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] One Punch Man!
|
||||
inspired by https://modrinth.com/mod/creative-one-punch
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index fc560ddef3542f9bf566917c3af9072857f1bd04..d76e8cf2a2d48548b0ad33c78dbf435b61bf91c4 100644
|
||||
index 9537d98a63d631259e476f7f817fa94bc074c79a..a40d7a785bab8f4709890e349775150adcd38da8 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1428,6 +1428,24 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1429,6 +1429,24 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.stopSleeping();
|
||||
}
|
||||
|
||||
|
||||
@@ -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 794f5ccc2147ad101e06576a704bb153e83550f7..27acdaa3d72198c822b92f6a0d27b7b1c118b539 100644
|
||||
index 83fe89b418947d2d9753006897c7d5be5881c4a1..c9367faa95c091fab529afeb5011330baf9e7ac8 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1529,7 +1529,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1531,7 +1531,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
return entitymonster.isPreventingPlayerRest(this);
|
||||
});
|
||||
|
||||
|
||||
@@ -5,11 +5,11 @@ Subject: [PATCH] Config to change max number of bees
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java
|
||||
index 7b263fab4f0014400b3b8e7e33db32f9a125f6ba..f52823146944d333f2d050e90261b570ba66f5dd 100644
|
||||
index f933fa419a4b55b0096ff42caf1b071d027b8e7e..fb84af3b1709101fa572d11a1c27970a316f2eab 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java
|
||||
@@ -59,7 +59,7 @@ public class BeehiveBlockEntity extends BlockEntity {
|
||||
private final List<BeehiveBlockEntity.BeeData> stored = Lists.newArrayList();
|
||||
private List<BeehiveBlockEntity.BeeData> stored = Lists.newArrayList();
|
||||
@Nullable
|
||||
public BlockPos savedFlowerPos;
|
||||
- public int maxBees = 3; // CraftBukkit - allow setting max amount of bees a hive can hold
|
||||
|
||||
@@ -17,10 +17,10 @@ index b286b157bba78021efa18f01bc91b067b0bd5874..fc87e3cfff1221a6cbaf3463ce972870
|
||||
// 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 27acdaa3d72198c822b92f6a0d27b7b1c118b539..11c8f5d0849ebdcda80d7298726179f698c71c7a 100644
|
||||
index c9367faa95c091fab529afeb5011330baf9e7ac8..f103848df48acdaca1c5182da11cae2ea4090e41 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1081,6 +1081,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1083,6 +1083,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
}));
|
||||
PlayerTeam scoreboardteam = this.getTeam();
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Configurable mob blindness
|
||||
Ported from https://github.com/raltsmc/mobblindness
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index da28941d9a374be39cf7c1620f48ddaaa89a9010..ee48e98e6981225b486ea933d51fb4b9cc73fa18 100644
|
||||
index 578ab44fedb1522ed91a9f65bd2dda2273882ed2..9ccdd607d23e00974b6a44f656885ee6fd4d39ad 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1042,6 +1042,17 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1043,6 +1043,17 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
if (entitytypes == EntityType.SKELETON && itemstack.is(Items.SKELETON_SKULL) || entitytypes == EntityType.ZOMBIE && itemstack.is(Items.ZOMBIE_HEAD) || entitytypes == EntityType.PIGLIN && itemstack.is(Items.PIGLIN_HEAD) || entitytypes == EntityType.PIGLIN_BRUTE && itemstack.is(Items.PIGLIN_HEAD) || entitytypes == EntityType.CREEPER && itemstack.is(Items.CREEPER_HEAD)) {
|
||||
d0 *= 0.5D;
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add config change multiplier critical damage value
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 1974bfc133e582ce1fd6db7d44b72898582e5d12..233e9683add1c64e85bd254aaba970053d637803 100644
|
||||
index 33c1b2b387e7412a001841d1bcbb3966c188c1a3..40cf2eb78b02adc15e44189021005f147e00185c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -1347,7 +1347,7 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -1348,7 +1348,7 @@ public abstract class Player extends LivingEntity {
|
||||
flag2 = flag2 && !this.level().paperConfig().entities.behavior.disablePlayerCrits; // Paper - Toggleable player crits
|
||||
if (flag2) {
|
||||
damagesource = damagesource.critical(true); // Paper start - critical damage API
|
||||
|
||||
@@ -33,7 +33,7 @@ index 13afec25f9d08401d9c5adee211e422159f2ba02..0d4eb7fb3a62db8691d49d6963aec7ca
|
||||
this.id = Entity.ENTITY_COUNTER.incrementAndGet();
|
||||
this.passengers = ImmutableList.of();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 6da2be7115f50f1839f3610bfdd4262f70d11b07..8b6f8c6dd4c7acbceb0925bd6fd3d23e5186a578 100644
|
||||
index 9ccdd607d23e00974b6a44f656885ee6fd4d39ad..686ce519b70e2193e207aca16f4ef15cb36840b5 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -286,6 +286,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -44,7 +44,7 @@ index 6da2be7115f50f1839f3610bfdd4262f70d11b07..8b6f8c6dd4c7acbceb0925bd6fd3d23e
|
||||
|
||||
@Override
|
||||
public float getBukkitYaw() {
|
||||
@@ -816,6 +817,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -817,6 +818,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
dataresult.resultOrPartial(logger::error).ifPresent((nbtbase) -> {
|
||||
nbt.put("Brain", nbtbase);
|
||||
});
|
||||
@@ -52,7 +52,7 @@ index 6da2be7115f50f1839f3610bfdd4262f70d11b07..8b6f8c6dd4c7acbceb0925bd6fd3d23e
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -904,6 +906,11 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -905,6 +907,11 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.brain = this.makeBrain(new Dynamic(NbtOps.INSTANCE, nbt.get("Brain")));
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ index 6da2be7115f50f1839f3610bfdd4262f70d11b07..8b6f8c6dd4c7acbceb0925bd6fd3d23e
|
||||
}
|
||||
|
||||
// CraftBukkit start
|
||||
@@ -3585,6 +3592,34 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3620,6 +3627,34 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.hurt(this.damageSources().drown(), 1.0F);
|
||||
}
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Burp delay, burp after eating food fills hunger bar
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 233e9683add1c64e85bd254aaba970053d637803..c1921219cdea543f02d98cacdfad296eee224f2b 100644
|
||||
index 40cf2eb78b02adc15e44189021005f147e00185c..1552312aa9740c74533821594da7da705a6f5f70 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -197,6 +197,7 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -198,6 +198,7 @@ public abstract class Player extends LivingEntity {
|
||||
public boolean affectsSpawning = true; // Paper - Affects Spawning API
|
||||
public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage
|
||||
public int sixRowEnderchestSlotCount = -1; // Purpur
|
||||
@@ -17,7 +17,7 @@ index 233e9683add1c64e85bd254aaba970053d637803..c1921219cdea543f02d98cacdfad296e
|
||||
|
||||
// CraftBukkit start
|
||||
public boolean fauxSleeping;
|
||||
@@ -272,6 +273,12 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -273,6 +274,12 @@ public abstract class Player extends LivingEntity {
|
||||
|
||||
@Override
|
||||
public void tick() {
|
||||
@@ -30,7 +30,7 @@ index 233e9683add1c64e85bd254aaba970053d637803..c1921219cdea543f02d98cacdfad296e
|
||||
this.noPhysics = this.isSpectator();
|
||||
if (this.isSpectator()) {
|
||||
this.setOnGround(false);
|
||||
@@ -2373,7 +2380,7 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -2376,7 +2383,7 @@ public abstract class Player extends LivingEntity {
|
||||
public ItemStack eat(Level world, ItemStack stack, FoodProperties foodComponent) {
|
||||
this.getFoodData().eat(stack, foodComponent); // CraftBukkit
|
||||
this.awardStat(Stats.ITEM_USED.get(stack.getItem()));
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add portal permission bypass
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index c1921219cdea543f02d98cacdfad296eee224f2b..177475facb1c269cd9b4a28e0aa18189baf1b909 100644
|
||||
index 1552312aa9740c74533821594da7da705a6f5f70..09e1faae9c22c1062e3de5257c82b2d156e65b4f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -198,6 +198,7 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -199,6 +199,7 @@ public abstract class Player extends LivingEntity {
|
||||
public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage
|
||||
public int sixRowEnderchestSlotCount = -1; // Purpur
|
||||
public int burpDelay = 0; // Purpur
|
||||
@@ -17,7 +17,7 @@ index c1921219cdea543f02d98cacdfad296eee224f2b..177475facb1c269cd9b4a28e0aa18189
|
||||
// CraftBukkit start
|
||||
public boolean fauxSleeping;
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/NetherPortalBlock.java b/src/main/java/net/minecraft/world/level/block/NetherPortalBlock.java
|
||||
index 519dc6a5e000b3dfbf8d9383f5944897b39a8c3e..7c6e63ad4b7842031b49260a3a7fb1bdb128e864 100644
|
||||
index c3f37df133250e1a948f3b58d432fbee83a3c2e3..74d9a8a61365f1244471dbff8eb91dad3afaab51 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/NetherPortalBlock.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/NetherPortalBlock.java
|
||||
@@ -129,7 +129,7 @@ public class NetherPortalBlock extends Block implements Portal {
|
||||
@@ -30,7 +30,7 @@ index 519dc6a5e000b3dfbf8d9383f5944897b39a8c3e..7c6e63ad4b7842031b49260a3a7fb1bd
|
||||
return 0;
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
index 41f3cdec7deabf34358b8087df77169f85a5b919..90265b6f2acd43713b61e277799dd31311b6b7e2 100644
|
||||
index c1bad887d1340ebc7c63fda3dceff929e4a44517..69304fa6eb65dd37e74db9ad62eac0bddfdea2c1 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
|
||||
@@ -265,6 +265,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
|
||||
|
||||
@@ -38,10 +38,10 @@ index ddb2e8d5a692cd76d67f867fc8bcca3c9b24bab3..be87e350b0d808305a389baf447c0ed0
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 11c8f5d0849ebdcda80d7298726179f698c71c7a..70103438f70a970dedf5bd4d5e42ae42e310ccea 100644
|
||||
index f103848df48acdaca1c5182da11cae2ea4090e41..a18c1c598644c0682b21fd4a55aeb910a211e227 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1570,7 +1570,19 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1572,7 +1572,19 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
});
|
||||
|
||||
if (!this.serverLevel().canSleepThroughNights()) {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Player ridable in water option
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 177475facb1c269cd9b4a28e0aa18189baf1b909..4d283ffd0819a82616679dbdb70892e84bdd12de 100644
|
||||
index 09e1faae9c22c1062e3de5257c82b2d156e65b4f..05ed7bfd75a1e30d74b12a068303a786222a2649 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -2084,6 +2084,13 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -2087,6 +2087,13 @@ public abstract class Player extends LivingEntity {
|
||||
return slot != EquipmentSlot.BODY;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add compass command
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
|
||||
index ebdfbb69f52ec180cadf1187d310f15d221584b2..c32d172c161e6e537ee8e60b36bcb402e1ddb876 100644
|
||||
index 9f86a0397c0b64cb31dad245e2dc84d0fadd42d7..a66e2d78722847dec4e9d4aba8e6968ef009fcf4 100644
|
||||
--- a/src/main/java/net/minecraft/commands/Commands.java
|
||||
+++ b/src/main/java/net/minecraft/commands/Commands.java
|
||||
@@ -255,6 +255,7 @@ public class Commands {
|
||||
@@ -17,7 +17,7 @@ index ebdfbb69f52ec180cadf1187d310f15d221584b2..c32d172c161e6e537ee8e60b36bcb402
|
||||
|
||||
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 70103438f70a970dedf5bd4d5e42ae42e310ccea..8d5be2bad86ccec94338b0135d46e5132a824413 100644
|
||||
index a18c1c598644c0682b21fd4a55aeb910a211e227..1c5dd59300db47391981f7c7737c80c5d68bb3aa 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -303,6 +303,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -44,7 +44,7 @@ index 70103438f70a970dedf5bd4d5e42ae42e310ccea..8d5be2bad86ccec94338b0135d46e513
|
||||
}
|
||||
|
||||
// CraftBukkit start - World fallback code, either respawn location or global spawn
|
||||
@@ -3081,5 +3084,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -3090,5 +3093,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
public void tpsBar(boolean tpsBar) {
|
||||
this.tpsBar = tpsBar;
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Toggle for kinetic damage
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 8b6f8c6dd4c7acbceb0925bd6fd3d23e5186a578..d8be57f2ff13c9492acb1d07c1aa6198793832d8 100644
|
||||
index 686ce519b70e2193e207aca16f4ef15cb36840b5..817332fcfb45193cd19ff6ef6d702bf8c09f576f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -2988,6 +2988,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3023,6 +3023,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
||||
if (f3 > 0.0F) {
|
||||
this.playSound(this.getFallDamageSound((int) f3), 1.0F, 1.0F);
|
||||
|
||||
@@ -243,10 +243,10 @@ index 9d93130f23addb18b97d7f5ec013faef17a74529..29d2fb87a65778926aea2cfc7a5b486c
|
||||
+ // Purpur end - OfflinePlayer API
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 33425cdcde10f6446f059b290d4c372debcb9c0b..e71ac12c107f2cb1b89277605b08884bc3ad27d7 100644
|
||||
index d6cd989a346f576cca416d14fd7fbab0b4f57e3a..cda45d172f526098a40eaa624ad3a84ed1a888d1 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -2758,6 +2758,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -2759,6 +2759,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
return this.getHandle().getAbilities().walkingSpeed * 2f;
|
||||
}
|
||||
|
||||
|
||||
@@ -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 8d5be2bad86ccec94338b0135d46e5132a824413..69dc4f01f7156b70c51cd5facc2dd31d10a7aea7 100644
|
||||
index 1c5dd59300db47391981f7c7737c80c5d68bb3aa..14cdfe81c61c5c324f8b5c7687814274c091e205 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1707,6 +1707,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1709,6 +1709,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
|
||||
@Override
|
||||
public void openTextEdit(SignBlockEntity sign, boolean front) {
|
||||
|
||||
@@ -389,10 +389,10 @@ index 099fd99cf3d455329487fbbf572bb0b27b662e72..15a8c4e2772e1529204e3892914e49f9
|
||||
this.entityData.set(Turtle.HOME_POS, pos.immutable()); // Paper - called with mutablepos...
|
||||
}
|
||||
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 b79707bafd7c18eda8ea64bc33d2262515d80642..a2df7cf565157db2f8e0f0d33778c8d8dea1cd95 100644
|
||||
index bd9d07665d113c2b15d499a49533436405ed7a4e..3d032d3f53cc3281bad173f7f9d139101ef6beaa 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -225,6 +225,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
@@ -226,6 +226,11 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder<Hol
|
||||
return this.level().purpurConfig.wolfTakeDamageFromWater;
|
||||
}
|
||||
|
||||
@@ -597,7 +597,7 @@ index e1db768336872a63a20094ea9058550bece1549a..98b255cfe2fd04c93398ad4120db9b2f
|
||||
public boolean doHurtTarget(Entity target) {
|
||||
if (super.doHurtTarget(target)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index 3643f62853dd5782e1dd36bd533864e0ae11a2f1..322bc1a32b38b6d00e87549e8c3e64c645c7c170 100644
|
||||
index 1769c1d31bb68904be426e1069266cec809cf31a..4aca9a07a5638c67922914a617950f7a77c23aac 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -282,6 +282,11 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Mob head visibility percent
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 6b76ca326d08853a8a508ec22d7bc6cf370223dd..07068e5f93289534f10c0b876dbf884afd9f9b59 100644
|
||||
index 817332fcfb45193cd19ff6ef6d702bf8c09f576f..6210b95ea6e97783d30b6ba8fa44b849a4e645ae 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1046,9 +1046,20 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1047,9 +1047,20 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
ItemStack itemstack = this.getItemBySlot(EquipmentSlot.HEAD);
|
||||
EntityType<?> entitytypes = entity.getType();
|
||||
|
||||
|
||||
@@ -126,18 +126,73 @@ index b3bb0d55da0278d4981830f7073bb326bc836215..7bd2d2b9bb1275fa8e4bdc6d498a59e4
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Bogged.java b/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
index 1dae6f96fe4dcac6d251639c6226a1d15b5ae691..907d88f40f8c6c1d0612be4d31b63220fecb0ea1 100644
|
||||
index 71efea7a6bfb5662890dae5faae27a3c80afad2b..f3aae2c50d05a05ad4aef36d432b87b431ba07e8 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Bogged.java
|
||||
@@ -182,7 +182,7 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
@@ -104,7 +104,7 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
if (itemstack.is(Items.SHEARS) && this.readyForShearing()) {
|
||||
// CraftBukkit start
|
||||
// Paper start - expose drops in event
|
||||
- java.util.List<net.minecraft.world.item.ItemStack> drops = generateDefaultDrops();
|
||||
+ java.util.List<net.minecraft.world.item.ItemStack> drops = generateDefaultDrops(net.minecraft.world.item.enchantment.EnchantmentHelper.getItemEnchantmentLevel(net.minecraft.world.item.enchantment.Enchantments.LOOTING, itemstack)); // Purpur
|
||||
final org.bukkit.event.player.PlayerShearEntityEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.handlePlayerShearEntityEvent(player, this, itemstack, hand, drops);
|
||||
if (event != null) {
|
||||
if (event.isCancelled()) {
|
||||
@@ -171,7 +171,7 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
@Override
|
||||
public void shear(SoundSource shearedSoundCategory) {
|
||||
// Paper start - shear drop API
|
||||
- this.shear(shearedSoundCategory, generateDefaultDrops());
|
||||
+ this.shear(shearedSoundCategory, generateDefaultDrops(0)); // Purpur
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -184,7 +184,7 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
|
||||
private void spawnShearedMushrooms() {
|
||||
// Paper start - shear drops API
|
||||
- this.spawnDrops(generateDefaultDrops()); // Only here for people calling spawnSheardMushrooms. Not used otherwise.
|
||||
+ this.spawnDrops(generateDefaultDrops(0)); // Only here for people calling spawnSheardMushrooms. Not used otherwise. // Purpur
|
||||
}
|
||||
private void spawnDrops(java.util.List<net.minecraft.world.item.ItemStack> drops) {
|
||||
drops.forEach(stack -> {
|
||||
@@ -193,14 +193,22 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
this.forceDrops = false;
|
||||
});
|
||||
}
|
||||
- private void generateShearedMushrooms(java.util.function.Consumer<ItemStack> stackConsumer) {
|
||||
+ private void generateShearedMushrooms(java.util.function.Consumer<ItemStack> stackConsumer, int looting) { // Purpur
|
||||
// Paper end - shear drops API
|
||||
Level world = this.level();
|
||||
|
||||
if (world instanceof ServerLevel worldserver) {
|
||||
LootTable loottable = worldserver.getServer().reloadableRegistries().getLootTable(BuiltInLootTables.BOGGED_SHEAR);
|
||||
LootParams lootparams = (new LootParams.Builder(worldserver)).withParameter(LootContextParams.ORIGIN, this.position()).withParameter(LootContextParams.THIS_ENTITY, this).create(LootContextParamSets.SHEARING);
|
||||
- ObjectListIterator objectlistiterator = loottable.getRandomItems(lootparams).iterator();
|
||||
+ // Purpur start
|
||||
+ it.unimi.dsi.fastutil.objects.ObjectArrayList<ItemStack> randomItemsList = loottable.getRandomItems(lootparams);
|
||||
+ if (org.purpurmc.purpur.PurpurConfig.allowShearsLooting && looting > 0) {
|
||||
+ for (int i = 0; i < looting; i++) {
|
||||
+ randomItemsList.addAll(loottable.getRandomItems(lootparams));
|
||||
+ }
|
||||
+ }
|
||||
+ ObjectListIterator objectlistiterator = randomItemsList.iterator();
|
||||
+ // Purpur end
|
||||
|
||||
while (objectlistiterator.hasNext()) {
|
||||
ItemStack itemstack = (ItemStack) objectlistiterator.next();
|
||||
@@ -213,9 +221,9 @@ public class Bogged extends AbstractSkeleton implements Shearable {
|
||||
|
||||
// Paper start - shear drops API
|
||||
@Override
|
||||
- public java.util.List<ItemStack> generateDefaultDrops() {
|
||||
+ public java.util.List<ItemStack> generateDefaultDrops(int looting) { // Purpur
|
||||
final java.util.List<ItemStack> drops = new java.util.ArrayList<>();
|
||||
this.generateShearedMushrooms(drops::add);
|
||||
- this.generateShearedMushrooms(drops::add);
|
||||
+ this.generateShearedMushrooms(drops::add, looting); // Purpur
|
||||
return drops;
|
||||
}
|
||||
// Paper end - shear drops API
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index 3032944e7ae61f31ceb72ad688add99f2451f33e..346113abdc8da4a2fe69650642515460086a357a 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
|
||||
@@ -22,10 +22,10 @@ index caaeeb63b8bf0d3709fc38266a7e8c48211f5c0b..1cdf71a76c629bcc42da7fcc451b7031
|
||||
int i = this.repairPlayerItems(entityplayer, this.value);
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
index 4d283ffd0819a82616679dbdb70892e84bdd12de..42f9a2046aa8086aecbfa2fa0b604b21c2b70754 100644
|
||||
index 05ed7bfd75a1e30d74b12a068303a786222a2649..330b21946564e6a7b463a258c02fee3f91e0f057 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
||||
@@ -636,7 +636,7 @@ public abstract class Player extends LivingEntity {
|
||||
@@ -637,7 +637,7 @@ public abstract class Player extends LivingEntity {
|
||||
while (iterator.hasNext()) {
|
||||
Entity entity = (Entity) iterator.next();
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Config for mob last hurt by player time
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 07068e5f93289534f10c0b876dbf884afd9f9b59..a9833d805aa51755a15fd98ca546c119e7e4bdf9 100644
|
||||
index 6210b95ea6e97783d30b6ba8fa44b849a4e645ae..1e43127fb05f1eb3beef5d3f8b8f06926bf11f61 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1550,13 +1550,13 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1564,13 +1564,13 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
if (entity1 instanceof net.minecraft.world.entity.player.Player) {
|
||||
net.minecraft.world.entity.player.Player entityhuman = (net.minecraft.world.entity.player.Player) entity1;
|
||||
|
||||
|
||||
@@ -802,10 +802,10 @@ index c4dfa08163f563218eac34941abaff0159517dbe..099be5d1b510866fb7294b304ce294e0
|
||||
|
||||
while (iterator.hasNext()) {
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 69dc4f01f7156b70c51cd5facc2dd31d10a7aea7..09982bd8a4953b35be059084f8db5a7e581fdc43 100644
|
||||
index 14cdfe81c61c5c324f8b5c7687814274c091e205..45bfe47a0bd2d9e3f36cd44e964a8922995a999d 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1398,7 +1398,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1400,7 +1400,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
this.unsetRemoved();
|
||||
*/
|
||||
// CraftBukkit end
|
||||
@@ -814,7 +814,7 @@ index 69dc4f01f7156b70c51cd5facc2dd31d10a7aea7..09982bd8a4953b35be059084f8db5a7e
|
||||
if (worldserver != null && resourcekey == LevelStem.OVERWORLD && worldserver.getTypeKey() == LevelStem.NETHER) { // CraftBukkit - empty to fall through to null to event
|
||||
this.enteredNetherPosition = this.position();
|
||||
}
|
||||
@@ -1414,8 +1414,8 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1416,8 +1416,8 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
worldserver = ((CraftWorld) exit.getWorld()).getHandle();
|
||||
// CraftBukkit end
|
||||
|
||||
@@ -825,7 +825,7 @@ index 69dc4f01f7156b70c51cd5facc2dd31d10a7aea7..09982bd8a4953b35be059084f8db5a7e
|
||||
// CraftBukkit start
|
||||
this.isChangingDimension = true; // CraftBukkit - Set teleport invulnerability only if player changing worlds
|
||||
LevelData worlddata = worldserver.getLevelData();
|
||||
@@ -1433,7 +1433,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -1435,7 +1435,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
this.connection.teleport(exit); // CraftBukkit - use internal teleport without event
|
||||
this.connection.resetPosition();
|
||||
worldserver.addDuringTeleport(this);
|
||||
@@ -1166,7 +1166,7 @@ index 126f0ddc96193d482ebe00ff157fe08b0a641a9d..badf612b7ef717996037b7eacecd74a7
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index d739cebb744be5936487721dd282bc179dc1c1ee..40b32d8af233a880ed4d9d05160c5efb873243a0 100644
|
||||
index 1e43127fb05f1eb3beef5d3f8b8f06926bf11f61..ed31f3e9741909c1840c46f993aead43a626dc64 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -445,7 +445,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1187,7 +1187,7 @@ index d739cebb744be5936487721dd282bc179dc1c1ee..40b32d8af233a880ed4d9d05160c5efb
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -3222,10 +3222,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3257,10 +3257,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
}
|
||||
|
||||
this.run += (f3 - this.run) * 0.3F;
|
||||
@@ -1201,7 +1201,7 @@ index d739cebb744be5936487721dd282bc179dc1c1ee..40b32d8af233a880ed4d9d05160c5efb
|
||||
|
||||
// Paper start - stop large pitch and yaw changes from crashing the server
|
||||
this.yRotO += Math.round((this.getYRot() - this.yRotO) / 360.0F) * 360.0F;
|
||||
@@ -3237,7 +3237,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3272,7 +3272,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.yHeadRotO += Math.round((this.yHeadRot - this.yHeadRotO) / 360.0F) * 360.0F;
|
||||
// Paper end
|
||||
|
||||
@@ -1210,7 +1210,7 @@ index d739cebb744be5936487721dd282bc179dc1c1ee..40b32d8af233a880ed4d9d05160c5efb
|
||||
this.animStep += f2;
|
||||
if (this.isFallFlying()) {
|
||||
++this.fallFlyTicks;
|
||||
@@ -3477,19 +3477,19 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3512,19 +3512,19 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
}
|
||||
|
||||
this.setDeltaMovement(d0, d1, d2);
|
||||
@@ -1235,7 +1235,7 @@ index d739cebb744be5936487721dd282bc179dc1c1ee..40b32d8af233a880ed4d9d05160c5efb
|
||||
if (this.jumping && this.isAffectedByFluids()) {
|
||||
double d3;
|
||||
|
||||
@@ -3516,8 +3516,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3551,8 +3551,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.noJumpDelay = 0;
|
||||
}
|
||||
|
||||
@@ -1246,7 +1246,7 @@ index d739cebb744be5936487721dd282bc179dc1c1ee..40b32d8af233a880ed4d9d05160c5efb
|
||||
this.xxa *= 0.98F;
|
||||
this.zza *= 0.98F;
|
||||
this.updateFallFlying();
|
||||
@@ -3542,8 +3542,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3577,8 +3577,8 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.travel(vec3d1);
|
||||
}
|
||||
|
||||
@@ -1257,7 +1257,7 @@ index d739cebb744be5936487721dd282bc179dc1c1ee..40b32d8af233a880ed4d9d05160c5efb
|
||||
if (!this.level().isClientSide && !this.isDeadOrDying() && !this.freezeLocked) { // Paper - Freeze Tick Lock API
|
||||
int i = this.getTicksFrozen();
|
||||
|
||||
@@ -3560,15 +3560,15 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3595,15 +3595,15 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
this.hurt(this.damageSources().freeze(), 1.0F);
|
||||
}
|
||||
|
||||
@@ -1490,10 +1490,10 @@ index 902882ca639eee6efe102ea70e182fb17df801c2..0f9196cc26e5c670a7f3454326b762f0
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
index 711253a3e004c8ec850579f17d8497ffe2cf3ba0..3c4c654a4c7c7ed7b4c967f768b55921e8a8690e 100644
|
||||
index 75c05990b9ee6fd429c24415be3b98e258638e89..5b024bc6166a9034eeba729bf3a53236446a03de 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java
|
||||
@@ -159,12 +159,12 @@ public class Armadillo extends Animal {
|
||||
@@ -163,12 +163,12 @@ public class Armadillo extends Animal {
|
||||
|
||||
@Override
|
||||
protected void customServerAiStep() {
|
||||
@@ -1533,10 +1533,10 @@ index 091fbd162a63ec523197a953e65c00a54dae5ef9..e3178e2562a45f09c6567bb63112aa84
|
||||
Optional<Integer> optional = this.getBrain().getMemory(MemoryModuleType.PLAY_DEAD_TICKS);
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
index 260138fcf0191391b68cb9d03cc55e26873bc001..2fcf8301949ff420ae0955a5194b5db52f030454 100644
|
||||
index c567b946e013852acfae7f5a417a292706e218f4..e88d6d691bb176e33afeb294d735dfb2cbac12ff 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
@@ -151,14 +151,14 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
@@ -154,14 +154,14 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Saddl
|
||||
|
||||
@Override
|
||||
protected void customServerAiStep() {
|
||||
|
||||
@@ -99,10 +99,10 @@ index 685d52605bb2cc8eb7a4065e0e7cf634a22a512a..0056843aabf3a46251eda8667ddb43da
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index e71ac12c107f2cb1b89277605b08884bc3ad27d7..162034040a72bb392ba9b36e4469abfc32c46ca8 100644
|
||||
index cda45d172f526098a40eaa624ad3a84ed1a888d1..afd7a48f6c85aa00fe53f8ee6a53d790f81a6048 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -3602,5 +3602,43 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -3603,5 +3603,43 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
public void resetIdleTimer() {
|
||||
getHandle().resetLastActionTime();
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add death screen API
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 162034040a72bb392ba9b36e4469abfc32c46ca8..41863584c3a85068b807a5aeb93c3da70f133b47 100644
|
||||
index afd7a48f6c85aa00fe53f8ee6a53d790f81a6048..6a3b023b0f60dbb350943bdd7f0bfead9e8e3ce0 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -3640,5 +3640,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -3641,5 +3641,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
if (this.getHandle().connection == null) return;
|
||||
this.getHandle().connection.send(new net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket(new net.minecraft.network.protocol.common.custom.GameTestClearMarkersDebugPayload()));
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Implement ram and rambar commands
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
|
||||
index 03c6ed862cc391b104b6c0ff0b8adf62824d293d..068a7d160cda08c5dc8b8c0f2f4185fdf8d97a5c 100644
|
||||
index 24cb04cd33cfe578286c85a892b20bbf3fc843e6..8468452ff61f226b65be1dad21b627f2a178506e 100644
|
||||
--- a/src/main/java/net/minecraft/commands/Commands.java
|
||||
+++ b/src/main/java/net/minecraft/commands/Commands.java
|
||||
@@ -256,6 +256,8 @@ public class Commands {
|
||||
@@ -18,7 +18,7 @@ index 03c6ed862cc391b104b6c0ff0b8adf62824d293d..068a7d160cda08c5dc8b8c0f2f4185fd
|
||||
|
||||
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 09982bd8a4953b35be059084f8db5a7e581fdc43..d9fbc5c1f4c6317165d8daa104d3d0896b52c240 100644
|
||||
index 45bfe47a0bd2d9e3f36cd44e964a8922995a999d..c8ccf4b847ba3803b48c26ad6e6acecb327c76c5 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -304,6 +304,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -45,7 +45,7 @@ index 09982bd8a4953b35be059084f8db5a7e581fdc43..d9fbc5c1f4c6317165d8daa104d3d089
|
||||
nbt.putBoolean("Purpur.TPSBar", this.tpsBar); // Purpur
|
||||
nbt.putBoolean("Purpur.CompassBar", this.compassBar); // Purpur
|
||||
}
|
||||
@@ -3093,5 +3096,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
@@ -3102,5 +3105,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||
public void compassBar(boolean compassBar) {
|
||||
this.compassBar = compassBar;
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Milk Keeps Beneficial Effects
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index c8c931135133ef3d1d491034d578d9af47d9a9bd..392381dde4e188cdf2c75bcf2109158d6cf0f330 100644
|
||||
index ed31f3e9741909c1840c46f993aead43a626dc64..cf01a2ef9d72edc7661661c13a85c777bf32b83b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -1129,6 +1129,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1130,6 +1130,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
for (flag = false; iterator.hasNext(); flag = true) {
|
||||
// CraftBukkit start
|
||||
MobEffectInstance effect = (MobEffectInstance) iterator.next();
|
||||
|
||||
Reference in New Issue
Block a user