diff --git a/src/main/java/com/garbagemule/MobArena/MAUtils.java b/src/main/java/com/garbagemule/MobArena/MAUtils.java index 561974c..6fadd13 100644 --- a/src/main/java/com/garbagemule/MobArena/MAUtils.java +++ b/src/main/java/com/garbagemule/MobArena/MAUtils.java @@ -74,11 +74,15 @@ public class MAUtils List things = new ArrayList<>(); for (String reward : rewards.split(",")) { - Thing thing = plugin.getThingManager().parse(reward.trim()); - if (thing == null) { - plugin.getLogger().warning("Failed to parse reward: " + reward.trim()); - } else { - things.add(thing); + try { + Thing thing = plugin.getThingManager().parse(reward.trim()); + if (thing == null) { + plugin.getLogger().warning("Failed to parse reward: " + reward.trim()); + } else { + things.add(thing); + } + } catch (Exception e) { + plugin.getLogger().severe("Exception parsing reward '" + reward.trim() + "': " + e.getLocalizedMessage()); } } result.put(wave, things); diff --git a/src/main/java/com/garbagemule/MobArena/things/MoneyThingParser.java b/src/main/java/com/garbagemule/MobArena/things/MoneyThingParser.java index a176363..0d0c8f2 100644 --- a/src/main/java/com/garbagemule/MobArena/things/MoneyThingParser.java +++ b/src/main/java/com/garbagemule/MobArena/things/MoneyThingParser.java @@ -18,13 +18,7 @@ class MoneyThingParser implements ThingParser { if (money == null) { return null; } - - Double value = valueOf(money); - if (value == null) { - return null; - } - - return new MoneyThing(plugin, value); + return new MoneyThing(plugin, Double.parseDouble(money)); } private String trimPrefix(String s) { @@ -36,13 +30,4 @@ class MoneyThingParser implements ThingParser { } return null; } - - private Double valueOf(String money) { - try { - return Double.parseDouble(money); - } catch (NumberFormatException e) { - plugin.getLogger().warning("Invalid economy value: " + money); - return null; - } - } } diff --git a/src/main/java/com/garbagemule/MobArena/waves/WaveParser.java b/src/main/java/com/garbagemule/MobArena/waves/WaveParser.java index 0807314..2d0e2bd 100644 --- a/src/main/java/com/garbagemule/MobArena/waves/WaveParser.java +++ b/src/main/java/com/garbagemule/MobArena/waves/WaveParser.java @@ -307,11 +307,15 @@ public class WaveParser // Rewards! String rew = config.getString("reward"); if (rew != null) { - Thing reward = arena.getPlugin().getThingManager().parse(rew); - if (reward == null) { - Bukkit.getLogger().warning("[MobArena] Failed to parse boss reward: " + rew); - } else { - result.setReward(reward); + try { + Thing thing = arena.getPlugin().getThingManager().parse(rew.trim()); + if (thing == null) { + arena.getPlugin().getLogger().warning("Failed to parse boss reward: " + rew.trim()); + } else { + result.setReward(thing); + } + } catch (Exception e) { + arena.getPlugin().getLogger().severe("Exception parsing boss reward '" + rew.trim() + "': " + e.getLocalizedMessage()); } }