add game&rawdata

This commit is contained in:
Vasily Petrov 2026-06-17 23:06:51 +03:00
parent 0133cd976c
commit 49b34b5546
45731 changed files with 709831 additions and 0 deletions

View file

@ -0,0 +1,237 @@
#include "pas_b400_general.ltx"
[logic@pas_b400_zulus_canalisation]
active = walker@zulus_canalisation_1
suitable = {=check_npc_name(pas_b400_zulus) -pas_b400_canalisation_done} true
prior = 200
on_hit = hit@zulus
on_death = death@zulus
post_combat_time = 0,0
[walker@zulus_canalisation_1]:walker@zulus_def
path_walk = zulus_1_walk
path_look = zulus_1_look
out_restr = pas_b400_sr_canalisation_1
combat_ignore_cond = {-pas_b400_canalisation_tushkano_attacked =check_enemy_name(tushkano)} true, false
on_info = {+pas_b400_sr_canalisation_2} walker@zulus_canalisation_2
[walker@zulus_canalisation_2]:walker@zulus_def
path_walk = zulus_2_walk
path_look = zulus_2_look
out_restr = pas_b400_sr_canalisation_2
combat_ignore_cond = {-pas_b400_canalisation_tushkano_attacked =check_enemy_name(tushkano)} true, false
on_info = {+pas_b400_sr_canalisation_3} walker@zulus_canalisation_3
[walker@zulus_canalisation_3]:walker@zulus_def
path_walk = zulus_3_walk
path_look = zulus_3_look
out_restr = pas_b400_sr_canalisation_3
on_info = {+pas_b400_sr_canalisation_2} walker@zulus_canalisation_2
on_info2 = {+pas_b400_sr_canalisation_4} walker@zulus_canalisation_4
[walker@zulus_canalisation_4]:walker@zulus_def
path_walk = zulus_4_walk
path_look = zulus_4_look
out_restr = pas_b400_sr_canalisation_4
on_info = {+pas_b400_sr_canalisation_3} walker@zulus_canalisation_3
on_info2 = {+pas_b400_sr_canalisation_5} walker@zulus_canalisation_5
[walker@zulus_canalisation_5]:walker@zulus_def
path_walk = zulus_5_walk
path_look = zulus_5_look
out_restr = pas_b400_sr_canalisation_5
on_info = {+pas_b400_sr_canalisation_4} walker@zulus_canalisation_4
on_info2 = {+pas_b400_sr_canalisation_6} walker@zulus_canalisation_6
on_info3 = {-pas_b400_zulus_about_exit_1 =npc_in_zone(pas_b400_sr_canalisation_5)} %+pas_b400_zulus_about_exit_1 =play_sound(pas_b400_zulus_about_exit_1)%
[walker@zulus_canalisation_6]:walker@zulus_def
path_walk = zulus_6_walk
path_look = zulus_6_look
out_restr = pas_b400_sr_canalisation_6
on_info = {+pas_b400_sr_canalisation_5} walker@zulus_canalisation_5
on_info2 = {+pas_b400_sr_canalisation_7} walker@zulus_canalisation_7
[walker@zulus_canalisation_7]:walker@zulus_def
path_walk = zulus_7_walk
path_look = zulus_7_look
out_restr = pas_b400_sr_canalisation_7
on_info = {+pas_b400_sr_canalisation_6} walker@zulus_canalisation_6
[logic@pas_b400_vano_canalisation]
active = walker@vano_canalisation_1
suitable = {=check_npc_name(pas_b400_vano) -pas_b400_canalisation_done} true
prior = 200
on_hit = hit@vano
on_death = death@vano
post_combat_time = 0,0
[walker@vano_canalisation_1]:walker@vano_def
path_walk = vano_1_walk
path_look = vano_1_look
out_restr = pas_b400_sr_canalisation_1
combat_ignore_cond = {-pas_b400_canalisation_tushkano_attacked =check_enemy_name(tushkano)} true, false
on_info = {+pas_b400_sr_canalisation_2} walker@vano_canalisation_2
[walker@vano_canalisation_2]:walker@vano_def
path_walk = vano_2_walk
path_look = vano_2_look
out_restr = pas_b400_sr_canalisation_2
combat_ignore_cond = {-pas_b400_canalisation_tushkano_attacked =check_enemy_name(tushkano)} true, false
on_info = {+pas_b400_sr_canalisation_3} walker@vano_canalisation_3
[walker@vano_canalisation_3]:walker@vano_def
path_walk = vano_3_walk
path_look = vano_3_look
out_restr = pas_b400_sr_canalisation_3
on_info = {+pas_b400_sr_canalisation_2} walker@vano_canalisation_2
on_info2 = {+pas_b400_sr_canalisation_4} walker@vano_canalisation_4
[walker@vano_canalisation_4]:walker@vano_def
path_walk = vano_4_walk
path_look = vano_4_look
out_restr = pas_b400_sr_canalisation_4
on_info = {+pas_b400_sr_canalisation_3} walker@vano_canalisation_3
on_info2 = {+pas_b400_sr_canalisation_5} walker@vano_canalisation_5
[walker@vano_canalisation_5]:walker@vano_def
path_walk = vano_5_walk
path_look = vano_5_look
out_restr = pas_b400_sr_canalisation_5
on_info = {+pas_b400_sr_canalisation_4} walker@vano_canalisation_4
on_info2 = {+pas_b400_sr_canalisation_6} walker@vano_canalisation_6
[walker@vano_canalisation_6]:walker@vano_def
path_walk = vano_6_walk
path_look = vano_6_look
out_restr = pas_b400_sr_canalisation_6
on_info = {+pas_b400_sr_canalisation_5} walker@vano_canalisation_5
on_info2 = {+pas_b400_sr_canalisation_7} walker@vano_canalisation_7
[walker@vano_canalisation_7]:walker@vano_def
path_walk = vano_7_walk
path_look = vano_7_look
out_restr = pas_b400_sr_canalisation_7
on_info = {+pas_b400_sr_canalisation_6} walker@vano_canalisation_6
[logic@pas_b400_sokolov_canalisation]
active = walker@sokolov_canalisation_1
suitable = {=check_npc_name(pas_b400_sokolov) -pas_b400_canalisation_done} true
prior = 200
on_hit = hit@sokolov
on_death = death@sokolov
post_combat_time = 0,0
[walker@sokolov_canalisation_1]:walker@sokolov_def
path_walk = sokolov_1_walk
path_look = sokolov_1_look
out_restr = pas_b400_sr_canalisation_1
combat_ignore_cond = {-pas_b400_canalisation_tushkano_attacked =check_enemy_name(tushkano)} true, false
on_info = {+pas_b400_sr_canalisation_2} walker@sokolov_canalisation_2
[walker@sokolov_canalisation_2]:walker@sokolov_def
path_walk = sokolov_2_walk
path_look = sokolov_2_look
out_restr = pas_b400_sr_canalisation_2
combat_ignore_cond = {-pas_b400_canalisation_tushkano_attacked =check_enemy_name(tushkano)} true, false
on_info = {+pas_b400_sr_canalisation_3} walker@sokolov_canalisation_3
[walker@sokolov_canalisation_3]:walker@sokolov_def
path_walk = sokolov_3_walk
path_look = sokolov_3_look
out_restr = pas_b400_sr_canalisation_3
on_info = {+pas_b400_sr_canalisation_2} walker@sokolov_canalisation_2
on_info2 = {+pas_b400_sr_canalisation_4} walker@sokolov_canalisation_4
[walker@sokolov_canalisation_4]:walker@sokolov_def
path_walk = sokolov_4_walk
path_look = sokolov_4_look
out_restr = pas_b400_sr_canalisation_4
on_info = {+pas_b400_sr_canalisation_3} walker@sokolov_canalisation_3
on_info2 = {+pas_b400_sr_canalisation_5} walker@sokolov_canalisation_5
[walker@sokolov_canalisation_5]:walker@sokolov_def
path_walk = sokolov_5_walk
path_look = sokolov_5_look
out_restr = pas_b400_sr_canalisation_5
on_info = {+pas_b400_sr_canalisation_4} walker@sokolov_canalisation_4
on_info2 = {+pas_b400_sr_canalisation_6} walker@sokolov_canalisation_6
on_info3 = {+pas_b400_sokolov_about_exit_1_can -pas_b400_sokolov_about_exit_1 =npc_in_zone(pas_b400_sr_canalisation_5)} %+pas_b400_sokolov_about_exit_1 =play_sound(pas_b400_sokolov_about_exit_1)%
on_info4 = {!is_alive(pas_b400_zulus) -pas_b400_sokolov_about_exit_1 =npc_in_zone(pas_b400_sr_canalisation_5)} %+pas_b400_sokolov_about_exit_1 =play_sound(pas_b400_sokolov_about_exit_1)%
[walker@sokolov_canalisation_6]:walker@sokolov_def
path_walk = sokolov_6_walk
path_look = sokolov_6_look
out_restr = pas_b400_sr_canalisation_6
on_info = {+pas_b400_sr_canalisation_5} walker@sokolov_canalisation_5
on_info2 = {+pas_b400_sr_canalisation_7} walker@sokolov_canalisation_7
[walker@sokolov_canalisation_7]:walker@sokolov_def
path_walk = sokolov_7_walk
path_look = sokolov_7_look
out_restr = pas_b400_sr_canalisation_7
on_info = {+pas_b400_sr_canalisation_6} walker@sokolov_canalisation_6
[logic@pas_b400_wanderer_canalisation]
active = walker@wanderer_canalisation_1
suitable = {=check_npc_name(pas_b400_wanderer) -pas_b400_canalisation_done} true
prior = 200
on_hit = hit@wanderer
on_death = death@wanderer
post_combat_time = 0,0
[walker@wanderer_canalisation_1]:walker@wanderer_def
path_walk = wanderer_1_walk
path_look = wanderer_1_look
out_restr = pas_b400_sr_canalisation_1
combat_ignore_cond = {-pas_b400_canalisation_tushkano_attacked =check_enemy_name(tushkano)} true, false
on_info = {+pas_b400_sr_canalisation_2} walker@wanderer_canalisation_2
[walker@wanderer_canalisation_2]:walker@wanderer_def
path_walk = wanderer_2_walk
path_look = wanderer_2_look
out_restr = pas_b400_sr_canalisation_2
combat_ignore_cond = {-pas_b400_canalisation_tushkano_attacked =check_enemy_name(tushkano)} true, false
on_info = {+pas_b400_sr_canalisation_3} walker@wanderer_canalisation_3
[walker@wanderer_canalisation_3]:walker@wanderer_def
path_walk = wanderer_3_walk
path_look = wanderer_3_look
out_restr = pas_b400_sr_canalisation_3
on_info = {+pas_b400_sr_canalisation_2} walker@wanderer_canalisation_2
on_info2 = {+pas_b400_sr_canalisation_4} walker@wanderer_canalisation_4
[walker@wanderer_canalisation_4]:walker@wanderer_def
path_walk = wanderer_4_walk
path_look = wanderer_4_look
out_restr = pas_b400_sr_canalisation_4
on_info = {+pas_b400_sr_canalisation_3} walker@wanderer_canalisation_3
on_info2 = {+pas_b400_sr_canalisation_5} walker@wanderer_canalisation_5
[walker@wanderer_canalisation_5]:walker@wanderer_def
path_walk = wanderer_5_walk
path_look = wanderer_5_look
out_restr = pas_b400_sr_canalisation_5
on_info = {+pas_b400_sr_canalisation_4} walker@wanderer_canalisation_4
on_info2 = {+pas_b400_sr_canalisation_6} walker@wanderer_canalisation_6
[walker@wanderer_canalisation_6]:walker@wanderer_def
path_walk = wanderer_6_walk
path_look = wanderer_6_look
out_restr = pas_b400_sr_canalisation_6
on_info = {+pas_b400_sr_canalisation_5} walker@wanderer_canalisation_5
on_info2 = {+pas_b400_sr_canalisation_7} walker@wanderer_canalisation_7
[walker@wanderer_canalisation_7]:walker@wanderer_def
path_walk = wanderer_7_walk
path_look = wanderer_7_look
out_restr = pas_b400_sr_canalisation_7
on_info = {+pas_b400_sr_canalisation_6} walker@wanderer_canalisation_6

View file

@ -0,0 +1,278 @@
[logic@pas_b400_tushkano_canalisation_1]
active = mob_home@tushkano_canalisation_home
suitable = {=is_monster_tushkano =target_squad_name(pas_b400_canalisation_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_tushkano_canalisation_2]
active = mob_home@tushkano_canalisation_home
suitable = {=is_monster_tushkano =target_squad_name(pas_b400_canalisation_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_tushkano_canalisation_3]
active = mob_home@tushkano_canalisation_home
suitable = {=is_monster_tushkano =target_squad_name(pas_b400_canalisation_tushkano)} true
prior = 200
monster_job = true
[mob_home@tushkano_canalisation_home]
path_home = tushkano_spawn
combat_ignore_cond = true
home_min_radius = 2
home_max_radius = 5
aggressive = false
npc_friendly = true
braindead = true
on_info = {+pas_b400_canalisation_tushkano_start} mob_home@tushkano_canalisation_1
out_restr = pas_b400_sr_canalisation_tushkano_in
[mob_home@tushkano_canalisation_1]
path_home = tushkano_1_walk
combat_ignore_cond = true
home_min_radius = 2
home_max_radius = 5
aggressive = false
npc_friendly = true
on_info = {=npc_in_zone(pas_b400_sr_canalisation_tushkano_revert)} mob_home@tushkano_canalisation_home_2
on_game_timer = 75 | mob_home@tushkano_canalisation_home_2
out_restr = pas_b400_sr_canalisation_tushkano_revert
[mob_home@tushkano_canalisation_home_2]
path_home = tushkano_home
combat_ignore_cond = true
home_min_radius = 2
home_max_radius = 5
aggressive = false
npc_friendly = true
on_game_timer = 15 | mob_home@tushkano_canalisation_home_3 %+pas_b400_canalisation_tushkano_attacked%
[mob_home@tushkano_canalisation_home_3]
path_home = tushkano_home
aggressive = true
[logic@pas_b400_snork_canalisation_2]
active = mob_walker@snork_canalisation_2_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_canalisation_snork_2)} true
prior = 200
monster_job = true
[mob_walker@snork_canalisation_2_walk]
path_walk = snork_2_walk
path_look = snork_2_look
combat_ignore_cond = true
npc_friendly = true
out_restr = pas_b400_sr_canalisation_snork_2_in
on_info = {=actor_in_zone(pas_b400_sr_canalisation_2) !actor_in_zone(pas_b400_sr_canalisation_1)} mob_walker@snork_canalisation_3_walk %+pas_b400_canalisation_tushkano_attacked%
on_info2 = {+pas_b400_canalisation_tushkano_attacked} mob_walker@snork_canalisation_3_walk
[mob_walker@snork_canalisation_3_walk]
path_walk = snork_3_walk
path_look = snork_3_look
combat_ignore_cond = true
npc_friendly = true
out_restr = pas_b400_sr_canalisation_snork_2_in
on_signal = path_end | mob_jump@snork_canalisation_2_jump
[mob_jump@snork_canalisation_2_jump]
path_jump = snork_3_look
ph_jump_factor = 1.2
offset = 0,0,0
on_signal = jumped | mob_home@snork_canalisation_2_home
[mob_home@snork_canalisation_2_home]
path_home = snork_3_look
home_min_radius = 10
home_max_radius = 50
aggressive = true
[logic@pas_b400_snork_canalisation_2_r]
active = mob_home@snork_canalisation_2rl_home
suitable = {=target_squad_name(pas_b400_canalisation_snork_2_r)} true
prior = 200
monster_job = true
[logic@pas_b400_snork_canalisation_2_l]
active = mob_home@snork_canalisation_2rl_home
suitable = {=target_squad_name(pas_b400_canalisation_snork_2_l)} true
prior = 200
monster_job = true
[mob_home@snork_canalisation_2rl_home]
path_home = snork_2_home
home_min_radius = 10
home_max_radius = 50
aggressive = true
[logic@pas_b400_canalisation_1_zombied_1]
active = walker@canalisation_1_zombied_1
suitable = {=target_squad_name(pas_b400_canalisation_1_zombied)} true
prior = 200
[walker@canalisation_1_zombied_1]
path_walk = 1_zombied_1_walk
on_info = {+pas_b400_way_door_opened} walker@canalisation_1_zombied_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_1_zombied_2]
active = walker@canalisation_1_zombied_2
suitable = {=target_squad_name(pas_b400_canalisation_1_zombied)} true
prior = 200
[walker@canalisation_1_zombied_2]
path_walk = 1_zombied_2_walk
on_info = {+pas_b400_way_door_opened} walker@canalisation_1_zombied_attack
combat_ignore_cond = true
[walker@canalisation_1_zombied_attack]
path_walk = 1_zombied_attack
[logic@pas_b400_canalisation_3_zombied_1]
active = walker@canalisation_3_zombied_1
suitable = {=target_squad_name(pas_b400_canalisation_3_zombied)} true
prior = 200
[walker@canalisation_3_zombied_1]
path_walk = 3_zombied_1_1_walk
on_info = {+pas_b400_canalisation_zombied_3_attacked} walker@canalisation_3_zombied_1_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_3_zombied_2]
active = walker@canalisation_3_zombied_2
suitable = {=target_squad_name(pas_b400_canalisation_3_zombied)} true
prior = 200
[walker@canalisation_3_zombied_2]
path_walk = 3_zombied_2_1_walk
on_info = {+pas_b400_canalisation_zombied_3_attacked} walker@canalisation_3_zombied_2_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_3_zombied_3]
active = walker@canalisation_3_zombied_3
suitable = {=target_squad_name(pas_b400_canalisation_3_zombied)} true
prior = 200
[walker@canalisation_3_zombied_3]
path_walk = 3_zombied_3_1_walk
on_info = {+pas_b400_canalisation_zombied_3_attacked} walker@canalisation_3_zombied_1_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_3_zombied_4]
active = walker@canalisation_3_zombied_4
suitable = {=target_squad_name(pas_b400_canalisation_3_zombied)} true
prior = 200
[walker@canalisation_3_zombied_4]
path_walk = 3_zombied_4_1_walk
on_info = {+pas_b400_canalisation_zombied_3_attacked} walker@canalisation_3_zombied_2_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_3_zombied_5]
active = walker@canalisation_3_zombied_5
suitable = {=target_squad_name(pas_b400_canalisation_3_zombied)} true
prior = 200
[walker@canalisation_3_zombied_5]
path_walk = 3_zombied_5_1_walk
on_info = {+pas_b400_canalisation_zombied_3_attacked} walker@canalisation_3_zombied_1_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_3_zombied_6]
active = walker@canalisation_3_zombied_6
suitable = {=target_squad_name(pas_b400_canalisation_3_zombied)} true
prior = 200
[walker@canalisation_3_zombied_6]
path_walk = 3_zombied_6_1_walk
on_info = {+pas_b400_canalisation_zombied_3_attacked} walker@canalisation_3_zombied_2_attack
combat_ignore_cond = true
[walker@canalisation_3_zombied_1_attack]
path_walk = 3_zombied_1_attack
[walker@canalisation_3_zombied_2_attack]
path_walk = 3_zombied_2_attack
[logic@pas_b400_canalisation_5_zombied_1]
active = walker@canalisation_5_zombied_1
suitable = {=target_squad_name(pas_b400_canalisation_5_zombied)} true
prior = 200
on_hit = hit@zombied
[walker@canalisation_5_zombied_1]
path_walk = 5_zombied_1_1_walk
on_info = {+pas_b400_canalisation_zombied_5_attacked} walker@canalisation_5_zombied_1_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_5_zombied_2]
active = walker@canalisation_5_zombied_2
suitable = {=target_squad_name(pas_b400_canalisation_5_zombied)} true
prior = 200
on_hit = hit@zombied
[walker@canalisation_5_zombied_2]
path_walk = 5_zombied_2_1_walk
on_info = {+pas_b400_canalisation_zombied_5_attacked} walker@canalisation_5_zombied_2_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_5_zombied_3]
active = walker@canalisation_5_zombied_3
suitable = {=target_squad_name(pas_b400_canalisation_5_zombied)} true
prior = 200
on_hit = hit@zombied
[walker@canalisation_5_zombied_3]
path_walk = 5_zombied_3_1_walk
on_info = {+pas_b400_canalisation_zombied_5_attacked} walker@canalisation_5_zombied_1_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_5_zombied_4]
active = walker@canalisation_5_zombied_4
suitable = {=target_squad_name(pas_b400_canalisation_5_zombied)} true
prior = 200
on_hit = hit@zombied
[walker@canalisation_5_zombied_4]
path_walk = 5_zombied_4_1_walk
on_info = {+pas_b400_canalisation_zombied_5_attacked} walker@canalisation_5_zombied_2_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_5_zombied_5]
active = walker@canalisation_5_zombied_5
suitable = {=target_squad_name(pas_b400_canalisation_5_zombied)} true
prior = 200
on_hit = hit@zombied
[walker@canalisation_5_zombied_5]
path_walk = 5_zombied_5_1_walk
on_info = {+pas_b400_canalisation_zombied_5_attacked} walker@canalisation_5_zombied_1_attack
combat_ignore_cond = true
[logic@pas_b400_canalisation_5_zombied_6]
active = walker@canalisation_5_zombied_6
suitable = {=target_squad_name(pas_b400_canalisation_5_zombied)} true
prior = 200
on_hit = hit@zombied
[walker@canalisation_5_zombied_6]
path_walk = 5_zombied_6_1_walk
on_info = {+pas_b400_canalisation_zombied_5_attacked} walker@canalisation_5_zombied_2_attack
combat_ignore_cond = true
[walker@canalisation_5_zombied_1_attack]
path_walk = 5_zombied_1_attack
[walker@canalisation_5_zombied_2_attack]
path_walk = 5_zombied_2_attack
[hit@zombied]
on_info = %+pas_b400_canalisation_zombied_5_attacked%

View file

@ -0,0 +1,4 @@
[animated_object]
tip = {-pas_b400_control_down_door_opened} tip_door_no_electricity, none
on_start = true %=turn_off(pas_b400_lamp_control_down_red) =turn_on(pas_b400_lamp_control_down_flash)%
on_stop = true %=turn_off(pas_b400_lamp_control_down_flash) =turn_on(pas_b400_lamp_control_down_green)%

View file

@ -0,0 +1,4 @@
[animated_object]
tip = {-pas_b400_control_up_door_opened} tip_door_blocked, none
on_start = true %=turn_off(pas_b400_lamp_control_up_red) =turn_on(pas_b400_lamp_control_up_flash)%
on_stop = true %=turn_off(pas_b400_lamp_control_up_flash) =turn_on(pas_b400_lamp_control_up_green)%

View file

@ -0,0 +1,4 @@
[animated_object]
tip = {-pas_b400_downstairs_button_pressed} tip_door_blocked, none
on_start = true %=turn_off(pas_b400_lamp_downstairs_red) =turn_on(pas_b400_lamp_downstairs_flash)%
on_stop = true %=turn_off(pas_b400_lamp_downstairs_flash) =turn_on(pas_b400_lamp_downstairs_green)%

View file

@ -0,0 +1,8 @@
[animated_object]
tip = {-pas_b400_elevator_button_pressed} tip_gate_locked, none
on_start = true %=turn_off(pas_b400_lamp_elevator_red:pas_b400_lamp_elevator_red_1) =turn_on(pas_b400_lamp_elevator_flash:pas_b400_lamp_elevator_flash_1)%
on_stop = true %=turn_off(pas_b400_lamp_elevator_flash:pas_b400_lamp_elevator_flash_1) =turn_on(pas_b400_lamp_elevator_green:pas_b400_lamp_elevator_green_1)%
idle_snd = device\airtight_gates_idle
start_snd = device\airtight_gates_start
stop_snd = device\airtight_gates_stop
idle_delay = 6500

View file

@ -0,0 +1,4 @@
[animated_object]
tip = {-pas_b400_control_down_door_opened} tip_door_no_electricity, {-pas_b400_hall_button_pressed} tip_door_blocked, none
on_start = true %=turn_off(pas_b400_lamp_hall_red) =turn_on(pas_b400_lamp_hall_flash)%
on_stop = true %=turn_off(pas_b400_lamp_hall_flash) =turn_on(pas_b400_lamp_hall_green) +pas_b400_hall_door_opened%

View file

@ -0,0 +1,4 @@
[animated_object]
tip = {-pas_b400_track_button_pressed} tip_door_blocked, none
on_start = true %=turn_off(pas_b400_lamp_track_red) =turn_on(pas_b400_lamp_track_flash)%
on_stop = true %=turn_off(pas_b400_lamp_track_flash) =turn_on(pas_b400_lamp_track_green)%

View file

@ -0,0 +1,8 @@
[animated_object]
tip = {-pas_b400_tunnel_button_pressed} tip_gate_locked, none
on_start = true %=turn_off(pas_b400_lamp_tunnel_red:pas_b400_lamp_tunnel_red_1) =turn_on(pas_b400_lamp_tunnel_flash:pas_b400_lamp_tunnel_flash_1)%
on_stop = true %+pas_b400_tunnel_gates_opened =turn_off(pas_b400_lamp_tunnel_flash:pas_b400_lamp_tunnel_flash_1) =turn_on(pas_b400_lamp_tunnel_green:pas_b400_lamp_tunnel_green_1)%
idle_snd = device\airtight_gates_idle
start_snd = device\airtight_gates_start
stop_snd = ambient\underpass\pas_b400_gates_wreck
idle_delay = 6500

View file

@ -0,0 +1,4 @@
[animated_object]
tip = {-pas_b400_way_button_pressed} tip_door_blocked, none
on_start = true %=turn_off(pas_b400_lamp_way_red) =turn_on(pas_b400_lamp_way_flash)%
on_stop = true %=turn_off(pas_b400_lamp_way_flash) =turn_on(pas_b400_lamp_way_green)%

View file

@ -0,0 +1,60 @@
#include "pas_b400_general.ltx"
[logic@pas_b400_zulus_downstairs]
active = walker@zulus_downstairs_1
suitable = {=check_npc_name(pas_b400_zulus) -pas_b400_downstairs_done} true
prior = 200
on_hit = hit@zulus
on_death = death@zulus
post_combat_time = 0,0
[walker@zulus_downstairs_1]:walker@zulus_def
path_walk = zulus_1_walk
path_look = 1_look
out_restr = pas_b400_sr_downstairs_2
[logic@pas_b400_vano_downstairs]
active = walker@vano_downstairs_1
suitable = {=check_npc_name(pas_b400_vano) -pas_b400_downstairs_done} true
prior = 200
on_hit = hit@vano
on_death = death@vano
post_combat_time = 0,0
[walker@vano_downstairs_1]:walker@vano_def
path_walk = vano_1_walk
path_look = 1_look
out_restr = pas_b400_sr_downstairs_2
[logic@pas_b400_sokolov_downstairs]
active = walker@sokolov_downstairs_1
suitable = {=check_npc_name(pas_b400_sokolov) -pas_b400_downstairs_done} true
prior = 200
on_hit = hit@sokolov
on_death = death@sokolov
post_combat_time = 0,0
[walker@sokolov_downstairs_1]:walker@sokolov_def
path_walk = sokolov_1_walk
path_look = 1_look
on_info = {+pas_b400_downstairs_door_opened} %=play_sound(pas_b400_sokolov_about_train_1)%
out_restr = pas_b400_sr_downstairs_2
[logic@pas_b400_wanderer_downstairs]
active = walker@wanderer_downstairs_1
suitable = {=check_npc_name(pas_b400_wanderer) -pas_b400_downstairs_done} true
prior = 200
on_hit = hit@wanderer
on_death = death@wanderer
post_combat_time = 0,0
[walker@wanderer_downstairs_1]:walker@wanderer_def
path_walk = wanderer_1_walk
path_look = 1_look
out_restr = pas_b400_sr_downstairs_2

View file

@ -0,0 +1,20 @@
[logic@pas_b400_tushkano_downstairs_1]
active = mob_home@tushkano_downstairs
suitable = {=target_squad_name(pas_b400_downstairs_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_tushkano_downstairs_2]
active = mob_home@tushkano_downstairs
suitable = {=target_squad_name(pas_b400_downstairs_tushkano)} true
prior = 200
monster_job = true
[mob_home@tushkano_downstairs]
path_home = tushkano_home
combat_ignore_cond = true
out_restr = pas_b400_sr_downstairs_2
on_info = {+pas_b400_track_door_opened} mob_home@tushkano_downstairs_okay
[mob_home@tushkano_downstairs_okay]
path_home = tushkano_home

View file

@ -0,0 +1,162 @@
#include "pas_b400_general.ltx"
[logic@pas_b400_zulus_elevator]
active = walker@zulus_elevator_1
suitable = {=check_npc_name(pas_b400_zulus) -pas_b400_elevator_done} true
prior = 200
on_hit = hit@zulus
on_death = death@zulus
post_combat_time = 0,0
[walker@zulus_elevator_1]:walker@zulus_def
path_walk = zulus_1_walk
path_look = zulus_1_look
out_restr = pas_b400_sr_elevator_1
on_info = {=actor_in_zone(pas_b400_sr_elevator_2)} walker@zulus_elevator_2
on_info2 = {+pas_b400_zulus_about_underpass} %-pas_b400_zulus_about_underpass =play_sound(pas_b400_zulus_about_underpass)%
[walker@zulus_elevator_2]:walker@zulus_def
path_walk = zulus_2_walk
path_look = zulus_2_look
out_restr = pas_b400_sr_elevator_2
on_info = {=actor_in_zone(pas_b400_sr_elevator_3)} walker@zulus_elevator_3
[walker@zulus_elevator_3]:walker@zulus_def
path_walk = zulus_3_walk
path_look = zulus_3_look
out_restr = pas_b400_sr_elevator_3
on_info = {=actor_in_zone(pas_b400_sr_elevator_4)} walker@zulus_elevator_4
[walker@zulus_elevator_4]:walker@zulus_def
path_walk = zulus_4_walk
path_look = zulus_4_look
out_restr = pas_b400_sr_elevator_4
on_info = {=actor_in_zone(pas_b400_sr_elevator_5)} walker@zulus_elevator_5
[walker@zulus_elevator_5]:walker@zulus_def
path_walk = zulus_5_walk
path_look = zulus_5_look
out_restr = pas_b400_sr_elevator_5
on_info = {+pas_b400_sr_elevator_5_passed -pas_b400_zulus_about_outfits_1} %+pas_b400_zulus_about_outfits_1 =play_sound(pas_b400_zulus_about_outfits_1)%
[logic@pas_b400_vano_elevator]
active = walker@vano_elevator_1
suitable = {=check_npc_name(pas_b400_vano) -pas_b400_elevator_done} true
prior = 200
on_hit = hit@vano
on_death = death@vano
post_combat_time = 0,0
[walker@vano_elevator_1]:walker@vano_def
path_walk = vano_1_walk
path_look = vano_1_look
out_restr = pas_b400_sr_elevator_1
on_info = {=actor_in_zone(pas_b400_sr_elevator_2)} walker@vano_elevator_2
on_info2 = {+pas_b400_vano_about_underpass} %-pas_b400_vano_about_underpass =play_sound(pas_b400_vano_about_underpass)%
[walker@vano_elevator_2]:walker@vano_def
path_walk = vano_2_walk
path_look = vano_2_look
out_restr = pas_b400_sr_elevator_2
on_info = {=actor_in_zone(pas_b400_sr_elevator_3)} walker@vano_elevator_3
[walker@vano_elevator_3]:walker@vano_def
path_walk = vano_3_walk
path_look = vano_3_look
out_restr = pas_b400_sr_elevator_3
on_info = {=actor_in_zone(pas_b400_sr_elevator_4)} walker@vano_elevator_4
[walker@vano_elevator_4]:walker@vano_def
path_walk = vano_4_walk
path_look = vano_4_look
out_restr = pas_b400_sr_elevator_4
on_info = {=actor_in_zone(pas_b400_sr_elevator_5)} walker@vano_elevator_5
[walker@vano_elevator_5]:walker@vano_def
path_walk = vano_5_walk
path_look = vano_5_look
out_restr = pas_b400_sr_elevator_5
[logic@pas_b400_sokolov_elevator]
active = walker@sokolov_elevator_1
suitable = {=check_npc_name(pas_b400_sokolov) -pas_b400_elevator_done} true
prior = 200
on_hit = hit@sokolov
on_death = death@sokolov
post_combat_time = 0,0
[walker@sokolov_elevator_1]:walker@sokolov_def
path_walk = sokolov_1_walk
path_look = sokolov_1_look
out_restr = pas_b400_sr_elevator_1
on_info = {=actor_in_zone(pas_b400_sr_elevator_2)} walker@sokolov_elevator_2
on_info2 = {+pas_b400_sr_elevator_1_passed -pas_b400_sokolov_about_elevator_1} %+pas_b400_sokolov_about_elevator_1 =play_sound(pas_b400_sokolov_about_elevator_1)%
[walker@sokolov_elevator_2]:walker@sokolov_def
path_walk = sokolov_2_walk
path_look = sokolov_2_look
out_restr = pas_b400_sr_elevator_2
on_info = {=actor_in_zone(pas_b400_sr_elevator_3)} walker@sokolov_elevator_3
on_info2 = {+pas_b400_sr_elevator_1_passed -pas_b400_sokolov_about_elevator_1} %+pas_b400_sokolov_about_elevator_1 =play_sound(pas_b400_sokolov_about_elevator_1)%
[walker@sokolov_elevator_3]:walker@sokolov_def
path_walk = sokolov_3_walk
path_look = sokolov_3_look
out_restr = pas_b400_sr_elevator_3
on_info = {=actor_in_zone(pas_b400_sr_elevator_4)} walker@sokolov_elevator_4
[walker@sokolov_elevator_4]:walker@sokolov_def
path_walk = sokolov_4_walk
path_look = sokolov_4_look
out_restr = pas_b400_sr_elevator_4
on_info = {=actor_in_zone(pas_b400_sr_elevator_5)} walker@sokolov_elevator_5
[walker@sokolov_elevator_5]:walker@sokolov_def
path_walk = sokolov_5_walk
path_look = sokolov_5_look
out_restr = pas_b400_sr_elevator_5
[logic@pas_b400_wanderer_elevator]
active = walker@wanderer_elevator_1
suitable = {=check_npc_name(pas_b400_wanderer) -pas_b400_elevator_done} true
prior = 200
on_hit = hit@wanderer
on_death = death@wanderer
post_combat_time = 0,0
[walker@wanderer_elevator_1]:walker@wanderer_def
path_walk = wanderer_1_walk
path_look = wanderer_1_look
def_state_standing = threat_na
out_restr = pas_b400_sr_elevator_1
on_info = {=actor_in_zone(pas_b400_sr_elevator_2)} walker@wanderer_elevator_2
on_info2 = {+pas_b400_wanderer_about_underpass} %-pas_b400_wanderer_about_underpass =play_sound(pas_b400_wanderer_about_underpass)%
[walker@wanderer_elevator_2]:walker@wanderer_def
path_walk = wanderer_2_walk
path_look = wanderer_2_look
out_restr = pas_b400_sr_elevator_2
on_info = {=actor_in_zone(pas_b400_sr_elevator_3)} walker@wanderer_elevator_3
[walker@wanderer_elevator_3]:walker@wanderer_def
path_walk = wanderer_3_walk
path_look = wanderer_3_look
out_restr = pas_b400_sr_elevator_3
on_info = {=actor_in_zone(pas_b400_sr_elevator_4)} walker@wanderer_elevator_4
[walker@wanderer_elevator_4]:walker@wanderer_def
path_walk = wanderer_4_walk
path_look = wanderer_4_look
out_restr = pas_b400_sr_elevator_4
on_info = {=actor_in_zone(pas_b400_sr_elevator_5)} walker@wanderer_elevator_5
[walker@wanderer_elevator_5]:walker@wanderer_def
path_walk = wanderer_5_walk
path_look = wanderer_5_look
out_restr = pas_b400_sr_elevator_5

View file

@ -0,0 +1,38 @@
[logic@pas_b400_snork_elevator_4]
active = mob_home@pas_b400_snork_elevator_4
suitable = {=target_squad_name(pas_b400_snork_elevator_4)} true
prior = 200
monster_job = true
[mob_home@pas_b400_snork_elevator_4]
path_home = 4_snork_spawn
home_min_radius = 10
home_max_radius = 20
aggressive = true
on_info = {=actor_in_zone(pas_b400_sr_elevator_3)} mob_home@pas_b400_snork_elevator_4_attack
[mob_home@pas_b400_snork_elevator_4_attack]
path_home = 4_snork_home
home_min_radius = 10
home_max_radius = 20
aggressive = true
[logic@pas_b400_tushkano_elevator_1]
active = mob_home@pas_b400_tushkano_elevator_1
suitable = {=is_monster_tushkano =target_squad_name(pas_b400_elevator_tushkano)} true
prior = 200
monster_job = true
[mob_home@pas_b400_tushkano_elevator_1]
path_home = tushkano_home_1
[logic@pas_b400_tushkano_elevator_2]
active = mob_home@pas_b400_tushkano_elevator_2
suitable = {=is_monster_tushkano =target_squad_name(pas_b400_elevator_tushkano)} true
prior = 200
monster_job = true
[mob_home@pas_b400_tushkano_elevator_2]
path_home = tushkano_home_2

View file

@ -0,0 +1,9 @@
#include "pas_b400_field_general.ltx"
[logic]
active = sr_psy_antenna@downstairs
[sr_psy_antenna@downstairs]:sr_psy_antenna@def
on_info = {+pas_b400_field_downstairs_off} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,12 @@
#include "pas_b400_field_general.ltx"
[logic]
active = sr_idle@elevator
[sr_idle@elevator]
on_info = {+pas_b400_elevator_gates_opened} sr_psy_antenna@elevator
[sr_psy_antenna@elevator]:sr_psy_antenna@def
on_info = {+pas_b400_field_elevator_off} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,10 @@
;General field properties
[sr_psy_antenna@def]
mute_sound_threshold = 1
postprocess = pas_b400_acidic.ppe
eff_intensity = 100
hit_intensity = 1.05
no_mumble = true
no_static = true
hit_type = chemical
hit_freq = 25

View file

@ -0,0 +1,9 @@
#include "pas_b400_field_general.ltx"
[logic]
active = sr_psy_antenna@track
[sr_psy_antenna@track]:sr_psy_antenna@def
on_info = {+pas_b400_field_track_off} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,9 @@
#include "pas_b400_field_general.ltx"
[logic]
active = sr_psy_antenna@tunnel
[sr_psy_antenna@tunnel]:sr_psy_antenna@def
on_info = {+pas_b400_field_tunnel_off} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,149 @@
;Meets default
[meet@def]
close_snd_hello = nil
close_snd_bye = nil
close_distance = 0
far_distance = 0
close_victim = nil
use = false
abuse = false
[meet@zulus_def]:meet@def
snd_on_use = pas_b400_zulus_no_meet
[meet@vano_def]:meet@def
snd_on_use = pas_b400_vano_no_meet
[meet@sokolov_def]:meet@def
snd_on_use = pas_b400_sokolov_no_meet
[meet@wanderer_def]:meet@def
snd_on_use = pas_b400_wanderer_no_meet
;Hits
[hit@zulus]
on_info = {-pas_b400_zulus_dead !is_playing_sound =is_alive !hit_by_actor} %=play_sound(pas_b400_zulus_on_enemy_hit)%
on_info2 = {-pas_b400_zulus_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_zulus_hit:2) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_zulus_on_actor_hit_3) =inc_counter(pas_b400_actor_zulus_hit) =set_squad_enemy_to_actor(pas_b400_stalkers_squad) +pas_b400_actor_enemy%
on_info3 = {-pas_b400_zulus_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_zulus_hit:1) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_zulus_on_actor_hit_2) =inc_counter(pas_b400_actor_zulus_hit)%
on_info4 = {-pas_b400_zulus_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_zulus_hit:0) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_zulus_on_actor_hit_1) =inc_counter(pas_b400_actor_zulus_hit)%
on_info5 = {=deadly_hit} %+pas_b400_zulus_dead%
[hit@vano]
on_info = {-pas_b400_vano_dead !is_playing_sound =is_alive !hit_by_actor} %=play_sound(pas_b400_vano_on_enemy_hit)%
on_info2 = {-pas_b400_vano_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_vano_hit:2) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_vano_on_actor_hit_3) =inc_counter(pas_b400_actor_vano_hit) =set_squad_enemy_to_actor(pas_b400_stalkers_squad) +pas_b400_actor_enemy%
on_info3 = {-pas_b400_vano_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_vano_hit:1) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_vano_on_actor_hit_2) =inc_counter(pas_b400_actor_vano_hit)%
on_info4 = {-pas_b400_vano_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_vano_hit:0) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_vano_on_actor_hit_1) =inc_counter(pas_b400_actor_vano_hit)%
on_info5 = {=deadly_hit} %+pas_b400_vano_dead%
[hit@sokolov]
on_info = {-pas_b400_sokolov_dead !is_playing_sound =is_alive !hit_by_actor} %=play_sound(pas_b400_sokolov_on_enemy_hit)%
on_info2 = {-pas_b400_sokolov_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_sokolov_hit:2) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_sokolov_on_actor_hit_3) =inc_counter(pas_b400_actor_sokolov_hit) =set_squad_enemy_to_actor(pas_b400_stalkers_squad) +pas_b400_actor_enemy%
on_info3 = {-pas_b400_sokolov_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_sokolov_hit:1) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_sokolov_on_actor_hit_2) =inc_counter(pas_b400_actor_sokolov_hit)%
on_info4 = {-pas_b400_sokolov_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_sokolov_hit:0) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_sokolov_on_actor_hit_1) =inc_counter(pas_b400_actor_sokolov_hit)%
on_info5 = {=deadly_hit} %+pas_b400_sokolov_dead%
[hit@wanderer]
on_info = {-pas_b400_wanderer_dead !is_playing_sound =is_alive !hit_by_actor} %=play_sound(pas_b400_wanderer_on_enemy_hit)%
on_info2 = {-pas_b400_wanderer_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_wanderer_hit:2) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_wanderer_on_actor_hit_3) =inc_counter(pas_b400_actor_wanderer_hit) =set_squad_enemy_to_actor(pas_b400_stalkers_squad) +pas_b400_actor_enemy%
on_info3 = {-pas_b400_wanderer_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_wanderer_hit:1) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_wanderer_on_actor_hit_2) =inc_counter(pas_b400_actor_wanderer_hit)%
on_info4 = {-pas_b400_wanderer_dead !is_playing_sound =is_alive !has_enemy =hit_by_actor =counter_equal(pas_b400_actor_wanderer_hit:0) =squad_exist(pas_b400_stalkers_squad)} %=play_sound(pas_b400_wanderer_on_actor_hit_1) =inc_counter(pas_b400_actor_wanderer_hit)%
on_info5 = {=deadly_hit} %+pas_b400_wanderer_dead%
;Death
[death@zulus]
on_info = %=stop_sound +pas_b400_zulus_dead +pri_a15_zulus_out%
on_info2 = {!killed_by_actor} %+pas_b400_zulus_dead_sound%, {=killed_by_actor =squad_exist(pas_b400_stalkers_squad)} %+pas_b400_zulus_dead_sound +pas_b400_zulus_dead_sound_actor =set_squad_enemy_to_actor(pas_b400_stalkers_squad) +pas_b400_actor_enemy%
[death@vano]
on_info = %=stop_sound +pas_b400_vano_dead +pri_a15_vano_out%
on_info2 = {!killed_by_actor} %+pas_b400_vano_dead_sound%, {=killed_by_actor =squad_exist(pas_b400_stalkers_squad)} %+pas_b400_vano_dead_sound +pas_b400_vano_dead_sound_actor =set_squad_enemy_to_actor(pas_b400_stalkers_squad) +pas_b400_actor_enemy%
[death@sokolov]
on_info = %=stop_sound +pas_b400_sokolov_dead +pri_a15_sokolov_out%
on_info2 = {!killed_by_actor} %+pas_b400_sokolov_dead_sound%, {=killed_by_actor =squad_exist(pas_b400_stalkers_squad)} %+pas_b400_sokolov_dead_sound +pas_b400_sokolov_dead_sound_actor =set_squad_enemy_to_actor(pas_b400_stalkers_squad) +pas_b400_actor_enemy%
[death@wanderer]
on_info = %=stop_sound +pas_b400_wanderer_dead +pri_a15_wanderer_out%
on_info2 = {!killed_by_actor} %+pas_b400_wanderer_dead_sound%, {=killed_by_actor =squad_exist(pas_b400_stalkers_squad)} %+pas_b400_wanderer_dead_sound +pas_b400_wanderer_dead_sound_actor =set_squad_enemy_to_actor(pas_b400_stalkers_squad) +pas_b400_actor_enemy%
;Sounds
[walker@zulus_def]
meet = meet@zulus_def
wounded = wounded@no_wound
def_state_standing = threat_na
def_state_moving = assault
on_info92 = {+pas_b400_about_gates} %-pas_b400_about_gates =play_sound(pas_b400_zulus_about_gates)%
on_info93 = {+pas_b400_zulus_idle_talk} %-pas_b400_zulus_idle_talk =play_sound(pas_b400_zulus_idle)%
on_info94 = {+pas_b400_vano_dead_sound +pas_b400_vano_dead_sound_actor} %-pas_b400_vano_dead_sound =play_sound(pas_b400_zulus_on_actor_assault)%, {+pas_b400_vano_dead_sound} %-pas_b400_vano_dead_sound =play_sound(pas_b400_zulus_on_enemy_assault_vano)%
on_info95 = {+pas_b400_sokolov_dead_sound +pas_b400_sokolov_dead_sound_actor} %-pas_b400_sokolov_dead_sound =play_sound(pas_b400_zulus_on_actor_assault)%, {+pas_b400_sokolov_dead_sound} %-pas_b400_sokolov_dead_sound =play_sound(pas_b400_zulus_on_enemy_assault_sokolov)%
on_info96 = {+pas_b400_wanderer_dead_sound +pas_b400_wanderer_dead_sound_actor} %-pas_b400_wanderer_dead_sound =play_sound(pas_b400_zulus_on_actor_assault)%, {+pas_b400_wanderer_dead_sound} %-pas_b400_wanderer_dead_sound =play_sound(pas_b400_zulus_on_enemy_assault_wanderer)%
on_info97 = {+pas_b400_actor_far =dist_to_actor_le(30)} %-pas_b400_actor_far%
on_info98 = {-pas_b400_actor_far =pas_b400_actor_far_backward} %=play_sound(pas_b400_zulus_come_back) +pas_b400_actor_far%
on_info99 = {-pas_b400_actor_far =pas_b400_actor_far_forward} %=play_sound(pas_b400_zulus_wait_for_me) +pas_b400_actor_far%
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@vano_def]
meet = meet@vano_def
wounded = wounded@no_wound
def_state_standing = threat_na
def_state_moving = assault
on_info92 = {+pas_b400_about_gates} %-pas_b400_about_gates =play_sound(pas_b400_vano_about_gates)%
on_info93 = {+pas_b400_vano_idle_talk} %-pas_b400_vano_idle_talk =play_sound(pas_b400_vano_idle)%
on_info94 = {+pas_b400_zulus_dead_sound +pas_b400_zulus_dead_sound_actor} %-pas_b400_zulus_dead_sound =play_sound(pas_b400_vano_on_actor_assault)%, {+pas_b400_zulus_dead_sound} %-pas_b400_zulus_dead_sound =play_sound(pas_b400_vano_on_enemy_assault_zulus)%
on_info95 = {+pas_b400_sokolov_dead_sound +pas_b400_sokolov_dead_sound_actor} %-pas_b400_sokolov_dead_sound =play_sound(pas_b400_vano_on_actor_assault)%, {+pas_b400_sokolov_dead_sound} %-pas_b400_sokolov_dead_sound =play_sound(pas_b400_vano_on_enemy_assault_sokolov)%
on_info96 = {+pas_b400_wanderer_dead_sound +pas_b400_wanderer_dead_sound_actor} %-pas_b400_wanderer_dead_sound =play_sound(pas_b400_vano_on_actor_assault)%, {+pas_b400_wanderer_dead_sound} %-pas_b400_wanderer_dead_sound =play_sound(pas_b400_vano_on_enemy_assault_wanderer)%
on_info97 = {+pas_b400_actor_far =dist_to_actor_le(30)} %-pas_b400_actor_far%
on_info98 = {-pas_b400_actor_far =pas_b400_actor_far_backward} %=play_sound(pas_b400_vano_come_back) +pas_b400_actor_far%
on_info99 = {-pas_b400_actor_far =pas_b400_actor_far_forward} %=play_sound(pas_b400_vano_wait_for_me) +pas_b400_actor_far%
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@sokolov_def]
meet = meet@sokolov_def
wounded = wounded@no_wound
def_state_standing = threat_na
def_state_moving = assault
on_info92 = {+pas_b400_about_gates} %-pas_b400_about_gates =play_sound(pas_b400_sokolov_about_gates)%
on_info93 = {+pas_b400_sokolov_idle_talk} %-pas_b400_sokolov_idle_talk =play_sound(pas_b400_sokolov_idle)%
on_info94 = {+pas_b400_zulus_dead_sound +pas_b400_zulus_dead_sound_actor} %-pas_b400_zulus_dead_sound =play_sound(pas_b400_sokolov_on_actor_assault)%, {+pas_b400_zulus_dead_sound} %-pas_b400_zulus_dead_sound =play_sound(pas_b400_sokolov_on_enemy_assault_zulus)%
on_info95 = {+pas_b400_vano_dead_sound +pas_b400_vano_dead_sound_actor} %-pas_b400_vano_dead_sound =play_sound(pas_b400_sokolov_on_actor_assault)%, {+pas_b400_vano_dead_sound} %-pas_b400_vano_dead_sound =play_sound(pas_b400_sokolov_on_enemy_assault_vano)%
on_info96 = {+pas_b400_wanderer_dead_sound +pas_b400_wanderer_dead_sound_actor} %-pas_b400_wanderer_dead_sound =play_sound(pas_b400_sokolov_on_actor_assault)%, {+pas_b400_wanderer_dead_sound} %-pas_b400_wanderer_dead_sound =play_sound(pas_b400_sokolov_on_enemy_assault_wanderer)%
on_info97 = {+pas_b400_actor_far =dist_to_actor_le(30)} %-pas_b400_actor_far%
on_info98 = {-pas_b400_actor_far =pas_b400_actor_far_backward} %=play_sound(pas_b400_sokolov_come_back) +pas_b400_actor_far%
on_info99 = {-pas_b400_actor_far =pas_b400_actor_far_forward} %=play_sound(pas_b400_sokolov_wait_for_me) +pas_b400_actor_far%
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@wanderer_def]
meet = meet@wanderer_def
wounded = wounded@no_wound
def_state_standing = hide_na
def_state_moving = assault
on_info92 = {+pas_b400_about_gates} %-pas_b400_about_gates =play_sound(pas_b400_wanderer_about_gates)%
on_info93 = {+pas_b400_wanderer_idle_talk} %-pas_b400_wanderer_idle_talk =play_sound(pas_b400_wanderer_idle)%
on_info94 = {+pas_b400_zulus_dead_sound +pas_b400_zulus_dead_sound_actor} %-pas_b400_zulus_dead_sound =play_sound(pas_b400_wanderer_on_actor_assault)%, {+pas_b400_zulus_dead_sound} %-pas_b400_zulus_dead_sound =play_sound(pas_b400_wanderer_on_enemy_assault_zulus)%
on_info95 = {+pas_b400_vano_dead_sound +pas_b400_vano_dead_sound_actor} %-pas_b400_vano_dead_sound =play_sound(pas_b400_wanderer_on_actor_assault)%, {+pas_b400_vano_dead_sound} %-pas_b400_vano_dead_sound =play_sound(pas_b400_wanderer_on_enemy_assault_vano)%
on_info96 = {+pas_b400_sokolov_dead_sound +pas_b400_sokolov_dead_sound_actor} %-pas_b400_sokolov_dead_sound =play_sound(pas_b400_wanderer_on_actor_assault)%, {+pas_b400_sokolov_dead_sound} %-pas_b400_sokolov_dead_sound =play_sound(pas_b400_wanderer_on_enemy_assault_sokolov)%
on_info97 = {+pas_b400_actor_far =dist_to_actor_le(30)} %-pas_b400_actor_far%
on_info98 = {-pas_b400_actor_far =pas_b400_actor_far_backward} %=play_sound(pas_b400_wanderer_come_back) +pas_b400_actor_far%
on_info99 = {-pas_b400_actor_far =pas_b400_actor_far_forward} %=play_sound(pas_b400_wanderer_wait_for_me) +pas_b400_actor_far%
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
;Wounded - no wounds
[wounded@no_wound]
hp_state = 0 | wounded_heavy@help_heavy
hp_state_see = 0 | wounded_heavy@help_heavy
hp_victim = 0 | nil
hp_cover = 0 | false
hp_fight = 0 | false

View file

@ -0,0 +1,709 @@
#include "pas_b400_general.ltx"
[walker@zulus_hall_def]:walker@zulus_def
on_info50 = {-pas_b400_about_door +pas_b400_hall_door_opened +pas_b400_hall_monolith_snipers_dead} %+pas_b400_about_door =play_sound(pas_b400_zulus_about_door_1)%
[walker@vano_hall_def]:walker@vano_def
on_info50 = {-pas_b400_about_door !is_alive(pas_b400_zulus) +pas_b400_hall_door_opened +pas_b400_hall_monolith_snipers_dead} %+pas_b400_about_door =play_sound(pas_b400_vano_about_door_1)%
[walker@sokolov_hall_def]:walker@sokolov_def
on_info50 = {-pas_b400_sokolov_about_door_1 +pas_b400_sokolov_about_door_1_can +pas_b400_hall_door_opened +pas_b400_hall_monolith_snipers_dead} %+pas_b400_sokolov_about_door_1 =play_sound(pas_b400_sokolov_about_door_1)%
on_info51 = {-pas_b400_sokolov_about_door_1 !is_alive_one(pas_b400_zulus:pas_b400_sokolov:pas_b400_wanderer) +pas_b400_hall_door_opened +pas_b400_hall_monolith_snipers_dead} %+pas_b400_sokolov_about_door_1 =play_sound(pas_b400_sokolov_about_door_1)%
[walker@wanderer_hall_def]:walker@wanderer_def
on_info50 = {-pas_b400_about_door !is_alive_one(pas_b400_zulus:pas_b400_vano) +pas_b400_hall_door_opened +pas_b400_hall_monolith_snipers_dead} %+pas_b400_about_door =play_sound(pas_b400_wanderer_about_door_1)%
[logic@pas_b400_zulus_hall]
active = walker@zulus_hall_enter
suitable = {=check_npc_name(pas_b400_zulus) -pas_b400_hall_done} true
prior = 200
on_hit = hit@zulus
on_death = death@zulus
post_combat_time = 0,0
[walker@zulus_hall_enter]:walker@zulus_hall_def
path_walk = zulus_hall_enter_walk
def_state_moving = sneak_run
out_restr = pas_b400_sr_hall_1
on_signal = path_end | walker@zulus_hall_1
on_info = {+pas_b400_sr_hall_2} walker@zulus_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@zulus_hall_3
on_info3 = {+pas_b400_sr_hall_6} walker@zulus_hall_6
[walker@zulus_hall_1]:walker@zulus_hall_def
path_walk = zulus_1_walk
path_look = zulus_1_look
out_restr = pas_b400_sr_hall_1
on_info = {+pas_b400_sr_hall_2} walker@zulus_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@zulus_hall_3
on_info3 = {+pas_b400_sr_hall_6} walker@zulus_hall_6
[walker@zulus_hall_2]:walker@zulus_hall_def
path_walk = zulus_2_walk
path_look = zulus_2_look
out_restr = pas_b400_sr_hall_2
on_info = {+pas_b400_sr_hall_1} walker@zulus_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@zulus_hall_3
on_info3 = {+pas_b400_sr_hall_5} walker@zulus_hall_5
[walker@zulus_hall_3]:walker@zulus_hall_def
path_walk = zulus_3_walk
path_look = zulus_3_look
out_restr = pas_b400_sr_hall_3
on_info = {+pas_b400_sr_hall_1} walker@zulus_hall_1
on_info2 = {+pas_b400_sr_hall_2} walker@zulus_hall_2
on_info3 = {+pas_b400_sr_hall_5} walker@zulus_hall_5
on_info4 = {+pas_b400_sr_hall_6} walker@zulus_hall_6
on_info5 = {+pas_b400_sr_hall_7} walker@zulus_hall_7
[walker@zulus_hall_4]:walker@zulus_hall_def
path_walk = zulus_4_walk
path_look = zulus_4_look
out_restr = pas_b400_sr_hall_4
on_info = {+pas_b400_sr_hall_6} walker@zulus_hall_6
[walker@zulus_hall_5]:walker@zulus_hall_def
path_walk = zulus_5_walk
path_look = zulus_5_look
out_restr = pas_b400_sr_hall_5
on_info = {+pas_b400_sr_hall_2} walker@zulus_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@zulus_hall_3
on_info3 = {+pas_b400_sr_hall_8} walker@zulus_hall_8
on_info4 = {+pas_b400_sr_hall_10} walker@zulus_hall_10
[walker@zulus_hall_6]:walker@zulus_hall_def
path_walk = zulus_6_walk
path_look = zulus_6_look
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_sr_hall_1} walker@zulus_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@zulus_hall_3
on_info3 = {+pas_b400_sr_hall_4} walker@zulus_hall_4
on_info4 = {+pas_b400_sr_hall_7} walker@zulus_hall_7
on_info5 = {+pas_b400_control_down_door_opened =actor_in_zone(pas_b400_sr_hall_control_down)} walker@zulus_hall_6_in
[walker@zulus_hall_6_in]:walker@zulus_hall_def
path_walk = zulus_6_in_walk
path_look = zulus_6_in_look
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_sr_hall_1} walker@zulus_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@zulus_hall_3
on_info3 = {+pas_b400_sr_hall_4} walker@zulus_hall_4
on_info4 = {+pas_b400_sr_hall_7} walker@zulus_hall_7
on_info5 = {+pas_b400_hall_monolith_snipers_attacked -pas_b400_hall_monolith_snipers_dead} camper@zulus_hall_6_defence %+pas_b400_about_sniper =play_sound(pas_b400_zulus_about_sniper_first_1)%
on_info6 = {-pas_b400_about_cover =npc_in_zone(pas_b400_sr_hall_6) =actor_in_zone(pas_b400_sr_control_stairs) !squad_has_enemy(pas_b400_stalkers_squad)} %+pas_b400_about_cover =play_sound(pas_b400_zulus_about_cover_1)%
[camper@zulus_hall_6_defence]:walker@zulus_hall_def
path_walk = zulus_6_defence_walk
path_look = zulus_6_defence_look
no_retreat = true
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_6
radius = 10
on_info = {+pas_b400_hall_monolith_snipers_dead} walker@zulus_hall_6_in
[walker@zulus_hall_7]:walker@zulus_hall_def
path_walk = zulus_7_walk
path_look = zulus_7_look
out_restr = pas_b400_sr_hall_7
on_info = {+pas_b400_sr_hall_3} walker@zulus_hall_3
on_info2 = {+pas_b400_sr_hall_6} walker@zulus_hall_6
on_info3 = {+pas_b400_sr_hall_9} walker@zulus_hall_9
on_info4 = {+pas_b400_sr_hall_10} walker@zulus_hall_10
on_info5 = {+pas_b400_sr_hall_11} walker@zulus_hall_11
on_info6 = {+pas_b400_sr_hall_12} walker@zulus_hall_12
on_info7 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@zulus_hall_11_defence
[walker@zulus_hall_8]:walker@zulus_hall_def
path_walk = zulus_8_walk
path_look = zulus_8_look
out_restr = pas_b400_sr_hall_8
on_info = {+pas_b400_sr_hall_3} walker@zulus_hall_3
on_info2 = {+pas_b400_sr_hall_5} walker@zulus_hall_5
on_info3 = {+pas_b400_sr_hall_7} walker@zulus_hall_7
on_info4 = {+pas_b400_sr_hall_10} walker@zulus_hall_10
[walker@zulus_hall_9]:walker@zulus_hall_def
path_walk = zulus_9_walk
path_look = zulus_9_look
out_restr = pas_b400_sr_hall_9
on_info = {+pas_b400_sr_hall_7} walker@zulus_hall_7
on_info2 = {+pas_b400_sr_hall_12} walker@zulus_hall_12
[walker@zulus_hall_10]:walker@zulus_hall_def
path_walk = zulus_10_walk
path_look = zulus_10_look
out_restr = pas_b400_sr_hall_10
on_info = {+pas_b400_sr_hall_5} walker@zulus_hall_5
on_info2 = {+pas_b400_sr_hall_7} walker@zulus_hall_7
on_info3 = {+pas_b400_sr_hall_8} walker@zulus_hall_8
on_info4 = {+pas_b400_sr_hall_11} walker@zulus_hall_11
on_info5 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@zulus_hall_11_defence
[walker@zulus_hall_11]:walker@zulus_hall_def
path_walk = zulus_11_walk
path_look = zulus_11_look
out_restr = pas_b400_sr_hall_11
on_info = {+pas_b400_sr_hall_7} walker@zulus_hall_7
on_info2 = {+pas_b400_sr_hall_10} walker@zulus_hall_10
on_info3 = {+pas_b400_sr_hall_12} walker@zulus_hall_12
on_info4 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@zulus_hall_11_defence %=play_sound(pas_b400_zulus_about_monolith_1)%
on_info5 = {+pas_b400_about_railway =npc_in_zone(pas_b400_sr_hall_11) !squad_has_enemy(pas_b400_stalkers_squad) -pas_b400_about_transformer} remark@zulus_hall_transformer
[remark@zulus_hall_transformer]:walker@zulus_hall_def
target = path | pas_b400_hall_transformer_look, 0
anim = threat_na
on_signal = sound_end | walker@zulus_hall_11 %+pas_b400_about_transformer%
out_restr = pas_b400_sr_hall_11
on_info = %=play_sound(pas_b400_zulus_about_transformer_1)%
[walker@zulus_hall_11_defence]:walker@zulus_hall_def
path_walk = zulus_11_defence_walk
path_look = zulus_11_defence_look
def_state_standing = hide_na
out_restr = pas_b400_sr_hall_11
on_info = {+pas_b400_hall_monolith_squad_dead} walker@zulus_hall_11 %+pas_b400_zulus_about_monolith_2 =play_sound(pas_b400_zulus_about_monolith_2)%
[walker@zulus_hall_12]:walker@zulus_hall_def
path_walk = zulus_12_walk
path_look = zulus_12_look
out_restr = pas_b400_sr_hall_12
on_info = {+pas_b400_sr_hall_7} walker@zulus_hall_7
on_info2 = {+pas_b400_sr_hall_9} walker@zulus_hall_9
on_info3 = {+pas_b400_sr_hall_11} walker@zulus_hall_11
on_info4 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@zulus_hall_11_defence
on_info5 = {-pas_b400_control_down_door_opened =npc_in_zone(pas_b400_sr_hall_12) -pas_b400_about_railway} %+pas_b400_about_railway =play_sound(pas_b400_zulus_about_railway_1)%
on_info6 = {-pas_b400_hall_door_opened +pas_b400_control_down_door_opened =npc_in_zone(pas_b400_sr_hall_12) !squad_has_enemy(pas_b400_stalkers_squad) -pas_b400_about_control_gates} %+pas_b400_about_control_gates =play_sound(pas_b400_zulus_about_control_gates_1)%
[logic@pas_b400_vano_hall]
active = walker@vano_hall_enter
suitable = {=check_npc_name(pas_b400_vano) -pas_b400_hall_done} true
prior = 200
on_hit = hit@vano
on_death = death@vano
post_combat_time = 0,0
[walker@vano_hall_enter]:walker@vano_hall_def
path_walk = vano_hall_enter_walk
def_state_moving = sneak_run
out_restr = pas_b400_sr_hall_1
on_signal = path_end | remark@vano_hall_1
on_info = {=npc_in_zone(pas_b400_sr_hall_1) -pas_b400_sr_hall_1} remark@vano_hall_1
[remark@vano_hall_1]:walker@vano_hall_def
target = path | pas_b400_hall_vano_8_look, 0
anim = guard_na
on_signal = sound_end | %+pas_b400_vano_about_dome_1_played%
on_game_timer = 50 | {+pas_b400_vano_about_dome_1} %+pas_b400_vano_about_dome_1_played%
out_restr = pas_b400_sr_hall_1
on_info = {=npc_in_zone(pas_b400_sr_hall_1)} %+pas_b400_vano_about_dome_1 =play_sound(pas_b400_vano_about_dome_1)%
on_info2 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_1} walker@vano_hall_1
on_info3 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_2} walker@vano_hall_2
on_info4 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_3} walker@vano_hall_3
on_info5 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_4} walker@vano_hall_4
on_info6 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_5} walker@vano_hall_5
on_info7 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_6} walker@vano_hall_6
on_info8 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_7} walker@vano_hall_7
on_info9 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_8} walker@vano_hall_8
on_info10 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_9} walker@vano_hall_9
on_info11 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_10} walker@vano_hall_10
on_info12 = {+pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_11} walker@vano_hall_11
on_info13 = {pas_b400_vano_about_dome_1_played +pas_b400_sr_hall_12} walker@vano_hall_12
[walker@vano_hall_1]:walker@vano_hall_def
path_walk = vano_1_walk
path_look = vano_1_look
out_restr = pas_b400_sr_hall_1
on_info = {+pas_b400_sr_hall_2} walker@vano_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@vano_hall_3
on_info3 = {+pas_b400_sr_hall_6} walker@vano_hall_6
[walker@vano_hall_2]:walker@vano_hall_def
path_walk = vano_2_walk
path_look = vano_2_look
out_restr = pas_b400_sr_hall_2
on_info = {+pas_b400_sr_hall_1} walker@vano_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@vano_hall_3
on_info3 = {+pas_b400_sr_hall_5} walker@vano_hall_5
[walker@vano_hall_3]:walker@vano_hall_def
path_walk = vano_3_walk
path_look = vano_3_look
out_restr = pas_b400_sr_hall_3
on_info = {+pas_b400_sr_hall_1} walker@vano_hall_1
on_info2 = {+pas_b400_sr_hall_2} walker@vano_hall_2
on_info3 = {+pas_b400_sr_hall_5} walker@vano_hall_5
on_info4 = {+pas_b400_sr_hall_6} walker@vano_hall_6
on_info5 = {+pas_b400_sr_hall_7} walker@vano_hall_7
[walker@vano_hall_4]:walker@vano_hall_def
path_walk = vano_4_walk
path_look = vano_4_look
out_restr = pas_b400_sr_hall_4
on_info = {+pas_b400_sr_hall_6} walker@vano_hall_6
[walker@vano_hall_5]:walker@vano_hall_def
path_walk = vano_5_walk
path_look = vano_5_look
out_restr = pas_b400_sr_hall_5
on_info = {+pas_b400_sr_hall_2} walker@vano_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@vano_hall_3
on_info3 = {+pas_b400_sr_hall_8} walker@vano_hall_8
on_info4 = {+pas_b400_sr_hall_10} walker@vano_hall_10
[walker@vano_hall_6]:walker@vano_hall_def
path_walk = vano_6_walk
path_look = vano_6_look
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_sr_hall_1} walker@vano_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@vano_hall_3
on_info3 = {+pas_b400_sr_hall_4} walker@vano_hall_4
on_info4 = {+pas_b400_sr_hall_7} walker@vano_hall_7
on_info5 = {+pas_b400_control_down_door_opened =actor_in_zone(pas_b400_sr_hall_control_down) +pas_b400_hall_anomaly_done} walker@vano_hall_6_in
on_info6 = {-pas_b400_hall_anomaly_done =npc_in_zone(pas_b400_sr_hall_6)} %=play_sound(pas_b400_vano_about_anomaly_second_1)%
on_signal = path_end | {-pas_b400_hall_anomaly_done} remark@vano_hall_6
[remark@vano_hall_6]:walker@vano_hall_def
target = path | pas_b400_hall_vano_6_look, 0
anim = pas_b400_vano_probe
on_signal = anim_end | walker@vano_hall_6_1
out_restr = pas_b400_sr_hall_6
on_game_timer = 30 | %=play_sound(pas_b400_vano_about_anomaly_second_2)%
[walker@vano_hall_6_1]:walker@vano_hall_def
path_walk = vano_6_1_walk
path_look = vano_6_1_look
out_restr = pas_b400_sr_hall_6
on_signal = path_end | remark@vano_hall_6_1
[remark@vano_hall_6_1]:walker@vano_hall_def
target = path | pas_b400_hall_vano_6_1_look, 0
anim = pas_b400_vano_probe
on_signal = anim_end | walker@vano_hall_6_in %+pas_b400_hall_anomaly_done%
out_restr = pas_b400_sr_hall_6
on_game_timer = 20 | %=play_sound(pas_b400_vano_about_anomaly_second_3)%
[walker@vano_hall_6_in]:walker@vano_hall_def
path_walk = vano_6_in_walk
path_look = vano_6_in_look
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_sr_hall_1} walker@vano_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@vano_hall_3
on_info3 = {+pas_b400_sr_hall_4} walker@vano_hall_4
on_info4 = {+pas_b400_sr_hall_7} walker@vano_hall_7
on_info5 = {+pas_b400_hall_monolith_snipers_attacked -pas_b400_hall_monolith_snipers_dead} walker@vano_hall_6_defence
on_info6 = {-pas_b400_about_cover !is_alive(pas_b400_zulus) =npc_in_zone(pas_b400_sr_hall_6) =actor_in_zone(pas_b400_sr_control_stairs) !squad_has_enemy(pas_b400_stalkers_squad)} %+pas_b400_about_cover =play_sound(pas_b400_vano_about_cover_1)%
on_game_timer = 150 | {-pas_b400_control_down_door_opened} walker@vano_hall_6
on_signal = path_end | {-pas_b400_vano_about_room_closed -pas_b400_control_down_door_opened} %+pas_b400_vano_about_room_closed =play_sound(pas_b400_vano_about_room_closed)%, {-pas_b400_vano_about_room_open +pas_b400_control_down_door_opened} %+pas_b400_vano_about_room_open =play_sound(pas_b400_vano_about_room_open)%
[walker@vano_hall_6_defence]:walker@vano_hall_def
path_walk = vano_6_defence_walk
path_look = vano_6_defence_look
def_state_standing = hide_na
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_hall_monolith_snipers_dead} walker@vano_hall_6_in
on_info2 = {-pas_b400_about_sniper !is_alive(pas_b400_zulus)} %+pas_b400_about_sniper =play_sound(pas_b400_vano_about_sniper_first_1)%
combat_ignore_cond = {=fighting_dist_ge(25)} true, false
[walker@vano_hall_7]:walker@vano_hall_def
path_walk = vano_7_walk
path_look = vano_7_look
out_restr = pas_b400_sr_hall_7
on_info = {+pas_b400_sr_hall_3} walker@vano_hall_3
on_info2 = {+pas_b400_sr_hall_6} walker@vano_hall_6
on_info3 = {+pas_b400_sr_hall_9} walker@vano_hall_9
on_info4 = {+pas_b400_sr_hall_10} walker@vano_hall_10
on_info5 = {+pas_b400_sr_hall_11} walker@vano_hall_11
on_info6 = {+pas_b400_sr_hall_12} walker@vano_hall_12
on_info7 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@vano_hall_11_defence
[walker@vano_hall_8]:walker@vano_hall_def
path_walk = vano_8_walk
path_look = vano_8_look
out_restr = pas_b400_sr_hall_8
on_info = {+pas_b400_sr_hall_3} walker@vano_hall_3
on_info2 = {+pas_b400_sr_hall_5} walker@vano_hall_5
on_info3 = {+pas_b400_sr_hall_7} walker@vano_hall_7
on_info4 = {+pas_b400_sr_hall_10} walker@vano_hall_10
[walker@vano_hall_9]:walker@vano_hall_def
path_walk = vano_9_walk
path_look = vano_9_look
out_restr = pas_b400_sr_hall_9
on_info = {+pas_b400_sr_hall_7} walker@vano_hall_7
on_info2 = {+pas_b400_sr_hall_12} walker@vano_hall_12
[walker@vano_hall_10]:walker@vano_hall_def
path_walk = vano_10_walk
path_look = vano_10_look
out_restr = pas_b400_sr_hall_10
on_info = {+pas_b400_sr_hall_5} walker@vano_hall_5
on_info2 = {+pas_b400_sr_hall_7} walker@vano_hall_7
on_info3 = {+pas_b400_sr_hall_8} walker@vano_hall_8
on_info4 = {+pas_b400_sr_hall_11} walker@vano_hall_11
on_info5 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@vano_hall_11_defence
[walker@vano_hall_11]:walker@vano_hall_def
path_walk = vano_11_walk
path_look = vano_11_look
out_restr = pas_b400_sr_hall_11
on_info = {+pas_b400_sr_hall_7} walker@vano_hall_7
on_info2 = {+pas_b400_sr_hall_10} walker@vano_hall_10
on_info3 = {+pas_b400_sr_hall_12} walker@vano_hall_12
on_info4 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@vano_hall_11_defence
on_info5 = {+pas_b400_about_railway !is_alive_one(pas_b400_zulus:pas_b400_wanderer) =npc_in_zone(pas_b400_sr_hall_11) !squad_has_enemy(pas_b400_stalkers_squad) -pas_b400_about_transformer} remark@vano_hall_transformer
[remark@vano_hall_transformer]:walker@vano_hall_def
target = path | pas_b400_hall_transformer_look, 0
anim = threat_na
on_signal = sound_end | walker@vano_hall_11 %+pas_b400_about_transformer%
out_restr = pas_b400_sr_hall_11
on_info = %=play_sound(pas_b400_vano_about_transformer_1)%
[walker@vano_hall_11_defence]:walker@vano_hall_def
path_walk = vano_11_defence_walk
path_look = vano_11_defence_look
def_state_standing = hide_na
out_restr = pas_b400_sr_hall_11
on_info = {+pas_b400_hall_monolith_squad_dead} walker@vano_hall_11
[walker@vano_hall_12]:walker@vano_hall_def
path_walk = vano_12_walk
path_look = vano_12_look
out_restr = pas_b400_sr_hall_12
on_info = {+pas_b400_sr_hall_7} walker@vano_hall_7
on_info2 = {+pas_b400_sr_hall_9} walker@vano_hall_9
on_info3 = {+pas_b400_sr_hall_11} walker@vano_hall_11
on_info4 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@vano_hall_11_defence
on_info5 = {+pas_b400_vano_about_railway_1_can =npc_in_zone(pas_b400_sr_hall_12) -pas_b400_vano_about_railway_1} %+pas_b400_vano_about_railway_1 =play_sound(pas_b400_vano_about_railway_1)%
on_info6 = {-pas_b400_control_down_door_opened =npc_in_zone(pas_b400_sr_hall_12) !is_alive_one(pas_b400_zulus:pas_b400_sokolov:pas_b400_wanderer) -pas_b400_vano_about_railway_1} %+pas_b400_about_railway +pas_b400_vano_about_railway_1 =play_sound(pas_b400_vano_about_railway_1)%
on_info7 = {-pas_b400_hall_door_opened +pas_b400_control_down_door_opened =npc_in_zone(pas_b400_sr_hall_12) !is_alive_one(pas_b400_sokolov:pas_b400_zulus) !squad_has_enemy(pas_b400_stalkers_squad) -pas_b400_about_control_gates} %+pas_b400_about_control_gates =play_sound(pas_b400_vano_about_control_gates_1)%
[logic@pas_b400_sokolov_hall]
active = walker@sokolov_hall_enter
suitable = {=check_npc_name(pas_b400_sokolov) -pas_b400_hall_done} true
prior = 200
on_hit = hit@sokolov
on_death = death@sokolov
post_combat_time = 0,0
[walker@sokolov_hall_enter]:walker@sokolov_hall_def
path_walk = sokolov_hall_enter_walk
def_state_moving = sneak_run
out_restr = pas_b400_sr_hall_1
on_signal = path_end | walker@sokolov_hall_1
on_info = {+pas_b400_sr_hall_2} walker@sokolov_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@sokolov_hall_1
on_info3 = {+pas_b400_sr_hall_6} walker@sokolov_hall_1
on_info4 = {+pas_b400_sokolov_about_dome_1_can -pas_b400_sokolov_about_dome_1} %+pas_b400_sokolov_about_dome_1 =play_sound(pas_b400_sokolov_about_dome_1)%
[walker@sokolov_hall_1]:walker@sokolov_hall_def
path_walk = sokolov_1_walk
path_look = sokolov_1_look
out_restr = pas_b400_sr_hall_1
on_info = {+pas_b400_sr_hall_2} walker@sokolov_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@sokolov_hall_3
on_info3 = {+pas_b400_sr_hall_6} walker@sokolov_hall_6
on_info4 = {+pas_b400_sokolov_about_dome_1_can -pas_b400_sokolov_about_dome_1} %+pas_b400_sokolov_about_dome_1 =play_sound(pas_b400_sokolov_about_dome_1)%
on_info5 = {!is_alive(pas_b400_vano) -pas_b400_sokolov_about_dome_1} %+pas_b400_sokolov_about_dome_1 =play_sound(pas_b400_sokolov_about_dome_1)%
[walker@sokolov_hall_2]:walker@sokolov_hall_def
path_walk = sokolov_2_walk
path_look = sokolov_2_look
out_restr = pas_b400_sr_hall_2
on_info = {+pas_b400_sr_hall_1} walker@sokolov_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@sokolov_hall_3
on_info3 = {+pas_b400_sr_hall_5} walker@sokolov_hall_5
[walker@sokolov_hall_3]:walker@sokolov_hall_def
path_walk = sokolov_3_walk
path_look = sokolov_3_look
out_restr = pas_b400_sr_hall_3
on_info = {+pas_b400_sr_hall_1} walker@sokolov_hall_1
on_info2 = {+pas_b400_sr_hall_2} walker@sokolov_hall_2
on_info3 = {+pas_b400_sr_hall_5} walker@sokolov_hall_5
on_info4 = {+pas_b400_sr_hall_6} walker@sokolov_hall_6
on_info5 = {+pas_b400_sr_hall_7} walker@sokolov_hall_7
[walker@sokolov_hall_4]:walker@sokolov_hall_def
path_walk = sokolov_4_walk
path_look = sokolov_4_look
out_restr = pas_b400_sr_hall_4
on_info = {+pas_b400_sr_hall_6} walker@sokolov_hall_6
[walker@sokolov_hall_5]:walker@sokolov_hall_def
path_walk = sokolov_5_walk
path_look = sokolov_5_look
out_restr = pas_b400_sr_hall_5
on_info = {+pas_b400_sr_hall_2} walker@sokolov_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@sokolov_hall_3
on_info3 = {+pas_b400_sr_hall_8} walker@sokolov_hall_8
on_info4 = {+pas_b400_sr_hall_10} walker@sokolov_hall_10
[walker@sokolov_hall_6]:walker@sokolov_hall_def
path_walk = sokolov_6_walk
path_look = sokolov_6_look
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_sr_hall_1} walker@sokolov_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@sokolov_hall_3
on_info3 = {+pas_b400_sr_hall_4} walker@sokolov_hall_4
on_info4 = {+pas_b400_sr_hall_7} walker@sokolov_hall_7
on_info5 = {+pas_b400_control_down_door_opened =actor_in_zone(pas_b400_sr_hall_control_down)} walker@sokolov_hall_6_in
[walker@sokolov_hall_6_in]:walker@sokolov_hall_def
path_walk = sokolov_6_in_walk
path_look = sokolov_6_in_look
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_sr_hall_1} walker@sokolov_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@sokolov_hall_3
on_info3 = {+pas_b400_sr_hall_4} walker@sokolov_hall_4
on_info4 = {+pas_b400_sr_hall_7} walker@sokolov_hall_7
on_info5 = {+pas_b400_hall_monolith_snipers_attacked -pas_b400_hall_monolith_snipers_dead} walker@sokolov_hall_6_defence
on_info6 = {-pas_b400_about_cover !is_alive_one(pas_b400_zulus:pas_b400_vano) =npc_in_zone(pas_b400_sr_hall_6) =actor_in_zone(pas_b400_sr_control_stairs) !squad_has_enemy(pas_b400_stalkers_squad)} %+pas_b400_about_cover =play_sound(pas_b400_sokolov_about_cover_1)%
on_info7 = {+pas_b400_control_up_door_opened} %=play_sound(pas_b400_sokolov_about_sniper_first_1)%
[walker@sokolov_hall_6_defence]:walker@sokolov_hall_def
path_walk = sokolov_6_defence_walk
path_look = sokolov_6_defence_look
def_state_standing = hide_na
def_state_moving = raid
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_hall_monolith_snipers_dead} walker@sokolov_hall_6_in
combat_ignore_cond = {=fighting_dist_ge(25)} true, false
[walker@sokolov_hall_7]:walker@sokolov_hall_def
path_walk = sokolov_7_walk
path_look = sokolov_7_look
out_restr = pas_b400_sr_hall_7
on_info = {+pas_b400_sr_hall_3} walker@sokolov_hall_3
on_info2 = {+pas_b400_sr_hall_6} walker@sokolov_hall_6
on_info3 = {+pas_b400_sr_hall_9} walker@sokolov_hall_9
on_info4 = {+pas_b400_sr_hall_10} walker@sokolov_hall_10
on_info5 = {+pas_b400_sr_hall_11} walker@sokolov_hall_11
on_info6 = {+pas_b400_sr_hall_12} walker@sokolov_hall_12
on_info7 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@sokolov_hall_11_defence
[walker@sokolov_hall_8]:walker@sokolov_hall_def
path_walk = sokolov_8_walk
path_look = sokolov_8_look
out_restr = pas_b400_sr_hall_8
on_info = {+pas_b400_sr_hall_3} walker@sokolov_hall_3
on_info2 = {+pas_b400_sr_hall_5} walker@sokolov_hall_5
on_info3 = {+pas_b400_sr_hall_7} walker@sokolov_hall_7
on_info4 = {+pas_b400_sr_hall_10} walker@sokolov_hall_10
[walker@sokolov_hall_9]:walker@sokolov_hall_def
path_walk = sokolov_9_walk
path_look = sokolov_9_look
out_restr = pas_b400_sr_hall_9
on_info = {+pas_b400_sr_hall_7} walker@sokolov_hall_7
on_info2 = {+pas_b400_sr_hall_12} walker@sokolov_hall_12
[walker@sokolov_hall_10]:walker@sokolov_hall_def
path_walk = sokolov_10_walk
path_look = sokolov_10_look
out_restr = pas_b400_sr_hall_10
on_info = {+pas_b400_sr_hall_5} walker@sokolov_hall_5
on_info2 = {+pas_b400_sr_hall_7} walker@sokolov_hall_7
on_info3 = {+pas_b400_sr_hall_8} walker@sokolov_hall_8
on_info4 = {+pas_b400_sr_hall_11} walker@sokolov_hall_11
on_info5 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@sokolov_hall_11_defence
[walker@sokolov_hall_11]:walker@sokolov_hall_def
path_walk = sokolov_11_walk
path_look = sokolov_11_look
out_restr = pas_b400_sr_hall_11
on_info = {+pas_b400_sr_hall_7} walker@sokolov_hall_7
on_info2 = {+pas_b400_sr_hall_10} walker@sokolov_hall_10
on_info3 = {+pas_b400_sr_hall_12} walker@sokolov_hall_12
on_info4 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@sokolov_hall_11_defence
on_info5 = {-pas_b400_sokolov_about_transformer_1 =actor_in_zone(pas_b400_sr_hall_transformer) =npc_in_zone(pas_b400_sr_hall_11) !squad_has_enemy(pas_b400_stalkers_squad)} %+pas_b400_sokolov_about_transformer_1 =play_sound(pas_b400_sokolov_about_transformer_1)%
[walker@sokolov_hall_11_defence]:walker@sokolov_hall_def
path_walk = sokolov_11_defence_walk
path_look = sokolov_11_defence_look
def_state_standing = hide_na
out_restr = pas_b400_sr_hall_11
on_info = {+pas_b400_hall_monolith_squad_dead} walker@sokolov_hall_11
[walker@sokolov_hall_12]:walker@sokolov_hall_def
path_walk = sokolov_12_walk
path_look = sokolov_12_look
out_restr = pas_b400_sr_hall_12
on_info = {+pas_b400_sr_hall_7} walker@sokolov_hall_7
on_info2 = {+pas_b400_sr_hall_9} walker@sokolov_hall_9
on_info3 = {+pas_b400_sr_hall_11} walker@sokolov_hall_11
on_info4 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@sokolov_hall_11_defence
on_info5 = {-pas_b400_control_down_door_opened =npc_in_zone(pas_b400_sr_hall_12) !is_alive(pas_b400_zulus) -pas_b400_about_railway} %+pas_b400_about_railway =play_sound(pas_b400_sokolov_about_railway_1)%
on_info6 = {-pas_b400_hall_door_opened +pas_b400_control_down_door_opened =npc_in_zone(pas_b400_sr_hall_12) !is_alive(pas_b400_zulus) !squad_has_enemy(pas_b400_stalkers_squad) -pas_b400_about_control_gates} %+pas_b400_about_control_gates =play_sound(pas_b400_sokolov_about_control_gates_1)%
[logic@pas_b400_wanderer_hall]
active = walker@wanderer_hall_enter
suitable = {=check_npc_name(pas_b400_wanderer) -pas_b400_hall_done} true
prior = 200
on_hit = hit@wanderer
on_death = death@wanderer
post_combat_time = 0,0
[walker@wanderer_hall_enter]:walker@wanderer_hall_def
path_walk = wanderer_hall_enter_walk
def_state_moving = sneak_run
out_restr = pas_b400_sr_hall_1
on_signal = path_end | walker@wanderer_hall_1
on_info = {+pas_b400_sr_hall_2} walker@wanderer_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@wanderer_hall_3
on_info3 = {+pas_b400_sr_hall_6} walker@wanderer_hall_6
[walker@wanderer_hall_1]:walker@wanderer_hall_def
path_walk = wanderer_1_walk
path_look = wanderer_1_look
out_restr = pas_b400_sr_hall_1
on_info = {+pas_b400_sr_hall_2} walker@wanderer_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@wanderer_hall_3
on_info3 = {+pas_b400_sr_hall_6} walker@wanderer_hall_6
[walker@wanderer_hall_2]:walker@wanderer_hall_def
path_walk = wanderer_2_walk
path_look = wanderer_2_look
out_restr = pas_b400_sr_hall_2
on_info = {+pas_b400_sr_hall_1} walker@wanderer_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@wanderer_hall_3
on_info3 = {+pas_b400_sr_hall_5} walker@wanderer_hall_5
[walker@wanderer_hall_3]:walker@wanderer_hall_def
path_walk = wanderer_3_walk
path_look = wanderer_3_look
out_restr = pas_b400_sr_hall_3
on_info = {+pas_b400_sr_hall_1} walker@wanderer_hall_1
on_info2 = {+pas_b400_sr_hall_2} walker@wanderer_hall_2
on_info3 = {+pas_b400_sr_hall_5} walker@wanderer_hall_5
on_info4 = {+pas_b400_sr_hall_6} walker@wanderer_hall_6
on_info5 = {+pas_b400_sr_hall_7} walker@wanderer_hall_7
[walker@wanderer_hall_4]:walker@wanderer_hall_def
path_walk = wanderer_4_walk
path_look = wanderer_4_look
out_restr = pas_b400_sr_hall_4
on_info = {+pas_b400_sr_hall_6} walker@wanderer_hall_6
[walker@wanderer_hall_5]:walker@wanderer_hall_def
path_walk = wanderer_5_walk
path_look = wanderer_5_look
out_restr = pas_b400_sr_hall_5
on_info = {+pas_b400_sr_hall_2} walker@wanderer_hall_2
on_info2 = {+pas_b400_sr_hall_3} walker@wanderer_hall_3
on_info3 = {+pas_b400_sr_hall_8} walker@wanderer_hall_8
on_info4 = {+pas_b400_sr_hall_10} walker@wanderer_hall_10
[walker@wanderer_hall_6]:walker@wanderer_hall_def
path_walk = wanderer_6_walk
path_look = wanderer_6_look
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_sr_hall_1} walker@wanderer_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@wanderer_hall_3
on_info3 = {+pas_b400_sr_hall_4} walker@wanderer_hall_4
on_info4 = {+pas_b400_sr_hall_7} walker@wanderer_hall_7
on_info5 = {+pas_b400_control_down_door_opened =actor_in_zone(pas_b400_sr_hall_control_down)} walker@wanderer_hall_6_in
[walker@wanderer_hall_6_in]:walker@wanderer_hall_def
path_walk = wanderer_6_in_walk
path_look = wanderer_6_in_look
out_restr = pas_b400_sr_hall_6
on_info = {+pas_b400_sr_hall_1} walker@wanderer_hall_1
on_info2 = {+pas_b400_sr_hall_3} walker@wanderer_hall_3
on_info3 = {+pas_b400_sr_hall_4} walker@wanderer_hall_4
on_info4 = {+pas_b400_sr_hall_7} walker@wanderer_hall_7
on_info5 = {+pas_b400_hall_monolith_snipers_attacked -pas_b400_hall_monolith_snipers_dead} camper@wanderer_hall_6_defence
on_info6 = {-pas_b400_about_cover !is_alive_one(pas_b400_zulus:pas_b400_vano:pas_b400_sokolov) =npc_in_zone(pas_b400_sr_hall_6) =actor_in_zone(pas_b400_sr_control_stairs) !squad_has_enemy(pas_b400_stalkers_squad)} %+pas_b400_about_cover =play_sound(pas_b400_wanderer_about_cover_1)%
[camper@wanderer_hall_6_defence]:walker@wanderer_hall_def
path_walk = wanderer_6_defence_walk
path_look = wanderer_6_defence_look
no_retreat = true
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_6
radius = 10
on_info = {+pas_b400_hall_monolith_snipers_dead} walker@wanderer_hall_6_in %=play_sound(pas_b400_wanderer_about_sniper_first_2)%
on_info2 = {+pas_b400_wanderer_about_sniper_first_1_can -pas_b400_wanderer_about_sniper_first_1} %+pas_b400_wanderer_about_sniper_first_1 =play_sound(pas_b400_wanderer_about_sniper_first_1)%
on_info3 = {!is_alive_one(pas_b400_zulus:pas_b400_vano) -pas_b400_wanderer_about_sniper_first_1} %+pas_b400_wanderer_about_sniper_first_1 =play_sound(pas_b400_wanderer_about_sniper_first_1)%
[walker@wanderer_hall_7]:walker@wanderer_hall_def
path_walk = wanderer_7_walk
path_look = wanderer_7_look
out_restr = pas_b400_sr_hall_7
on_info = {+pas_b400_sr_hall_3} walker@wanderer_hall_3
on_info2 = {+pas_b400_sr_hall_6} walker@wanderer_hall_6
on_info3 = {+pas_b400_sr_hall_9} walker@wanderer_hall_9
on_info4 = {+pas_b400_sr_hall_10} walker@wanderer_hall_10
on_info5 = {+pas_b400_sr_hall_11} walker@wanderer_hall_11
on_info6 = {+pas_b400_sr_hall_12} walker@wanderer_hall_12
on_info7 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@wanderer_hall_11_defence
[walker@wanderer_hall_8]:walker@wanderer_hall_def
path_walk = wanderer_8_walk
path_look = wanderer_8_look
out_restr = pas_b400_sr_hall_8
on_info = {+pas_b400_sr_hall_3} walker@wanderer_hall_3
on_info2 = {+pas_b400_sr_hall_5} walker@wanderer_hall_5
on_info3 = {+pas_b400_sr_hall_7} walker@wanderer_hall_7
on_info4 = {+pas_b400_sr_hall_10} walker@wanderer_hall_10
[walker@wanderer_hall_9]:walker@wanderer_hall_def
path_walk = wanderer_9_walk
path_look = wanderer_9_look
out_restr = pas_b400_sr_hall_9
on_info = {+pas_b400_sr_hall_7} walker@wanderer_hall_7
on_info2 = {+pas_b400_sr_hall_12} walker@wanderer_hall_12
[walker@wanderer_hall_10]:walker@wanderer_hall_def
path_walk = wanderer_10_walk
path_look = wanderer_10_look
out_restr = pas_b400_sr_hall_10
on_info = {+pas_b400_sr_hall_5} walker@wanderer_hall_5
on_info2 = {+pas_b400_sr_hall_7} walker@wanderer_hall_7
on_info3 = {+pas_b400_sr_hall_8} walker@wanderer_hall_8
on_info4 = {+pas_b400_sr_hall_11} walker@wanderer_hall_11
on_info5 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@wanderer_hall_11_defence
[walker@wanderer_hall_11]:walker@wanderer_hall_def
path_walk = wanderer_11_walk
path_look = wanderer_11_look
out_restr = pas_b400_sr_hall_11
on_info = {+pas_b400_sr_hall_7} walker@wanderer_hall_7
on_info2 = {+pas_b400_sr_hall_10} walker@wanderer_hall_10
on_info3 = {+pas_b400_sr_hall_12} walker@wanderer_hall_12
on_info4 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@wanderer_hall_11_defence
on_info5 = {+pas_b400_about_railway !is_alive(pas_b400_zulus) =npc_in_zone(pas_b400_sr_hall_11) !squad_has_enemy(pas_b400_stalkers_squad) -pas_b400_about_transformer} remark@wanderer_hall_transformer
[remark@wanderer_hall_transformer]:walker@wanderer_hall_def
target = path | pas_b400_hall_transformer_look, 0
anim = threat_na
on_signal = sound_end | walker@wanderer_hall_11 %+pas_b400_about_transformer%
out_restr = pas_b400_sr_hall_11
on_info = %=play_sound(pas_b400_wanderer_about_transformer_1)%
[walker@wanderer_hall_11_defence]:walker@wanderer_hall_def
path_walk = wanderer_11_defence_walk
path_look = wanderer_11_defence_look
out_restr = pas_b400_sr_hall_11
on_info = {+pas_b400_wanderer_about_monolith_1} walker@wanderer_hall_11
on_info2 = {+pas_b400_hall_monolith_squad_dead +pas_b400_wanderer_about_monolith_1_can -pas_b400_wanderer_about_monolith_1} %+pas_b400_wanderer_about_monolith_1 =play_sound(pas_b400_wanderer_about_monolith_1)%
on_info3 = {+pas_b400_hall_monolith_squad_dead !is_alive(pas_b400_zulus) -pas_b400_wanderer_about_monolith_1} %+pas_b400_wanderer_about_monolith_1 =play_sound(pas_b400_wanderer_about_monolith_1)%
[walker@wanderer_hall_12]:walker@wanderer_hall_def
path_walk = wanderer_12_walk
path_look = wanderer_12_look
out_restr = pas_b400_sr_hall_12
on_info = {+pas_b400_sr_hall_7} walker@wanderer_hall_7
on_info2 = {+pas_b400_sr_hall_9} walker@wanderer_hall_9
on_info3 = {+pas_b400_sr_hall_11} walker@wanderer_hall_11
on_info4 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead} walker@wanderer_hall_11_defence
on_info5 = {-pas_b400_control_down_door_opened =npc_in_zone(pas_b400_sr_hall_12) !is_alive_one(pas_b400_sokolov:pas_b400_zulus) -pas_b400_about_railway} %+pas_b400_about_railway =play_sound(pas_b400_wanderer_about_railway_1)%
on_info6 = {-pas_b400_hall_door_opened +pas_b400_control_down_door_opened =npc_in_zone(pas_b400_sr_hall_12) !is_alive_one(pas_b400_zulus:pas_b400_sokolov:pas_b400_vano) !squad_has_enemy(pas_b400_stalkers_squad) -pas_b400_about_control_gates} %+pas_b400_about_control_gates =play_sound(pas_b400_wanderer_about_control_gates_1)%

View file

@ -0,0 +1,439 @@
[wounded@no_wound]
hp_state = 0 | wounded_heavy@help_heavy
hp_state_see = 0 | wounded_heavy@help_heavy
hp_victim = 0 | nil
hp_cover = 0 | false
hp_fight = 0 | false
[logic@pas_b400_hall_monolith_1]
active = camper@monolith_1
suitable = {=target_squad_name(pas_b400_hall_monolith_squad)}
prior = 200
[camper@monolith_1]
path_walk = monolith_1_1_walk
path_look = monolith_1_look
no_retreat = true
def_state_moving = assault
on_signal = path_end | walker@monolith_1
wounded = wounded@no_wound
[walker@monolith_1]
path_walk = monolith_1_2_walk
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_2]
active = camper@monolith_2
suitable = {=target_squad_name(pas_b400_hall_monolith_squad)}
prior = 200
[camper@monolith_2]
path_walk = monolith_2_1_walk
path_look = monolith_1_look
no_retreat = true
def_state_moving = assault
on_signal = path_end | walker@monolith_2
wounded = wounded@no_wound
[walker@monolith_2]
path_walk = monolith_2_2_walk
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_3]
active = camper@monolith_3
suitable = {=target_squad_name(pas_b400_hall_monolith_squad)}
prior = 200
[camper@monolith_3]
path_walk = monolith_3_1_walk
path_look = monolith_1_look
no_retreat = true
def_state_moving = assault
on_signal = path_end | walker@monolith_3
wounded = wounded@no_wound
[walker@monolith_3]
path_walk = monolith_3_2_walk
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_4]
active = camper@monolith_4
suitable = {=target_squad_name(pas_b400_hall_monolith_squad)}
prior = 200
[camper@monolith_4]
path_walk = monolith_4_1_walk
path_look = monolith_2_look
no_retreat = true
def_state_moving = assault
on_signal = path_end | walker@monolith_4
wounded = wounded@no_wound
[walker@monolith_4]
path_walk = monolith_4_2_walk
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_5]
active = camper@monolith_5
suitable = {=target_squad_name(pas_b400_hall_monolith_squad)}
prior = 200
[camper@monolith_5]
path_walk = monolith_5_1_walk
path_look = monolith_2_look
no_retreat = true
def_state_moving = assault
on_signal = path_end | walker@monolith_5
wounded = wounded@no_wound
[walker@monolith_5]
path_walk = monolith_5_2_walk
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_6]
active = camper@monolith_6
suitable = {=target_squad_name(pas_b400_hall_monolith_squad)}
prior = 200
[camper@monolith_6]
path_walk = monolith_6_1_walk
path_look = monolith_2_look
no_retreat = true
def_state_moving = assault
on_signal = path_end | walker@monolith_6
wounded = wounded@no_wound
[walker@monolith_6]
path_walk = monolith_6_2_walk
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_7]
active = camper@monolith_7
suitable = {=target_squad_name(pas_b400_hall_monolith_2_squad)}
prior = 200
[camper@monolith_7]
path_walk = monolith_7_1_walk
path_look = monolith_7_look
no_retreat = true
def_state_moving = assault
on_signal = path_end | walker@monolith_7
wounded = wounded@no_wound
[walker@monolith_7]
path_walk = monolith_7_2_walk
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_8]
active = camper@monolith_8
suitable = {=target_squad_name(pas_b400_hall_monolith_2_squad)}
prior = 200
[camper@monolith_8]
path_walk = monolith_8_1_walk
path_look = monolith_8_look
no_retreat = true
def_state_moving = assault
on_signal = path_end | walker@monolith_8
wounded = wounded@no_wound
[walker@monolith_8]
path_walk = monolith_8_2_walk
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_sniper_1]
active = camper@sniper_1
suitable = {=target_squad_name(pas_b400_hall_monolith_sniper_1)}
prior = 200
[camper@sniper_1]
path_walk = mono_sniper_1_walk
path_look = mono_sniper_1_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_sniper_1_in
on_signal = path_end | remark@sniper_1_wait
combat_ignore_cond = true
wounded = wounded@no_wound
[remark@sniper_1_wait]
target = path | pas_b400_hall_mono_sniper_1_look,0
anim = hide_na
on_info = {=actor_in_zone(pas_b400_sr_hall_control_up)} remark@sniper_1 %+pas_b400_hall_monolith_snipers_attacked%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_6)} remark@sniper_1 %+pas_b400_hall_monolith_snipers_attacked%
out_restr = pas_b400_sr_hall_sniper_1_in
combat_ignore_cond = true
wounded = wounded@no_wound
[remark@sniper_1]
target = path | pas_b400_hall_mono_sniper_1_look,0
anim = hide_fire
on_signal = anim_end | camper@sniper_1_battle
on_game_timer = 30 | camper@sniper_1_battle
out_restr = pas_b400_sr_hall_sniper_1_in
combat_ignore_cond = {=check_enemy_name(wanderer)} true
wounded = wounded@no_wound
[camper@sniper_1_battle]
path_walk = mono_sniper_1_walk
path_look = mono_sniper_1_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_sniper_1_in
radius = 10
combat_ignore_cond = {=check_enemy_name(wanderer)} true
wounded = wounded@no_wound
[logic@pas_b400_hall_sniper_2]
active = camper@sniper_2
suitable = {=target_squad_name(pas_b400_hall_monolith_sniper_2)}
prior = 200
[camper@sniper_2]
path_walk = mono_sniper_2_walk
path_look = mono_sniper_2_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_sniper_2_in
on_signal = path_end | remark@sniper_2_wait
combat_ignore_cond = true
wounded = wounded@no_wound
[remark@sniper_2_wait]
target = path | pas_b400_hall_mono_sniper_2_look,0
anim = hide_na
on_info = {=actor_in_zone(pas_b400_sr_hall_control_up)} remark@sniper_2 %+pas_b400_hall_monolith_snipers_attacked%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_6)} remark@sniper_2 %+pas_b400_hall_monolith_snipers_attacked%
out_restr = pas_b400_sr_hall_sniper_2_in
combat_ignore_cond = true
wounded = wounded@no_wound
[remark@sniper_2]
target = path | pas_b400_hall_mono_sniper_2_look,0
anim = hide_fire
on_signal = anim_end | camper@sniper_2_battle
on_game_timer = 30 | camper@sniper_2_battle
out_restr = pas_b400_sr_hall_sniper_2_in
combat_ignore_cond = {=check_enemy_name(wanderer)} true
wounded = wounded@no_wound
[camper@sniper_2_battle]
path_walk = mono_sniper_2_walk
path_look = mono_sniper_2_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_sniper_2_in
radius = 10
combat_ignore_cond = {=check_enemy_name(wanderer)} true
wounded = wounded@no_wound
[logic@pas_b400_hall_sniper_3]
active = camper@sniper_3
suitable = {=target_squad_name(pas_b400_hall_monolith_sniper_3)}
prior = 200
[camper@sniper_3]
path_walk = mono_sniper_3_walk
path_look = mono_sniper_3_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_2
on_signal = path_end | remark@sniper_3_wait
combat_ignore_cond = true
wounded = wounded@no_wound
[remark@sniper_3_wait]
target = path | pas_b400_hall_mono_sniper_3_look,0
anim = hide_na
on_info5 = {=actor_in_zone(pas_b400_sr_hall_control_up)} remark@sniper_3
on_info6 = {=actor_in_zone(pas_b400_sr_hall_6)} remark@sniper_3
out_restr = pas_b400_sr_hall_2
combat_ignore_cond = true
wounded = wounded@no_wound
[remark@sniper_3]
target = story | actor
anim = hide_fire
on_signal = anim_end | camper@sniper_3_battle
on_game_timer = 30 | camper@sniper_3_battle
out_restr = pas_b400_sr_hall_2
wounded = wounded@no_wound
[camper@sniper_3_battle]
path_walk = mono_sniper_3_walk
path_look = mono_sniper_3_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_2
radius = 10
wounded = wounded@no_wound
[logic@pas_b400_hall_sniper_4]
active = camper@sniper_4
suitable = {=target_squad_name(pas_b400_hall_monolith_sniper_4)}
prior = 200
[camper@sniper_4]
path_walk = mono_sniper_4_walk
path_look = mono_sniper_4_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_9
on_signal = path_end | remark@sniper_4_wait
combat_ignore_cond = true
wounded = wounded@no_wound
[remark@sniper_4_wait]
target = path | pas_b400_hall_mono_sniper_4_look,0
anim = hide_na
on_info = {=actor_in_zone(pas_b400_sr_hall_1)} remark@sniper_4
on_info2 = {=actor_in_zone(pas_b400_sr_hall_3)} remark@sniper_4
on_info3 = {=actor_in_zone(pas_b400_sr_hall_7)} remark@sniper_4
on_info4 = {=actor_in_zone(pas_b400_sr_hall_9)} remark@sniper_4
out_restr = pas_b400_sr_hall_9
combat_ignore_cond = true
wounded = wounded@no_wound
[remark@sniper_4]
target = story | actor
anim = hide_fire
on_signal = anim_end | camper@sniper_4_battle
on_game_timer = 30 | camper@sniper_4_battle
out_restr = pas_b400_sr_hall_9
wounded = wounded@no_wound
[camper@sniper_4_battle]
path_walk = mono_sniper_4_walk
path_look = mono_sniper_4_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
out_restr = pas_b400_sr_hall_9
radius = 10
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_10]
active = walker@monolith_10_wait
suitable = {=target_squad_name(pas_b400_hall_monolith_after_fwd_squad)}
prior = 200
[walker@monolith_10_wait]
path_walk = monolith_after_fwd_squad_spawn
def_state_standing = hide_na
def_state_moving = assault
on_info = {+pas_b400_hall_door_opened} walker@monolith_10
wounded = wounded@no_wound
[walker@monolith_10]
path_walk = monolith_10_walk
path_look = monolith_10_look
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_11]
active = walker@monolith_11_wait
suitable = {=target_squad_name(pas_b400_hall_monolith_after_fwd_squad)}
prior = 200
[walker@monolith_11_wait]
path_walk = monolith_after_fwd_squad_spawn
def_state_standing = hide_na
def_state_moving = assault
on_info = {+pas_b400_hall_door_opened} walker@monolith_11
wounded = wounded@no_wound
[walker@monolith_11]
path_walk = monolith_11_walk
path_look = monolith_11_look
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_12]
active = walker@monolith_12
suitable = {=target_squad_name(pas_b400_hall_monolith_after_bwd_squad)}
prior = 200
[walker@monolith_12]
path_walk = monolith_12_walk
path_look = monolith_12_look
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound
[logic@pas_b400_hall_monolith_13]
active = walker@monolith_13
suitable = {=target_squad_name(pas_b400_hall_monolith_after_bwd_squad)}
prior = 200
[walker@monolith_13]
path_walk = monolith_13_walk
path_look = monolith_13_look
def_state_standing = hide_na
def_state_moving = assault
wounded = wounded@no_wound

View file

@ -0,0 +1,87 @@
[mob_home@pas_b400_hall_tushkano_def]
gulag_point = true
home_min_radius = 10
home_mid_radius = 20
home_max_radius = 70
combat_ignore_cond = true
[mob_home@pas_b400_hall_tushkano_okay_def]
gulag_point = true
home_min_radius = 10
home_mid_radius = 20
home_max_radius = 70
[logic@pas_b400_hall_tushkano_1]
active = mob_home@pas_b400_hall_tushkano_1
suitable = {=target_squad_name(pas_b400_hall_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_hall_tushkano_2]
active = mob_home@pas_b400_hall_tushkano_2
suitable = {=target_squad_name(pas_b400_hall_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_hall_tushkano_3]
active = mob_home@pas_b400_hall_tushkano_3
suitable = {=target_squad_name(pas_b400_hall_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_hall_tushkano_4]
active = mob_home@pas_b400_hall_tushkano_4
suitable = {=target_squad_name(pas_b400_hall_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_hall_tushkano_5]
active = mob_home@pas_b400_hall_tushkano_5
suitable = {=target_squad_name(pas_b400_hall_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_hall_tushkano_6]
active = mob_home@pas_b400_hall_tushkano_6
suitable = {=target_squad_name(pas_b400_hall_tushkano)} true
prior = 200
monster_job = true
[mob_home@pas_b400_hall_tushkano_1]:mob_home@pas_b400_hall_tushkano_def
on_info = {+pas_b400_tunnel_gates_opened} mob_home@pas_b400_hall_tushkano_1_okay
[mob_home@pas_b400_hall_tushkano_1_okay]:mob_home@pas_b400_hall_tushkano_okay_def
[mob_home@pas_b400_hall_tushkano_2]:mob_home@pas_b400_hall_tushkano_def
on_info = {+pas_b400_tunnel_gates_opened} mob_home@pas_b400_hall_tushkano_2_okay
[mob_home@pas_b400_hall_tushkano_2_okay]:mob_home@pas_b400_hall_tushkano_okay_def
[mob_home@pas_b400_hall_tushkano_3]:mob_home@pas_b400_hall_tushkano_def
on_info = {+pas_b400_tunnel_gates_opened} mob_home@pas_b400_hall_tushkano_3_okay
[mob_home@pas_b400_hall_tushkano_3_okay]:mob_home@pas_b400_hall_tushkano_okay_def
[mob_home@pas_b400_hall_tushkano_4]:mob_home@pas_b400_hall_tushkano_def
on_info = {+pas_b400_tunnel_gates_opened} mob_home@pas_b400_hall_tushkano_4_okay
[mob_home@pas_b400_hall_tushkano_4_okay]:mob_home@pas_b400_hall_tushkano_okay_def
[mob_home@pas_b400_hall_tushkano_5]:mob_home@pas_b400_hall_tushkano_def
on_info = {+pas_b400_tunnel_gates_opened} mob_home@pas_b400_hall_tushkano_5_okay
[mob_home@pas_b400_hall_tushkano_5_okay]:mob_home@pas_b400_hall_tushkano_okay_def
[mob_home@pas_b400_hall_tushkano_6]:mob_home@pas_b400_hall_tushkano_def
on_info = {+pas_b400_tunnel_gates_opened} mob_home@pas_b400_hall_tushkano_6_okay
[mob_home@pas_b400_hall_tushkano_6_okay]:mob_home@pas_b400_hall_tushkano_okay_def

View file

@ -0,0 +1,12 @@
[logic]
active = ph_button@wait
[ph_button@wait]
anim = idle
on_press = ph_idle@attack %=anim_obj_forward(pas_b400_door_control_down) =create_squad(pas_b400_hall_monolith_squad:pas_b400_hall) +pas_b400_control_down_door_opened =heal_squad(pas_b400_stalkers_squad)%
tooltip = pas_b400_tip_switcher
[ph_idle@attack]
on_game_timer = 30 | ph_idle@nil %+pas_b400_hall_monolith_squad_attacked%
[ph_idle@nil]

View file

@ -0,0 +1,16 @@
[logic]
active = ph_button@wait
[ph_button@wait]
anim = idle
on_press = ph_idle@spawn %=anim_obj_forward(pas_b400_door_control_up) =create_squad(pas_b400_hall_monolith_sniper_1:pas_b400_hall) =create_squad(pas_b400_hall_monolith_sniper_2:pas_b400_hall) =create_squad(pas_b400_hall_monolith_sniper_3:pas_b400_hall) +pas_b400_control_up_door_opened =heal_squad(pas_b400_stalkers_squad)%
tooltip = tip_door_open
[ph_idle@spawn]
on_game_timer = 120 | ph_idle@add
on_info = {=actor_in_zone(pas_b400_sr_way_1)} ph_idle@nil %=create_squad(pas_b400_hall_monolith_after_bwd_squad:pas_b400_hall)%
[ph_idle@add]
on_info = {!actor_in_zone(pas_b400_sr_hall_2)} ph_idle@nil %=create_squad(pas_b400_hall_monolith_after_bwd_squad:pas_b400_hall)%
[ph_idle@nil]

View file

@ -0,0 +1,19 @@
[logic]
active = ph_button@wait
[ph_button@wait]
anim = idle
on_press = ph_idle@elevator_off %=anim_obj_forward(pas_b400_door_downstairs) =heal_squad(pas_b400_stalkers_squad) +pas_b400_downstairs_button_pressed -pas_b400_about_gates%
tooltip = tip_door_open
[ph_idle@elevator_off]
on_game_timer = 60 | {-pas_b400_downstairs_door_opened} %+pas_b400_downstairs_door_opened%
on_game_timer2 = 150 | ph_idle@track_off %+pas_b400_field_elevator_off%
[ph_idle@track_off]
on_game_timer = 150 | ph_idle@downstairs_off %+pas_b400_field_track_off%
[ph_idle@downstairs_off]
on_game_timer = 100 | ph_idle@nil %+pas_b400_field_downstairs_off%
[ph_idle@nil]

View file

@ -0,0 +1,16 @@
[logic]
active = ph_button@wait
[ph_button@wait]
anim = idle
on_press = ph_idle@pass %=anim_obj_forward(pas_b400_door_elevator) =heal_squad(pas_b400_stalkers_squad) +pas_b400_elevator_button_pressed -pas_b400_about_gates%
tooltip = tip_door_open
[ph_idle@pass]
on_game_timer = 120 | ph_idle@open %+pas_b400_sr_elevator_5_passed%
[ph_idle@open]
on_game_timer = 20 | {-pas_b400_track_2_snorks_attack} %+pas_b400_track_2_snorks_attack%
on_game_timer2 = 50 | ph_idle@nil %+pas_b400_elevator_gates_opened%
[ph_idle@nil]

View file

@ -0,0 +1,19 @@
[logic]
active = ph_button@wait
[ph_button@wait]
anim = idle
on_press = ph_button@switch %+pas_b400_switcher_use%
on_info = {+pas_b400_switcher_use} ph_button@switch
[ph_button@switch]
anim = off
on_game_timer = 10 | ph_idle@open %=anim_obj_forward(pas_b400_door_hall) =heal_squad(pas_b400_stalkers_squad) +pas_b400_hall_button_pressed%
[ph_idle@open]
on_info = ph_idle@spawn %+pas_b400_hall_door_opened%
[ph_idle@spawn]
on_info = {!actor_in_zone(pas_b400_sr_way_1)} ph_idle@nil %=create_squad(pas_b400_hall_monolith_after_fwd_squad:pas_b400_hall)%
[ph_idle@nil]

View file

@ -0,0 +1,13 @@
[logic]
active = ph_button@wait
[ph_button@wait]
anim = idle
on_press = ph_idle@open %=anim_obj_forward(pas_b400_door_track) =heal_squad(pas_b400_stalkers_squad) +pas_b400_track_button_pressed -pas_b400_about_gates%
tooltip = tip_door_open
[ph_idle@open]
on_game_timer = 60 | {-pas_b400_track_door_opened} %+pas_b400_track_door_opened%
on_game_timer2 = 200 | ph_idle@nil %+pas_b400_track_done%
[ph_idle@nil]

View file

@ -0,0 +1,17 @@
[logic]
active = ph_button@wait
[ph_button@wait]
anim = idle
on_press = ph_idle@wreck %=anim_obj_forward(pas_b400_door_tunnel) =heal_squad(pas_b400_stalkers_squad) +pas_b400_tunnel_button_pressed%
tooltip = tip_door_open
[ph_idle@wreck]
;on_game_timer = 110 | ph_idle@field_off %=anim_obj_stop(pas_b400_door_tunnel) +pas_b400_tunnel_gates_opened%
;on_game_timer = 150 | ph_idle@field_off %=anim_obj_stop(pas_b400_door_tunnel) +pas_b400_tunnel_gates_opened%
on_game_timer2 = 60 | ph_idle@field_off %+pas_b400_tunnel_gates_started_to_open%
[ph_idle@field_off]
on_game_timer = 190 | ph_idle@nil %+pas_b400_field_tunnel_off%
[ph_idle@nil]

View file

@ -0,0 +1,12 @@
[logic]
active = ph_button@wait
[ph_button@wait]
anim = idle
on_press = ph_idle@sound %=anim_obj_forward(pas_b400_door_way) =heal_squad(pas_b400_stalkers_squad) +pas_b400_way_button_pressed -pas_b400_about_gates%
tooltip = tip_door_open
[ph_idle@sound]
on_game_timer = 70 | ph_idle@nil %+pas_b400_way_door_opened%
[ph_idle@nil]

View file

@ -0,0 +1,9 @@
[logic]
active = ph_idle@humm
[ph_idle@humm]
;on_info = ph_idle@nil %=play_sound_looped(pas_b400_transformer)%
on_info = {!black_screen} %=play_sound_looped(pas_b400_transformer)%
[ph_idle@nil]
on_info = ph_idle@humm

View file

@ -0,0 +1,44 @@
[logic]
active = sr_idle@pas_b400_sr_canalisation_1
[sr_idle@pas_b400_sr_canalisation_1]
on_info = {-pas_b400_sr_canalisation_1 =actor_in_zone(pas_b400_sr_canalisation_1)} %+pas_b400_sr_canalisation_1%
on_info2 = {=actor_in_zone(pas_b400_sr_canalisation_2) -pas_b400_canalisation_tushkano_start} %+pas_b400_canalisation_tushkano_start%
on_info3 = {!squad_exist(pas_b400_canalisation_tushkano) !squad_exist(pas_b400_canalisation_snork_2)} sr_idle@pas_b400_sr_canalisation_2 %-pas_b400_sr_canalisation_1 +pas_b400_sr_canalisation_2%
on_info4 = {-pas_b400_canalisation_zombied_3_attacked =actor_in_zone(pas_b400_sr_canalisation_3)} %+pas_b400_canalisation_zombied_3_attacked =heal_squad(pas_b400_stalkers_squad)%
on_info5 = {-pas_b400_canalisation_zombied_5_attacked =actor_in_zone(pas_b400_sr_canalisation_5)} %+pas_b400_canalisation_zombied_5_attacked =heal_squad(pas_b400_stalkers_squad)%
[sr_idle@pas_b400_sr_canalisation_2]
on_info = {=actor_in_zone(pas_b400_sr_canalisation_3)} sr_idle@pas_b400_sr_canalisation_3 %-pas_b400_sr_canalisation_2 +pas_b400_sr_canalisation_3%
on_info2 = {=actor_in_zone(pas_b400_sr_canalisation_4)} sr_idle@pas_b400_sr_canalisation_4 %-pas_b400_sr_canalisation_2 +pas_b400_sr_canalisation_4%
on_info3 = {=actor_in_zone(pas_b400_sr_canalisation_5)} sr_idle@pas_b400_sr_canalisation_5 %-pas_b400_sr_canalisation_2 +pas_b400_sr_canalisation_5%
on_info4 = {=actor_in_zone(pas_b400_sr_canalisation_6)} sr_idle@pas_b400_sr_canalisation_6 %-pas_b400_sr_canalisation_2 +pas_b400_sr_canalisation_6%
on_info5 = {=actor_in_zone(pas_b400_sr_canalisation_7)} sr_idle@pas_b400_sr_canalisation_7 %-pas_b400_sr_canalisation_2 +pas_b400_sr_canalisation_7 =scenario_autosave(st_save_uni_travel_pas_to_pri)%
[sr_idle@pas_b400_sr_canalisation_3]
on_info = {=actor_in_zone(pas_b400_sr_canalisation_2) !actor_in_zone(pas_b400_sr_canalisation_3)} sr_idle@pas_b400_sr_canalisation_2 %-pas_b400_sr_canalisation_3 +pas_b400_sr_canalisation_2%
on_info2 = {=actor_in_zone(pas_b400_sr_canalisation_4)} sr_idle@pas_b400_sr_canalisation_4 %-pas_b400_sr_canalisation_3 +pas_b400_sr_canalisation_4%
on_info3 = {-pas_b400_canalisation_zombied_3_attacked} %+pas_b400_canalisation_zombied_3_attacked =heal_squad(pas_b400_stalkers_squad)%
[sr_idle@pas_b400_sr_canalisation_4]
on_info = {=actor_in_zone(pas_b400_sr_canalisation_3) !actor_in_zone(pas_b400_sr_canalisation_4)} sr_idle@pas_b400_sr_canalisation_3 %-pas_b400_sr_canalisation_4 +pas_b400_sr_canalisation_3%
on_info2 = {=actor_in_zone(pas_b400_sr_canalisation_5)} sr_idle@pas_b400_sr_canalisation_5 %-pas_b400_sr_canalisation_4 +pas_b400_sr_canalisation_5%
on_info3 = {-pas_b400_canalisation_zombied_5_attacked} %+pas_b400_canalisation_zombied_5_attacked =heal_squad(pas_b400_stalkers_squad)%
[sr_idle@pas_b400_sr_canalisation_5]
on_info = {=actor_in_zone(pas_b400_sr_canalisation_4) !actor_in_zone(pas_b400_sr_canalisation_5)} sr_idle@pas_b400_sr_canalisation_4 %-pas_b400_sr_canalisation_5 +pas_b400_sr_canalisation_4%
on_info2 = {=actor_in_zone(pas_b400_sr_canalisation_6)} sr_idle@pas_b400_sr_canalisation_6 %-pas_b400_sr_canalisation_5 +pas_b400_sr_canalisation_6%
on_info3 = {-pas_b400_sokolov_about_exit_1_can +pas_b400_zulus_about_exit_1} sr_idle@sokolov_talks
[sr_idle@sokolov_talks]
on_game_timer = 20 | sr_idle@pas_b400_sr_canalisation_5 %+pas_b400_sokolov_about_exit_1_can%
[sr_idle@pas_b400_sr_canalisation_6]
on_info = {=actor_in_zone(pas_b400_sr_canalisation_5) !actor_in_zone(pas_b400_sr_canalisation_6)} sr_idle@pas_b400_sr_canalisation_5 %-pas_b400_sr_canalisation_6 +pas_b400_sr_canalisation_5%
on_info2 = {=actor_in_zone(pas_b400_sr_canalisation_7)} sr_idle@pas_b400_sr_canalisation_7 %-pas_b400_sr_canalisation_6 +pas_b400_sr_canalisation_7 =scenario_autosave(st_save_uni_travel_pas_to_pri)%
[sr_idle@pas_b400_sr_canalisation_7]
on_info = {=actor_in_zone(pas_b400_sr_canalisation_6) !actor_in_zone(pas_b400_sr_canalisation_7)} sr_idle@pas_b400_sr_canalisation_6 %-pas_b400_sr_canalisation_7 +pas_b400_sr_canalisation_6%
on_info2 = {+pas_b400_canalisation_done} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,119 @@
[logic]
active = sr_idle@turn_lamps_off
[sr_idle@turn_lamps_off]
on_info = sr_idle@prestart %=run_postprocess(black:3009:true) =disable_ui =turn_off_underpass_lamps%
[sr_idle@prestart]
;çàòû÷êà
;on_info = {-leader_achievement_gained} %+jup_a10_vano_agree_go_und +jup_b218_soldier_hired +jup_b218_monolith_hired +leader_achievement_gained%
on_info2 = {+leader_achievement_gained} sr_idle@start %=create_squad(pas_b400_stalkers_squad_strong:pas_b400_elevator)%
on_info3 = {-leader_achievement_gained} sr_idle@start %=create_squad(pas_b400_stalkers_squad:pas_b400_elevator)%
[sr_idle@start]
on_info = sr_idle@spawn_vano %=teleport_actor(pas_b400_elevator_actor_1_walk:pas_b400_elevator_actor_1_look)%
[sr_idle@spawn_vano]
on_info = {+jup_a10_vano_agree_go_und +leader_achievement_gained} sr_idle@spawn_sokolov %=create_squad_member(pas_b400_vano_strong:pas_b400_stalkers_squad:pas_b400_elevator_vano_1_walk)%
on_info2 = {+jup_a10_vano_agree_go_und -leader_achievement_gained} sr_idle@spawn_sokolov %=create_squad_member(pas_b400_vano:pas_b400_stalkers_squad:pas_b400_elevator_vano_1_walk)%
on_info3 = {-jup_a10_vano_agree_go_und} sr_idle@spawn_sokolov %+pri_a15_vano_out%
[sr_idle@spawn_sokolov]
on_info = {+jup_b218_soldier_hired +leader_achievement_gained} sr_idle@spawn_wanderer %=create_squad_member(pas_b400_sokolov_strong:pas_b400_stalkers_squad:pas_b400_elevator_sokolov_1_walk)%
on_info2 = {+jup_b218_soldier_hired -leader_achievement_gained} sr_idle@spawn_wanderer %=create_squad_member(pas_b400_sokolov:pas_b400_stalkers_squad:pas_b400_elevator_sokolov_1_walk)%
on_info3 = {-jup_b218_soldier_hired} sr_idle@spawn_wanderer %+pri_a15_sokolov_out%
[sr_idle@spawn_wanderer]
on_info = {+jup_b218_monolith_hired +leader_achievement_gained} sr_idle@out %=create_squad_member(pas_b400_wanderer_strong:pas_b400_stalkers_squad:pas_b400_elevator_wanderer_1_walk)%
on_info2 = {+jup_b218_monolith_hired -leader_achievement_gained} sr_idle@out %=create_squad_member(pas_b400_wanderer:pas_b400_stalkers_squad:pas_b400_elevator_wanderer_1_walk)%
on_info3 = {-jup_b218_monolith_hired} sr_idle@out %+pri_a15_wanderer_out%
[sr_idle@out]
on_info = sr_idle@save %=stop_postprocess(3009) =enable_ui =give_task(pas_b400_pripyat) =set_counter(pas_b400_actor_zulus_hit:0) =set_counter(pas_b400_actor_vano_hit:0) =set_counter(pas_b400_actor_sokolov_hit:0) =set_counter(pas_b400_actor_wanderer_hit:0) +pas_b400_task_given =set_squad_goodwill(pas_b400_stalkers_squad:friend)%
[sr_idle@save]
on_info = {-pas_b400_underpass_start} %+pas_b400_underpass_start =scenario_autosave(st_save_pas_b400_underpass_start)%
on_info2 = {+pas_b400_underpass_start} sr_idle@wait_for_shutdown
[sr_idle@wait_for_shutdown]
on_info = {!actor_in_zone(pas_b400_sr_elevator_1)} sr_idle@shutdown
[sr_idle@shutdown]
;shutdown lamps
on_game_timer = 10 | %=play_sound_by_story(pas_b400_bwd:pas_b400_elevator_off)%
on_game_timer2 = 20 | sr_idle@elevator %=turn_off(pas_b400_lamp_start_green) +pas_b400_sr_elevator_1_passed%
[sr_idle@elevator]
on_info = {=actor_in_zone(pas_b400_sr_track_1)} sr_idle@track %+pas_b400_elevator_done%
on_info2 = {!squad_exist(pas_b400_snork_track_2) +pas_b400_sr_elevator_5_passed} sr_idle@track %+pas_b400_elevator_done%
on_info3 = {-pas_b400_sr_elevator_5 =actor_in_zone(pas_b400_sr_elevator_5_in)} %+pas_b400_sr_elevator_5%
on_info4 = {-pas_b400_elevator_button_pressed =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_elevator_5)} sr_idle@elevator_talk
[sr_idle@elevator_talk]
on_info = {=actor_in_zone(pas_b400_sr_track_1)} sr_idle@track %+pas_b400_elevator_done%
on_info2 = {!squad_exist(pas_b400_snork_track_2) +pas_b400_sr_elevator_5_passed} sr_idle@track %+pas_b400_elevator_done%
on_info3 = {-pas_b400_sr_elevator_5 =actor_in_zone(pas_b400_sr_elevator_5_in)} %+pas_b400_sr_elevator_5%
on_game_timer = 150 | {-pas_b400_elevator_button_pressed -pas_b400_about_gates} sr_idle@elevator %+pas_b400_about_gates%
[sr_idle@track]
on_info = {=actor_in_zone(pas_b400_sr_downstairs_1)} sr_idle@tunnel %+pas_b400_track_done%
on_info2 = {-pas_b400_sr_track_4 =actor_in_zone(pas_b400_sr_track_4_in)} %+pas_b400_sr_track_4%
on_info3 = {-pas_b400_track_button_pressed =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_4)} sr_idle@track_talk
[sr_idle@track_talk]
on_info = {=actor_in_zone(pas_b400_sr_downstairs_1)} sr_idle@tunnel %+pas_b400_track_done%
on_info2 = {-pas_b400_sr_track_4 =actor_in_zone(pas_b400_sr_track_4_in)} %+pas_b400_sr_track_4%
on_game_timer = 150 | {=is_alive(pas_b400_zulus) -pas_b400_zulus_about_obstacle_2} sr_idle@track
on_game_timer2 = 150 | {-pas_b400_track_button_pressed -pas_b400_about_gates !is_alive(pas_b400_zulus)} sr_idle@track %+pas_b400_about_gates%
on_game_timer3 = 150 | {-pas_b400_track_button_pressed -pas_b400_about_gates +pas_b400_zulus_about_obstacle_2} sr_idle@track %+pas_b400_about_gates%
[sr_idle@tunnel]
on_info = {=actor_in_zone(pas_b400_sr_tunnel_1)} sr_idle@hall %+pas_b400_downstairs_done%
on_info2 = {!squad_exist(pas_b400_tunnel_tushkano) +pas_b400_downstairs_door_opened} sr_idle@hall %+pas_b400_downstairs_done%
on_info3 = {-pas_b400_sr_downstairs_2 =actor_in_zone(pas_b400_sr_downstairs_2)} %+pas_b400_sr_downstairs_2%
on_info4 = {-pas_b400_downstairs_button_pressed =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_downstairs_2)} sr_idle@downstairs_talk
[sr_idle@downstairs_talk]
on_info = {=actor_in_zone(pas_b400_sr_tunnel_1)} sr_idle@hall %+pas_b400_downstairs_done%
on_info2 = {!squad_exist(pas_b400_tunnel_tushkano) +pas_b400_downstairs_door_opened} sr_idle@hall %+pas_b400_downstairs_done%
on_info3 = {-pas_b400_sr_downstairs_2 =actor_in_zone(pas_b400_sr_downstairs_2)} %+pas_b400_sr_downstairs_2%
on_game_timer = 150 | {-pas_b400_downstairs_button_pressed -pas_b400_about_gates} sr_idle@tunnel %+pas_b400_about_gates%
[sr_idle@hall]
on_info = {=actor_in_zone(pas_b400_sr_hall_1)} sr_idle@way %+pas_b400_tunnel_done =spawn_corpse(sim_default_monolith_1:pas_b400_hall_monolith_dead_spawn:0)%
on_info2 = {!squad_has_enemy(pas_b400_stalkers_squad) !squad_exist(pas_b400_snork_tunnel_5) +pas_b400_zulus_about_train_gates_2 +pas_b400_tunnel_gates_opened} sr_idle@way %+pas_b400_tunnel_done =spawn_corpse(sim_default_monolith_1:pas_b400_hall_monolith_dead_spawn:0)%
on_info3 = {!squad_has_enemy(pas_b400_stalkers_squad) !squad_exist(pas_b400_snork_tunnel_5) !is_alive(pas_b400_zulus) +pas_b400_tunnel_gates_opened} sr_idle@way %+pas_b400_tunnel_done =spawn_corpse(sim_default_monolith_1:pas_b400_hall_monolith_dead_spawn:0)%
on_info4 = {=squad_in_zone(pas_b400_snork_tunnel_4:pas_b400_sr_tunnel_4) -pas_b400_snork_tunnel_4_attack} %+pas_b400_snork_tunnel_4_attack%
on_info5 = {-pas_b400_snork_tunnel_2_jumped !squad_exist(pas_b400_snork_tunnel_2)} %+pas_b400_snork_tunnel_2_jumped%
on_info6 = {-pas_b400_snork_tunnel_3_jumped !squad_exist(pas_b400_snork_tunnel_3)} %+pas_b400_snork_tunnel_3_jumped%
on_info7 = {-pas_b400_sr_tunnel_5_in !actor_in_zone(pas_b400_sr_tunnel_4) =actor_in_zone(pas_b400_sr_tunnel_5)} %+pas_b400_sr_tunnel_5_in%
[sr_idle@way]
on_info = {=actor_in_zone(pas_b400_sr_way_1)} sr_idle@canalisation %+pas_b400_hall_done%
on_info2 = {+pas_b400_hall_monolith_squad_attacked -pas_b400_hall_monolith_squad_dead !squad_exist(pas_b400_hall_monolith_squad) !squad_exist(pas_b400_hall_monolith_2_squad)} %+pas_b400_hall_monolith_squad_dead%
on_info3 = {+pas_b400_hall_monolith_snipers_attacked -pas_b400_hall_monolith_snipers_dead !squad_exist(pas_b400_hall_monolith_sniper_1) !squad_exist(pas_b400_hall_monolith_sniper_2)} %+pas_b400_hall_monolith_snipers_dead%
[sr_idle@canalisation]
on_info = {=actor_in_zone(pas_b400_sr_canalisation_1)} sr_idle@exit %+pas_b400_way_done%
on_info2 = {!squad_exist(pas_b400_canalisation_1_zombied)} sr_idle@exit %+pas_b400_way_done%
on_info3 = {-pas_b400_sr_way_2 =actor_in_zone(pas_b400_sr_way_2_in)} %+pas_b400_sr_way_2%
on_info4 = {-pas_b400_way_button_pressed =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_way_2)} sr_idle@way_talk
[sr_idle@way_talk]
on_info = {=actor_in_zone(pas_b400_sr_canalisation_1)} sr_idle@exit %+pas_b400_way_done%
on_info2 = {!squad_exist(pas_b400_canalisation_1_zombied)} sr_idle@exit %+pas_b400_way_done%
on_info3 = {-pas_b400_sr_way_2 =actor_in_zone(pas_b400_sr_way_2_in)} %+pas_b400_sr_way_2%
on_game_timer = 150 | {-pas_b400_about_gates -pas_b400_way_button_pressed} sr_idle@canalisation %+pas_b400_about_gates%
[sr_idle@exit]
on_info = {=actor_in_zone(pas_b400_sr_exit)} sr_idle@disable %+pas_b400_canalisation_done +pas_b400_done =run_postprocess(fade_in)%
on_info2 = {+pas_b400_canalisation_tushkano_attacked -pas_b400_canalisation_snork_rl_spawned !actor_in_zone(pas_b400_sr_canalisation_tushkano_revert)} sr_idle@canalisation_spawn %=heal_squad(pas_b400_stalkers_squad)%
[sr_idle@canalisation_spawn]
on_info = {~50} sr_idle@exit %+pas_b400_canalisation_snork_rl_spawned =create_squad(pas_b400_canalisation_snork_2_r:pas_b400_canalisation)%, sr_idle@exit %+pas_b400_canalisation_snork_rl_spawned =create_squad(pas_b400_canalisation_snork_2_l:pas_b400_canalisation)%
[sr_idle@disable]
on_game_timer = 15 | {-pas_b400_disabled_ui} %+pas_b400_disabled_ui =disable_ui%
on_game_timer2 = 25 | sr_idle@nil %=run_postprocess(black:3009:true) =remove_squad(pas_b400_stalkers_squad) =teleport_actor(pas_b400_actor_exit)%
[sr_idle@nil]

View file

@ -0,0 +1,75 @@
[logic]
active = sr_idle@pas_b400_sr_hall_1
[sr_idle@pas_b400_sr_hall_1]
on_info = {-pas_b400_sr_hall_1 =actor_in_zone(pas_b400_sr_hall_1)} %+pas_b400_sr_hall_1%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_2)} sr_idle@pas_b400_sr_hall_2 %-pas_b400_sr_hall_1 +pas_b400_sr_hall_2%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_3)} sr_idle@pas_b400_sr_hall_3 %-pas_b400_sr_hall_1 +pas_b400_sr_hall_3%
on_info4 = {=actor_in_zone(pas_b400_sr_hall_6)} sr_idle@pas_b400_sr_hall_6 %-pas_b400_sr_hall_1 +pas_b400_sr_hall_6%
[sr_idle@pas_b400_sr_hall_2]
on_info = {=actor_in_zone(pas_b400_sr_hall_1) !actor_in_zone(pas_b400_sr_hall_2)} sr_idle@pas_b400_sr_hall_1 %-pas_b400_sr_hall_2 +pas_b400_sr_hall_1%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_3)} sr_idle@pas_b400_sr_hall_3 %-pas_b400_sr_hall_2 +pas_b400_sr_hall_3%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_5)} sr_idle@pas_b400_sr_hall_5 %-pas_b400_sr_hall_2 +pas_b400_sr_hall_5%
[sr_idle@pas_b400_sr_hall_3]
on_info = {=actor_in_zone(pas_b400_sr_hall_1) !actor_in_zone(pas_b400_sr_hall_3)} sr_idle@pas_b400_sr_hall_1 %-pas_b400_sr_hall_3 +pas_b400_sr_hall_1%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_2) !actor_in_zone(pas_b400_sr_hall_3)} sr_idle@pas_b400_sr_hall_2 %-pas_b400_sr_hall_3 +pas_b400_sr_hall_2%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_5)} sr_idle@pas_b400_sr_hall_5 %-pas_b400_sr_hall_3 +pas_b400_sr_hall_5%
on_info4 = {=actor_in_zone(pas_b400_sr_hall_6)} sr_idle@pas_b400_sr_hall_6 %-pas_b400_sr_hall_3 +pas_b400_sr_hall_6%
on_info5 = {=actor_in_zone(pas_b400_sr_hall_7)} sr_idle@pas_b400_sr_hall_7 %-pas_b400_sr_hall_3 +pas_b400_sr_hall_7%
[sr_idle@pas_b400_sr_hall_4]
on_info = {=actor_in_zone(pas_b400_sr_hall_6)} sr_idle@pas_b400_sr_hall_6 %-pas_b400_sr_hall_4 +pas_b400_sr_hall_6%
[sr_idle@pas_b400_sr_hall_5]
on_info = {=actor_in_zone(pas_b400_sr_hall_2) !actor_in_zone(pas_b400_sr_hall_5)} sr_idle@pas_b400_sr_hall_2 %-pas_b400_sr_hall_5 +pas_b400_sr_hall_2%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_3) !actor_in_zone(pas_b400_sr_hall_5)} sr_idle@pas_b400_sr_hall_3 %-pas_b400_sr_hall_5 +pas_b400_sr_hall_3%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_8) !actor_in_zone(pas_b400_sr_hall_5)} sr_idle@pas_b400_sr_hall_8 %-pas_b400_sr_hall_5 +pas_b400_sr_hall_8%
on_info4 = {=actor_in_zone(pas_b400_sr_hall_10)} sr_idle@pas_b400_sr_hall_10 %-pas_b400_sr_hall_5 +pas_b400_sr_hall_10%
[sr_idle@pas_b400_sr_hall_6]
on_info = {=actor_in_zone(pas_b400_sr_hall_1) !actor_in_zone(pas_b400_sr_hall_6)} sr_idle@pas_b400_sr_hall_1 %-pas_b400_sr_hall_6 +pas_b400_sr_hall_1%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_3) !actor_in_zone(pas_b400_sr_hall_6)} sr_idle@pas_b400_sr_hall_3 %-pas_b400_sr_hall_6 +pas_b400_sr_hall_3%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_4) !actor_in_zone(pas_b400_sr_hall_6)} sr_idle@pas_b400_sr_hall_4 %-pas_b400_sr_hall_6 +pas_b400_sr_hall_4%
on_info4 = {=actor_in_zone(pas_b400_sr_hall_7) !actor_in_zone(pas_b400_sr_hall_6)} sr_idle@pas_b400_sr_hall_7 %-pas_b400_sr_hall_6 +pas_b400_sr_hall_7%
[sr_idle@pas_b400_sr_hall_7]
on_info = {=actor_in_zone(pas_b400_sr_hall_3) !actor_in_zone(pas_b400_sr_hall_7)} sr_idle@pas_b400_sr_hall_3 %-pas_b400_sr_hall_7 +pas_b400_sr_hall_3%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_6)} sr_idle@pas_b400_sr_hall_6 %-pas_b400_sr_hall_7 +pas_b400_sr_hall_6%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_9) !actor_in_zone(pas_b400_sr_hall_7)} sr_idle@pas_b400_sr_hall_9 %-pas_b400_sr_hall_7 +pas_b400_sr_hall_9%
on_info4 = {=actor_in_zone(pas_b400_sr_hall_10)} sr_idle@pas_b400_sr_hall_10 %-pas_b400_sr_hall_7 +pas_b400_sr_hall_10%
on_info5 = {=actor_in_zone(pas_b400_sr_hall_11)} sr_idle@pas_b400_sr_hall_11 %-pas_b400_sr_hall_7 +pas_b400_sr_hall_11%
on_info6 = {=actor_in_zone(pas_b400_sr_hall_12)} sr_idle@pas_b400_sr_hall_12 %-pas_b400_sr_hall_7 +pas_b400_sr_hall_12%
[sr_idle@pas_b400_sr_hall_8]
on_info = {=actor_in_zone(pas_b400_sr_hall_3) !actor_in_zone(pas_b400_sr_hall_8)} sr_idle@pas_b400_sr_hall_3 %-pas_b400_sr_hall_8 +pas_b400_sr_hall_3%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_5) !actor_in_zone(pas_b400_sr_hall_8)} sr_idle@pas_b400_sr_hall_5 %-pas_b400_sr_hall_8 +pas_b400_sr_hall_5%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_7)} sr_idle@pas_b400_sr_hall_7 %-pas_b400_sr_hall_8 +pas_b400_sr_hall_7%
on_info4 = {=actor_in_zone(pas_b400_sr_hall_10)} sr_idle@pas_b400_sr_hall_10 %-pas_b400_sr_hall_8 +pas_b400_sr_hall_10%
[sr_idle@pas_b400_sr_hall_9]
on_info = {=actor_in_zone(pas_b400_sr_hall_7)} sr_idle@pas_b400_sr_hall_7 %-pas_b400_sr_hall_9 +pas_b400_sr_hall_7%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_12)} sr_idle@pas_b400_sr_hall_12 %-pas_b400_sr_hall_9 +pas_b400_sr_hall_12%
[sr_idle@pas_b400_sr_hall_10]
on_info = {=actor_in_zone(pas_b400_sr_hall_5) !actor_in_zone(pas_b400_sr_hall_10)} sr_idle@pas_b400_sr_hall_5 %-pas_b400_sr_hall_10 +pas_b400_sr_hall_5%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_7) !actor_in_zone(pas_b400_sr_hall_10)} sr_idle@pas_b400_sr_hall_7 %-pas_b400_sr_hall_10 +pas_b400_sr_hall_7%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_8) !actor_in_zone(pas_b400_sr_hall_10)} sr_idle@pas_b400_sr_hall_8 %-pas_b400_sr_hall_10 +pas_b400_sr_hall_8%
on_info4 = {=actor_in_zone(pas_b400_sr_hall_11)} sr_idle@pas_b400_sr_hall_11 %-pas_b400_sr_hall_10 +pas_b400_sr_hall_11%
[sr_idle@pas_b400_sr_hall_11]
on_info = {=actor_in_zone(pas_b400_sr_hall_7) !actor_in_zone(pas_b400_sr_hall_11)} sr_idle@pas_b400_sr_hall_7 %-pas_b400_sr_hall_11 +pas_b400_sr_hall_7%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_10) !actor_in_zone(pas_b400_sr_hall_11)} sr_idle@pas_b400_sr_hall_10 %-pas_b400_sr_hall_11 +pas_b400_sr_hall_10%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_12) !actor_in_zone(pas_b400_sr_hall_11)} sr_idle@pas_b400_sr_hall_12 %-pas_b400_sr_hall_11 +pas_b400_sr_hall_12%
on_info4 = {+pas_b400_sr_hall_12_in -pas_b400_sr_hall_11_in} %+pas_b400_sr_hall_11_in%
[sr_idle@pas_b400_sr_hall_12]
on_info = {=actor_in_zone(pas_b400_sr_hall_7) !actor_in_zone(pas_b400_sr_hall_12)} sr_idle@pas_b400_sr_hall_7 %-pas_b400_sr_hall_12 +pas_b400_sr_hall_7%
on_info2 = {=actor_in_zone(pas_b400_sr_hall_9) !actor_in_zone(pas_b400_sr_hall_12)} sr_idle@pas_b400_sr_hall_9 %-pas_b400_sr_hall_12 +pas_b400_sr_hall_9%
on_info3 = {=actor_in_zone(pas_b400_sr_hall_11)} sr_idle@pas_b400_sr_hall_11 %-pas_b400_sr_hall_12 +pas_b400_sr_hall_11%
on_info4 = {+pas_b400_hall_done} sr_idle@nil
on_info5 = {-pas_b400_sr_hall_12_in} %+pas_b400_sr_hall_12_in%
on_info6 = {-pas_b400_sr_hall_12_in_2 +pas_b400_control_down_door_opened} %+pas_b400_sr_hall_12_in_2%
[sr_idle@nil]

View file

@ -0,0 +1,27 @@
[logic]
active = sr_idle@hall_talks
[sr_idle@hall_talks]
on_info = {+pas_b400_hall_done} sr_idle@nil
on_info2 = {-pas_b400_sokolov_about_dome_1_can +pas_b400_vano_about_dome_1} sr_idle@sokolov_talks_hall_1
on_info3 = {-pas_b400_vano_about_railway_1_can +pas_b400_about_railway} sr_idle@vano_talks_hall_12
on_info4 = {-pas_b400_wanderer_about_monolith_1_can +pas_b400_zulus_about_monolith_2} sr_idle@wanderer_talks_hall_11
on_info5 = {-pas_b400_wanderer_about_sniper_first_1_can +pas_b400_about_sniper} sr_idle@wanderer_talks_hall_6
on_info6 = {-pas_b400_sokolov_about_door_1_can +pas_b400_about_door} sr_idle@sokolov_talks_hall_12
[sr_idle@sokolov_talks_hall_1]
on_game_timer = 20 | sr_idle@hall_talks %+pas_b400_sokolov_about_dome_1_can%
[sr_idle@vano_talks_hall_12]
on_game_timer = 30 | sr_idle@hall_talks %+pas_b400_vano_about_railway_1_can%
[sr_idle@wanderer_talks_hall_11]
on_game_timer = 20 | sr_idle@hall_talks %+pas_b400_wanderer_about_monolith_1_can%
[sr_idle@wanderer_talks_hall_6]
on_game_timer = 30 | sr_idle@hall_talks %+pas_b400_wanderer_about_sniper_first_1_can%
[sr_idle@sokolov_talks_hall_12]
on_game_timer = 30 | sr_idle@hall_talks %+pas_b400_sokolov_about_door_1_can%
[sr_idle@nil]

View file

@ -0,0 +1,30 @@
[logic]
active = sr_idle@start_talks
;active = sr_idle@idle_talks
[sr_idle@start_talks]
on_info = {+pas_b400_task_given} sr_idle@talk_vano
[sr_idle@talk_vano]
on_game_timer = 50 | sr_idle@talk_zulus %+pas_b400_vano_about_underpass%
on_info = {+pas_b400_sr_elevator_1_passed} sr_idle@idle_talks
[sr_idle@talk_zulus]
on_game_timer = 50 | sr_idle@talk_wanderer %+pas_b400_zulus_about_underpass%
on_info = {+pas_b400_sr_elevator_1_passed} sr_idle@idle_talks
[sr_idle@talk_wanderer]
on_game_timer = 50 | sr_idle@talk_vano %+pas_b400_wanderer_about_underpass%
on_info = {+pas_b400_sr_elevator_1_passed} sr_idle@idle_talks
[sr_idle@idle_talks]
on_game_timer = 160 | sr_idle@choose
on_info = {=squad_has_enemy(pas_b400_stalkers_squad)} sr_idle@combat
[sr_idle@combat]
on_info = {!squad_has_enemy(pas_b400_stalkers_squad)} sr_idle@idle_talks
[sr_idle@choose]
on_info = {~5 =is_alive(pas_b400_zulus)} sr_idle@idle_talks %+pas_b400_zulus_idle_talk%, {~10 =is_alive(pas_b400_vano)} sr_idle@idle_talks %+pas_b400_vano_idle_talk%, {~15= is_alive(pas_b400_sokolov)} sr_idle@idle_talks %+pas_b400_sokolov_idle_talk%, {~20 =is_alive(pas_b400_wanderer)} sr_idle@idle_talks %+pas_b400_wanderer_idle_talk%, sr_idle@idle_talks
[sr_idle@nil]

View file

@ -0,0 +1,19 @@
[logic]
active = sr_idle@wait
[sr_idle@wait]
on_info = {+pas_b400_elevator_gates_opened -pas_b400_field_elevator_off =actor_in_zone(pas_b400_field_elevator)} sr_idle@play %=pas_b400_play_particle%
on_info2 = {-pas_b400_field_track_off =actor_in_zone(pas_b400_field_track)} sr_idle@play %=pas_b400_play_particle%
on_info3 = {-pas_b400_field_downstairs_off =actor_in_zone(pas_b400_field_downstairs)} sr_idle@play %=pas_b400_play_particle%
on_info4 = {-pas_b400_field_tunnel_off =actor_in_zone(pas_b400_field_tunnel)} sr_idle@play %=pas_b400_play_particle%
on_info5 = {+pas_b400_field_tunnel_off} sr_idle@nil
[sr_idle@play]
on_info = {!actor_in_zone(pas_b400_field_elevator) !actor_in_zone(pas_b400_field_track) !actor_in_zone(pas_b400_field_downstairs) !actor_in_zone(pas_b400_field_tunnel)} sr_idle@wait %=pas_b400_stop_particle%
on_info2 = {-pas_b400_elevator_gates_opened =actor_in_zone(pas_b400_field_elevator)} sr_idle@wait %=pas_b400_stop_particle%
on_info3 = {+pas_b400_field_elevator_off =actor_in_zone(pas_b400_field_elevator)} sr_idle@wait %=pas_b400_stop_particle%
on_info4 = {+pas_b400_field_track_off =actor_in_zone(pas_b400_field_track)} sr_idle@wait %=pas_b400_stop_particle%
on_info5 = {+pas_b400_field_downstairs_off =actor_in_zone(pas_b400_field_downstairs)} sr_idle@wait %=pas_b400_stop_particle%
on_info6 = {+pas_b400_field_tunnel_off =actor_in_zone(pas_b400_field_tunnels)} sr_idle@wait %=pas_b400_stop_particle%
[sr_idle@nil]

View file

@ -0,0 +1,16 @@
[logic]
active = sr_idle@squad_neutral
[sr_idle@squad_neutral]
on_info = {+pas_b400_task_given !squad_exist(pas_b400_stalkers_squad)} sr_idle@timeout
on_info2 = {+pas_b400_actor_enemy} sr_idle@timeout %=set_squad_enemy_to_actor(pas_b400_stalkers_squad)%
on_info3 = {=squad_exist(pas_b400_stalkers_squad) =is_squad_enemy_to_actor(pas_b400_stalkers_squad) !counter_greater(pas_b400_actor_zulus_hit:2) !counter_greater(pas_b400_actor_vano_hit:2) !counter_greater(pas_b400_actor_sokolov_hit:2) !counter_greater(pas_b400_actor_wanderer_hit:2)} %=set_squad_friend_to_actor(pas_b400_stalkers_squad)%
[sr_idle@timeout]
on_game_timer = 150 | sr_idle@nil %+pas_b400_actor_enemy_to_squad%
on_info = {-pas_b400_zulus_dead} %+pas_b400_zulus_dead +pri_a15_zulus_out%
on_info2 = {-pas_b400_vano_dead +jup_a10_vano_agree_go_und} %+pas_b400_vano_dead +pri_a15_vano_out%
on_info3 = {-pas_b400_sokolov_dead +jup_b218_soldier_hired} %+pas_b400_sokolov_dead +pri_a15_sokolov_out%
on_info4 = {-pas_b400_wanderer_dead +jup_b218_monolith_hired} %+pas_b400_wanderer_dead +pri_a15_wanderer_out%
[sr_idle@nil]

View file

@ -0,0 +1,13 @@
[logic]
active = sr_idle@wait
[sr_idle@wait]
on_info = {=actor_in_zone(pas_b400_sr_switcher) -pas_b400_switcher_use} sr_idle@use %=run_tutorial(pas_b400_switcher)%
on_info2 = {+pas_b400_switcher_use} sr_idle@nil
[sr_idle@use]
on_info = {+pas_b400_switcher_use} sr_idle@nil
on_info2 = {!actor_in_zone(pas_b400_sr_switcher)} sr_idle@wait %=stop_tutorial%
on_info3 = {!has_active_tutorial} sr_idle@wait
[sr_idle@nil]

View file

@ -0,0 +1,23 @@
[logic]
active = sr_idle@pas_b400_sr_tunnel_1
[sr_idle@pas_b400_sr_tunnel_1]
on_info = {-pas_b400_sr_tunnel_1 =actor_in_zone(pas_b400_sr_tunnel_1)} %+pas_b400_sr_tunnel_1%
on_info2 = {=actor_in_zone(pas_b400_sr_tunnel_2)} sr_idle@pas_b400_sr_tunnel_2 %-pas_b400_sr_tunnel_1 +pas_b400_sr_tunnel_2%
[sr_idle@pas_b400_sr_tunnel_2]
on_info = {=actor_in_zone(pas_b400_sr_tunnel_3) !actor_in_zone(pas_b400_sr_tunnel_2)} sr_idle@pas_b400_sr_tunnel_3 %-pas_b400_sr_tunnel_2 +pas_b400_sr_tunnel_3%
[sr_idle@pas_b400_sr_tunnel_3]
on_info = {=actor_in_zone(pas_b400_sr_tunnel_2) !actor_in_zone(pas_b400_sr_tunnel_3)} sr_idle@pas_b400_sr_tunnel_2 %-pas_b400_sr_tunnel_3 +pas_b400_sr_tunnel_2%
on_info2 = {=actor_in_zone(pas_b400_sr_tunnel_4)} sr_idle@pas_b400_sr_tunnel_4 %-pas_b400_sr_tunnel_3 +pas_b400_sr_tunnel_4%
[sr_idle@pas_b400_sr_tunnel_4]
on_info = {=actor_in_zone(pas_b400_sr_tunnel_3) !actor_in_zone(pas_b400_sr_tunnel_4)} sr_idle@pas_b400_sr_tunnel_3 %-pas_b400_sr_tunnel_4 +pas_b400_sr_tunnel_3%
on_info2 = {=actor_in_zone(pas_b400_sr_tunnel_5)} sr_idle@pas_b400_sr_tunnel_5 %-pas_b400_sr_tunnel_4 +pas_b400_sr_tunnel_5%
[sr_idle@pas_b400_sr_tunnel_5]
on_info = {=actor_in_zone(pas_b400_sr_tunnel_4) !actor_in_zone(pas_b400_sr_tunnel_5)} sr_idle@pas_b400_sr_tunnel_4 %-pas_b400_sr_tunnel_5 +pas_b400_sr_tunnel_4%
on_info2 = {+pas_b400_tunnel_done} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,14 @@
[logic]
active = sr_idle@wait
[sr_idle@wait]
on_info = {=squad_exist(pas_b400_snork_tunnel_3) !squad_npc_count_ge(pas_b400_snork_tunnel_3:1)} sr_idle@spawn_2 %+pas_b400_snork_tunnel_4_spawn =create_squad(pas_b400_snork_tunnel_4:pas_b400_tunnel) =heal_squad(pas_b400_stalkers_squad)%
on_info2 = {!squad_exist(pas_b400_snork_tunnel_3)} sr_idle@spawn_2 %+pas_b400_snork_tunnel_4_spawn =create_squad(pas_b400_snork_tunnel_4:pas_b400_tunnel) =heal_squad(pas_b400_stalkers_squad)%
[sr_idle@spawn_2]
on_game_timer = 25 | sr_idle@spawn_3 %=create_squad_member(snork_indoor_normal:pas_b400_snork_tunnel_4:pas_b400_tunnel_snork_tunnel_4_spawn)%
[sr_idle@spawn_3]
on_game_timer = 25 | sr_idle@nil %=create_squad_member(snork_indoor_normal:pas_b400_snork_tunnel_4:pas_b400_tunnel_snork_tunnel_4_spawn)%
[sr_idle@nil]

View file

@ -0,0 +1,242 @@
#include "pas_b400_general.ltx"
[logic@pas_b400_zulus_track]
active = walker@zulus_track_1
suitable = {=check_npc_name(pas_b400_zulus) -pas_b400_track_done} true
prior = 200
on_hit = hit@zulus
on_death = death@zulus
post_combat_time = 0,0
[walker@zulus_track_1]:walker@zulus_def
path_walk = zulus_1_walk
path_look = zulus_1_look
out_restr = pas_b400_sr_track_1
on_info = {=actor_in_zone(pas_b400_sr_track_2)} walker@zulus_track_2
on_info2 = {+pas_b400_sr_elevator_5_passed -pas_b400_zulus_about_outfits_1} %+pas_b400_zulus_about_outfits_1 =play_sound(pas_b400_zulus_about_outfits_1)%
[walker@zulus_track_2]:walker@zulus_def
path_walk = zulus_2_walk
path_look = zulus_2_look
out_restr = pas_b400_sr_track_2
on_info = {=actor_in_zone(pas_b400_sr_track_3) !is_alive(pas_b400_vano)} walker@zulus_track_3
on_info2 = {=actor_in_zone(pas_b400_sr_track_3_actor) !is_alive(pas_b400_vano)} walker@zulus_track_3
on_info3 = {+pas_b400_track_anomaly_done} walker@zulus_track_3
[walker@zulus_track_3]:walker@zulus_def
path_walk = zulus_3_walk
path_look = zulus_3_look
out_restr = pas_b400_sr_track_3_1
on_info = {=actor_in_zone(pas_b400_sr_track_3) =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_3)} walker@zulus_track_4
on_info2 = {=actor_in_zone(pas_b400_sr_track_4) =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_3)} walker@zulus_track_4
[walker@zulus_track_4]:walker@zulus_def
path_walk = zulus_4_walk
path_look = zulus_4_look
out_restr = pas_b400_sr_track_3
on_info = {=actor_in_zone(pas_b400_sr_track_4)} walker@zulus_track_5
[walker@zulus_track_5]:walker@zulus_def
path_walk = zulus_5_walk
path_look = zulus_5_look
out_restr = pas_b400_sr_track_4
def_state_standing = guard_na
on_signal = path_end | remark@zulus_track_5
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false
[remark@zulus_track_5]:walker@vano_def
target = path | pas_b400_track_zulus_5_look, 0
anim = guard_na
out_restr = pas_b400_sr_track_4
on_info = %=play_sound(pas_b400_zulus_about_obstacle_1)%
on_signal = sound_end | walker@zulus_track_5_1
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false
[walker@zulus_track_5_1]:walker@zulus_def
path_walk = zulus_5_1_walk
path_look = zulus_5_1_look
out_restr = pas_b400_sr_track_4
on_signal = path_end | {-pas_b400_zulus_about_obstacle_2} %=play_sound(pas_b400_zulus_about_obstacle_2) +pas_b400_zulus_about_obstacle_2%
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false
[logic@pas_b400_vano_track]
active = walker@vano_track_1
suitable = {=check_npc_name(pas_b400_vano) -pas_b400_track_done} true
prior = 200
on_hit = hit@vano
on_death = death@vano
post_combat_time = 0,0
[walker@vano_track_1]:walker@vano_def
path_walk = vano_1_walk
path_look = vano_1_look
out_restr = pas_b400_sr_track_1
on_info = {=actor_in_zone(pas_b400_sr_track_2)} walker@vano_track_2
[walker@vano_track_2]:walker@vano_def
path_walk = vano_2_walk
path_look = vano_2_look
out_restr = pas_b400_sr_track_2
on_signal = path_end | walker@vano_track_3_1 %=play_sound(pas_b400_vano_about_anomaly_first_1)%
[walker@vano_track_3_1]:walker@vano_def
path_walk = vano_3_1_walk
path_look = vano_3_1_look
out_restr = pas_b400_sr_track_3_1
on_signal = path_end | remark@vano_track_3_1
[remark@vano_track_3_1]:walker@vano_def
target = path | pas_b400_track_vano_3_1_look, 0
anim = pas_b400_vano_probe
out_restr = pas_b400_sr_track_3_1
on_signal = anim_end | walker@vano_track_3_2
on_info = %=play_sound(pas_b400_vano_about_anomaly_first_2)%
[walker@vano_track_3_2]:walker@vano_def
path_walk = vano_3_2_walk
path_look = vano_3_2_look
out_restr = pas_b400_sr_track_3_1
on_signal = path_end | remark@vano_track_3_2
[remark@vano_track_3_2]:walker@vano_def
target = path | pas_b400_track_vano_3_2_look, 0
anim = pas_b400_vano_probe
out_restr = pas_b400_sr_track_3_1
on_game_timer = 25 | %=play_sound(pas_b400_vano_about_anomaly_first_3)%
on_signal = anim_end | walker@vano_track_3_3 %+pas_b400_track_anomaly_done%
[walker@vano_track_3_3]:walker@vano_def
path_walk = vano_3_3_walk
out_restr = pas_b400_sr_track_3_1
on_signal = path_end | walker@vano_track_3
[walker@vano_track_3]:walker@vano_def
path_walk = vano_3_walk
path_look = vano_3_look
out_restr = pas_b400_sr_track_3_1
on_info = {=actor_in_zone(pas_b400_sr_track_3) =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_3)} walker@vano_track_4
on_info2 = {=actor_in_zone(pas_b400_sr_track_4) =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_3)} walker@vano_track_4
[walker@vano_track_4]:walker@vano_def
path_walk = vano_4_walk
path_look = vano_4_look
out_restr = pas_b400_sr_track_3
on_info = {=actor_in_zone(pas_b400_sr_track_4)} walker@vano_track_5
[walker@vano_track_5]:walker@vano_def
path_walk = vano_5_walk
path_look = vano_5_look
out_restr = pas_b400_sr_track_4
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false
on_info = {+pas_b400_zulus_about_obstacle_2} walker@vano_track_5_1
on_info2 = {+pas_b400_sr_track_4 !is_alive(pas_b400_zulus)} walker@vano_track_5_1
[walker@vano_track_5_1]:walker@vano_def
path_walk = vano_5_1_walk
path_look = vano_5_1_look
out_restr = pas_b400_sr_track_4
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false
[logic@pas_b400_sokolov_track]
active = walker@sokolov_track_1
suitable = {=check_npc_name(pas_b400_sokolov) -pas_b400_track_done} true
prior = 200
on_hit = hit@sokolov
on_death = death@sokolov
post_combat_time = 0,0
[walker@sokolov_track_1]:walker@sokolov_def
path_walk = sokolov_1_walk
path_look = sokolov_1_look
out_restr = pas_b400_sr_track_1
on_info = {=actor_in_zone(pas_b400_sr_track_2)} walker@sokolov_track_2
[walker@sokolov_track_2]:walker@sokolov_def
path_walk = sokolov_2_walk
path_look = sokolov_2_look
out_restr = pas_b400_sr_track_2
on_info = {=actor_in_zone(pas_b400_sr_track_3) !is_alive(pas_b400_vano)} walker@sokolov_track_3
on_info2 = {=actor_in_zone(pas_b400_sr_track_3_actor) !is_alive(pas_b400_vano)} walker@sokolov_track_3
on_info3 = {+pas_b400_track_anomaly_done} walker@sokolov_track_3
[walker@sokolov_track_3]:walker@sokolov_def
path_walk = sokolov_3_walk
path_look = sokolov_3_look
out_restr = pas_b400_sr_track_3_1
on_info = {=actor_in_zone(pas_b400_sr_track_3) =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_3)} walker@sokolov_track_4
on_info2 = {=actor_in_zone(pas_b400_sr_track_4) =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_3)} walker@sokolov_track_4
[walker@sokolov_track_4]:walker@sokolov_def
path_walk = sokolov_4_walk
path_look = sokolov_4_look
out_restr = pas_b400_sr_track_3
on_info = {=actor_in_zone(pas_b400_sr_track_4)} walker@sokolov_track_5
[walker@sokolov_track_5]:walker@sokolov_def
path_walk = sokolov_5_walk
path_look = sokolov_5_look
out_restr = pas_b400_sr_track_4
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false
on_info = {+pas_b400_zulus_about_obstacle_2} walker@sokolov_track_5_1
on_info2 = {+pas_b400_sr_track_4 !is_alive(pas_b400_zulus)} walker@sokolov_track_5_1
[walker@sokolov_track_5_1]:walker@sokolov_def
path_walk = sokolov_5_1_walk
path_look = sokolov_5_1_look
out_restr = pas_b400_sr_track_4
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false
[logic@pas_b400_wanderer_track]
active = walker@wanderer_track_1
suitable = {=check_npc_name(pas_b400_wanderer) -pas_b400_track_done} true
prior = 200
on_hit = hit@wanderer
on_death = death@wanderer
post_combat_time = 0,0
[walker@wanderer_track_1]:walker@wanderer_def
path_walk = wanderer_1_walk
path_look = wanderer_1_look
out_restr = pas_b400_sr_track_1
on_info = {=actor_in_zone(pas_b400_sr_track_2)} walker@wanderer_track_2
[walker@wanderer_track_2]:walker@wanderer_def
path_walk = wanderer_2_walk
path_look = wanderer_2_look
out_restr = pas_b400_sr_track_2
on_info = {=actor_in_zone(pas_b400_sr_track_3) !is_alive(pas_b400_vano)} walker@wanderer_track_3
on_info2 = {=actor_in_zone(pas_b400_sr_track_3_actor) !is_alive(pas_b400_vano)} walker@wanderer_track_3
on_info3 = {+pas_b400_track_anomaly_done} walker@wanderer_track_3
[walker@wanderer_track_3]:walker@wanderer_def
path_walk = wanderer_3_walk
path_look = wanderer_3_look
out_restr = pas_b400_sr_track_3_1
on_info = {=actor_in_zone(pas_b400_sr_track_3) =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_3)} walker@wanderer_track_4
on_info2 = {=actor_in_zone(pas_b400_sr_track_4) =squad_in_zone_all(pas_b400_stalkers_squad:pas_b400_sr_track_3)} walker@wanderer_track_4
[walker@wanderer_track_4]:walker@wanderer_def
path_walk = wanderer_4_walk
path_look = wanderer_4_look
out_restr = pas_b400_sr_track_3
on_info = {=actor_in_zone(pas_b400_sr_track_4)} walker@wanderer_track_5
[walker@wanderer_track_5]:walker@wanderer_def
path_walk = wanderer_5_walk
path_look = wanderer_5_look
out_restr = pas_b400_sr_track_4
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false
on_info = {+pas_b400_zulus_about_obstacle_2} walker@wanderer_track_5_1
on_info2 = {+pas_b400_sr_track_4 !is_alive(pas_b400_zulus)} walker@wanderer_track_5_1
[walker@wanderer_track_5_1]:walker@wanderer_def
path_walk = wanderer_5_1_walk
path_look = wanderer_5_1_look
out_restr = pas_b400_sr_track_4
combat_ignore_cond = {-pas_b400_track_door_opened =check_enemy_smart(pas_b400_downstairs)} true, false

View file

@ -0,0 +1,56 @@
[logic@pas_b400_snork_track_2_1]
active = mob_walker@snork_track_2_1_wait
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_track_2)} true
prior = 200
monster_job = true
[mob_walker@snork_track_2_1_wait]
path_walk = 2_1_snork_walk
path_look = 2_1_snork_look
combat_ignore_cond = true
npc_friendly = true
out_restr = pas_b400_sr_track_2
on_info = {+pas_b400_track_2_snorks_attack} mob_jump@snork_track_2_1_jump
on_info2 = {=actor_in_zone(pas_b400_sr_track_1)} mob_jump@snork_track_2_1_jump
[mob_jump@snork_track_2_1_jump]
path_jump = 2_1_snork_look
ph_jump_factor = 1.2
offset = 0,0,0
on_signal = jumped | mob_home@snork_track_2_home
[mob_home@snork_track_2_home]
path_home = 2_snork_home
home_min_radius = 20
home_max_radius = 30
aggressive = true
[logic@pas_b400_snork_track_2_2]
active = mob_walker@snork_track_2_2_wait
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_track_2)} true
prior = 200
monster_job = true
[mob_walker@snork_track_2_2_wait]
path_walk = 2_2_snork_walk
path_look = 2_2_snork_look
combat_ignore_cond = true
npc_friendly = true
out_restr = pas_b400_sr_track_2
on_info = {+pas_b400_track_2_snorks_attack} mob_walker@snork_track_2_2_wait_jump
on_info2 = {=actor_in_zone(pas_b400_sr_track_1)} mob_walker@snork_track_2_2_wait_jump
[mob_walker@snork_track_2_2_wait_jump]
path_walk = 2_2_snork_walk
path_look = 2_2_snork_look
combat_ignore_cond = true
npc_friendly = true
out_restr = pas_b400_sr_track_2
on_game_timer = 5 | mob_jump@snork_track_2_2_jump
[mob_jump@snork_track_2_2_jump]
path_jump = 2_2_snork_look
ph_jump_factor = 1.4
offset = 0,0,0
on_signal = jumped | mob_home@snork_track_2_home

View file

@ -0,0 +1,237 @@
#include "pas_b400_general.ltx"
[logic@pas_b400_zulus_tunnel]
active = walker@zulus_tunnel_1
suitable = {=check_npc_name(pas_b400_zulus) -pas_b400_tunnel_done} true
prior = 200
on_hit = hit@zulus
on_death = death@zulus
post_combat_time = 0,0
[walker@zulus_tunnel_1]:walker@zulus_def
path_walk = zulus_1_walk
path_look = zulus_1_look
out_restr = pas_b400_sr_tunnel_1
combat_ignore_cond = {-pas_b400_snork_tunnel_2_jumped =check_enemy_name(snork)} true, false
on_info = {+pas_b400_sr_tunnel_2} walker@zulus_tunnel_2
[walker@zulus_tunnel_2]:walker@zulus_def
path_walk = zulus_2_walk
path_look = zulus_2_look
out_restr = pas_b400_sr_tunnel_2
combat_ignore_cond = {-pas_b400_snork_tunnel_2_jumped =check_enemy_name(snork)} true, false
on_info = {+pas_b400_sr_tunnel_3} walker@zulus_tunnel_3
[walker@zulus_tunnel_3]:walker@zulus_def
path_walk = zulus_3_walk
path_look = zulus_3_look
out_restr = pas_b400_sr_tunnel_3
combat_ignore_cond = true
on_info = {+pas_b400_sokolov_about_snorks_2 -pas_b400_zulus_about_snorks_1} remark@zulus_tunnel_3 %+pas_b400_zulus_about_snorks_1%
on_info2 = {!is_alive(pas_b400_sokolov) -pas_b400_zulus_about_snorks_1} walker@zulus_tunnel_3_1 %+pas_b400_zulus_about_snorks_1 =play_sound(pas_b400_zulus_about_snorks_1)%
on_info3 = {+pas_b400_zulus_about_snorks_1} walker@zulus_tunnel_3_1
[remark@zulus_tunnel_3]:walker@vano_def
target = path | pas_b400_tunnel_zulus_3_look, 0
anim = threat_na
on_game_timer = 10 | walker@zulus_tunnel_3_1 %=play_sound(pas_b400_zulus_about_snorks_1)%
on_signal = sound_end | walker@zulus_tunnel_3_1
combat_ignore_cond = true
[walker@zulus_tunnel_3_1]:walker@zulus_def
path_walk = zulus_3_walk
path_look = zulus_3_look
out_restr = pas_b400_sr_tunnel_3
on_info = {+pas_b400_sr_tunnel_2} walker@zulus_tunnel_2
on_info2 = {+pas_b400_sr_tunnel_4} walker@zulus_tunnel_4
[walker@zulus_tunnel_4]:walker@zulus_def
path_walk = zulus_4_walk
path_look = zulus_4_look
out_restr = pas_b400_sr_tunnel_4
combat_ignore_cond = {-pas_b400_tunnel_gates_started_to_open =check_enemy_smart(pas_b400_hall)} true, {-pas_b400_tunnel_gates_started_to_open =check_enemy_name(snork_weak_special)} true, false
on_info = {+pas_b400_sr_tunnel_3} walker@zulus_tunnel_3
on_info2 = {+pas_b400_sr_tunnel_5} walker@zulus_tunnel_5
[walker@zulus_tunnel_5]:walker@zulus_def
path_walk = zulus_5_walk
path_look = zulus_5_look
def_state_standing = hide_na
out_restr = pas_b400_sr_tunnel_5
combat_ignore_cond = {-pas_b400_tunnel_gates_started_to_open =check_enemy_smart(pas_b400_hall)} true, {-pas_b400_tunnel_gates_started_to_open =check_enemy_name(snork_weak_special)} true, false
on_signal = path_end | {-pas_b400_zulus_about_train_gates_1_can} %+pas_b400_zulus_about_train_gates_1_can%
on_info = {-pas_b400_zulus_about_train_gates_2 !squad_exist(pas_b400_snork_tunnel_5)} %+pas_b400_zulus_about_train_gates_2 =play_sound(pas_b400_zulus_about_train_gates_2)%
on_info2 = {+pas_b400_sr_tunnel_4} walker@zulus_tunnel_4
on_info3 = {-pas_b400_zulus_about_train_gates_1_can !squad_exist(pas_b400_snork_tunnel_3) !squad_exist(pas_b400_snork_tunnel_4) -pas_b400_zulus_about_train_gates_1 -pas_b400_tunnel_gates_opened} %+pas_b400_zulus_about_train_gates_1 =play_sound(pas_b400_zulus_about_train_gates_1)%
[logic@pas_b400_vano_tunnel]
active = walker@vano_tunnel_1
suitable = {=check_npc_name(pas_b400_vano) -pas_b400_tunnel_done} true
prior = 200
on_hit = hit@vano
on_death = death@vano
post_combat_time = 0,0
[walker@vano_tunnel_1]:walker@vano_def
path_walk = vano_1_walk
path_look = vano_1_look
out_restr = pas_b400_sr_tunnel_1
combat_ignore_cond = {-pas_b400_snork_tunnel_2_jumped =check_enemy_name(snork)} true, false
on_info = {+pas_b400_sr_tunnel_2} walker@vano_tunnel_2
[walker@vano_tunnel_2]:walker@vano_def
path_walk = vano_2_walk
path_look = vano_2_look
out_restr = pas_b400_sr_tunnel_2
combat_ignore_cond = {-pas_b400_snork_tunnel_2_jumped =check_enemy_name(snork)} true, false
on_info = {+pas_b400_snork_tunnel_4_spawn -pas_b400_vano_about_snorks_1 !squad_exist(pas_b400_snork_tunnel_4)} %+pas_b400_vano_about_snorks_1 =play_sound(pas_b400_vano_about_snorks_1)%
on_info2 = {+pas_b400_sr_tunnel_3} walker@vano_tunnel_3
[walker@vano_tunnel_3]:walker@vano_def
path_walk = vano_3_walk
path_look = vano_3_look
out_restr = pas_b400_sr_tunnel_3
on_info = {+pas_b400_snork_tunnel_4_spawn -pas_b400_vano_about_snorks_1 !squad_exist(pas_b400_snork_tunnel_4)} %+pas_b400_vano_about_snorks_1 =play_sound(pas_b400_vano_about_snorks_1)%
on_info2 = {+pas_b400_sr_tunnel_2} walker@vano_tunnel_2
on_info3 = {+pas_b400_sr_tunnel_4} walker@vano_tunnel_4
[walker@vano_tunnel_4]:walker@vano_def
path_walk = vano_4_walk
path_look = vano_4_look
out_restr = pas_b400_sr_tunnel_4
combat_ignore_cond = {-pas_b400_tunnel_gates_started_to_open =check_enemy_smart(pas_b400_hall)} true, {-pas_b400_tunnel_gates_started_to_open =check_enemy_name(snork_weak_special)} true, false
on_info = {+pas_b400_snork_tunnel_4_spawn -pas_b400_vano_about_snorks_1 !squad_exist(pas_b400_snork_tunnel_4)} %+pas_b400_vano_about_snorks_1 =play_sound(pas_b400_vano_about_snorks_1)%
on_info2 = {+pas_b400_sr_tunnel_3} walker@vano_tunnel_3
on_info3 = {+pas_b400_sr_tunnel_5} walker@vano_tunnel_5
[walker@vano_tunnel_5]:walker@vano_def
path_walk = vano_5_walk
path_look = vano_5_look
combat_ignore_cond = {-pas_b400_tunnel_gates_started_to_open =check_enemy_smart(pas_b400_hall)} true, {-pas_b400_tunnel_gates_started_to_open =check_enemy_name(snork_weak_special)} true, false
out_restr = pas_b400_sr_tunnel_5
on_info = {+pas_b400_snork_tunnel_4_spawn -pas_b400_vano_about_snorks_1 !squad_exist(pas_b400_snork_tunnel_4)} %+pas_b400_vano_about_snorks_1 =play_sound(pas_b400_vano_about_snorks_1)%
on_info2 = {+pas_b400_sr_tunnel_4} walker@vano_tunnel_4
[logic@pas_b400_sokolov_tunnel]
active = walker@sokolov_tunnel_1
suitable = {=check_npc_name(pas_b400_sokolov) -pas_b400_tunnel_done} true
prior = 200
on_hit = hit@sokolov
on_death = death@sokolov
post_combat_time = 0,0
[walker@sokolov_tunnel_1]:walker@sokolov_def
path_walk = sokolov_1_walk
path_look = sokolov_1_look
out_restr = pas_b400_sr_tunnel_1
combat_ignore_cond = {-pas_b400_snork_tunnel_2_jumped =check_enemy_name(snork)} true, false
on_info = {+pas_b400_snork_tunnel_2_jumped -pas_b400_sokolov_about_snorks_1} %+pas_b400_sokolov_about_snorks_1 =play_sound(pas_b400_sokolov_about_snorks_1)%
on_info2 = {+pas_b400_sr_tunnel_2} walker@sokolov_tunnel_2
[walker@sokolov_tunnel_2]:walker@sokolov_def
path_walk = sokolov_2_walk
path_look = sokolov_2_look
out_restr = pas_b400_sr_tunnel_2
combat_ignore_cond = {-pas_b400_snork_tunnel_2_jumped =check_enemy_name(snork)} true, false
on_info = {+pas_b400_snork_tunnel_2_jumped -pas_b400_sokolov_about_snorks_1} %+pas_b400_sokolov_about_snorks_1 =play_sound(pas_b400_sokolov_about_snorks_1)%
on_info2 = {+pas_b400_sr_tunnel_3} walker@sokolov_tunnel_3
[walker@sokolov_tunnel_3]:walker@sokolov_def
path_walk = sokolov_3_walk
path_look = sokolov_3_look
out_restr = pas_b400_sr_tunnel_3
combat_ignore_cond = {+pas_b400_snork_tunnel_3_jumped} false, true
on_info = {+pas_b400_snork_tunnel_3_jumped -pas_b400_sokolov_about_snorks_2} %+pas_b400_sokolov_about_snorks_2 =play_sound(pas_b400_sokolov_about_snorks_2)%
on_info2 = {+pas_b400_sr_tunnel_2} walker@sokolov_tunnel_2
on_info3 = {+pas_b400_sr_tunnel_4} walker@sokolov_tunnel_4
on_info4 = {+pas_b400_snork_tunnel_4_attack -pas_b400_sokolov_about_snorks_3} remark@sokolov_tunnel_3
[remark@sokolov_tunnel_3]:walker@vano_def
target = path | pas_b400_tunnel_sokolov_3_look, 0
anim = threat_na
on_info = %=play_sound(pas_b400_sokolov_about_snorks_3)%
on_signal = sound_end | walker@sokolov_tunnel_3 %+pas_b400_sokolov_about_snorks_3%
combat_ignore_cond = true
[walker@sokolov_tunnel_4]:walker@sokolov_def
path_walk = sokolov_4_walk
path_look = sokolov_4_look
out_restr = pas_b400_sr_tunnel_4
combat_ignore_cond = {-pas_b400_tunnel_gates_started_to_open =check_enemy_smart(pas_b400_hall)} true, {-pas_b400_tunnel_gates_started_to_open =check_enemy_name(snork_weak_special)} true, false
on_info = {+pas_b400_sr_tunnel_3} walker@sokolov_tunnel_3
on_info2 = {+pas_b400_sr_tunnel_5} walker@sokolov_tunnel_5
[walker@sokolov_tunnel_5]:walker@sokolov_def
path_walk = sokolov_5_walk
path_look = sokolov_5_look
out_restr = pas_b400_sr_tunnel_5
combat_ignore_cond = {-pas_b400_tunnel_gates_started_to_open =check_enemy_smart(pas_b400_hall)} true, {-pas_b400_tunnel_gates_started_to_open =check_enemy_name(snork_weak_special)} true, false
on_signal = path_end | {-pas_b400_sokolov_about_train_gates_1 -pas_b400_tunnel_gates_opened} %+pas_b400_sokolov_about_train_gates_1 =play_sound(pas_b400_sokolov_about_train_gates_1)%
on_info = {+pas_b400_sr_tunnel_4} walker@sokolov_tunnel_4
[logic@pas_b400_wanderer_tunnel]
active = walker@wanderer_tunnel_1
suitable = {=check_npc_name(pas_b400_wanderer) -pas_b400_tunnel_done} true
prior = 200
on_hit = hit@wanderer
on_death = death@wanderer
post_combat_time = 0,0
[walker@wanderer_tunnel_1]:walker@wanderer_def
path_walk = wanderer_1_walk
path_look = wanderer_1_look
out_restr = pas_b400_sr_tunnel_1
combat_ignore_cond = {-pas_b400_snork_tunnel_2_jumped =check_enemy_name(snork)} true, false
on_info = {+pas_b400_sr_tunnel_2} walker@wanderer_tunnel_2
[walker@wanderer_tunnel_2]:walker@wanderer_def
path_walk = wanderer_2_walk
path_look = wanderer_2_look
out_restr = pas_b400_sr_tunnel_2
combat_ignore_cond = {-pas_b400_snork_tunnel_2_jumped =check_enemy_name(snork)} true, false
on_info = {+pas_b400_sr_tunnel_3} walker@wanderer_tunnel_3
[walker@wanderer_tunnel_3]:walker@wanderer_def
path_walk = wanderer_3_walk
path_look = wanderer_3_look
out_restr = pas_b400_sr_tunnel_3
on_info = {+pas_b400_sr_tunnel_2} walker@wanderer_tunnel_2
on_info2 = {+pas_b400_sr_tunnel_4} walker@wanderer_tunnel_4
on_info3 = {+pas_b400_snork_tunnel_4_attack -pas_b400_wanderer_about_snorks_1} camper@wanderer_tunnel_3
[remark@wanderer_tunnel_3]:walker@vano_def
target = path | pas_b400_tunnel_wanderer_3_look, 0
anim = hide_na
combat_ignore_cond = true
[camper@wanderer_tunnel_3]:walker@vano_def
path_walk = wanderer_3_walk
path_look = wanderer_3_look
no_retreat = true
def_state_moving = sneak_run
def_state_campering = hide_na
def_state_campering_fire = hide_fire
on_game_timer = 30 | %=play_sound(pas_b400_wanderer_about_snorks_1)%
radius = 15
on_info = {!squad_exist(pas_b400_snork_tunnel_4)} walker@wanderer_tunnel_3 %+pas_b400_wanderer_about_snorks_1%
on_info2 = {+pas_b400_sr_tunnel_4} walker@wanderer_tunnel_4 %+pas_b400_wanderer_about_snorks_1%
[walker@wanderer_tunnel_4]:walker@wanderer_def
path_walk = wanderer_4_walk
path_look = wanderer_4_look
out_restr = pas_b400_sr_tunnel_4
combat_ignore_cond = {-pas_b400_tunnel_gates_started_to_open =check_enemy_smart(pas_b400_hall)} true, {-pas_b400_tunnel_gates_started_to_open =check_enemy_name(snork_weak_special)} true, false
on_info = {+pas_b400_sr_tunnel_3} walker@wanderer_tunnel_3
on_info2 = {+pas_b400_sr_tunnel_5} walker@wanderer_tunnel_5
[walker@wanderer_tunnel_5]:walker@wanderer_def
path_walk = wanderer_5_walk
path_look = wanderer_5_look
combat_ignore_cond = {-pas_b400_tunnel_gates_started_to_open =check_enemy_smart(pas_b400_hall)} true, {-pas_b400_tunnel_gates_started_to_open =check_enemy_name(snork_weak_special)} true, false
out_restr = pas_b400_sr_tunnel_5
on_info = {+pas_b400_sr_tunnel_4} walker@wanderer_tunnel_4

View file

@ -0,0 +1,270 @@
[logic@pas_b400_tunnel_tushkano_1]
active = mob_walker@tunnel_tushkano_home_1
suitable = {=target_squad_name(pas_b400_tunnel_tushkano)} true
prior = 200
monster_job = true
[logic@pas_b400_tunnel_tushkano_2]
active = mob_walker@tunnel_tushkano_home_1
suitable = {=target_squad_name(pas_b400_tunnel_tushkano)} true
prior = 200
monster_job = true
[mob_walker@tunnel_tushkano_home_1]
path_walk = tushkano_home_1
combat_ignore_cond = true
on_info = {+pas_b400_downstairs_door_opened} mob_home@tunnel_tushkano_home_2
[mob_home@tunnel_tushkano_home_2]
path_home = tushkano_home_2
home_min_radius = 10
home_max_radius = 30
aggressive = true
[logic@pas_b400_snork_tunnel_2]
active = mob_walker@snork_tunnel_2_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_2)} true
prior = 200
monster_job = true
[mob_home@snork_tunnel_2_start]
path_home = snork_tunnel_2_look
combat_ignore_cond = true
npc_friendly = true
on_info = mob_walker@snork_tunnel_2_walk %=teleport_npc(pas_b400_tunnel_snork_tunnel_2_walk)%
[mob_walker@snork_tunnel_2_walk]
path_walk = snork_tunnel_2_walk
path_look = snork_tunnel_2_look
combat_ignore_cond = true
npc_friendly = true
out_restr = pas_b400_sr_tunnel_snork_2_in
on_info = {=actor_in_zone(pas_b400_sr_tunnel_2)} mob_jump@snork_tunnel_2_jump
on_info2 = {=mob_was_hit} mob_jump@snork_tunnel_2_jump
;on_info3 = {!npc_in_zone(pas_b400_sr_tunnel_snork_2_in)} %=teleport_npc(pas_b400_tunnel_snork_tunnel_2_walk)%
[mob_jump@snork_tunnel_2_jump]
path_jump = snork_tunnel_2_look
ph_jump_factor = 1.0
offset = 0,0,0
on_signal = jumped | mob_home@snork_tunnel_2_home %+pas_b400_snork_tunnel_2_jumped%
[mob_home@snork_tunnel_2_home]
path_home = snork_tunnel_2_look
home_min_radius = 10
home_max_radius = 50
aggressive = true
[logic@pas_b400_snork_tunnel_3_1]
active = mob_walker@snork_tunnel_3_1_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_3)} true
prior = 200
monster_job = true
[mob_walker@snork_tunnel_3_1_walk]
path_walk = snork_tunnel_3_1_walk
path_look = snork_tunnel_3_1_look
combat_ignore_cond = true
npc_friendly = true
on_info = {!actor_in_zone(pas_b400_sr_tunnel_2) =actor_in_zone(pas_b400_sr_tunnel_3)} mob_jump@snork_tunnel_3_1_jump
[mob_jump@snork_tunnel_3_1_jump]
path_jump = snork_tunnel_3_1_look
ph_jump_factor = 1.4
offset = 0,0,0
on_signal = jumped | mob_home@snork_tunnel_3_home %+pas_b400_snork_tunnel_3_jumped%
[logic@pas_b400_snork_tunnel_3_2]
active = mob_walker@snork_tunnel_3_2_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_3)} true
prior = 200
monster_job = true
[mob_walker@snork_tunnel_3_2_walk]
path_walk = snork_tunnel_3_2_walk
path_look = snork_tunnel_3_2_look
combat_ignore_cond = true
npc_friendly = true
on_info = {!actor_in_zone(pas_b400_sr_tunnel_2) =actor_in_zone(pas_b400_sr_tunnel_3)} mob_jump@snork_tunnel_3_2_jump
[mob_jump@snork_tunnel_3_2_jump]
path_jump = snork_tunnel_3_2_look
ph_jump_factor = 1.1
offset = 0,0,0
on_signal = jumped | mob_home@snork_tunnel_3_home %+pas_b400_snork_tunnel_3_jumped%
[logic@pas_b400_snork_tunnel_3_3]
active = mob_walker@snork_tunnel_3_3_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_3)} true
prior = 200
monster_job = true
[mob_walker@snork_tunnel_3_3_walk]
path_walk = snork_tunnel_3_3_walk
path_look = snork_tunnel_3_3_look
combat_ignore_cond = true
npc_friendly = true
on_info = {!actor_in_zone(pas_b400_sr_tunnel_2) =actor_in_zone(pas_b400_sr_tunnel_3)} mob_jump@snork_tunnel_3_3_jump
[mob_jump@snork_tunnel_3_3_jump]
path_jump = snork_tunnel_3_3_look
ph_jump_factor = 0.95
offset = 0,0,0
on_signal = jumped | mob_home@snork_tunnel_3_home %+pas_b400_snork_tunnel_3_jumped%
[logic@pas_b400_snork_tunnel_3_4]
active = mob_walker@snork_tunnel_3_4_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_3)} true
prior = 200
monster_job = true
[mob_walker@snork_tunnel_3_4_walk]
path_walk = snork_tunnel_3_4_walk
path_look = snork_tunnel_3_4_look
combat_ignore_cond = true
npc_friendly = true
on_info = {!actor_in_zone(pas_b400_sr_tunnel_2) =actor_in_zone(pas_b400_sr_tunnel_3)} mob_jump@snork_tunnel_3_4_jump
[mob_jump@snork_tunnel_3_4_jump]
path_jump = snork_tunnel_3_4_look
ph_jump_factor = 0.95
offset = 0,0,0
on_signal = jumped | mob_home@snork_tunnel_3_home %+pas_b400_snork_tunnel_3_jumped%
[mob_home@snork_tunnel_3_home]
path_home = snork_tunnel_3_home
home_min_radius = 10
home_max_radius = 50
aggressive = true
[logic@pas_b400_snork_tunnel_4_1]
active = mob_walker@snork_tunnel_4_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_4)} true
prior = 200
monster_job = true
[logic@pas_b400_snork_tunnel_4_2]
active = mob_walker@snork_tunnel_4_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_4)} true
prior = 200
monster_job = true
[logic@pas_b400_snork_tunnel_4_3]
active = mob_walker@snork_tunnel_4_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_4)} true
prior = 200
monster_job = true
[logic@pas_b400_snork_tunnel_4_4]
active = mob_walker@snork_tunnel_4_walk
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_4)} true
prior = 200
monster_job = true
[mob_walker@snork_tunnel_4_walk]
path_walk = snork_tunnel_4_walk
path_look = snork_tunnel_4_look
out_restr = pas_b400_sr_tunnel_snork_4_in
on_signal = path_end | mob_jump@snork_tunnel_4_jump
combat_ignore_cond = true
npc_friendly = true
aggressive = false
[mob_jump@snork_tunnel_4_jump]
path_jump = snork_tunnel_4_look
ph_jump_factor = 1.3
offset = 0,0,0
on_signal = jumped | mob_home@snork_tunnel_4_home
[mob_home@snork_tunnel_4_home]
path_home = snork_tunnel_4_home
home_min_radius = 10
home_max_radius = 50
aggressive = true
out_restr = pas_b400_sr_tunnel_4, pas_b400_sr_tunnel_5
in_restr = pas_b400_sr_track_door_in
[logic@pas_b400_snork_tunnel_5_1]
active = mob_home@snork_tunnel_5_home
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_5)} true
prior = 200
monster_job = true
on_hit = hit@pas_b400_snork_tunnel_5_hit
[logic@pas_b400_snork_tunnel_5_2]
active = mob_home@snork_tunnel_5_home
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_5)} true
prior = 200
monster_job = true
on_hit = hit@pas_b400_snork_tunnel_5_hit
[logic@pas_b400_snork_tunnel_5_3]
active = mob_home@snork_tunnel_5_home
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_5)} true
prior = 200
monster_job = true
on_hit = hit@pas_b400_snork_tunnel_5_hit
[logic@pas_b400_snork_tunnel_5_4]
active = mob_home@snork_tunnel_5_home
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_5)} true
prior = 200
monster_job = true
on_hit = hit@pas_b400_snork_tunnel_5_hit
[logic@pas_b400_snork_tunnel_5_5]
active = mob_home@snork_tunnel_5_home
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_5)} true
prior = 200
monster_job = true
on_hit = hit@pas_b400_snork_tunnel_5_hit
[logic@pas_b400_snork_tunnel_5_6]
active = mob_home@snork_tunnel_5_home
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_5)} true
prior = 200
monster_job = true
on_hit = hit@pas_b400_snork_tunnel_5_hit
[logic@pas_b400_snork_tunnel_5_7]
active = mob_home@snork_tunnel_5_home
suitable = {=is_monster_snork =target_squad_name(pas_b400_snork_tunnel_5)} true
prior = 200
monster_job = true
on_hit = hit@pas_b400_snork_tunnel_5_hit
[mob_home@snork_tunnel_5_home]
path_home = snork_tunnel_5_home
home_min_radius = 2
home_max_radius = 5
out_restr = pas_b400_sr_hall_1
in_restr = pas_b400_sr_tunnel_5, pas_b400_sr_track_door_in
aggressive = false
combat_ignore_cond = true
npc_friendly = true
on_info = {+pas_b400_tunnel_gates_started_to_open} mob_home@snork_tunnel_5_1_home
on_info2 = {-pas_b400_tunnel_button_pressed !npc_in_zone(pas_b400_sr_hall_1)} %=teleport_npc(pas_b400_tunnel_snork_tunnel_5_home)%
[mob_home@snork_tunnel_5_1_home]
path_home = snork_tunnel_5_attack
home_min_radius = 10
home_max_radius = 50
out_restr = pas_b400_sr_tunnel_5
aggressive = true
[hit@pas_b400_snork_tunnel_5_hit]
on_info = {+pas_b400_tunnel_gates_started_to_open =squad_npc_count_ge(pas_b400_snork_tunnel_5:2)} %=kill_npc%

View file

@ -0,0 +1,113 @@
#include "pas_b400_general.ltx"
[logic@pas_b400_zulus_way]
active = walker@zulus_way_1
suitable = {=check_npc_name(pas_b400_zulus) -pas_b400_way_done} true
prior = 200
on_hit = hit@zulus
on_death = death@zulus
post_combat_time = 0,0
[walker@zulus_way_1]:walker@zulus_def
path_walk = zulus_1_walk
path_look = zulus_1_look
out_restr = pas_b400_sr_way_1
on_info = {=actor_in_zone(pas_b400_sr_way_2)} walker@zulus_way_2
on_info2 = {+pas_b400_way_anomaly_done} walker@zulus_way_2
[walker@zulus_way_2]:walker@zulus_def
path_walk = zulus_2_walk
path_look = zulus_2_look
out_restr = pas_b400_sr_way_1, pas_b400_sr_way_2
combat_ignore_cond = {-pas_b400_way_door_opened} true, false
[logic@pas_b400_vano_way]
active = walker@vano_way_1
suitable = {=check_npc_name(pas_b400_vano) -pas_b400_way_done} true
prior = 200
on_hit = hit@vano
on_death = death@vano
post_combat_time = 0,0
[walker@vano_way_1]:walker@vano_def
path_walk = vano_1_walk
path_look = vano_1_look
out_restr = pas_b400_sr_way_1
on_signal = path_end | remark@vano_way_1_1
on_info = {+pas_b400_way_anomaly_done} walker@vano_way_2
on_info2 = {=actor_in_zone(pas_b400_sr_way_2)} walker@vano_way_2 %+pas_b400_way_anomaly_done%
[remark@vano_way_1_1]:walker@vano_def
target = path | pas_b400_way_vano_1_look, 0
anim = pas_b400_vano_probe
out_restr = pas_b400_sr_way_1
on_signal = anim_end | walker@vano_way_1_1
on_info = %=play_sound(pas_b400_vano_about_anomaly_third_1)%
[walker@vano_way_1_1]:walker@vano_def
path_walk = vano_1_1_walk
path_look = vano_1_1_look
out_restr = pas_b400_sr_way_1
on_signal = path_end | remark@vano_way_1_2
on_info = {=actor_in_zone(pas_b400_sr_way_2)} walker@vano_way_2 %+pas_b400_way_anomaly_done%
[remark@vano_way_1_2]:walker@vano_def
target = path | pas_b400_way_vano_1_1_look, 0
anim = pas_b400_vano_probe
out_restr = pas_b400_sr_way_1
on_signal = anim_end | walker@vano_way_2 %+pas_b400_way_anomaly_done%
[walker@vano_way_2]:walker@vano_def
path_walk = vano_2_walk
path_look = vano_2_look
out_restr = pas_b400_sr_way_1, pas_b400_sr_way_2
combat_ignore_cond = {-pas_b400_way_door_opened} true, false
[logic@pas_b400_sokolov_way]
active = walker@sokolov_way_1
suitable = {=check_npc_name(pas_b400_sokolov) -pas_b400_way_done} true
prior = 200
on_hit = hit@sokolov
on_death = death@sokolov
post_combat_time = 0,0
[walker@sokolov_way_1]:walker@sokolov_def
path_walk = sokolov_1_walk
path_look = sokolov_1_look
out_restr = pas_b400_sr_way_1
on_info = {=actor_in_zone(pas_b400_sr_way_2)} walker@sokolov_way_2
on_info2 = {+pas_b400_way_anomaly_done} walker@sokolov_way_2
[walker@sokolov_way_2]:walker@sokolov_def
path_walk = sokolov_2_walk
path_look = sokolov_2_look
out_restr = pas_b400_sr_way_1, pas_b400_sr_way_2
on_info = {+pas_b400_way_door_opened} %=play_sound(pas_b400_sokolov_about_tushkano_1)%
combat_ignore_cond = {-pas_b400_way_door_opened} true, false
[logic@pas_b400_wanderer_way]
active = walker@wanderer_way_1
suitable = {=check_npc_name(pas_b400_wanderer) -pas_b400_way_done} true
prior = 200
on_hit = hit@wanderer
on_death = death@wanderer
post_combat_time = 0,0
[walker@wanderer_way_1]:walker@wanderer_def
path_walk = wanderer_1_walk
path_look = wanderer_1_look
out_restr = pas_b400_sr_way_1
on_info = {=actor_in_zone(pas_b400_sr_way_2)} walker@wanderer_way_2
on_info2 = {+pas_b400_way_anomaly_done} walker@wanderer_way_2
[walker@wanderer_way_2]:walker@wanderer_def
path_walk = wanderer_2_walk
path_look = wanderer_2_look
out_restr = pas_b400_sr_way_1, pas_b400_sr_way_2
combat_ignore_cond = {-pas_b400_way_door_opened} true, false

View file

@ -0,0 +1,31 @@
[smart_terrain]
sim_avail = false
arrive_dist = 100000
[exclusive]
pas_b400_tushkano_canalisation_1 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_tushkano_canalisation_2 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_tushkano_canalisation_3 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_snork_canalisation_2 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_snork_canalisation_2_r = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_snork_canalisation_2_l = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_1_zombied_1 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_1_zombied_2 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_3_zombied_1 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_3_zombied_2 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_3_zombied_3 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_3_zombied_4 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_3_zombied_5 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_3_zombied_6 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_5_zombied_1 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_5_zombied_2 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_5_zombied_3 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_5_zombied_4 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_5_zombied_5 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_canalisation_5_zombied_6 = underpass\pas_b400_canalisation_monsters.ltx
pas_b400_zulus_canalisation = underpass\pas_b400_canalisation.ltx
pas_b400_vano_canalisation = underpass\pas_b400_canalisation.ltx
pas_b400_sokolov_canalisation = underpass\pas_b400_canalisation.ltx
pas_b400_wanderer_canalisation = underpass\pas_b400_canalisation.ltx

View file

@ -0,0 +1,12 @@
[smart_terrain]
sim_avail = false
arrive_dist = 100000
[exclusive]
pas_b400_zulus_downstairs = underpass\pas_b400_downstairs.ltx
pas_b400_vano_downstairs = underpass\pas_b400_downstairs.ltx
pas_b400_sokolov_downstairs = underpass\pas_b400_downstairs.ltx
pas_b400_wanderer_downstairs = underpass\pas_b400_downstairs.ltx
pas_b400_tushkano_downstairs_1 = underpass\pas_b400_downstairs_monsters.ltx
pas_b400_tushkano_downstairs_2 = underpass\pas_b400_downstairs_monsters.ltx

View file

@ -0,0 +1,13 @@
[smart_terrain]
sim_avail = false
arrive_dist = 100000
[exclusive]
pas_b400_zulus_elevator = underpass\pas_b400_elevator.ltx
pas_b400_vano_elevator = underpass\pas_b400_elevator.ltx
pas_b400_sokolov_elevator = underpass\pas_b400_elevator.ltx
pas_b400_wanderer_elevator = underpass\pas_b400_elevator.ltx
pas_b400_snork_elevator_4 = underpass\pas_b400_elevator_monsters.ltx
pas_b400_tushkano_elevator_1 = underpass\pas_b400_elevator_monsters.ltx
pas_b400_tushkano_elevator_2 = underpass\pas_b400_elevator_monsters.ltx

View file

@ -0,0 +1,5 @@
[smart_terrain]
sim_avail = false
arrive_dist = 100000
[exclusive]

View file

@ -0,0 +1,36 @@
[smart_terrain]
sim_avail = false
arrive_dist = 100000
[exclusive]
;tushkano jobs
pas_b400_hall_tushkano_1 = underpass\pas_b400_hall_monsters.ltx
pas_b400_hall_tushkano_2 = underpass\pas_b400_hall_monsters.ltx
pas_b400_hall_tushkano_3 = underpass\pas_b400_hall_monsters.ltx
pas_b400_hall_tushkano_4 = underpass\pas_b400_hall_monsters.ltx
pas_b400_hall_tushkano_5 = underpass\pas_b400_hall_monsters.ltx
pas_b400_hall_tushkano_6 = underpass\pas_b400_hall_monsters.ltx
;monolith attackers
pas_b400_hall_monolith_1 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_2 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_3 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_4 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_5 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_6 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_7 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_8 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_sniper_1 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_sniper_2 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_sniper_3 = underpass\pas_b400_hall_monolith.ltx
;not_used
pas_b400_hall_sniper_4 = underpass\pas_b400_hall_monolith.ltx
;after attack
pas_b400_hall_monolith_10 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_11 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_12 = underpass\pas_b400_hall_monolith.ltx
pas_b400_hall_monolith_13 = underpass\pas_b400_hall_monolith.ltx
;core npc
pas_b400_zulus_hall = underpass\pas_b400_hall.ltx
pas_b400_vano_hall = underpass\pas_b400_hall.ltx
pas_b400_sokolov_hall = underpass\pas_b400_hall.ltx
pas_b400_wanderer_hall = underpass\pas_b400_hall.ltx

View file

@ -0,0 +1,12 @@
[smart_terrain]
sim_avail = false
arrive_dist = 100000
[exclusive]
pas_b400_zulus_track = underpass\pas_b400_track.ltx
pas_b400_vano_track = underpass\pas_b400_track.ltx
pas_b400_sokolov_track = underpass\pas_b400_track.ltx
pas_b400_wanderer_track = underpass\pas_b400_track.ltx
pas_b400_snork_track_2_1 = underpass\pas_b400_track_monsters.ltx
pas_b400_snork_track_2_2 = underpass\pas_b400_track_monsters.ltx

View file

@ -0,0 +1,29 @@
[smart_terrain]
sim_avail = false
arrive_dist = 100000
[exclusive]
pas_b400_zulus_tunnel = underpass\pas_b400_tunnel.ltx
pas_b400_vano_tunnel = underpass\pas_b400_tunnel.ltx
pas_b400_sokolov_tunnel = underpass\pas_b400_tunnel.ltx
pas_b400_wanderer_tunnel = underpass\pas_b400_tunnel.ltx
pas_b400_tunnel_tushkano_1 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_tunnel_tushkano_2 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_2 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_3_1 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_3_2 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_3_3 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_3_4 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_4_1 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_4_2 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_4_3 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_4_4 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_5_1 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_5_2 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_5_3 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_5_4 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_5_5 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_5_6 = underpass\pas_b400_tunnel_monsters.ltx
pas_b400_snork_tunnel_5_7 = underpass\pas_b400_tunnel_monsters.ltx

View file

@ -0,0 +1,9 @@
[smart_terrain]
sim_avail = false
arrive_dist = 100000
[exclusive]
pas_b400_zulus_way = underpass\pas_b400_way.ltx
pas_b400_vano_way = underpass\pas_b400_way.ltx
pas_b400_sokolov_way = underpass\pas_b400_way.ltx
pas_b400_wanderer_way = underpass\pas_b400_way.ltx