Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
− | <div class="mw-parser-output"> | + | <div class="mw-parser-output"><div class="mw-parser-output"> |
− | <div class="mw-parser-output"> | ||
= <span style="font-size:18.0pt"><span style="line-height:107%">Визуальная составляющая ICRender</span></span> = | = <span style="font-size:18.0pt"><span style="line-height:107%">Визуальная составляющая ICRender</span></span> = | ||
Строка 8: | Строка 7: | ||
<span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Используя модели ICRender для обработки простых условий и их маппинг на координаты, который был рассмотрен ранее, можно создать любой внешний вид блока и в абсолютном большинстве случаев заменить прямой каллбек рендера.</span></span></span> | <span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Используя модели ICRender для обработки простых условий и их маппинг на координаты, который был рассмотрен ранее, можно создать любой внешний вид блока и в абсолютном большинстве случаев заменить прямой каллбек рендера.</span></span></span> | ||
+ | |||
<div class="mw-parser-output"> | <div class="mw-parser-output"> | ||
== Модель ICRender == | == Модель ICRender == | ||
Строка 15: | Строка 15: | ||
<span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Для добавления статичной модели (они были рассмотрены ранее) в модель ICRender используется метод ''addEntry(model)'', отдающий объект, позволяющий установить условия отрисовки:</span></span></span> | <span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Для добавления статичной модели (они были рассмотрены ранее) в модель ICRender используется метод ''addEntry(model)'', отдающий объект, позволяющий установить условия отрисовки:</span></span></span> | ||
− | <syntaxhighlight lang="Javascript">var model = new | + | <syntaxhighlight lang="Javascript">var model = new BlockRender.BlockModel(); … modify model ... var entry = icRender.addEntry(model);</syntaxhighlight> |
<span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Для установки условий отрисовки используется метод полученного объекта ''setCondition(condition)'', где condition - объект условия, которые будут рассмотрены далее:</span></span></span> | <span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Для установки условий отрисовки используется метод полученного объекта ''setCondition(condition)'', где condition - объект условия, которые будут рассмотрены далее:</span></span></span> | ||
Строка 25: | Строка 25: | ||
<span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Если условие не было установлено, то данная статичная модель будет всегда видима.</span></span></span> | <span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Если условие не было установлено, то данная статичная модель будет всегда видима.</span></span></span> | ||
− | </div | + | </div> |
== Группы блоков == | == Группы блоков == | ||
Строка 33: | Строка 33: | ||
<u style="text-underline:black"><span style="font-size:12.0pt"><span style="line-height:107%">Для создания группы используются методы:</span></span></u> | <u style="text-underline:black"><span style="font-size:12.0pt"><span style="line-height:107%">Для создания группы используются методы:</span></span></u> | ||
− | <span style="line-height:108%"><span style="font-size:12.0pt"><span style="line-height:108%">ICRender.getGroup("name") - возвращает группу, зарегистрированную под данным именем, если такой нет, создает новую и регистрирует. Имя нужно для удобства доступа и совместимости между модами (К примеру, все блоки, к которым подключаются провода в Industrial Craft зарегистрированы в группе с именем</span></span>''''<span style="font-size:12.0pt"><span style="line-height:108%"><span style="color:#032f62">"icwire")</span></span></span>''''</span> | + | <span style="line-height:108%">''<span style="font-size:12.0pt"><span style="line-height:108%">ICRender.getGroup("name") - возвращает группу, зарегистрированную под данным именем, если такой нет, создает новую и регистрирует. Имя нужно для удобства доступа и совместимости между модами (К примеру, все блоки, к которым подключаются провода в Industrial Craft зарегистрированы в группе с именем</span></span>''''<span style="font-size:12.0pt"><span style="line-height:108%"><span style="color:#032f62">"icwire")</span></span></span>''''''</span> |
− | <span style="line-height:135%"><span style="font-size:12.0pt"><span style="line-height:135%">ICRender.getUnnamedGroup() - создает и возвращает новую группу без имени, используется для создания локальных групп</span></span><u style="text-underline:black"><span style="font-size:12.0pt"><span style="line-height:135%">Методы группы блоков:</span></span></u></span> | + | <span style="line-height:135%">''<span style="font-size:12.0pt"><span style="line-height:135%">ICRender.getUnnamedGroup() - создает и возвращает новую группу без имени, используется для создания локальных групп</span></span>''<u style="text-underline:black"><span style="font-size:12.0pt"><span style="line-height:135%">Методы группы блоков:</span></span></u></span> |
− | <span style="line-height:135%"><span style="font-size:12.0pt"><span style="line-height:135%">group.add(id, data) - добавляет блок с данным id и data в группу, если вместо data передано число -1, в группу будут добавлены все блоки с этим id</span></span></span> | + | <span style="line-height:135%">''<span style="font-size:12.0pt"><span style="line-height:135%">group.add(id, data) - добавляет блок с данным id и data в группу, если вместо data передано число -1, в группу будут добавлены все блоки с этим id group.getName() - возвращает имя группы</span></span>''</span> |
− | + | | |
− | |||
= Условия = | = Условия = | ||
Строка 54: | Строка 53: | ||
<span style="line-height:108%">''<span style="font-size:12.0pt"><span style="line-height:108%">ICRender.OR(condition1, condition2, …) - логический оператор ИЛИ, принимает 2 или больше условий на вход, выполняется, если хотя бы одно из условий тоже выполняется.</span></span>''</span> | <span style="line-height:108%">''<span style="font-size:12.0pt"><span style="line-height:108%">ICRender.OR(condition1, condition2, …) - логический оператор ИЛИ, принимает 2 или больше условий на вход, выполняется, если хотя бы одно из условий тоже выполняется.</span></span>''</span> | ||
− | <div class="mw-parser-output"> | + | <div class="mw-parser-output"><h2> Пример<i> </h2></i><p><span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Будет рассмотрено достаточно простое и распространенное применение ICRender - создание блока наподобие провода или трубы, который может соединяться с соседними такими же со всех сторон.</span></span></span> |
− | + | </p><p>  | |
− | + | <pre class="fck_mw_syntaxhighlight"><syntaxhighlight lang="Javascript">var id = … // id блока провода | |
− | <span style="line-height:104%"><span style="font-size:12.0pt"><span style="line-height:104%">Будет рассмотрено достаточно простое и распространенное применение ICRender - создание блока наподобие провода или трубы, который может соединяться с соседними такими же со всех сторон.</span></span></span> | ||
− | |||
− | & | ||
− | <syntaxhighlight lang="Javascript">var id = … // id блока провода | ||
var width = 0.5 // толщина провода | var width = 0.5 // толщина провода | ||
− | var group = ICRender.getGroup( | + | var group = ICRender.getGroup("testWire"); // группа блоков |
group.add(id, -1); // добавим сам провод в группу | group.add(id, -1); // добавим сам провод в группу | ||
Строка 92: | Строка 87: | ||
// устанавливаем созданную модель блоку | // устанавливаем созданную модель блоку | ||
− | BlockRenderer.setStaticICRender(id, -1, model);</syntaxhighlight> | + | BlockRenderer.setStaticICRender(id, -1, model);</syntaxhighlight></pre> |
− | + | </p><p>  | |
− | & | + | </div> </div> |
− | </div> | + | </p></div> |