70ce6ce831
This makes it easier for downstream projects (forks) to replace the version fetching system with their own. It is as simple as implementing an interface and overriding the default implementation of org.bukkit.UnsafeValues#getVersionFetcher() It also makes it easier for us to organize things like the version history feature. Lastly I have updated the paper implementation to check against the site API rather than against jenkins.
33 Zeilen
1.4 KiB
Diff
33 Zeilen
1.4 KiB
Diff
From c1e8cc5b95fa04549889bee6fbf16fe1d17b79bc Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Tue, 1 May 2018 20:18:54 -0400
|
|
Subject: [PATCH] EndermanAttackPlayerEvent
|
|
|
|
Allow control over whether or not an enderman aggros a player.
|
|
|
|
This allows you to override/extend the pumpkin/stare logic.
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java
|
|
index d0fb14992..79d23f152 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityEnderman.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityEnderman.java
|
|
@@ -138,7 +138,15 @@ public class EntityEnderman extends EntityMonster {
|
|
this.setCarried(iblockdata);
|
|
}
|
|
|
|
+ // Paper start - OBFHELPER - ok not really, but verify this on updates
|
|
private boolean f(EntityHuman entityhuman) {
|
|
+ boolean shouldAttack = f_real(entityhuman);
|
|
+ com.destroystokyo.paper.event.entity.EndermanAttackPlayerEvent event = new com.destroystokyo.paper.event.entity.EndermanAttackPlayerEvent((org.bukkit.entity.Enderman) getBukkitEntity(), (org.bukkit.entity.Player) entityhuman.getBukkitEntity());
|
|
+ event.setCancelled(!shouldAttack);
|
|
+ return event.callEvent();
|
|
+ }
|
|
+ private boolean f_real(EntityHuman entityhuman) {
|
|
+ // Paper end
|
|
ItemStack itemstack = (ItemStack) entityhuman.inventory.armor.get(3);
|
|
|
|
if (itemstack.getItem() == Blocks.CARVED_PUMPKIN.getItem()) {
|
|
--
|
|
2.21.0
|
|
|