From f74678371dba5535327fe6d129823fd442cd8955 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Sat, 4 May 2019 00:23:04 -0500 Subject: [PATCH] Update upstream --- ...ebrand-Purpur.patch => 0001-Rebrand.patch} | 23 +- ...cows-to-mooshroom-when-fed-mushrooms.patch | 6 +- patches/api/0003-PlayerFeedAnimalEvent.patch | 18 +- ...ose-Animals-isBreedingItem-ItemStack.patch | 12 +- patches/api/0005-Integrate-ridables.patch | 6 +- ...ebrand-Purpur.patch => 0001-Rebrand.patch} | 46 +-- ...cows-to-mooshroom-when-fed-mushrooms.patch | 14 +- ...ose-Animals-isBreedingItem-ItemStack.patch | 10 +- ...cow-rotation-when-shearing-mooshroom.patch | 6 +- patches/server/0007-Integrate-ridables.patch | 304 ++++++------------ purpur | 14 +- scripts/importmcdev.sh | 2 +- 12 files changed, 174 insertions(+), 287 deletions(-) rename patches/api/{0001-Rebrand-Purpur.patch => 0001-Rebrand.patch} (83%) rename patches/server/{0001-Rebrand-Purpur.patch => 0001-Rebrand.patch} (72%) diff --git a/patches/api/0001-Rebrand-Purpur.patch b/patches/api/0001-Rebrand.patch similarity index 83% rename from patches/api/0001-Rebrand-Purpur.patch rename to patches/api/0001-Rebrand.patch index 757fdb6fa..1a3614983 100644 --- a/patches/api/0001-Rebrand-Purpur.patch +++ b/patches/api/0001-Rebrand.patch @@ -1,15 +1,15 @@ -From ffa35dba22251b8317f83f702357707dca9fde81 Mon Sep 17 00:00:00 2001 +From 54a9be260f9d24b37ddf635cd8b7cfee6ab99bf5 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath -Date: Tue, 30 Apr 2019 13:50:41 -0600 -Subject: [PATCH] Rebrand Purpur +Date: Sat, 4 May 2019 00:57:16 -0500 +Subject: [PATCH] Rebrand --- - pom.xml | 10 ++++----- + pom.xml | 8 +++---- .../command/defaults/VersionCommand.java | 21 +++++++++++-------- - 2 files changed, 17 insertions(+), 14 deletions(-) + 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/pom.xml b/pom.xml -index 3347be41..c6b3aaec 100644 +index 13cdc25f..1e24fd1e 100644 --- a/pom.xml +++ b/pom.xml @@ -4,17 +4,17 @@ @@ -28,18 +28,17 @@ index 3347be41..c6b3aaec 100644 1.13.2-R0.1-SNAPSHOT jar -- Paper-API + Paper-API - https://github.com/PaperMC/Paper -+ Purpur-API + https://github.com/pl3xgaming/Purpur An enhanced plugin API for Minecraft servers. diff --git a/src/main/java/org/bukkit/command/defaults/VersionCommand.java b/src/main/java/org/bukkit/command/defaults/VersionCommand.java -index 5cebb245..e3efafdc 100644 +index ee07fe5e..0c4e8604 100644 --- a/src/main/java/org/bukkit/command/defaults/VersionCommand.java +++ b/src/main/java/org/bukkit/command/defaults/VersionCommand.java -@@ -207,8 +207,8 @@ public class VersionCommand extends BukkitCommand { +@@ -214,8 +214,8 @@ public class VersionCommand extends BukkitCommand { private void obtainVersion() { String version = Bukkit.getVersion(); if (version == null) version = "Custom"; @@ -50,10 +49,10 @@ index 5cebb245..e3efafdc 100644 int distance = getDistance(null, parts[0]); switch (distance) { case -1: -@@ -259,13 +259,16 @@ public class VersionCommand extends BukkitCommand { +@@ -266,13 +266,16 @@ public class VersionCommand extends BukkitCommand { // Paper start - private static int getDistance(String repo, String verInfo) { + private static int getDistance(@NotNull String repo, @NotNull String verInfo) { - try { - int currentVer = Integer.decode(verInfo); - return getFromJenkins(currentVer); diff --git a/patches/api/0002-cows-to-mooshroom-when-fed-mushrooms.patch b/patches/api/0002-cows-to-mooshroom-when-fed-mushrooms.patch index 64728b334..ea0255a7e 100644 --- a/patches/api/0002-cows-to-mooshroom-when-fed-mushrooms.patch +++ b/patches/api/0002-cows-to-mooshroom-when-fed-mushrooms.patch @@ -1,4 +1,4 @@ -From c52f2d6be3d4fa135ab7f0841acb6cc3f235673f Mon Sep 17 00:00:00 2001 +From c5475c4147ad18323c8dc56755e7b6f8df714870 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 3 May 2019 23:21:23 -0500 Subject: [PATCH] cows to mooshroom when fed mushrooms @@ -8,10 +8,10 @@ Subject: [PATCH] cows to mooshroom when fed mushrooms 1 file changed, 6 insertions(+) diff --git a/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java -index d9e5cab9..6c163bd4 100644 +index 12194f1f..8b2e533d 100644 --- a/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java +++ b/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java -@@ -76,6 +76,12 @@ public class EntityTransformedEvent extends EntityEvent implements Cancellable { +@@ -83,6 +83,12 @@ public class EntityTransformedEvent extends EntityEvent implements Cancellable { * When a mooshroom turns to a cow */ SHEARED, diff --git a/patches/api/0003-PlayerFeedAnimalEvent.patch b/patches/api/0003-PlayerFeedAnimalEvent.patch index 37f383be4..f78d289d6 100644 --- a/patches/api/0003-PlayerFeedAnimalEvent.patch +++ b/patches/api/0003-PlayerFeedAnimalEvent.patch @@ -1,19 +1,19 @@ -From a9c7ccafda0a5fa8c590bd072fc980e707664479 Mon Sep 17 00:00:00 2001 +From 6ea8d9ee2c3ef9e7ab8195adc60b025838161e68 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 3 May 2019 23:39:28 -0500 Subject: [PATCH] PlayerFeedAnimalEvent --- - .../purpur/event/PlayerFeedAnimalEvent.java | 63 +++++++++++++++++++ - 1 file changed, 63 insertions(+) + .../purpur/event/PlayerFeedAnimalEvent.java | 69 +++++++++++++++++++ + 1 file changed, 69 insertions(+) create mode 100644 src/main/java/net/pl3x/purpur/event/PlayerFeedAnimalEvent.java diff --git a/src/main/java/net/pl3x/purpur/event/PlayerFeedAnimalEvent.java b/src/main/java/net/pl3x/purpur/event/PlayerFeedAnimalEvent.java new file mode 100644 -index 00000000..e2bb0694 +index 00000000..0174eb90 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/event/PlayerFeedAnimalEvent.java -@@ -0,0 +1,63 @@ +@@ -0,0 +1,69 @@ +package net.pl3x.purpur.event; + +import org.bukkit.entity.Animals; @@ -22,6 +22,7 @@ index 00000000..e2bb0694 +import org.bukkit.event.HandlerList; +import org.bukkit.event.entity.EntityEvent; +import org.bukkit.inventory.ItemStack; ++import org.jetbrains.annotations.NotNull; + +public class PlayerFeedAnimalEvent extends EntityEvent implements Cancellable { + private static final HandlerList handlers = new HandlerList(); @@ -29,13 +30,14 @@ index 00000000..e2bb0694 + private final ItemStack itemStack; + private boolean cancel; + -+ public PlayerFeedAnimalEvent(Animals entity, Player player, ItemStack food) { ++ public PlayerFeedAnimalEvent(@NotNull Animals entity, @NotNull Player player, @NotNull ItemStack food) { + super(entity); + this.player = player; + this.itemStack = food; + } + + @Override ++ @NotNull + public Animals getEntity() { + return (Animals) entity; + } @@ -45,6 +47,7 @@ index 00000000..e2bb0694 + * + * @return Player who is involved in this event + */ ++ @NotNull + public Player getPlayer() { + return player; + } @@ -54,6 +57,7 @@ index 00000000..e2bb0694 + * + * @return ItemStack being fed + */ ++ @NotNull + public ItemStack getItemStack() { + return itemStack; + } @@ -69,10 +73,12 @@ index 00000000..e2bb0694 + } + + @Override ++ @NotNull + public HandlerList getHandlers() { + return handlers; + } + ++ @NotNull + public static HandlerList getHandlerList() { + return handlers; + } diff --git a/patches/api/0004-Expose-Animals-isBreedingItem-ItemStack.patch b/patches/api/0004-Expose-Animals-isBreedingItem-ItemStack.patch index 274942bc6..45818ae5c 100644 --- a/patches/api/0004-Expose-Animals-isBreedingItem-ItemStack.patch +++ b/patches/api/0004-Expose-Animals-isBreedingItem-ItemStack.patch @@ -1,4 +1,4 @@ -From c1a6fb2046fc75a43cb341155a469a1b22a1243d Mon Sep 17 00:00:00 2001 +From 2c54818037c32884b46e0263e6fba858f997ac61 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 3 May 2019 23:45:26 -0500 Subject: [PATCH] Expose Animals#isBreedingItem(ItemStack) @@ -8,13 +8,13 @@ Subject: [PATCH] Expose Animals#isBreedingItem(ItemStack) 1 file changed, 10 insertions(+) diff --git a/src/main/java/org/bukkit/entity/Animals.java b/src/main/java/org/bukkit/entity/Animals.java -index 6e214bf4..1295a41e 100644 +index 3d4f8c3d..1f0cd380 100644 --- a/src/main/java/org/bukkit/entity/Animals.java +++ b/src/main/java/org/bukkit/entity/Animals.java -@@ -22,4 +22,14 @@ public interface Animals extends Ageable { - * @param uuid new uuid, or null +@@ -51,4 +51,14 @@ public interface Animals extends Ageable { + * @param ticks the love mode ticks. Must be positive */ - void setBreedCause(UUID uuid); + void setLoveModeTicks(int ticks); + + // Purpur start + /** @@ -23,7 +23,7 @@ index 6e214bf4..1295a41e 100644 + * @param itemstack ItemStack to check + * @return True if animal can be bred with ItemStack + */ -+ boolean isBreedingItem(org.bukkit.inventory.ItemStack itemstack); ++ boolean isBreedingItem(@Nullable org.bukkit.inventory.ItemStack itemstack); + // Purpur end } -- diff --git a/patches/api/0005-Integrate-ridables.patch b/patches/api/0005-Integrate-ridables.patch index 347c8b9f4..0bf73eb04 100644 --- a/patches/api/0005-Integrate-ridables.patch +++ b/patches/api/0005-Integrate-ridables.patch @@ -1,4 +1,4 @@ -From 6816e0b0ac5b4b26973d7dc7e454c7ce9958bc0c Mon Sep 17 00:00:00 2001 +From 16828d4dec0fbb8ce61a353ec4c952e4937211e8 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 3 May 2019 06:08:35 -0500 Subject: [PATCH] Integrate ridables @@ -8,10 +8,10 @@ Subject: [PATCH] Integrate ridables 1 file changed, 16 insertions(+) diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 34a8fe3f..a292ea93 100644 +index 956d6886..c10e735e 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -635,4 +635,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -649,4 +649,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ boolean isHandRaised(); // Paper end diff --git a/patches/server/0001-Rebrand-Purpur.patch b/patches/server/0001-Rebrand.patch similarity index 72% rename from patches/server/0001-Rebrand-Purpur.patch rename to patches/server/0001-Rebrand.patch index d14ab75a1..23c591f65 100644 --- a/patches/server/0001-Rebrand-Purpur.patch +++ b/patches/server/0001-Rebrand.patch @@ -1,19 +1,18 @@ -From 3597fc2ef74857fbb88d3ee4b299557566308490 Mon Sep 17 00:00:00 2001 +From 42e69a8ea10cb6eff36dd87d4381021b248f5baf Mon Sep 17 00:00:00 2001 From: William Blake Galbreath -Date: Tue, 30 Apr 2019 14:08:58 -0600 -Subject: [PATCH] Rebrand Purpur +Date: Sat, 4 May 2019 01:02:11 -0500 +Subject: [PATCH] Rebrand --- pom.xml | 18 +++++++++--------- .../paper/console/PaperConsole.java | 2 +- - src/main/java/net/minecraft/server/EULA.java | 2 +- .../net/minecraft/server/MinecraftServer.java | 2 +- .../org/bukkit/craftbukkit/CraftServer.java | 2 +- .../bukkit/craftbukkit/util/Versioning.java | 2 +- - 6 files changed, 14 insertions(+), 14 deletions(-) + 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/pom.xml b/pom.xml -index c3844581..860bd355 100644 +index 9cbd4880f..caae26eb4 100644 --- a/pom.xml +++ b/pom.xml @@ -1,11 +1,11 @@ @@ -30,8 +29,8 @@ index c3844581..860bd355 100644 + http://pl3x.net - UTF-8 -@@ -20,16 +20,16 @@ + +@@ -21,16 +21,16 @@ @@ -52,7 +51,7 @@ index c3844581..860bd355 100644 ${project.version} compile -@@ -135,7 +135,7 @@ +@@ -136,7 +136,7 @@ @@ -61,7 +60,7 @@ index c3844581..860bd355 100644 clean install -@@ -143,7 +143,7 @@ +@@ -144,7 +144,7 @@ gitdescribe-maven-plugin 1.3 @@ -71,7 +70,7 @@ index c3844581..860bd355 100644 diff --git a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java -index 688b4715..e4522e68 100644 +index 688b4715e..e4522e68f 100644 --- a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java +++ b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java @@ -17,7 +17,7 @@ public final class PaperConsole extends SimpleTerminalConsole { @@ -83,37 +82,24 @@ index 688b4715..e4522e68 100644 .completer(new ConsoleCommandCompleter(this.server)) ); } -diff --git a/src/main/java/net/minecraft/server/EULA.java b/src/main/java/net/minecraft/server/EULA.java -index 526f3af5..b64cac25 100644 ---- a/src/main/java/net/minecraft/server/EULA.java -+++ b/src/main/java/net/minecraft/server/EULA.java -@@ -49,7 +49,7 @@ public class EULA { - Properties properties = new Properties(); - fileoutputstream = new FileOutputStream(this.b); - properties.setProperty("eula", "false"); -- properties.store(fileoutputstream, "By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).\nYou also agree that tacos are tasty, and the best food in the world."); // Paper - fix lag); -+ properties.store(fileoutputstream, "By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula)."); - } catch (Exception exception) { - a.warn("Failed to save {}", this.b, exception); - } finally { diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 9c8c3304..570360f5 100644 +index 8db5c6a35..16c2e1dac 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1347,7 +1347,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati +@@ -1348,7 +1348,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati } public String getServerModName() { - return "Paper"; //Paper - Paper > // Spigot - Spigot > // CraftBukkit - cb > vanilla! -+ return "Purpur"; // Purpur // Paper - Paper > // Spigot - Spigot > // CraftBukkit - cb > vanilla! ++ return "Purpur"; // Purpur - Purpur > // Paper - Paper > // Spigot - Spigot > // CraftBukkit - cb > vanilla! } public CrashReport b(CrashReport crashreport) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 32bf4e58..fc7084ee 100644 +index e5242f9f8..11f65e085 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -164,7 +164,7 @@ import javax.annotation.Nonnull; // Paper +@@ -169,7 +169,7 @@ import javax.annotation.Nonnull; // Paper public final class CraftServer implements Server { @@ -123,7 +109,7 @@ index 32bf4e58..fc7084ee 100644 private final String bukkitVersion = Versioning.getBukkitVersion(); private final Logger logger = Logger.getLogger("Minecraft"); diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java -index 674096ca..e9aee2d8 100644 +index 674096cab..e9aee2d8a 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java @@ -11,7 +11,7 @@ public final class Versioning { diff --git a/patches/server/0002-cows-to-mooshroom-when-fed-mushrooms.patch b/patches/server/0002-cows-to-mooshroom-when-fed-mushrooms.patch index a0ee3def9..9012fdf49 100644 --- a/patches/server/0002-cows-to-mooshroom-when-fed-mushrooms.patch +++ b/patches/server/0002-cows-to-mooshroom-when-fed-mushrooms.patch @@ -1,6 +1,6 @@ -From fe885adc99d941fd02f45582e5144e9dc0631214 Mon Sep 17 00:00:00 2001 +From 406e7fabf130b3e736f3eb27569874723f4e44d8 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath -Date: Fri, 3 May 2019 23:27:47 -0500 +Date: Sat, 4 May 2019 01:10:30 -0500 Subject: [PATCH] cows to mooshroom when fed mushrooms --- @@ -9,10 +9,10 @@ Subject: [PATCH] cows to mooshroom when fed mushrooms 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 32b90f30..fcf1560e 100644 +index 581c78e00..89a8bbe33 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1064,6 +1064,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1082,6 +1082,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return false; } @@ -21,15 +21,15 @@ index 32b90f30..fcf1560e 100644 if (!this.isSilent()) { this.world.a((EntityHuman) null, this.locX, this.locY, this.locZ, soundeffect, this.bV(), f, f1); diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java -index 9c7bf12b..b4b22eed 100644 +index cc53e915d..efd2a0ee7 100644 --- a/src/main/java/net/minecraft/server/EntityCow.java +++ b/src/main/java/net/minecraft/server/EntityCow.java @@ -21,7 +21,7 @@ public class EntityCow extends EntityAnimal { this.goalSelector.a(0, new PathfinderGoalFloat(this)); this.goalSelector.a(1, new PathfinderGoalPanic(this, 2.0D)); this.goalSelector.a(2, new PathfinderGoalBreed(this, 1.0D)); -- this.goalSelector.a(3, new PathfinderGoalTempt(this, 1.25D, RecipeItemStack.a(new IMaterial[] { Items.WHEAT}), false)); -+ this.goalSelector.a(3, new PathfinderGoalTempt(this, 1.25D, RecipeItemStack.a(new IMaterial[] { Items.WHEAT, Blocks.RED_MUSHROOM.getItem()}), false)); // Purpur +- this.goalSelector.a(3, new PathfinderGoalTempt(this, 1.25D, RecipeItemStack.a(Items.WHEAT), false)); ++ this.goalSelector.a(3, new PathfinderGoalTempt(this, 1.25D, RecipeItemStack.a(Items.WHEAT, Blocks.RED_MUSHROOM.getItem()), false)); this.goalSelector.a(4, new PathfinderGoalFollowParent(this, 1.25D)); this.goalSelector.a(5, new PathfinderGoalRandomStrollLand(this, 1.0D)); this.goalSelector.a(6, new PathfinderGoalLookAtPlayer(this, EntityHuman.class, 6.0F)); diff --git a/patches/server/0004-Expose-Animals-isBreedingItem-ItemStack.patch b/patches/server/0004-Expose-Animals-isBreedingItem-ItemStack.patch index 44df9892d..89f42c455 100644 --- a/patches/server/0004-Expose-Animals-isBreedingItem-ItemStack.patch +++ b/patches/server/0004-Expose-Animals-isBreedingItem-ItemStack.patch @@ -1,4 +1,4 @@ -From da7bd1e9e1fec941548c8ee4694263d5db60384a Mon Sep 17 00:00:00 2001 +From 39c6bbb0f6744af41f73aa9e1fce7b542d4795d7 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 3 May 2019 23:45:45 -0500 Subject: [PATCH] Expose Animals#isBreedingItem(ItemStack) @@ -8,12 +8,12 @@ Subject: [PATCH] Expose Animals#isBreedingItem(ItemStack) 1 file changed, 7 insertions(+) diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftAnimals.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftAnimals.java -index 2478b934..5431d65a 100644 +index b06909c3e..63ddecb1a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftAnimals.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftAnimals.java -@@ -30,4 +30,11 @@ public class CraftAnimals extends CraftAgeable implements Animals { - public void setBreedCause(UUID uuid) { - getHandle().breedCause = uuid; +@@ -47,4 +47,11 @@ public class CraftAnimals extends CraftAgeable implements Animals { + public int getLoveModeTicks() { + return getHandle().bC; // PAIL rename loveTicks } + + // Purpur start diff --git a/patches/server/0005-Fix-cow-rotation-when-shearing-mooshroom.patch b/patches/server/0005-Fix-cow-rotation-when-shearing-mooshroom.patch index 72e00d6e4..2b04e832e 100644 --- a/patches/server/0005-Fix-cow-rotation-when-shearing-mooshroom.patch +++ b/patches/server/0005-Fix-cow-rotation-when-shearing-mooshroom.patch @@ -1,4 +1,4 @@ -From 4f508213ef62b8d7fb9ec8dd48b5422d810ba153 Mon Sep 17 00:00:00 2001 +From a676b948f70d903d53d3483320b507b19e100740 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 3 May 2019 23:53:16 -0500 Subject: [PATCH] Fix cow rotation when shearing mooshroom @@ -8,10 +8,10 @@ Subject: [PATCH] Fix cow rotation when shearing mooshroom 1 file changed, 6 insertions(+) diff --git a/src/main/java/net/minecraft/server/EntityMushroomCow.java b/src/main/java/net/minecraft/server/EntityMushroomCow.java -index d02455b3..842ce472 100644 +index 638dbe978..4a74145bc 100644 --- a/src/main/java/net/minecraft/server/EntityMushroomCow.java +++ b/src/main/java/net/minecraft/server/EntityMushroomCow.java -@@ -39,7 +39,13 @@ public class EntityMushroomCow extends EntityCow { +@@ -44,7 +44,13 @@ public class EntityMushroomCow extends EntityCow { entitycow.setPositionRotation(this.locX, this.locY, this.locZ, this.yaw, this.pitch); entitycow.setHealth(this.getHealth()); diff --git a/patches/server/0007-Integrate-ridables.patch b/patches/server/0007-Integrate-ridables.patch index c4042b30d..667506bf3 100644 --- a/patches/server/0007-Integrate-ridables.patch +++ b/patches/server/0007-Integrate-ridables.patch @@ -1,4 +1,4 @@ -From 9a086e607299747527b138c0f5227d1ca039560e Mon Sep 17 00:00:00 2001 +From a64d82bf60a0044ead61b859b66502aca110e2fd Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Tue, 30 Apr 2019 19:17:21 -0500 Subject: [PATCH] Integrate ridables @@ -10,44 +10,39 @@ Subject: [PATCH] Integrate ridables .../java/net/minecraft/server/EntityCow.java | 14 ++++ .../net/minecraft/server/EntityCreeper.java | 14 ++++ .../net/minecraft/server/EntityEnderman.java | 15 ++++ - .../net/minecraft/server/EntityGuardian.java | 3 +- .../net/minecraft/server/EntityHorse.java | 10 ++- .../minecraft/server/EntityHorseAbstract.java | 4 +- .../server/EntityHorseChestedAbstract.java | 18 +++-- .../minecraft/server/EntityHorseDonkey.java | 3 + .../net/minecraft/server/EntityHorseMule.java | 3 + .../minecraft/server/EntityHorseSkeleton.java | 15 ++-- - .../minecraft/server/EntityHorseZombie.java | 15 ++-- + .../minecraft/server/EntityHorseZombie.java | 12 +-- .../net/minecraft/server/EntityHuman.java | 14 +++- .../minecraft/server/EntityInsentient.java | 35 +++++++++ .../net/minecraft/server/EntityIronGolem.java | 15 ++++ - .../net/minecraft/server/EntityLiving.java | 20 ++++- - .../net/minecraft/server/EntityLlama.java | 46 +++++++++-- - .../net/minecraft/server/EntityMagmaCube.java | 2 +- + .../net/minecraft/server/EntityLiving.java | 19 ++++- + .../net/minecraft/server/EntityLlama.java | 37 ++++++++- .../minecraft/server/EntityMushroomCow.java | 14 ++++ .../net/minecraft/server/EntityOcelot.java | 14 ++++ .../java/net/minecraft/server/EntityPig.java | 25 ++++++ .../net/minecraft/server/EntityPolarBear.java | 15 ++++ .../net/minecraft/server/EntitySheep.java | 14 ++++ .../net/minecraft/server/EntitySnowman.java | 15 ++++ - .../server/EntityTameableAnimal.java | 13 ++-- + .../server/EntityTameableAnimal.java | 6 ++ .../net/minecraft/server/EntityTypes.java | 6 ++ .../java/net/minecraft/server/EntityWolf.java | 14 ++++ - .../net/minecraft/server/RecipeItemStack.java | 6 +- - .../java/net/pl3x/purpur/PurpurConfig.java | 4 + .../purpur/controller/ControllerLookWASD.java | 44 +++++++++++ .../purpur/controller/ControllerMoveWASD.java | 78 +++++++++++++++++++ .../craftbukkit/entity/CraftLivingEntity.java | 12 +++ - 34 files changed, 506 insertions(+), 45 deletions(-) - create mode 100644 src/main/java/net/pl3x/purpur/PurpurConfig.java + 30 files changed, 488 insertions(+), 28 deletions(-) create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java create mode 100644 src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java diff --git a/src/main/java/net/minecraft/server/ControllerJump.java b/src/main/java/net/minecraft/server/ControllerJump.java -index 5d6260de..f9b71ac0 100644 +index 489beed2..041f0763 100644 --- a/src/main/java/net/minecraft/server/ControllerJump.java +++ b/src/main/java/net/minecraft/server/ControllerJump.java -@@ -8,6 +8,7 @@ public class ControllerJump { +@@ -9,6 +9,7 @@ public class ControllerJump { this.b = entityinsentient; } @@ -56,10 +51,10 @@ index 5d6260de..f9b71ac0 100644 this.a = true; } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index fcf1560e..d5d7ae56 100644 +index 89a8bbe3..caa07f8b 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -97,6 +97,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -96,6 +96,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke private int id; public boolean j; public boolean blocksEntitySpawning() { return j; } // Paper - OBFHELPER public final List passengers; @@ -67,7 +62,7 @@ index fcf1560e..d5d7ae56 100644 protected int k; private Entity vehicle; public boolean attachedToPlayer; -@@ -2090,6 +2091,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2115,6 +2116,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.k <= 0; } @@ -80,7 +75,7 @@ index fcf1560e..d5d7ae56 100644 public void ejectPassengers() { for (int i = this.passengers.size() - 1; i >= 0; --i) { ((Entity) this.passengers.get(i)).stopRiding(); -@@ -2139,6 +2146,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2167,6 +2174,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke // Spigot end if (!this.world.isClientSide && entity instanceof EntityHuman && !(this.bO() instanceof EntityHuman)) { this.passengers.add(0, entity); @@ -88,7 +83,7 @@ index fcf1560e..d5d7ae56 100644 } else { this.passengers.add(entity); } -@@ -2174,6 +2182,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2205,6 +2213,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return false; } // Spigot end @@ -101,7 +96,7 @@ index fcf1560e..d5d7ae56 100644 entity.k = 60; } diff --git a/src/main/java/net/minecraft/server/EntityChicken.java b/src/main/java/net/minecraft/server/EntityChicken.java -index 3bfbf475..67d0b8dc 100644 +index 070a9e7b..cf3730b3 100644 --- a/src/main/java/net/minecraft/server/EntityChicken.java +++ b/src/main/java/net/minecraft/server/EntityChicken.java @@ -18,6 +18,11 @@ public class EntityChicken extends EntityAnimal { @@ -125,11 +120,10 @@ index 3bfbf475..67d0b8dc 100644 this.a(SoundEffects.ENTITY_CHICKEN_EGG, 1.0F, (this.random.nextFloat() - this.random.nextFloat()) * 0.2F + 1.0F); this.forceDrops = true; // CraftBukkit this.a((IMaterial) Items.EGG); -@@ -151,4 +156,14 @@ public class EntityChicken extends EntityAnimal { - public EntityAgeable createChild(EntityAgeable entityageable) { - return this.b(entityageable); +@@ -72,6 +77,16 @@ public class EntityChicken extends EntityAnimal { + } -+ + + // Purpur start - processInteract + @Override + public boolean a(EntityHuman entityhuman, EnumHand enumhand) { @@ -139,9 +133,12 @@ index 3bfbf475..67d0b8dc 100644 + return tryRide(entityhuman, enumhand); + } + // Purpur end - } ++ + public void c(float f, float f1) {} + + protected SoundEffect D() { diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java -index b4b22eed..30567242 100644 +index efd2a0ee..231ade5c 100644 --- a/src/main/java/net/minecraft/server/EntityCow.java +++ b/src/main/java/net/minecraft/server/EntityCow.java @@ -11,6 +11,11 @@ public class EntityCow extends EntityAnimal { @@ -173,7 +170,7 @@ index b4b22eed..30567242 100644 if (itemstack.getItem() == Items.BUCKET && !entityhuman.abilities.canInstantlyBuild && !this.isBaby()) { diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java -index 72b4735d..d24420af 100644 +index 945a75dd..588bba0a 100644 --- a/src/main/java/net/minecraft/server/EntityCreeper.java +++ b/src/main/java/net/minecraft/server/EntityCreeper.java @@ -22,6 +22,11 @@ public class EntityCreeper extends EntityMonster { @@ -205,10 +202,10 @@ index 72b4735d..d24420af 100644 if (itemstack.getItem() == Items.FLINT_AND_STEEL) { diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java -index c5747147..e3eab72e 100644 +index 94504044..7ac728ba 100644 --- a/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java -@@ -22,6 +22,11 @@ public class EntityEnderman extends EntityMonster { +@@ -21,6 +21,11 @@ public class EntityEnderman extends EntityMonster { this.setSize(0.6F, 2.9F); this.Q = 1.0F; this.a(PathType.WATER, -1.0F); @@ -220,7 +217,7 @@ index c5747147..e3eab72e 100644 } protected void n() { -@@ -251,6 +256,16 @@ public class EntityEnderman extends EntityMonster { +@@ -243,6 +248,16 @@ public class EntityEnderman extends EntityMonster { return LootTables.C; } @@ -237,25 +234,11 @@ index c5747147..e3eab72e 100644 public void setCarried(@Nullable IBlockData iblockdata) { this.datawatcher.set(EntityEnderman.c, Optional.ofNullable(iblockdata)); } -diff --git a/src/main/java/net/minecraft/server/EntityGuardian.java b/src/main/java/net/minecraft/server/EntityGuardian.java -index 0383b2c0..2e9c5dce 100644 ---- a/src/main/java/net/minecraft/server/EntityGuardian.java -+++ b/src/main/java/net/minecraft/server/EntityGuardian.java -@@ -351,8 +351,7 @@ public class EntityGuardian extends EntityMonster { - return (entityliving instanceof EntityHuman || entityliving instanceof EntitySquid) && entityliving.h(this.a) > 9.0D; - } - -- // $FF: synthetic method -- public boolean test(@Nullable Object object) { -+ public boolean test(@Nullable EntityLiving object) { // Purpur - decompile error - return this.a((EntityLiving)object); - } - } diff --git a/src/main/java/net/minecraft/server/EntityHorse.java b/src/main/java/net/minecraft/server/EntityHorse.java -index f2019638..ed264e7e 100644 +index 1b9425f3..ff7f1a61 100644 --- a/src/main/java/net/minecraft/server/EntityHorse.java +++ b/src/main/java/net/minecraft/server/EntityHorse.java -@@ -183,12 +183,14 @@ public class EntityHorse extends EntityHorseAbstract { +@@ -191,12 +191,14 @@ public class EntityHorse extends EntityHorseAbstract { } } @@ -275,7 +258,7 @@ index f2019638..ed264e7e 100644 } diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java -index 894f7bc9..890cc11d 100644 +index 95327763..3e80c82d 100644 --- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java +++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java @@ -80,7 +80,7 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven @@ -304,7 +287,7 @@ index 894f7bc9..890cc11d 100644 this.dH(); SoundEffect soundeffect = this.dB(); diff --git a/src/main/java/net/minecraft/server/EntityHorseChestedAbstract.java b/src/main/java/net/minecraft/server/EntityHorseChestedAbstract.java -index dea95807..f40dc796 100644 +index 6eddc2a8..7fa0c8fc 100644 --- a/src/main/java/net/minecraft/server/EntityHorseChestedAbstract.java +++ b/src/main/java/net/minecraft/server/EntityHorseChestedAbstract.java @@ -146,8 +146,12 @@ public abstract class EntityHorseChestedAbstract extends EntityHorseAbstract { @@ -342,11 +325,11 @@ index dea95807..f40dc796 100644 } diff --git a/src/main/java/net/minecraft/server/EntityHorseDonkey.java b/src/main/java/net/minecraft/server/EntityHorseDonkey.java -index 627ba103..d5939106 100644 +index 65c40e72..cd0828cc 100644 --- a/src/main/java/net/minecraft/server/EntityHorseDonkey.java +++ b/src/main/java/net/minecraft/server/EntityHorseDonkey.java -@@ -5,6 +5,9 @@ import javax.annotation.Nullable; - public class EntityHorseDonkey extends EntityHorseChestedAbstract { +@@ -6,6 +6,9 @@ public class EntityHorseDonkey extends EntityHorseChestedAbstract { + public EntityHorseDonkey(World world) { super(EntityTypes.DONKEY, world); + // Purpur start @@ -356,11 +339,11 @@ index 627ba103..d5939106 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/EntityHorseMule.java b/src/main/java/net/minecraft/server/EntityHorseMule.java -index e6bd20fb..7e7d0449 100644 +index d17c3e81..874ea280 100644 --- a/src/main/java/net/minecraft/server/EntityHorseMule.java +++ b/src/main/java/net/minecraft/server/EntityHorseMule.java -@@ -5,6 +5,9 @@ import javax.annotation.Nullable; - public class EntityHorseMule extends EntityHorseChestedAbstract { +@@ -6,6 +6,9 @@ public class EntityHorseMule extends EntityHorseChestedAbstract { + public EntityHorseMule(World world) { super(EntityTypes.MULE, world); + // Purpur start @@ -370,10 +353,10 @@ index e6bd20fb..7e7d0449 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java -index 17850e85..3d3a7b27 100644 +index 0a092acd..05c963c3 100644 --- a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java +++ b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java -@@ -9,6 +9,9 @@ public class EntityHorseSkeleton extends EntityHorseAbstract { +@@ -10,6 +10,9 @@ public class EntityHorseSkeleton extends EntityHorseAbstract { public EntityHorseSkeleton(World world) { super(EntityTypes.SKELETON_HORSE, world); @@ -383,8 +366,8 @@ index 17850e85..3d3a7b27 100644 } protected void initAttributes() { -@@ -141,18 +144,20 @@ public class EntityHorseSkeleton extends EntityHorseAbstract { - ItemStack itemstack = entityhuman.b(enumhand); +@@ -142,18 +145,20 @@ public class EntityHorseSkeleton extends EntityHorseAbstract { + if (itemstack.getItem() instanceof ItemMonsterEgg) { return super.a(entityhuman, enumhand); - } else if (!this.isTamed()) { @@ -405,26 +388,16 @@ index 17850e85..3d3a7b27 100644 } else { if (!itemstack.isEmpty()) { - if (itemstack.getItem() == Items.SADDLE && !this.dV()) { -+ if (!this.isBaby() && itemstack.getItem() == Items.SADDLE && !this.dV()) {// Purpur - don't open inventory on babies ++ if (!this.isBaby() && itemstack.getItem() == Items.SADDLE && !this.isSaddled()) { // Purpur - don't open inventory on babies this.c(entityhuman); return true; } diff --git a/src/main/java/net/minecraft/server/EntityHorseZombie.java b/src/main/java/net/minecraft/server/EntityHorseZombie.java -index 4b928d2c..554a5a25 100644 +index a1873f55..9dac0c25 100644 --- a/src/main/java/net/minecraft/server/EntityHorseZombie.java +++ b/src/main/java/net/minecraft/server/EntityHorseZombie.java -@@ -5,6 +5,9 @@ import javax.annotation.Nullable; - public class EntityHorseZombie extends EntityHorseAbstract { - public EntityHorseZombie(World world) { - super(EntityTypes.ZOMBIE_HORSE, world); -+ // Purpur start -+ this.canBeRiddenInWater = true; -+ // Purpur end - } +@@ -49,18 +49,20 @@ public class EntityHorseZombie extends EntityHorseAbstract { - protected void initAttributes() { -@@ -47,18 +50,20 @@ public class EntityHorseZombie extends EntityHorseAbstract { - ItemStack itemstack = entityhuman.b(enumhand); if (itemstack.getItem() instanceof ItemMonsterEgg) { return super.a(entityhuman, enumhand); - } else if (!this.isTamed()) { @@ -445,15 +418,15 @@ index 4b928d2c..554a5a25 100644 } else { if (!itemstack.isEmpty()) { - if (!this.dV() && itemstack.getItem() == Items.SADDLE) { -+ if (!this.isBaby() && !this.dV() && itemstack.getItem() == Items.SADDLE) { // Purpur - don't open inventory on babies ++ if (!this.isBaby() && itemstack.getItem() == Items.SADDLE && !this.isSaddled()) { // Purpur - don't open inventory on babies this.c(entityhuman); return true; } diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 28700155..7ecd9d43 100644 +index fdbe9a2a..3fbfa6d7 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -374,8 +374,20 @@ public abstract class EntityHuman extends EntityLiving { +@@ -372,8 +372,20 @@ public abstract class EntityHuman extends EntityLiving { this.activeContainer = this.defaultContainer; } @@ -462,8 +435,8 @@ index 28700155..7ecd9d43 100644 + + @Override + public void setSneaking(boolean sneaking) { -+ if (mounting && !sneaking) { -+ mounting = false; ++ if (this.mounting && !sneaking) { ++ this.mounting = false; + } + super.setSneaking(sneaking); + } @@ -471,15 +444,15 @@ index 28700155..7ecd9d43 100644 + public void aH() { - if (!this.world.isClientSide && this.isSneaking() && this.isPassenger()) { -+ if (this.isSneaking() && this.isPassenger() && !mounting) { // Purpur ++ if (this.isSneaking() && this.isPassenger() && !this.mounting) { // Purpur this.stopRiding(); this.setSneaking(false); } else { diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java -index fd4a77c1..7fa3ddcd 100644 +index d1ec201d..6da1b350 100644 --- a/src/main/java/net/minecraft/server/EntityInsentient.java +++ b/src/main/java/net/minecraft/server/EntityInsentient.java -@@ -502,6 +502,7 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -515,6 +515,7 @@ public abstract class EntityInsentient extends EntityLiving { this.bh = f; } @@ -487,7 +460,7 @@ index fd4a77c1..7fa3ddcd 100644 public void o(float f) { super.o(f); this.r(f); -@@ -1308,4 +1309,38 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1310,4 +1311,38 @@ public abstract class EntityInsentient extends EntityLiving { } } @@ -527,10 +500,10 @@ index fd4a77c1..7fa3ddcd 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityIronGolem.java b/src/main/java/net/minecraft/server/EntityIronGolem.java -index 419c1aed..b3693393 100644 +index ae269270..8140fa12 100644 --- a/src/main/java/net/minecraft/server/EntityIronGolem.java +++ b/src/main/java/net/minecraft/server/EntityIronGolem.java -@@ -15,6 +15,11 @@ public class EntityIronGolem extends EntityGolem { +@@ -14,6 +14,11 @@ public class EntityIronGolem extends EntityGolem { public EntityIronGolem(World world) { super(EntityTypes.IRON_GOLEM, world); this.setSize(1.4F, 2.7F); @@ -542,9 +515,9 @@ index 419c1aed..b3693393 100644 } protected void n() { -@@ -195,4 +200,14 @@ public class EntityIronGolem extends EntityGolem { +@@ -190,4 +195,14 @@ public class EntityIronGolem extends EntityGolem { - return iblockdata1.q() && SpawnerCreature.a(iblockdata2, iblockdata2.s()) && SpawnerCreature.a(iblockdata, FluidTypes.a.i()) && iworldreader.getCubes(this, this.getBoundingBox()) && iworldreader.a_(this, this.getBoundingBox()); + return iblockdata1.q() && SpawnerCreature.a(iblockdata2, iblockdata2.s()) && SpawnerCreature.a(iblockdata, FluidTypes.EMPTY.i()) && iworldreader.getCubes(this, this.getBoundingBox()) && iworldreader.a_(this, this.getBoundingBox()); } + + // Purpur start - processInteract @@ -558,7 +531,7 @@ index 419c1aed..b3693393 100644 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 923bc0cc..6889e0ef 100644 +index 4d5459d2..df9568fc 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -90,9 +90,9 @@ public abstract class EntityLiving extends Entity { @@ -574,7 +547,7 @@ index 923bc0cc..6889e0ef 100644 public float bk; protected int bl; protected double bm; -@@ -346,8 +346,17 @@ public abstract class EntityLiving extends Entity { +@@ -346,8 +346,16 @@ public abstract class EntityLiving extends Entity { return false; } @@ -589,11 +562,10 @@ index 923bc0cc..6889e0ef 100644 public boolean aY() { - return false; + return canBeRiddenInWater; -+ // Purpur end } protected void cb() { -@@ -2081,10 +2090,12 @@ public abstract class EntityLiving extends Entity { +@@ -2082,10 +2090,12 @@ public abstract class EntityLiving extends Entity { this.aK += this.aJ; } @@ -606,7 +578,7 @@ index 923bc0cc..6889e0ef 100644 public void o(float f) { this.bI = f; } -@@ -2492,6 +2503,7 @@ public abstract class EntityLiving extends Entity { +@@ -2499,6 +2509,7 @@ public abstract class EntityLiving extends Entity { this.fallDistance = 0.0F; } @@ -615,18 +587,10 @@ index 923bc0cc..6889e0ef 100644 this.bg = flag; } diff --git a/src/main/java/net/minecraft/server/EntityLlama.java b/src/main/java/net/minecraft/server/EntityLlama.java -index 0cf53b69..0ca06818 100644 +index 82a32c61..12b68665 100644 --- a/src/main/java/net/minecraft/server/EntityLlama.java +++ b/src/main/java/net/minecraft/server/EntityLlama.java -@@ -1,5 +1,7 @@ - package net.minecraft.server; - -+import org.bukkit.entity.Llama; -+ - import java.util.function.Predicate; - import javax.annotation.Nullable; - -@@ -16,6 +18,29 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn +@@ -18,6 +18,29 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn public EntityLlama(World world) { super(EntityTypes.LLAMA, world); this.setSize(0.9F, 1.87F); @@ -656,16 +620,7 @@ index 0cf53b69..0ca06818 100644 } public void setStrength(int i) { -@@ -271,7 +296,7 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn - return entityanimal != this && entityanimal instanceof EntityLlama && this.eb() && ((EntityLlama)entityanimal).eb(); - } - -- public EntityLlama b(EntityAgeable entityageable) { -+ public EntityLlama createChild(EntityAgeable entityageable) { // Purpur - decompile error - EntityLlama entityllama1 = EntityTypes.LLAMA.create(world); // Paper - this.a(entityageable, entityllama1); - EntityLlama entityllama2 = (EntityLlama)entityageable; -@@ -323,6 +348,18 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn +@@ -346,6 +369,18 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn } } @@ -684,7 +639,7 @@ index 0cf53b69..0ca06818 100644 public void ek() { if (this.bQ != null) { this.bQ.bR = null; -@@ -337,7 +374,7 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn +@@ -360,7 +395,7 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn } public boolean el() { @@ -693,36 +648,11 @@ index 0cf53b69..0ca06818 100644 } public boolean inCaravan() { return this.em(); } // Paper - OBFHELPER -@@ -372,10 +409,7 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn - public void s(boolean var1) { - } - -- // $FF: synthetic method -- public EntityAgeable createChild(EntityAgeable entityageable) { -- return this.b(entityageable); -- } -+ // Purpur - decompile error (removed ambiguous synthetic method) - - static class a extends PathfinderGoalNearestAttackableTarget { - public a(EntityLlama entityllama) { -diff --git a/src/main/java/net/minecraft/server/EntityMagmaCube.java b/src/main/java/net/minecraft/server/EntityMagmaCube.java -index 8d61ae58..453b8144 100644 ---- a/src/main/java/net/minecraft/server/EntityMagmaCube.java -+++ b/src/main/java/net/minecraft/server/EntityMagmaCube.java -@@ -21,7 +21,7 @@ public class EntityMagmaCube extends EntitySlime { - return iworldreader.a_(this, this.getBoundingBox()) && iworldreader.getCubes(this, this.getBoundingBox()) && !iworldreader.containsLiquid(this.getBoundingBox()); - } - -- protected void setSize(int i, boolean flag) { -+ public void setSize(int i, boolean flag) { // Purpur - decompile error (protected -> public) - super.setSize(i, flag); - this.getAttributeInstance(GenericAttributes.h).setValue((double)(i * 3)); - } diff --git a/src/main/java/net/minecraft/server/EntityMushroomCow.java b/src/main/java/net/minecraft/server/EntityMushroomCow.java -index 842ce472..23be71cf 100644 +index 4a74145b..a7277d84 100644 --- a/src/main/java/net/minecraft/server/EntityMushroomCow.java +++ b/src/main/java/net/minecraft/server/EntityMushroomCow.java -@@ -9,9 +9,23 @@ public class EntityMushroomCow extends EntityCow { +@@ -14,9 +14,23 @@ public class EntityMushroomCow extends EntityCow { super(EntityTypes.MOOSHROOM, world); this.setSize(0.9F, 1.4F); this.bF = Blocks.MYCELIUM; @@ -747,7 +677,7 @@ index 842ce472..23be71cf 100644 if (itemstack.getItem() == Items.BOWL && this.getAge() >= 0 && !entityhuman.abilities.canInstantlyBuild) { diff --git a/src/main/java/net/minecraft/server/EntityOcelot.java b/src/main/java/net/minecraft/server/EntityOcelot.java -index 90a7e00a..848e8f6e 100644 +index 13c84bda..bee1532a 100644 --- a/src/main/java/net/minecraft/server/EntityOcelot.java +++ b/src/main/java/net/minecraft/server/EntityOcelot.java @@ -15,6 +15,11 @@ public class EntityOcelot extends EntityTameableAnimal { @@ -779,10 +709,10 @@ index 90a7e00a..848e8f6e 100644 if (this.isTamed()) { diff --git a/src/main/java/net/minecraft/server/EntityPig.java b/src/main/java/net/minecraft/server/EntityPig.java -index b0802e12..c3f197e9 100644 +index d1689dc3..50efffcf 100644 --- a/src/main/java/net/minecraft/server/EntityPig.java +++ b/src/main/java/net/minecraft/server/EntityPig.java -@@ -16,6 +16,11 @@ public class EntityPig extends EntityAnimal { +@@ -19,6 +19,11 @@ public class EntityPig extends EntityAnimal { public EntityPig(World world) { super(EntityTypes.PIG, world); this.setSize(0.9F, 0.9F); @@ -794,7 +724,7 @@ index b0802e12..c3f197e9 100644 } protected void n() { -@@ -96,6 +101,15 @@ public class EntityPig extends EntityAnimal { +@@ -99,6 +104,15 @@ public class EntityPig extends EntityAnimal { } public boolean a(EntityHuman entityhuman, EnumHand enumhand) { @@ -810,7 +740,7 @@ index b0802e12..c3f197e9 100644 if (!super.a(entityhuman, enumhand)) { ItemStack itemstack = entityhuman.b(enumhand); -@@ -111,6 +125,17 @@ public class EntityPig extends EntityAnimal { +@@ -114,6 +128,17 @@ public class EntityPig extends EntityAnimal { } else if (itemstack.getItem() == Items.SADDLE) { itemstack.a(entityhuman, (EntityLiving) this, enumhand); return true; @@ -829,10 +759,10 @@ index b0802e12..c3f197e9 100644 return false; } diff --git a/src/main/java/net/minecraft/server/EntityPolarBear.java b/src/main/java/net/minecraft/server/EntityPolarBear.java -index cb3e45f1..50c3e03d 100644 +index dbb534c9..77de1a7d 100644 --- a/src/main/java/net/minecraft/server/EntityPolarBear.java +++ b/src/main/java/net/minecraft/server/EntityPolarBear.java -@@ -12,6 +12,11 @@ public class EntityPolarBear extends EntityAnimal { +@@ -15,6 +15,11 @@ public class EntityPolarBear extends EntityAnimal { public EntityPolarBear(World world) { super(EntityTypes.POLAR_BEAR, world); this.setSize(1.3F, 1.4F); @@ -843,8 +773,8 @@ index cb3e45f1..50c3e03d 100644 + // Purpur end } - public EntityAgeable createChild(EntityAgeable var1) { -@@ -129,6 +134,16 @@ public class EntityPolarBear extends EntityAnimal { + public EntityAgeable createChild(EntityAgeable entityageable) { +@@ -130,6 +135,16 @@ public class EntityPolarBear extends EntityAnimal { return 0.98F; } @@ -858,14 +788,14 @@ index cb3e45f1..50c3e03d 100644 + } + // Purpur end + - public GroupDataEntity prepare(DifficultyDamageScaler var1, @Nullable GroupDataEntity object, @Nullable NBTTagCompound var3) { - if (object instanceof EntityPolarBear.b) { - if (((EntityPolarBear.b)object).a) { + public GroupDataEntity prepare(DifficultyDamageScaler difficultydamagescaler, @Nullable GroupDataEntity groupdataentity, @Nullable NBTTagCompound nbttagcompound) { + if (groupdataentity instanceof EntityPolarBear.b) { + if (((EntityPolarBear.b) groupdataentity).a) { diff --git a/src/main/java/net/minecraft/server/EntitySheep.java b/src/main/java/net/minecraft/server/EntitySheep.java -index db4c3aa6..05b0d4b2 100644 +index c35d1eef..78ce8211 100644 --- a/src/main/java/net/minecraft/server/EntitySheep.java +++ b/src/main/java/net/minecraft/server/EntitySheep.java -@@ -69,6 +69,11 @@ public class EntitySheep extends EntityAnimal { +@@ -67,6 +67,11 @@ public class EntitySheep extends EntityAnimal { public EntitySheep(World world) { super(EntityTypes.SHEEP, world); this.setSize(0.9F, 1.3F); @@ -877,7 +807,7 @@ index db4c3aa6..05b0d4b2 100644 } protected void n() { -@@ -167,6 +172,15 @@ public class EntitySheep extends EntityAnimal { +@@ -150,6 +155,15 @@ public class EntitySheep extends EntityAnimal { } public boolean a(EntityHuman entityhuman, EnumHand enumhand) { @@ -894,7 +824,7 @@ index db4c3aa6..05b0d4b2 100644 if (itemstack.getItem() == Items.SHEARS && !this.isSheared() && !this.isBaby()) { diff --git a/src/main/java/net/minecraft/server/EntitySnowman.java b/src/main/java/net/minecraft/server/EntitySnowman.java -index 7518d997..46b06256 100644 +index 277ef077..0a7c8872 100644 --- a/src/main/java/net/minecraft/server/EntitySnowman.java +++ b/src/main/java/net/minecraft/server/EntitySnowman.java @@ -13,6 +13,11 @@ public class EntitySnowman extends EntityGolem implements IRangedEntity { @@ -934,36 +864,24 @@ index 7518d997..46b06256 100644 if (this.hasPumpkin()) { if (itemstack.getItem() == Items.SHEARS) { // Purpur diff --git a/src/main/java/net/minecraft/server/EntityTameableAnimal.java b/src/main/java/net/minecraft/server/EntityTameableAnimal.java -index 02eb7eb6..9e8fafbf 100644 +index 5262ede2..d3d4c5df 100644 --- a/src/main/java/net/minecraft/server/EntityTameableAnimal.java +++ b/src/main/java/net/minecraft/server/EntityTameableAnimal.java -@@ -126,6 +126,13 @@ public abstract class EntityTameableAnimal extends EntityAnimal implements Entit - +@@ -123,6 +123,12 @@ public abstract class EntityTameableAnimal extends EntityAnimal implements Entit + this.datawatcher.set(EntityTameableAnimal.bD, Optional.ofNullable(uuid)); } + // Purpur start -+ public boolean isOwner(EntityLiving entityliving) { -+ UUID owner = getOwnerUUID(); -+ return owner != null && owner.equals(entityliving.getUniqueID()); ++ public boolean isOwner(EntityHuman entityhuman) { ++ return entityhuman != null && entityhuman.getUniqueID() == getOwnerUUID(); + } + // Purpur end + - @Nullable - public EntityLiving getOwner() { - try { -@@ -182,9 +189,5 @@ public abstract class EntityTameableAnimal extends EntityAnimal implements Entit - super.die(damagesource); - } - -- // $FF: synthetic method -- @Nullable -- public Entity getOwner() { -- return this.getOwner(); -- } -+ // Purpur - decompile error (removed ambiguous synthetic method) - } + public void c(EntityHuman entityhuman) { + this.setTamed(true); + this.setOwnerUUID(entityhuman.getUniqueID()); diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java -index 29d5ef4c..b832067e 100644 +index 24ca3511..2356b879 100644 --- a/src/main/java/net/minecraft/server/EntityTypes.java +++ b/src/main/java/net/minecraft/server/EntityTypes.java @@ -253,6 +253,12 @@ public class EntityTypes { @@ -980,10 +898,10 @@ index 29d5ef4c..b832067e 100644 if (this.aW == null) { this.aW = SystemUtils.a("entity", IRegistry.ENTITY_TYPE.getKey(this)); diff --git a/src/main/java/net/minecraft/server/EntityWolf.java b/src/main/java/net/minecraft/server/EntityWolf.java -index 68db6af6..93aea0b0 100644 +index 46d8e0a1..1edba183 100644 --- a/src/main/java/net/minecraft/server/EntityWolf.java +++ b/src/main/java/net/minecraft/server/EntityWolf.java -@@ -25,6 +25,11 @@ public class EntityWolf extends EntityTameableAnimal { +@@ -24,6 +24,11 @@ public class EntityWolf extends EntityTameableAnimal { super(EntityTypes.WOLF, world); this.setSize(0.6F, 0.85F); this.setTamed(false); @@ -995,7 +913,7 @@ index 68db6af6..93aea0b0 100644 } protected void n() { -@@ -246,6 +251,15 @@ public class EntityWolf extends EntityTameableAnimal { +@@ -245,6 +250,15 @@ public class EntityWolf extends EntityTameableAnimal { } public boolean a(EntityHuman entityhuman, EnumHand enumhand) { @@ -1011,40 +929,6 @@ index 68db6af6..93aea0b0 100644 ItemStack itemstack = entityhuman.b(enumhand); Item item = itemstack.getItem(); -diff --git a/src/main/java/net/minecraft/server/RecipeItemStack.java b/src/main/java/net/minecraft/server/RecipeItemStack.java -index b4c0ee88..29e99e67 100644 ---- a/src/main/java/net/minecraft/server/RecipeItemStack.java -+++ b/src/main/java/net/minecraft/server/RecipeItemStack.java -@@ -44,6 +44,7 @@ public final class RecipeItemStack implements Predicate { - - } - -+ public boolean test (@Nullable ItemStack itemstack) { return a(itemstack); } // Purpur - OBFHELPER - public boolean a(@Nullable ItemStack itemstack) { - if (itemstack == null) { - return false; -@@ -172,10 +173,7 @@ public final class RecipeItemStack implements Predicate { - } - } - -- // $FF: synthetic method -- public boolean test(@Nullable Object object) { -- return this.a((ItemStack)object); -- } -+ // Purpur - decompile error (removed ambiguous synthetic method) - - public interface Provider { - Collection a(); -diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java -new file mode 100644 -index 00000000..70e95544 ---- /dev/null -+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java -@@ -0,0 +1,4 @@ -+package net.pl3x.purpur; -+ -+public class PurpurConfig { -+} diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java b/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java new file mode 100644 index 00000000..22e45e81 diff --git a/purpur b/purpur index cef037f1d..ad439fbe5 100755 --- a/purpur +++ b/purpur @@ -22,6 +22,18 @@ purpurunstash() { } case "$1" in + "a" | "am" | "amend") + ( + cd $basedir/Purpur-API/ + git add . + git commit --amend --no-edit + cd $basedir/Purpur-Server/ + git add . + git commit --amend --no-edit + cd $basedir + scripts/rebuildpatches.sh "$basedir" + ) + ;; "rb" | "rbp" | "rebuild") ( set -e @@ -41,7 +53,7 @@ case "$1" in basedir mvn -N install cd ${FORK_NAME}-API - mvn clean install && cd ../${FORK_NAME}-Server && mvn clean install + mvn -e clean install && cd ../${FORK_NAME}-Server && mvn -e clean install ) ;; "d" | "de" | "deploy") diff --git a/scripts/importmcdev.sh b/scripts/importmcdev.sh index 5139756e3..9eb201f33 100755 --- a/scripts/importmcdev.sh +++ b/scripts/importmcdev.sh @@ -10,7 +10,7 @@ done workdir=$basedir/Paper/work minecraftversion=$(cat $basedir/Paper/work/BuildData/info.json | grep minecraftVersion | cut -d '"' -f 4) -decompiledir=$workdir/Minecraft/$minecraftversion/forge +decompiledir=$workdir/Minecraft/$minecraftversion/spigot nms="net/minecraft/server" export MODLOG=""