Confirmedusers
409
edits
(Created page with "Modding:Взаимодействие Блоков и Предметов") Tags: Mobile edit Mobile web edit |
No edit summary |
||
(18 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<languages/> | <languages/> | ||
__FORCETOC__ | __FORCETOC__ | ||
{{GameVersion|1.19.3}} | {{GameVersion|1.19.3}} | ||
Этот урок познакомит вас с основами создания пользовательских взаимодействий. Мы создадим волшебную палочку, которая будет создавать частицы при нажатии правой кнопки мыши. | |||
= Подготовка = | |||
Я настоятельно рекомендую сначала прочитать о [[Modding:Advanced Items|Классах Предмета]]. Кроме того, вы можете скачать необходимые ассеты [https://wiki.vintagestory.at/images/4/4d/MagicWand_-_No_CS_File.zip здесь]. | |||
Все это уже должно быть вам знакомо: создание и регистрация класса предмета ... | |||
<syntaxhighlight lang="c#"> | <syntaxhighlight lang="c#"> | ||
Line 39: | Line 29: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Добавление частиц == | |||
= | |||
Теперь нам нужно реализовать функцию взаимодействия. Прежде всего нам нужно указать, что игрок может "использовать" этот инструмент, поэтому нам нужно установить handling в <code>handled</code> ... | |||
<syntaxhighlight lang="c#"> | <syntaxhighlight lang="c#"> | ||
Line 54: | Line 40: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Метод <code>OnHeldInteractStep</code> позволяет нам создавать частицы за тик, до тех пор, пока игрок использует предмет, но лучше перед этим реализовать анимацию. Частицы должны появляться после завершения анимации ... | |||
<syntaxhighlight lang="c#"> | <syntaxhighlight lang="c#"> | ||
Line 74: | Line 58: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Удерживая правую кнопку мыши ... | |||
[[File:Magic Stick Interact.gif|300px]] | [[File:Magic Stick Interact.gif|300px]] | ||
Итак, давайте начнем работу с частицами, нам нужен статический тип частиц... | |||
<syntaxhighlight lang="c#"> | <syntaxhighlight lang="c#"> | ||
Line 102: | Line 80: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Частицы должны появиться после завершения анимации. Это произойдет через <code>0.6</code> секунд ... | |||
<syntaxhighlight lang="c#"> | <syntaxhighlight lang="c#"> | ||
Line 113: | Line 89: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Рекомендую сначала прочитать руководство по [[Modding:Simple Particles|Простым Частицам]]. Этот код будет создавать частицы перед игроком с рандомизированным цветом и синусоидально изменяющегося размера ... | |||
<syntaxhighlight lang="c#"> | <syntaxhighlight lang="c#"> | ||
Line 134: | Line 108: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Если мы соберем все вместе, то метод <code>OnHeldInteractStep</code> будет выглядеть следующим образом... | |||
<syntaxhighlight lang="c#"> | <syntaxhighlight lang="c#"> | ||
Line 172: | Line 144: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Тестирование == | |||
= | |||
Теперь мы можем запустить наш первый тест, не правда ли, это выглядит прекрасно? | |||
<youtube>bTPXL97Gfns</youtube> | <youtube>bTPXL97Gfns</youtube> | ||
= Скачать Мод = | |||
Не стесняйтесь попробовать это самостоятельно: | |||
Варианты мода из этого руководства: | |||
* for VS v1.9: [https://wiki.vintagestory.at/images/7/72/Magicwand_vs1.9_v1.0.0.zip Magicwand_vs1.9_v1.0.0.zip] | * for VS v1.9: [https://wiki.vintagestory.at/images/7/72/Magicwand_vs1.9_v1.0.0.zip Magicwand_vs1.9_v1.0.0.zip] | ||
* for VS v1.8: [https://wiki.vintagestory.at/images/3/38/MagicWand.zip MagicWand.zip] | * for VS v1.8: [https://wiki.vintagestory.at/images/3/38/MagicWand.zip MagicWand.zip] | ||
{{Navbox/modding|Vintage Story}} | {{Navbox/modding|Vintage Story}} |