コード例 #1
0
ファイル: Portal.java プロジェクト: pvtjaime/Stargate-Bukkit
  public static void saveAllGates(World world) {
    String loc = Stargate.getSaveLocation() + "/" + world.getName() + ".db";

    try {
      BufferedWriter bw = new BufferedWriter(new FileWriter(loc, false));

      for (Portal portal : allPortals) {
        String wName = portal.world.getName();
        if (!wName.equalsIgnoreCase(world.getName())) continue;
        StringBuilder builder = new StringBuilder();
        Blox sign = new Blox(portal.id.getBlock());
        Blox button = portal.button;

        builder.append(portal.name);
        builder.append(':');
        builder.append(sign.toString());
        builder.append(':');
        builder.append((button != null) ? button.toString() : "");
        builder.append(':');
        builder.append(portal.modX);
        builder.append(':');
        builder.append(portal.modZ);
        builder.append(':');
        builder.append(portal.rotX);
        builder.append(':');
        builder.append(portal.topLeft.toString());
        builder.append(':');
        builder.append(portal.gate.getFilename());
        builder.append(':');
        builder.append(portal.isFixed() ? portal.getDestinationName() : "");
        builder.append(':');
        builder.append(portal.getNetwork());
        builder.append(':');
        builder.append(portal.getOwner());
        builder.append(':');
        builder.append(portal.isHidden());
        builder.append(':');
        builder.append(portal.isAlwaysOn());
        builder.append(':');
        builder.append(portal.isPrivate());
        builder.append(':');
        builder.append(portal.world.getName());
        builder.append(':');
        builder.append(portal.isFree());
        builder.append(':');
        builder.append(portal.isBackwards());
        builder.append(':');
        builder.append(portal.isShown());

        bw.append(builder.toString());
        bw.newLine();
      }

      bw.close();
    } catch (Exception e) {
      Stargate.log.log(Level.SEVERE, "Exception while writing stargates to " + loc + ": " + e);
    }
  }