Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

[РЕШЕНО]Числовые значения из переменной args[0]

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

Kotlar

Активный участник
Пользователь
Баллы
66
Имя в Minecraft
kirilka1996
Доброго дня, уважаемые старожилы нашего замечательного форума.
Можете мне помочь. Мне кажется для вас это очень просто. Пишу команду
Код:
if(commandLabel.equalsIgnoreCase("givemat")){
            if(args.length == 0){
                player.sendMessage("Используйте: /givemat [кол-во]");
            }
            if(args.length == 1){
                if(user.has("sunrise.race.human")){
                ItemStack item = player.getItemInHand();
                //int kolvo = item.getAmount();
                if(item.getType() == Material.LOG)
                {
                   
                    //player.setItemInHand(item);
                }
                else if(item.getType() == Material.COBBLESTONE)
                {
                }
                else if(item.getType() == Material.IRON_INGOT)
                {
                }
                else if(item.getType() == Material.GOLD_INGOT)
                {
                }
                else if(item.getType() == Material.DIAMOND)
                {
                }
                else{player.sendMessage("Вы не можете положить данный предмет!");}
            }
                else{}
            }
            else {player.sendMessage("Используйте: /givemat [Кол-во]");}
           
        }
вопросик вот в чем:
как извлечь числовое значение из переменной args[0]. Или, если это невозможно, откуда я могу извлечь число, которое я написал после команды?
Заранее очень сильно благодарен!
Без всяких шуток,остроумия пожалуйста, я очень на вас расчитываю)))
 
Надо сперва проверить, является ли это числом.
Код:
public static boolean isInt(String s) {
    try {
        Integer.parseInt(s);
    } catch (NumberFormatException nfe) {
        return false;
    }
    return true;
}
Использование:
Код:
public boolean onCommand(CommandSender s, Command cmd, String lbl, String[] args) {
    if (args.length >= 1) {
        if (isInt(args[0])) {
            int num = Integer.parseInt(args[0]);//или что там
            //т.д.
        }
    }
    return true;
}
Ну,а если пользователь будет знать что там надо ввести число:
Код:
int num = Integer.parseInt(args[0]); // или что там у вас
 
Надо сперва проверить, является ли это числом.
Код:
public static boolean isInt(String s) {
    try {
        Integer.parseInt(s);
    } catch (NumberFormatException nfe) {
        return false;
    }
    return true;
}
Использование:
Код:
public boolean onCommand(CommandSender s, Command cmd, String lbl, String[] args) {
    if (args.length >= 1) {
        if (isInt(args[0])) {
            int num = Integer.parseInt(args[0]);//или что там
            //т.д.
        }
    }
    return true;
}
Ну,а если пользователь будет знать что там надо ввести число:
Код:
int num = Integer.parseInt(args[0]); // или что там у вас
Благодарю. Если что нибудь не получится обращусь в ЛС!
ЗАКРЫТО
 
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх