public void changeToIslandInventory(PlayerInfo pi) { if (pi.isPlaying()) return; if (this.settings.getAllowContent()) { pi.setIsPlaying(true); return; } // save old inventory pi.setOldInventory(pi.getPlayer().getInventory().getContents()); pi.setOldArmor(pi.getPlayer().getInventory().getArmorContents()); pi.setOldHealth(pi.getPlayer().getHealth()); pi.setOldFood(pi.getPlayer().getFoodLevel()); pi.setOldLevel(pi.getPlayer().getLevel()); pi.setOldExp(pi.getPlayer().getExp()); // set island inventory pi.getPlayer().getInventory().setContents(pi.getIslandInventory()); pi.getPlayer().getInventory().setArmorContents(pi.getIslandArmor()); if (pi.getIslandHealth() <= 0) { pi.getPlayer().setHealth(pi.getPlayer().getMaxHealth()); } else { pi.getPlayer().setHealth(pi.getIslandHealth()); } if (pi.getIslandFood() <= 0) { pi.getPlayer().setFoodLevel(20); } else { pi.getPlayer().setHealth(pi.getIslandFood()); } pi.getPlayer().setLevel(pi.getIslandLevel()); pi.getPlayer().setExp(pi.getIslandExp()); pi.setIsPlaying(true); }
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(); } }