Предметы в датапаке¶
Датапак- и командная сторона двух предметов InkQuest: квестовой книги (inkquest:quest_book) и свитка квеста (inkquest:quest_scroll). Как переопределить рецепт книги, как собрать свиток на нужный квест и как геймрул doQuestBookItemCheck делает книгу обязательным предметом. Что эти предметы дают игроку и как он ими пользуется — в Предметы.
Идентификаторы¶
| Предмет | Идентификатор |
|---|---|
| Квестовая книга | inkquest:quest_book |
| Свиток квеста | inkquest:quest_scroll |
Рецепт книги¶
Книга задаётся обычным датапак-рецептом inkquest:quest_book — shapeless из трёх предметов:
Переопределить или отключить¶
Датапак переопределяет рецепт, положив свой файл по тому же пути:
Чтобы сменить ингредиенты — опиши свой crafting_shapeless или crafting_shaped.
Чтобы убрать крафт в выживании — оставь единственным ингредиентом minecraft:barrier: его не получить без креатива или команд, поэтому скрафтить книгу станет нельзя. Выдать её командой /give, из сундука или как награду по-прежнему можно — закрыт только верстак.
{
"type": "minecraft:crafting_shapeless",
"category": "misc",
"ingredients": [
{ "item": "minecraft:barrier" }
],
"result": { "item": "inkquest:quest_book", "count": 1 }
}
Свиток на конкретный квест¶
Свиток привязан к одному квесту через NBT-поле Quest — идентификатор квеста в формате namespace:id:
Например, свиток на квест story:rescue_blacksmith:
Без поля Quest свиток пустой и по клику только сообщит об ошибке. То же поле задаётся в лут-таблицах и у торговцев — везде, где предмет выдаётся с NBT.
Свитки не стакаются — каждый занимает отдельный слот инвентаря.
Что происходит при использовании свитка — выдача квеста, расход, причины отказа — в Предметы.
Gamerule doQuestBookItemCheck¶
По умолчанию false. Обычный геймрул Minecraft — значение хранится в мире.
При true квестовая книга становится обязательным предметом: пока её нет в инвентаре игрока (любой слот, не обязательно в руке), квесты не открыть.
| Способ открытия | false (по умолчанию) |
true |
|---|---|---|
| Клавиша J | Всегда работает | Нужна книга в инвентаре |
| Свиток квеста | Выдаёт квест и открывает книгу | Без книги квест не выдаётся, свиток не расходуется |
| ПКМ по книге | Всегда работает | Всегда работает (книга уже в руке) |
Геймрул удобен для карт, где квесты вписаны в выживание: книгу сначала нужно добыть — скрафтить, найти в сундуке или получить как награду, — и только потом читать квесты. До этого выданные квесты копятся, но остаются скрытыми.
Включать автоматически через датапак¶
Чтобы геймрул выставлялся при каждой загрузке мира, повесь команду на тег функций minecraft:load.
1. Создай или дополни data/minecraft/tags/functions/load.json:
2. Создай функцию data/your_namespace/functions/setup.mcfunction:
Замени your_namespace на namespace своего датапака. Функция выполняется и при каждом /reload — это безопасно: геймрул просто перезаписывается тем же значением.
См. также¶
- Предметы — что книга и свиток дают игроку и как он ими пользуется.
- Повторяемые квесты — когда свиток срабатывает на уже завершённом квесте.
- Справочник команд —
/quest giveкак альтернатива свитку.