Updated Upstream (Paper & Tuinity)

Upstream has released updates that appears to apply and compile correctly

Paper Changes:
54890033 [Auto] Updated Upstream (CraftBukkit)
f96c6f5c [Auto] Updated Upstream (CraftBukkit)
4be8312f [CI-SKIP] [Auto] Rebuild Patches
43e5174a Fix Entity Teleportation and cancel velocity if teleported (#4210)
0fb3daf4 [Auto] Updated Upstream (CraftBukkit)
819ff324 Use wrapped StructureManager to prevent worldgen deadlock
507f302c Fix Zombie ShouldBurnInDay API (#4268)
ef5af6f6 [Auto] Updated Upstream (CraftBukkit)
101b0110 [Auto] Updated Upstream (Bukkit/CraftBukkit)
03689cf9 Fix javadoc (#4276)
c247857f Cache block data strings
ce2eae5c [Auto] Updated Upstream (Bukkit/CraftBukkit)
563f77ad install remapped server jar to paper package space
1ab021dd Updated Upstream (Bukkit/CraftBukkit)
c970f880 Properly pass the close reason for new inventory opens (#2658) (#4247)
07bca94f Create HoverEvent from ItemStack Entity
da33f8bb Add a way to get translation keys for blocks, entities and materials
5a20cbd7 Add more Evoker API
7a3e2520 [Auto] Updated Upstream (CraftBukkit)
b0cbebdc Fix build conflicts
dfc54a8b Add zombie targets turtle egg config (#4181)
0fe00f61 Add BellRingEvent for village bells (#2230)
414e5e1d fix #4144 (#4170)
5c7f3fc0 Fix PersistentDataContainer contract violation (_->!null returns null) (#3990)
65dbf5ff [CI-SKIP] [Auto] Rebuild Patches
7ed0f7f0 Fix NPE in getBedSpawnLocation (#4238)
9e0f1101 [CI-SKIP] Add issue template
6c138412 Fix CraftTeam null check (#4249)
32e45448 Update Paperclip
b84a37b7 Update Armor items in PlayerArmorChangeEvent (#4243)
a67abf5b Increase visibility of a few methods
7d69214b [Auto] Updated Upstream (CraftBukkit)
cbfc2362 PortalCreateEvent needs to know its entity
29032edb Fix PersistentDataContainer contract violation (_->!null returns null)
f42c53df [CI-SKIP] [Auto] Rebuild Patches
3efe45f5 Port Eigencraft to 1.16
0bad6958 Make engine-mode 2 truly random
cd06ca5e Updated Upstream (CraftBukkit)
ef36b4f8 Fix TNT not pushing creative players
915fe522 Fix hex colors not working in some kick messages
f5904171 [Auto] Updated Upstream (Bukkit/CraftBukkit)
757948dc [Auto] Updated Upstream (CraftBukkit)
0893de14 Fix reading the brand message from clients
243d2313 Updated Upstream (Bukkit/CraftBukkit)
4cc7de6c Add playPickupItemAnimation to LivingEntity
20fc1b5c [Auto] Updated Upstream (CraftBukkit/Spigot)
655258b3 [Auto] Updated Upstream (CraftBukkit)
167b1db6 Fix some modded clients getting kicked for invalid payload - Fixes #4201
7f0786cd Fix enderdragon tracking range to honor vanilla
586073c3 [CI-SKIP] Update README.md (for 1.16.2) (#4202)
853f4168 Remove debug
4d7ea429 fix config option in last commit
74d27463 Buffer joins to world
ac96307b [CI-SKIP] switch back to trusty now we figured out the issue
c97ce029 1.16.2 Release (#4123)
5486b3db Fix javadocs failing jenkins builds (#4189)
1330eb5f Brand support
b8372fc0 Improve handling of indestructable blocks
a2a06640 Add moon phase API
47f71aea Fix SpawnChangeEvent not firing for all use-cases
b6c860f2 Don't require FACING data
0c1716a1 Add #setMaxPlayers API
02aed275 [CI-SKIP] Require dependencies script (#4172)
1ccc1c67 Add smithing item helpers
627f4b85 Brand support
20d9ec6b Fix MC-197271
e9287056 [CI-SKIP] Update issue templates with notices
dccaf59a MC-197883: Bandaid decode issue
99a1e58f Merge branch 'master' into progress/1.16.2
ecbc5ca0 Updated Upstream (CraftBukkit)
99362d3c Decomp fix
5f9861a0 Fix MC-197883 by specifying the typeKey
1d8c9c23 [CI-SKIP] Make checkoutpr.sh use $SHELL (#4167)
2b1ca210 update checkout-pr to latest I use
95c9b45d Fix IDE Debug JVM Flag 2 (#4141)
9e6d742c Merge remote-tracking branch 'origin/master' into progress/1.16.2
c8542f23 Fix MC-99259 Wither Boss Bar doesn't update until invulnerability period is over (#4164)
862b8c18 Updated Upstream (Bukkit/CraftBukkit)
100d51eb Do not obfuscate air (#4149)
47740f67 Updated Upstream (CraftBukkit)
948c20e0 Merge remote-tracking branch 'origin/master' into progress/1.16.2
1daafe45 Updated Upstream (Bukkit/CraftBukkit)
98828b00 Merge pull request #4132 from Proximyst/progress/1.16.2
b23f27f8  Fix incorrect return for WorldServer#addAllEntitiesSafely (#3)
5085fa30 Fix MC-187716 Use configured height
c44add5a Initialise a new chunk section if none was found yet updated
74a4d5f8 Remove armour stand double add to world
6d25cc4e Don't mark null chunk sections for block updates
1ba2f214 Updated Upstream (Bukkit/CraftBukkit)
d29d5aaa Fix anti xray
ce6bbaa4 Import fastutil classes patch
9d4616a4 Updated Upstream (Bukkit/CraftBukkit)
109d072b Fix test, add strider mob goal and fix piglin goals
e6caaa20 Fix running; forgot to push this
ee7dce8b Add this to SHIT_TO_CHECK.md aswell
d378257c Fix IDE debug JVM flag for 1.16.2
0d8db446 Merge pull request #4112 from BillyGalbreath/progress/1.16.2
d319d8c4 It compiles!
8f8371c5 Add an OBFHELPER
9caa8e9f missed this
3ce5a5d7 volatile
159eb2e1 Oopsies
7eb08d2f Almost ready
7ca11e97 Current progress on 1.16.2

Tuinity Changes:
eaa6b50 Fix missing block property portal crash
fea5fbd Retain vanilla behavior for error correction rules in collisions
9eb1a3e Do not add a delayed unload ticket for some ticket types
This commit is contained in:
William Blake Galbreath
2020-09-09 07:01:21 -05:00
parent 7ae2890175
commit de30a3e5e2
156 changed files with 834 additions and 2056 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand
diff --git a/pom.xml b/pom.xml
index ee19a2874..09119ce8e 100644
index 4f45b8158..02ee19722 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,11 +1,11 @@
@@ -98,7 +98,7 @@ index 74ed02fa9..c1280478e 100644
.completer(new ConsoleCommandCompleter(this.server))
);
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 615a71a78..ba731edd3 100644
index 106661fae..045c21d00 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1510,7 +1510,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -232,7 +232,7 @@ index 000000000..d8b408f06
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 61e5a91a7..020bb17b6 100644
index 2b0e1e698..0b789d179 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -230,7 +230,7 @@ import javax.annotation.Nullable; // Paper
@@ -245,10 +245,10 @@ index 61e5a91a7..020bb17b6 100644
private final String bukkitVersion = Versioning.getBukkitVersion();
private final Logger logger = Logger.getLogger("Minecraft");
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index c1efe830d..2f319c6e2 100644
index a9728c6c5..aef0a0eb1 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -326,7 +326,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
@@ -327,7 +327,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
@Override
public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {

View File

@@ -25,10 +25,10 @@ index ce4ebc96c..eb62555cb 100644
super(EntityTypes.PLAYER, world);
this.bL = ItemStack.b;
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index a947aabfc..8638d4622 100644
index 8b1e866b3..237b85135 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1718,8 +1718,54 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -1719,8 +1719,54 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
public void resetIdleTimer() {
this.ca = SystemUtils.getMonotonicMillis();
@@ -129,7 +129,7 @@ index 882b82d89..90c37e4a8 100644
@Nullable
diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java
index 06ce390b6..939535cb2 100644
index a9b0c78d6..c8e384ab6 100644
--- a/src/main/java/net/minecraft/server/IEntitySelector.java
+++ b/src/main/java/net/minecraft/server/IEntitySelector.java
@@ -7,6 +7,7 @@ import javax.annotation.Nullable;
@@ -140,7 +140,12 @@ index 06ce390b6..939535cb2 100644
public static final Predicate<EntityLiving> b = EntityLiving::isAlive;
public static final Predicate<Entity> c = (entity) -> {
return entity.isAlive() && !entity.isVehicle() && !entity.isPassenger();
@@ -27,6 +28,7 @@ public final class IEntitySelector {
@@ -22,10 +23,12 @@ public final class IEntitySelector {
public static final Predicate<Entity> f = (entity) -> {
return !(entity instanceof EntityHuman) || !entity.isSpectator() && !((EntityHuman) entity).isCreative() && entity.world.getDifficulty() != EnumDifficulty.PEACEFUL;
};
+ public static Predicate<Entity> notSpectator() { return g; } // Purpur - OBFHELPER
public static final Predicate<Entity> g = (entity) -> {
return !entity.isSpectator();
};
public static Predicate<EntityHuman> isInsomniac = (player) -> MathHelper.clamp(((EntityPlayer) player).getStatisticManager().getStatisticValue(StatisticList.CUSTOM.get(StatisticList.TIME_SINCE_REST)), 1, Integer.MAX_VALUE) >= 72000; // Paper
@@ -149,10 +154,10 @@ index 06ce390b6..939535cb2 100644
// Paper start
public static final Predicate<Entity> affectsSpawning = (entity) -> {
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index b44038534..1fa4f0c9d 100644
index 602ed9aaa..43a88b728 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -235,6 +235,12 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -236,6 +236,12 @@ public class PlayerConnection implements PacketListenerPlayIn {
}
if (this.player.F() > 0L && this.minecraftServer.getIdleTimeout() > 0 && SystemUtils.getMonotonicMillis() - this.player.F() > (long) (this.minecraftServer.getIdleTimeout() * 1000 * 60)) {
@@ -165,7 +170,7 @@ index b44038534..1fa4f0c9d 100644
this.player.resetIdleTimer(); // CraftBukkit - SPIGOT-854
this.disconnect(new ChatMessage("multiplayer.disconnect.idling"));
}
@@ -458,6 +464,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -459,6 +465,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
this.lastYaw = to.getYaw();
this.lastPitch = to.getPitch();
@@ -174,7 +179,7 @@ index b44038534..1fa4f0c9d 100644
// Skip the first time we do this
if (true) { // Spigot - don't skip any move events
Location oldTo = to.clone();
@@ -1126,7 +1134,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1127,7 +1135,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
if (!this.player.H() && d11 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.playerInteractManager.isCreative() && this.player.playerInteractManager.getGameMode() != EnumGamemode.SPECTATOR) { // Spigot
flag1 = true;
@@ -183,7 +188,7 @@ index b44038534..1fa4f0c9d 100644
}
this.player.setLocation(d4, d5, d6, f, f1);
@@ -1165,6 +1173,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1166,6 +1174,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
this.lastYaw = to.getYaw();
this.lastPitch = to.getPitch();
@@ -263,7 +268,7 @@ index 361f7857e..2578a4677 100644
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 32856f744..de4d6fb56 100644
index 715d2c5e8..4904cb2ff 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2155,4 +2155,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View File

@@ -1,67 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sat, 19 Oct 2019 00:29:02 -0500
Subject: [PATCH] Evoker API
diff --git a/src/main/java/net/minecraft/server/EntityEvoker.java b/src/main/java/net/minecraft/server/EntityEvoker.java
index 307d723c9..4bea4ca7e 100644
--- a/src/main/java/net/minecraft/server/EntityEvoker.java
+++ b/src/main/java/net/minecraft/server/EntityEvoker.java
@@ -24,7 +24,7 @@ public class EntityEvoker extends EntityIllagerWizard {
this.goalSelector.a(8, new PathfinderGoalRandomStroll(this, 0.6D));
this.goalSelector.a(9, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 3.0F, 1.0F));
this.goalSelector.a(10, new PathfinderGoalLookAtPlayer(this, EntityInsentient.class, 8.0F));
- this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[]{EntityRaider.class})).a());
+ this.targetSelector.a(1, (new PathfinderGoalHurtByTarget(this, new Class[]{EntityRaider.class})).a(new Class[0])); // Purpur - decompile error
this.targetSelector.a(2, (new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)).a(300));
this.targetSelector.a(3, (new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false)).a(300));
this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityIronGolem.class, false));
@@ -79,12 +79,13 @@ public class EntityEvoker extends EntityIllagerWizard {
return SoundEffects.ENTITY_EVOKER_HURT;
}
+ public void setWololoTarget(@Nullable EntitySheep sheep) { a(sheep); } // Purpur - OBFHELPER
private void a(@Nullable EntitySheep entitysheep) {
this.bo = entitysheep;
}
@Nullable
- private EntitySheep fg() {
+ private EntitySheep fg() { return getWololoTarget(); } public EntitySheep getWololoTarget() { // Purpur - OBFHELPER
return this.bo;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEvoker.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEvoker.java
index 0636d2647..a7a548421 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEvoker.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEvoker.java
@@ -5,6 +5,10 @@ import net.minecraft.server.EntityIllagerWizard;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Evoker;
+// Purpur start
+import net.minecraft.server.EntitySheep;
+import javax.annotation.Nullable;
+// Purpur end
public class CraftEvoker extends CraftSpellcaster implements Evoker {
@@ -36,4 +40,17 @@ public class CraftEvoker extends CraftSpellcaster implements Evoker {
public void setCurrentSpell(Evoker.Spell spell) {
getHandle().setSpell(spell == null ? EntityIllagerWizard.Spell.NONE : EntityIllagerWizard.Spell.a(spell.ordinal()));
}
+
+ // Purpur start
+ @Nullable
+ public org.bukkit.entity.Sheep getWololoTarget() {
+ EntitySheep target = getHandle().getWololoTarget();
+ return target == null ? null : (org.bukkit.entity.Sheep) target.getBukkitEntity();
+ }
+
+ @Override
+ public void setWololoTarget(@Nullable org.bukkit.entity.Sheep sheep) {
+ getHandle().setWololoTarget(sheep == null ? null : (EntitySheep) ((CraftEntity) sheep).getHandle());
+ }
+ // Purpur end
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable server mod name
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index ba731edd3..5b684affd 100644
index 045c21d00..847c2d3d1 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1510,7 +1510,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas

View File

@@ -30,10 +30,10 @@ index 8921c2333..da79c7e63 100644
protected int getChestSlots() {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index aba9f08db..130516ce6 100644
index ec9174206..c9cff4c07 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -132,6 +132,7 @@ public abstract class EntityLiving extends Entity {
@@ -133,6 +133,7 @@ public abstract class EntityLiving extends Entity {
// CraftBukkit start
public int expToDrop;
public int maxAirTicks = 300;
@@ -41,7 +41,7 @@ index aba9f08db..130516ce6 100644
boolean forceDrops;
ArrayList<org.bukkit.inventory.ItemStack> drops = new ArrayList<org.bukkit.inventory.ItemStack>();
public final org.bukkit.craftbukkit.attribute.CraftAttributeMap craftAttributes;
@@ -226,8 +227,8 @@ public abstract class EntityLiving extends Entity {
@@ -227,8 +228,8 @@ public abstract class EntityLiving extends Entity {
this.cQ();
}
@@ -52,7 +52,7 @@ index aba9f08db..130516ce6 100644
if (!iblockdata.isAir()) {
double d1 = Math.min((double) (0.2F + f / 15.0F), 2.5D);
@@ -1679,7 +1680,7 @@ public abstract class EntityLiving extends Entity {
@@ -1680,7 +1681,7 @@ public abstract class EntityLiving extends Entity {
MobEffect mobeffect = this.getEffect(MobEffects.JUMP);
float f2 = mobeffect == null ? 0.0F : (float) (mobeffect.getAmplifier() + 1);
@@ -62,12 +62,12 @@ index aba9f08db..130516ce6 100644
protected void playBlockStepSound() {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 3777aba5f..2a82a2bb7 100644
index 22705cda3..ec4b30b7f 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -752,4 +752,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@@ -798,4 +798,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
getHandle().receive(((CraftItem) item).getHandle(), quantity);
}
// Paper end
+
+ // Purpur start

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Lagging threshold
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 5b684affd..eee7356d5 100644
index 847c2d3d1..22dadf6d2 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -166,6 +166,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas

View File

@@ -18,11 +18,11 @@ index 76c585299..f543bd84f 100644
private final int c;
private final EntityTypes<?> d;
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
index 1c3e6e0c9..c7067dd85 100644
index af84813c7..2d38a4782 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
@@ -353,4 +353,18 @@ public final class CraftItemFactory implements ItemFactory {
return nms != null ? net.minecraft.server.LocaleLanguage.getInstance().translateKey(nms.getItem().getName()) : null;
@@ -388,4 +388,18 @@ public final class CraftItemFactory implements ItemFactory {
new net.md_5.bungee.api.chat.TextComponent(customName));
}
// Paper end
+

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] PlayerSetSpawnerTypeWithEggEvent
diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java
index 2767de830..dcb43775b 100644
index e23247e0a..2faa83fad 100644
--- a/src/main/java/net/minecraft/server/EntityTypes.java
+++ b/src/main/java/net/minecraft/server/EntityTypes.java
@@ -143,10 +143,21 @@ public class EntityTypes<T extends Entity> {
@@ -143,6 +143,16 @@ public class EntityTypes<T extends Entity> {
return (EntityTypes) IRegistry.a((IRegistry) IRegistry.ENTITY_TYPE, s, (Object) entitytypes_builder.a(s));
}
@@ -25,12 +25,7 @@ index 2767de830..dcb43775b 100644
public static MinecraftKey getName(EntityTypes<?> entitytypes) {
return IRegistry.ENTITY_TYPE.getKey(entitytypes);
}
+ public static Optional<EntityTypes<?>> getType(String name) { return a(name); } // Purpur - OBFHELPER
public static Optional<EntityTypes<?>> a(String s) {
return IRegistry.ENTITY_TYPE.getOptional(MinecraftKey.a(s));
}
@@ -275,6 +286,16 @@ public class EntityTypes<T extends Entity> {
@@ -276,6 +286,16 @@ public class EntityTypes<T extends Entity> {
return this.bg;
}
@@ -44,10 +39,10 @@ index 2767de830..dcb43775b 100644
+ }
+ // Purpur end
+
public String getDescriptionId() { return f(); } // Paper - OBFHELPER
public String f() {
if (this.bo == null) {
this.bo = SystemUtils.a("entity", IRegistry.ENTITY_TYPE.getKey(this));
@@ -283,6 +304,7 @@ public class EntityTypes<T extends Entity> {
@@ -285,6 +305,7 @@ public class EntityTypes<T extends Entity> {
return this.bo;
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] EMC - MonsterEggSpawnEvent
diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java
index dcb43775b..8300e7d1e 100644
index 2faa83fad..c03b0b58b 100644
--- a/src/main/java/net/minecraft/server/EntityTypes.java
+++ b/src/main/java/net/minecraft/server/EntityTypes.java
@@ -177,19 +177,45 @@ public class EntityTypes<T extends Entity> {

View File

@@ -1,21 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sat, 19 Oct 2019 02:25:16 -0500
Subject: [PATCH] LivingEntity#playPickupItemAnimation
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 2a82a2bb7..a415707e9 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -763,5 +763,10 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
public void setSafeFallDistance(float safeFallDistance) {
getHandle().safeFallDistance = safeFallDistance;
}
+
+ @Override
+ public void playPickupItemAnimation(org.bukkit.entity.Item item, int quantity) {
+ getHandle().receive(((CraftItem)item).getHandle(), quantity);
+ }
// Purpur end
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] EntityMoveEvent
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 130516ce6..17128d5aa 100644
index c9cff4c07..c7c452e7f 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2790,6 +2790,20 @@ public abstract class EntityLiving extends Entity {
@@ -2801,6 +2801,20 @@ public abstract class EntityLiving extends Entity {
this.collideNearby();
this.world.getMethodProfiler().exit();

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Player invulnerabilities
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 8638d4622..71d2a658d 100644
index 237b85135..0ed9ab78c 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -144,6 +144,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -39,7 +39,7 @@ index 8638d4622..71d2a658d 100644
return false;
} else {
if (damagesource instanceof EntityDamageSource) {
@@ -983,6 +991,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -984,6 +992,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
// CraftBukkit end
}
@@ -47,7 +47,7 @@ index 8638d4622..71d2a658d 100644
return this;
}
}
@@ -2121,9 +2130,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -2122,9 +2131,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@Override
public boolean isFrozen() { // Paper - protected > public
@@ -67,10 +67,10 @@ index 8638d4622..71d2a658d 100644
public Scoreboard getScoreboard() {
return getBukkitEntity().getScoreboard().getHandle();
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 1fa4f0c9d..95534b0c3 100644
index 43a88b728..8b2f7d1f8 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1575,6 +1575,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1576,6 +1576,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
PlayerConnectionUtils.ensureMainThread(packetplayinresourcepackstatus, this, this.player.getWorldServer());
// Paper start
PlayerResourcePackStatusEvent.Status packStatus = PlayerResourcePackStatusEvent.Status.values()[packetplayinresourcepackstatus.status.ordinal()];
@@ -79,10 +79,10 @@ index 1fa4f0c9d..95534b0c3 100644
this.server.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(getPlayer(), packStatus));
// Paper end
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 33915eeb0..83219d657 100644
index 787e80c50..b40431aa4 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -903,6 +903,8 @@ public abstract class PlayerList {
@@ -902,6 +902,8 @@ public abstract class PlayerList {
}
// Paper end
@@ -108,7 +108,7 @@ index 2578a4677..c441fcea9 100644
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index de4d6fb56..5013c9175 100644
index 4904cb2ff..8cf61bf89 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2171,5 +2171,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View File

@@ -1,43 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Eearslya Sleiarion <eearslya@gmail.com>
Date: Mon, 24 Jun 2019 21:27:32 -0700
Subject: [PATCH] PaperPR - Add BellRingEvent
diff --git a/src/main/java/net/minecraft/server/BlockBell.java b/src/main/java/net/minecraft/server/BlockBell.java
index 2ef899c76..7db4e22c6 100644
--- a/src/main/java/net/minecraft/server/BlockBell.java
+++ b/src/main/java/net/minecraft/server/BlockBell.java
@@ -44,7 +44,7 @@ public class BlockBell extends BlockTileEntity {
Entity entity = iprojectile.getShooter();
EntityHuman entityhuman = entity instanceof EntityHuman ? (EntityHuman) entity : null;
- this.a(world, iblockdata, movingobjectpositionblock, entityhuman, true);
+ this.handleBellRing(world, iblockdata, movingobjectpositionblock, entityhuman, true, entity); // Purpur
}
@Override
@@ -53,11 +53,23 @@ public class BlockBell extends BlockTileEntity {
}
public boolean a(World world, IBlockData iblockdata, MovingObjectPositionBlock movingobjectpositionblock, @Nullable EntityHuman entityhuman, boolean flag) {
+ // Purpur start - BellRingEvent
+ return this.handleBellRing(world, iblockdata, movingobjectpositionblock, entityhuman, true, entityhuman);
+ }
+
+ public boolean handleBellRing(World world, IBlockData iblockdata, MovingObjectPositionBlock movingobjectpositionblock, @Nullable EntityHuman entityhuman, boolean flag, @Nullable Entity entity) {
+ // Purpur end
EnumDirection enumdirection = movingobjectpositionblock.getDirection();
BlockPosition blockposition = movingobjectpositionblock.getBlockPosition();
boolean flag1 = !flag || this.a(iblockdata, enumdirection, movingobjectpositionblock.getPos().y - (double) blockposition.getY());
if (flag1) {
+ // Purpur start - BellRingEvent
+ org.bukkit.block.Block block = world.getWorld().getBlockAt(blockposition.getX(), blockposition.getY(), blockposition.getZ());
+ if (!new com.destroystokyo.paper.event.block.BellRingEvent(block, entity.getBukkitEntity()).callEvent()) {
+ return true;
+ }
+ // Purpur end
boolean flag2 = this.a(world, blockposition, enumdirection);
if (flag2 && entityhuman != null) {

View File

@@ -17,10 +17,10 @@ index 8e93f1540..470f92c4f 100644
return this.a;
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 95534b0c3..5ec3679cc 100644
index 8b2f7d1f8..307ffb21d 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -76,6 +76,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -77,6 +77,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
private long lastKeepAlive = SystemUtils.getMonotonicMillis(); private void setLastPing(long lastPing) { this.lastKeepAlive = lastPing;}; private long getLastPing() { return this.lastKeepAlive;}; // Paper - OBFHELPER
private boolean awaitingKeepAlive; private void setPendingPing(boolean isPending) { this.awaitingKeepAlive = isPending;}; private boolean isPendingPing() { return this.awaitingKeepAlive;}; // Paper - OBFHELPER
private long h; private void setKeepAliveID(long keepAliveID) { this.h = keepAliveID;}; private long getKeepAliveID() {return this.h; }; // Paper - OBFHELPER
@@ -28,7 +28,7 @@ index 95534b0c3..5ec3679cc 100644
// CraftBukkit start - multithreaded fields
private volatile int chatThrottle;
private static final AtomicIntegerFieldUpdater chatSpamField = AtomicIntegerFieldUpdater.newUpdater(PlayerConnection.class, "chatThrottle");
@@ -204,6 +205,21 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -205,6 +206,21 @@ public class PlayerConnection implements PacketListenerPlayIn {
long currentTime = SystemUtils.getMonotonicMillis();
long elapsedTime = currentTime - this.getLastPing();
@@ -50,7 +50,7 @@ index 95534b0c3..5ec3679cc 100644
if (this.isPendingPing()) {
if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected
PlayerConnection.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getName()); // more info
@@ -2717,6 +2733,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -2723,6 +2739,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
@Override
public void a(PacketPlayInKeepAlive packetplayinkeepalive) {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Silk touch spawners
diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java
index a45ceff9f..d08b58473 100644
index 4b4f14711..372ee6adc 100644
--- a/src/main/java/net/minecraft/server/Block.java
+++ b/src/main/java/net/minecraft/server/Block.java
@@ -223,6 +223,7 @@ public class Block extends BlockBase implements IMaterial {
@@ -105,7 +105,7 @@ index 81e145ff0..91b92d95a 100644
return i;
diff --git a/src/main/java/net/minecraft/server/ItemSpawner.java b/src/main/java/net/minecraft/server/ItemSpawner.java
new file mode 100644
index 000000000..babe8ad2c
index 000000000..5c7f73918
--- /dev/null
+++ b/src/main/java/net/minecraft/server/ItemSpawner.java
@@ -0,0 +1,23 @@
@@ -124,7 +124,7 @@ index 000000000..babe8ad2c
+ if (spawner instanceof TileEntityMobSpawner && itemstack.hasTag()) {
+ NBTTagCompound tag = itemstack.getTag();
+ if (tag.hasKey("Purpur.mob_type")) {
+ EntityTypes.getType(tag.getString("Purpur.mob_type")).ifPresent(type ->
+ EntityTypes.getByName(tag.getString("Purpur.mob_type")).ifPresent(type ->
+ ((TileEntityMobSpawner) spawner).getSpawner().setMobName(type));
+ }
+ }

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Fix vanilla command permission handler
diff --git a/src/main/java/com/mojang/brigadier/tree/CommandNode.java b/src/main/java/com/mojang/brigadier/tree/CommandNode.java
index ca0d66448..0fab36224 100644
index d9c47f3fc..cf35c9d54 100644
--- a/src/main/java/com/mojang/brigadier/tree/CommandNode.java
+++ b/src/main/java/com/mojang/brigadier/tree/CommandNode.java
@@ -35,6 +35,7 @@ public abstract class CommandNode<S> implements Comparable<CommandNode<S>> {

View File

@@ -17,7 +17,7 @@ index c57e23e16..92aa104dc 100644
public AttributeModifiable a(AttributeBase attributebase) {
return (AttributeModifiable) this.b.computeIfAbsent(attributebase, (attributebase1) -> {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 958f361a5..1b8d9f129 100644
index 5dd2a52d3..6bf087bd2 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -137,7 +137,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -112,10 +112,10 @@ index 9f4f56c47..8dce2aad7 100644
}
}
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index 36df27024..b7fcade36 100644
index 9cf496b5e..be23120a2 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -939,6 +939,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -940,6 +940,7 @@ public abstract class EntityInsentient extends EntityLiving {
return f;
}
@@ -123,7 +123,7 @@ index 36df27024..b7fcade36 100644
protected void a(DifficultyDamageScaler difficultydamagescaler) {
if (this.random.nextFloat() < 0.15F * difficultydamagescaler.d()) {
int i = this.random.nextInt(2);
@@ -1046,6 +1047,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -1047,6 +1048,7 @@ public abstract class EntityInsentient extends EntityLiving {
}
}
@@ -131,7 +131,7 @@ index 36df27024..b7fcade36 100644
protected void b(DifficultyDamageScaler difficultydamagescaler) {
float f = difficultydamagescaler.d();
@@ -1087,10 +1089,12 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -1088,10 +1090,12 @@ public abstract class EntityInsentient extends EntityLiving {
} else {
this.setLeftHanded(false);
}
@@ -146,10 +146,10 @@ index 36df27024..b7fcade36 100644
return false;
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 17128d5aa..82cf853ab 100644
index c7c452e7f..cf56621ba 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2148,7 +2148,7 @@ public abstract class EntityLiving extends Entity {
@@ -2159,7 +2159,7 @@ public abstract class EntityLiving extends Entity {
this.enderTeleportTo(vec3d.x, vec3d.y, vec3d.z);
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Illusioners AI settings
diff --git a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
index 1c8231620..7b2c459ad 100644
index 73ac27913..66bfebe1c 100644
--- a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
+++ b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
@@ -19,6 +19,17 @@ public class EntityIllagerIllusioner extends EntityIllagerWizard implements IRan

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add option to set armorstand step height
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index 70c2c2e3e..eb32abc5d 100644
index 81df71b7e..afa23395c 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -617,6 +617,7 @@ public class EntityArmorStand extends EntityLiving {
@@ -17,7 +17,7 @@ index 70c2c2e3e..eb32abc5d 100644
if (!this.canTick) {
if (this.noTickPoseDirty) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 06d9d9ed4..b41d4959c 100644
index 95e801ce2..f01c74a2e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -63,6 +63,11 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Cows eat mushrooms
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 1b8d9f129..449cf9d77 100644
index 6bf087bd2..2be922a71 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -2724,6 +2724,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2729,6 +2729,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
this.invulnerable = flag;
}
@@ -110,10 +110,10 @@ index 42e6761c8..cfb009c81 100644
public EntityCow createChild(WorldServer worldserver, EntityAgeable entityageable) {
return (EntityCow) EntityTypes.COW.a((World) worldserver);
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 82cf853ab..5e9849a46 100644
index cf56621ba..76575ea5f 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -80,7 +80,7 @@ public abstract class EntityLiving extends Entity {
@@ -81,7 +81,7 @@ public abstract class EntityLiving extends Entity {
public int maxNoDamageTicks;
public final float ay;
public final float az;

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Signs allow color codes
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 71d2a658d..7fad63234 100644
index 0ed9ab78c..698a2623b 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1243,6 +1243,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -1244,6 +1244,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@Override
public void openSign(TileEntitySign tileentitysign) {
@@ -17,10 +17,10 @@ index 71d2a658d..7fad63234 100644
this.playerConnection.sendPacket(new PacketPlayOutOpenSignEditor(tileentitysign.getPosition()));
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 5ec3679cc..8e6192fa6 100644
index 307ffb21d..3a7014d30 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -2714,6 +2714,14 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -2720,6 +2720,14 @@ public class PlayerConnection implements PacketListenerPlayIn {
}
}
// Paper end

View File

@@ -22,10 +22,10 @@ index 2291135ea..bc61aaff6 100644
super(i, j, k);
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 5e9849a46..f7c969764 100644
index 76575ea5f..c8b1fbcf1 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -98,9 +98,9 @@ public abstract class EntityLiving extends Entity {
@@ -99,9 +99,9 @@ public abstract class EntityLiving extends Entity {
protected int aO;protected int getKillCount() { return this.aO; } // Paper - OBFHELPER
public float lastDamage;
public boolean jumping; // Paper protected -> public
@@ -119,7 +119,7 @@ index ceef7aaf9..002651aaf 100644
}
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 70e504ff3..276131adc 100644
index 2763cc943..e54d071dd 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1,5 +1,7 @@

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Disable loot drops on death by cramming
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index f7c969764..618faae95 100644
index c8b1fbcf1..d9c19f8f5 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1484,8 +1484,10 @@ public abstract class EntityLiving extends Entity {
@@ -1485,8 +1485,10 @@ public abstract class EntityLiving extends Entity {
this.dropInventory(); // CraftBukkit - from below
if (this.cV() && this.world.getGameRules().getBoolean(GameRules.DO_MOB_LOOT)) {
@@ -20,7 +20,7 @@ index f7c969764..618faae95 100644
// CraftBukkit start - Call death event
org.bukkit.event.entity.EntityDeathEvent deathEvent = CraftEventFactory.callEntityDeathEvent(this, this.drops); // Paper
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 276131adc..143908b2d 100644
index e54d071dd..a12a55dc9 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -110,6 +110,11 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Players should not cram to death
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 7fad63234..65c241d88 100644
index 698a2623b..a99429080 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1219,7 +1219,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -1220,7 +1220,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@Override
public boolean isInvulnerable(DamageSource damagesource) {

View File

@@ -19,7 +19,7 @@ index fcf254bba..79554e18f 100644
return itemstack.isEmpty() ? new ItemStack(Items.BUCKET) : itemstack;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 143908b2d..77e2dce3f 100644
index a12a55dc9..883614746 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -111,8 +111,10 @@ public class PurpurWorldConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Debug stick should not update neighbors
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index ace50805b..76cc28517 100644
index 3adb29f00..e7759f248 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -229,6 +229,11 @@ public final class ItemStack {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Fix reloading paper.yml
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index d5a1ade21..fedea8106 100644
index fbfea9e98..b0fcf7604 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -20,7 +20,7 @@ public class PaperWorldConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Fix the dead lagging the server
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 449cf9d77..6d809cc78 100644
index 2be922a71..5bb1d8e51 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1501,6 +1501,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -17,10 +17,10 @@ index 449cf9d77..6d809cc78 100644
public void f(double d0, double d1, double d2) {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 618faae95..51b2aa3e2 100644
index d9c19f8f5..91fc7ba76 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2466,7 +2466,7 @@ public abstract class EntityLiving extends Entity {
@@ -2477,7 +2477,7 @@ public abstract class EntityLiving extends Entity {
}
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add permission for F3+N debug
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 83219d657..8757711e9 100644
index b40431aa4..daf5beb0b 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -1057,6 +1057,7 @@ public abstract class PlayerList {
@@ -1056,6 +1056,7 @@ public abstract class PlayerList {
} else {
b0 = (byte) (24 + i);
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable TPS Catchup
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index eee7356d5..89f422524 100644
index 22dadf6d2..70f497385 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1001,7 +1001,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas

View File

@@ -18,7 +18,7 @@ index a3150bd1c..b24b8c39d 100644
if (b0 > 0 && !this.z()) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 3e1e1d336..61094d4f7 100644
index 355df16d2..ae7de565c 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -112,9 +112,11 @@ public class PurpurWorldConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Entities pick up loot bypass mob-griefing gamerule
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index b7fcade36..fc2ac5fb8 100644
index be23120a2..57d8936a9 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -542,7 +542,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -18,7 +18,7 @@ index b7fcade36..fc2ac5fb8 100644
Iterator iterator = list.iterator();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index e6a1d88a2..1a830b579 100644
index c1e511bad..0008c4b12 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -111,10 +111,12 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Allow leashing villagers
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index fc2ac5fb8..c87c95160 100644
index 57d8936a9..3460b0f5a 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -1138,6 +1138,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -1139,6 +1139,7 @@ public abstract class EntityInsentient extends EntityLiving {
if (!this.isAlive()) {
return EnumInteractionResult.PASS;
} else if (this.getLeashHolder() == entityhuman) {
@@ -51,10 +51,10 @@ index 74c2d89af..96dda6a14 100644
@Override
public EntityAgeable createChild(WorldServer worldserver, EntityAgeable entityageable) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 26a760bc3..665eac22f 100644
index 5826c2985..077860df8 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -269,17 +269,21 @@ public class PurpurWorldConfig {
@@ -276,17 +276,21 @@ public class PurpurWorldConfig {
public int villagerBrainTicks = 1;
public boolean villagerUseBrainTicksOnlyWhenLagging = true;

View File

@@ -40,7 +40,7 @@ index eb62555cb..48f9feaea 100644
return 0;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 58b21bc81..2d2dfe572 100644
index 7c27696eb..4c43444cb 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -121,6 +121,13 @@ public class PurpurWorldConfig {

View File

@@ -17,7 +17,7 @@ index c2adc7f52..24a6102b3 100644
// Paper start
if (asyncsavedata == null && !entity.dead && (int) Math.floor(entity.locX()) >> 4 != chunk.getPos().x || (int) Math.floor(entity.locZ()) >> 4 != chunk.getPos().z) {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 6d809cc78..15e5fc122 100644
index 5bb1d8e51..49cf334fc 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -309,6 +309,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -34,10 +34,10 @@ index 6d809cc78..15e5fc122 100644
return false;
}
diff --git a/src/main/java/net/minecraft/server/EntityEnderSignal.java b/src/main/java/net/minecraft/server/EntityEnderSignal.java
index 6e5b46077..49d328aaa 100644
index e3865a9b4..de55acd1c 100644
--- a/src/main/java/net/minecraft/server/EntityEnderSignal.java
+++ b/src/main/java/net/minecraft/server/EntityEnderSignal.java
@@ -19,9 +19,16 @@ public class EntityEnderSignal extends Entity {
@@ -19,6 +19,13 @@ public class EntityEnderSignal extends Entity {
this.setPosition(d0, d1, d2);
}
@@ -49,12 +49,8 @@ index 6e5b46077..49d328aaa 100644
+ // Purpur end
+
public void b(ItemStack itemstack) {
if (itemstack.getItem() != Items.ENDER_EYE || itemstack.hasTag()) {
- this.getDataWatcher().set(EntityEnderSignal.b, SystemUtils.a((Object) itemstack.cloneItemStack(), (itemstack1) -> {
+ this.getDataWatcher().set(EntityEnderSignal.b, SystemUtils.a(itemstack.cloneItemStack(), (itemstack1) -> { // Purpur - decompile error
itemstack1.setCount(1);
}));
}
if (true || itemstack.getItem() != Items.ENDER_EYE || itemstack.hasTag()) { // CraftBukkit - always allow item changing
this.getDataWatcher().set(EntityEnderSignal.b, SystemUtils.a(itemstack.cloneItemStack(), (itemstack1) -> { // CraftBukkit - decompile error
diff --git a/src/main/java/net/minecraft/server/IProjectile.java b/src/main/java/net/minecraft/server/IProjectile.java
index 9f5ce64a6..0bac6b050 100644
--- a/src/main/java/net/minecraft/server/IProjectile.java
@@ -74,7 +70,7 @@ index 9f5ce64a6..0bac6b050 100644
if (entity != null) {
this.shooter = entity.getUniqueID();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 2d2dfe572..6ac786206 100644
index 4c43444cb..839fead62 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -113,11 +113,13 @@ public class PurpurWorldConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable void damage height
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 15e5fc122..4f87d1312 100644
index 49cf334fc..dfc54b6c1 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -612,7 +612,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -18,7 +18,7 @@ index 15e5fc122..4f87d1312 100644
&& this.locY() >= world.paperConfig.netherVoidTopDamageHeight)) {
this.doVoidDamage();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 6ac786206..a071129db 100644
index 839fead62..4466f21ba 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -115,12 +115,14 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Dispenser curse of binding protection
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index c87c95160..10735e8bd 100644
index 3460b0f5a..fc1a1bc74 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -985,6 +985,13 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -986,6 +986,13 @@ public abstract class EntityInsentient extends EntityLiving {
}
@@ -44,7 +44,7 @@ index 669a50411..7cd2e871b 100644
return this.b;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index fe8411755..b16446527 100644
index 4466f21ba..a37b76ea9 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -162,6 +162,11 @@ public class PurpurWorldConfig {

View File

@@ -17,7 +17,7 @@ index 7df2837d6..0f25d7cd6 100644
} else {
return EntityBoat.EnumStatus.IN_AIR;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index f741218df..15e2d9dd0 100644
index a37b76ea9..0c2913073 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -110,6 +110,7 @@ public class PurpurWorldConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add obfhelpers for plugin use
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index 76cc28517..0d548dae6 100644
index e7759f248..2c908a604 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -644,6 +644,7 @@ public final class ItemStack {

View File

@@ -1,35 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sat, 17 Aug 2019 15:27:09 -0500
Subject: [PATCH] Add option for zombies targetting turtle eggs
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
index 039c5f438..cb7d61937 100644
--- a/src/main/java/net/minecraft/server/EntityZombie.java
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
@@ -46,7 +46,7 @@ public class EntityZombie extends EntityMonster {
@Override
protected void initPathfinder() {
- this.goalSelector.a(4, new EntityZombie.a(this, 1.0D, 3));
+ if (world.purpurConfig.zombieTargetTurtleEggs) this.goalSelector.a(4, new EntityZombie.a(this, 1.0D, 3)); // Purpur
this.goalSelector.a(8, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 8.0F));
this.goalSelector.a(8, new PathfinderGoalRandomLookaround(this));
this.m();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 4466f21ba..fe8411755 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -323,6 +323,11 @@ public class PurpurWorldConfig {
witherSkeletonTakesWitherDamage = getBoolean("mobs.wither_skeleton.takes-wither-damage", witherSkeletonTakesWitherDamage);
}
+ public boolean zombieTargetTurtleEggs = true;
+ private void zombieSettings() {
+ zombieTargetTurtleEggs = getBoolean("mobs.zombie.target-turtle-eggs", zombieTargetTurtleEggs);
+ }
+
public double zombieHorseSpawnChance = 0.0D;
private void zombieHorseSettings() {
zombieHorseSpawnChance = getDouble("mobs.zombie_horse.spawn-chance", zombieHorseSpawnChance);

View File

@@ -54,7 +54,7 @@ index e33a42dcd..e053f9c37 100644
if (entry != null) {
ItemStack itemstack = (ItemStack) entry.getValue();
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index 0d548dae6..f5b970525 100644
index 2c908a604..6a9b7e609 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -418,10 +418,19 @@ public final class ItemStack {
@@ -78,7 +78,7 @@ index 0d548dae6..f5b970525 100644
return this.tag == null ? 0 : this.tag.getInt("Damage");
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 15e2d9dd0..993ad17ec 100644
index 0c2913073..32e87b6ff 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -110,6 +110,7 @@ public class PurpurWorldConfig {

View File

@@ -63,7 +63,7 @@ index f208ab509..ce56edb7c 100644
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index d59e1475e..be2ebd73a 100644
index 32e87b6ff..27438136d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -166,6 +166,13 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Climbing should not bypass cramming gamerule
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 4f87d1312..79e6f4361 100644
index dfc54b6c1..98b62223b 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1692,6 +1692,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -1693,6 +1693,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
}
public boolean isCollidable() {
@@ -22,7 +22,7 @@ index 4f87d1312..79e6f4361 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index eb32abc5d..6a505b3b0 100644
index afa23395c..4f950c6aa 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -320,7 +320,7 @@ public class EntityArmorStand extends EntityLiving {
@@ -74,10 +74,10 @@ index da79c7e63..8cfbf8abf 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 51b2aa3e2..788175110 100644
index 91fc7ba76..ba4e4ace5 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2854,7 +2854,7 @@ public abstract class EntityLiving extends Entity {
@@ -2865,7 +2865,7 @@ public abstract class EntityLiving extends Entity {
// Paper - end don't run getEntities if we're not going to use its result
// Tuinity start - reduce memory allocation from collideNearby
List<Entity> list = com.tuinity.tuinity.util.CachedLists.getTempGetEntitiesList();
@@ -86,7 +86,7 @@ index 51b2aa3e2..788175110 100644
try {
// Tuinity end - reduce memory allocation from collideNearby
@@ -2999,7 +2999,14 @@ public abstract class EntityLiving extends Entity {
@@ -3010,7 +3010,14 @@ public abstract class EntityLiving extends Entity {
@Override
public boolean isCollidable() {
@@ -131,10 +131,10 @@ index 34e08dda2..6bb73f869 100644
@Override
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 65c241d88..9b6e356bb 100644
index a99429080..2b22029ea 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1771,8 +1771,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -1772,8 +1772,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
}
@Override
@@ -146,7 +146,7 @@ index 65c241d88..9b6e356bb 100644
// Purpur end
diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java
index 939535cb2..70eb26304 100644
index c8e384ab6..44fb1e1f7 100644
--- a/src/main/java/net/minecraft/server/IEntitySelector.java
+++ b/src/main/java/net/minecraft/server/IEntitySelector.java
@@ -45,11 +45,17 @@ public final class IEntitySelector {
@@ -169,7 +169,7 @@ index 939535cb2..70eb26304 100644
} else if (entity.world.isClientSide && (!(entity1 instanceof EntityHuman) || !((EntityHuman) entity1).ey())) {
return false;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index a9b1a130b..860e25dfd 100644
index 27438136d..76c8ecda5 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -114,6 +114,7 @@ public class PurpurWorldConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add 5 second tps average in /tps
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 89f422524..781621126 100644
index 70f497385..21d0f3d45 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -165,7 +165,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Implement elytra settings
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 788175110..2c90e7835 100644
index ba4e4ace5..11abe8a93 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2825,7 +2825,16 @@ public abstract class EntityLiving extends Entity {
@@ -2836,7 +2836,16 @@ public abstract class EntityLiving extends Entity {
if (itemstack.getItem() == Items.ELYTRA && ItemElytra.d(itemstack)) {
flag = true;
if (!this.world.isClientSide && (this.be + 1) % 20 == 0) {
@@ -46,7 +46,7 @@ index 885c03f62..3a33ad181 100644
itemstack.subtract(1);
} else ((EntityPlayer) entityhuman).getBukkitEntity().updateInventory();
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index f5b970525..58c2ab659 100644
index 6a9b7e609..40f553e39 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -450,7 +450,7 @@ public final class ItemStack {
@@ -93,7 +93,7 @@ index 3663b7017..18f767dc5 100644
entityhuman.r(20);
if (entityhuman.isOnGround()) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 860e25dfd..d1b0d4030 100644
index 76c8ecda5..607157312 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -131,6 +131,19 @@ public class PurpurWorldConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Item entity immunities
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 79e6f4361..6c64f86b7 100644
index 98b62223b..5e010d115 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1450,6 +1450,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -17,7 +17,7 @@ index 79e6f4361..6c64f86b7 100644
return this.O == tag;
}
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
index cfb31c412..3afc38810 100644
index bc4f84c88..b6cb52c10 100644
--- a/src/main/java/net/minecraft/server/EntityItem.java
+++ b/src/main/java/net/minecraft/server/EntityItem.java
@@ -23,6 +23,8 @@ public class EntityItem extends Entity {
@@ -42,7 +42,7 @@ index cfb31c412..3afc38810 100644
} else {
// CraftBukkit start
if (org.bukkit.craftbukkit.event.CraftEventFactory.handleNonLivingEntityDamageEvent(this, damagesource, f)) {
@@ -453,6 +461,8 @@ public class EntityItem extends Entity {
@@ -454,6 +462,8 @@ public class EntityItem extends Entity {
com.google.common.base.Preconditions.checkArgument(!itemstack.isEmpty(), "Cannot drop air"); // CraftBukkit
this.getDataWatcher().set(EntityItem.ITEM, itemstack);
this.getDataWatcher().markDirty(EntityItem.ITEM); // CraftBukkit - SPIGOT-4591, must mark dirty
@@ -51,7 +51,7 @@ index cfb31c412..3afc38810 100644
}
@Override
@@ -522,4 +532,15 @@ public class EntityItem extends Entity {
@@ -523,4 +533,15 @@ public class EntityItem extends Entity {
public Packet<?> P() {
return new PacketPlayOutSpawnEntity(this);
}
@@ -88,7 +88,7 @@ index c64bbde28..3c1cf5903 100644
int i;
int j;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index d1b0d4030..9de724686 100644
index 607157312..401489cab 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -99,6 +99,21 @@ public class PurpurWorldConfig {

View File

@@ -61,7 +61,7 @@ index 96a8abb18..194b76059 100644
public void setAngerTarget(@Nullable UUID uuid) {
this.br = uuid;
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
index cb7d61937..1ea68f617 100644
index a11612fa0..3e5c69287 100644
--- a/src/main/java/net/minecraft/server/EntityZombie.java
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
@@ -3,6 +3,7 @@ package net.minecraft.server;
@@ -92,7 +92,7 @@ index cb7d61937..1ea68f617 100644
+
@Override
protected void initPathfinder() {
if (world.purpurConfig.zombieTargetTurtleEggs) this.goalSelector.a(4, new EntityZombie.a(this, 1.0D, 3)); // Purpur
if (world.paperConfig.zombiesTargetTurtleEggs) this.goalSelector.a(4, new EntityZombie.a(this, 1.0D, 3)); // Paper
@@ -439,19 +454,19 @@ public class EntityZombie extends EntityMonster {
if (object instanceof EntityZombie.GroupDataZombie) {
EntityZombie.GroupDataZombie entityzombie_groupdatazombie = (EntityZombie.GroupDataZombie) object;
@@ -193,7 +193,7 @@ index b52b8d0d8..69e98dceb 100644
protected void initDatawatcher() {
super.initDatawatcher();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 2b945553e..c7bdbcecf 100644
index 401489cab..2c0aeeb24 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -265,6 +265,15 @@ public class PurpurWorldConfig {
@@ -228,20 +228,19 @@ index 2b945553e..c7bdbcecf 100644
public double illusionerMaxHealth = 32.0D;
public double illusionerMovementSpeed = 0.5D;
public double illusionerFollowRange = 18.0D;
@@ -370,12 +388,36 @@ public class PurpurWorldConfig {
@@ -369,8 +387,35 @@ public class PurpurWorldConfig {
witherSkeletonTakesWitherDamage = getBoolean("mobs.wither_skeleton.takes-wither-damage", witherSkeletonTakesWitherDamage);
}
public boolean zombieTargetTurtleEggs = true;
+ public boolean zombieJockeyOnlyBaby = true;
+ public double zombieJockeyChance = 0.05D;
+ public boolean zombieJockeyTryExistingChickens = true;
private void zombieSettings() {
zombieTargetTurtleEggs = getBoolean("mobs.zombie.target-turtle-eggs", zombieTargetTurtleEggs);
+ private void zombieSettings() {
+ zombieJockeyOnlyBaby = getBoolean("mobs.zombie.jockey.only-babies", zombieJockeyOnlyBaby);
+ zombieJockeyChance = getDouble("mobs.zombie.jockey.chance", zombieJockeyChance);
+ zombieJockeyTryExistingChickens = getBoolean("mobs.zombie.jockey.try-existing-chickens", zombieJockeyTryExistingChickens);
}
+ }
+
public double zombieHorseSpawnChance = 0.0D;
private void zombieHorseSettings() {
zombieHorseSpawnChance = getDouble("mobs.zombie_horse.spawn-chance", zombieHorseSpawnChance);

View File

@@ -17,10 +17,10 @@ index 6fe5678cf..bd0267ee4 100644
return (new EntityDamageSourceIndirect("indirectMagic", entity, entity1)).setIgnoreArmor().setMagic();
}
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 6c64f86b7..92270427d 100644
index 5e010d115..a15bcfc0b 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1568,6 +1568,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -1569,6 +1569,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return d3 * d3 + d4 * d4 + d5 * d5;
}
@@ -28,7 +28,7 @@ index 6c64f86b7..92270427d 100644
public double h(Entity entity) {
return this.e(entity.getPositionVector());
}
@@ -2095,8 +2096,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2100,8 +2101,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return this.a(new ItemStack(imaterial), (float) i);
}
@@ -329,7 +329,7 @@ index 550f80bfd..b3616185d 100644
return entityliving != null ? EntityPhantom.this.a(EntityPhantom.this.getGoalTarget(), PathfinderTargetCondition.a) : false;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c7bdbcecf..8ac088781 100644
index 2c0aeeb24..1fe816eb0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -331,6 +331,15 @@ public class PurpurWorldConfig {

View File

@@ -26,7 +26,7 @@ index 0e74794d3..d617b5345 100644
return EntityInsentient.p().a(GenericAttributes.MAX_HEALTH, 200.0D);
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 8ac088781..c9e18e50c 100644
index 1fe816eb0..c7ce9651b 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -276,9 +276,11 @@ public class PurpurWorldConfig {

View File

@@ -233,10 +233,10 @@ index beaea041d..ce8834980 100644
return iblockdata.r(iblockaccess, blockposition) ? false : (iblockdata.isPowerSource() ? false : (!fluid.isEmpty() ? false : (iblockdata.a((Tag) TagsBlock.PREVENT_MOB_SPAWNING_INSIDE) ? false : !entitytypes.a(iblockdata))));
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index e9e55c6f1..db372797a 100644
index 5bc1a03f2..5fefef867 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1430,6 +1430,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@@ -1432,6 +1432,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
return new DifficultyDamageScaler(this.getDifficulty(), this.getDayTime(), i, f);
}
@@ -245,7 +245,7 @@ index e9e55c6f1..db372797a 100644
public int c() {
return this.d;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c9e18e50c..14b5e7207 100644
index c7ce9651b..89782b7d1 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -336,10 +336,34 @@ public class PurpurWorldConfig {

View File

@@ -18,7 +18,7 @@ index d28c1a67e..c37225202 100644
}
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 14b5e7207..ad5904395 100644
index 89782b7d1..a85803fed 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -2,6 +2,7 @@ package net.pl3x.purpur;

View File

@@ -30,7 +30,7 @@ index 21c5ad83a..521d161a3 100644
public static boolean a(World world) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index ad5904395..21d671cd9 100644
index a85803fed..4f1998d7e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -240,6 +240,22 @@ public class PurpurWorldConfig {

View File

@@ -49,10 +49,10 @@ index 120bf8436..848a185c0 100644
return true;
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index db372797a..6cc37f5b9 100644
index 5fefef867..640bcc566 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1505,4 +1505,14 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@@ -1507,4 +1507,14 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
public final boolean isDebugWorld() {
return this.debugWorld;
}

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] MC-171420 - Fix deop kicking non-whitelisted player when
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 781621126..8a76ed6ae 100644
index 21d0f3d45..4b67c3d2f 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1961,6 +1961,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1962,6 +1962,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
if (this.aM()) {
PlayerList playerlist = commandlistenerwrapper.getServer().getPlayerList();
WhiteList whitelist = playerlist.getWhitelist();

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] ALlow color codes in books
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 8e6192fa6..70a65cbbb 100644
index 3a7014d30..f3e2b6e6e 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -936,12 +936,13 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -937,12 +937,13 @@ public class PlayerConnection implements PacketListenerPlayIn {
itemstack2.setTag(nbttagcompound.clone());
}
@@ -24,7 +24,7 @@ index 8e6192fa6..70a65cbbb 100644
ChatComponentText chatcomponenttext = new ChatComponentText(s);
s = IChatBaseComponent.ChatSerializer.a((IChatBaseComponent) chatcomponenttext);
@@ -953,7 +954,14 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -954,7 +955,14 @@ public class PlayerConnection implements PacketListenerPlayIn {
} else {
// Paper start - dont mutate players current item, set it from the event
ItemStack newBook = itemstack1.cloneItemStack();
@@ -40,7 +40,7 @@ index 8e6192fa6..70a65cbbb 100644
this.player.setSlot(enumitemslot, CraftEventFactory.handleEditBookEvent(player, enumitemslot, itemstack1, newBook));
// Paper end
}
@@ -963,6 +971,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -964,6 +972,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
}
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Entity lifespan
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index 10735e8bd..7f5095f7e 100644
index fc1a1bc74..0ecc5bd28 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -53,7 +53,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -82,7 +82,7 @@ index 10735e8bd..7f5095f7e 100644
}
@Override
@@ -1535,7 +1567,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -1536,7 +1568,7 @@ public abstract class EntityInsentient extends EntityLiving {
this.a((EntityLiving) this, entity);
this.z(entity);
}
@@ -92,10 +92,10 @@ index 10735e8bd..7f5095f7e 100644
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 70a65cbbb..87cd7debf 100644
index f3e2b6e6e..ff4a45777 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -2131,6 +2131,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -2132,6 +2132,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
boolean triggerLeashUpdate = itemInHand != null && itemInHand.getItem() == Items.LEAD && entity instanceof EntityInsentient;
Item origItem = this.player.inventory.getItemInHand() == null ? null : this.player.inventory.getItemInHand().getItem();
PlayerInteractEntityEvent event;
@@ -104,7 +104,7 @@ index 70a65cbbb..87cd7debf 100644
event = new PlayerInteractEntityEvent((Player) this.getPlayer(), entity.getBukkitEntity(), (packetplayinuseentity.c() == EnumHand.OFF_HAND) ? EquipmentSlot.OFF_HAND : EquipmentSlot.HAND);
} else {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 2f5bc77e0..4e8a6992a 100644
index 4f1998d7e..6279d6bb1 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -101,6 +101,11 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add option to teleport to spawn if outside world border
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 2c90e7835..61a74e296 100644
index 11abe8a93..2e4859709 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -277,6 +277,13 @@ public abstract class EntityLiving extends Entity {
@@ -278,6 +278,13 @@ public abstract class EntityLiving extends Entity {
double d1 = this.world.getWorldBorder().getDamageAmount();
if (d1 > 0.0D) {
@@ -23,7 +23,7 @@ index 2c90e7835..61a74e296 100644
}
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 4a333b9bc..a91e8f8e5 100644
index 6279d6bb1..a04e2f9d3 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -180,6 +180,11 @@ public class PurpurWorldConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Squid EAR immunity
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index a91e8f8e5..737df8d11 100644
index a04e2f9d3..a5c4b80ec 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -437,6 +437,11 @@ public class PurpurWorldConfig {

View File

@@ -70,7 +70,7 @@ index 4c379916d..ea6b61c9b 100644
public static final Item dr = a(Blocks.JACK_O_LANTERN, CreativeModeTab.b);
public static final Item ds = a(Blocks.OAK_TRAPDOOR, CreativeModeTab.d);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 737df8d11..9369a8bad 100644
index a5c4b80ec..2f5a67097 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -392,6 +392,9 @@ public class PurpurWorldConfig {

Some files were not shown because too many files have changed in this diff Show More