1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Список и блоки

Тема в разделе "Разработка плагинов для новичков", создана пользователем Invokers, 14 авг 2022.

Метки:
Статус темы:
Закрыта.
  1. Автор темы
    Invokers

    Invokers Новичок Пользователь

    Баллы:
    6
    Доброе время, для мини игры хочу сделать список в котором есть определённый материал блоков который можно ломать, подумал что можно сделать какой-нибудь лист с этими материалами и потом сравнивать а дальше уже моё дело.

    Код:
    public void AllowBlock(Material material) {
    
    if (material == Material.WOOD) {
     //Тут что-то дальше на своё усмотрение
    }
    
    }
    но думаю что можно сделать так, но проверять по over++ материалов эт лишнее дело

    Как оформить это в виде листа и потом проверять
     
  2. OJIEKCAHDP

    OJIEKCAHDP Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    OJIEKCAHDP
    Код:
    List<Material> ALLOWED = List.of(Material.WOOD, Material.DIAMOND_BLOCK, ...);
    
    if (ALLOWED.contains(material)) {//разрешено}
     
  3. imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Используй EnumSet.
    PHP:
    private static final Set<MaterialALLOWED_MATERIALS EnumSet.of(Material.WOODMaterial.DIRT);
    // ...
    if (ALLOWED_MATERIALS.contains(type)) {
        
    // TODO
    }
    udp: Производительнее List из ответа выше, просто потому что не проверяет каждый материал за материалом, а находит нужный сразу.
     
  4. Автор темы
    Invokers

    Invokers Новичок Пользователь

    Баллы:
    6
    Хорошо спасибо
     
  5. Автор темы
    Invokers

    Invokers Новичок Пользователь

    Баллы:
    6
    Воспользуюсь твоим способом ибо на List.of(...) сильно ругается
     
  6. imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Скорее всего потому что на Java 8 пишешь? List.of добавили в 9. Не говорю про 17, но советовал хотя бы на 11 перейти.
     
  7. Автор темы
    Invokers

    Invokers Новичок Пользователь

    Баллы:
    6
    Оказывается на на 8 писал всё
     
Статус темы:
Закрыта.

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