Создание блоков и предметов — различия между версиями

(Отмена правки 2282, сделанной Kotoffey23 (обсуждение))
Строка 1: Строка 1:
<div class="mw-parser-output">
+
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">
<div class="mw-parser-output">
+
=== Регистрация ID ===
<div class="mw-parser-output">
 
<div class="mw-parser-output">
 
<h3>Регистрация ID</h3>
 
  
<p>ID - уникальный идентефикатор блока\предмета, задается строкой и натуральным числом, которое сопоставляется этой строке. Чтобы зарегистрировать ID, используется модуль IDRegistry.</p>
+
ID - уникальный идентефикатор блока\предмета, задается строкой и натуральным числом, которое сопоставляется этой строке. Чтобы зарегистрировать ID, используется модуль IDRegistry.
  
<p>Для регистрации ID блока используется метод IDRegistry.genBlockID(&quot;строковый ID&quot;) - после вызова этой функции сгенерируется новый уникальный ID для блока, доступ к числовому значению которого может быть произведен как BlockID.&lt;строковый ID&gt;</p>
+
Для регистрации ID блока используется метод IDRegistry.genBlockID("строковый ID") - после вызова этой функции сгенерируется новый уникальный ID для блока, доступ к числовому значению которого может быть произведен как BlockID.<строковый ID>
  
<p>Для регистрации ID предмета используется метод IDRegistry.genItemID(&quot;строковый ID&quot;) - после вызова этой функции сгенерируется новый уникальный ID для предмета, доступ к числовому значению которого может быть произведен как ItemID.&lt;строковый ID&gt;</p>
+
Для регистрации ID предмета используется метод IDRegistry.genItemID("строковый ID") - после вызова этой функции сгенерируется новый уникальный ID для предмета, доступ к числовому значению которого может быть произведен как ItemID.<строковый ID>
  
<p>Примеры:</p>
+
Примеры:
 +
<syntaxhighlight lang="Javascript">IDRegistry.genBlockID("testBlock"); // доступ BlockID.testBlock
 +
IDRegistry.genItemID("testItem"); // доступ ItemID.testItem</syntaxhighlight>
 +
</div>  
 +
=== Текстуры ===
  
<pre class="fck_mw_syntaxhighlight">
+
В ресурсах мода текстуры блоков и предметов задаются в определенном формате: каждая текстура должна быть в формате .png и имеет имя и номер, название любой текстуры выглядит так: имя_номер.png и никак иначе. Номера текстур с одним именем должны идти последовательно и начинаться с 0.
<syntaxhighlight lang="Javascript">IDRegistry.genBlockID(&quot;testBlock&quot;); // доступ BlockID.testBlock
 
IDRegistry.genItemID(&quot;testItem&quot;); // доступ ItemID.testItem</syntaxhighlight></pre>
 
</div>
 
  
<h3>Текстуры</h3>
+
Текстуры блоков в ресурспаке располагаются по адресу images/terrain-atlas/
 
 
<p>В ресурсах мода текстуры блоков и предметов задаются в определенном формате: каждая текстура должна быть в формате .png и имеет имя и номер, название любой текстуры выглядит так: имя_номер.png и никак иначе. Номера текстур с одним именем должны идти последовательно и начинаться с 0.</p>
 
 
 
<p>Текстуры блоков в ресурспаке располагаются по адресу images/terrain-atlas/</p>
 
 
 
<p>Текстуры предметов&nbsp;в ресурспаке располагаются по адресу images/items-opaque/</p>
 
  
 +
Текстуры предметов&nbsp;в ресурспаке располагаются по адресу images/items-opaque/
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
<h3>Создание блоков</h3>
+
=== Создание блоков ===
  
<p>После регистрации ID для блока, создается сам блок на этом ID. На одном ID может быть создано несколько вариаций блока, каждая из которых обладает своим именем и текстурой, разные вариации одного блока в мире будут иметь один ID, но разные значения metadata, подробнее об этом будет позднее. Для создания блоков используется модуль Block.</p>
+
После регистрации ID для блока, создается сам блок на этом ID. На одном ID может быть создано несколько вариаций блока, каждая из которых обладает своим именем и текстурой, разные вариации одного блока в мире будут иметь один ID, но разные значения metadata, подробнее об этом будет позднее. Для создания блоков используется модуль Block.
  
<p>Метод Block.createBlock(&quot;строковый ID&quot;, [вариация1, вариация2, ...]) - создает блок и все его вариации на ранее зарегистрированном ID, если вариация 1, то просто создает данный блок.</p>
+
Метод Block.createBlock("строковый ID", [вариация1, вариация2, ...]) - создает блок и все его вариации на ранее зарегистрированном ID, если вариация 1, то просто создает данный блок.
  
<p>Каждая вариация в массиве имеет формат</p>
+
Каждая вариация в массиве имеет формат
 
 
<pre class="fck_mw_syntaxhighlight">
 
 
<syntaxhighlight lang="Javascript">{
 
<syntaxhighlight lang="Javascript">{
&nbsp;   name: &quot;имя вариации&quot;,  
+
    name: "имя вариации",  
 
     texture: [
 
     texture: [
         [&quot;название1&quot;, индекс1], // bottom
+
         ["название1", индекс1], // bottom
         [&quot;название2&quot;, индекс2], // top
+
         ["название2", индекс2], // top
         [&quot;название3&quot;, индекс3], // back
+
         ["название3", индекс3], // back
         [&quot;название4&quot;, индекс4], // front
+
         ["название4", индекс4], // front
         [&quot;название5&quot;, индекс5], // left
+
         ["название5", индекс5], // left
         [&quot;название6&quot;, индекс6]  // right
+
         ["название6", индекс6]  // right
 
     ],  
 
     ],  
&nbsp;   inCreative: true/false //(добавлять ли данную вариацию блока в креатив)
+
    inCreative: true/false //(добавлять ли данную вариацию блока в креатив)
}</syntaxhighlight></pre>
+
}</syntaxhighlight>
  
<p>Если текстур указано меньше, чем 6, то последняя из них будет дублирована несколько раз, чтобы дополнить их кол-во до 6.</p>
+
Если текстур указано меньше, чем 6, то последняя из них будет дублирована несколько раз, чтобы дополнить их кол-во до 6.
  
<p><b>Пример</b>:</p>
+
'''Пример''':
 +
<syntaxhighlight lang="Javascript">IDRegistry.genBlockID("testBlock"); // регистрация
 +
Block.createBlock("testBlock", [
 +
     {name: "test block", texture: [["planks", 0], ["planks", 0], ["planks", 0], ["planks", 0], ["planks", 0], ["planks", 0]], inCreative: true}
 +
]) // создание простого блока на ID "testBlock" с текстурой досок на всех сторонах, будет добавлен в креатив</syntaxhighlight>
  
<pre class="fck_mw_syntaxhighlight">
+
==== Создание блоков с поворотом ====
<syntaxhighlight lang="Javascript">IDRegistry.genBlockID(&quot;testBlock&quot;); // регистрация
 
Block.createBlock(&quot;testBlock&quot;, [
 
&nbsp;&nbsp;&nbsp;&nbsp; {name: &quot;test block&quot;, texture: [[&quot;planks&quot;, 0], [&quot;planks&quot;, 0], [&quot;planks&quot;, 0], [&quot;planks&quot;, 0], [&quot;planks&quot;, 0], [&quot;planks&quot;, 0]], inCreative: true}
 
]) // создание простого блока на ID &quot;testBlock&quot; с текстурой досок на всех сторонах, будет добавлен в креатив</syntaxhighlight></pre>
 
  
<h4>Создание блоков с поворотом</h4>
+
Метод Block.createBlockWithRotation -&nbsp;&nbsp;принимает те же аргументы, что и Block.createBlock, но для каждой вариации блока создает 4 вариации, которые реализуют поворот, блок, созданный этим методом, автоматически будет ставиться с нужным поворотом.
 +
</div>  
 +
=== Создание предметов ===
  
<p>Метод Block.createBlockWithRotation -&nbsp;&nbsp;принимает те же аргументы, что и Block.createBlock, но для каждой вариации блока создает 4 вариации, которые реализуют поворот, блок, созданный этим методом, автоматически будет ставиться с нужным поворотом.</p>
+
После регистрации ID предмета, создается сам предмет на этом ID. Предметы могут быть разных типов: обычный, броня, еда и кидаемый, для каждого из них существует свой метод. Для создания предметов используется модуль Item. Каждый предмет имеет текстуру, которая задается в формате {name: "имя текстуры", meta: <номер текстуры>}, если номер текстуры 0, его можно не указывать.
</div>
 
  
<h3>Создание предметов</h3>
+
Item.createItem("строковый ID", "имя предмета", текстура, параметры) - создает обычный предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.
  
<p>После регистрации ID предмета, создается сам предмет на этом ID. Предметы могут быть разных типов: обычный, броня, еда и кидаемый, для каждого из них существует свой метод. Для создания предметов используется модуль Item. Каждый предмет имеет текстуру, которая задается в формате {name: &quot;имя текстуры&quot;, meta: &lt;номер текстуры&gt;}, если номер текстуры 0, его можно не указывать.</p>
+
Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:
 +
<syntaxhighlight lang="Javascript">{
 +
     isTech: false, // если true, не добавляет предмет в креатив
 +
     stack: 64 // размер стака
 +
} </syntaxhighlight>
  
<p>Item.createItem(&quot;строковый ID&quot;, &quot;имя предмета&quot;, текстура, параметры) - создает обычный предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.</p>
+
==== Создание еды ====
  
<p>Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:</p>
+
Item.createFoodItem("строковый ID", "имя предмета", текстура, параметры) - создает съедобный предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.
  
<pre class="fck_mw_syntaxhighlight">
+
Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:
 
<syntaxhighlight lang="Javascript">{
 
<syntaxhighlight lang="Javascript">{
&nbsp;&nbsp;&nbsp;&nbsp; isTech: false, // если true, не добавляет предмет в креатив
+
     isTech: false,// если true, не добавляет предмет в креатив
&nbsp;&nbsp;&nbsp;&nbsp; stack: 64 // размер стака
+
     stack: 64, // размер стака
}&nbsp;</syntaxhighlight></pre>
+
     food: 1 // восполнение здоровья едой
 
+
}</syntaxhighlight>
<div class="mw-parser-output">
 
<h4>Создание еды</h4>
 
  
<p>Item.createFoodItem(&quot;строковый ID&quot;, &quot;имя предмета&quot;, текстура, параметры) - создает съедобный предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.</p>
+
==== Создание кидаемого предмета ====
  
<p>Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:</p>
+
Item.createThrowableItem("строковый ID", "имя предмета", текстура, параметры) - создает кидаемый предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.
  
<pre class="fck_mw_syntaxhighlight">
+
Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:
&lt;syntaxhighlight lang=&quot;Javascript&quot;&gt;{
+
<syntaxhighlight lang="Javascript">{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; isTech: false,// если true, не добавляет предмет в креатив
+
     isTech: false, // если true, не добавляет предмет в креатив
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stack: 64, // размер стака
+
     stack: 64 // сколько предметов будет в одном стаке, максимум 64.
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; food: 1 // восполнение здоровья едой
+
}</syntaxhighlight>
}&lt;/syntaxhighlight&gt;</pre>
 
 
 
<div class="mw-parser-output">
 
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
<h4>Создание кидаемого предмета</h4>
+
==== Пример кидаемого предмета. ====
 
 
<p>Item.createThrowableItem(&quot;строковый ID&quot;, &quot;имя предмета&quot;, текстура, параметры) - создает кидаемый предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.</p>
 
 
 
<p>Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:</p>
 
  
<pre class="fck_mw_syntaxhighlight">
+
&nbsp;
&amp;amp;lt;syntaxhighlight lang=&amp;amp;quot;Javascript&amp;amp;quot;&amp;amp;gt;{
+
<syntaxhighlight lang="Javascript">//TODO</syntaxhighlight>
&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp; isTech: false, // если true, не добавляет предмет в креатив
+
</div>  
&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp; stack: 64 // сколько предметов будет в одном стаке, максимум 64.
+
==== Создание брони ====
}&amp;amp;lt;/syntaxhighlight&amp;amp;gt;</pre>
+
<pre>Item.createArmorItem(&quot;строковый ID&quot;, &quot;имя предмета&quot;, текстура, параметры) - создает предмет брони на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.</pre>
  
<div class="mw-parser-output">
+
Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:
<h4>Пример кидаемого предмета.</h4>
 
 
 
<p>&nbsp;</p>
 
 
 
<pre class="fck_mw_syntaxhighlight">
 
&amp;amp;lt;syntaxhighlight lang=&amp;amp;quot;Javascript&amp;amp;quot;&amp;amp;gt;//TODO&amp;amp;lt;/syntaxhighlight&amp;amp;gt;</pre>
 
</div>
 
</div>
 
</div>
 
</div>
 
 
 
<h4>Создание брони</h4>
 
 
 
<pre>
 
Item.createArmorItem(&amp;quot;строковый ID&amp;quot;, &amp;quot;имя предмета&amp;quot;, текстура, параметры) - создает предмет брони на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.</pre>
 
 
 
<p>Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:</p>
 
 
 
<pre class="fck_mw_syntaxhighlight">
 
 
<syntaxhighlight lang="Javascript">{
 
<syntaxhighlight lang="Javascript">{
&nbsp;&nbsp;&nbsp;&nbsp; isTech: false, // если true, не добавляет предмет в креатив
+
     isTech: false, // если true, не добавляет предмет в креатив
&nbsp;&nbsp;&nbsp;&nbsp; armor: 1, // количество добавляемой брони в шкале защиты
+
     armor: 1, // количество добавляемой брони в шкале защиты
&nbsp;&nbsp;&nbsp;&nbsp; type: &lt;обязательное значение&gt;, // тип предмета &quot;helmet&quot;/&quot;chestplate&quot;/&quot;leggings&quot;/&quot;boots&quot;
+
     type: <обязательное значение>, // тип предмета "helmet"/"chestplate"/"leggings"/"boots"
&nbsp;&nbsp;&nbsp;&nbsp; texture: &lt;обязательное значение&gt;, // текстура модели данной брони
+
     texture: <обязательное значение>, // текстура модели данной брони
&nbsp;&nbsp;&nbsp;&nbsp; durability: 1 // прочность брони
+
     durability: 1 // прочность брони
}</syntaxhighlight></pre>
+
}</syntaxhighlight>
 
 
<h3>Пример брони</h3>
 
  
<p>&nbsp;</p>
+
=== Пример брони ===
  
<pre class="fck_mw_syntaxhighlight">
+
&nbsp;
<syntaxhighlight lang="Javascript">IDRegistry.genItemID(&quot;helmet&quot;);//создаем новый ID для шлема
+
<syntaxhighlight lang="Javascript">IDRegistry.genItemID("helmet");//создаем новый ID для шлема
IDRegistry.genItemID(&quot;chestplate&quot;);//создаем новый ID для нагрудника
+
IDRegistry.genItemID("chestplate");//создаем новый ID для нагрудника
IDRegistry.genItemID(&quot;leggings&quot;);//создаем новый ID для понож
+
IDRegistry.genItemID("leggings");//создаем новый ID для понож
IDRegistry.genItemID(&quot;boots&quot;);//создаем новый ID для ботинок
+
IDRegistry.genItemID("boots");//создаем новый ID для ботинок
 
 
Item.createArmorItem(&quot;helmet&quot;, &quot;Helmet&quot;, {name: &quot;helmet&quot;}, {type: &quot;helmet&quot;, armor: 2, durability: 149, texture: &quot;armor/lay_1.png&quot;});//применяем наш ID helmet, добавляем имя Helmet, задаем текстуру предмета и объект описания.
 
Item.createArmorItem(&quot;chestplate&quot;, &quot;Chestplate&quot;, {name: &quot;chestplate&quot;}, {type: &quot;chestplate&quot;, armor: 6, durability: 216, texture: &quot;armor/lay_1.png&quot;});//применяем наш ID chestplate, добавляем имя ChestPlate, задаем текстуру предмета и объект описания.
 
Item.createArmorItem(&quot;leggings&quot;, &quot;Leggings&quot;, {name: &quot;leggings&quot;}, {type: &quot;leggings&quot;, armor: 5, durability: 203, texture: &quot;armor/lay_2.png&quot;});//применяем наш ID leggins, добавляем имя Leggins, задаем текстуру предмета и объект описания.
 
Item.createArmorItem(&quot;boots&quot;, &quot;Boots&quot;, {name: &quot;boots&quot;}, {type: &quot;boots&quot;, armor: 2, durability: 176, texture: &quot;armor/lay_1.png&quot;});//применяем наш ID boots, добавляем имя Boots, задаем текстуру предмета и объект описания.</syntaxhighlight></pre>
 
  
 +
Item.createArmorItem("helmet", "Helmet", {name: "helmet"}, {type: "helmet", armor: 2, durability: 149, texture: "armor/lay_1.png"});//применяем наш ID helmet, добавляем имя Helmet, задаем текстуру предмета и объект описания.
 +
Item.createArmorItem("chestplate", "Chestplate", {name: "chestplate"}, {type: "chestplate", armor: 6, durability: 216, texture: "armor/lay_1.png"});//применяем наш ID chestplate, добавляем имя ChestPlate, задаем текстуру предмета и объект описания.
 +
Item.createArmorItem("leggings", "Leggings", {name: "leggings"}, {type: "leggings", armor: 5, durability: 203, texture: "armor/lay_2.png"});//применяем наш ID leggins, добавляем имя Leggins, задаем текстуру предмета и объект описания.
 +
Item.createArmorItem("boots", "Boots", {name: "boots"}, {type: "boots", armor: 2, durability: 176, texture: "armor/lay_1.png"});//применяем наш ID boots, добавляем имя Boots, задаем текстуру предмета и объект описания.</syntaxhighlight>
 
<div class="mw-parser-output">
 
<div class="mw-parser-output">
<h3>Пример предмета</h3>
+
=== Пример предмета ===
 
 
<p>&nbsp;</p>
 
  
<pre class="fck_mw_syntaxhighlight">
+
&nbsp;
<syntaxhighlight lang="Javascript">IDRegistry.genItemID(&quot;testItem&quot;);
+
<syntaxhighlight lang="Javascript">IDRegistry.genItemID("testItem");
Item.createItem(&quot;testItem&quot;, &quot;test item&quot;, {name: &quot;stick&quot;, meta: 0}, {}); // создаем обычный предмет на ID testItem с текстурой палки и стандартными параметрами
+
Item.createItem("testItem", "test item", {name: "stick", meta: 0}, {}); // создаем обычный предмет на ID testItem с текстурой палки и стандартными параметрами
</syntaxhighlight></pre>
+
</syntaxhighlight>
</div>
+
</div> </div> </div> </div>
</div>
 
</div>
 
</div>
 

Версия 01:57, 1 ноября 2019

Регистрация ID

ID - уникальный идентефикатор блока\предмета, задается строкой и натуральным числом, которое сопоставляется этой строке. Чтобы зарегистрировать ID, используется модуль IDRegistry.

Для регистрации ID блока используется метод IDRegistry.genBlockID("строковый ID") - после вызова этой функции сгенерируется новый уникальный ID для блока, доступ к числовому значению которого может быть произведен как BlockID.<строковый ID>

Для регистрации ID предмета используется метод IDRegistry.genItemID("строковый ID") - после вызова этой функции сгенерируется новый уникальный ID для предмета, доступ к числовому значению которого может быть произведен как ItemID.<строковый ID>

Примеры:

IDRegistry.genBlockID("testBlock"); // доступ BlockID.testBlock
IDRegistry.genItemID("testItem"); // доступ ItemID.testItem

Текстуры

В ресурсах мода текстуры блоков и предметов задаются в определенном формате: каждая текстура должна быть в формате .png и имеет имя и номер, название любой текстуры выглядит так: имя_номер.png и никак иначе. Номера текстур с одним именем должны идти последовательно и начинаться с 0.

Текстуры блоков в ресурспаке располагаются по адресу images/terrain-atlas/

Текстуры предметов в ресурспаке располагаются по адресу images/items-opaque/

Создание блоков

После регистрации ID для блока, создается сам блок на этом ID. На одном ID может быть создано несколько вариаций блока, каждая из которых обладает своим именем и текстурой, разные вариации одного блока в мире будут иметь один ID, но разные значения metadata, подробнее об этом будет позднее. Для создания блоков используется модуль Block.

Метод Block.createBlock("строковый ID", [вариация1, вариация2, ...]) - создает блок и все его вариации на ранее зарегистрированном ID, если вариация 1, то просто создает данный блок.

Каждая вариация в массиве имеет формат

{
    name: "имя вариации", 
    texture: [
        ["название1", индекс1], // bottom
        ["название2", индекс2], // top
        ["название3", индекс3], // back
        ["название4", индекс4], // front
        ["название5", индекс5], // left
        ["название6", индекс6]  // right
    ], 
    inCreative: true/false //(добавлять ли данную вариацию блока в креатив)
}

Если текстур указано меньше, чем 6, то последняя из них будет дублирована несколько раз, чтобы дополнить их кол-во до 6.

Пример:

IDRegistry.genBlockID("testBlock"); // регистрация
Block.createBlock("testBlock", [
     {name: "test block", texture: [["planks", 0], ["planks", 0], ["planks", 0], ["planks", 0], ["planks", 0], ["planks", 0]], inCreative: true}
]) // создание простого блока на ID "testBlock" с текстурой досок на всех сторонах, будет добавлен в креатив

Создание блоков с поворотом

Метод Block.createBlockWithRotation -  принимает те же аргументы, что и Block.createBlock, но для каждой вариации блока создает 4 вариации, которые реализуют поворот, блок, созданный этим методом, автоматически будет ставиться с нужным поворотом.

Создание предметов

После регистрации ID предмета, создается сам предмет на этом ID. Предметы могут быть разных типов: обычный, броня, еда и кидаемый, для каждого из них существует свой метод. Для создания предметов используется модуль Item. Каждый предмет имеет текстуру, которая задается в формате {name: "имя текстуры", meta: <номер текстуры>}, если номер текстуры 0, его можно не указывать.

Item.createItem("строковый ID", "имя предмета", текстура, параметры) - создает обычный предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.

Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:

{
     isTech: false, // если true, не добавляет предмет в креатив
     stack: 64 // размер стака
} 

Создание еды

Item.createFoodItem("строковый ID", "имя предмета", текстура, параметры) - создает съедобный предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.

Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:

{
     isTech: false,// если true, не добавляет предмет в креатив
     stack: 64, // размер стака
     food: 1 // восполнение здоровья едой
}

Создание кидаемого предмета

Item.createThrowableItem("строковый ID", "имя предмета", текстура, параметры) - создает кидаемый предмет на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.

Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:

{
     isTech: false, // если true, не добавляет предмет в креатив
     stack: 64 // сколько предметов будет в одном стаке, максимум 64.
}

Пример кидаемого предмета.

 

//TODO

Создание брони

Item.createArmorItem("строковый ID", "имя предмета", текстура, параметры) - создает предмет брони на ранее зарегистрированном строковом ID, с данным именем, текстурой и параметрами.

Параметры имеют формат, если вы не хотите изменять значения по-умолчанию, просто не пишите их:

{
     isTech: false, // если true, не добавляет предмет в креатив
     armor: 1, // количество добавляемой брони в шкале защиты
     type: <обязательное значение>, // тип предмета "helmet"/"chestplate"/"leggings"/"boots"
     texture: <обязательное значение>, // текстура модели данной брони
     durability: 1 // прочность брони
}

Пример брони

 

IDRegistry.genItemID("helmet");//создаем новый ID для шлема
IDRegistry.genItemID("chestplate");//создаем новый ID для нагрудника
IDRegistry.genItemID("leggings");//создаем новый ID для понож
IDRegistry.genItemID("boots");//создаем новый ID для ботинок

Item.createArmorItem("helmet", "Helmet", {name: "helmet"}, {type: "helmet", armor: 2, durability: 149, texture: "armor/lay_1.png"});//применяем наш ID helmet, добавляем имя Helmet, задаем текстуру предмета и объект описания.
Item.createArmorItem("chestplate", "Chestplate", {name: "chestplate"}, {type: "chestplate", armor: 6, durability: 216, texture: "armor/lay_1.png"});//применяем наш ID chestplate, добавляем имя ChestPlate, задаем текстуру предмета и объект описания.
Item.createArmorItem("leggings", "Leggings", {name: "leggings"}, {type: "leggings", armor: 5, durability: 203, texture: "armor/lay_2.png"});//применяем наш ID leggins, добавляем имя Leggins, задаем текстуру предмета и объект описания.
Item.createArmorItem("boots", "Boots", {name: "boots"}, {type: "boots", armor: 2, durability: 176, texture: "armor/lay_1.png"});//применяем наш ID boots, добавляем имя Boots, задаем текстуру предмета и объект описания.

Пример предмета

 

IDRegistry.genItemID("testItem");
Item.createItem("testItem", "test item", {name: "stick", meta: 0}, {}); // создаем обычный предмет на ID testItem с текстурой палки и стандартными параметрами