Mixtape/src/main/java/xyz/etztech/mixtape/MixtapeUtil.java

39 lines
1.2 KiB
Java

package xyz.etztech.mixtape;
import org.bukkit.entity.Player;
import org.bukkit.permissions.PermissionAttachmentInfo;
import java.util.List;
import java.util.Set;
public class MixtapeUtil {
public static String stripSlash(String base) {
if (base.startsWith("/")) {
return base.substring(1);
}
return base;
}
private static int getLimit(Set<PermissionAttachmentInfo> permissions) {
int global = Mixtape.getLimit();
int limit = 0;
for (PermissionAttachmentInfo permission : permissions) {
if (permission.getPermission().startsWith("mixtape.limit.") && permission.getValue()) {
try {
int p = Integer.parseInt(permission.getPermission().replaceFirst("mixtape.limit.", ""));
limit = Math.max(limit, p);
} catch (Exception ignored) {}
}
}
return limit != 0 ? limit : global;
}
public static boolean isLimited(Player player) {
int current = Mixtape.getDatabase().getAliases(player.getUniqueId().toString()).size();
int limit = getLimit(player.getEffectivePermissions());
return (current >= limit && limit != -1);
}
}