Move invisible setting up to entities (#10346)

This commit is contained in:
FireInstall
2024-03-23 20:27:30 +01:00
parent 5efed01031
commit 0c76cbb7cc
7 changed files with 95 additions and 10 deletions

View File

@@ -29,6 +29,7 @@ public net.minecraft.world.entity.animal.AbstractSchoolingFish schoolSize
public net.minecraft.world.entity.animal.Rabbit moreCarrotTicks
public net.minecraft.world.entity.AreaEffectCloud ownerUUID
public net.minecraft.world.entity.animal.MushroomCow stewEffects
public net.minecraft.world.entity.Entity FLAG_INVISIBLE
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
@@ -37,6 +38,7 @@ Co-authored-by: SoSeDiK <mrsosedik@gmail.com>
Co-authored-by: booky10 <boooky10@gmail.com>
Co-authored-by: Amin <amin.haddou@frg.wwschool.de>
Co-authored-by: TrollyLoki <trollyloki@gmail.com>
Co-authored-by: FireInstall <kettnerl@hu-berlin.de>
diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
@@ -667,6 +669,28 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ }
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -0,0 +0,0 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
return set;
}
// Paper end
+
+ // Paper start - move up invisibility
+ @Override
+ public boolean isInvisible() {
+ return this.getHandle().isInvisible();
+ }
+
+ @Override
+ public void setInvisible(boolean invisible) {
+ this.getHandle().persistentInvisibility = invisible;
+ this.getHandle().setSharedFlag(Entity.FLAG_INVISIBLE, invisible);
+ }
+ // Paper end - move up invisibility
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftFireball.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftFireball.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftFireball.java
@@ -765,8 +789,18 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -0,0 +0,0 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
this.getHandle().persistentInvisibility = invisible;
this.getHandle().setSharedFlag(5, invisible);
@Override
public boolean isInvisible() {
- return this.getHandle().isInvisible();
+ return super.isInvisible(); // Paper - move invisibility up to Entity - diff on change
}
@Override
public void setInvisible(boolean invisible) {
- this.getHandle().persistentInvisibility = invisible;
- this.getHandle().setSharedFlag(5, invisible);
+ super.setInvisible(invisible); // Paper - move invisibility up to Entity
}
+ // Paper start
+ @Override