From 6bcdefe34b78507dd79de8e6b9060179f610a1ab Mon Sep 17 00:00:00 2001 From: Dabo Ross Date: Fri, 12 Jul 2013 19:38:11 -0700 Subject: [PATCH] Fix ClassDefNotFoundError when using ModifyWorld without PermissionsEx. Fix what I broke before. --- .../tehkode/modifyworld/PlayerInformer.java | 41 +++++++++++-------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/src/main/java/ru/tehkode/modifyworld/PlayerInformer.java b/src/main/java/ru/tehkode/modifyworld/PlayerInformer.java index b2d040a..ece7020 100644 --- a/src/main/java/ru/tehkode/modifyworld/PlayerInformer.java +++ b/src/main/java/ru/tehkode/modifyworld/PlayerInformer.java @@ -79,31 +79,38 @@ public class PlayerInformer { } public String getMessage(Player player, String permission) { - if (PermissionsEx.isAvailable()) { - PermissionUser user = PermissionsEx.getUser(player); + boolean permissionsExExists = true; + try { + Class permissionsExClass = Class.forName("ru.tehkode.permissions.bukkit.PermissionsEx"); + } catch (ClassNotFoundException e) { + permissionsExExists = false; + } + if (permissionsExExists) { + if (PermissionsEx.isAvailable()) { + PermissionUser user = PermissionsEx.getUser(player); - String message; - String perm = permission; - int index; + String message; + String perm = permission; + int index; - while ((index = perm.lastIndexOf(".")) != -1) { - perm = perm.substring(0, index); + while ((index = perm.lastIndexOf(".")) != -1) { + perm = perm.substring(0, index); - message = user.getOption("permission-denied-" + perm, player.getWorld().getName(), null); - if (message == null) { - continue; + message = user.getOption("permission-denied-" + perm, player.getWorld().getName(), null); + if (message == null) { + continue; + } + + return message; } - return message; - } + message = user.getOption("permission-denied", player.getWorld().getName(), null); - message = user.getOption("permission-denied", player.getWorld().getName(), null); - - if (message != null) { - return message; + if (message != null) { + return message; + } } } - return getMessage(permission); }