Помогите Поставить блок который в руке с помощью кода

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

Energy warrior

Активный участник
Пользователь
Баллы
76
Короче. Я решил сделать что-то новое и уникальное. Но есть проблема мне нужно поставить блок который находится в руке я его ставлю изменяя тип блока на этой локации, но если я например хочу поставить красный песок то ставится обычный песок. Что мне делать я пытался менять блок по его id но всё ровно ставится обычный песок.
 
PHP:
    public void placeItemInHand(final Player p)
    {
        final ItemStack hand = p.getInventory().getItemInHand();
        if (hand != null && hand.getType() != Material.AIR)
        {
            final Block b = p.getTargetBlock((HashSet<Byte>) null, 5);
            if (b != null)
            {
                CraftItemStack.asNMSCopy(hand).placeItem(((CraftPlayer) p).getHandle(),
                        ((CraftWorld) p.getWorld()).getHandle(), new BlockPosition(b.getX(), b.getY(), b.getZ()),
                        EnumDirection.DOWN, 0.0F, 0.0F, 0.0F);
            }
        }
    }
 
PHP:
    public void placeItemInHand(final Player p)
    {
        final ItemStack hand = p.getInventory().getItemInHand();
        if (hand != null && hand.getType() != Material.AIR)
        {
            final Block b = p.getTargetBlock((HashSet<Byte>) null, 5);
            if (b != null)
            {
                CraftItemStack.asNMSCopy(hand).placeItem(((CraftPlayer) p).getHandle(),
                        ((CraftWorld) p.getWorld()).getHandle(), new BlockPosition(b.getX(), b.getY(), b.getZ()),
                        EnumDirection.DOWN, 0.0F, 0.0F, 0.0F);
            }
        }
    }
А комментарии.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх