[1.8.9] [РЕШЕНО] Неломаемое дерево.

Статус
В этой теме нельзя размещать новые ответы.

timaxa007

Модератор
5,831
409
672
1. Если в руке ни чего нет, то это будет null, когда ты пытаешься брать объект Item из объекта ItemStack который null будет краш о том, что ItemStack является null.
2. На что ссылочку?
Если этот блок является log или log2 и если в руке ничего нет или нету топора, то этот блок будет нерушимом блоком.
[merge_posts_bbcode]Добавлено: 29.06.2016 19:47:11[/merge_posts_bbcode]

Код:
    Set<Block> white_list_wood = Sets.newHashSet(
            Blocks.log,
            Blocks.log2
            );

    @SubscribeEvent
    public void unbreakeableWood(PlayerEvent.BreakSpeed event) {
        if (white_list_wood.contains(event.block) && canBlockItemAxe(event.entityPlayer.getHeldItem()))
            event.setCanceled(true);
    }

    private static boolean canBlockItemAxe(ItemStack itemStack) {
        return itemStack == null || !(itemStack.getItem() instanceof ItemAxe);
    }

[merge_posts_bbcode]Добавлено: 29.06.2016 19:47:27[/merge_posts_bbcode]

Тему закрыть?
 
timaxa007 написал(а):
1. Если в руке ни чего нет, то это будет null, когда ты пытаешься брать объект Item из объекта ItemStack который null будет краш о том, что ItemStack является null.
2. На что ссылочку?
Если этот блок является log или log2 и если в руке ничего нет или нету топора, то этот блок будет нерушимом блоком.
[merge_posts_bbcode]Добавлено: 29.06.2016 19:47:11[/merge_posts_bbcode]

Код:
    Set<Block> white_list_wood = Sets.newHashSet(
            Blocks.log,
            Blocks.log2
            );

    @SubscribeEvent
    public void unbreakeableWood(PlayerEvent.BreakSpeed event) {
        if (white_list_wood.contains(event.block) && canBlockItemAxe(event.entityPlayer.getHeldItem()))
            event.setCanceled(true);
    }

    private static boolean canBlockItemAxe(ItemStack itemStack) {
        return itemStack == null || !(itemStack.getItem() instanceof ItemAxe);
    }

[merge_posts_bbcode]Добавлено: 29.06.2016 19:47:27[/merge_posts_bbcode]

Тему закрыть?

Можно. Спасибо за объяснения.
 

timaxa007

Модератор
5,831
409
672
Пожалуйста.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху