Esempio n. 1
0
  @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;
  }