From 6cdf10ddaaf12228b42597c1aaa22caeb008e2ce Mon Sep 17 00:00:00 2001 From: Default Date: Sat, 2 Jan 2021 14:12:40 +0100 Subject: [PATCH] better saving --- .../benjocraeft/sharehealth/FileManager.java | 19 +++++++++---------- .../sharehealth/HealthManager.java | 2 +- .../benjocraeft/sharehealth/Messenger.java | 6 +++++- .../benjocraeft/sharehealth/Sharehealth.java | 10 +++++++++- .../benjocraeft/sharehealth/Statistics.java | 2 +- 5 files changed, 25 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/benjocraeft/sharehealth/FileManager.java b/src/main/java/com/benjocraeft/sharehealth/FileManager.java index b410139..6b5d4e5 100644 --- a/src/main/java/com/benjocraeft/sharehealth/FileManager.java +++ b/src/main/java/com/benjocraeft/sharehealth/FileManager.java @@ -2,6 +2,7 @@ package com.benjocraeft.sharehealth; import java.io.*; import java.util.*; +import java.util.logging.Logger; public class FileManager { @@ -22,17 +23,15 @@ public class FileManager { settingsFile = new File(pluginPath + "/settings.txt"); statisticsFile = new File(pluginPath + "/statistics.txt"); statusFile = new File(pluginPath + "/status.txt"); + + Logger logger = Sharehealth.Instance.getLogger(); try { - if (settingsFile.createNewFile()){ - //TODO Log - } - if (statisticsFile.createNewFile()){ - //TODO Log - } - if (statusFile.createNewFile()){ - //TODO Log - - } + if (settingsFile.createNewFile()) + logger.info(settingsFile.getName() + " created"); + if (statisticsFile.createNewFile()) + logger.info(statisticsFile.getName() + " created"); + if (statusFile.createNewFile()) + logger.info(statusFile.getName() + " created"); } catch(IOException e){ e.printStackTrace(); } diff --git a/src/main/java/com/benjocraeft/sharehealth/HealthManager.java b/src/main/java/com/benjocraeft/sharehealth/HealthManager.java index 0123526..3e9c387 100644 --- a/src/main/java/com/benjocraeft/sharehealth/HealthManager.java +++ b/src/main/java/com/benjocraeft/sharehealth/HealthManager.java @@ -25,7 +25,7 @@ public class HealthManager { } String getHealthString(){ - return new Formatter(Locale.US).format("%.2f", health).toString(); + return new Formatter(Locale.US).format("%.2f", health / 2).toString(); } diff --git a/src/main/java/com/benjocraeft/sharehealth/Messenger.java b/src/main/java/com/benjocraeft/sharehealth/Messenger.java index 172e16c..fb0b157 100644 --- a/src/main/java/com/benjocraeft/sharehealth/Messenger.java +++ b/src/main/java/com/benjocraeft/sharehealth/Messenger.java @@ -114,8 +114,12 @@ public class Messenger { } String statisticsMessage(){ + Map> statistics = Sharehealth.Instance.getStatistics().getStatistics(); + if (statistics.size() == 0) + return "There are no statistics yet."; + StringBuilder stats = new StringBuilder("Statistics:"); - Sharehealth.Instance.getStatistics().getStatistics().forEach(((uuid, values) -> { + statistics.forEach(((uuid, values) -> { String playerName = Bukkit.getOfflinePlayer(uuid).getName(); String stat = "\n" + ChatColor.BLUE + playerName + ChatColor.WHITE + ": Damage caused: " + diff --git a/src/main/java/com/benjocraeft/sharehealth/Sharehealth.java b/src/main/java/com/benjocraeft/sharehealth/Sharehealth.java index 22dad75..cdd9da7 100644 --- a/src/main/java/com/benjocraeft/sharehealth/Sharehealth.java +++ b/src/main/java/com/benjocraeft/sharehealth/Sharehealth.java @@ -61,8 +61,11 @@ public class Sharehealth extends JavaPlugin { //Create statistics from file statistics = new Statistics(fileManager.loadStatistics(), fileManager.loadSettings()); + getLogger().info("Statistics and Settings loaded"); loadStatus(); + getLogger().info("Status loaded"); + //Starts custom health regeneration new FoodRegeneration(); @@ -91,6 +94,7 @@ public class Sharehealth extends JavaPlugin { healthManager.updatePlayer(player); statistics.onPlayerJoined(player); fileManager.saveStatistics(statistics.getStatistics()); + fileManager.saveSettings(statistics.getSettings()); } void onPlayerRespawn(Player player){ @@ -205,6 +209,9 @@ public class Sharehealth extends JavaPlugin { Map map = fileManager.loadStatus(); defaultStatus.forEach(map::putIfAbsent); + map.forEach((String key, Object value) -> { + getLogger().info(key + "=" + value); + }); healthManager.setHealth((Double)map.get("health")); isFailed = (boolean) map.get("isFailed"); @@ -221,7 +228,8 @@ public class Sharehealth extends JavaPlugin { } boolean getLogging(Player player){ - return statistics.getSettings().get(player.getUniqueId()); + Map settings = statistics.getSettings(); + return settings.get(player.getUniqueId()); } } diff --git a/src/main/java/com/benjocraeft/sharehealth/Statistics.java b/src/main/java/com/benjocraeft/sharehealth/Statistics.java index ed90c7f..dfa6f11 100644 --- a/src/main/java/com/benjocraeft/sharehealth/Statistics.java +++ b/src/main/java/com/benjocraeft/sharehealth/Statistics.java @@ -38,8 +38,8 @@ public class Statistics { UUID uuid = player.getUniqueId(); Pair empty = Pair.pair(0., 0.); statistics.putIfAbsent(uuid, empty); - settings.putIfAbsent(uuid, true); + } void onPlayerRegainedHealth(Player player, double amount){