Как сделать кнопку которая ставится на определенный блок

Добавил пользователь Дмитрий К.
Обновлено: 04.10.2024

Определяет позицию блока, который нужно изменить. В Java Edition это должна быть позиция блока, состоящая из , и , каждый из которых должен быть целое число или нотация тильды и символа вставки. В Bedrock Edition это должны быть трехмерные координаты, состоящие из , и , каждая из которых должна быть числом с плавающей запятой или обозначением тильды и символа вставки.

JE : : block_state
BE: tileName: Block : Block

Определяет новый блок. В Java Edition это должен быть аргумент блока (не принимает теги блока). В Bedrock Edition это должен быть идентификатор блока.

BE: tileData: int : int

Задает данные блока, которые будут использоваться для нового блока. Недопустимые значения для указанного идентификатора блока возвращаются к 0. Если не указан, по умолчанию устанавливается на 0. Должно быть 32-битным целым числом. Он должен быть от 0 до 65535 (включительно).

Содержание

Варианты команды [ ]

  • Обычная команда:
  • Команда с указанием состояний блока:
  • Команда с указанием NBT данных:
  • Команда с указанием состояний блока и NBT данных:

При указании NBT данных обязательно нужно заключать nbt и значение в кавычки, если они состоят из нескольких слов.

Название блока [ ]

Название блока записывается строчными латинскими буквами. Если в названии несколько слов, то они разделяются знаком подчеркивания " _ ".

Названия блоков можно предварять пространством имён minecraft: , а можно и нет. Для блоков из модификации пространством имён, обычно, является название модификации.

  • minecraft:sandstone — песчаник;
  • minecraft:stone_slab — каменная плита;
  • minecraft:stone_pressure_plate — каменная нажимная пластина;
  • white_wool — белая шерсть.

Состояния блоков [ ]

Состояния блока определяют некоторые параметры блока.

  • Компаратор направлен в одну из 4 сторон ( facing=north|south|east|west ).
  • Повторитель имеет задержку ( delay=1|2|3|4 ) и может быть активирован ( powered=true ) или неактивирован ( powered=false ).
  • Ступени имеет различную форму ( shape=inner_left|inner_right|outer_left|outer_right|straight ).

Несколько возможных значений разделены вертикальной чертой | .

  • /setblock ~ ~ ~1 chest[facing=north] — установит перед игроком, который смотрит на юг, сундук, который направлен на север.
  • /setblock ~ ~ ~1 repeater[delay=2, powered=true] — установит перед игроком активированный повторитель с задержкой 2.

Настройка размещения блока [ ]

  • replace — заменяет старый блок новым.
  • destroy — подобен replace , но выбрасывает старый блок и его содержимое, как если бы он был добыт инструментом без чар.
  • keep — заменяет только воздух указанным блоком.

По умолчанию replace .

Условие: Игрок стоит на открытом воздухе

  • /setblock ~ ~2 ~ stone keep — установит камень над игроком.
  • /setblock ~ ~2 ~ sandstone destroy — установит песчаник над игроком.
  • /setblock ~ ~2 ~ yellow_wool replace — установит жёлтую шерсть над игроком.

Условие: Игрок стоит в узком каменном коридоре высотой в два блока

NBT-данные [ ]

Позволяет указать содержимое блока (если оно у него может быть). Все параметры опциональны.

Я делаю карту приключений в Minecraft и даю игроку лопату, которая может ломать листья, траву и грязь. Что я хочу сделать, так это позволить игроку размещать блоки, которые он или она сломали. Это возможно?

Это довольно легко сделать, но требуется очень длинная команда.

Как вы должны это сделать, как уже указывали другие ответы, - это поставить CanPlaceOn теги на элемент. Нет простого способа сделать это, когда предметы уже находятся в инвентаре игрока, поэтому вместо этого вы должны сделать это для объектов выпавших предметов с помощью /data .

CanPlaceOn также довольно раздражает тем, что вам нужно назвать каждый отдельный блок, на который вы хотите разместить этот блок. Я использовал таблицу имен блоков из вики Minecraft и написал сценарий для преобразования имен в правильный формат.

В целом команда, которую вам нужно запустить на быстрых часах, следующая:

  • Этот ответ работает, если игроки не получают никаких блоков, кроме тех, которые они ломают сами. В противном случае более тонкое различие может быть достигнуто с помощью id , чтобы ограничить размещенную команду одним типом блока.
  • Вы также можете отключить doTileDrops и просто / дать игроку соответствующий блок всякий раз, когда он его сломает. Для этого требуется табло для каждого типа блоков, которые они могут сломать, но это тоже довольно просто.

Вы можете выполнить эту команду для карты приключений:

/give @s minecraft:oak_button

Это дает вам дубовую кнопку, которую можно разместить только на алмазном блоке.

  • Как это сделать с помощью команды / summon и создать предмет в определенном месте? Кроме того, я знаю, как создавать предметы в предварительно заполненном сундуке, но как создать эту кнопку в предварительно заполненном сундуке?

Это делается с помощью тега CanPlaceOn:

Для одного тега:

Для нескольких тегов:

Итак, команда будет выглядеть так:

  • 1 Я не хочу давать игроку блоки, я хочу, чтобы это были блоки, которые игрок ломает / получает, которые игрок может разместить.
  • Вы имеете в виду, что, например, если игрок копает дерево, он может размещать эти журналы только на определенном блоке?
  • @crgsqdmn CanPlaceOn Тег позволяет игроку разместить полученный блок. @Stopit пытается предложить режим приключения, вы должны предложить тип блока, на котором игрок может размещать блоки. Игроки не могут просто расставлять блоки, где им заблагорассудится.
  • Похоже, вам нужно заполнить пол блоками с тегами данных, которые позволяют размещать на нем только определенные блоки.

Я не думаю, что вы можете сделать это для блоков, которые обычно выпадают, но вы можете настроить систему торговли, чтобы ваши игроки могли обменивать блоки, которые они собирают, на те же блоки, которые имеют добавление возможности размещения

Система торговли может быть NPC с индивидуальной сделкой для конкретного блока, продажей блока с добавлением возможности размещения или даже системой фильтрации с использованием бункеров, которые приводят в действие командный блок, чтобы дать игроку блок, который он вставил с размещаемым дополнение

Я бы предоставил код, но я все еще новичок в этом, надеюсь, вы справитесь!

Для лопаты следует использовать тег CanDestroy. Этот тег позволяет элементу уничтожать все перечисленные элементы, и ТОЛЬКО эти элементы.

Во-первых, давайте начнем с команды / give. Для лопаты это будет довольно просто:

/give @a minecraft:iron_shovel 1 0

Затем вы должны добавить после этого тег CanDestroy, который выглядит следующим образом:

Чтобы заставить его работать, вы просто помещаете название нужного блока между "". Например, если вы хотите разбить конкретно траву, это будет выглядеть так:

Вы также можете расширить тег запятыми, чтобы вы могли выбрать группу разбитых блоков, и это будет разбивать только блоки в этой группе. Чтобы разбить траву, грязь и листья, это будет выглядеть так:

Тег начинает выглядеть довольно длинным, но, к счастью, нам больше ничего не нужно!

Теперь все, что нам нужно сделать, это прикрепить тег к команде:

/give @a minecraft:iron_shovel 1 0

/give @a minecraft:iron_shovel 1 0

Теперь о размещении блоков. В режиме приключений невозможно разместить блок на каком-либо блоке. Вы можете попробовать запустить часы, которые проверяют наличие блоков в вашем инвентаре, а затем заменить их блоками с тегом CanPlaceOn, чтобы разместить их на определенных блоках, но это довольно сложно. Размещение блоков с помощью тега CanPlaceOn также не будет работать, потому что теги исчезнут, когда вы сломаете этот блок. Так что, к сожалению, я не думаю, что есть решение вашей проблемы .

  • 2 Хорошее объяснение, но OP, кажется, спрашивает только о том, как сделать блоки размещаемыми.

Использование тега Can Place On будет работать.
Сначала установите эту команду:

В скобках укажите имя предмета Minecraft:

добавьте новую скобку с новым именем элемента, чтобы добавить больше тегов:

Если вы хотите, чтобы предмет мог разбивать объекты в режиме приключения, используйте тег команды Can Destroy:

и в значительной степени повторить шаги выше:

  • Как эти теги должны быть размещены на всех блоках земли, листьев и травы?

Я бы сделал так, что после того, как блок сломается, и вы его поднимете, элемент заменит себя таким же элементом, но с тегом CanPlaceOn. В этом теге будут блоки, на которые вы его разместите. Я лично не знаю, как это сделать, но держу пари, что кто-то другой сможет это объяснить, или есть видео о том, как это сделать. Надеюсь это поможет.

Это всего лишь предложение, но не сердитесь, если это не сработает, а попробуйте сделать так, чтобы блок, который вы хотите майнить, уже имел тег вроде , а тег, который вы собираетесь добыть, имеет тег, который может быть размещен на блоке, на который он должен быть помещен, чтобы у вас не было проблем с размещением блоков на неправильном блоке

Создание фиксированной кнопки для сайта

Или на той странице, где хотели бы ее видеть, то тогда прописываем перед закрывающим тэгом /body, что будет визуально только видно на той или иной странице, что вы выбрали. Сам код будет состоять из div, где идентификатором послужит follow. В нем и будет установлена картинка, что нужно по умолчанию самому выставлять на ней ширину и длину. Но и alt и title поставим в код и безусловно ссылку, куда будет по клику происходить переход. И останется только прописать CSS, который и будет отвечать за фиксацию.

По умолчанию она стоять будет вверху с левой стороны, это напротив шапки, если вы страницу опускаете, то пройдет вид материала и дойдет до них сайта, что понимаете, постоянно на виду и исчезать не будет. И здесь нужно грамотно выставить функцию, это может быть как социальная сеть, что как раз ставить будем или обратная связь. Возможно кто то рекламу поставит, здесь возможностей много, так как главная задача, чтоб пользователи и гости видели ее, но есть и минусы, что нужно сделать ее так "Кнопка" чтоб она не надоедала.

Приступаем к установке:

Если решили, что на всем портале должна, то в низ сайта ставим HTML код.

Осталось в таблицу стилей CSS разместь.

После все сохраняем и обновляем страницу, и увидите вашу кнопку, она может большая или маленькая, здесь вам решать, можно вообще под дизайн сайта красиво оформить.

Читайте также: