e4s-sdk/gamedata/configs/scripts/underpass/pas_b400_tunnel.ltx
2026-06-17 23:06:51 +03:00

237 lines
11 KiB
TeX

#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