From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Tue, 18 Feb 2020 20:07:08 -0600 Subject: [PATCH] Add canSaveToDisk to Entity diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java index f5ae3d265fa190af4d8205ffa45ce053fe0c7ddc..cfef8dec1a96c97bd087ed6dc55eadae4feae079 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -473,6 +473,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return false; } + public boolean canSaveToDisk() { + return true; + } + public final boolean hardCollides() { return this.hardCollides; } diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java index 1fcf73cfe789bfe89c5ac01d4bd260e8d7dc0fc0..0ecbee51a48171cad95cc80bd26644774064fead 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java @@ -314,6 +314,11 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob vec3d = vec3d.add(vec3d2.x * 0.3D - vec3d.x * 0.6D, 0.0D, vec3d2.z * 0.3D - vec3d.z * 0.6D); } } + + @Override + public boolean canSaveToDisk() { + return false; + } } this.setDeltaMovement(vec3d); diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/EntityStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/EntityStorage.java index 0ec0be22f7292d57c40da6f1f4575bdebf8dbd09..f1d19cbe165a190cac325e646c7e8080b59cdd54 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/EntityStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/EntityStorage.java @@ -111,6 +111,7 @@ public class EntityStorage implements EntityPersistentStorage { ListTag listTag = new ListTag(); entities.forEach((entity) -> { // diff here: use entities parameter + if (!entity.canSaveToDisk()) return; // Purpur CompoundTag compoundTag = new CompoundTag(); if (entity.save(compoundTag)) { listTag.add(compoundTag);