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

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

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

Перейти к: навигация, поиск
 
(не показаны 9 промежуточные версии 4 участников)
Строка 1: Строка 1:
При написании мода зачастую привязываешь какую либо команду через консоль или при редактировании '''user.ltx'''. Чтобы ваша команда появилась в опциях управления и можно было быстро и удобно
+
При написании мода зачастую привязываешь какую-либо команду через консоль или при редактировании '''user.ltx'''. Чтобы ваша команда появилась в опциях управления и можно было быстро и удобно назначить/сменить клавишу вызова, нам понадобятся следующие файлы:
назначить\сменить клавишу вызова нам необходимо два файла:
+
*'''gamedata\config\ui\ui_keybinding.xml'''
'''gamedata\config\ui\ui_keybinding.xml''',
+
*'''gamedata\config\text\rus\ui_st_keybinding.xml'''
'''gamedata\config\text\rus\ui_st_keybinding.xml'''
+
Открываем первый файл,структура свойств кнопок такова:
+
  
<pre>
+
Открываем первый файл, его структура такова:
 +
 
 +
<xml>
 
<?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_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>
 +
</xml>
  
<command id="kb_forward" exe="forward"/>
+
Добавим для примера возможность назначения клавиш для различных видов камер (вид от первого лица, от второго и от третьего). Для этого добавим в любую группу (разумней будет в "направление") строки:
  
<command id="kb_backward" exe="back"/>
+
<xml>
 
+
<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"/>
+
</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_cam_3" exe="cam_3"/>
 +
</group>
 +
</xml>
  
<command id="kb_up" exe="up"/>
+
Разберём, что обозначает каждая секция:
  
<command id="kb_down" exe="down"/>
+
*'''command id="kb_cam_1"''' - в кавычках - идентификатор (проще говоря - имя) блока с текстом, отображаемом в опциях управления.
 +
*'''exe="cam_1"''' - команда, которая будет выполняться при нажатии на соответствующую клавишу.
  
<command id="kb_cam_1" exe="cam_1">
+
Теперь надо добавить в файл с текстами (например, в '''gamedata\config\text\rus\ui_st_keybinding.xml''') следующее:
-вот
+
  
<command id="kb_cam_2" exe="cam_2">
+
<xml>
-      наши
+
<string id="kb_cam_1"> <!-- здесь тот самый идентификатор, который мы указали в первой секции-->
 
+
<text>Вид от первого лица</text> <!--в этих тегах можно написать любой текст, который вы хотите
<command id="kb_cam_3" exe="cam_3">
+
                                                    видеть на экране в опциях управления-->
 
+
-                строки
+
 
+
<command id="kb_cam_4" exe="cam_4">
+
 
+
-                           с видами
+
</pre>
+
 
+
Разберу что обозначает каждая секция. Секция '''command id="kb_cam_4"''' -это ссылка на описание, вернее на название функции в '''gamedata\config\text\rus\ui_st_keybinding.xml''', а секция '''exe="cam_4"'''
+
это сам вызов функции (подразумевается,что  запись '''bind''' упускается, то есть получается краткая запись:))... Итак, заходим в игру, в опции управления и видим наши функции, но одно НО, они отображаются
+
тем же текстом, что и ссылка. Чтоб это исправить необходимо добавить их описание в '''gamedata\config\text\rus\ui_st_keybinding.xml''':
+
 
+
<pre>
+
<?xml version="1.0" encoding="windows-1251" ?>
+
<string_table>
+
<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>
+
</xml>
  
Теперь все будет работать как надо. Используйте это в своих модах.  
+
Теперь вы можете назначить в опциях управления нужные вам клавиши и с помощью них переключать виды - от первого лица, третьего лица с фиксированной камерой и третьего лица со свободной камерой.
  
 
==Авторы==
 
==Авторы==
  
Статья создана:
+
Статья создана: [[Участник:Костя.н.ы.ч|Костя.н.ы.ч]]<br />
[[Участник:Костя.н.ы.ч|Костя.н.ы.ч]]
+
Переоформил: [[Участник:Lexandr|Disord]]<br />
 +
Поправил: [[Участник:БаЛаБоЛ|БаЛаБоЛ]]<br />
 +
Поправил (не бывает вида от второго лица): [[Участник:Wo1fRam|Wo1fRam]]
  
[[Категория:Неоформленные_статьи]]
+
[[Категория:Конфигурационные_файлы]]

Текущая версия на 09:12, 19 июня 2013

При написании мода зачастую привязываешь какую-либо команду через консоль или при редактировании 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
Поправил: БаЛаБоЛ
Поправил (не бывает вида от второго лица): Wo1fRam

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