pre6 - UltraPermissions hook & bstats
This commit is contained in:
@@ -4,6 +4,7 @@ import us.ajg0702.queue.api.players.AdaptedPlayer;
|
||||
import us.ajg0702.queue.common.QueueMain;
|
||||
import us.ajg0702.queue.logic.permissions.hooks.BuiltIn;
|
||||
import us.ajg0702.queue.logic.permissions.hooks.LuckPermsHook;
|
||||
import us.ajg0702.queue.logic.permissions.hooks.UltraPermissionsHook;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@@ -15,7 +16,8 @@ public class PermissionGetter {
|
||||
public PermissionGetter(QueueMain main) {
|
||||
hooks = Arrays.asList(
|
||||
new BuiltIn(main),
|
||||
new LuckPermsHook(main)
|
||||
new LuckPermsHook(main),
|
||||
new UltraPermissionsHook(main)
|
||||
);
|
||||
}
|
||||
|
||||
@@ -30,6 +32,7 @@ public class PermissionGetter {
|
||||
selected = hook;
|
||||
}
|
||||
}
|
||||
main.getLogger().info("Using "+selected.getName()+" for permissions.");
|
||||
return selected;
|
||||
}
|
||||
|
||||
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
package us.ajg0702.queue.logic.permissions.hooks;
|
||||
|
||||
import me.TechsCode.UltraPermissions.UltraPermissions;
|
||||
import me.TechsCode.UltraPermissions.UltraPermissionsAPI;
|
||||
import me.TechsCode.UltraPermissions.storage.objects.User;
|
||||
import us.ajg0702.queue.api.players.AdaptedPlayer;
|
||||
import us.ajg0702.queue.common.QueueMain;
|
||||
import us.ajg0702.queue.logic.permissions.PermissionHook;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@SuppressWarnings("SimplifyOptionalCallChains")
|
||||
public class UltraPermissionsHook implements PermissionHook {
|
||||
|
||||
private final QueueMain main;
|
||||
public UltraPermissionsHook(QueueMain main) {
|
||||
this.main = main;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return "UltraPermissions";
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canUse() {
|
||||
return main.getPlatformMethods().hasPlugin("UltraPermissions");
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getPermissions(AdaptedPlayer player) {
|
||||
UltraPermissionsAPI ultraPermissionsAPI = UltraPermissions.getAPI();
|
||||
|
||||
Optional<User> userOptional = ultraPermissionsAPI.getUsers().uuid(player.getUniqueId());
|
||||
if(!userOptional.isPresent()) return new ArrayList<>();
|
||||
User user = userOptional.get();
|
||||
|
||||
List<String> permissions = new ArrayList<>();
|
||||
user.getPermissions().bungee().forEach(permission -> permissions.add(permission.getName()));
|
||||
return permissions;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user