mirror of
https://github.com/Winds-Studio/Leaf.git
synced 2025-12-19 15:09:25 +00:00
fix HurtByTargetGoal npe
This commit is contained in:
@@ -134,7 +134,7 @@ index 9b8d119116b0c3a51d3fe2ff7efb33cc39627cc4..436e73086678e4afbf94f1b7bca9b0c7
|
|||||||
|
|
||||||
// Gale start - Pufferfish - SIMD support
|
// Gale start - Pufferfish - SIMD support
|
||||||
diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java
|
diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java
|
||||||
index ce39571c292c0dd58075e159c343898a374f008a..27da552e2542153a58d6177f592cf30d858c41a9 100644
|
index 478e8fa7955b3a084a7b519c0b4cddb399f72758..fc61a7083232148397a0b330ce2a4d70ba38543d 100644
|
||||||
--- a/net/minecraft/server/level/ServerLevel.java
|
--- a/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/net/minecraft/server/level/ServerLevel.java
|
+++ b/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -175,7 +175,16 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
|
@@ -175,7 +175,16 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
|
||||||
@@ -1410,7 +1410,7 @@ index fb160a59c873d5c3f2c3d31966ca1a653f1b384d..96ccafe979c5c15e26c12f6ca98ad1e8
|
|||||||
return this.potentialTarget != null && !(this.potentialTarget instanceof Player player1 && (player1.isSpectator() || player1.isCreative()));
|
return this.potentialTarget != null && !(this.potentialTarget instanceof Player player1 && (player1.isSpectator() || player1.isCreative()));
|
||||||
}
|
}
|
||||||
diff --git a/net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java b/net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java
|
diff --git a/net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java b/net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java
|
||||||
index a8ec1d5f4b0fb0ff26a234235b7d8d9c4b4a2a98..412fc8e049ba3763314ec2a56dce378cb0e4cc5f 100644
|
index a8ec1d5f4b0fb0ff26a234235b7d8d9c4b4a2a98..c2b4bc95ee4cb4167c06556b14656c0fa59051a3 100644
|
||||||
--- a/net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java
|
--- a/net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java
|
||||||
+++ b/net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java
|
+++ b/net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal.java
|
||||||
@@ -73,6 +73,46 @@ public class HurtByTargetGoal extends TargetGoal {
|
@@ -73,6 +73,46 @@ public class HurtByTargetGoal extends TargetGoal {
|
||||||
@@ -1484,9 +1484,9 @@ index a8ec1d5f4b0fb0ff26a234235b7d8d9c4b4a2a98..412fc8e049ba3763314ec2a56dce378c
|
|||||||
|
|
||||||
+ // Leaf start - Async target finding
|
+ // Leaf start - Async target finding
|
||||||
+ public void poll() {
|
+ public void poll() {
|
||||||
+ if (!(this.mob.getGoalCtx().result() instanceof List toAlert)) return;
|
+ if (!(this.mob.getGoalCtx().result() instanceof List<?> toAlert)) return;
|
||||||
+ LivingEntity lastHurtByMob = this.mob.getLastHurtByMob();
|
+ LivingEntity lastHurtByMob = this.mob.getLastHurtByMob();
|
||||||
+ if (lastHurtByMob.getType() == EntityType.PLAYER && getServerLevel(this.mob).getGameRules().getBoolean(GameRules.RULE_UNIVERSAL_ANGER)) {
|
+ if (lastHurtByMob == null || (lastHurtByMob.getType() == EntityType.PLAYER && getServerLevel(this.mob).getGameRules().getBoolean(GameRules.RULE_UNIVERSAL_ANGER))) {
|
||||||
+ return;
|
+ return;
|
||||||
+ }
|
+ }
|
||||||
+ for (Class<?> clazz : this.toIgnoreDamage) {
|
+ for (Class<?> clazz : this.toIgnoreDamage) {
|
||||||
|
|||||||
Reference in New Issue
Block a user