コード例 #1
0
  public void saveIslandInfo(IslandInfo ii) {
    YamlConfiguration yamlIslandInfo = new YamlConfiguration();
    File filePlayerInfo = new File(this.directoryIslands, ii.getIslandNumber() + ".yml");

    yamlIslandInfo.set(EnumIslandConfig.ISLAND_OWNER.getPath(), ii.getIslandOwner());
    yamlIslandInfo.set(
        EnumIslandConfig.ISLAND_LOCATION.getPath(),
        LocationParser.getStringFromLocation(ii.getIslandLocation()));
    yamlIslandInfo.set(
        EnumIslandConfig.HOME_LOCATION.getPath(),
        LocationParser.getStringFromLocation(ii.getHomeLocation()));

    yamlIslandInfo.set(EnumIslandConfig.FRIENDS.getPath(), ii.getFriends());
    try {
      yamlIslandInfo.save(filePlayerInfo);
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
コード例 #2
0
  public void savePlayerInfo(PlayerInfo pi) {
    YamlConfiguration yamlPlayerInfo = new YamlConfiguration();
    File filePlayerInfo = new File(this.directoryPlayers, pi.getPlayerName() + ".yml");

    // island info
    if (pi.getIslandInfo() != null) {
      yamlPlayerInfo.set(
          EnumPlayerConfig.ISLAND_NUMBER.getPath(), pi.getIslandInfo().getIslandNumber());
    }

    yamlPlayerInfo.set(EnumPlayerConfig.IS_PLAYING.getPath(), pi.isPlaying());
    yamlPlayerInfo.set(EnumPlayerConfig.IS_DEAD.getPath(), pi.isDead());
    yamlPlayerInfo.set(EnumPlayerConfig.ISLAND_FOOD.getPath(), "" + pi.getIslandFood());
    yamlPlayerInfo.set(EnumPlayerConfig.ISLAND_HEALTH.getPath(), "" + pi.getIslandHealth());
    yamlPlayerInfo.set(EnumPlayerConfig.ISLAND_EXP.getPath(), "" + pi.getIslandExp());
    yamlPlayerInfo.set(EnumPlayerConfig.ISLAND_LEVEL.getPath(), "" + pi.getIslandLevel());
    yamlPlayerInfo.set(
        EnumPlayerConfig.ISLAND_INVENTORY.getPath(),
        ItemParser.getListFromItemStackArray(pi.getIslandInventory()));
    yamlPlayerInfo.set(
        EnumPlayerConfig.ISLAND_ARMOR.getPath(),
        ItemParser.getListFromItemStackArray(pi.getIslandArmor()));
    yamlPlayerInfo.set(
        EnumPlayerConfig.OLD_LOCATION.getPath(),
        LocationParser.getStringFromLocation(pi.getOldLocation()));
    yamlPlayerInfo.set(EnumPlayerConfig.OLD_FOOD.getPath(), "" + pi.getOldFood());
    yamlPlayerInfo.set(EnumPlayerConfig.OLD_HEALTH.getPath(), "" + pi.getOldHealth());
    yamlPlayerInfo.set(EnumPlayerConfig.OLD_EXP.getPath(), "" + pi.getOldExp());
    yamlPlayerInfo.set(EnumPlayerConfig.OLD_LEVEL.getPath(), "" + pi.getOldLevel());
    yamlPlayerInfo.set(
        EnumPlayerConfig.OLD_INVENTORY.getPath(),
        ItemParser.getListFromItemStackArray(pi.getOldInventory()));
    yamlPlayerInfo.set(
        EnumPlayerConfig.OLD_ARMOR.getPath(),
        ItemParser.getListFromItemStackArray(pi.getOldArmor()));
    yamlPlayerInfo.set(EnumPlayerConfig.ISLAND_BUILTLIST.getPath(), pi.getBuildListNumbers());

    try {
      yamlPlayerInfo.save(filePlayerInfo);
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
コード例 #3
0
  @SuppressWarnings("unchecked")
  public IslandInfo loadIslandInfo(String island) {
    YamlConfiguration yamlIslandInfo = new YamlConfiguration();
    File fileIslandInfo = new File(this.directoryIslands, island);
    if (!fileIslandInfo.exists()) {
      return null;
    }
    try {
      yamlIslandInfo.load(fileIslandInfo);
    } catch (Exception e) {
      e.printStackTrace();
      return null;
    }

    int islandNumber = Integer.parseInt(fileIslandInfo.getName().replace(".yml", ""));
    IslandInfo ii = new IslandInfo(islandNumber);

    String islandOwner = "";
    if (yamlIslandInfo.contains(EnumIslandConfig.ISLAND_OWNER.getPath())) {
      islandOwner = yamlIslandInfo.get(EnumIslandConfig.ISLAND_OWNER.getPath()).toString();
    } else {
      yamlIslandInfo.set(EnumIslandConfig.ISLAND_OWNER.getPath(), false);
    }
    ii.setIslandOwner(islandOwner);

    Location islandLocation = null;
    if (yamlIslandInfo.contains(EnumIslandConfig.ISLAND_LOCATION.getPath())) {
      islandLocation =
          LocationParser.parseStringToLocation(
              yamlIslandInfo.get(EnumIslandConfig.ISLAND_LOCATION.getPath()).toString());
    } else {
      yamlIslandInfo.set(
          EnumIslandConfig.ISLAND_LOCATION.getPath(),
          LocationParser.getStringFromLocation(ii.getIslandLocation()));
    }
    ii.setIslandLocation(islandLocation);

    Location homeLocation = null;
    if (yamlIslandInfo.contains(EnumIslandConfig.HOME_LOCATION.getPath())) {
      islandLocation =
          LocationParser.parseStringToLocation(
              yamlIslandInfo.get(EnumIslandConfig.HOME_LOCATION.getPath()).toString());
    } else {
      yamlIslandInfo.set(
          EnumIslandConfig.HOME_LOCATION.getPath(),
          LocationParser.getStringFromLocation(ii.getHomeLocation()));
    }
    ii.setHomeLocation(homeLocation);

    ArrayList<String> friends = new ArrayList<String>();
    if (yamlIslandInfo.contains(EnumIslandConfig.FRIENDS.getPath())) {
      friends = (ArrayList<String>) yamlIslandInfo.get(EnumIslandConfig.FRIENDS.getPath());
    } else {
      yamlIslandInfo.set(EnumIslandConfig.FRIENDS.getPath(), ii.getFriends());
    }

    ii.setFriends(friends);

    boolean freeBuild = false;
    if (yamlIslandInfo.contains(EnumIslandConfig.FREE_BUILD.getPath())) {
      freeBuild =
          Boolean.parseBoolean(
              yamlIslandInfo.get(EnumIslandConfig.FREE_BUILD.getPath()).toString());
    } else {
      yamlIslandInfo.set(EnumIslandConfig.FREE_BUILD.getPath(), ii.isFreeBuild());
    }
    ii.setFreeBuild(freeBuild);

    try {
      yamlIslandInfo.save(fileIslandInfo);
    } catch (IOException e) {
      e.printStackTrace();
      return null;
    }

    return ii;
  }