Всем дарова! В этой небольшой статейке я опишу создание collback'а на выстрел из оружия, может кому-то и пригодится..
И так приступим.
1) Создадим в папке gamedata\scripts\ два файла: new_callbacks.script и new_functions.script - в первом будет сам callback, а во втором функция, его активирующая. 2) Скопируем туда же файл bind_stalker.script из оригинала, он нужен для привязки коллбека на постоянный апдейт. 3) В bind_stalker.script в функцию actor_binder:update(delta) допишем путь к функии, которая активирует callback:
Дописать можно после строчки self:check_mutant_hunter_achievement().
4) Так как мы указали функцию в bind_stalker.script, необходимо её создать. Для этого в файле new_functiouns.script пишем:
Код
--' // Объявляем переменные Integer_ShotCallbackItemAmmoCount=-1 --' // Здесь патроны String_ShotCallbackItemName="" --' // А здесь секция используемого в данный момент оружия
--' // Фунцкия function ShotCallbackUpdate() local ActiveWeapon=db.actor:active_item() if ActiveWeapon then if String_ShotCallbackItemName~=ActiveWeapon:section() then String_ShotCallbackItemName=ActiveWeapon:section() Integer_ShotCallbackItemAmmoCount=-1 end if Integer_ShotCallbackItemAmmoCount~=ActiveWeapon:get_ammo_in_magazine() then if Integer_ShotCallbackItemAmmoCount~=-1 and Integer_ShotCallbackItemAmmoCount>ActiveWeapon:get_ammo_in_magazine() then new_callbacks.OnWeaponShot(ActiveWeapon) --' // Активируем callback end Integer_ShotCallbackItemAmmoCount=ActiveWeapon:get_ammo_in_magazine() end end end
5) Теперь в файле new_callbacks.script необходимо создать функцию, которая будет вызыаться при каждом выстреле:
Код
--' // --' ----------------------- --' // Callback на выстрел из оружия --' ----------------------- function OnWeaponShot(object)
end --' //
Вот так например можно сделать, чтобы при выстреле из калаша выводилось сообщение:
Код
--' // --' ----------------------- --' // Callback на выстрел из оружия --' ----------------------- function OnWeaponShot(object) if object:section()=="wpn_ak74u" then --' // Проверяем, что стрельба ведётся из АК news_manager.send_tip(db.actor,"Callback сработал!",0,"mutant_hunter",2000,nil,"Быстрое сообщение:") --' // Это для теста так сказать end end --' //
Вот в принципе и всё.
Так всё таки я мучался и нашол выход. Как заспавнить предмет.
[ЗП] Спавн предмета через bind stalker.sсript
В bind_stalker.sсript находим строчки:
Код
if self.bCheckStart then printf("SET DEFAULT INFOS") if not has_alife_info("global_dialogs") then
В результате, когда начнем новою игру, у входа в Скадовск будет стоять Вертолёт. Таким образом мы можем вписать любые функции после then и они будут выполнятся. Это один из способов спавна не через all.spawn.
IP-адрес: Страна: Российская Федерация Город: Москва Дата регистрации: 25.10.2014
Добрый день! Предлагаю небольшую шпаргалку для тех, кто работает с заселением в SDK LE и более-менее понимает, для чего, вообще, нужен данный код. Фактически создано для копипаста и экономии времени. Для новичков, может, тоже будет не лишним почитать. Что необходимо учесть: 1. Я привык разбивать логику различных групп объектов по подпапкам (smart, anomaly, npc_logic, monsters_logic и другие). Это не есть обязательным, но рекомендую действовать таким же образом. Практика показывает, что другим модмейкерам, в этом случае, будет легче ориентироваться в файлах логики Вашего мода. 2. Каждый пресет является среднестатистическим набором для логики. Вы, само собой, можете убирать/добавлять дополнительные секции в роде collide, story_object. 3. Вместо location, в пути прописываете название локации. Удачи! ;)
Запускаем Level Editor и открываем нужную вам локацию.
В Level Editor включаем раздел, Spawn Element в пункте, physics выбираем, destroyable_object ставим белый флажок в то место где будет стоять радио.
Далее жмём на клавишу Enter открывается окно опций флажка, в открывшемся окне в разделе visual выбираем приёмник горизонт и жмём ОК, радио появилось.
В Custom data указываем ссылку на файл с логикой.
Код
[logic]cfg = scripts\radio\agr_dolg_radio.ltx
В этом же окне в разделе Fixed bones нужно выставить link.
На этом работа в SDK окончена, сохраняем и дополняем Spawn (Make Game) после, компилируем spawn и не забываем заменить файл spawn из SDK в игре.
Открываем папку, scripts что находится в папке configs создаём новую папку и переименовываем в radio открываем папку radio и создаём файл логики для радио.
Как известно, большинство данных игрового спавна всех игровых локаций синглплеера хранятся в файле gamedata/spawns/all.spawn. Однако, довольно часто бывает так, что модмейкеры собирают спавн отдельных локаций для отладки. Обычно в этом случае оригинальный all.spawn переименовывается во что-то другое, а файл имя_уровня.spawn, в свою очередь, переименовывается в all.spawn.
Попробуйте иной, более удобный способ: правка скрипта, который подключает файл *.spawn к игре.
Теория
gamedata/scripts/ui_main_menu.script - именно тот файл, в котором спавн привязывается к игре. Правильнее будет сказать, что в ui_main_menu.script игра запускает синглплеер с указанным в функции файлом *.spawn.
Исправьте функцию под свой файл.
Практика
Предположим, что вы хотите опробовать новый *.spawn уровня "Затон". 1. Скопируйте в gamedata/spawns свой файл *.spawn (zaton.spawn). 2. Откройте ui_main_menu.script, найдите там функцию main_menu:StartGame(), которая запускает новую игру после нажатия на соответствующую кнопку в главном меню и выбора уровня сложности:
Код
function main_menu:StartGame() local console = get_console()
if (alife() ~= nil) then console:execute ("disconnect") end device():pause(false) console:execute("start server(all/single/alife/new) client(localhost)") console:execute("main_menu off") end
function main_menu:StartGame() local console = get_console()
if (alife() ~= nil) then console:execute ("disconnect") end device():pause(false) console:execute("start server(zaton/single/alife/new) client(localhost)") console:execute("main_menu off") end
4. Сохраните измененный скрипт. Запускаем и проверяем!
Автор:FantomICW Дополнил:Wookie
IP-адрес: Страна: Российская Федерация Город: Москва Дата регистрации: 25.10.2014
Секция "meet" необходима для того, чтобы настроить поведение NPC при взаимодействии, какие фразы будет говорить при встрече, некоторые настройки при диалоге с ним и прочее. Вот параметры, которые используются:
• meet_state = число | название_анимации@название_звуковой_темы – задает анимацию и озвучку персонажа, в зависимости от расстояния до актера равному числу. • meet_state_wpn = число | название_анимации@название_звуковой_темы – тоже самое что и "meet_state", но работает только тогда, когда ГГ в руках оружие. • victim = число | параметр – задает объект, на который должен будет смотреть персонаж, в зависимости от расстояния равное числу. • victim_wpn = число | параметр – тоже самое, что и "victim", но только ГГ держит в руках оружие. Для обоих параметров возможны следующие значения: ♦ actor - смотреть на игрока; ♦ story_id - смотреть на персонажа со указанным story_id; ♦ nil - никуда. • use = true/false/self - настройки возможности взаимодействовать с персонажем. • use_wpn = true/false/self - настройки возможности взаимодействовать с персонажем, если ГГ держит оружие в руках. ♦ true - можно ♦ false - нельзя ♦ self - НПС сам начнёт диалог с ГГ, рекомендуется использовать с проверкой на расстояния до ГГ "=dist_to_actor_le(расстояние)". • zone = имя_зоны | название_анимации@название_звуковой_темы - если ГГ будет замечен в указанном рестрикторе, то НПС будет отыгрывать заданную анимацию и произносить заданный звук. • meet_dialog = название_диалога - возможность установить стартовый диалог НПС, указывать необязательно. • synpairs = название_анимации@название_звуковой_темы - если, при каком-то наборе условий, встреча будет отыгрывать именно это состояние и эту звуковую тему – то они будут синхронизироваться по рандомным анимациям состояния тела. • abuse = true/false - по умолчанию true, если false, то НПС, с которым нельзя поговорить не будет бить ГГ прикладом. • precond = usability/visibility. • allow_break = true/false - может ли НПС прервать диалог • trade_enable = true/false - может ли ГГ торговать с НПС • far_distance = число - указываем, при каком расстоянии ГГ для НПС будет далеко. • far_victim = параметр - куда будет смотреть НПС, если ГГ далеко (расстояние берётся из "far_distance"). ♦ actor - смотреть на игрока; ♦ story_id - смотреть на персонажа со указанным story_id; ♦ nil - никуда. • far_anim = параметр - анимация, если ГГ далеко (расстояние берётся из "far_distance"). • far_snd = параметр - звуковая схема, если ГГ далеко (расстояние берётся из "far_distance"). • close_distance = число - тоже самое, что и "far_distance", но только ГГ близко. • close_anim = параметр - анимация, если ГГ близко (расстояние берётся из "close_distance"). • close_victim = параметр - куда будет смотреть НПС, если ГГ близко (расстояние берётся из "close_distance"). ♦ actor - смотреть на игрока; ♦ story_id - смотреть на персонажа со указанным story_id; ♦ nil - никуда. • close_snd = параметр - звуковая схема, если ГГ близко (расстояние берётся из "close_distance").
IP-адрес: Страна: Российская Федерация Город: Москва Дата регистрации: 25.10.2014
Данная тема создана для того, чтобы собрать все "sr-секции" в одном месте. Информация может быть универсальной для разных частей серии.
Я бы назвал данную схему "пустышкой", так как никаких функций у неё, по сути, нет. Обычно её используют для того, чтобы использовать таймеры и условия включения или как перемычка между секциями. Используется везде и часто, без неё было невозможно нормально писать логику.
Если ГГ находиться внутри этого рестриктора и у нас есть инфопоршень "val_raid_start" и отсутствует "esc_return" и "esc_trader_speak", то нам дадут инфопоршни "esc_return" и "esc_trader_speak", и выполниться функция "esc_return_dv".
При использовании нескольких одинаковых секций, необходимо давать имена. Подобное необходимо делать для всех секций, не только для "sr_idle". Это делается так: "название_секции@имя"
Спустя 10 сек после начала работы логики (on_game_timer считает через игровое время, поэтому умножаем секунды на time_factor, который по умолчания равен 10) нам выдается инфопоршень "info1" и активной секцией становиться "sr_idle@end", где при наличии инфопоршней "info2" нам выдадут "info3" и логика закончиться.
Файл: gamedata\scripts\sr_idle.script
P.S. Писать "nil" нужно ОБЯЗАТЕЛЬНО, иначе ваша логика может просто зациклиться на секции и вы будете удивляться, почему у вас выдается тысяча заданий или сообщений. Вместо "nil" можно создать пустую секцию и просто переключать на неё, но я не знаю, как это может повлиять на производительность, при частом использовании.
Секция используется для того, чтобы запретить ГГ доставать оружие в определённой зоне, никаких настроек не имеет, да они ей особо и не нужны.
Структура:
Код
[logic] active = sr_no_weapon
[sr_no_weapon]
Файл: gamedata\scripts\sr_no_weapon.script
Схема предназначена для отыгрывание звука при входе актора в space_restrictor. Так же есть аналог в виде функции "=play_sound()".
Параметры:
snd - путь к звуку или переченю звуков, разделенных запятыми (путь учитывается относительно папки gamedata\sounds). type - типы звуков через запятые. Для удобства введены типы наборов звуков в таблице
sound_types управляющего файла. Всего их три:
floor_wooden;
rats_panic;
random.
delay - задержка перед проигрыванием звука в секундах реального времени, по умолчанию 0.
idle - длина задержки после начала последнего проигранного звука. Чтобы, например, "завывание" было не чаще, чем раз в несколько минут. Указывается в секундах игрового времени, то есть "секунды * time_factor". По умолчанию = 0.
rnd - вероятность (в процентах) того, что звук отыграется. По умолчанию 100.
position - задает имя пути, в вершинах которого может отыграться звук. Есть зарезервированное значение "random". Оно означает случайное место в радиусе от 15 до 50 метров от игрока. Если этот параметр не задан, то подразумевается позиция игрока.
slide_velocity - скорость (м/с) передвижения звука по точкам патрульного пути. По умолчанию - 3.
slide_sound_once = true/false - в случае значения true - проиграть звук один раз, даже если он не дошел до последней точки пути, если false, то когда звук закончился, а до последней точки пути не дошел, запустить его ещё раз. По умолчанию false.
play_at_actor = true/false - заставляет звук играться от позиции актера постоянно. Если он будет равен "true" и будет задан путь перемещения звука (или рандом), то вы словите вылет.
Когда ГГ заходит в рестриктор, то секция меняться на "sr_sound@shooting" и начинает проигрываться и спустя 2000 секунд или когда закочнится звук - логика завершиться.
Файл: gamedata\scripts\sr_sound.script
Секция используется для отправки сообщений ГГ, частенько используется для сюжетных модификаций.
Параметры:
name - строка с id текста зарегистрированного в папке gamedata\config\text.
type = news/tips - параметр рудиментарный и не на что не влияет.
sender - задаёт условный строковый идентификатор иконки персонажа, от которого якобы пришло сообщение.
По умолчанию это иконка торговца. В ТЧ возможны следующие значения: default, trader, dolg, freedom, ecolog, arena, stalker, krot, barman, wolf, o_soznanie, monolith, saharov, prizrak, killer.
В ЗП используются иконки, которые прописаны в news_manager.script
cond = {+info -info =func !func ~number} - необходимые логические условия, при которых подсказка сработает.
single = true/false - если параметр в true, то сообщение будет выдано только один раз. По умолчанию false.
timeout - задержка вывода сообщения в секундах. По умолчанию - 0.
showtime - время показа сообщения на экране. Задаётся в милисекундах. По умолчанию - 5000.
Структура:
Код
[sr_tip] name = rad_barman_spam type = tips cond = {+bar_deactivate_radar_done} sender = barman showtime = 25000
Файл: gamedata\scripts\sr_tip.script
Логике, которая включает или выключает фонарики в рестрикторе у НПС
Структура:
Код
[sr_light] light_on = true/false
Файл: gamedata\scripts\sr_light.script
Занимается эта схема тем, что отлавливает всякие события, происходящие внутри рестриктора. Пока что она отлавливает только хиты и смерть NPC. Но поскольку схема работает только с игроком – то хиты и смерть засчитываются только от игрока.
Параметры:
territory_hit = {+info -info =func !func ~number} %+info -info =func% - эффекты, которые произойдут при нанесении хита от актора, будучи в этой зоне.
territory_death = {+info -info =func !func ~number} %+info -info =func% - эффекты, которые произойдут при смерти от "рук" актора, будучи в этой зоне.
Структура:
Код
[logic] active = sr_territory
[sr_territory] territory_death = nil %+info%
Файл: gamedata\scripts\sr_territory.script
При входе в рестриктор он сам себя подсвечивает на карте.
Параметры:
hint - строка с id текста зарегистрированного в папке gamedata\config\text.
location - имя типа метки, зарегистрированное в файле config\ui\map_spots.xml и всех, что в него включены include. По умолчанию - crlc_small.
Структура:
Код
[sr_mapspot] hint = gar_swamp location = crcl_big
Файл: gamedata\scripts\sr_mapspot.script
Данная система отыгрывает партиклы, как статичные, так и движущиеся, в указанном месте и в указанное время. Данная схема отслеживающим партиклы и нет никакой необходимости чтобы игрок в него заходил.
Параметры:
name - путь до партикла относительно файла particles.xr.
path - точки движения партикла. Возможны два случая:
Когда указывается путь анимации камеры (путь учитывается относительно папки gamedata\anims). Для имени файла необходимо ставить расширение .anm (например arena.anm).
Когда указывается имя патрульного пути.
mode - параметр обязательный и имеет два значения:
1 - устанавливается в случае указания анимации камеры для параметра path;
2 - устанавливается в случае указания патрульного пути для параметра path.
looped = true/false - флаг зацикленности партиклов. При true, по окончании проигрывания партиклов, они будут запускаться сначала, но уже без задержек. Но сигнал particle_end выдаваться не будет. При false сигнал будет выдан, когда все источники партиклов отыграют.
В вейпоинтах патрульного пути можно задавать флаги:
s- звук проигрываемый во время движения;
d - время задержки перед проигрыванием, задается в миллисекундах. По умолчанию - 0.
Структура:
Код
[logic] active = sr_particle
[sr_particle] name = anomaly2\gravity_blast_03 path = путь mode = 2 looped = false on_signal = particle_end | nil
Файл: gamedata\scripts\sr_particle.script
Схема играет звук в голове актера. Всякие там переговоры по ПДА и прочие фейки. Если указывается тема, то звук будет играть зациклено, случайным образом выбирая один из звуков прописанных в теме, если указывается звук, то он отыгрывается один раз.
Параметры:
snd - имя звукового файла относительно папки gamedata\sounds.
delay - задержка перед проигрыванием. По умолчанию - 0.
delay_max - между проигрыванием звука будет взят случайный промежуток между
delay и delay_max.
theme - имя темы из файла sound_theme.script.
stereo = true/false - при установке этого параметра к файлу, который задан параметром
snd или в звуковой теме, автоматически будут добавляться суффиксы _r и _l для загрузки левого и правого каналов и, соответственно, всё это будет проигрываться.
Схема использовать для производства каких либо действий в зависимости от состояния таймера.
Параметры:
type - тип счётчика.
dec - декриментирующий, т.е. обратный отсчёт;
inc - инрементирующий, т.е. отчёт по возрастанию.
start_value - начальное значение счетчика в реальных миллисекундах.
Для декриментирующих счетчиков задавать обязательно. Для инкриментирующих, если не задано, то считается с 0.
on_value = число | %+info -info =func% секция - производит действие в зависимости от состояния счётчика.
string - строка с id текста зарегистрированного в папке gamedata\config\text.
Структура:
Код
[logic] active = sr_timer
[sr_timer] type = dec start_value = 1000000 on_value = 5 | %=play_snd(characters_voice\scenario\radar\rad_hat_2)% | 0 | nil %=aes_kill_actor% string = st_helmet_countdown
Файл: gamedata\scripts\sr_timer.script
Зоны с такой секцией позволяют управлять эффектами от пси-воздействия (на Янтаре и Радаре). Сейчас можно управлять интенсивностью излучения и интенсивностью получения повреждений.
Параметры:
eff_intensity - увеличение/уменьшение в процентах от базового значения интенсивности излучения.
hit_intensity - увеличение/уменьшение в процентах от базового значения наносимого повреждения.
phantom_prob - вероятность проявления фантомов в процентах. По умолчанию - 0.
postprocess - файл постэффекта, относительно папки gamedata\anims. Расширение ставить обязательно! По умолчанию - psy_antenna.ppe.
mute_sound_threshold - предел до которого можно занижать звук уровня. 0 - глушит полностью, стоит по умолчанию.
Эта схема предназначена для проведения анимации камеры c некоторым эффектом (pp_effector). Последовательность действий, осуществляемых схемой, состоит из мгновенного перемещения игрока в начало пути point и ориентации его взгляда на начало пути look, потери управления игроком и начала анимации камеры cam_effector по завершении которой игрок вновь получает управление.
Параметры:
point - путь в первую точку которого переносится игрок.
look - путь в первую точку которого смотрит игрок.
pp_effector - файл, расположенный в папке gamedata\anims\ и содержащий эффект (имя файла пишется без расширения).
cam_effector - файл, расположенный в папке gamedata\anims\camera_effects\ и содержащий анимацию камеры (имя файла пишется без расширения).
Информация с уникальным именем в виде текста на английском языке. Пример: infoportion
Работы в логике:
Цитата
on_info = {+infoportion} - ГГ имеет этот инфопоршень? on_info = %+infoportion% - даем ГГ этот инфопоршень. on_info = {-infoportion} - у ГГ нет этого инфопоршня. on_game_timer = 25 | %+infoportion% - тоже самое с таймером.
В проценты %±=% заключаются прямые действия. В скобках {±=!} проверки на выполнение действия.
Знак «=» значит, что действие однозначно происходит. Знак «!» значит, что требуется проверка истины.
Работы со сквадами:
Цитата
on_info = %=kill_squad(stalker_squad)% - убиваем сквад с этим id. on_info = %=create_squad(stalker_squad:smart_terrain)% - спавним сквад в определенном торрейне. on_info = %=set_squad_enemy_to_actor(stalker_squad)% - этот сквад готов убить ГГ. on_info = %=remove_squad(stalker_squad)% - сквад с этим id покидает игру. on_info = %=clear_smart_terrain(smart_terrain)% - все живые существа в этом торрейне покинут игру. on_info = %=set_squads_enemies(stalker_squad:bandit_squad)% - травим сквады валить друг друга. on_info = %=teleport_squad(stalker_squad:teleport_squad_walk)% - телепортирует сквад на точку walk. on_info = %=inc_faction_goodwill_to_actor(killer:5000)% - наемники обожают ГГ. on_info = %=dec_faction_goodwill_to_actor(stalker:5000) - сталкеры ненавидят ГГ.
Работы для ГГ:
Цитата
on_info = {=actor_on_level(jupiter)} - ГГ на локации Юпитер. on_info = %=teleport_actor(actor_teleport_walk:actor_teleport_look) - посылаем ГГ на точку walk лицом в look. on_info = %=disable_ui% - пускаем пустой экран, ГГ нейтрализован. on_info = %=enable_ui% - ГГ вновь в игре. on_info = %=run_postprocess(black:3009:true)% - черный экран навечно. on_info = %=stop_postprocess(3009)% - убираем черный экран. on_info = %=activate_weapon(wpn_spas12)% - принуждаем ГГ достать это оружие, если оно, конечно, есть у него. on_info = %=remove_item(wpn_spas12)% - отнимаем у ГГ этот предмет. on_info = %=run_postprocess(fade_in)% - создаем эффект динамического перехода по локации. on_info = %=activate_weapon_slot(2)% - ГГ достает оружие из этого слота. on_info = %=actor_punch% - даем по морде ГГ. on_info = %=spawn_object_in(items_object:actor)% - даем ГГ этот предмет, или ещё кому, главное id указать. Также она работает с тайниками. on_info = %=give_item(vodka_script:actor)% - даем ГГ эту водку. on_info = %=eat_vodka_script% - и он ее выпивает. Только так.
Работы с проверкой:
Цитата
on_info = {=actor_has_item(wpn_spas12)} - у ГГ есть это оружие. on_info = {!actor_has_item(wpn_spas12)} - у ГГ нет этого оружия. on_info = {=actor_in_zone(state_space_restrictor)} - ГГ в этом рестрикторе. on_info = {=dist_to_actor_ge(30)} - ГГ вышел за условный радиус рестриктора 30. on_info = {=dist_to_actor_le(30)} - ГГ вошел в условный радиус рестриктора 30.
Прочие работы:
Цитата
on_info = %=give_task(new_mission_stalker)% - выдаем это задание из tm. on_info = %=scenario_autosave(st_save_stalker)% - сохраняем игру с этим именем в text. on_info = %=spawn_object(wpn_rpg7:spawn_rpg_walk)% - спавн любого физического объекта в точке walk. on_info = %=barrel_explode(pri_a25_antenna_grenade)% - можно взорвать только этот объект, заспавним его с помощью предыдущей функции. on_info = %=set_game_time(21:00)% - принудительно устанавлием время в игре. on_info = %=set_weather(default_thunder:true)% - запускает определённую погоду, требуется постоянная активация. on_info = %=run_tutorial(outro_game)% - конец игры, пускаем интроролики. on_info = %=give_treasure(pri_hiding_place_30)% - выдаём местонахождение тайника из файлов secret.
IP-адрес: Страна: Российская Федерация Город: Москва Дата регистрации: 25.10.2014
zat_b14_give_artefact_idle ;стоя рулим(Я так понял, что этот анимпоинт связан с баржей на затоне) zat_b14_give_artefact_act ;стоя поворачиваем руль zat_b38_stalker_break_lock ;чиним замок zat_b38_stalker_turn_on_lift ;открываем лифт и спускаемся вниз по лестнице zat_b38_stalker_jump_tonnel ;прыгаем в люк zat_b38_stalker_alert ;идет как бандит, а потом оглядывается и вскидывает оружие zat_b20_noah_jump ;отходим и прыгаем с разбега pri_a17_ice_climb ;вверх по лестнице pri_a17_fall_down ;попали в человека и он упал pri_a17_pray_in ;идет на тебя и по моему посылает pri_a17_pray ;идет на тебя и по моему посылает (много раз) zat_b22_medic_turn_idle ;анимация Тремора у себя в убещище zat_b22_medic_turn_out ;отворачиваемся от стола zat_b22_medic_suicide ;суицид zat_b3_tech_drunk ;спит (Кардан) zat_b3_tech_drink ;выпиваем водочки (Кардан) zat_b3_tech_idle ;сидит на стуле (Кардан) zat_b3_tech_surprise ;заснул сидя (Кардан) give_orders ;оглядываемся по сторонам и посылаем на две стороны чуваков bloodsucker_search ;оглядываемся по сторонам bloodsucker_panic ;от бедра стреляем jup_b10_drunk_ravings ;спим сидя pas_b400_vano_probe ;тыкаем в детекторе что то pri_a28_kirillov_sit_high_radio ;сидим высоко и ковыряемся в радио pri_a18_inspert_monolit_actor ;идем и оглядываем все вокруг pri_a20_colonel_radio ;стоим оперевшись об стол и смотря в комп/радио pri_a21_sentry_madness ;стоим и отстреливаемся по кругу pri_a21_sentry_madness_suicide ;отстреливаемся и потом суицид pri_a28_army_trance_out ;Совсем не понятно zat_b106_wounded_idle ;лежит на кровати (Краб) zat_b38_cop_dead ;Прикидываемся трупом jup_b15_zulus_sit_drink ;сидим в позе Зулуса и пьем водку jup_b15_zulus_sit_idle ;сидим в позе Зулуса jup_b15_zulus_sit_out ;слазим со стола jup_b219_actor_one ;оружие на плечо и смотрим jup_b219_azot_all ;стоим бьем кулаком по столу, указываем в стол zat_b100_heli_2_serch ;сидим и тыкаем в ПДА пальцем jup_b217_guide_stand ;оглядываемся потихоньку и идем к точке jup_b217_nitro_stand ;стоим у стены боком jup_b41_novikov_stand ;руки в кармане и стоим pri_b305_actor ;идем прямо потом крадемся вправо наставляем ногу на ящик и пушкой смотрим туда jup_a9_cam2_actor ;чуть чуть наклонились и рассматриваем что то pri_a25_psy_medic_idle ;пси-раненый pri_a25_psy_medic_out ;выход из пси-ранения
Ходячие:
Цитата
walk ;Идет с оружием в руках walk_noweap ;Идет без оружия run ;Бежит с оружием в руках sprint ;быстро бежит (а-ля сталкер Вобла с артом) без оружия\не прицеливаясь patrol ;идет прицеливаясь patrol_fire ;идет стреляя raid ;крадется прицеливаясь raid_fire ;идет стреляя sneak ;идет в приясяди прицеливаясь sneak_run ;идет в присяди с оружием в руках sneak_no_wpn ;крадется в присяде без оружия sneak_fire ;идет в присяде стрееляя assault ;полубежит, с оружием на -готове assault_fire ;полубежит стреляя rush ;бежит с оружием
Стоячие:
Цитата
wait ;просто стоит wait_trade ;просто стоит руки опущены wait_na ;просто стоит guard ;просто стоит в руках оружие guard_chasovoy ;куда-то смотрит прикладывает руку колбу guard_na ;просто стоит с оружием guard_fire ;стоя ведёт огонь threat ;нацеливает оружие threat_danger ;в панике смотрит по сторонам give_orders ;стоит нацелившись threat_heli ;нацеливает оружие на небо threat_na ;нацеливает оружие threat_fire ;нацеливает оружие стреляя threat_sniper_fire ;стреляет стоя одиночными hide ;целится с колена ожидая отаки hide_na ;присев на одно колено стреляет hide_fire ;полуприсев целится и стреляет hide_sniper_fire ;стреляет стоя одиночными с колена caution ;слегка согнувшись, что-то внимательно высматривает на земле, руки прикладывает к коленям choose ;что-то высматривает: оглядывается по сторонам press ;указывает пальцем ward ;руки за спиной, голова наклонена вниз ward_short ;руки за спиной, голова наклонена вниз ward_noweap ;руки за спиной, голова наклонена вниз ward_noweap_short ;руки за спиной, голова наклонена вниз fold_arms ;стоит руки в локтях согнуты search ;встает на колени или на корточки и начинает что-то искать stoop_no_weap ;полусогнувшись руки на коленях чтото осматривает salut ;встает в позицию «смирно» salut_free ;переходит в позицию «вольно» prisoner ;пленный hide_no_wpn ;на одном колене руки на земле
Сидячие и лежачие:
Цитата
sit ;Сидит на присядках sit_knee ;Сидит полубоком sit_ass ;Сидит на заднице play_guitar ;играет на гармошке play_harmonica ;играет на гитаре sleep ;спит hello ;машет одной рукой над головой hello_wpn ;одной рукой машет refuse ;непись пожимает плечами claim НПС ;подзывает ГГ рукой целчсь в ГГ backoff ;Непись начинает махать стволом в разные стороны – типа убери ствол backoff2 ;Непись начинает махать стволом в разные стороны – типа убери ствол punch ;анимка удара рукой (или прикладом) search_corpse ;в панике согнув колено help_wounded ;полуприсев dynamite ;закладка динамита binocular ;смотрит в бинокль hide_rac ;сидит с рацией wait_rac ;??????????? wait_rac_noweap ;??????????? wait_rac_stc ;??????????? guard_rac ;достает рацию probe_stand ;сканирует стоя probe_stand_detector_advanced ;сканирует стоя probe_stand_detector_elite ;сканирует стоя probe_way ;??????????? probe_way_detector_advanced ;??????????? probe_way_detector_elite ;??????????? probe_crouch ;??????????? probe_crouch_detector_advanced ;??????????? probe_crouch_detector_elite ;??????????? scaner_stand ;сканирует стоя scaner_way ;??????????? scaner_crouch ;сканирует с колена hands_up ;стоит руки вверх
IP-адрес: Страна: Российская Федерация Город: Москва Дата регистрации: 25.10.2014