minecraft:behavior.transport_items за тебя одним переключателем.Get GodCraftОбзор
minecraft:behavior.transport_items - компонент сущности: он пишется в объект components своего моба или в одну из его групп компонентов. Заставляет моба переносить предметы из одного вида контейнеров в другой, как медный голем перекладывает предметы из медных сундуков в другие сундуки.
Поля
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
source_container_types | Block Descriptor[] | нет | Из каких блоков-контейнеров моб берёт предметы. |
destination_container_types | Block Descriptor[] | нет | В какие блоки-контейнеры моб кладёт предметы. |
max_stack_size | integer | 64 | Сколько предметов моб может взять из контейнера за раз.Диапазон: от 1 до 64 |
interaction_time | number | 3 | Сколько секунд моб проводит у контейнера за одно посещение.Диапазон: от 0 до … |
allow_simultaneous_interaction | boolean | false | Определяет, ждёт ли моб, пока контейнер освободится, если его использует другая сущность. |
search_strategy | enum | "random" | Как моб выбирает контейнер: ближайший или случайный в радиусе.Одно из: nearest, random |
search_distance | Vec2 | [64,32] | Как далеко по горизонтали и по вертикали моб ищет контейнеры. |
max_visited_containers | integer | 16 | Сколько контейнеров моб перебирает, прежде чем сделать перерыв и начать заново.Диапазон: от 0 до … |
initial_cooldown | integer | 0 | Сколько моб ждёт после появления или получения этой цели, прежде чем начать.Диапазон: от 0 до … |
idle_cooldown | integer | 20 | На сколько секунд цель приостанавливается, если подходящий контейнер не найден.Диапазон: от 0 до … |
place_strategy | enum | "any" | Когда класть предметы в контейнер: всегда, если есть место; только если в нём уже есть такой же предмет; или если в нём есть такой же предмет либо он пуст.Одно из: any, with_matching, with_matching_or_empty |
allowed_items | Item Descriptor[] | нет | Единственные предметы, которые может носить моб. Оставьте это поле и disallowed_items пустыми, чтобы разрешить всё. |
disallowed_items | Item Descriptor[] | нет | Предметы, которые моб носить не может. Используйте либо это поле, либо allowed_items, но не оба. |
priority | integer | 0 | Решает, какая цель победит, если запуститься хотят несколько: меньшие числа выполняются первыми.Диапазон: от 0 до … |
control_flags | Goal's control flags[] | нет | Перечисляет части тела, которыми управляет эта цель (например, движение, взгляд или прыжок), чтобы цели, которым нужна одна и та же часть, не работали одновременно. |
Пример
Внутри объекта components в BP/entities/<name>.json (значения - по умолчанию или примерные):
BP/entities/<name>.json
{
"minecraft:behavior.transport_items": {
"source_container_types": [],
"destination_container_types": [],
"max_stack_size": 64,
"interaction_time": 3,
"allow_simultaneous_interaction": false,
"search_strategy": "random",
"search_distance": [
64,
32
],
"max_visited_containers": 16
}
}