Fix kyori, add permissionlist command, fix luckperms getting wrong context

This commit is contained in:
ajgeiss0702
2021-08-02 22:33:47 -07:00
parent 9d1161247b
commit a01bd759d2
20 changed files with 137 additions and 17 deletions
@@ -3,17 +3,32 @@ package us.ajg0702.queue.logic;
import us.ajg0702.queue.api.AliasManager;
import us.ajg0702.queue.api.Logic;
import us.ajg0702.queue.api.LogicGetter;
import us.ajg0702.queue.api.players.AdaptedPlayer;
import us.ajg0702.queue.common.QueueMain;
import us.ajg0702.queue.logic.permissions.PermissionGetter;
import us.ajg0702.utils.common.Config;
import java.util.List;
public class LogicGetterImpl implements LogicGetter {
PremiumLogic logic;
@Override
public Logic constructLogic() {
return new PremiumLogic(QueueMain.getInstance());
if(logic == null) {
logic = new PremiumLogic(QueueMain.getInstance());
}
return logic;
}
@Override
public AliasManager constructAliasManager(Config config) {
return new PremiumAliasManager(config);
}
@Override
public List<String> getPermissions(AdaptedPlayer player) {
if(logic == null) return null;
return logic.getPermissionGetter().getSelected().getPermissions(player);
}
}
@@ -12,6 +12,10 @@ import us.ajg0702.queue.logic.permissions.PermissionGetter;
public class PremiumLogic implements Logic {
public PermissionGetter getPermissionGetter() {
return permissionGetter;
}
private final PermissionGetter permissionGetter;
public PremiumLogic(QueueMain main) {
permissionGetter = new PermissionGetter(main);
@@ -36,7 +36,7 @@ public class LuckPermsHook implements PermissionHook {
User user = api.getUserManager().getUser(player.getUniqueId());
assert user != null;
SortedSet<Node> nodes = user.resolveDistinctInheritedNodes(QueryOptions.defaultContextualOptions());
SortedSet<Node> nodes = user.resolveDistinctInheritedNodes(QueryOptions.nonContextual());
List<String> perms = new ArrayList<>();