Права на команды

Версия Minecraft
1.7.10
214
11
59
Написал несколько команд, предназначенных для обычных игроков, но не понимаю, где для них задаются права.
Вот такое при вводе:
b5frTN6KuoA.jpg

Java:
public abstract class Command extends CommandBase {

    private String name;

    public Command(String name){
        this.name = name;
    }

    @Override
    public int getRequiredPermissionLevel()
    {
        return 0;
    }

    @Override
    public String getCommandName() {
        return name;
    }

    @Override
    public abstract void processCommand(ICommandSender p_71515_1_, String[] p_71515_2_);

    @Override
    public String getCommandUsage(ICommandSender p_71518_1_) {
        return null;
    }
}

Upd: Вылечил своим обработчиком команд
 
Последнее редактирование:
214
11
59
@Agravaine
Код:
    @Mod.EventHandler
    public void serverStarting(FMLServerStartingEvent event) {
                event.registerServerCommand(new Command("arena") {
            @Override
            public void processCommand(ICommandSender sender, String[] args) {
                if (!(sender instanceof EntityPlayer)) return;
                switch(args[0]) {
                /........./
                case "join": {
                        ArenaPlayer arenaPlayer = ArenaPlayer.getArenaPlayer((EntityPlayer) sender);
                        if (arenaPlayer.arena == null) {
                            if (Arena.front.removeIf(team -> team.players.contains(arenaPlayer))) {
                                Utils.sendMessageTo(arenaPlayer, "Вы были успешно удалены из очереди!");
                                return;
                            }
                            Arena.ArenaType arenaType = Arena.ArenaType.SOLO;
                            if(args.length > 1) {
                                try {
                                    arenaType = Arena.ArenaType.valueOf(args[1]);
                                } catch (IllegalArgumentException ignored) {}
                            }
                            Arena arena = Arena.getAvailableArenaFor(arenaPlayer, arenaType);
                            if (arena != null) {
                                Arena.addToFront(arenaPlayer.team != null ? arenaPlayer.team : new Team(arenaPlayer));
                            } else {
                                Utils.sendMessageTo(arenaPlayer, "Извините, но мы не можем найти матч для вас :(");
                                Utils.sendMessageTo(arenaPlayer, "Пожалуйста, попробуйте снова позже.");
                            }
                        } else {
                            Utils.sendMessageTo(arenaPlayer, "Вы не можете сделать этого!");
                        }
                        break;
                    }
                    /......../
                }
            }
        });
    }
 

tox1cozZ

aka Agravaine
8,455
598
2,892
Во-первых, зачем ты говнокодишь из создаешь анонимный класс для команды? Почему нельзя сделать это красиво в отдельном классе?
Во-вторых, я не вижу чтобы ты переопределил метод который я тебе написал выше.
 

tox1cozZ

aka Agravaine
8,455
598
2,892
Больше 20... Господи, это ж просто убийство. Абсолютно нечитаемо. Ну да ладно, дело твое.
По идее должно работать. Попробуй все таки вынести в отдельный класс и переопределить там эти метод, может поможет.
 
Сверху