<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>https://wiki.mineprogramming.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=93.124.61.98&amp;*</id>
		<title>mineprogramming wiki - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.mineprogramming.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=93.124.61.98&amp;*"/>
		<link rel="alternate" type="text/html" href="https://wiki.mineprogramming.org/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/93.124.61.98"/>
		<updated>2026-09-11T21:19:19Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://wiki.mineprogramming.org/index.php?title=CoreEngine/%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BC%D0%BE%D0%B4%D0%B0&amp;diff=168</id>
		<title>CoreEngine/Структура мода</title>
		<link rel="alternate" type="text/html" href="https://wiki.mineprogramming.org/index.php?title=CoreEngine/%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BC%D0%BE%D0%B4%D0%B0&amp;diff=168"/>
				<updated>2017-07-10T12:01:02Z</updated>
		
		<summary type="html">&lt;p&gt;93.124.61.98: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Моды в Core Engine представляют собой папку с кодом, изображениями и текстурами, подхватываемых движком.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Общее ==&lt;br /&gt;
&lt;br /&gt;
В папке с модом находятся следующие объекты:&lt;br /&gt;
&lt;br /&gt;
*main.js - содержит весь код мода целиком. &lt;br /&gt;
*launcher.js - выполняется при загрузке мода, позволяет подключить сторонние моды, управлять ресурсами. &lt;br /&gt;
*config.json - файл конфигурации мода, по умолчанию содержит только две опции: &lt;br /&gt;
**enabled - по умолчанию true, определяет возможность загрузки мода. &lt;br /&gt;
**advanced_api - не используется самим движком, но может быть использована модом для расширения API.   &lt;br /&gt;
*mod.info - не используется самим движком, но позволяет моду самоиндифицироваться. &lt;br /&gt;
*resources.zip - текстурпак, содержит текстуры блоков, предметов, мобов. Разработчикам настоятельно рекомендуется собирать данный архив из содержимого папки resources. &lt;br /&gt;
*resources.json - содержит список загружаемых движком текстурпаком. По умолчанию содержит только resources.zip со значением true. &lt;br /&gt;
*dev - см. Структура скриптов &lt;br /&gt;
*gui - папка, содержит текстуры для интерфейса, загружаются автоматически. &lt;br /&gt;
*lib - см. Подключение библиотек. &lt;br /&gt;
*resources - необязательна, разработчик может собирать из нее текстурпак для мода.&lt;br /&gt;
&lt;br /&gt;
== Структура скриптов ==&lt;br /&gt;
&lt;br /&gt;
Весь код, конечно, можно писать и в main.js. Но это неудобно, к тому же при малейшем расширении кодовой базы большинство текстовых редакторов начинают тупить.&amp;lt;br/&amp;gt; Для удобной работы с кодом можно распределить его по нескольким файлам, а потом склеивать содержимое и сохранять все в main.js.&amp;lt;br/&amp;gt; Core Engine делает это автоматически. Все нужные файлы кода должны лежать в папке dev. В отличие от аддонов Factorization, можно распределять части скрипта по подпапкам.&lt;br /&gt;
&lt;br /&gt;
Во время загрузки мода, если имеется dev, движок читает специальный файл-&amp;quot;манифест&amp;quot; .includes внутри dev, содержащий список файлов, подлежащих сборке. Добавлять скрипты в этот манифест очень легко. Для этого введите его путь и сохраните файл.&lt;br /&gt;
&amp;lt;pre&amp;gt;lol.js //движок будет искать файл&amp;amp;nbsp;%папка мода%/dev/lol.js&lt;br /&gt;
syka/blyad.js //а тут путь&amp;amp;nbsp;%папка мода%/dev/syka/blyad.js&lt;br /&gt;
//кстати, эти комментарии будут находиться прямо в main.js(!), так что используйте это, если не хотите заблудиться там&amp;amp;nbsp;;)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;br/&amp;gt; Подключение библиотек ==&lt;br /&gt;
&lt;br /&gt;
В Core Engine существует система особых скриптов — библиотек. Они загружаются вместе с первым модом, который использует данную библиотеку, и доступны в коде других модов с этим же скриптом.&amp;lt;br/&amp;gt; Все библиотеки хранятся в папке lib.&lt;br /&gt;
&lt;br /&gt;
Чтобы создать свою библиотеку, напишите обычный скрипт и засуньте его в папку lib. В конце файла добавьте:&amp;lt;br/&amp;gt; registerAPIUnit(псевдоним, значение)&amp;lt;br/&amp;gt; Псевдоним - имя, под которым значение будет доступно в модах, использующих библиотеку.&amp;lt;br/&amp;gt; Значение - тут все, что угодно - метод библиотеки, объект, просто число или строка.&amp;lt;br/&amp;gt; Повторите этот метод для всех нужных значений.&lt;br /&gt;
&lt;br /&gt;
Для подключения библиотеки к вашему моду закиньте ее в папку lib. Пропишите в нужном месте мода метод:&amp;lt;br/&amp;gt; importLib(название библиотеки, псевдоним);&amp;lt;br/&amp;gt; Название библиотеки - название файла скрипта с ней без js в кавычках.&amp;lt;br/&amp;gt; Псевдоним - нужный вам псевдоним из указанной библиотеки в кавычках. Если вам нужно все ее содержимое, пропишите универсальный псевдоним &amp;quot;*&amp;quot;.&lt;/div&gt;</summary>
		<author><name>93.124.61.98</name></author>	</entry>

	</feed>