Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ru.Dan_Ender.ctOS.utils;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.List;
- import org.bukkit.entity.Player;
- import org.bukkit.permissions.PermissionAttachment;
- import ru.Dan_Ender.ctOS.ctOS;
- public class UserProfile {
- private Player p;
- private PermissionAttachment permissionAttachment;
- private boolean isAdmin,isModer,isBuilder = false;
- private List<String> permissions = new ArrayList<String>();
- private String prefix,suffix,prefixTab,suffixTab,group,adminPass = "@NULL";
- public String getAdminPass() {
- return adminPass;
- }
- public void setAdminPass(String adminPass) {
- this.adminPass = adminPass;
- }
- public UserProfile(Player p) {
- this.p = p;
- permissionAttachment = new PermissionAttachment(ctOS.ctOS, p);
- }
- UserProfile(Player p,String[] parameters) {
- this.p = p;
- permissionAttachment = new PermissionAttachment(ctOS.ctOS, p);
- isAdmin = Boolean.valueOf(parameters[0]);
- isModer = Boolean.valueOf(parameters[1]);
- isBuilder = Boolean.valueOf(parameters[2]);
- prefix = parameters[3];
- prefixTab = parameters[4];
- suffix = parameters[5];
- suffixTab = parameters[6];
- permissions = Arrays.asList(parameters[7].replace("[", "").replace("]", "").split(", "));
- group = parameters[8];
- adminPass = parameters[9];
- for (String permission:permissions) {
- permissionAttachment.setPermission(permission, true);
- }
- for (String permission:ctOS.config.getGroupPermissions(group)) {
- permissionAttachment.setPermission(permission, true);
- }
- }
- public boolean hasPermission(String permission) {
- if (isAdmin) {
- return true;
- }
- for (String ownPerm:permissions) {
- if (ownPerm.equals(permission)) {
- return true;
- }
- }
- return false;
- }
- public String getGroup() {
- return group;
- }
- public void setGroup(String group) {
- removePermissions(ctOS.config.getGroupPermissions(this.group));
- this.group = group;
- addPermissions(ctOS.config.getGroupPermissions(group));
- }
- public String getPrefix(boolean mysql) {
- if (!mysql && prefix.equalsIgnoreCase("@NULL")) return ctOS.config.getGroupPrefix(group);
- return prefix;
- }
- public void setPrefix(String prefix) {
- this.prefix = prefix;
- }
- public String getSuffix(boolean mysql) {
- if (!mysql && suffix.equalsIgnoreCase("@NULL")) return ctOS.config.getGroupSuffix(group);
- return suffix;
- }
- public void setSuffix(String suffix) {
- this.suffix = suffix;
- }
- public String getPrefixTab(boolean mysql) {
- if (!mysql && prefixTab.equalsIgnoreCase("@NULL")) return ctOS.config.getGroupTabPrefix(group);
- return prefixTab;
- }
- public void setPrefixTab(String prefixTab) {
- this.prefixTab = prefixTab;
- }
- public String getSuffixTab(boolean mysql) {
- if (!mysql && suffixTab.equalsIgnoreCase("@NULL")) return ctOS.config.getGroupTabSuffix(group);
- return suffixTab;
- }
- public void setSuffixTab(String suffixTab) {
- this.suffixTab = suffixTab;
- }
- public boolean isAdmin() {
- return isAdmin;
- }
- public void setAdmin(boolean isAdmin) {
- this.isAdmin = isAdmin;
- }
- public boolean isModer() {
- return isModer;
- }
- public void setModer(boolean isModer) {
- this.isModer = isModer;
- }
- public boolean isBuilder() {
- return isBuilder;
- }
- public void setBuilder(boolean isBuilder) {
- this.isBuilder = isBuilder;
- }
- public List<String> getPermissions() {
- return permissions;
- }
- public void setPermissions(List<String> permissions) {
- for (String permission:this.permissions) {
- permissionAttachment.unsetPermission(permission);
- }
- this.permissions.clear();
- this.permissions.addAll(permissions);
- for (String permission:this.permissions) {
- permissionAttachment.setPermission(permission, true);
- }
- }
- public void addPermission(String permission) {
- permissionAttachment.setPermission(permission, true);
- permissions.add(permission);
- }
- public void addPermissions(List<String> permissions) {
- for (String permission:permissions) {
- permissionAttachment.setPermission(permission, true);
- }
- this.permissions.addAll(permissions);
- }
- public void removePermission(String permission) {
- permissionAttachment.unsetPermission(permission);
- this.permissions.remove(permission);
- }
- public void removePermissions(List<String> permissions) {
- for (String permission:permissions) {
- permissionAttachment.unsetPermission(permission);
- }
- this.permissions.removeAll(permissions);
- }
- public Player getPlayer() {
- return p;
- }
- public String getConvertedPermissions() {
- String perms = permissions.toString().replace("[", "").replace("]", "");
- return perms;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement