@Override public boolean unload(boolean save, boolean safe) { LevelProvider level = this.getProvider(); if (level == null) { return true; } if (save && this.hasChanged) { level.saveChunk(this.vector2); } if (safe) { for (Entity entity : this.getEntities().values()) { if (entity instanceof Player) { return false; } } } for (Entity entity : new ArrayList<>(this.getEntities().values())) { if (entity instanceof Player) { continue; } entity.close(); } for (BlockEntity blockEntity : new ArrayList<>(this.getBlockEntities().values())) { blockEntity.close(); } this.provider = null; return true; }