Помогите Как получить право * из PermissionsEx

Статус
Закрыто для дальнейших ответов.

amw202020

Активный участник
Пользователь
Баллы
66
Всем привет.
Хочу получить право игрока - '*' из файла permissions.yml

Java:
public void join(PlayerJoinEvent e){
  Player player = (Player) e.getPlayer();
  World World = player.getWorld();
  PermissionUser user = PermissionsEx.getUser(player);
  if(user.getOption("permissions", World.getName()).equals("*")){
     plugin.Log.info("[Protect] " +player.getName() + "со звездой!!!");
  } else {
     plugin.Log.info("[Protect] " +player.getName() + "без звезды!");
  }

Так тоже пробовал ничего не получилось

Java:
 Player player = (Player) e.getPlayer();
 if(!player.hasPermission("*") || !player.isOp()) return;
 if(player.hasPermission("*")){
    plugin.Log.info("Бла бла бла бла бла бла");
 } 
 if(player.hasPermission("vzlomka")){
    plugin.Log.info("sssssssssssssssssssssssssssssssss");
 }
 if(!player.hasPermission("vzlomka")){
    plugin.Log.info("dddddddddddddddddddddddddddddddddddddddd");
 }

В консоль просто ничего не выводит, как можно получить '*' игрока хотябы boolean значение false/true ?
 
Не?
Java:
Player p;
if (p.isOp()){
   ОПКА
}else{
  НЕ ОПКА
}
 
Не?
Java:
Player p;
if (p.isOp()){
   ОПКА
}else{
  НЕ ОПКА
}
В том то и дело что при получении OP у меня всё срабатывает а при получении всех прав нет!

Java:
 if(!player.hasPermission("*") || !player.isOp()) return;
 String isPlayerOp = player.isOp() ? "OP:true" : "OP:false";
 String isPlayerPexStar = player.getPlayer().hasPermission("*") ? "Pex*:true" : "Pex*false";
 plugin.Log.info("[Protect] 'Эвент': {PlayerMoveEvent}, 'isOp': '"+isPlayerOp+"', 'isPex*': '"+isPlayerPexStar+"'");
 
Ну ок, тогда Vault.
мне бы пример срочно) сервер другу ломают, а я с pex'om ещё не работал.
нужен именно код получения '*' у игрока и желательно boolean значение - false / true
буду очень благодарен.
 
Плагины проверяйте все. С bukkit dev перекачайте известные, остальные декомпилируйте и проверяйте.
да всё проверено, у меня 200 онлайн,у друга под 300, банжу всё подрят поменяли, все дыры по туторам фиксанули даже порты 127.0.0.1 проставили, его ломают меня нет.
плагины все взяты с bukkit/spigotmc, а самописы с проверенных людей с которыми давно работаем, и сейчас в основном речь не о взломе а как получить собственно саму звезду из pex.
 

мне бы пример срочно) сервер другу ломают, а я с pex'om ещё не работал.
нужен именно код получения '*' у игрока и желательно boolean значение - false / true
буду очень благодарен.
Качаешь Vault, импортишь его в библу и вбиваешь етот код:
Java:
public Permission perms = null;

public void onEnable(){
        if (!setupPermissions()){
         getLogger().log(Level.SEVERE,"no Vault dependency found!");
         getServer().getPluginManager().disablePlugin(this);
         return;
       }
}

private boolean setupPermissions(){
       RegisteredServiceProvider<Permission> rsp = getServer().getServicesManager().getRegistration(Permission.class);
       perms = rsp.getProvider();
       return perms != null;
}
Ну и проверочка.
Java:
public boolean hz(Player p){
    if (perms.has(p, "*")){
       return true;
    }else{
       return false;
    }
}
 
Ну ок, тогда Vault.
это к чему вообще?
каким боком сюда ваулт то причастен. Котел не варит?
Java:
@EventHandler
    public void onJoin(PlayerJoinEvent e){
        if (plugin.pex.getPermissionsManager().getUser(e.getPlayer()).has("*")){
            e.getPlayer().sendMessage("true");
        }else e.getPlayer().sendMessage("false");
    }

Работает на ура


Качаешь Vault, импортишь его в библу и вбиваешь етот код:
Java:
public Permission perms = null;

public void onEnable(){
        if (!setupPermissions()){
         getLogger().log(Level.SEVERE,"no Vault dependency found!");
         getServer().getPluginManager().disablePlugin(this);
         return;
       }
}

private boolean setupPermissions(){
       RegisteredServiceProvider<Permission> rsp = getServer().getServicesManager().getRegistration(Permission.class);
       perms = rsp.getProvider();
       return perms != null;
}
Ну и проверочка.
Java:
public boolean hz(Player p){
    if (perms.has(p, "*")){
       return true;
    }else{
       return false;
    }
}
ты дурак что ли?

тут нужен плагин PEX , НАХРЕН ТЫ ЕМУ ВАУЛТ ВТИРАЕШЬ?
 
Зачем вообще работать с Pex'ом или Vault'ом? Уже давно можно просто простую проверку:
p.hasPermission("*")
при событиях входа и перемещения в другие миры
 
Зачем вообще работать с Pex'ом или Vault'ом? Уже давно можно просто простую проверку:
p.hasPermission("*")
при событиях входа и смены мира
у человека так почему то не работает
 
у человека так почему то не работает
Значит плохо пробовал. Любой не доисторический менеджер прав подключается к ванильной майнкрафтовской системе. Хотя я не исключаю, что его сервер ломают не из-за наличия прав у какого-то игрока
 


Качаешь Vault, импортишь его в библу и вбиваешь етот код:
Java:
public Permission perms = null;

public void onEnable(){
        if (!setupPermissions()){
         getLogger().log(Level.SEVERE,"no Vault dependency found!");
         getServer().getPluginManager().disablePlugin(this);
         return;
       }
}

private boolean setupPermissions(){
       RegisteredServiceProvider<Permission> rsp = getServer().getServicesManager().getRegistration(Permission.class);
       perms = rsp.getProvider();
       return perms != null;
}
Ну и проверочка.
Java:
public boolean hz(Player p){
    if (perms.has(p, "*")){
       return true;
    }else{
       return false;
    }
}
помогло,спасибо)
 


Качаешь Vault, импортишь его в библу и вбиваешь етот код:
Java:
public Permission perms = null;

public void onEnable(){
        if (!setupPermissions()){
         getLogger().log(Level.SEVERE,"no Vault dependency found!");
         getServer().getPluginManager().disablePlugin(this);
         return;
       }
}

private boolean setupPermissions(){
       RegisteredServiceProvider<Permission> rsp = getServer().getServicesManager().getRegistration(Permission.class);
       perms = rsp.getProvider();
       return perms != null;
}
Ну и проверочка.
Java:
public boolean hz(Player p){
    if (perms.has(p, "*")){
       return true;
    }else{
       return false;
    }
}
Лол, просто выдрал откуда-то код :D
 
Костыльная хрень.
Использовать PexApi - нееее.
Использовать Vault для работы c PEX -- да, дайте два

Школота, что поделать
тебе откуда знать сколько мне лет?
все такие умные и сразу знают все взаимодействия с плагинами и все api? Я тебе родился кодером чтоль?
Как смог так и пофиксил и не зачем тут строить из себя всезнающего.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх