ru:tutorial:armor
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
ru:tutorial:armor [2022/03/23 17:01] – created furnygo | ru:tutorial:armor [2022/03/23 17:09] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 3: | Line 3: | ||
==== Вступление ==== | ==== Вступление ==== | ||
- | Хотя броня немного сложнее в реализации, | + | Хотя броня немного сложнее в реализации, |
Пример этого документа можно найти в [[https:// | Пример этого документа можно найти в [[https:// | ||
Line 9: | Line 9: | ||
==== Создание класса материалов брони ==== | ==== Создание класса материалов брони ==== | ||
- | Поскольку новая броня должна быть установлена с новым именем (а также дополнительными функциями, | + | Поскольку новая броня должна быть установлена с новым именем (а также дополнительными функциями, |
- | Этот класс будет реализовывать ArmorMaterial, | + | Этот класс будет реализовывать |
<code java [enable_line_numbers=" | <code java [enable_line_numbers=" | ||
Line 25: | Line 25: | ||
Следующие аргументы определяются таким образом (не беспокойтесь об именах, | Следующие аргументы определяются таким образом (не беспокойтесь об именах, | ||
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | | + | |
И новое значение, | И новое значение, | ||
- | | + | |
Line 92: | Line 92: | ||
==== Создание брони в виде предмета ==== | ==== Создание брони в виде предмета ==== | ||
- | Мы собираемся создать новый класс под названием RegisterItems для реализации ваших новых элементов брони. Это также будет место, например, | + | Мы собираемся создать новый класс под названием |
- | Синтаксис групп - // | + | Синтаксис групп - // |
<code java [enable_line_numbers=" | <code java [enable_line_numbers=" | ||
Line 138: | Line 138: | ||
</ | </ | ||
- | Вот и все! Теперь ваша броня должна существовать в игре, все еще нетекстурированная, | + | Вот и все! Теперь ваша броня должна существовать в игре, все еще нетекстурированная, |
Теперь мы будем присваивать текстуры каждой детали. | Теперь мы будем присваивать текстуры каждой детали. | ||
Line 147: | Line 147: | ||
Мы предполагаем, | Мы предполагаем, | ||
- | * Присутствуют текстуры для каждого предмета брони (x_helmet.png, | + | * Присутствуют текстуры для каждого предмета брони ('' |
- | * Присутствуют текстуры для брони на теле (x_layer_1.png и x_layer_2.png) | + | * Присутствуют текстуры для брони на теле ('' |
Нужно назначить их каждому предмету брони. | Нужно назначить их каждому предмету брони. | ||
Line 165: | Line 165: | ||
Повторите со всеми предметами брони. | Повторите со всеми предметами брони. | ||
- | Чтобы придать вашей броне текстуру, | + | Чтобы придать вашей броне текстуру, |
Line 175: | Line 175: | ||
И вот пришли к самому проклятому! | И вот пришли к самому проклятому! | ||
- | Mojang решили, | + | Mojang решили, |
- | Чтобы обойти это, мы собираемся сделать миксин, | + | Чтобы обойти это, мы собираемся сделать миксин, |
- | Мы создадим класс под названием ArmorItemMixin и напишем: | + | Мы создадим класс под названием |
<code java [enable_line_numbers:" | <code java [enable_line_numbers:" | ||
Line 188: | Line 188: | ||
</ | </ | ||
- | Теперь мы должны создать @Shadow, чтобы изменить knockbackResistance, | + | Теперь мы должны создать @Shadow, чтобы изменить |
<code java [enable_line_numbers:" | <code java [enable_line_numbers:" | ||
Line 199: | Line 199: | ||
</ | </ | ||
- | Затем мы внедряем через @Inject наш GENERIC_KNOCKBACK_RESISTANCE в конструктор ArmorMaterial. | + | Затем мы внедряем через |
<code java [enable_line_numbers:" | <code java [enable_line_numbers:" | ||
Line 234: | Line 234: | ||
</ | </ | ||
- | Теперь ваша броня имеет значение сопротивления откидыванию, | + | Теперь ваша броня имеет значение сопротивления откидыванию, |
ru/tutorial/armor.1648054899.txt.gz · Last modified: 2022/03/23 17:01 by furnygo