summaryrefslogtreecommitdiffstats
path: root/tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-12-03 11:05:10 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-12-03 11:05:10 -0600
commitf7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b (patch)
tree1f78ef53b206c6b4e4efc88c4849aa9f686a094d /tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook
parent85ca18776aa487b06b9d5ab7459b8f837ba637f3 (diff)
downloadtde-i18n-f7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b.tar.gz
tde-i18n-f7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b.zip
Second part of prior commit
Diffstat (limited to 'tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook')
-rw-r--r--tde-i18n-ru/docs/tdegames/ktuberling/technical-reference.docbook361
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
+>&lt;action&gt;</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
+>&lt;ktuberling&gt;</markup
+>. В нём содержится несколько тегов игровых полей <markup
+>&lt;playground&gt;</markup
+>, по одному на игровое поле, и <markup
+>&lt;language&gt;</markup
+> по одному на язык. </para>
+
+<para
+>Тег <markup
+>&lt;playground&gt;</markup
+> имеет два атрибута: <markup
+>gameboard</markup
+> и <markup
+>masks</markup
+>. Эти атрибуты задают имена файлов, содержащих изображения. Тег <markup
+>&lt;playground&gt;</markup
+> также содержит один тег <markup
+>&lt;menuitem&gt;</markup
+>, один тег <markup
+>&lt;editablearea&gt;</markup
+>, несколько тегов <markup
+>&lt;category&gt;</markup
+> и несколько тегов <markup
+>&lt;object&gt;</markup
+>. </para>
+
+<para
+>Тег <markup
+>&lt;menuitem&gt;</markup
+> описывает идентификатор действия в пункте меню, позволяющий выбрать положение области, в которую можно помещать объекты, а также название этого пункта меню. Этот идентификатор действия должен совпадать с идентификатором в файле <filename
+>ktuberlingui.rc</filename
+>. </para>
+
+<para
+>Тег <markup
+>&lt;editablearea&gt;</markup
+> описывает положение области, в которую вы можете помещать объекты и имя соответствующего звукового файла. </para>
+
+<para
+>Тег <markup
+>&lt;category&gt;</markup
+> указывает положение и текст, описывающий группу объектов. Например, им могут быть описаны положение и текст группы <quote
+>Шляпы</quote
+>. </para>
+
+<para
+>Тег <markup
+>&lt;object&gt;</markup
+> описывает положение (в игровом поле и в масках) объекта, и имя соответствующего звукового файла. </para>
+
+<para
+>Тег <markup
+>&lt;language&gt;</markup
+> имеет один атрибут: <markup
+>code</markup
+>. Этот атрибут задаёт код языка. Тег <markup
+>&lt;language&gt;</markup
+> также содержит один тег <markup
+>&lt;menuitem&gt;</markup
+> и несколько тегов <markup
+>&lt;sound&gt;</markup
+>. </para>
+
+<para
+>Здесь не описываются теги более низкого уровня, так как их названия говорят сами за себя. Если измените файл <filename
+>layout.xml</filename
+>, то не забывайте соответственно изменять и файлы <filename
+>layout.i18n</filename
+> и <filename
+> ktuberlingui.rc</filename
+>. </para>
+
+</sect1>
+</chapter>