Руководство для создателей наборов
RPF добаляет некоторые дополнительные параметры к моделям предметов, чтобы создатели наборов смогли манипулировать процессом делигации
Oбратите внимание
Эти параметры будут работать как описанно ниже только со стратегией rpf:v1! ( по состоянию версии 1.х.x )
minecraft:select и minecraft:range_dispatch
Обе модели имеют параметр delegate. по умолчанию его значение true. Если выставить его на false, то цепочка проверки прервётся ДО проверки дочерних моделей, и данная модель обновится
json
{
"model": {
"type": "select",
"property": "component",
"components": "custom_name",
"delegate": false,
"cases" : [
{
"when": [...],
"model": {
"type" : ...
}
},
{...}
]
}
}minecraft:composite
Композитная модель проверяет на делигацию все её модели. То, как сама композитная модель распорядиться информацие о том, делегируют ли её дети или нет, можно настроить параметра delegate_strategy. всего стратегий делегации 3:
one_do_delegate(по умолчанию) - если одна из дочерних моделей делегирует - то вся копомозитная модель делегируетone_cancle_delegate- если одна из дочерних моделей делегирует - то вся композитная модель НЕ делегируетnot_delegate- вся модель НЕ будет делегировать не при каких условия
Некоторые неочевидные поведения
- Если модель
conditionalявляется корневой, то её модельon_falseбудет считатьсяfallback - Модель
emptyникогда не делегируется - Модель
modelбудет делегироваться, если:- модель является
fallback - пространство имён ссылки модели и пространство имён идентификатора модели элемента из компонента
item_modelравны (Это значит что в ванильной игре не стоит в своих наборах хранить модели вminecraft:) - путь ссылки модели содержит путь идентификатора модели элемента из компонента
item_model
- модель является
