Помогите Как получить group из PermissionsEx (Permissions) для игрока

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

timonikch

Новичок
Пользователь
Баллы
6
Простите за такой "каверзный" вопрос, но последний раз я занимался плагинами примерно 5 лет назад и сейчас очень туплю.👍

Задача очень простая, мне нужно просто, чтобы при вводе игроком команды abc выводилось сообщение: "Твоя группа пермишонов - %группа пермишонов%, твой префикс - %префикс%"
Нужен коллаб только с плагином Permissions, никакаих чатексов мне не надо упаси ведро

Только не надо плиз на меня плеваться и говорить умными словами, с большой вероятностью я могу ничего не понять. Спасибо! 😆
 
Спасибо! Я во всем разобрался! То что внизу неактуально, а понадобится для тех кто имеет похожую задачу как у меня!

---- Решение задачи ----

Откуда мне получить этот collection<string> в onCommand
Вот мои функции:

public static String getPlayerGroup(Player player, Collection<String> possibleGroups) {
for (String group : possibleGroups) {
if (player.hasPermission("group." + group)) {
return group;
}
}
return null;
}
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel){
if(cmd.getName().equalsIgnoreCase("chd")){
Player player = (Player) sender;
player.sendMessage("Твоя группа пермишонов - " + getPlayerGroup(player, ???));
}
return false;
}

Там где ??? я ничегонепонимаю

udp может надо массив...
как-то так

Collection<String> possibleGroups = new ArrayList<String>();
possibleGroups.add("default");
possibleGroups.add("employer");
possibleGroups.add("employerplus");
possibleGroups.add("chief");
possibleGroups.add("admin");

udp Все получилось!
исходник:

public class Main extends JavaPlugin {
Logger log = getLogger();
public void onEnable() {
log.info("Плагин запущен успешно!");
}
public static String getPlayerGroup(Player player, Collection<String> possibleGroups) {
for (String group : possibleGroups) {
if (player.hasPermission("group." + group)) {
return group;
}
}
return null;
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args){
if(cmd.getName().equalsIgnoreCase("chd")){
Player player = (Player) sender;
Collection<String> possibleGroups = new ArrayList<String>();
possibleGroups.add("default");
possibleGroups.add("employer");
possibleGroups.add("employerplus");
possibleGroups.add("chief");
possibleGroups.add("admin");
player.sendMessage("Твоя группа пермишонов - " + getPlayerGroup(player, possibleGroups));
return true;
}
return false;
}
}



 
Последнее редактирование:
Можешь брать список групп через конфиг, хз:
Код:
groupList:
- group1
- group2
- group3
Метод их получения, вроде, getStringList("groupList");
P.S Скорее всего есть способ брать этот список групп из самого permissions.yml, без промежуточного конфига, хз
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх