@JsonDetails @ApiModelProperty(value = "The permissions that are assigned to this subject") public Map<String, Boolean> getPermissions() { Map<String, Boolean> res = new HashMap<>(); for (Map<String, Boolean> map : value.getSubjectData().getAllPermissions().values()) { res.putAll(map); } return res; }
public void protect(Player player) { SubjectData subjectData = player.getTransientSubjectData(); Map<Set<Context>, Map<String, Boolean>> permissions = Collections.emptyMap(); if (config.getGeneral().isProtectPermissions()) { permissions = subjectData.getAllPermissions(); subjectData.clearPermissions(); } protections.put(player.getUniqueId(), new ProtectionData(player.getLocation(), permissions)); TeleportConfig teleportConfig = config.getGeneral().getTeleport(); if (teleportConfig.isEnabled()) { teleportConfig.getSpawnLocation().ifPresent(worldLocation -> safeTeleport(player, worldLocation)); } else { Location<World> oldLoc = player.getLocation(); //sometimes players stuck in a wall safeTeleport(player, oldLoc); } }