diff options
Diffstat (limited to 'tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook')
-rw-r--r-- | tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook | 361 |
1 files changed, 361 insertions, 0 deletions
diff --git a/tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook b/tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook new file mode 100644 index 00000000000..946976ab7db --- /dev/null +++ b/tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook @@ -0,0 +1,361 @@ +<chapter id="technical-reference"> +<chapterinfo> + +<authorgroup> +<author +><firstname +>Éric</firstname +> <surname +>Bischoff</surname +> </author> +<othercredit role="translator" +><firstname +>Кирилл</firstname +> <surname +>Бирюков</surname +><affiliation +><address +> <email +>birk@rdi-kvant.ru</email +></address +></affiliation +> <contrib +>Перевод на русский язык</contrib +></othercredit +> <othercredit role="translator" +><firstname +>Сергей</firstname +> <surname +>Миронов</surname +><affiliation +><address +> <email +>sergo@bk.ru</email +></address +></affiliation +> <contrib +>Обновление перевода</contrib +></othercredit +> +</authorgroup> +<date +>5 мая 2006</date +> <releaseinfo +>0.05.01</releaseinfo +> <keywordset> +<keyword +>KDE</keyword> +<keyword +>KTuberling</keyword> +<keyword +>руководство разработчика</keyword> +</keywordset> +</chapterinfo> + +<title +>Руководство разработчика</title> + +<para +>&ktuberling; позволяет легко подключиться к разработке и улучшению &kde;. Приложение может быть дополнено. Например, без всякого кода можно добавить новые рисунки игрового поля, изменив графические файлы. Добавив подходящие звуковые файлы переводчик может изменить звучание на его родной язык! </para> + +<para +>Если вы что-то разработали или добавили к игре, вышлите это автору <ulink url="mailto:ebischoff@nerim.net" +>Éric Bischoff</ulink +> для включения в следующие версии. </para> + +<sect1 id="for-artists"> +<title +>Художникам</title> + +<para +>Размер, форма игрового поля и количество объектов можно изменить. Для каждого игрового поля необходимо создать два графических файла: поле изображения поля и маску. В игре допускается до восьми игровых полей, из которых в настоящий момент используется только три. </para> + +<para +>В &ktuberling; используются шесть изображений:<filename +>potato-game.png</filename +>,<filename +>potato-mask.png</filename +>,<filename +>penguin-game.png</filename +>,<filename +>penguin-mask.png</filename +>,<filename +>aquarium-game.png</filename +> и <filename +>aquarium-mask.png</filename +>. Файлы размещаются в <filename class="directory" +>$KDEDIR/share/apps/ktuberling/pics/</filename +>. </para> + +<para +>Первый тип рисунков, <filename +>*-game.png</filename +>, содержит изображения игрового поля и объектов, выбираемых пользователем. Это та графика, которую вы видите в процессе игры. </para> + +<para +>Второй тип рисунков, <filename +>*-mask.png</filename +>, содержит только маски объектов. Маски используются для установки границ объектов и в некоторых случаях позволяют объекту быть прозрачным (как, например, очки). Желательно, хотя и не обязательно, размещать объекты на тех же местах в файле игрового поля, что и в файле маски. </para> + +<para +>В той же папке находится файл <filename +>layout.xml</filename +> (<filename +>$KDEDIR/share/apps/ktuberling/pics/layout.xml</filename +>), который описывает используемые файлы, и связывает их с пунктами меню. Кроме того, он описывает позиционные параметры игрового поля и объектов в файлах игрового поля и маски. В том же файле объектам присваиваются звуки и производится объединение объектов в группы. Наконец, в нём описаны языки как наборы переведённых звуков. Файл <filename +>layout.xml</filename +> является стандартным файлом &XML; (подробнее смотрите <link linkend="layout-details" +>ниже</link +>). </para> + +<para +>В этой же папке находится файл с именем<filename +>layout.i18n</filename +> (<filename +>$KDEDIR/share/apps/ktuberling/pics/layout.xml</filename +>), содержащий строки из файла <filename +>layout.xml</filename +>, которые могут быть переведены: <itemizedlist> +<listitem +><para +>Пункты меню, позволяющие выбирать игровое поле и язык</para +></listitem> +<listitem +><para +>Названия категорий объектов</para +></listitem> +</itemizedlist> +</para> + +<para +>В папке выше находится другой файл &XML; <filename +>ktuberlingui.rc</filename +> (<filename +>$KDEDIR/share/apps/ktuberling/ktuberlingui.rc</filename +>), описывающий меню &ktuberling;. Он должен содержать один тег <markup +><action></markup +> (действие) на каждое игровое поле и язык. Символическое название действия в этом файле должно быть идентично символическому название действия в файле <filename +>layout.xml</filename +>. </para> + +</sect1> + +<sect1 id="for-translators"> +<title +>Переводчику</title> + +<para +>Кроме обычного механизма перевода файла <literal role="extension" +>.po</literal +> могут также быть локализованы названия и звуки в программе. </para> + +<para +>Звуковые файлы в формате <literal role="extension" +>.wav</literal +> с названиями объектов на языке перевода могут быть помещены в подпапке соответствующего языка в основной папке звуков. Имя файла звука затем следует соотнести с названием в файле <filename +>layout.xml</filename +>. Например, если язык перевода русский, то необходимо поместить звуковые (<literal role="extension" +>.wav</literal +>) файлы с названиями объектов в папку <filename +>$KDEDIR/share/apps/ktuberling/sounds/ru</filename +>. Затем нужно соотнести звук <quote +>hat</quote +> с файлом <filename +>ru/шляпа.wav</filename +>. </para> + +<para +>В будущей версии &ktuberling; будет использовать файлы OGG Vorbis rc3 для хранения звуков. В настоящий момент можно конвертировать файлы WAV в формат OGG Vorbis rc3 следующей командой: <screen +><prompt +>$</prompt +> <userinput +>oggenc -q 10 -o <replaceable +>sound.ogg</replaceable +> <replaceable +>sound.wav</replaceable +></userinput +> +</screen> +</para> + +<para +>Информация о том, как переводить приложения &kde;, доступна в <ulink url="http://i18n.kde.org/translation-howto/index.html" +>Руководстве по переводу kde;</ulink +>. </para> + +</sect1> + +<sect1 id="for-programmers"> + +<title +>Программистам</title> +<para +>Программисту не трудно развить и дополнить функциональность &ktuberling;.</para> + +<sect2 id="classes"> +<title +>Классы C++</title> + +<variablelist> +<varlistentry> +<term +><classname +>TopLevel</classname +></term> +<listitem> +<para +>Окно верхнего уровня и основные функции управления программой</para> +</listitem> +</varlistentry> + +<varlistentry> +<term +><classname +>PlayGround</classname +></term> +<listitem> +<para +>Описание одного из уровней игры</para +> </listitem> +</varlistentry> + +<varlistentry> +<term +><classname +>ToDraw</classname +></term> +<listitem> +<para +>Описание одного из выводимых графических <quote +>объектов</quote +></para +> </listitem> +</varlistentry> + +<varlistentry> +<term +><classname +>SoundFactory</classname +></term> +<listitem> +<para +>Описание одного из языков и его звуков</para +> </listitem> +</varlistentry> + +<varlistentry> +<term +><classname +>Action</classname +></term> +<listitem> +<para +>Действие пользователя, связанное с отменой/повтором</para +> </listitem> +</varlistentry> +</variablelist> + +</sect2> + +<sect2 id="files-structure"> +<title +>Структура файлов <literal role="extension" +>.tuberling</literal +></title> + +<para +>Файл <literal role="extension" +>.tuberling</literal +> содержит всю необходимую для рисования информацию. Файл можно редактировать обычным текстовым редактором.</para> + +<para +>Первая строка содержит номер игрового поля.</para> + +<para +>Все остальные строки содержат по одному графическому объекту, в том порядке, в котором они должны быть нарисованы. Каждая строка содержит 5 чисел: идентификатор объекта и координаты прямоугольника (левая, верхняя, правая, нижняя), в которых будет нарисован объект. Числа разделяются пробелами или символами табуляции.</para> + +</sect2> +</sect1> + +<sect1 id="layout-details"> +<title +>Структура файла <filename +>layout.xml</filename +>.</title> + +<para +>Тег верхнего уровня является уникальным и называется <markup +><ktuberling></markup +>. В нём содержится несколько тегов игровых полей <markup +><playground></markup +>, по одному на игровое поле, и <markup +><language></markup +> по одному на язык. </para> + +<para +>Тег <markup +><playground></markup +> имеет два атрибута: <markup +>gameboard</markup +> и <markup +>masks</markup +>. Эти атрибуты задают имена файлов, содержащих изображения. Тег <markup +><playground></markup +> также содержит один тег <markup +><menuitem></markup +>, один тег <markup +><editablearea></markup +>, несколько тегов <markup +><category></markup +> и несколько тегов <markup +><object></markup +>. </para> + +<para +>Тег <markup +><menuitem></markup +> описывает идентификатор действия в пункте меню, позволяющий выбрать положение области, в которую можно помещать объекты, а также название этого пункта меню. Этот идентификатор действия должен совпадать с идентификатором в файле <filename +>ktuberlingui.rc</filename +>. </para> + +<para +>Тег <markup +><editablearea></markup +> описывает положение области, в которую вы можете помещать объекты и имя соответствующего звукового файла. </para> + +<para +>Тег <markup +><category></markup +> указывает положение и текст, описывающий группу объектов. Например, им могут быть описаны положение и текст группы <quote +>Шляпы</quote +>. </para> + +<para +>Тег <markup +><object></markup +> описывает положение (в игровом поле и в масках) объекта, и имя соответствующего звукового файла. </para> + +<para +>Тег <markup +><language></markup +> имеет один атрибут: <markup +>code</markup +>. Этот атрибут задаёт код языка. Тег <markup +><language></markup +> также содержит один тег <markup +><menuitem></markup +> и несколько тегов <markup +><sound></markup +>. </para> + +<para +>Здесь не описываются теги более низкого уровня, так как их названия говорят сами за себя. Если измените файл <filename +>layout.xml</filename +>, то не забывайте соответственно изменять и файлы <filename +>layout.i18n</filename +> и <filename +> ktuberlingui.rc</filename +>. </para> + +</sect1> +</chapter> |