Свой сервер
Сет брони с бонусом за полный комплект
Надел шлем, нагрудник, поножи и ботинки — получил скорость, силу или ночное зрение; снял хоть один — бонус пропал. Как сеты в RPG, только датапаком для Minecraft 1.21.9 — 26.3, без модов.
Материал
Без «особого» бонус даёт любая броня этого материала — и скрафченная, и найденная.
Бонус — до 3 эффектов
Скорость
Сила
Алмазный сет
Датапак · 1.21.9 — 26.3- Бонус
- Скорость 1
- Бонус
- Сила 1
Выдать комплект — /function set_diamond:give или командами
/give @s minecraft:diamond_helmet[minecraft:custom_data={armor_set:"diamond"},minecraft:item_name={"text":"Алмазный сет: шлем","color":"gold","italic":false},minecraft:enchantment_glint_override=true]/give @s minecraft:diamond_chestplate[minecraft:custom_data={armor_set:"diamond"},minecraft:item_name={"text":"Алмазный сет: нагрудник","color":"gold","italic":false},minecraft:enchantment_glint_override=true]/give @s minecraft:diamond_leggings[minecraft:custom_data={armor_set:"diamond"},minecraft:item_name={"text":"Алмазный сет: поножи","color":"gold","italic":false},minecraft:enchantment_glint_override=true]/give @s minecraft:diamond_boots[minecraft:custom_data={armor_set:"diamond"},minecraft:item_name={"text":"Алмазный сет: ботинки","color":"gold","italic":false},minecraft:enchantment_glint_override=true]Что внутри архива — 5 файлов
data/minecraft/tags/function/load.json
Тег load: игра зовёт эти функции при загрузке мира и после /reload.
{
"values": [
"set_diamond:load"
]
}
data/set_diamond/function/load.mcfunction
При загрузке мира: проверка комплекта раз в секунду.
schedule function set_diamond:check 1s
data/set_diamond/function/check.mcfunction
Раз в секунду: кто в полном комплекте — тому бонус.
execute as @a if items entity @s armor.head minecraft:diamond_helmet[minecraft:custom_data~{armor_set:"diamond"}] if items entity @s armor.chest minecraft:diamond_chestplate[minecraft:custom_data~{armor_set:"diamond"}] if items entity @s armor.legs minecraft:diamond_leggings[minecraft:custom_data~{armor_set:"diamond"}] if items entity @s armor.feet minecraft:diamond_boots[minecraft:custom_data~{armor_set:"diamond"}] run function set_diamond:bonus
schedule function set_diamond:check 1s
data/set_diamond/function/bonus.mcfunction
Бонус комплекта на 3 с — обновляется, пока он надет.
effect give @s minecraft:speed 3 0 true
effect give @s minecraft:strength 3 0 true
data/set_diamond/function/give.mcfunction
/function set_diamond:give — выдать себе особый комплект.
give @s minecraft:diamond_helmet[minecraft:custom_data={armor_set:"diamond"},minecraft:item_name={"text":"Алмазный сет: шлем","color":"gold","italic":false},minecraft:enchantment_glint_override=true]
give @s minecraft:diamond_chestplate[minecraft:custom_data={armor_set:"diamond"},minecraft:item_name={"text":"Алмазный сет: нагрудник","color":"gold","italic":false},minecraft:enchantment_glint_override=true]
give @s minecraft:diamond_leggings[minecraft:custom_data={armor_set:"diamond"},minecraft:item_name={"text":"Алмазный сет: поножи","color":"gold","italic":false},minecraft:enchantment_glint_override=true]
give @s minecraft:diamond_boots[minecraft:custom_data={armor_set:"diamond"},minecraft:item_name={"text":"Алмазный сет: ботинки","color":"gold","italic":false},minecraft:enchantment_glint_override=true]
Как поставить
- Скачайте датапак
Распаковывать не нужно: игра читает его прямо из zip.
- Положите в мир
В одиночной игре — saves/<мир>/datapacks, на сервере — world/datapacks, потом /reload.
- Наденьте комплект
Все четыре предмета — и через секунду появится бонус. Особый комплект выдаёт /function set_diamond:give.
Что нужно знать
- Проверка — раз в секунду. Эффект даётся на 3 секунды и обновляется, пока комплект надет: снял предмет — бонус кончится сам.
- Сеты ставятся рядом. У каждого материала своё пространство имён (set_diamond): алмазный сет на скорость и незеритовый на силу работают вместе.
- Особый не подделать. Метка комплекта — компонент custom_data: переименованная наковальней броня бонус не получит.
Цвет и узор брони — цвет кожаной брони и отделка брони, атрибуты без датапака — генератор атрибутов.
Частые вопросы
Как сделать бонус за полный комплект брони в Майнкрафте?
Датапаком: выберите материал и эффекты. Раз в секунду пак проверяет, надеты ли все четыре предмета, и даёт эффекты, пока комплект на игроке.
Можно ли сделать особый комплект, а не любую броню?
Да: «особый комплект» помечен компонентом custom_data, его выдаёт функция пака — для алмазного /function set_diamond:give. Обычная броня того же материала бонуса не даст.
Можно ли поставить несколько сетов?
Да: у каждого материала своё пространство имён, алмазный и незеритовый сеты работают рядом.
