Модуль:GetField/doc: различия между версиями

мНет описания правки
Нет описания правки
Строка 78: Строка 78:


Примеры:
Примеры:
* {{tji|Модуль:GetField|searchId|Elements|[[Участник:IanComradeBot/prototype/reaction.json|prototype/reaction.json]]|group}} -> {{GetField|функция=searchId|Stir|prototype/reaction.json|requiredMixerCategories}}
* {{tji|Модуль:GetField|searchId|Elements|[[Участник:IanComradeBot/prototype/reaction.json|prototype/reaction.json]]|group}} -> {{#invoke:GetField|searchId|Stir|prototype/reaction.json|requiredMixerCategories}}


{{Параметры|
{{Параметры|
Строка 88: Строка 88:
}}
}}


=== hasComp ===
=== search ===
Проверяет, есть ли у сущности указанный компонент.
Ищет сущности, у которых есть указанные компоненты или теги. Поддерживается поиск по нескольким значениям через запятую: сущность попадёт в результат только если содержит все перечисленные элементы.


Использование:
Использование:
* {{tji|Модуль:GetField|hasComp|entityId|componentName}}
* {{tji|Модуль:GetField|search|component|componentName}}
* {{tji|Модуль:GetField|search|tag|tagName}}
 
Режимы:
* <code>component</code> — ищет сущности по списку компонентов.
* <code>tag</code> — ищет сущности по списку тегов.


Возвращает строку <code>true</code> или <code>false</code>.
Результат:
* возвращается JSON-массив id найденных сущностей;
* в режиме <code>component</code> результат также JSON-массив, без дополнительного форматирования.


Пример:
Примеры:
* {{tji|Модуль:GetField|hasComp|MopItem|Item}}
* {{tji|Модуль:GetField|search|component|Emag}} -> {{#invoke:GetField|search|component|Emag}}
* {{tji|Модуль:GetField|search|tag|Crayon}} -> {{#invoke:GetField|search|tag|Crayon}}


{{Параметры|
{{Параметры|
{{Параметры/строка|1|Id сущности.|Да}}
{{Параметры/строка|1|Режим поиска: <code>component</code> или <code>tag</code>.|Да}}
{{Параметры/строка|2|Имя компонента для проверки.|Да}}
{{Параметры/строка|2|Список компонентов или тегов через запятую. Все указанные значения должны присутствовать у сущности.|Да}}
}}
}}


Строка 115: Строка 123:


Примеры:
Примеры:
* {{tji|Модуль:GetField|searchStore|MopItem|component|itemBorgModule}} -> {{GetField|функция=searchStore|MopItem|component|itemBorgModule}}
* {{tji|Модуль:GetField|searchStore|MopItem|component|itemBorgModule}} -> {{#invoke:GetField|searchStore|MopItem|component|itemBorgModule}}
* {{tji|Модуль:GetField|searchStore|MopItem|prototype|latheRecipe}} -> {{GetField|функция=searchStore|MopItem|prototype|latheRecipe}}
* {{tji|Модуль:GetField|searchStore|MopItem|prototype|latheRecipe}} -> {{#invoke:GetField|searchStore|MopItem|prototype|latheRecipe}}


{{Параметры|
{{Параметры|
Строка 143: Строка 151:
{{Параметры/строка|2|Имя шаблона для <code>getAllTpl</code>.|Только для <code>getAllTpl</code>}}
{{Параметры/строка|2|Имя шаблона для <code>getAllTpl</code>.|Только для <code>getAllTpl</code>}}
{{Параметры/строка|replace|Строка замены для <code>getAll</code>. Если задана, результат выводится построчно вместо JSON-массива.|Нет}}
{{Параметры/строка|replace|Строка замены для <code>getAll</code>. Если задана, результат выводится построчно вместо JSON-массива.|Нет}}
}}
=== hasComp ===
Проверяет, есть ли у сущности указанный компонент.
Использование:
* {{tji|Модуль:GetField|hasComp|entityId|componentName}}
Возвращает строку <code>true</code> или <code>false</code>.
Пример:
* {{tji|Модуль:GetField|hasComp|MopItem|Item}}
{{Параметры|
{{Параметры/строка|1|Id сущности.|Да}}
{{Параметры/строка|2|Имя компонента для проверки.|Да}}
}}
}}


Строка 165: Строка 189:
* {{tji|Модуль:GetField|jsonList|<nowiki>{"MopItem":"Швабра"}</nowiki>}}
* {{tji|Модуль:GetField|jsonList|<nowiki>{"MopItem":"Швабра"}</nowiki>}}
* {{tji|Модуль:GetField|jsonList|<nowiki>{"MopItem":"Швабра"}</nowiki>|type{{=}}enum}}
* {{tji|Модуль:GetField|jsonList|<nowiki>{"MopItem":"Швабра"}</nowiki>|type{{=}}enum}}
* {{tji|Модуль:GetField|jsonList|<nowiki>["a","b","c"]</nowiki>|max{{=}}1}}


Основные параметры:
Основные параметры:
Строка 172: Строка 197:
* <code>replace</code> — дополнительная обработка регулярным выражением уже собранной строки.
* <code>replace</code> — дополнительная обработка регулярным выражением уже собранной строки.
* <code>key_replace</code>, <code>value_replace</code> — обработка ключей и значений регулярным выражением по отдельности.
* <code>key_replace</code>, <code>value_replace</code> — обработка ключей и значений регулярным выражением по отдельности.
* <code>max</code> — максимальное количество элементов, которые нужно обработать. Если не задан, обрабатывается весь список.


Примеры:
Примеры:
Строка 177: Строка 203:
* {{tji|Модуль:GetField|jsonList|<nowiki>{"MopItem":"Швабра"}</nowiki>|type{{=}}list}}
* {{tji|Модуль:GetField|jsonList|<nowiki>{"MopItem":"Швабра"}</nowiki>|type{{=}}list}}
* {{tji|Модуль:GetField|jsonList|<nowiki>{"MopItem":"Швабра"}</nowiki>|type{{=}}none|key_replace{{=}}{{tag|nowiki|style=regular|content=<nowiki>[[\1]]</nowiki>}}}}
* {{tji|Модуль:GetField|jsonList|<nowiki>{"MopItem":"Швабра"}</nowiki>|type{{=}}none|key_replace{{=}}{{tag|nowiki|style=regular|content=<nowiki>[[\1]]</nowiki>}}}}
* {{tji|Модуль:GetField|jsonList|<nowiki>["a","b","c"]</nowiki>|max{{=}}1}}


{{Параметры|
{{Параметры|
Строка 186: Строка 213:
{{Параметры/строка|value_replace|Строка замены для значений.|Нет; <code>\1</code>}}
{{Параметры/строка|value_replace|Строка замены для значений.|Нет; <code>\1</code>}}
{{Параметры/строка|replace|Строка замены для всего вывода.|Нет; <code>\1</code>}}
{{Параметры/строка|replace|Строка замены для всего вывода.|Нет; <code>\1</code>}}
{{Параметры/строка|max|Максимальное количество элементов для обработки.|Нет; весь список}}
}}
}}