Помогите Как задать игроку группу через PEX API

  • Автор темы Автор темы Skratex
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Skratex

Ньюби
Пользователь
Баллы
1
Имя в Minecraft
Skratex
Задался вопросом, как не выдать (group add), а установить (group set) группу игроку через Pex API

Код:
String name = args[0];
            
 PermissionsEx.getUser(name).setGroups(playergroup,
worldname);
//playergroup и worldname  взяты с конфига
//Пробовал достать но не выходит, как сделать?

Я делаю большой, но легкий в создании плагин и хочу узнать как сделать выдачу
и установке, а не добавлению группы в PEX API.
 
Если нельзя через PEX API скажите как это сделать...

Спасибо
 
Код:
                String name = args[1];
                String group = args[2];
                Player target = Bukkit.getPlayer(name);
                PermissionUser user = PermissionsEx.getUser(name);
                String[] groups = user.getGroupNames();
                for (String playerGroup : groups) {
                    user.removeGroup(playerGroup);
                }
                if (target == null) {
                    p.sendMessage("§eИгрока§c " + name + " §eнет на сервере!");
                    return true;
                }
                user.addGroup(group);
                p.sendMessage("§eПривилегия§c " + group + " §eвыдана игроку§c " + name);
                target.sendMessage("§eИгрок§c " + p.getName() + " §eвыдал Вам привилегию§c " + group);
                target.sendTitle("§eИгрок§c " + p.getName(), " §eвыдал Вам привилегию§c " + group);
                Bukkit.broadcastMessage("§eИгрок§c " + p.getName() + " §eвыдал привилегию§c " + group + " §eигроку§c " + name);
                return true;
            }
        }
 
Открываю, не понятно объяснил

Вот код, как подстроить?
Код:
package com.skratex.main;

import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

import ru.tehkode.permissions.PermissionUser;
import ru.tehkode.permissions.bukkit.PermissionsEx;

public class DelDonateCMD implements CommandExecutor {

    private MainClass plugin;

    public DelDonateCMD(MainClass plugin) {
        this.plugin = plugin;
    }

    @Override
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
        String prefix = plugin.getConfig().getString("prefix");
        prefix = prefix.replace("&", "\u00a7");
        String noperms = plugin.getConfig().getString("messages.noperms");
        noperms = noperms.replace("&", "\u00a7");
        String noplayersender = plugin.getConfig().getString("messages.noplayersender");
        noplayersender = noplayersender.replace("&", "\u00a7");
        String playergroup = plugin.getConfig().getString("permissiosex.playergroup");
        playergroup = playergroup.replace("&", "\u00a7");
        String worldname = plugin.getConfig().getString("worlds.defaultworld");
        worldname = worldname.replace("&", "\u00a7");
        if(cmd.getName().equalsIgnoreCase("undonate")) {
            if(!sender.hasPermission("GCon.undonate")) {
                sender.sendMessage(prefix + noperms);
                return true;
            }
            if(!(sender instanceof Player)) {
                sender.sendMessage(prefix + noplayersender);
                return true;
            }
            
            String usageofundon = prefix + ChatColor.RED + "Используй: " + ChatColor.WHITE + "/undon <Ник игрока> <Причина>";
            
            if(args.length < 2) {
                sender.sendMessage(prefix + usageofundon);
                return true;
            }
            
            String name = args[1];
            String group = args[2];
            Player target = Bukkit.getPlayer(name);
            PermissionUser user = PermissionsEx.getUser(name);
            String[] groups = user.getGroupNames();
            for (String playerGroup : groups) {
                user.removeGroup(playerGroup);
            }
            if (target == null) {
                sender.sendMessage("§eИгрока§c " + name + " §eнет на сервере!");
                return true;
            }
            user.addGroup(group);
            sender.sendMessage("§eПривилегия§c " + group + " §eвыдана игроку§c " + name);
            target.sendMessage("§eИгрок§c " + p.getName() + " §eвыдал Вам привилегию§c " + group);
            target.sendTitle("§eИгрок§c " + p.getName(), " §eвыдал Вам привилегию§c " + group);
            Bukkit.broadcastMessage("§eИгрок§c " + p.getName() + " §eвыдал привилегию§c " + group + " §eигроку§c " + name);
            return true;
        }
        return true;
    }
    
}
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх