Опции управления — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

Опции управления — различия между версиями

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск
(Дооформил и чуть-чуть изменил статью.)
Строка 1: Строка 1:
При написании мода зачастую привязываешь какую либо команду через консоль или при редактировании '''user.ltx'''. Чтобы ваша команда появилась в опциях управления и можно было быстро и удобно
+
При написании мода зачастую привязываешь какую либо команду через консоль или при редактировании '''user.ltx'''. Чтобы ваша команда появилась в опциях управления и можно было быстро и удобно назначить/сменить клавишу вызова. Нам необходимо два файла:<br />
назначить\сменить клавишу вызова нам необходимо два файла:
+
'''gamedata\config\ui\ui_keybinding.xml''', <br /> '''gamedata\config\text\rus\ui_st_keybinding.xml'''.<br />
'''gamedata\config\ui\ui_keybinding.xml''' и '''gamedata\config\text\rus\ui_st_keybinding.xml'''.
+
Открываем первый файл, его структура такова::
Открываем первый файл, структура свойств кнопок такова:
+
 
+
 
<pre>
 
<pre>
 
<?xml version="1.0" encoding="utf-8"?>
 
<?xml version="1.0" encoding="utf-8"?>
 
 
<keybingidg>
 
<keybingidg>
 
+
<group name="kb_grp_direction"> - название групп(в данном случае "направление")
<group name="kb_grp_direction">
+
<command id="kb_left" exe="left"/> -команда кнопки типа описание/действие
-название групп(в данном случае "направление")
+
<command id="kb_right" exe="right"/>
 
+
<command id="kb_up" exe="up"/>
<command id="kb_left" exe="left"/>
+
<command id="kb_down" exe="down"/>
-команда кнопки типа описание\действие
+
<command id="kb_right" exe="right"/>
+
 
+
<command id="kb_up" exe="up"/>
+
 
+
<command id="kb_down" exe="down"/>
+
 
+
 
</group>
 
</group>
  
 
<group name="kb_grp_movement">
 
<group name="kb_grp_movement">
 
+
<command id="kb_forward" exe="forward"/>
<command id="kb_forward" exe="forward"/>
+
<command id="kb_backward" exe="back"/>
 
+
<command id="kb_left_strafe" exe="lstrafe"/>
<command id="kb_backward" exe="back"/>
+
<command id="kb_right_strafe" exe="rstrafe"/>
 
+
<command id="kb_jump" exe="jump"/>
<command id="kb_left_strafe" exe="lstrafe"/>
+
<command id="kb_crouch" exe="crouch"/>
 
+
<command id="kb_crouch_toggle" exe="crouch_toggle"/>
<command id="kb_right_strafe" exe="rstrafe"/>
+
</group>
 
+
<command id="kb_jump" exe="jump"/>
+
 
+
<command id="kb_crouch" exe="crouch"/>
+
 
+
<command id="kb_crouch_toggle" exe="crouch_toggle"/>
+
 
</pre>
 
</pre>
  
Добавим для примера возможность назначения клавиш для различных видов камер (вид от первого лица, вид от третьего...). Для этого добавим в любую группу (разумней будет в направление, а почему,
+
Добавим для примера возможность назначения клавиш для различных видов камер (вид от первого лица, от второго и от третьего). Для этого добавим в любую группу (разумней будет в "направление") строки:
думаю понятно) строки:
+
  
 
<pre>
 
<pre>
 
<group name="kb_grp_direction">
 
<group name="kb_grp_direction">
+
<command id="kb_left" exe="left"/>
<command id="kb_left" exe="left"/>
+
<command id="kb_right" exe="right"/>
 +
<command id="kb_up" exe="up"/>
 +
<command id="kb_down" exe="down"/>
  
<command id="kb_right" exe="right"/>
+
<command id="kb_cam_1" exe="cam_1"> - это наши три строки
 
+
<command id="kb_cam_2" exe="cam_2">
<command id="kb_up" exe="up"/>
+
<command id="kb_cam_3" exe="cam_3">
 
+
</group>
<command id="kb_down" exe="down"/>
+
 
+
<command id="kb_cam_1" exe="cam_1">
+
-вот
+
 
+
<command id="kb_cam_2" exe="cam_2">
+
-      наши
+
 
+
<command id="kb_cam_3" exe="cam_3">
+
 
+
-                строки
+
 
+
<command id="kb_cam_4" exe="cam_4">
+
 
+
-                            с видами
+
 
</pre>
 
</pre>
  
Разберу что обозначает каждая секция. Секция '''command id="kb_cam_4"''' -это ссылка на описание, вернее на название функции в '''gamedata\config\text\rus\ui_st_keybinding.xml''', а секция '''exe="cam_4"'''
+
Разберём, что обозначает каждая секция.<br />
это сам вызов функции (подразумевается,что  запись '''bind''' упускается, то есть получается краткая запись:))... Итак, заходим в игру, в опции управления и видим наши функции, но одно НО, они отображаются
+
'''command id="kb_cam_1"''' - в кавычках - идентификатор (проще говоря - имя) блока с текстом, отображаемом в опциях управления. <br />
тем же текстом, что и ссылка. Чтоб это исправить необходимо добавить их описание в '''gamedata\config\text\rus\ui_st_keybinding.xml''':
+
'''exe="cam_1"''' - это команда, которая будет выполняться при нажатии на соответствующую клавишу. <br />
 
+
Теперь надо добавить в файл с текстами (например, в '''gamedata\config\text\rus\ui_st_keybinding.xml''') добавить следующее:
 
<pre>
 
<pre>
<?xml version="1.0" encoding="windows-1251" ?>
+
<string id="kb_cam_1"> - здесь тот самый идентификатор, который мы указали в первой секции
<string_table>
+
<text>Вид от первого лица</text> - в тегах можно написать любой текст, который вы хотите видеть на экране в опциях управления
<string id="kb_active_jobs">
+
<text>Активные задачи в КПК</text>
+
</string>
+
<string id="kb_always_run">
+
<text>Шаг</text>
+
</string>
+
<string id="kb_artefact">
+
<text>Артефакт</text>
+
</string>
+
<string id="kb_cam_1"> -вот название ссылки
+
<text>Камера 1</text> -сам русско-язычный текст
+
</string>
+
<string id="kb_cam_2">
+
<text>Камера 2</text>
+
</string>
+
<string id="kb_cam_3">
+
<text>Камера 3</text>
+
</string>
+
<string id="kb_cam_4">
+
<text>Камера 4</text>
+
 
</string>
 
</string>
 
</pre>
 
</pre>
 
+
Теперь вы можете назначить в опциях управления нужные вам клавиши и с помощью них переключать виды - от первого, второго и третьего лица.
Теперь все будет работать как надо. Используйте это в своих модах.  
+
  
 
==Авторы==
 
==Авторы==
  
Статья создана:
+
Статья создана: [[Участник:Костя.н.ы.ч|Костя.н.ы.ч]]<br />
[[Участник:Костя.н.ы.ч|Костя.н.ы.ч]]
+
Переоформил: [[Участник:Lexandr|Disord]]
  
 
[[Категория:Неоформленные_статьи]]
 
[[Категория:Неоформленные_статьи]]

Версия 14:14, 20 февраля 2011

При написании мода зачастую привязываешь какую либо команду через консоль или при редактировании user.ltx. Чтобы ваша команда появилась в опциях управления и можно было быстро и удобно назначить/сменить клавишу вызова. Нам необходимо два файла:
gamedata\config\ui\ui_keybinding.xml,
gamedata\config\text\rus\ui_st_keybinding.xml.
Открываем первый файл, его структура такова::

<?xml version="1.0" encoding="utf-8"?>
<keybingidg>
	<group name="kb_grp_direction">	- название групп(в данном случае "направление")
		<command id="kb_left"			exe="left"/> -команда кнопки типа описание/действие
		<command id="kb_right"			exe="right"/>
		<command id="kb_up"			exe="up"/>
		<command id="kb_down"			exe="down"/>
	</group>

	<group name="kb_grp_movement">
		<command id="kb_forward"		exe="forward"/>
		<command id="kb_backward"		exe="back"/>
		<command id="kb_left_strafe"		exe="lstrafe"/>
		<command id="kb_right_strafe"		exe="rstrafe"/>
		<command id="kb_jump"			exe="jump"/>
		<command id="kb_crouch"			exe="crouch"/>
		<command id="kb_crouch_toggle"		exe="crouch_toggle"/>
	</group>

Добавим для примера возможность назначения клавиш для различных видов камер (вид от первого лица, от второго и от третьего). Для этого добавим в любую группу (разумней будет в "направление") строки:

	<group name="kb_grp_direction">	
		<command id="kb_left"			exe="left"/>
		<command id="kb_right"			exe="right"/>
		<command id="kb_up"			exe="up"/>
		<command id="kb_down"			exe="down"/>

		<command id="kb_cam_1"			exe="cam_1"> - это наши три строки
		<command id="kb_cam_2"			exe="cam_2">
		<command id="kb_cam_3"			exe="cam_3">
	</group>

Разберём, что обозначает каждая секция.
command id="kb_cam_1" - в кавычках - идентификатор (проще говоря - имя) блока с текстом, отображаемом в опциях управления.
exe="cam_1" - это команда, которая будет выполняться при нажатии на соответствующую клавишу.
Теперь надо добавить в файл с текстами (например, в gamedata\config\text\rus\ui_st_keybinding.xml) добавить следующее:

	<string id="kb_cam_1"> - здесь тот самый идентификатор, который мы указали в первой секции
		<text>Вид от первого лица</text> - в тегах можно написать любой текст, который вы хотите видеть на экране в опциях управления
	</string>

Теперь вы можете назначить в опциях управления нужные вам клавиши и с помощью них переключать виды - от первого, второго и третьего лица.

Авторы

Статья создана: Костя.н.ы.ч
Переоформил: Disord

Другие места
LANGUAGE