From aa38f570dd866fe446156db3e84fa095de40f406 Mon Sep 17 00:00:00 2001 From: Eli Date: Wed, 4 Aug 2021 13:11:21 +0200 Subject: [PATCH] fix language files not properly recognized --- src/main/java/me/justeli/coins/Coins.java | 6 ++-- .../java/me/justeli/coins/config/Message.java | 30 ++++++++++++++----- ...kupEvent.java => BukkitEventListener.java} | 2 +- ...ckupEvent.java => PaperEventListener.java} | 2 +- 4 files changed, 28 insertions(+), 12 deletions(-) rename src/main/java/me/justeli/coins/handler/listener/{BukkitPickupEvent.java => BukkitEventListener.java} (95%) rename src/main/java/me/justeli/coins/handler/listener/{PaperPickupEvent.java => PaperEventListener.java} (95%) diff --git a/src/main/java/me/justeli/coins/Coins.java b/src/main/java/me/justeli/coins/Coins.java index d7e5979..387680a 100644 --- a/src/main/java/me/justeli/coins/Coins.java +++ b/src/main/java/me/justeli/coins/Coins.java @@ -9,10 +9,10 @@ import me.justeli.coins.handler.InventoryHandler; import me.justeli.coins.handler.InteractionHandler; import me.justeli.coins.handler.UnfairMobHandler; -import me.justeli.coins.handler.listener.BukkitPickupEvent; +import me.justeli.coins.handler.listener.BukkitEventListener; import me.justeli.coins.handler.PickupHandler; import me.justeli.coins.handler.DropHandler; -import me.justeli.coins.handler.listener.PaperPickupEvent; +import me.justeli.coins.handler.listener.PaperEventListener; import me.justeli.coins.command.Commands; import me.justeli.coins.command.TabComplete; import me.justeli.coins.hook.MythicMobsHook; @@ -194,7 +194,7 @@ private void registerEvents () boolean validPaper = PaperLib.isPaper() && PaperLib.getMinecraftVersion() > 12; - manager.registerEvents(validPaper? new PaperPickupEvent() : new BukkitPickupEvent(), this); + manager.registerEvents(validPaper? new PaperEventListener() : new BukkitEventListener(), this); manager.registerEvents(new HopperHandler(), this); manager.registerEvents(new UnfairMobHandler(), this); diff --git a/src/main/java/me/justeli/coins/config/Message.java b/src/main/java/me/justeli/coins/config/Message.java index 32a0c31..f6f761c 100644 --- a/src/main/java/me/justeli/coins/config/Message.java +++ b/src/main/java/me/justeli/coins/config/Message.java @@ -4,9 +4,11 @@ import me.justeli.coins.util.Util; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; +import org.json.simple.parser.ParseException; import java.io.File; import java.io.FileInputStream; +import java.io.IOException; import java.io.InputStreamReader; import java.nio.charset.StandardCharsets; import java.util.HashMap; @@ -116,20 +118,34 @@ public static void init (String language) private static JSONObject getJson (String language) { + File file = getFile(language); + + if (file == null) + return null; + try { return (JSONObject) new JSONParser().parse( - new InputStreamReader( - new FileInputStream( - Coins.plugin().getDataFolder() + File.separator + "language" + File.separator + language + ".json" - ), - StandardCharsets.UTF_8 - ) + new InputStreamReader(new FileInputStream(file), StandardCharsets.UTF_8) ); } - catch (Exception exception) + catch (IOException | ParseException exception) { return null; } } + + private static File getFile (String language) + { + File[] languageFiles = new File(Coins.plugin().getDataFolder().getAbsolutePath() + File.separator + "language").listFiles(); + for (File languageFile : languageFiles) + { + if (languageFile.getName().equalsIgnoreCase(language + ".json")) + { + return languageFile; + } + } + + return null; + } } diff --git a/src/main/java/me/justeli/coins/handler/listener/BukkitPickupEvent.java b/src/main/java/me/justeli/coins/handler/listener/BukkitEventListener.java similarity index 95% rename from src/main/java/me/justeli/coins/handler/listener/BukkitPickupEvent.java rename to src/main/java/me/justeli/coins/handler/listener/BukkitEventListener.java index 1186945..ac1b6ad 100644 --- a/src/main/java/me/justeli/coins/handler/listener/BukkitPickupEvent.java +++ b/src/main/java/me/justeli/coins/handler/listener/BukkitEventListener.java @@ -10,7 +10,7 @@ * Created by Eli on September 13, 2020. * Coins: me.justeli.coins.events */ -public class BukkitPickupEvent +public class BukkitEventListener implements Listener { @EventHandler (ignoreCancelled = true) diff --git a/src/main/java/me/justeli/coins/handler/listener/PaperPickupEvent.java b/src/main/java/me/justeli/coins/handler/listener/PaperEventListener.java similarity index 95% rename from src/main/java/me/justeli/coins/handler/listener/PaperPickupEvent.java rename to src/main/java/me/justeli/coins/handler/listener/PaperEventListener.java index e05bdc2..7607028 100644 --- a/src/main/java/me/justeli/coins/handler/listener/PaperPickupEvent.java +++ b/src/main/java/me/justeli/coins/handler/listener/PaperEventListener.java @@ -10,7 +10,7 @@ * Created by Eli on September 13, 2020. * Coins: me.justeli.coins.events */ -public class PaperPickupEvent +public class PaperEventListener implements Listener { @EventHandler