Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
mole venomous 3 394 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 2 минуты назад, Hind сказал: Настройки в state поменял на {1,2,3} и всё равно Загрузка состояний данного гулага: Скрытый текст if type == "esc_blokpost" then return function (gulag) local actor = db.actor if not actor then return gulag.state end for k,v in pairs(gulag.Object) do if v ~= true and v:best_enemy() ~= nil then gulag.alarm_start = game.get_game_time() actor:give_info_portion("esc_blockpost_alarm") return 2 -- тревога end end if gulag.alarm_start == nil or game.get_game_time():diffSec(gulag.alarm_start) > 300 then if level.get_time_hours() >= 6 and level.get_time_hours() <= 22 then actor:give_info_portion("esc_blockpost_normal") return 0 -- день else return 1 -- ночь end else return 2 end end end Там вообще нет состояния "3" 4 минуты назад, Hind сказал: walk waypoint - wp00 4 минуты назад, Hind сказал: не останавливаются на пост Ну ещё бы. 1 Здесь могла быть ваша реклама. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @mole venomous сделал как ты сказал "полигон". Назвал его "esc_hind" прописал в gulag_escape.ltx и .script Написал следующее: Скрытый текст [logic@esc_hind_guard1] active = walker@esc_hind_ward1 [walker@esc_hind_ward1] path_walk = ward_walk1 path_look = ward_look1 Скрытый текст if type == "esc_hind" then t = { section = "logic@esc_hind_ward1", idle = 0, prior = 1, state = {0, 1}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } end end В редакторе поставил одного единственного непися, и два вейпоинта - esc_hind_ward_walk1, esc_hind_ward_look1. В esc_hind_ward_walk1 вписал следующее: wp00|t=15000|p=100|a=sit_ass (т.е. при работе сидит с анимкой ~15 секунд со 100% вероятностью) В esc_hind_ward_look1: wp00|t=15000|p=100 Запускаю - и этот чувак просто идёт куда угодно, но не выполняет работу. Hind Upgrade Mod Ссылка на комментарий
mole venomous 3 394 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 Я правильно понял, ты создал тест-смарт? Его нужно "подключить" в ф-иях "load_states(gname, type)" и checkStalker(npc_community, gulag_type, npc_rank, se_obj), подобно остальным и в зависимости от твоих "предпочтений". 1 Здесь могла быть ваша реклама. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @mole venomousизвиняюсь, а как? Hind Upgrade Mod Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Hind по примеру с другими, например: Скрытый текст function load_states(gname, type) if type == "bar_camp_1" then return function(gulag) if db.actor ~= nil then if ( level.get_time_hours() >= 5 and level.get_time_hours() <= 22 ) then return 0 -- день else return 1 -- ночь end else return gulag.state end end end function checkStalker(npc_community, gulag_type) if gulag_type == "bar_camp_1" then return npc_community == "stalker" end ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
mole venomous 3 394 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 (изменено) 12 минут назад, Hind сказал: а как? Скрытый текст 21 минуту назад, mole venomous сказал: подобно остальным На примере гулага "esc_blokpost". В скрипте конструкция == "esc_blokpost" встречается трижды. 1 - собственно, разбор работ Скрытый текст if type == "esc_blokpost" then t = { section = "logic@esc_blockpost_patrol1", idle = 0, prior = 8, state = {0}, position_threshold = 100, online = true, in_rest = "", out_rest = "esc_blockpost_patrol_restrictor" } ... 2 - загрузка состояний Скрытый текст if type == "esc_blokpost" then return function (gulag) local actor = db.actor if not actor then return gulag.state end for k,v in pairs(gulag.Object) do if v ~= true and v:best_enemy() ~= nil then gulag.alarm_start = game.get_game_time() actor:give_info_portion("esc_blockpost_alarm") return 2 -- тревога end end if gulag.alarm_start == nil or game.get_game_time():diffSec(gulag.alarm_start) > 300 then if level.get_time_hours() >= 6 and level.get_time_hours() <= 22 then actor:give_info_portion("esc_blockpost_normal") return 0 -- день else return 1 -- ночь end else return 2 end end end Но тебе такой сложный код для практики сейчас не нужен. Возьми попроще, например: if type == "you_gulag" then return function(gulag) return 0 end end 3 - коммьюнити Скрытый текст if gulag_type == "esc_blokpost" then return npc_community == "military" end Изменено 16 Октября 2022 пользователем mole venomous Здесь могла быть ваша реклама. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @mole venomous Присобачил в gulag_general.script Скрытый текст function load_states(gname, type) if type == "general_lager" then return function(gulag) if gulag.state == 0 then if gulag.population_comed == 0 then return 0 end if xr_logic.pick_section_from_condlist(db.actor, gulag.smrttrn, gulag.state_switch_1) ~= nil then --level.map_add_object_spot(gulag.smrttrn.id, "alife_presentation_smart_ready", "Ready") return 1 end return 0 elseif gulag.state == 1 then if gulag.population_comed == 0 then return 0 end if xr_logic.pick_section_from_condlist(db.actor, gulag.smrttrn, gulag.state_switch_0) ~= nil then --level.map_remove_object_spot(gulag.smrttrn.id, "alife_presentation_smart_ready") return 0 end return 1 end end end if type == "general_lair" then return function(gulag) if gulag.state == 0 then if gulag.population_comed == 0 then return 0 end if xr_logic.pick_section_from_condlist(db.actor, gulag.object, gulag.state_switch_1) ~= nil then --level.map_add_object_spot(gulag.smrttrn.id, "alife_presentation_smart_ready", "Ready") return 1 end return 0 elseif gulag.state == 1 then if gulag.population_comed == 0 then return 0 end if xr_logic.pick_section_from_condlist(db.actor, gulag.object, gulag.state_switch_0) ~= nil then --level.map_remove_object_spot(gulag.smrttrn.id, "alife_presentation_smart_ready") return 0 end return 1 end end end if type == "esc_hind" then return function(gulag) if db.actor ~= nil then if ( level.get_time_hours() >= 5 and level.get_time_hours() <= 22 ) then return 0 -- день else return 1 -- ночь end else return gulag.state end end end end function checkStalker(npc_community, type, npc_rank, se_obj, preset_name) return type == "general_lager" if gulag_type == "esc_hind" then return npc_community == "military" end end Логику чутка подправил: Скрытый текст [logic@esc_hind_ward1] active = guard@esc_hind_ward1 [guard@esc_hind_ward1] path_walk = guard_1_walk path_look = guard_1_look И скрипт тоже: Скрытый текст if type == "esc_hind" then t = { section = "logic@esc_hind_ward1", idle = 0, prior = 1, state = {0,1}, position_threshold = 100, online = true, in_rest = "", out_rest = "" } end end А всё равно непись не хочет идти на точку и сесть.. Идёт куда не надо. Hind Upgrade Mod Ссылка на комментарий
Купер 2 845 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Norman Eisenherz , именно так. Разные символы окончания строки в Unix и Windows форматах. Unix: Windows: При попытке открытия файла стандартным Win Блокнотом (в старых ОС, за Win10+ не скажу, не знаю): Он просто не понимает unix формат. Т.е., "... всё сплошняком идёт" (c). А регулярка меняет формат unix на формат window: \n -> \r\n при условии, что это уже не \r\n. Ссылка на комментарий
mole venomous 3 394 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Hind , добавляй в скрипте gulag_escape.script В ф-ию load_job Скрытый текст В load_states Скрытый текст В checkStalker Скрытый текст Если всё остальное сделано правильно, но опять не работает, значит, всё таки пора отложить на завтра не всё правильно... 1 Здесь могла быть ваша реклама. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @mole venomousне робит.. Может дело в алл спавне? walk вейпоинт я поставил флажком 0 и wp00. look вейпоинт я поставил так же. Непися разместил в "смарт террейне" (внутри сферы) Интересное наблюдение: в логике (.ltx) если: Скрытый текст [logic@esc_hind_ward1] active = walker@esc_hind_ward1 [walker@esc_hind_ward1] path_walk = ward_walk1 -- поставить без esc_hind (чтобы вышло полное название вейпоинта) path_look = ward_look1 -- поставить без esc_hind (чтобы вышло полное название вейпоинта) То непись пойдет влево (в ту сторону где находится вейпоинт) А если написать полностью: [logic@esc_hind_ward1] active = walker@esc_hind_ward1 [walker@esc_hind_ward1] path_walk = esc_hind_ward_walk1 path_look = esc_hind_ward_look1 То непись пойдет в правую сторону. Hind Upgrade Mod Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Hind покажи настройки вэйпоинтов. Вообще лучше ещё глянуть правильно ли ты скрипт оформил, есть программа - script Syntax Checker, проверь ей. ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Houdini_one Фоточкии настроек Hind Upgrade Mod Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Hind тут всё правильно. Скрипт покажи. ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Houdini_one Скрытый текст local t = {} function load_job(sj, gname, type, squad, groups) --'-------------------------------------------------------------------------- --' ESCAPE --'-------------------------------------------------------------------------- if type == "esc_hind" then t = { section = "logic@esc_hind_ward1", idle = 0, prior = 1, state = {0,1}, position_threshold = 100, online = true, in_rest = "", out_rest = "" } end -- Test 34 --' Escape blockpost if type == "esc_blokpost" then t = { section = "logic@esc_blockpost_patrol_yard", idle = 0, prior = 1, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_watch_tv1", idle = 0, prior = 1, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_watch_tv2", idle = 0, prior = 1, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_kamp1", idle = 0, prior = 6, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_kamp1", idle = 0, prior = 5, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_kamp2", idle = 0, prior = 4, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone", predicate = function(obj_info) return obj_info.name == "esc_blokpost_commander" or "esc_jawa" or "esc_kobelcev" or "esc_shamtkov" or "esc_melnik" or "esc_dumko" or "esc_grachov" or "esc_borisenkov" or "esc_boroday" or "esc_bondarenko" end } table.insert(sj, t) t = { section = "logic@esc_blockpost_comander_guard1", idle = 0, prior = 3, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_comander_guard2", idle = 0, prior = 2, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_camper1", idle = 0, prior = 7, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_camper2", idle = 0, prior = 0, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blokpost_kpp_guard2", idle = 0, prior = 0, state = {0,1,2}, position_threshold = 100000, online = true, in_rest = "", out_rest = "escape_blockpost_zone" predicate = function(obj_info) return obj_info.name == "esc_blokpost_commander" or "esc_jawa" or "esc_kobelcev" or "esc_shamtkov" or "esc_melnik" or "esc_dumko" or "esc_grachov" or "esc_borisenkov" or "esc_boroday" or "esc_bondarenko" end } table.insert(sj, t) t = { section = "logic@esc_blokpost_kpp2_guard3", idle = 0, prior = 0, state = {0,1,2}, position_threshold = 100000, online = true, in_rest = "", out_rest = "escape_blockpost_zone" predicate = function(obj_info) return obj_info.name == "esc_blokpost_commander" or "esc_jawa" or "esc_kobelcev" or "esc_shamtkov" or "esc_melnik" or "esc_dumko" or "esc_grachov" or "esc_borisenkov" or "esc_boroday" or "esc_bondarenko" end } table.insert(sj, t) end t = { section = "logic@esc_blokpost_kazarma_guard1", idle = 0, prior = 0, state = {0,1,2}, position_threshold = 100000, online = true, in_rest = "", out_rest = "escape_blockpost_zone" predicate = function(obj_info) return obj_info.name == "esc_blokpost_commander" or "esc_jawa" or "esc_kobelcev" or "esc_shamtkov" or "esc_melnik" or "esc_dumko" or "esc_grachov" or "esc_borisenkov" or "esc_boroday" or "esc_bondarenko" end } table.insert(sj, t) end end --' Спецназ на блокпосте if type == "esc_specnaz" then t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_raid1", idle = 0, prior = 10, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_raid2", idle = 0, prior = 10, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_follower1", idle = 0, prior = 7, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_follower2", idle = 0, prior = 7, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_follower3", idle = 0, prior = 7, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_follower4", idle = 0, prior = 7, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end --' Лагерь новичков на Escape if type == "esc_lager" then -- охранники t = { section = "logic@esc_lager_zoneguard1", idle = 0, prior = 9, state = {0, 1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", } table.insert(sj, t) t = { section = "logic@esc_lager_zoneguard2", idle = 0, prior = 9, state = {0, 1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", } table.insert(sj, t) t = { section = "logic@esc_lager_walker3", idle = 0, prior = 8, state = {0, 1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_walker4", idle = 0, prior = 8, state = {0, 1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) -- у костра днём t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 6, state = {0}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 6, state = {0}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 6, state = {0}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) -- Волк, собственной персоной. t = { section = "logic@esc_lager_volk", idle = 0, prior = 16, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_wolf" end } table.insert(sj, t) -- Шустрый t = { section = "logic@esc_lager_shustryi", idle = 0, prior = 16, state = {0,1}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_shustryi" end } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 16, state = {2}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_shustryi" end } table.insert(sj, t) -- Фанат t = { section = "logic@esc_lager_fanat", idle = 0, prior = 16, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_fanat" end } table.insert(sj, t) -- спящие ночью t = { section = "logic@esc_lager_sleeper1", idle = 0, prior = 3, state = {1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_sleeper2", idle = 0, prior = 3, state = {1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 3, state = {1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) -- спящие ночью и днёи t = { section = "logic@esc_lager_sleeper5", idle = 0, prior = 5, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 0, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_sleeper7", idle = 0, prior = 0, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend1", idle = 0, prior = 15, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend2", idle = 0, prior = 14, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend3", idle = 0, prior = 13, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend4", idle = 0, prior = 12, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend5", idle = 0, prior = 11, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend6", idle = 0, prior = 10, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend7", idle = 0, prior = 9, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend8", idle = 0, prior = 8, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend9", idle = 0, prior = 16, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_lager_defend10", idle = 0, prior = 16, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.name == "esc_vagon_wounded" end } table.insert(sj, t) t = { section = "logic@esc_lager_defend11", idle = 0, prior = 5, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend12", idle = 0, prior = 20, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_fanat" end } table.insert(sj, t) t = { section = "logic@esc_lager_defend13", idle = 0, prior = 20, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_wolf" and not (has_alife_info("agroprom_military_case_have") and has_alife_info("esc_fanat_spawn")) end } table.insert(sj, t) end --' Бандиты на фабрике if type == "esc_fabrika_bandit" then -- часовые днём t = { section = "logic@esc_fabrika_bandit_walker1", idle = 0, prior = 2, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_fabrika_bandit_walker2", idle = 0, prior = 2, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_fabrika_bandit_walker3", idle = 0, prior = 2, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_fabrika_bandit_walker4", idle = 5, prior = 10, state = {0,2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor", redicate = function(obj_info) return obj_info.name == "esc_factory_prisoner_guard" end } table.insert(sj, t) -- сидящие у костра t = { section = "logic@esc_fabrika_bandit_kamp", idle = 0, prior = 1, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_fabrika_bandit_kamp", idle = 0, prior = 1, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) -- аларм t = { section = "camper@esc_fabrika_bandit_walker1", idle = 0, prior = 5, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker2", idle = 0, prior = 5, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker3", idle = 0, prior = 5, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) -- t = { section = "camper@esc_fabrika_bandit_walker4", -- idle = 0, -- prior = 5, state = {2}, -- in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" -- } -- table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker5", idle = 0, prior = 2, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker6", idle = 0, prior = 2, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker7", idle = 0, prior = 5, state = {0,2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) end --' Солдаты на мосту if type == "esc_bridge" then -- часовые днём t = { section = "logic@esc_bridge_post1", idle = 0, prior = 7, state = {0}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_post2", idle = 0, prior = 15, state = {0,1}, in_rest = "", out_rest = "escape_bridge_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_soldier_commander" end } table.insert(sj, t) t = { section = "logic@esc_bridge_post3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_post4", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_post5", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_post6", idle = 0, prior = 8, state = {0,1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_kamp1", idle = 0, prior = 2, state = {1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_kamp3", idle = 0, prior = 2, state = {1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_kamp4", idle = 0, prior = 2, state = {1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_patrol", idle = 0, prior = 5, state = {1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) end --' Наемники, атакующие новичков. if type == "esc_killers" then t = { section = "logic@esc_killer_leader_raid", idle = 0, prior = 10, state = {4}, in_rest = "", out_rest = "", online = true, predicate = function(obj_info) return obj_info.profile_name == "esc_killer_master" end } table.insert(sj, t) t = { section = "logic@esc_killer1_raid", idle = 0, prior = 8, state = {4}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer2_raid", idle = 0, prior = 8, state = {4}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer1_follower", idle = 0, prior = 7, state = {4}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) t = { section = "logic@esc_killer1_follower", idle = 0, prior = 7, state = {4}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) t = { section = "logic@esc_killer2_follower", idle = 0, prior = 7, state = {4}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) t = { section = "logic@esc_killer2_follower", idle = 0, prior = 7, state = {4}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 15, state = {1}, online = true, in_rest = "", out_rest = "esc_lager_guard_kill_zone", position_threshold = 400, predicate = function(obj_info) return obj_info.profile_name == "esc_killer_master" end } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 15, state = {2}, in_rest = "", out_rest = "", position_threshold = 400, predicate = function(obj_info) return obj_info.profile_name == "esc_killer_master" end } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 5, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 5, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 5, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 15, state = {3}, in_rest = "", out_rest = "", online = true, position_threshold = 400, predicate = function(obj_info) return obj_info.profile_name == "esc_killer_master" end } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 5, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_guard1", idle = 0, prior = 8, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_guard2", idle = 0, prior = 8, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_guard3", idle = 0, prior = 8, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_dogs_to_fox" then t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) end if type == "esc_dogs_swarm" then t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_boars_dogs" then t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_ambush" then t = { section = "logic@esc_ambush1", idle = 0, prior = 8, state = {0}, in_rest = "", out_rest = "esc_ambush_out_restrictor" } table.insert(sj, t) t = { section = "logic@esc_ambush2", idle = 0, prior = 8, state = {0}, in_rest = "", out_rest = "esc_ambush_out_restrictor" } table.insert(sj, t) end if type == "esc_corps" then t = { section = "logic@esc_corps_wounded", idle = 4, prior = 10, state = {0}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_vagon_wounded" end } table.insert(sj, t) t = { section = "logic@esc_corps_wounded", idle = 0, prior = 10, state = {1}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_vagon_wounded" end } table.insert(sj, t) end if type == "esc_assault" then t = { section = "logic@esc_assault1", idle = 0, prior = 8, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_assault2", idle = 0, prior = 9, state = {1}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault3", idle = 0, prior = 10, state = {1}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_assault1", idle = 0, prior = 8, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_assault2", idle = 0, prior = 9, state = {0}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault3", idle = 0, prior = 10, state = {0}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_assault_fight1", idle = 0, prior = 8, state = {2}, online = true, position_threshold = 100, in_rest = "", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_assault_fight2", idle = 0, prior = 9, state = {2}, online = true, position_threshold = 100, in_rest = "", out_rest = "esc_fabrika_bandit_space_restrictor", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault_fight3", idle = 0, prior = 10, state = {2}, online = true, position_threshold = 100, in_rest = "", out_rest = "esc_fabrika_bandit_space_restrictor", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_assault_home1", idle = 0, prior = 8, state = {3}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_assault_home2", idle = 0, prior = 9, state = {3}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault_home_leader", idle = 0, prior = 10, state = {3}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_assault_kamp", idle = 0, prior = 8, state = {4}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_assault_kamp", idle = 0, prior = 9, state = {4}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault_kamp", idle = 0, prior = 10, state = {4}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) end if type == "esc_zombie_1" then t = { section = "logic@esc_zombie_1_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_3_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_4_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_5_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_6_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_zombie_2" then t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_flesh_1" then t = { section = "logic@esc_flesh_1_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_flesh_1_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_flesh_1_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_flesh_2" then t = { section = "logic@esc_flesh_2_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_flesh_2_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_flesh_2_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_bridge_boar" then t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home1" then t = { section = "logic@esc_small_home1", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home1", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home2" then t = { section = "logic@esc_small_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home3" then t = { section = "logic@esc_small_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home4" then t = { section = "logic@esc_small_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home5" then t = { section = "logic@esc_small_home5", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home5", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home6" then t = { section = "logic@esc_small_home6", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home6", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_stalker_camp" then t = { section = "logic@esc_stalker_camp_provodnik", idle = 0, prior = 10, state = {0}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_provodnik" end } table.insert(sj, t) t = { section = "logic@esc_stalker_fox", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_fox" end } table.insert(sj, t) t = { section = "logic@esc_stalker_camp_provodnik", idle = 0, prior = 10, state = {1}, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_provodnik" end } table.insert(sj, t) t = { section = "logic@esc_stalker_camp1", idle = 0, prior = 8, state = {1}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_fox" end } table.insert(sj, t) end end function load_states(gname, type) if type == "esc_hind" then return function(gulag) if db.actor ~= nil then if ( level.get_time_hours() >= 5 and level.get_time_hours() <= 22 ) then return 0 -- день else return 1 -- ночь end else return gulag.state end end end if type == "esc_blokpost" then return function (gulag) local actor = db.actor if not actor then return gulag.state end for k,v in pairs(gulag.Object) do if v ~= true and v:best_enemy() ~= nil then gulag.alarm_start = game.get_game_time() actor:give_info_portion("esc_blockpost_alarm") return 2 -- тревога end end if gulag.alarm_start == nil or game.get_game_time():diffSec(gulag.alarm_start) > 300 then if level.get_time_hours() >= 6 and level.get_time_hours() <= 22 then actor:give_info_portion("esc_blockpost_normal") return 0 -- день else return 1 -- ночь end else return 2 end end end if type == "esc_lager" then return function(gulag) local actor = db.actor if not actor then return gulag.state end if has_alife_info("escape_lager_help") and has_alife_info("escape_lager_killers_die") then return 2 -- оборона лагеря elseif level.get_time_hours() >= 5 and level.get_time_hours() <= 22 then return 0 -- день else return 1 -- ночь end end end if type == "esc_bridge" then return function(gulag) if db.actor ~= nil then if ( level.get_time_hours() >= 5 and level.get_time_hours() <= 22 ) then return 0 -- день else return 1 -- ночь end else return gulag.state end end end if type == "esc_fabrika_bandit" then return function(gulag) for k,v in pairs(gulag.Object) do if v ~= true and v:best_enemy() ~= nil then gulag.alarm_start = game.get_game_time() return 2 -- тревога end end if gulag.alarm_start == nil or game.get_game_time():diffSec(gulag.alarm_start) > 300 then return 0 -- день else return 2 end end end if type == "esc_dogs_to_fox" then return function(gulag) local actor = db.actor if not has_alife_info("escape_stalker_dog_spawn") then return 0 -- оффлайн elseif (has_alife_info("escape_stalker_dog_spawn") and not has_alife_info("escape_stalker_done")) or has_alife_info("esc_dogs_return") then return 2 -- онлайн else return 1 -- атака end end end if type == "esc_specnaz" then return function(gulag) local actor = db.actor if has_alife_info("esc_raid1_start") then return 1 end return 0 end end if type == "esc_boars_dogs" then return function(gulag) if has_alife_info("tutorial_wounded_give_info") then return 1 else return 0 end end end if type == "esc_killers" then return function(gulag) local actor = db.actor if not actor then return gulag.state end if not has_alife_info("escape_lager_spawn_killers") then return 0 -- offline elseif has_alife_info("escape_lager_spawn_killers") and not has_alife_info("esc_killers_raid") then return 3 -- wait elseif has_alife_info("esc_killers_raid") and not has_alife_info("esc_open_killer_fire") then return 4 -- raid elseif has_alife_info("esc_open_killer_fire") and xr_gulag.getGulagPopulationComed("esc_lager") > 0 then return 1 -- fight elseif has_alife_info("esc_open_killer_fire") and xr_gulag.getGulagPopulationComed("esc_lager") <= 0 then return 2 -- kamp end return gulag.state end end if type == "esc_dogs_swarm" then return function(gulag) if game.get_game_time():diffSec(gulag.stateBegin) > 900 then if gulag.state == 0 then return 1 elseif gulag.state == 1 then return 2 elseif gulag.state == 2 then return 0 end else return gulag.state end end end if type == "esc_ambush" then return function(gulag) return 0 end end if type == "esc_corps" then return function(gulag) if has_alife_info("tutorial_wounded_start") then return 1 else return 0 end end end if type == "esc_zombie_1" then return function(gulag) return 0 end end if type == "esc_zombie_2" then return function(gulag) return 0 end end if type == "esc_flesh_1" then return function(gulag) return 0 end end if type == "esc_flesh_2" then return function(gulag) return 0 end end if type == "esc_bridge_boar" then return function(gulag) return 0 end end if type == "esc_small_home1" then return function(gulag) return 0 end end if type == "esc_small_home2" then return function(gulag) return 0 end end if type == "esc_small_home3" then return function(gulag) return 0 end end if type == "esc_small_home4" then return function(gulag) return 0 end end if type == "esc_small_home5" then return function(gulag) return 0 end end if type == "esc_small_home6" then return function(gulag) return 0 end end if type == "esc_stalker_camp" then return function(gulag) if has_alife_info("yan_provodnik_spawn") then return 1 else return 0 end end end if type == "esc_assault" then return function(gulag) if has_alife_info("esc_kill_bandits_quest_have") and not has_alife_info("esc_assault_start") then return 1 -- сидят у костра elseif has_alife_info("esc_assault_start") and not has_alife_info("esc_kill_bandits_quest_kill") then return 2 -- атакуют фабрику elseif has_alife_info("esc_kill_bandits_quest_kill") and (not has_alife_info("esc_kill_bandits_quest_done") or not has_alife_info("esc_petruha_great")) then return 3 -- идут домой elseif has_alife_info("esc_kill_bandits_quest_done") or has_alife_info("esc_petruha_great") then return 4 -- идут домой else return 0 -- сидят в оффлайне end end end end -------------------------------------------------------------------------- -- Dynamic ltx -------------------------------------------------------------------------- function load_ltx(gname, type) return nil end function checkStalker(npc_community, gulag_type, npc_rank, se_obj) if gulag_type == "esc_bridge" then return npc_community == "military" end if gulag_type == "esc_hind" then return npc_community == "military" end if gulag_type == "esc_specnaz" then return se_obj:profile_name() == "esc_soldier_specnaz" end if gulag_type == "esc_blokpost" then return npc_community == "military" end if gulag_type == "esc_killers" then return npc_community == "killer" end if gulag_type == "esc_lager" then return npc_community == "stalker" end if gulag_type == "esc_fabrika_bandit" then return npc_community == "bandit" end if gulag_type == "esc_ambush" then return npc_community == "bandit" end if gulag_type == "esc_corps" then return npc_community == "stalker" end if gulag_type == "esc_assault" then return npc_community == "stalker" end if gulag_type == "esc_stalker_camp" then return npc_community == "stalker" end return false end function checkMonster(npc_community, gulag_type) if gulag_type == "esc_dogs_to_fox" then return npc_community == "dog" end if gulag_type == "esc_dogs_swarm" then return npc_community == "dog" end if gulag_type == "esc_boars_dogs" then return npc_community == "dog" or npc_community == "boar" end if gulag_type == "esc_zombie_1" then return npc_community == "zombie" end if gulag_type == "esc_zombie_2" then return npc_community == "zombie" end if gulag_type == "esc_flesh_1" then return npc_community == "flesh" end if gulag_type == "esc_flesh_2" then return npc_community == "flesh" end if gulag_type == "esc_bridge_boar" then return npc_community == "boar" end if gulag_type == "esc_small_home1" then return npc_community == "boar" end if gulag_type == "esc_small_home2" then return npc_community == "boar" end if gulag_type == "esc_small_home3" then return npc_community == "dog" end if gulag_type == "esc_small_home4" then return npc_community == "dog" end if gulag_type == "esc_small_home5" then return npc_community == "dog" end if gulag_type == "esc_small_home6" then return npc_community == "flesh" end return false end Hind Upgrade Mod Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Hind Скрытый текст if type == "esc_hind" then t = { section = "logic@esc_hind_ward1", idle = 0, prior = 1, state = {0,1}, position_threshold = 100, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) -- ты забыл данную строчку end ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Houdini_one вот это я дал конечно Но не работает, всё так же он идёт куда хочет, но не на работу. Hind Upgrade Mod Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Hind ты сам смарт создал хоть? Скрытый текст local t = {} function load_job(sj, gname, type, squad, groups) --'-------------------------------------------------------------------------- --' ESCAPE --'-------------------------------------------------------------------------- if type == "esc_hind" then t = { section = "logic@esc_hind_ward1", idle = 0, prior = 1, state = {0,1}, position_threshold = 100, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end -- Test 34 --' Escape blockpost if type == "esc_blokpost" then t = { section = "logic@esc_blockpost_patrol_yard", idle = 0, prior = 1, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_watch_tv1", idle = 0, prior = 1, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_watch_tv2", idle = 0, prior = 1, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_kamp1", idle = 0, prior = 6, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_kamp1", idle = 0, prior = 5, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_kamp2", idle = 0, prior = 4, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone", predicate = function(obj_info) return obj_info.name == "esc_blokpost_commander" or "esc_jawa" or "esc_kobelcev" or "esc_shamtkov" or "esc_melnik" or "esc_dumko" or "esc_grachov" or "esc_borisenkov" or "esc_boroday" or "esc_bondarenko" end } table.insert(sj, t) t = { section = "logic@esc_blockpost_comander_guard1", idle = 0, prior = 3, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_comander_guard2", idle = 0, prior = 2, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_camper1", idle = 0, prior = 7, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blockpost_camper2", idle = 0, prior = 0, state = {0,1,2}, position_threshold = 100, online = true, in_rest = "", out_rest = "escape_blockpost_zone" } table.insert(sj, t) t = { section = "logic@esc_blokpost_kpp_guard2", idle = 0, prior = 0, state = {0,1,2}, position_threshold = 100000, online = true, in_rest = "", out_rest = "escape_blockpost_zone", predicate = function(obj_info) return obj_info.name == "esc_blokpost_commander" or "esc_jawa" or "esc_kobelcev" or "esc_shamtkov" or "esc_melnik" or "esc_dumko" or "esc_grachov" or "esc_borisenkov" or "esc_boroday" or "esc_bondarenko" end } table.insert(sj, t) t = { section = "logic@esc_blokpost_kpp2_guard3", idle = 0, prior = 0, state = {0,1,2}, position_threshold = 100000, online = true, in_rest = "", out_rest = "escape_blockpost_zone", predicate = function(obj_info) return obj_info.name == "esc_blokpost_commander" or "esc_jawa" or "esc_kobelcev" or "esc_shamtkov" or "esc_melnik" or "esc_dumko" or "esc_grachov" or "esc_borisenkov" or "esc_boroday" or "esc_bondarenko" end } table.insert(sj, t) end t = { section = "logic@esc_blokpost_kazarma_guard1", idle = 0, prior = 0, state = {0,1,2}, position_threshold = 100000, online = true, in_rest = "", out_rest = "escape_blockpost_zone", predicate = function(obj_info) return obj_info.name == "esc_blokpost_commander" or "esc_jawa" or "esc_kobelcev" or "esc_shamtkov" or "esc_melnik" or "esc_dumko" or "esc_grachov" or "esc_borisenkov" or "esc_boroday" or "esc_bondarenko" end } table.insert(sj, t) end --' Спецназ на блокпосте if type == "esc_specnaz" then t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_kamp", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_raid1", idle = 0, prior = 10, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_raid2", idle = 0, prior = 10, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_follower1", idle = 0, prior = 7, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_follower2", idle = 0, prior = 7, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_follower3", idle = 0, prior = 7, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_specnaz_follower4", idle = 0, prior = 7, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end --' Лагерь новичков на Escape if type == "esc_lager" then -- охранники t = { section = "logic@esc_lager_zoneguard1", idle = 0, prior = 9, state = {0, 1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", } table.insert(sj, t) t = { section = "logic@esc_lager_zoneguard2", idle = 0, prior = 9, state = {0, 1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", } table.insert(sj, t) t = { section = "logic@esc_lager_walker3", idle = 0, prior = 8, state = {0, 1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_walker4", idle = 0, prior = 8, state = {0, 1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) -- у костра днём t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 6, state = {0}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 6, state = {0}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 6, state = {0}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) -- Волк, собственной персоной. t = { section = "logic@esc_lager_volk", idle = 0, prior = 16, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_wolf" end } table.insert(sj, t) -- Шустрый t = { section = "logic@esc_lager_shustryi", idle = 0, prior = 16, state = {0,1}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_shustryi" end } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 16, state = {2}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_shustryi" end } table.insert(sj, t) -- Фанат t = { section = "logic@esc_lager_fanat", idle = 0, prior = 16, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_fanat" end } table.insert(sj, t) -- спящие ночью t = { section = "logic@esc_lager_sleeper1", idle = 0, prior = 3, state = {1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_sleeper2", idle = 0, prior = 3, state = {1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 3, state = {1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) -- спящие ночью и днёи t = { section = "logic@esc_lager_sleeper5", idle = 0, prior = 5, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_kamp1", idle = 0, prior = 0, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_sleeper7", idle = 0, prior = 0, state = {0,1}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend1", idle = 0, prior = 15, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend2", idle = 0, prior = 14, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend3", idle = 0, prior = 13, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend4", idle = 0, prior = 12, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend5", idle = 0, prior = 11, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend6", idle = 0, prior = 10, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend7", idle = 0, prior = 9, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend8", idle = 0, prior = 8, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend9", idle = 0, prior = 16, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_lager_defend10", idle = 0, prior = 16, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.name == "esc_vagon_wounded" end } table.insert(sj, t) t = { section = "logic@esc_lager_defend11", idle = 0, prior = 5, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_lager_defend12", idle = 0, prior = 20, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_fanat" end } table.insert(sj, t) t = { section = "logic@esc_lager_defend13", idle = 0, prior = 20, state = {2}, in_rest = "", out_rest = "esc_lager_guard_kill_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_wolf" and not (has_alife_info("agroprom_military_case_have") and has_alife_info("esc_fanat_spawn")) end } table.insert(sj, t) end --' Бандиты на фабрике if type == "esc_fabrika_bandit" then -- часовые днём t = { section = "logic@esc_fabrika_bandit_walker1", idle = 0, prior = 2, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_fabrika_bandit_walker2", idle = 0, prior = 2, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_fabrika_bandit_walker3", idle = 0, prior = 2, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_fabrika_bandit_walker4", idle = 5, prior = 10, state = {0,2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor", redicate = function(obj_info) return obj_info.name == "esc_factory_prisoner_guard" end } table.insert(sj, t) -- сидящие у костра t = { section = "logic@esc_fabrika_bandit_kamp", idle = 0, prior = 1, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_fabrika_bandit_kamp", idle = 0, prior = 1, state = {0}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) -- аларм t = { section = "camper@esc_fabrika_bandit_walker1", idle = 0, prior = 5, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker2", idle = 0, prior = 5, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker3", idle = 0, prior = 5, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) -- t = { section = "camper@esc_fabrika_bandit_walker4", -- idle = 0, -- prior = 5, state = {2}, -- in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" -- } -- table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker5", idle = 0, prior = 2, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker6", idle = 0, prior = 2, state = {2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "camper@esc_fabrika_bandit_walker7", idle = 0, prior = 5, state = {0,2}, in_rest = "esc_prison_zone", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) end --' Солдаты на мосту if type == "esc_bridge" then -- часовые днём t = { section = "logic@esc_bridge_post1", idle = 0, prior = 7, state = {0}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_post2", idle = 0, prior = 15, state = {0,1}, in_rest = "", out_rest = "escape_bridge_zone", predicate = function(obj_info) return obj_info.profile_name == "esc_soldier_commander" end } table.insert(sj, t) t = { section = "logic@esc_bridge_post3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_post4", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_post5", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_post6", idle = 0, prior = 8, state = {0,1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_kamp1", idle = 0, prior = 2, state = {1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_kamp3", idle = 0, prior = 2, state = {1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_kamp4", idle = 0, prior = 2, state = {1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) t = { section = "logic@esc_bridge_patrol", idle = 0, prior = 5, state = {1}, in_rest = "", out_rest = "escape_bridge_zone" } table.insert(sj, t) end --' Наемники, атакующие новичков. if type == "esc_killers" then t = { section = "logic@esc_killer_leader_raid", idle = 0, prior = 10, state = {4}, in_rest = "", out_rest = "", online = true, predicate = function(obj_info) return obj_info.profile_name == "esc_killer_master" end } table.insert(sj, t) t = { section = "logic@esc_killer1_raid", idle = 0, prior = 8, state = {4}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer2_raid", idle = 0, prior = 8, state = {4}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer1_follower", idle = 0, prior = 7, state = {4}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) t = { section = "logic@esc_killer1_follower", idle = 0, prior = 7, state = {4}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) t = { section = "logic@esc_killer2_follower", idle = 0, prior = 7, state = {4}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) t = { section = "logic@esc_killer2_follower", idle = 0, prior = 7, state = {4}, online = true, in_rest = "", out_rest = "", } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 15, state = {1}, online = true, in_rest = "", out_rest = "esc_lager_guard_kill_zone", position_threshold = 400, predicate = function(obj_info) return obj_info.profile_name == "esc_killer_master" end } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_fight", idle = 0, prior = 5, state = {1}, online = true, position_threshold = 400, in_rest = "", out_rest = "esc_lager_guard_kill_zone" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 15, state = {2}, in_rest = "", out_rest = "", position_threshold = 400, predicate = function(obj_info) return obj_info.profile_name == "esc_killer_master" end } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp", idle = 0, prior = 5, state = {2}, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 5, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 5, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 5, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 15, state = {3}, in_rest = "", out_rest = "", online = true, position_threshold = 400, predicate = function(obj_info) return obj_info.profile_name == "esc_killer_master" end } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_wait", idle = 0, prior = 5, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_guard1", idle = 0, prior = 8, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_guard2", idle = 0, prior = 8, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_guard3", idle = 0, prior = 8, state = {3}, online = true, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_killer_kamp_offline", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 400, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_dogs_to_fox" then t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {0}, online = false, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox_home", idle = 0, prior = 5, state = {2}, position_threshold = 100, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) t = { section = "logic@esc_dogs_to_fox", idle = 0, prior = 5, state = {1}, position_threshold = 100, in_rest = "", out_rest = "esc_dogs_fox_attack" } table.insert(sj, t) end if type == "esc_dogs_swarm" then t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm1", idle = 0, prior = 5, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm3", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_dogs_swarm2", idle = 0, prior = 5, state = {2}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_boars_dogs" then t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs_old", idle = 0, prior = 5, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_boars_dogs", idle = 0, prior = 5, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_ambush" then t = { section = "logic@esc_ambush1", idle = 0, prior = 8, state = {0}, in_rest = "", out_rest = "esc_ambush_out_restrictor" } table.insert(sj, t) t = { section = "logic@esc_ambush2", idle = 0, prior = 8, state = {0}, in_rest = "", out_rest = "esc_ambush_out_restrictor" } table.insert(sj, t) end if type == "esc_corps" then t = { section = "logic@esc_corps_wounded", idle = 4, prior = 10, state = {0}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_vagon_wounded" end } table.insert(sj, t) t = { section = "logic@esc_corps_wounded", idle = 0, prior = 10, state = {1}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_vagon_wounded" end } table.insert(sj, t) end if type == "esc_assault" then t = { section = "logic@esc_assault1", idle = 0, prior = 8, state = {1}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_assault2", idle = 0, prior = 9, state = {1}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault3", idle = 0, prior = 10, state = {1}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_assault1", idle = 0, prior = 8, state = {0}, online = false, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_assault2", idle = 0, prior = 9, state = {0}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault3", idle = 0, prior = 10, state = {0}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_assault_fight1", idle = 0, prior = 8, state = {2}, online = true, position_threshold = 100, in_rest = "", out_rest = "esc_fabrika_bandit_space_restrictor" } table.insert(sj, t) t = { section = "logic@esc_assault_fight2", idle = 0, prior = 9, state = {2}, online = true, position_threshold = 100, in_rest = "", out_rest = "esc_fabrika_bandit_space_restrictor", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault_fight3", idle = 0, prior = 10, state = {2}, online = true, position_threshold = 100, in_rest = "", out_rest = "esc_fabrika_bandit_space_restrictor", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_assault_home1", idle = 0, prior = 8, state = {3}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_assault_home2", idle = 0, prior = 9, state = {3}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault_home_leader", idle = 0, prior = 10, state = {3}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) t = { section = "logic@esc_assault_kamp", idle = 0, prior = 8, state = {4}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_assault_kamp", idle = 0, prior = 9, state = {4}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker2" end } table.insert(sj, t) t = { section = "logic@esc_assault_kamp", idle = 0, prior = 10, state = {4}, online = true, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.name == "esc_novice_attacker1" end } table.insert(sj, t) end if type == "esc_zombie_1" then t = { section = "logic@esc_zombie_1_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_3_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_4_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_5_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_6_fd", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_zombie_2" then t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_zombie_2_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_flesh_1" then t = { section = "logic@esc_flesh_1_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_flesh_1_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_flesh_1_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_flesh_2" then t = { section = "logic@esc_flesh_2_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_flesh_2_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_flesh_2_camp", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_bridge_boar" then t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_bridge_boar", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home1" then t = { section = "logic@esc_small_home1", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home1", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home2" then t = { section = "logic@esc_small_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home3" then t = { section = "logic@esc_small_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home4" then t = { section = "logic@esc_small_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home5" then t = { section = "logic@esc_small_home5", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home5", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_small_home6" then t = { section = "logic@esc_small_home6", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_small_home6", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end if type == "esc_stalker_camp" then t = { section = "logic@esc_stalker_camp_provodnik", idle = 0, prior = 10, state = {0}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_provodnik" end } table.insert(sj, t) t = { section = "logic@esc_stalker_fox", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_fox" end } table.insert(sj, t) t = { section = "logic@esc_stalker_camp_provodnik", idle = 0, prior = 10, state = {1}, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_provodnik" end } table.insert(sj, t) t = { section = "logic@esc_stalker_camp1", idle = 0, prior = 8, state = {1}, online = false, in_rest = "", out_rest = "", predicate = function(obj_info) return obj_info.profile_name == "esc_fox" end } table.insert(sj, t) end function load_states(gname, type) if type == "esc_hind" then return function(gulag) if db.actor ~= nil then if ( level.get_time_hours() >= 5 and level.get_time_hours() <= 22 ) then return 0 -- день else return 1 -- ночь end else return gulag.state end end end if type == "esc_blokpost" then return function (gulag) local actor = db.actor if not actor then return gulag.state end for k,v in pairs(gulag.Object) do if v ~= true and v:best_enemy() ~= nil then gulag.alarm_start = game.get_game_time() actor:give_info_portion("esc_blockpost_alarm") return 2 -- тревога end end if gulag.alarm_start == nil or game.get_game_time():diffSec(gulag.alarm_start) > 300 then if level.get_time_hours() >= 6 and level.get_time_hours() <= 22 then actor:give_info_portion("esc_blockpost_normal") return 0 -- день else return 1 -- ночь end else return 2 end end end if type == "esc_lager" then return function(gulag) local actor = db.actor if not actor then return gulag.state end if has_alife_info("escape_lager_help") and has_alife_info("escape_lager_killers_die") then return 2 -- оборона лагеря elseif level.get_time_hours() >= 5 and level.get_time_hours() <= 22 then return 0 -- день else return 1 -- ночь end end end if type == "esc_bridge" then return function(gulag) if db.actor ~= nil then if ( level.get_time_hours() >= 5 and level.get_time_hours() <= 22 ) then return 0 -- день else return 1 -- ночь end else return gulag.state end end end if type == "esc_fabrika_bandit" then return function(gulag) for k,v in pairs(gulag.Object) do if v ~= true and v:best_enemy() ~= nil then gulag.alarm_start = game.get_game_time() return 2 -- тревога end end if gulag.alarm_start == nil or game.get_game_time():diffSec(gulag.alarm_start) > 300 then return 0 -- день else return 2 end end end if type == "esc_dogs_to_fox" then return function(gulag) local actor = db.actor if not has_alife_info("escape_stalker_dog_spawn") then return 0 -- оффлайн elseif (has_alife_info("escape_stalker_dog_spawn") and not has_alife_info("escape_stalker_done")) or has_alife_info("esc_dogs_return") then return 2 -- онлайн else return 1 -- атака end end end if type == "esc_specnaz" then return function(gulag) local actor = db.actor if has_alife_info("esc_raid1_start") then return 1 end return 0 end end if type == "esc_boars_dogs" then return function(gulag) if has_alife_info("tutorial_wounded_give_info") then return 1 else return 0 end end end if type == "esc_killers" then return function(gulag) local actor = db.actor if not actor then return gulag.state end if not has_alife_info("escape_lager_spawn_killers") then return 0 -- offline elseif has_alife_info("escape_lager_spawn_killers") and not has_alife_info("esc_killers_raid") then return 3 -- wait elseif has_alife_info("esc_killers_raid") and not has_alife_info("esc_open_killer_fire") then return 4 -- raid elseif has_alife_info("esc_open_killer_fire") and xr_gulag.getGulagPopulationComed("esc_lager") > 0 then return 1 -- fight elseif has_alife_info("esc_open_killer_fire") and xr_gulag.getGulagPopulationComed("esc_lager") <= 0 then return 2 -- kamp end return gulag.state end end if type == "esc_dogs_swarm" then return function(gulag) if game.get_game_time():diffSec(gulag.stateBegin) > 900 then if gulag.state == 0 then return 1 elseif gulag.state == 1 then return 2 elseif gulag.state == 2 then return 0 end else return gulag.state end end end if type == "esc_ambush" then return function(gulag) return 0 end end if type == "esc_corps" then return function(gulag) if has_alife_info("tutorial_wounded_start") then return 1 else return 0 end end end if type == "esc_zombie_1" then return function(gulag) return 0 end end if type == "esc_zombie_2" then return function(gulag) return 0 end end if type == "esc_flesh_1" then return function(gulag) return 0 end end if type == "esc_flesh_2" then return function(gulag) return 0 end end if type == "esc_bridge_boar" then return function(gulag) return 0 end end if type == "esc_small_home1" then return function(gulag) return 0 end end if type == "esc_small_home2" then return function(gulag) return 0 end end if type == "esc_small_home3" then return function(gulag) return 0 end end if type == "esc_small_home4" then return function(gulag) return 0 end end if type == "esc_small_home5" then return function(gulag) return 0 end end if type == "esc_small_home6" then return function(gulag) return 0 end end if type == "esc_stalker_camp" then return function(gulag) if has_alife_info("yan_provodnik_spawn") then return 1 else return 0 end end end if type == "esc_assault" then return function(gulag) if has_alife_info("esc_kill_bandits_quest_have") and not has_alife_info("esc_assault_start") then return 1 -- сидят у костра elseif has_alife_info("esc_assault_start") and not has_alife_info("esc_kill_bandits_quest_kill") then return 2 -- атакуют фабрику elseif has_alife_info("esc_kill_bandits_quest_kill") and (not has_alife_info("esc_kill_bandits_quest_done") or not has_alife_info("esc_petruha_great")) then return 3 -- идут домой elseif has_alife_info("esc_kill_bandits_quest_done") or has_alife_info("esc_petruha_great") then return 4 -- идут домой else return 0 -- сидят в оффлайне end end end end -------------------------------------------------------------------------- -- Dynamic ltx -------------------------------------------------------------------------- function load_ltx(gname, type) return nil end function checkStalker(npc_community, gulag_type, npc_rank, se_obj) if gulag_type == "esc_bridge" then return npc_community == "military" end if gulag_type == "esc_hind" then return npc_community == "military" end if gulag_type == "esc_specnaz" then return se_obj:profile_name() == "esc_soldier_specnaz" end if gulag_type == "esc_blokpost" then return npc_community == "military" end if gulag_type == "esc_killers" then return npc_community == "killer" end if gulag_type == "esc_lager" then return npc_community == "stalker" end if gulag_type == "esc_fabrika_bandit" then return npc_community == "bandit" end if gulag_type == "esc_ambush" then return npc_community == "bandit" end if gulag_type == "esc_corps" then return npc_community == "stalker" end if gulag_type == "esc_assault" then return npc_community == "stalker" end if gulag_type == "esc_stalker_camp" then return npc_community == "stalker" end return false end function checkMonster(npc_community, gulag_type) if gulag_type == "esc_dogs_to_fox" then return npc_community == "dog" end if gulag_type == "esc_dogs_swarm" then return npc_community == "dog" end if gulag_type == "esc_boars_dogs" then return npc_community == "dog" or npc_community == "boar" end if gulag_type == "esc_zombie_1" then return npc_community == "zombie" end if gulag_type == "esc_zombie_2" then return npc_community == "zombie" end if gulag_type == "esc_flesh_1" then return npc_community == "flesh" end if gulag_type == "esc_flesh_2" then return npc_community == "flesh" end if gulag_type == "esc_bridge_boar" then return npc_community == "boar" end if gulag_type == "esc_small_home1" then return npc_community == "boar" end if gulag_type == "esc_small_home2" then return npc_community == "boar" end if gulag_type == "esc_small_home3" then return npc_community == "dog" end if gulag_type == "esc_small_home4" then return npc_community == "dog" end if gulag_type == "esc_small_home5" then return npc_community == "dog" end if gulag_type == "esc_small_home6" then return npc_community == "flesh" end return false end ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Houdini_oneда, сам. Вот кстати, заменил на твой текст и получил это: Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ...a.l.k.e.r. Тень Чернобыля\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value) Hind Upgrade Mod Ссылка на комментарий
imcrazyhoudini 208 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Hind покажи настройки смарта и логику нпс. ищу человека, который смог бы заняться разработкой погоды на OGSR. кто может помочь - пишите в ЛС. Ссылка на комментарий
Hind 29 Опубликовано 16 Октября 2022 Поделиться Опубликовано 16 Октября 2022 @Houdini_one Smart [smart_terrain] type = esc_hind capacity = 1 NPC [smart_terrains] esc_hind = true Hind Upgrade Mod Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти