18c3716c49
This enables us a fast reference to the entities current chunk instead of having to look it up by hashmap lookups. We also store counts by type to further enable other performance optimizations in later patches.
32 lines
1.4 KiB
Diff
32 lines
1.4 KiB
Diff
From c21ae9b442a22278ea808e3aca2ce55db5e3b4e2 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 4f8dd320f..2472edfc9 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityEnderman.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityEnderman.java
|
|
@@ -149,7 +149,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() == Item.getItemOf(Blocks.PUMPKIN)) {
|
|
--
|
|
2.18.0
|
|
|