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(); } }
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(); } }
@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; }