[1.16] Make it run (#3626)
* She compiles! Also readded the armorstand ticking patch, thanks cat * Update mob goal api * Misc fixes to make it run drop per playing mob spawns for now
This commit is contained in:
@@ -223,10 +223,10 @@ index 0000000000000000000000000000000000000000..e21f7574763dd4f13794f91bbef192ef
|
||||
+}
|
||||
diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/VanillaGoal.java b/src/main/java/com/destroystokyo/paper/entity/ai/VanillaGoal.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..d23ad96ee436ae57231bbf88eed19487dec06780
|
||||
index 0000000000000000000000000000000000000000..d7f1b2c84aebe8ed04084b9249ed08d5e52a6ecd
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/com/destroystokyo/paper/entity/ai/VanillaGoal.java
|
||||
@@ -0,0 +1,198 @@
|
||||
@@ -0,0 +1,208 @@
|
||||
+package com.destroystokyo.paper.entity.ai;
|
||||
+
|
||||
+import com.destroystokyo.paper.entity.RangedEntity;
|
||||
@@ -315,7 +315,15 @@ index 0000000000000000000000000000000000000000..d23ad96ee436ae57231bbf88eed19487
|
||||
+ GoalKey<Phantom> PHANTOM_ATTACK_STRATEGY = GoalKey.of(Phantom.class, NamespacedKey.minecraft("phantom_attack_strategy"));
|
||||
+ GoalKey<Phantom> PHANTOM_CIRCLE_AROUND_ANCHOR = GoalKey.of(Phantom.class, NamespacedKey.minecraft("phantom_circle_around_anchor"));
|
||||
+ GoalKey<Phantom> PHANTOM_SWEEP_ATTACK = GoalKey.of(Phantom.class, NamespacedKey.minecraft("phantom_sweep_attack"));
|
||||
+ /**
|
||||
+ * @deprecated removed in 1.16
|
||||
+ */
|
||||
+ @Deprecated
|
||||
+ GoalKey<PigZombie> ANGER = GoalKey.of(PigZombie.class, NamespacedKey.minecraft("anger"));
|
||||
+ /**
|
||||
+ * @deprecated removed in 1.16
|
||||
+ */
|
||||
+ @Deprecated
|
||||
+ GoalKey<PigZombie> ANGER_OTHER = GoalKey.of(PigZombie.class, NamespacedKey.minecraft("anger_other"));
|
||||
+ GoalKey<PolarBear> POLARBEAR_ATTACK_PLAYERS = GoalKey.of(PolarBear.class, NamespacedKey.minecraft("polarbear_attack_players"));
|
||||
+ GoalKey<PolarBear> POLARBEAR_HURT_BY = GoalKey.of(PolarBear.class, NamespacedKey.minecraft("polarbear_hurt_by"));
|
||||
@@ -424,6 +432,8 @@ index 0000000000000000000000000000000000000000..d23ad96ee436ae57231bbf88eed19487
|
||||
+ GoalKey<Creature> WATER = GoalKey.of(Creature.class, NamespacedKey.minecraft("water"));
|
||||
+ GoalKey<Dolphin> WATER_JUMP = GoalKey.of(Dolphin.class, NamespacedKey.minecraft("water_jump"));
|
||||
+ GoalKey<Zombie> ZOMBIE_ATTACK = GoalKey.of(Zombie.class, NamespacedKey.minecraft("zombie_attack"));
|
||||
+ GoalKey<Creature> STROLL_VILLAGE_GOLEM = GoalKey.of(Creature.class, NamespacedKey.minecraft("stroll_village_golem"));
|
||||
+ GoalKey<Mob> UNIVERSAL_ANGER_RESET = GoalKey.of(Mob.class, NamespacedKey.minecraft("universal_anger_reset"));
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
|
||||
index 95ad0122605b40e28352fa6205528eeb5c453a50..a9c10228eeeaac89361c695a5ab90161b6358ca1 100644
|
||||
|
||||
@@ -8,21 +8,13 @@ Adds a new method to fetch the location of a player's bed without generating any
|
||||
getPotentialBedLocation - Gets the last known location of a player's bed. This does not preform any check if the bed is still valid and does not load any chunks.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
index 1f94cbee36b6a952b2ecca8efbeaf7deee640a81..c0d38f5a39610cbc523d210b76f17fa17c0d7e62 100644
|
||||
index 1f94cbee36b6a952b2ecca8efbeaf7deee640a81..e6cdd4bc2d934ab932651e17f144d7004835bdc3 100644
|
||||
--- a/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/HumanEntity.java
|
||||
@@ -239,6 +239,43 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder
|
||||
@@ -239,6 +239,19 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder
|
||||
*/
|
||||
public int getSleepTicks();
|
||||
|
||||
+ /**
|
||||
+ * Gets the Location where the player will spawn at their bed, null if
|
||||
+ * they have not slept in one or their current bed spawn is invalid.
|
||||
+ *
|
||||
+ * @return Bed Spawn Location if bed exists, otherwise null.
|
||||
+ */
|
||||
+ @Nullable
|
||||
+ public Location getBedSpawnLocation();
|
||||
+
|
||||
+ // Paper start - Potential bed api
|
||||
+ /**
|
||||
@@ -35,22 +27,6 @@ index 1f94cbee36b6a952b2ecca8efbeaf7deee640a81..c0d38f5a39610cbc523d210b76f17fa1
|
||||
+ @Nullable
|
||||
+ public Location getPotentialBedLocation();
|
||||
+ // Paper end
|
||||
+
|
||||
+ /**
|
||||
+ * Sets the Location where the player will spawn at their bed.
|
||||
+ *
|
||||
+ * @param location where to set the respawn location
|
||||
+ */
|
||||
+ public void setBedSpawnLocation(@Nullable Location location);
|
||||
+
|
||||
+ /**
|
||||
+ * Sets the Location where the player will spawn at their bed.
|
||||
+ *
|
||||
+ * @param location where to set the respawn location
|
||||
+ * @param force whether to forcefully set the respawn location even if a
|
||||
+ * valid bed is not present
|
||||
+ */
|
||||
+ public void setBedSpawnLocation(@Nullable Location location, boolean force);
|
||||
+
|
||||
/**
|
||||
* Attempts to make the entity sleep at the given location.
|
||||
|
||||
Reference in New Issue
Block a user