geforkt von Mirrors/Paper
Updated Upstream (CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
CraftBukkit Changes:
c3a22e78
SPIGOT-6032: Add best effort target events for new entities
Dieser Commit ist enthalten in:
Ursprung
72b23c419b
Commit
9478c1859c
@ -37,39 +37,3 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/BehaviorAttackTargetSet.java b/src/main/java/net/minecraft/server/BehaviorAttackTargetSet.java
|
||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||
--- a/src/main/java/net/minecraft/server/BehaviorAttackTargetSet.java
|
||||
+++ b/src/main/java/net/minecraft/server/BehaviorAttackTargetSet.java
|
||||
@@ -0,0 +0,0 @@ public class BehaviorAttackTargetSet<E extends EntityInsentient> extends Behavio
|
||||
if (!this.b.test(e0)) {
|
||||
return false;
|
||||
} else {
|
||||
- Optional<? extends EntityLiving> optional = (Optional) this.c.apply(e0);
|
||||
+ Optional<? extends EntityLiving> optional = (Optional<? extends EntityLiving>) this.c.apply(e0); // Paper - decompile error
|
||||
|
||||
return optional.isPresent() && ((EntityLiving) optional.get()).isAlive();
|
||||
}
|
||||
}
|
||||
|
||||
protected void a(WorldServer worldserver, E e0, long i) {
|
||||
- ((Optional) this.c.apply(e0)).ifPresent((entityliving) -> {
|
||||
+ ((Optional<? extends EntityLiving>) this.c.apply(e0)).ifPresent((entityliving) -> { // Paper - decompile error
|
||||
this.a(e0, entityliving);
|
||||
});
|
||||
}
|
||||
|
||||
private void a(E e0, EntityLiving entityliving) {
|
||||
- e0.getBehaviorController().setMemory(MemoryModuleType.ATTACK_TARGET, (Object) entityliving);
|
||||
- e0.getBehaviorController().removeMemory(MemoryModuleType.CANT_REACH_WALK_TARGET_SINCE);
|
||||
+ // Paper start
|
||||
+ org.bukkit.event.entity.EntityTargetEvent.TargetReason reason = entityliving instanceof EntityHuman ? org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_PLAYER : org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_ENTITY;
|
||||
+ org.bukkit.event.entity.EntityTargetLivingEntityEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityTargetLivingEvent(e0, entityliving, org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_ENTITY);
|
||||
+ if (!event.isCancelled()) {
|
||||
+ EntityLiving target = event.getTarget() != null ? ((org.bukkit.craftbukkit.entity.CraftLivingEntity) event.getTarget()).getHandle() : null;
|
||||
+ e0.getBehaviorController().setMemory(MemoryModuleType.ATTACK_TARGET, target); // Paper - decompile error
|
||||
+ e0.getBehaviorController().removeMemory(MemoryModuleType.CANT_REACH_WALK_TARGET_SINCE);
|
||||
+ }
|
||||
+ // Paper end
|
||||
}
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 52fd29c0dca28c0e7d75fc462bd5b6f59a42a85f
|
||||
Subproject commit c3a22e7850f7b6c41163676a154b22c61952b2a9
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren