mirror of
https://github.com/Winds-Studio/Leaf.git
synced 2025-12-19 15:09:25 +00:00
61 lines
2.7 KiB
Diff
61 lines
2.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: HaHaWTH <fsjk947@gmail.com>
|
|
Date: Fri, 15 Mar 2024 02:12:38 +0800
|
|
Subject: [PATCH] Fix MC-172047
|
|
|
|
Removed since 1.20.5
|
|
|
|
Mojang issues: https://bugs.mojang.com/browse/MC-172047
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/Wolf.java b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
|
index a90055fe8819a32180754b6060a0f88e81d1a3b6..77def11f7862ec0ad9701fd74f504dd4c46e9a87 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
|
@@ -58,6 +58,7 @@ import net.minecraft.world.entity.ai.goal.target.OwnerHurtTargetGoal;
|
|
import net.minecraft.world.entity.ai.goal.target.ResetUniversalAngerTargetGoal;
|
|
import net.minecraft.world.entity.animal.horse.AbstractHorse;
|
|
import net.minecraft.world.entity.animal.horse.Llama;
|
|
+import net.minecraft.world.entity.decoration.ArmorStand;
|
|
import net.minecraft.world.entity.monster.AbstractSkeleton;
|
|
import net.minecraft.world.entity.monster.Creeper;
|
|
import net.minecraft.world.entity.monster.Ghast;
|
|
@@ -672,17 +673,29 @@ public class Wolf extends TamableAnimal implements NeutralMob {
|
|
|
|
@Override
|
|
public boolean wantsToAttack(LivingEntity target, LivingEntity owner) {
|
|
- if (!(target instanceof Creeper) && !(target instanceof Ghast)) {
|
|
- if (target instanceof Wolf) {
|
|
- Wolf entitywolf = (Wolf) target;
|
|
-
|
|
- return !entitywolf.isTame() || entitywolf.getOwner() != owner;
|
|
- } else {
|
|
- return target instanceof Player && owner instanceof Player && !((Player) owner).canHarmPlayer((Player) target) ? false : (target instanceof AbstractHorse && ((AbstractHorse) target).isTamed() ? false : !(target instanceof TamableAnimal) || !((TamableAnimal) target).isTame());
|
|
- }
|
|
- } else {
|
|
+ // Leaf start - Improve readability
|
|
+ if (target instanceof Creeper || target instanceof Ghast || target instanceof ArmorStand) { // Leaf - Fix MC-172047
|
|
return false;
|
|
}
|
|
+
|
|
+ if (target instanceof Wolf entityWolf) {
|
|
+ return !entityWolf.isTame() || entityWolf.getOwner() != owner;
|
|
+ }
|
|
+
|
|
+ if (target instanceof Player targetPlayer && owner instanceof Player ownerPlayer) {
|
|
+ return ownerPlayer.canHarmPlayer(targetPlayer);
|
|
+ }
|
|
+
|
|
+ if (target instanceof AbstractHorse targetHorse) {
|
|
+ return !targetHorse.isTamed();
|
|
+ }
|
|
+
|
|
+ if (target instanceof TamableAnimal tamableAnimalTarget) {
|
|
+ return !tamableAnimalTarget.isTame();
|
|
+ }
|
|
+
|
|
+ return true;
|
|
+ // Leaf end
|
|
}
|
|
|
|
@Override
|