<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://stalkerin.gameru.net/wiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://stalkerin.gameru.net/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=82.200.194.42&amp;*</id>
		<title>S.T.A.L.K.E.R. Inside Wiki - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://stalkerin.gameru.net/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=82.200.194.42&amp;*"/>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/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/82.200.194.42"/>
		<updated>2026-04-29T13:41:18Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.22.6</generator>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B8._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_3</id>
		<title>Настройка логики. Часть 3</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B8._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_3"/>
				<updated>2009-05-30T12:53:05Z</updated>
		
		<summary type="html">&lt;p&gt;82.200.194.42: /* 3.8.1. Синтаксис скрипта Logic */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Шаблон:Настройка логики}}&lt;br /&gt;
&lt;br /&gt;
==3.8.1. Синтаксис скрипта Logic==&lt;br /&gt;
&lt;br /&gt;
Пример: для того, чтобы персонаж ходил по пути walk1, а при приближении игрока на дистанцию 5 метров, переключался на путь walk2 (но только при условии, что он видит игрока), нужно написать следующее: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = walker1&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[walker1]&amp;lt;br&amp;gt;&lt;br /&gt;
path_walk = walk1&amp;lt;br&amp;gt;&lt;br /&gt;
path_look = look1&amp;lt;br&amp;gt;&lt;br /&gt;
on_actor_dist_le = 5 | walker2&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[walker2]&amp;lt;br&amp;gt;&lt;br /&gt;
path_walk = walk2&amp;lt;br&amp;gt;&lt;br /&gt;
path_look = look2&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Выше рассмотрено безусловное переключение секций. Перед именем секции в фигурных скобках {} можно задавать дополнительные условия, а после имени секции - так называемые &amp;quot;эффекты&amp;quot;, которые заключить в знаки процента: %%. Эффекты будут применены только в случае активации секции. Можно не задавать имя секции, а задать только условия и/или эффекты. Тогда активной останется старая секция, но условия и эффекты будут все равно обработаны. Если все условия в фигурных скобках не выполняются, секция активирована не будет. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Пример:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
on_actor_dist_le = 5 | {условие} walker2 %эффекты%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Условия могут быть следующими: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
+infoportion  - требуется присутствие infoportion у actor&amp;lt;br&amp;gt;&lt;br /&gt;
-infoportion  - требуется отсутствие infoportion у actor&amp;lt;br&amp;gt;&lt;br /&gt;
=func  - требуется, чтобы func вернула true&amp;lt;br&amp;gt;&lt;br /&gt;
!func  - требуется, чтобы func вернулся false&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Эффекты могут быть следующими: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
+infoportion  - в случае включения секции у actor будет установлен infoportion&amp;lt;br&amp;gt;&lt;br /&gt;
-infoportion  - в случае включения секции у actor будет убран infoportion&amp;lt;br&amp;gt;&lt;br /&gt;
=func  - в случае включения секции стартует функция func&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Несколько условия или эффектов разделяются пробелами: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
on_actor_dist_le = 5 | {+info1 -info2 +info3} walker2 %+info4 =func%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Можно задавать сразу несколько секций, разделенных запятыми. Порядок обхода при этом - слева направо. После срабатывания первого из условий, обход прекращается. В примере ниже, если установлен info1, будет включена схема walker2, иначе, если установлен info2, будет включена схема walker3, иначе будет включен walker4: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
on_actor_dist_le = 5 | {+info1} walker2, {+info2} walker3, walker4&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В описанном выше поле active секции logic, можно также задавать условия, например: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = {=actor_friend} walker@friendly, walker@enemy&amp;lt;br&amp;gt;&lt;br /&gt;
В логических условиях теперь принимается ключевое слово never, которое означает, что условие ложно. Например:&amp;lt;br&amp;gt;&lt;br /&gt;
combat_ignore_cond = {=actor_enemy =actor_has_suit} always, {=actor_enemy} never %...эффекты...%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Вышеприведенная конструкция включает игнорирование боя, если у NPC враг - игрок в костюме, но отключит его, если врагом является игрок, но без костюма, при этом сработают эффекты (%%) секции never. Таким образом, выбор секции never равносилен отсутствию секции (несрабатыванию условия), но эффекты в знаках процента при этом срабатывают.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Пример работы с секцией nil. Секция nil выводит из-под скриптовых схем персонажа, монстра или объект и отпускает его под управление движка. Это надо если какое-либо условие выполнившись 1 раз больше не нуждается в проверке, при этом экономятся ресурсы машины, которые на каждом апдейте проверяют это условие.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_idle&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_idle]&amp;lt;br&amp;gt;&lt;br /&gt;
on_actor_inside = nil %+esc_actor_inside%&amp;lt;br&amp;gt;&lt;br /&gt;
То есть, при входе актера в рестриктор выдается инфопоршн и рестриктор уходит в секцию nil, больше не проверяя наличие игрока.&amp;lt;br&amp;gt;&lt;br /&gt;
NB: Обратно из секции nil под скрипты объект вернуть уже невозможно! Учитывайте это, используя ее.&lt;br /&gt;
&lt;br /&gt;
==3.8.2. Вот пример достаточно сложной логики:== &lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = walker&amp;lt;br&amp;gt;&lt;br /&gt;
combat_ignore = combat_ignore&amp;lt;br&amp;gt;&lt;br /&gt;
on_hit = hit&amp;lt;br&amp;gt;&lt;br /&gt;
on_death = death&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[hit]&amp;lt;br&amp;gt;&lt;br /&gt;
on_info = %+alert%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[death]&amp;lt;br&amp;gt;&lt;br /&gt;
on_info = %+alert +trup3%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[walker]&amp;lt;br&amp;gt;&lt;br /&gt;
path_walk = walk_svoboda3&amp;lt;br&amp;gt;&lt;br /&gt;
path_look = look_svoboda3&amp;lt;br&amp;gt;&lt;br /&gt;
combat_ignore_cond = {-alert}&amp;lt;br&amp;gt;&lt;br /&gt;
on_timer = 25000 | remark&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[remark]&amp;lt;br&amp;gt;&lt;br /&gt;
anim = idle&amp;lt;br&amp;gt;&lt;br /&gt;
snd = stalker_talk_kampfire&amp;lt;br&amp;gt;&lt;br /&gt;
no_move = true&amp;lt;br&amp;gt;&lt;br /&gt;
no_rotate = true&amp;lt;br&amp;gt;&lt;br /&gt;
on_hit = hit&amp;lt;br&amp;gt;&lt;br /&gt;
on_death = death&amp;lt;br&amp;gt;&lt;br /&gt;
combat_ignore_cond = {-alert}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[combat_ignore]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Рассмотрим ее пошагово. Вначале сталкер работает по схеме walker-a. При этом он игнорирует бой, пока не будет поставлен инфопоршн alert. Он ждет 25 секунд, после чего переходит в схему remark. В ремарке он проигрывает идловую анимацию, говорит на указанные темы, не поворачивается и не двигается и точно также игнорирует бой. Если по нему попадут (on_hit) или убьют (on_death), будет поставлен инфопоршн alert и он перестанет игнорировать бой (понятно, что если он будет трупом, то это ему не поможет, но их в сценке трое, и тогда сорвутся в бой все остальные). Если его убьют, то также будет поставлен инфопоршн trup3 который сообщит о том, что этот сталкер убит.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
А  вот логика его противника:&amp;lt;br&amp;gt;&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = walker&amp;lt;br&amp;gt;&lt;br /&gt;
combat_ignore = combat_ignore&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[walker]&amp;lt;br&amp;gt;&lt;br /&gt;
path_walk = soldier_walk1&amp;lt;br&amp;gt;&lt;br /&gt;
path_look = soldier_look1&amp;lt;br&amp;gt;&lt;br /&gt;
combat_ignore_cond = always&amp;lt;br&amp;gt;&lt;br /&gt;
team = assault_group&amp;lt;br&amp;gt;&lt;br /&gt;
on_signal = assault | camper&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[camper]&amp;lt;br&amp;gt;&lt;br /&gt;
path_walk = soldier_walk1_2&amp;lt;br&amp;gt;&lt;br /&gt;
path_look = soldier_look1_2&amp;lt;br&amp;gt;&lt;br /&gt;
radius = 5&amp;lt;br&amp;gt;&lt;br /&gt;
on_info = {+trup1 +trup2 +trup3} walker2&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[walker2]&amp;lt;br&amp;gt;&lt;br /&gt;
path_walk = soldier_walk1_3&amp;lt;br&amp;gt;&lt;br /&gt;
path_look = soldier_look1_3&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[combat_ignore]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Он идет в схеме walker, игнорируя бой (причем игнорируя в любой ситуации). Идет в составе группы assault_group. Когда он приходит в конечную точку маршрута (там он синхронизируется с остальными из группы, это приписано в путях) и получает сигнал assault, то переходит в схему camper. В этой схеме у него не прописан combat_ignore, поэтому он начинает стрелять по противнику. После того, как все трое противников будут убиты, каждый из них, умирая ставит инфопоршн trup1, trup2 или trup3 и когда все трое будут убиты, то он переключится на схему walker2 (подойдет к костру).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9. Схемы логики space_restrictor==&lt;br /&gt;
&lt;br /&gt;
Общее замечание: Чтобы исключить ситуацию, когда актёр проскакивает через рестриктор и тот не успевает сработать, старайтесь ставить рестриктор так, чтоб минимальная ширина была больше 2 метров.&lt;br /&gt;
&lt;br /&gt;
==3.9.1. Схема [sr_idle]==	&lt;br /&gt;
Предназначение данной схемы – включить другую схему при срабатывании одного из стандартных условий логической схемы.&amp;lt;br&amp;gt;&lt;br /&gt;
	Сама по себе схема ничего не делает.&amp;lt;br&amp;gt;&lt;br /&gt;
	Пример настроек рестриктора:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_idle&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_idle]&amp;lt;br&amp;gt;&lt;br /&gt;
on_actor_inside = nil %+esc_actor_inside%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	Обратите внимание, что после срабатывания проверки активная схема переключается в nil, чтобы не продолжать бесполезную проверку на каждом апдейте. Можно не задавать nil.&amp;lt;br&amp;gt;&lt;br /&gt;
Часто эта схема работает вместе со спавнером, рестриктор выдает инфопоршн, при входе в зону, а спавнер по нему уже кого-то спавнит.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
файл \gamedata\scripts\sr_idle.script&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9.2. Секция [sr_no_weapon]==&lt;br /&gt;
Данная схема убирает оружие у игрока при входе в зону.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример настроек рестриктора:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_no_weapon&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_no_weapon]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
файл \gamedata\scripts\sr_no_weapon.script&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9.3. Секция [sr_sound]==&lt;br /&gt;
&lt;br /&gt;
snd = Перечень имён звуков разделенных запятыми.&lt;br /&gt;
&lt;br /&gt;
type = Типы звуков через запятые. Для удобства введены типы наборов звуков. Т.е., например, чтобы не перечислять каждый раз весь набор звуков скрипа деревянного пола, можно указать тип floor_wooden.&lt;br /&gt;
&lt;br /&gt;
*delay = Задержка перед проигрыванием звука в секундах реального времени, по умолчанию 0.&lt;br /&gt;
&lt;br /&gt;
*idle =  Длина периода игнорирования входа в зону после начала последнего проигранного звука. Чтоб, например, завывание было не чаще, чем раз в несколько минут. В секундах игрового времени. По умолчанию 0.&lt;br /&gt;
&lt;br /&gt;
*rnd = Вероятность (в процентах) того, что звук отыграется. По умолчанию 100.&lt;br /&gt;
&lt;br /&gt;
*position = Задает имя пути, в вершинах которого может отыграться звук. Есть зарезервированное значение random. Оно означает случайное место в радиусе 15…50 метров от игрока. Если этот параметр не задан, то подразумевается позиция игрока.&lt;br /&gt;
&lt;br /&gt;
*slide_velocity = Скорость (м/с) передвижения звука по точкам патрульного пути. По умолчанию - 3&lt;br /&gt;
&lt;br /&gt;
*slide_sound_once = true\false&lt;br /&gt;
	true - проиграть звук один раз, даже если он не дошел до последней точки пути.&lt;br /&gt;
	false – если звук закончился, а до последней точки пути не дошел, запустить его ещё раз. По умолчанию false.&lt;br /&gt;
&lt;br /&gt;
*play_at_actor = true/false Заставляет звук играться от позиции актера постоянно. Если он будет равен true и будет задан путь перемещения звука (или рандом), то мы тупо вылетим.&lt;br /&gt;
&lt;br /&gt;
Предназначение данной схемы: отыграть звук при входе актёра в рестриктор.&lt;br /&gt;
&lt;br /&gt;
Поддерживается sound_end.&lt;br /&gt;
&lt;br /&gt;
Обязательно нужно задать либо snd, либо type. Можно их задать вместе. На базе этих параметров составляется список звуков. При входе актёра в рестриктор отыгрывается случайный звук из этого списка.&lt;br /&gt;
&lt;br /&gt;
Место, из которого может отыграться звук, задаётся одним из трёх:&lt;br /&gt;
-	случайное;&lt;br /&gt;
-	случайная вершина заданного пути;&lt;br /&gt;
-	позиция игрока.&lt;br /&gt;
&lt;br /&gt;
Пример настроек рестриктора:&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_sound&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_sound]&amp;lt;br&amp;gt;&lt;br /&gt;
type = floor_wooden&amp;lt;br&amp;gt;&lt;br /&gt;
snd = ambient\wind1, ambient\sparks1&amp;lt;br&amp;gt;&lt;br /&gt;
rnd = 50&amp;lt;br&amp;gt;&lt;br /&gt;
position = random&amp;lt;br&amp;gt;&lt;br /&gt;
idle = 120&amp;lt;br&amp;gt;&lt;br /&gt;
delay = 3&lt;br /&gt;
&lt;br /&gt;
Есть возможность сделать «скользящий звук». Необходим патрульный путь. Звук начинает отыгрываться с начала пути и перемещается от одной точки пути к другой (по мере их установки на патрульном пути) со скоростью slide_velocity. &lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_sound&lt;br /&gt;
&lt;br /&gt;
[sr_sound]&amp;lt;br&amp;gt;&lt;br /&gt;
type = random&amp;lt;br&amp;gt;&lt;br /&gt;
position = way&amp;lt;br&amp;gt;&lt;br /&gt;
slide_velocity = 8&amp;lt;br&amp;gt;&lt;br /&gt;
slide_sound_once = true&lt;br /&gt;
&lt;br /&gt;
Файл \gamedata\scripts\sr_sound.script&lt;br /&gt;
&lt;br /&gt;
==3.9.4. Секция [sr_tip]==&lt;br /&gt;
Предназначение данной схемы – давать игроку сообщение (подсказку) при входе в рестриктор&lt;br /&gt;
&lt;br /&gt;
name = Название новости.&amp;lt;br&amp;gt;&lt;br /&gt;
type = по умолчанию «news»&amp;lt;br&amp;gt;&lt;br /&gt;
Тип  новостей: «news» – отсылается как глобальная новость, «tips» - отсылается то имени sender-a&lt;br /&gt;
*sender = если тип = «tips», то от sender задаёт условный строковый идентификатор иконки персонажа, от которого якобы пришло сообщение. По умолчанию это иконка торговца.&lt;br /&gt;
&lt;br /&gt;
*cond = Необходимые логические условия, при которых подсказка сработает. По дефолту, сработает при входе в зону.&lt;br /&gt;
&lt;br /&gt;
*single = true/false (по умолчанию false). Если параметр в true, то типс будет выдан только один раз,&lt;br /&gt;
&lt;br /&gt;
Пример настроек рестриктора:&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_tip&lt;br /&gt;
&lt;br /&gt;
[sr_tip]&amp;lt;br&amp;gt;&lt;br /&gt;
name = tips_esc_trader_about_pda&amp;lt;br&amp;gt;&lt;br /&gt;
type = tips&amp;lt;br&amp;gt;&lt;br /&gt;
cond = {+infoportion1 –infoportion2 }&amp;lt;br&amp;gt;&lt;br /&gt;
*showtime = msec – время в миллисекундах, в течение которого сообщение будет находится на экране. – ПОКА НЕ РАБОТАЕТ НОРМАЛЬНО!&lt;br /&gt;
&lt;br /&gt;
Если необходимо проиграть только 1 раз, а это случается часто, то можно добавить следующую строку:&lt;br /&gt;
on_actor_inside = nil &lt;br /&gt;
&lt;br /&gt;
файл \gamedata\scripts\sr_tip.script&lt;br /&gt;
&lt;br /&gt;
==3.9.5. Sr_light==&lt;br /&gt;
Зона, в которой фонарики у неписей будут включены независимо от времени суток.&lt;br /&gt;
&lt;br /&gt;
Работает следующим образом:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_light&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_light]&amp;lt;br&amp;gt;&lt;br /&gt;
light_on = true/false (свет включен/выключен)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Также работает вместе с кондлистом:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_light&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_light]&amp;lt;br&amp;gt;&lt;br /&gt;
light_on = true/false (свет включен/выключен)&amp;lt;br&amp;gt;&lt;br /&gt;
on_info = {+info1} section %+info2%&lt;br /&gt;
&lt;br /&gt;
==3.9.6. Sr_territory==&lt;br /&gt;
&lt;br /&gt;
Занимается эта схема тем, что отлавливает всякие события, происходящие внутри рестриктора.&lt;br /&gt;
Пока что она отлавливает только хиты и смерть сталкеров. Пример использования примерно следующий:&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_territory@outside&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_territory@outside]&amp;lt;br&amp;gt;&lt;br /&gt;
on_actor_inside = sr_territory@inside&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_territory@inside]&amp;lt;br&amp;gt;&lt;br /&gt;
on_actor_outside = sr_territory@outside&amp;lt;br&amp;gt;&lt;br /&gt;
territory_hit = {-bar_dolg_territory_1_hit} %+bar_dolg_territory_1_hit%, {-bar_dolg_territory_2_hit}&amp;lt;br&amp;gt;&lt;br /&gt;
%+bar_dolg_territory_2_hit%, {-bar_dolg_territory_3_hit} %+bar_dolg_territory_3_hit%&lt;br /&gt;
territory_death = {-bar_dolg_territory_kill} %+bar_dolg_territory_kill%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
То есть здесь видно, что когда игрок находится внутри рестриктора, то считается количество нанесенных хитов, а также учитывается был ли кто-то убит или нет. Поскольку схема работает только с игроком – то хиты и смерть засчитываются только от игрока.&lt;br /&gt;
&lt;br /&gt;
==3.9.7. Sr_mapspot==&lt;br /&gt;
&lt;br /&gt;
При входе в рестриктор он сам себя подсвечивает на карте.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Параметры:&amp;lt;br&amp;gt;&lt;br /&gt;
hint - id подсказки в string table (обязательный параметр)&amp;lt;br&amp;gt;&lt;br /&gt;
location - название типа подсветки (не обязательный параметр, по умолчанию &amp;quot;crlc_small&amp;quot;)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Пример:&amp;lt;br&amp;gt;&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_mapspot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_mapspot]&amp;lt;br&amp;gt;&lt;br /&gt;
hint = “gar_swamp”&amp;lt;br&amp;gt;&lt;br /&gt;
location = crcl_big&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9.8. Sr_particle==&lt;br /&gt;
&lt;br /&gt;
Данная система отыгрывает партиклы как статичные так и движущиеся в указанном месте и в указанное время. Работет она следующим образом:&lt;br /&gt;
&lt;br /&gt;
1) для партикловой системы с путем камеры:&lt;br /&gt;
     [sr_particle]&lt;br /&gt;
     name = explosions\campfire_03          -имя партикловой системы&lt;br /&gt;
     path = particle_test.anm          -имя пути камеры&lt;br /&gt;
     mode = 1 				(обязательно !!!)&lt;br /&gt;
     looped = true/false               		-флаг зацикленности партиклов&lt;br /&gt;
&lt;br /&gt;
(обязательно с расширением ANM !!!) Здесь партиклы будут молча перемещаться по пути.&lt;br /&gt;
          &lt;br /&gt;
2) для партикловой системы с обычным патрульным путем:&lt;br /&gt;
     [sr_particle]&lt;br /&gt;
     name = explosions\campfire_03          -имя партикловой системы&lt;br /&gt;
     path = part_points                   -имя патрульного пути&lt;br /&gt;
     mode = 2 				(обязательно !!!)&lt;br /&gt;
     looped = true/false               -флаг зацикленности партиклов &lt;br /&gt;
&lt;br /&gt;
В вейпоинтах можно задавать флаг s=имя_звуковой_темы и d=число время задержки перед проигрыванием (задается в миллисекундах. Если не задано, то 0). s - имя звуковой темы в sound_themes.ph_snd_themes из которой будет случайно выбран звук для проигрывания во время проигрывания партикла. Звук не зацикливается и играет только один раз.. Результат = партиклы отыгрываются во всех вейпоинтах одновременно (или с задержкой см. выше).&amp;lt;br&amp;gt;&lt;br /&gt;
При looped=true по окончании проигрывания партиклов, они будут запускаться сначала, но уже без задержек. Сигнал particle_end выдаваться не будет. При looped=false сигнал будет выдан, когда все  источники партиклов отыграют. &amp;lt;br&amp;gt;     &lt;br /&gt;
Поддерживается кондлист. Если рестриктор переходит в другую секцию, то автоматически перестают отыгрываться партиклы и замолкают звуки при них. Этот рестриктор является объектом, отслеживающим партиклы и нет никакой необходимости чтобы игрок в него заходил.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9.9. Sr_sound_act==&lt;br /&gt;
Итого, схема, которая играет саунд в голове актера. Всякие там переговоры по ПДА и прочие фейки&lt;br /&gt;
&lt;br /&gt;
[sr_sound_act]&amp;lt;br&amp;gt;&lt;br /&gt;
snd = ambient\random\new_drone1     --имя звукового файла&amp;lt;br&amp;gt;&lt;br /&gt;
*delay = 2000                          --задержка перед проигрыванием &amp;lt;br&amp;gt;&lt;br /&gt;
*delay_max = 4000		-- между проигрыванием звука будет взят случайный промежуток между delay и delay_max.&amp;lt;br&amp;gt;&lt;br /&gt;
*on_signal = sound_end | nil           --по сигналу можно перейти в другую секцию.&amp;lt;br&amp;gt;&lt;br /&gt;
theme =  &amp;lt;имя темы из ph_sound_themes&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* stereo = true/false (по умолчанию false). При установке этого параметра к файлу, который задан параметром snd или в звуковой теме будут добавляться (автоматически) суффиксы _r и _l для загрузки левого и правого каналов и, соответственно, вся эта фигня будет играться.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если указывается тема, то звук будет играть зациклено, случайным образом выбирая один из звуков прописанных в теме, если указывается звук, то он отыгрывается один раз. Схема поддерживает кондлист.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9.10 Sr_timer==&lt;br /&gt;
&lt;br /&gt;
Пример использования:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_timer@1&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_timer@1]&amp;lt;br&amp;gt;&lt;br /&gt;
type = dec&amp;lt;br&amp;gt;&lt;br /&gt;
start_value = 10000&amp;lt;br&amp;gt;&lt;br /&gt;
on_value = 0 | sr_timer@2&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_timer@2]&amp;lt;br&amp;gt;&lt;br /&gt;
type = inc&amp;lt;br&amp;gt;&lt;br /&gt;
on_value = 15000 | nil %+info1%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Описания полей:&amp;lt;br&amp;gt;&lt;br /&gt;
type - тип счетчика, инкриментирующий(inc) или декриментирующий(dec).&amp;lt;br&amp;gt;&lt;br /&gt;
Если поле не задано -  счетчик будет инкриментирующий&amp;lt;br&amp;gt;&lt;br /&gt;
start_value - начальное значение счетчика в РЕАЛЬНЫХ милисекундах. Для декриментирующих счетчиков задавать обязательно. Для инкриментирующих, если не задано, то считается с 0.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Переходы из секции sr_timer могут быть как по обычным условиям (on_timer, on_info) так и по специфическому условию on_value. В общем случае on_value Можно использовать для производства каких либо действий в зависимости от состояния счетчика. Например:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
on_value = 5000| %+info1% | 1000| %+info2%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9.11. Sr_psy_antenna==&lt;br /&gt;
Зоны с такой секцией позволяют управлять эффектами от пси-воздействия (на Янтаре и Радаре). Сейчас можно управлять интенсивностью излучения и интенсивностью получения повреждений.&lt;br /&gt;
&lt;br /&gt;
Способ применения: Расставить зоны, в каждой зоне написать, сколько процентов к интенсивности излучения и повреждения она добавляет/отнимает. Зоны могут быть вложены друг в друга, пересекать друг друга. &lt;br /&gt;
&lt;br /&gt;
eff_intensity = 	- увеличение/уменьшение в % от базового значения интенсивности излучения.&lt;br /&gt;
hit_ intensity = 	- увеличение/уменьшение в % от базового значения наносимого повреждения.&lt;br /&gt;
&lt;br /&gt;
Пример зоны, которая добавляет 70% излучения:&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_psy_antenna&lt;br /&gt;
&lt;br /&gt;
[sr_psy_antenna]&amp;lt;br&amp;gt;&lt;br /&gt;
eff_intensity = 70&amp;lt;br&amp;gt;&lt;br /&gt;
hit_ intensity = 70&lt;br /&gt;
&lt;br /&gt;
Пример зоны, которая убирает 30% излучения:&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_psy_antenna&lt;br /&gt;
&lt;br /&gt;
[sr_psy_antenna]&amp;lt;br&amp;gt;&lt;br /&gt;
intensity = -30&lt;br /&gt;
&lt;br /&gt;
==3.9.12. Sr_teleport==&lt;br /&gt;
Собственно, телепорт. Настраиваются следующим образом:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = sr_teleport&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_teleport]&amp;lt;br&amp;gt;&lt;br /&gt;
timeout = 0&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
point1 = point1&amp;lt;br&amp;gt;&lt;br /&gt;
look1 = look1&amp;lt;br&amp;gt;&lt;br /&gt;
prob1 = 10&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
point2 = point2&amp;lt;br&amp;gt;&lt;br /&gt;
look2 = look2&amp;lt;br&amp;gt;&lt;br /&gt;
prob2 = 20&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
где:&amp;lt;br&amp;gt;&lt;br /&gt;
timeout - задержка в срабатывании телепорта в миллисекундах.&amp;lt;br&amp;gt;&lt;br /&gt;
point - одноточечный патрульный путь куда переместить&amp;lt;br&amp;gt;&lt;br /&gt;
look - одноточечный патрульный путь куда повернуть.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее идут настройки точек назначения с удельными весами. То есть в перечисленном выше примере вероятность телепортнутся во вторую точку в два раза выше, чем в первую. Максимальное количество точек назначения - 10. Телепорты необходимо ставить совместно с особой аномальной зоной, которую сейчас делает Проф. Зона добавит визуализацию и создаст эффект втягивания.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9.13. Sr_sleep и настройка снов.==&lt;br /&gt;
&lt;br /&gt;
Появилась возможность задавать зоны сна.&lt;br /&gt;
&lt;br /&gt;
[sr_sleep]&lt;br /&gt;
*cond = &amp;lt;condlist&amp;gt;&lt;br /&gt;
*type = nightmare/normal/happy/all - Задает тип сна разрешенный в данной зоне (по умолчанию all). Влияет (группирует) только на несценарные сны.&lt;br /&gt;
*dream_prob = &amp;lt;число от 0 до 100&amp;gt; - вероятность просмотра несценарных сновидений в данной зоне (по умолчанию 80). В противном случае будет только черный экран.&lt;br /&gt;
&lt;br /&gt;
Необязательное поле cond задает условие(я), при котором в этой зоне можно спать. Сейчас производится индикация зон, где разрешен сон. В левом нижнем углу отображается маленькая иконка легких при входе в такую зону. Вероятно, позже будет изменена на другую.&amp;lt;br&amp;gt;&lt;br /&gt;
Сновидения теперь делятся на сценарные и обычные. Сценарные сновидения отыгрываются один раз при выполнении необходимых условий. Обычные сновидения проигрываются, если нет сценарных или ни одно условие выполнения сценарных не сработало. Можно задавать вероятность отыгрывания обычных сновидений в целом, а также задавать вероятность срабатывания каждого конкретного сновидения в отдельности. Обычным сновидениям можно задавать тип и потом ограничивать по нему сны воспроизводимые в sr_sleep.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В файле misc\dream.ltx задаются настройки снов.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Секция videos.&amp;lt;br&amp;gt;&lt;br /&gt;
Полями задаются пути к видеофайлам со снами.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Секция dreams. Поля:&amp;lt;br&amp;gt;&lt;br /&gt;
regular_probability = &amp;lt;число от 0 до 100&amp;gt; - вероятность проигрывания обычных сновидений в целом &amp;lt;br&amp;gt;&lt;br /&gt;
regular - список секций с настройками для обычных сновидений&amp;lt;br&amp;gt;&lt;br /&gt;
scene - список секций с настройками для сценарных сновидений&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Настройки обычных сновидений:&amp;lt;br&amp;gt;&lt;br /&gt;
dream - имя поля из секции videos&amp;lt;br&amp;gt;&lt;br /&gt;
probability = &amp;lt;число больше 0&amp;gt; - чем больше, тем больше вероятность проигрывания сна.&amp;lt;br&amp;gt;&lt;br /&gt;
type = nightmare/normal/happy - тип сна.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Настройки сценарных сновидений:&amp;lt;br&amp;gt;&lt;br /&gt;
dream - имя поля из секции videos&amp;lt;br&amp;gt;&lt;br /&gt;
cond = &amp;lt;condlist&amp;gt; - условия срабатывания&amp;lt;br&amp;gt;&lt;br /&gt;
to_regular = &amp;lt;вероятность,тип&amp;gt; - необязательное поле. Дает возможность переводить сценарный сон после первого отыгрыша в разряд обычных. &amp;lt;вероятность, тип&amp;gt; аналогичны probability и type из настроек обычных сновидений соответственно.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.9.14. Sr_cutscene==&lt;br /&gt;
&lt;br /&gt;
	Эта схема предназначена для проведения анимации камеры c некоторым эффектом &lt;br /&gt;
(pp_effector). Последовательность действий, осуществляемых схемой, состоит из мгновенного перемещения игрока в начало пути point и ориентации его взгляда на начало пути look, потери управления игроком и начала анимации камеры cam_effector по завершении которой игрок вновь получает управление.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[sr_cutscene]&amp;lt;br&amp;gt;&lt;br /&gt;
point = &amp;lt;имя пути&amp;gt; - путь в первую точку которого переносится игрок&amp;lt;br&amp;gt;&lt;br /&gt;
look = &amp;lt;имя пути&amp;gt; - путь в первую точку которого смотрит игрок&amp;lt;br&amp;gt;&lt;br /&gt;
*pp_effector = &amp;lt;имя файла с эффектом&amp;gt; - файл, расположенный в папке &amp;lt;br&amp;gt;&lt;br /&gt;
gamedata\anims\ и содержащий эффект (имя файла пишется без расширения)&amp;lt;br&amp;gt;&lt;br /&gt;
cam_effector = &amp;lt;имя файла с анимацией камеры&amp;gt; - файл, расположенный в папке gamedata\anims\camera_effects\ и содержащий анимацию камеры (имя файла пишется без расширения)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.10. Набор дополнительных настроек логики у разных объектов.==&lt;br /&gt;
Для всех физических объектов есть секция ph_idle, поддерживающая кондлист в которую можно при необходимости переводить объекты.&lt;br /&gt;
&lt;br /&gt;
==3.10.1. Схема работы двери, секция [ph_door]==&lt;br /&gt;
&lt;br /&gt;
NB! Для двухстворчатых ворот задается все аналогично.&lt;br /&gt;
&lt;br /&gt;
locked = false\true&amp;lt;br&amp;gt;&lt;br /&gt;
	Заперта ли дверь. По дефолту – false.&lt;br /&gt;
&lt;br /&gt;
Closed = false\true&amp;lt;br&amp;gt;&lt;br /&gt;
	Закрыта ли дверь. По дефолту - true&lt;br /&gt;
&lt;br /&gt;
tip_open = (если locked == false, то tip_door_open, иначе tip_door_locked)&amp;lt;br&amp;gt;&lt;br /&gt;
	Подсказка, которая появляется около прицела при наведении на дверь, если дверь закрыта.&lt;br /&gt;
&lt;br /&gt;
tip_close = (если locked == false, то tip_door_close, иначе пустое значение)&amp;lt;br&amp;gt;&lt;br /&gt;
	Подсказка, которая появляется около прицела при наведении на дверь, если дверь открыта.&lt;br /&gt;
&lt;br /&gt;
snd_init = Звук, который будет отыгран сразу при включении схемы.&lt;br /&gt;
&lt;br /&gt;
snd_open_start = Звук, который будет отыгран при попытке открыть дверь.&lt;br /&gt;
&lt;br /&gt;
snd_close_start = Звук, который будет отыгран при попытке закрыть дверь.&lt;br /&gt;
&lt;br /&gt;
snd_close_stop = Звук, который будет отыгран, когда дверь захлопнется до конца.&lt;br /&gt;
&lt;br /&gt;
Примеры:&amp;lt;br&amp;gt;&lt;br /&gt;
	Если нужно сделать дверь, которая при каком-то событии открывается со щелчком, то можно воспользоваться полем snd_init и переключением схем. В примере ниже при включении схемы ph_door@unlocked проиграется snd_init, т.е. trader_door_unlock:&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = ph_door@locked&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[ph_door@locked]&amp;lt;br&amp;gt;&lt;br /&gt;
locked = true&amp;lt;br&amp;gt;&lt;br /&gt;
snd_open_start = trader_door_locked&amp;lt;br&amp;gt;&lt;br /&gt;
on_info = {+esc_trader_can_leave} ph_door@unlocked&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[ph_door@unlocked]&amp;lt;br&amp;gt;&lt;br /&gt;
locked = false&amp;lt;br&amp;gt;&lt;br /&gt;
snd_init = trader_door_unlock&amp;lt;br&amp;gt;&lt;br /&gt;
snd_open_start = trader_door_open_start&amp;lt;br&amp;gt;&lt;br /&gt;
snd_close_start = trader_door_close_start&amp;lt;br&amp;gt;&lt;br /&gt;
snd_close_stop = trader_door_close_stop&amp;lt;br&amp;gt;&lt;br /&gt;
файл \gamedata\scripts\ph_door.script&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==3.10.2. Схема работы кнопки, секция [ph_button]==&lt;br /&gt;
&lt;br /&gt;
При нажатии на кнопку переключает секции и выдает инфопоршн.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active      = ph_button@locked&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[ph_button@locked]&amp;lt;br&amp;gt;&lt;br /&gt;
anim_blend  = false&amp;lt;br&amp;gt;&lt;br /&gt;
anim        = button_false&amp;lt;br&amp;gt;&lt;br /&gt;
on_press    = ph_button@unlocked %+cit_jail_door_opened%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
on_press – что происходит при нажатии&amp;lt;br&amp;gt;&lt;br /&gt;
anim – анимация, которая отигрывается при нажатии на кнопку&amp;lt;br&amp;gt;&lt;br /&gt;
anim_blend – плаваня, сглаженная анимация. Может принимать знаечения true\false&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Файл \Gamedata\scripts\ph_button.script&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*tooltip - gредназначено для того, чтобы задавать текстовую подсказку при наведении на кнопку. Текстовая подсказка нужна для того, чтобы как минимум было понятно, что этот девайс можно нажимать.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример настройки кнопки:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = ph_button@active&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[ph_button@active]&amp;lt;br&amp;gt;&lt;br /&gt;
anim = lab_switcher_idle&amp;lt;br&amp;gt;&lt;br /&gt;
tooltip = tips_labx16switcher_press&amp;lt;br&amp;gt;&lt;br /&gt;
on_press = ph_button@deactivated %+terrain_test%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[ph_button@deactivated]&amp;lt;br&amp;gt;&lt;br /&gt;
anim = lab_switcher_off&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для того чтобы сообщение не потеряло адекватность при различных настройках клавиатуры сообщение следует писать с использованием токенов. Например:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    &amp;lt;string id=&amp;quot;tips_labx16switcher_press&amp;quot;&amp;gt; &lt;br /&gt;
        &amp;lt;text&amp;gt;Чтобы отключить чудо установку нажмите ($$ACTION_USE$$)&amp;lt;/text&amp;gt;&lt;br /&gt;
    &amp;lt;/string&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Вот пример кнопки, которая срабатывает не всегда, а по определенному условию:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[logic]&amp;lt;br&amp;gt;&lt;br /&gt;
active = ph_button@locked&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[ph_button@locked]&amp;lt;br&amp;gt;&lt;br /&gt;
anim = button_false – анимация несрабатывания кнопки.&amp;lt;br&amp;gt;&lt;br /&gt;
on_info = {+val_prisoner_door_unlocked} ph_button@unlocked&amp;lt;br&amp;gt;&lt;br /&gt;
on_press = ph_button@unlocked %+val_prisoner_door_unlocked%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[ph_button@unlocked]&amp;lt;br&amp;gt;&lt;br /&gt;
anim = button_true&amp;lt;br&amp;gt;&lt;br /&gt;
on_info = {-val_prisoner_door_unlocked} ph_button@locked&amp;lt;br&amp;gt;&lt;br /&gt;
on_press = ph_button@locked %-val_prisoner_door_unlocked%&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[[Часть 4]]===&lt;br /&gt;
&lt;br /&gt;
[[Категория:Скрипты]]&lt;/div&gt;</summary>
		<author><name>82.200.194.42</name></author>	</entry>

	</feed>