add game&rawdata
This commit is contained in:
parent
0133cd976c
commit
49b34b5546
45731 changed files with 709831 additions and 0 deletions
252
gamedata/configs/scripts/evac/pri_a28_arch.ltx
Normal file
252
gamedata/configs/scripts/evac/pri_a28_arch.ltx
Normal file
|
|
@ -0,0 +1,252 @@
|
|||
#include "pri_a28_general.ltx"
|
||||
|
||||
[logic@pri_a28_kovalski_arch]
|
||||
active = camper@kovalski_arch_1
|
||||
suitable = {-pri_a28_arch_done =check_npc_name(kovalski)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@kovalski_arch_1]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_info = {=npc_in_zone(pri_a28_sr_arch_1) +pri_a28_strelok_go_over_anomaly} camper@kovalski_arch_1_wait
|
||||
|
||||
[camper@kovalski_arch_1_wait]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_game_timer = 40 | %=play_sound(pri_a28_colonel_ok_go_here)%
|
||||
on_signal = sound_end | camper@kovalski_arch_2 %+pri_a28_colonel_ok_go_here%
|
||||
on_info = {+pri_a28_colonel_ok_go_here} camper@kovalski_arch_2
|
||||
|
||||
[camper@kovalski_arch_2]:walker@kovalski_ignore
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_2_look
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
on_signal = path_end | camper@kovalski_arch_2_wait
|
||||
|
||||
[camper@kovalski_arch_2_wait]:walker@kovalski_ignore
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_2_look
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
on_info = {+pri_a28_evac_com_where_you} remark@kovalski_arch_2
|
||||
|
||||
[remark@kovalski_arch_2]:walker@kovalski_ignore
|
||||
target = story | actor
|
||||
anim = wait_rac
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
on_signal = anim_end | remark@kovalski_arch_2_answer
|
||||
|
||||
[remark@kovalski_arch_2_answer]:walker@kovalski_ignore
|
||||
target = story | actor
|
||||
anim = wait_rac
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
on_signal = sound_end | remark@kovalski_arch_2_1 %+pri_a28_colonel_we_close%
|
||||
on_info = %=play_sound(pri_a28_colonel_we_close)%
|
||||
|
||||
[remark@kovalski_arch_2_1]:walker@kovalski_ignore
|
||||
target = story | actor
|
||||
anim = wait_rac
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
on_signal = sound_end | {=dist_to_actor_le(15)} remark@kovalski_arch_2_talk, remark@kovalski_arch_2_wait
|
||||
on_info2 = {+pri_a28_evac_com_cant_wait} %=play_sound(pri_a28_colonel_will_time)%
|
||||
|
||||
[remark@kovalski_arch_2_wait]:walker@kovalski_ignore
|
||||
target = story | actor
|
||||
anim = hide_na
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
on_game_timer = 300 | {=dist_to_actor_ge(15) -pri_a28_strelok_dead} %=play_sound(pri_a28_colonel_wait_actor) +pri_a28_colonel_wait_actor%
|
||||
on_game_timer2 = 450 | {=dist_to_actor_ge(15)} %=play_sound(pri_a28_colonel_wait_actor_long) +pri_a28_colonel_wait_actor%
|
||||
on_game_timer3 = 600 | {=dist_to_actor_ge(15)} remark@kovalski_arch_2_talk %=play_sound(pri_a28_colonel_wait_actor_go)%
|
||||
on_info = {-pri_a28_actor_enemy_to_squad =dist_to_actor_le(15) +pri_a28_colonel_wait_actor} remark@kovalski_arch_2_talk %=play_sound(pri_a28_colonel_wait_actor_return)%
|
||||
on_info2 = {-pri_a28_actor_enemy_to_squad =dist_to_actor_le(15) -pri_a28_colonel_wait_actor} remark@kovalski_arch_2_talk
|
||||
on_info3 = {+pri_a28_actor_enemy_to_squad} remark@kovalski_arch_2_talk
|
||||
|
||||
[remark@kovalski_arch_2_talk]:walker@kovalski_ignore
|
||||
target = story | actor
|
||||
anim = hide_na
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
on_signal = sound_end | %+pri_a28_arch_done%
|
||||
on_game_timer = 10 | %=play_sound(pri_a28_colonel_ready_to_go)%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_strelok_arch]
|
||||
active = camper@strelok_arch_1
|
||||
suitable = {-pri_a28_arch_done =check_npc_name(strelok)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@strelok_arch_1]:walker@ignore
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_signal = path_end | {+pri_a28_strelok_go_over_anomaly} walker@strelok_arch_1_fight
|
||||
on_info = {-pri_a28_strelok_go_over_anomaly !npc_in_zone(pri_a28_sr_shop_3_small)} %+pri_a28_strelok_go_over_anomaly =play_sound(pri_a28_strelok_go_over_anomaly)%
|
||||
|
||||
[walker@strelok_arch_1_fight]:walker@fight
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_info = {+pri_a28_colonel_ok_go_here} camper@strelok_arch_2 %=disable_memory_object%
|
||||
|
||||
[camper@strelok_arch_2]:walker@ignore
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_2_look
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_1_arch]
|
||||
active = camper@military_1_arch_1
|
||||
suitable = {-pri_a28_arch_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_1_arch_1]:walker@ignore
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_signal = path_end | walker@military_1_arch_1_fight
|
||||
|
||||
[walker@military_1_arch_1_fight]:walker@fight
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_info = {+pri_a28_colonel_ok_go_here} camper@military_1_arch_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_1_arch_2]:walker@ignore
|
||||
path_walk = military_1_2_walk
|
||||
path_look = military_1_2_look
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_2_arch]
|
||||
active = camper@military_2_arch_1
|
||||
suitable = {-pri_a28_arch_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 90
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_2_arch_1]:walker@ignore
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_signal = path_end | walker@military_2_arch_1_fight
|
||||
|
||||
[walker@military_2_arch_1_fight]:walker@fight
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_info = {+pri_a28_colonel_ok_go_here} camper@military_2_arch_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_2_arch_2]:walker@ignore
|
||||
path_walk = military_2_2_walk
|
||||
path_look = military_2_2_look
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_3_arch]
|
||||
active = camper@military_3_arch_1_fight
|
||||
suitable = {-pri_a28_arch_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 110
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_3_arch_1_fight]:walker@fight
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
no_retreat = false
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
on_info = {+pri_a28_arch_leave} camper@military_3_arch_2
|
||||
|
||||
[camper@military_3_arch_2]:walker@fight
|
||||
path_walk = military_3_2_walk
|
||||
path_look = military_3_2_look
|
||||
no_retreat = false
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_4_arch]
|
||||
active = camper@military_4_arch_1_fight
|
||||
suitable = {-pri_a28_arch_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_4_arch_1_fight]:walker@fight
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
no_retreat = false
|
||||
on_info = {+pri_a28_arch_leave} camper@military_4_arch_2
|
||||
|
||||
[camper@military_4_arch_2]:walker@fight
|
||||
path_walk = military_4_2_walk
|
||||
path_look = military_4_2_look
|
||||
no_retreat = false
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_5_arch]
|
||||
active = camper@military_5_arch_1_fight
|
||||
suitable = {-pri_a28_arch_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 110
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_5_arch_1_fight]:walker@fight
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
no_retreat = false
|
||||
on_info = {+pri_a28_arch_leave} camper@military_5_arch_2
|
||||
|
||||
[camper@military_5_arch_2]:walker@fight
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
no_retreat = false
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_6_arch]
|
||||
active = camper@military_6_arch_1_fight
|
||||
suitable = {-pri_a28_arch_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 90
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_6_arch_1_fight]:walker@fight
|
||||
path_walk = military_6_1_walk
|
||||
path_look = military_6_1_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
no_retreat = false
|
||||
on_info = {+pri_a28_arch_leave} camper@military_6_arch_2
|
||||
|
||||
[camper@military_6_arch_2]:walker@fight
|
||||
path_walk = military_6_2_walk
|
||||
path_look = military_6_2_look
|
||||
no_retreat = false
|
||||
out_restr = pri_a28_sr_arch_2
|
||||
107
gamedata/configs/scripts/evac/pri_a28_arch_zombied.ltx
Normal file
107
gamedata/configs/scripts/evac/pri_a28_arch_zombied.ltx
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
[logic@pri_a28_zombied_1_arch]
|
||||
suitable = {=target_squad_name(pri_a28_arch_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_1_arch_walk
|
||||
|
||||
[logic@pri_a28_zombied_2_arch]
|
||||
suitable = {=target_squad_name(pri_a28_arch_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_2_arch_walk
|
||||
|
||||
[logic@pri_a28_zombied_3_arch]
|
||||
suitable = {=target_squad_name(pri_a28_arch_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_3_arch_walk
|
||||
|
||||
[logic@pri_a28_zombied_4_arch]
|
||||
suitable = {=target_squad_name(pri_a28_arch_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_4_arch_walk
|
||||
|
||||
[logic@pri_a28_zombied_5_arch]
|
||||
suitable = {=target_squad_name(pri_a28_arch_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_5_arch_walk
|
||||
|
||||
[logic@pri_a28_zombied_6_arch]
|
||||
suitable = {=target_squad_name(pri_a28_arch_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_6_arch_walk
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_arch_walk]
|
||||
path_walk = zombied_1_walk
|
||||
on_info = walker@pri_a28_zombied_1_arch_wait %=teleport_npc(pri_a28_arch_zombied_1_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_2_arch_walk]
|
||||
path_walk = zombied_2_walk
|
||||
on_info = walker@pri_a28_zombied_2_arch_wait %=teleport_npc(pri_a28_arch_zombied_2_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_3_arch_walk]
|
||||
path_walk = zombied_3_walk
|
||||
on_info = walker@pri_a28_zombied_3_arch_wait %=teleport_npc(pri_a28_arch_zombied_3_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_4_arch_walk]
|
||||
path_walk = zombied_4_walk
|
||||
on_info = walker@pri_a28_zombied_4_arch_wait %=teleport_npc(pri_a28_arch_zombied_4_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_5_arch_walk]
|
||||
path_walk = zombied_5_walk
|
||||
on_info = walker@pri_a28_zombied_5_arch_wait %=teleport_npc(pri_a28_arch_zombied_5_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_6_arch_walk]
|
||||
path_walk = zombied_6_walk
|
||||
on_info = walker@pri_a28_zombied_6_arch_wait %=teleport_npc(pri_a28_arch_zombied_6_walk)%
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_arch_wait]
|
||||
path_walk = zombied_1_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_strelok_go_over_anomaly} walker@pri_a28_zombied_1_arch_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_1_arch_attack
|
||||
|
||||
[walker@pri_a28_zombied_2_arch_wait]
|
||||
path_walk = zombied_2_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_strelok_go_over_anomaly} walker@pri_a28_zombied_1_arch_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_1_arch_attack
|
||||
|
||||
[walker@pri_a28_zombied_3_arch_wait]
|
||||
path_walk = zombied_3_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_strelok_go_over_anomaly} walker@pri_a28_zombied_2_arch_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_arch_attack
|
||||
|
||||
[walker@pri_a28_zombied_4_arch_wait]
|
||||
path_walk = zombied_4_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_strelok_go_over_anomaly} walker@pri_a28_zombied_2_arch_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_arch_attack
|
||||
|
||||
[walker@pri_a28_zombied_5_arch_wait]
|
||||
path_walk = zombied_5_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_strelok_go_over_anomaly} walker@pri_a28_zombied_3_arch_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_3_arch_attack
|
||||
|
||||
[walker@pri_a28_zombied_6_arch_wait]
|
||||
path_walk = zombied_6_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_strelok_go_over_anomaly} walker@pri_a28_zombied_3_arch_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_3_arch_attack
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_arch_attack]
|
||||
path_walk = zombied_1_attack
|
||||
on_signal = path_end | %+pri_a28_arch_zombied_done%
|
||||
|
||||
[walker@pri_a28_zombied_2_arch_attack]
|
||||
path_walk = zombied_2_attack
|
||||
on_signal = path_end | %+pri_a28_arch_zombied_done%
|
||||
|
||||
[walker@pri_a28_zombied_3_arch_attack]
|
||||
path_walk = zombied_3_attack
|
||||
on_signal = path_end | %+pri_a28_arch_zombied_done%
|
||||
311
gamedata/configs/scripts/evac/pri_a28_base.ltx
Normal file
311
gamedata/configs/scripts/evac/pri_a28_base.ltx
Normal file
|
|
@ -0,0 +1,311 @@
|
|||
#include "pri_a28_general.ltx"
|
||||
|
||||
[logic@pri_a28_kovalski_base]
|
||||
active = walker@kovalski_base_1
|
||||
suitable = {-pri_a28_base_done =check_npc_name(kovalski)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@kovalski_base_1]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {=npc_in_zone(pri_a28_sr_base_1) !npc_in_zone(pri_surge_hide_a16) +pri_a28_heli_near_base} remark@kovalski_base_1
|
||||
|
||||
[remark@kovalski_base_1]:walker@kovalski_ignore
|
||||
target = story | pri_a28_heli
|
||||
anim = threat_na
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_signal = sound_end | walker@kovalski_base_1_stand %+pri_a28_colonel_about_heli%
|
||||
on_info = %=play_sound(pri_a28_colonel_about_heli)%
|
||||
on_info2 = {+pri_a28_colonel_about_heli} walker@kovalski_base_1_stand
|
||||
|
||||
[walker@kovalski_base_1_stand]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {+pri_a28_army_zombied_first} walker@kovalski_base_1_wait
|
||||
|
||||
[walker@kovalski_base_1_wait]:walker@kovalski_fight
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_game_timer = 30 | %=play_sound(pri_a28_colonel_zombied_first)%
|
||||
on_signal = sound_end | %+pri_a28_colonel_zombied_first%
|
||||
on_info = {+pri_a28_colonel_zombied_first} smartcover@kovalski_base_1_fight
|
||||
|
||||
[smartcover@kovalski_base_1_fight]:walker@fight
|
||||
cover_name = pri_a28_base_cover_2
|
||||
use_in_combat = true
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_game_timer = 80 | camper@kovalski_base_2 %+pri_a28_base_leave%
|
||||
on_info = {+pri_a28_base_leave} camper@kovalski_base_2
|
||||
on_info2 = {=in_dest_smart_cover !has_enemy_in_current_loopholes_fov} walker@kovalski_base_1_fight
|
||||
|
||||
[walker@kovalski_base_1_fight]:walker@kovalski_fight
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_game_timer = 60 | %+pri_a28_base_leave%
|
||||
on_info = {+pri_a28_base_leave} camper@kovalski_base_2 %=disable_memory_object%
|
||||
|
||||
[camper@kovalski_base_2]:walker@kovalski_ignore
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_2_look
|
||||
out_restr = pri_a28_sr_shop_1
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_kirillov_base]
|
||||
active = walker@kirillov_base_1
|
||||
suitable = {-pri_a28_base_done =check_npc_name(army_signaller)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@kirillov_base_1]:walker@ignore
|
||||
path_walk = kirillov_1_walk
|
||||
path_look = kirillov_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {=npc_in_zone(pri_a28_sr_base_1) !npc_in_zone(pri_surge_hide_a16) +pri_a28_colonel_about_heli} walker@kirillov_base_1_wait
|
||||
|
||||
[walker@kirillov_base_1_wait]:walker@ignore
|
||||
path_walk = kirillov_1_walk
|
||||
path_look = kirillov_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_game_timer = 10 | %=play_sound(pri_a28_army_zombied_first)%
|
||||
on_signal = sound_end | walker@kirillov_base_1_fight %+pri_a28_army_zombied_first%
|
||||
on_info = {+pri_a28_army_zombied_first} walker@kirillov_base_1_fight
|
||||
|
||||
[walker@kirillov_base_1_fight]:walker@fight
|
||||
path_walk = kirillov_1_walk
|
||||
path_look = kirillov_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {+pri_a28_colonel_zombied_first} camper@kirillov_base_2 %=disable_memory_object%
|
||||
|
||||
[camper@kirillov_base_2]:walker@ignore
|
||||
path_walk = kirillov_2_walk
|
||||
path_look = kirillov_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
on_signal = path_end | smartcover@kirillov_base_2_fight
|
||||
|
||||
[smartcover@kirillov_base_2_fight]:walker@fight
|
||||
cover_name = pri_a28_base_cover_7
|
||||
use_in_combat = true
|
||||
out_restr = pri_a28_sr_base_2
|
||||
on_info = {=in_dest_smart_cover !has_enemy_in_current_loopholes_fov} walker@kirillov_base_2_fight
|
||||
|
||||
[walker@kirillov_base_2_fight]:walker@fight
|
||||
path_walk = kirillov_2_walk
|
||||
path_look = kirillov_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_strelok_base]
|
||||
active = walker@strelok_base_1
|
||||
suitable = {-pri_a28_base_done =check_npc_name(strelok)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@strelok_base_1]:walker@ignore
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {+pri_a28_army_zombied_first} walker@strelok_base_1_fight
|
||||
|
||||
[walker@strelok_base_1_fight]:walker@fight
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {+pri_a28_colonel_zombied_first} camper@strelok_base_2 %=disable_memory_object%
|
||||
|
||||
[camper@strelok_base_2]:walker@ignore
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
on_signal = path_end | walker@strelok_base_2_fight
|
||||
|
||||
[walker@strelok_base_2_fight]:walker@fight
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_base_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_1_base]
|
||||
active = walker@military_1_base_1
|
||||
suitable = {-pri_a28_base_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(army_signaller) !check_npc_name(kovalski)} true
|
||||
prior = 110
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_1_base_1]:walker@ignore
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {+pri_a28_army_zombied_first} walker@military_1_base_1_fight
|
||||
|
||||
[walker@military_1_base_1_fight]:walker@fight
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {+pri_a28_base_leave} camper@military_1_base_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_1_base_2]:walker@ignore
|
||||
path_walk = military_1_2_walk
|
||||
path_look = military_1_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
on_signal = path_end | walker@military_1_base_2_fight
|
||||
|
||||
[walker@military_1_base_2_fight]:walker@fight
|
||||
path_walk = military_1_2_walk
|
||||
path_look = military_1_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_2_base]
|
||||
active = walker@military_2_base_1
|
||||
suitable = {-pri_a28_base_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(army_signaller) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_2_base_1]:walker@ignore
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_base_1
|
||||
on_info = {+pri_a28_army_zombied_first} walker@military_2_base_1_fight
|
||||
|
||||
[walker@military_2_base_1_fight]:walker@fight
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
out_restr = pri_a28_sr_base_1
|
||||
on_info = {+pri_a28_colonel_zombied_first} camper@military_2_base_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_2_base_2]:walker@ignore
|
||||
path_walk = military_2_2_walk
|
||||
path_look = military_2_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
on_signal = path_end | walker@military_2_base_2_fight
|
||||
|
||||
[walker@military_2_base_2_fight]:walker@fight
|
||||
path_walk = military_2_2_walk
|
||||
path_look = military_2_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_3_base]
|
||||
active = walker@military_3_base_1
|
||||
suitable = {-pri_a28_base_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(army_signaller) !check_npc_name(kovalski)} true
|
||||
prior = 90
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_3_base_1]:walker@ignore
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_base_1
|
||||
on_info = {+pri_a28_army_zombied_first} walker@military_3_base_1_fight
|
||||
|
||||
[walker@military_3_base_1_fight]:walker@fight
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
out_restr = pri_a28_sr_base_1
|
||||
on_info = {+pri_a28_colonel_zombied_first} camper@military_3_base_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_3_base_2]:walker@ignore
|
||||
path_walk = military_3_2_walk
|
||||
path_look = military_3_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
on_signal = path_end | walker@military_3_base_2_fight
|
||||
|
||||
[walker@military_3_base_2_fight]:walker@fight
|
||||
path_walk = military_3_2_walk
|
||||
path_look = military_3_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_4_base]
|
||||
active = walker@military_4_base_1
|
||||
suitable = {-pri_a28_base_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(army_signaller) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_4_base_1]:walker@ignore
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_base_1
|
||||
on_info = {+pri_a28_army_zombied_first} walker@military_4_base_1_fight
|
||||
|
||||
[walker@military_4_base_1_fight]:walker@fight
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
out_restr = pri_a28_sr_base_1
|
||||
on_info = {+pri_a28_base_leave} camper@military_4_base_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_4_base_2]:walker@ignore
|
||||
path_walk = military_4_2_walk
|
||||
path_look = military_4_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
on_signal = path_end | walker@military_4_base_2_fight
|
||||
|
||||
[walker@military_4_base_2_fight]:walker@fight
|
||||
path_walk = military_4_2_walk
|
||||
path_look = military_4_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_5_base]
|
||||
active = walker@military_5_base_1
|
||||
suitable = {-pri_a28_base_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(army_signaller) !check_npc_name(kovalski)} true
|
||||
prior = 90
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_5_base_1]:walker@ignore
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {+pri_a28_army_zombied_first} walker@military_5_base_1_fight
|
||||
|
||||
[walker@military_5_base_1_fight]:walker@fight
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
out_restr = pri_a16_sr_noweap
|
||||
on_info = {+pri_a28_base_leave} camper@military_5_base_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_5_base_2]:walker@ignore
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
on_signal = path_end | walker@military_5_base_2_fight
|
||||
|
||||
[walker@military_5_base_2_fight]:walker@fight
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
out_restr = pri_a28_sr_base_2
|
||||
216
gamedata/configs/scripts/evac/pri_a28_base_zombied.ltx
Normal file
216
gamedata/configs/scripts/evac/pri_a28_base_zombied.ltx
Normal file
|
|
@ -0,0 +1,216 @@
|
|||
[logic@pri_a28_zombied_1_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_1_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_2_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_2_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_3_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_3_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_4_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_4_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_5_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_5_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_6_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_6_base_walk
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_base_walk]
|
||||
path_walk = zombied_1_walk
|
||||
on_info = walker@pri_a28_zombied_1_base_wait %=teleport_npc(pri_a28_base_zombied_1_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_2_base_walk]
|
||||
path_walk = zombied_2_walk
|
||||
on_info = walker@pri_a28_zombied_2_base_wait %=teleport_npc(pri_a28_base_zombied_2_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_3_base_walk]
|
||||
path_walk = zombied_3_walk
|
||||
on_info = walker@pri_a28_zombied_3_base_wait %=teleport_npc(pri_a28_base_zombied_3_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_4_base_walk]
|
||||
path_walk = zombied_4_walk
|
||||
on_info = walker@pri_a28_zombied_4_base_wait %=teleport_npc(pri_a28_base_zombied_4_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_5_base_walk]
|
||||
path_walk = zombied_5_walk
|
||||
on_info = walker@pri_a28_zombied_5_base_wait %=teleport_npc(pri_a28_base_zombied_5_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_6_base_walk]
|
||||
path_walk = zombied_6_walk
|
||||
on_info = walker@pri_a28_zombied_6_base_wait %=teleport_npc(pri_a28_base_zombied_6_walk)%
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_base_wait]
|
||||
path_walk = zombied_1_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_1_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_1_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_2_base_wait]
|
||||
path_walk = zombied_2_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_1_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_1_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_3_base_wait]
|
||||
path_walk = zombied_3_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_2_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_4_base_wait]
|
||||
path_walk = zombied_4_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_2_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_5_base_wait]
|
||||
path_walk = zombied_5_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_3_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_3_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_6_base_wait]
|
||||
path_walk = zombied_6_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_3_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_3_base_attack
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_base_attack]
|
||||
path_walk = zombied_1_attack
|
||||
on_signal = path_end | %+pri_a28_base_zombied_done%
|
||||
|
||||
[walker@pri_a28_zombied_2_base_attack]
|
||||
path_walk = zombied_2_attack
|
||||
on_signal = path_end | %+pri_a28_base_zombied_done%
|
||||
|
||||
[walker@pri_a28_zombied_3_base_attack]
|
||||
path_walk = zombied_3_attack
|
||||
on_signal = path_end | %+pri_a28_base_zombied_done%
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_zombied_7_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_7_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_8_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_8_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_9_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_9_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_10_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_10_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_11_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_11_base_walk
|
||||
|
||||
[logic@pri_a28_zombied_12_base]
|
||||
suitable = {=target_squad_name(pri_a28_base_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_12_base_walk
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_7_base_walk]
|
||||
path_walk = zombied_7_walk
|
||||
on_info = walker@pri_a28_zombied_7_base_wait %=teleport_npc(pri_a28_base_zombied_7_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_8_base_walk]
|
||||
path_walk = zombied_8_walk
|
||||
on_info = walker@pri_a28_zombied_8_base_wait %=teleport_npc(pri_a28_base_zombied_8_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_9_base_walk]
|
||||
path_walk = zombied_9_walk
|
||||
on_info = walker@pri_a28_zombied_9_base_wait %=teleport_npc(pri_a28_base_zombied_9_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_10_base_walk]
|
||||
path_walk = zombied_10_walk
|
||||
on_info = walker@pri_a28_zombied_10_base_wait %=teleport_npc(pri_a28_base_zombied_10_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_11_base_walk]
|
||||
path_walk = zombied_11_walk
|
||||
on_info = walker@pri_a28_zombied_11_base_wait %=teleport_npc(pri_a28_base_zombied_11_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_12_base_walk]
|
||||
path_walk = zombied_12_walk
|
||||
on_info = walker@pri_a28_zombied_12_base_wait %=teleport_npc(pri_a28_base_zombied_12_walk)%
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_7_base_wait]
|
||||
path_walk = zombied_7_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_1_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_1_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_8_base_wait]
|
||||
path_walk = zombied_8_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_2_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_9_base_wait]
|
||||
path_walk = zombied_9_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_2_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_10_base_wait]
|
||||
path_walk = zombied_10_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_4_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_4_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_11_base_wait]
|
||||
path_walk = zombied_11_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_4_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_4_base_attack
|
||||
|
||||
[walker@pri_a28_zombied_12_base_wait]
|
||||
path_walk = zombied_12_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_first} walker@pri_a28_zombied_5_base_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_5_base_attack
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_4_base_attack]
|
||||
path_walk = zombied_4_attack
|
||||
on_signal = path_end | %+pri_a28_base_zombied_done%
|
||||
|
||||
[walker@pri_a28_zombied_5_base_attack]
|
||||
path_walk = zombied_5_attack
|
||||
on_signal = path_end | %+pri_a28_base_zombied_done%
|
||||
49
gamedata/configs/scripts/evac/pri_a28_cutscene_actor.ltx
Normal file
49
gamedata/configs/scripts/evac/pri_a28_cutscene_actor.ltx
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
[walker@ignore]
|
||||
wounded = wounded@no_wound
|
||||
def_state_standing = threat_na
|
||||
def_state_moving = assault
|
||||
meet = no_meet
|
||||
use_camp = false
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
invulnerable = true
|
||||
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
|
||||
|
||||
|
||||
|
||||
[logic]
|
||||
active = walker@start
|
||||
|
||||
[walker@start]:walker@ignore
|
||||
path_walk = pri_a28_cutscene_actor_walk
|
||||
path_look = pri_a28_cutscene_actor_look
|
||||
meet = no_meet
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_info = {+pri_a28_commander_on_position} smartcover@cutscene %=teleport_npc(pri_a28_cutscene_actor_walk)%
|
||||
|
||||
[smartcover@cutscene]:walker@ignore
|
||||
cover_name = pri_a28_cutscene_actor_cover
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_evac_com_ready -pri_a28_strelok_dead} %=play_sound(pri_a28_actor_to_strelok)%
|
||||
on_info2 = {+pri_a28_evac_com_ready +pri_a28_strelok_dead +pri_a28_somebody_alive} %=play_sound(pri_a28_actor_scene_end_when_strelok_dead)%
|
||||
on_info3 = {+pri_a28_evac_com_ready +pri_a28_strelok_dead -pri_a28_somebody_alive} %=play_sound(pri_a28_actor_scene_end)%
|
||||
on_signal = sound_end | %+pri_a28_final_actor_speech_done%
|
||||
on_info4 = {+pri_a28_team_heli_run +pri_a28_strelok_dead} walker@heli_run
|
||||
on_info5 = {+pri_a28_actor_heli_run -pri_a28_strelok_dead} walker@heli_run
|
||||
|
||||
[walker@heli_run]:walker@ignore
|
||||
path_walk = pri_a28_cutscene_actor_away
|
||||
def_state_moving = sneak_run
|
||||
on_game_timer = 20 | %+pri_a28_cut_1_end%
|
||||
on_info = {+pri_a28_show_freeplay_dialog} %=destroy_object%
|
||||
45
gamedata/configs/scripts/evac/pri_a28_cutscene_commander.ltx
Normal file
45
gamedata/configs/scripts/evac/pri_a28_cutscene_commander.ltx
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
[walker@ignore]
|
||||
wounded = wounded@no_wound
|
||||
def_state_standing = threat_na
|
||||
def_state_moving = assault
|
||||
meet = no_meet
|
||||
use_camp = false
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
invulnerable = true
|
||||
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
|
||||
|
||||
|
||||
|
||||
[logic]
|
||||
active = smartcover@evac_comm
|
||||
|
||||
[smartcover@evac_comm]:walker@ignore
|
||||
cover_name = pri_a28_heli_cover_33
|
||||
combat_ignore_cond = true
|
||||
meet = no_meet
|
||||
on_game_timer = 60 | {+pri_a28_scene_end -pri_a28_commander_on_position} smartcover@evac_comm_snd %+pri_a28_commander_on_position%
|
||||
|
||||
[smartcover@evac_comm_snd]:smartcover@evac_comm
|
||||
on_game_timer = 70 | %=play_sound(pri_a28_evac_com_ready)%
|
||||
on_signal = sound_end | %+pri_a28_evac_com_ready%
|
||||
on_info = {+pri_a28_final_actor_speech_done +pri_a28_strelok_dead} walker@evac_comm_run %=play_sound(pri_a28_evac_com_scene_end_when_strelok_dead)%
|
||||
on_info2 = {+pri_a28_final_actor_speech_done -pri_a28_strelok_dead} walker@evac_comm_run
|
||||
|
||||
[walker@evac_comm_run]:walker@ignore
|
||||
path_walk = pri_a28_cutscene_commander_away
|
||||
def_state_moving = sneak_run
|
||||
combat_ignore_cond = true
|
||||
meet = no_meet
|
||||
on_game_timer = 20 | {-pri_a28_team_heli_run} %+pri_a28_team_heli_run%
|
||||
on_info = {+pri_a28_show_freeplay_dialog} %=destroy_object%
|
||||
39
gamedata/configs/scripts/evac/pri_a28_cutscene_strelok.ltx
Normal file
39
gamedata/configs/scripts/evac/pri_a28_cutscene_strelok.ltx
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
[walker@ignore]
|
||||
wounded = wounded@no_wound
|
||||
def_state_standing = threat_na
|
||||
def_state_moving = assault
|
||||
meet = no_meet
|
||||
use_camp = false
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
invulnerable = true
|
||||
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
|
||||
|
||||
|
||||
|
||||
[logic]
|
||||
active = smartcover@strelok
|
||||
|
||||
[smartcover@strelok]:walker@ignore
|
||||
cover_name = pri_a28_heli_cover_32
|
||||
combat_ignore_cond = true
|
||||
meet = no_meet
|
||||
on_info = {+pri_a28_team_heli_run} walker@strelok_run
|
||||
on_info2 = {+pri_a28_strelok_dead} %=destroy_object%
|
||||
|
||||
[walker@strelok_run]:walker@ignore
|
||||
path_walk = pri_a28_cutscene_strelok_away
|
||||
def_state_moving = sneak_run
|
||||
meet = no_meet
|
||||
on_game_timer = 20 | {-pri_a28_actor_heli_run} %+pri_a28_actor_heli_run%
|
||||
on_info = {+pri_a28_show_freeplay_dialog} %=destroy_object%
|
||||
443
gamedata/configs/scripts/evac/pri_a28_evac.ltx
Normal file
443
gamedata/configs/scripts/evac/pri_a28_evac.ltx
Normal file
|
|
@ -0,0 +1,443 @@
|
|||
#include "pri_a28_general.ltx"
|
||||
|
||||
[logic@pri_a28_kovalski_evac]
|
||||
active = camper@kovalski_evac_1
|
||||
suitable = {-pri_a28_evac_done =check_npc_name(kovalski)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@kovalski_evac_1]:walker@kovalski_fight
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_horror_start =npc_in_zone(pri_a28_sr_horror)} remark@kovalski_horror_1
|
||||
on_info2 = {-pri_a28_horror_start =npc_in_zone(pri_a28_sr_evac_1)} remark@kovalski_horror_1 %+pri_a28_horror_start%
|
||||
on_info3 = {+pri_a28_strelok_run} camper@kovalski_evac_2
|
||||
|
||||
[remark@kovalski_horror_1]:walker@kovalski_ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 3
|
||||
on_game_timer = 36 | remark@kovalski_horror_2
|
||||
|
||||
[remark@kovalski_horror_2]:walker@kovalski_ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_game_timer = 28 | remark@kovalski_horror_3
|
||||
|
||||
[remark@kovalski_horror_3]:walker@kovalski_ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 4
|
||||
on_info = {+pri_a28_strelok_run} camper@kovalski_evac_2
|
||||
|
||||
[camper@kovalski_evac_2]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_signal = path_end | remark@kovalski_evac_2_wait
|
||||
|
||||
[remark@kovalski_evac_2_wait]:walker@kovalski_ignore
|
||||
target = story | actor
|
||||
anim = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_game_timer = 300 | {=dist_to_actor_ge(15) -pri_a28_strelok_dead} %=play_sound(pri_a28_colonel_wait_actor) +pri_a28_colonel_wait_actor%
|
||||
on_game_timer2 = 450 | {=dist_to_actor_ge(15)} %=play_sound(pri_a28_colonel_wait_actor_long) +pri_a28_colonel_wait_actor%
|
||||
on_game_timer3 = 600 | {=dist_to_actor_ge(15)} remark@kovalski_evac_2_talk %=play_sound(pri_a28_colonel_wait_actor_go)%
|
||||
on_info = {-pri_a28_actor_enemy_to_squad =dist_to_actor_le(30) +pri_a28_colonel_wait_actor} remark@kovalski_evac_2_talk %=play_sound(pri_a28_colonel_wait_actor_return)%
|
||||
on_info2 = {-pri_a28_actor_enemy_to_squad =dist_to_actor_le(30) -pri_a28_colonel_wait_actor} remark@kovalski_evac_2_talk
|
||||
on_info3 = {-pri_a28_actor_enemy_to_squad +pri_a28_evac_leave} camper@kovalski_evac_3 %=play_sound(pri_a28_colonel_wait_actor_go)%
|
||||
on_info4 = {+pri_a28_actor_enemy_to_squad} remark@kovalski_evac_2_talk
|
||||
|
||||
[remark@kovalski_evac_2_talk]:walker@kovalski_ignore
|
||||
target = story | actor
|
||||
anim = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
on_signal = sound_end | camper@kovalski_evac_3 %+pri_a28_evac_leave%
|
||||
on_game_timer = 10 | %=play_sound(pri_a28_colonel_clear_the_deck)%
|
||||
|
||||
[camper@kovalski_evac_3]:walker@kovalski_ignore
|
||||
path_walk = kovalski_3_walk
|
||||
path_look = kovalski_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
on_info = {+pri_a28_evac_come_close_done =npc_in_zone(pri_a28_sr_evac_2)} %=play_sound(pri_a28_colonel_see_helicopter)%
|
||||
on_signal = sound_end | %+pri_a28_evac_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_medic_evac]
|
||||
active = camper@medic_evac_1
|
||||
suitable = {-pri_a28_evac_done =check_npc_name(base_medic)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@medic_evac_1]:walker@fight
|
||||
path_walk = medic_2_walk
|
||||
path_look = medic_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_horror
|
||||
on_info = {=npc_in_zone(pri_a28_sr_horror)} camper@medic_evac_1_wait
|
||||
|
||||
[camper@medic_evac_1_wait]:walker@ignore
|
||||
path_walk = medic_2_walk
|
||||
path_look = medic_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_horror
|
||||
on_game_timer = 15 | remark@medic_horror_1
|
||||
|
||||
[remark@medic_horror_1]:walker@ignore
|
||||
anim = threat_heli
|
||||
target = path | pri_a28_horror_look, 0
|
||||
on_signal = sound_end | remark@medic_horror_2 %+pri_a28_army_what_is_that +pri_a28_horror_start%
|
||||
on_info = %=play_sound(pri_a28_army_what_is_that)%
|
||||
|
||||
[remark@medic_horror_2]:walker@ignore
|
||||
anim = threat_heli
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_game_timer = 45 | remark@medic_horror_3
|
||||
|
||||
[remark@medic_horror_3]:walker@ignore
|
||||
anim = threat_heli
|
||||
target = path | pri_a28_horror_look, 2
|
||||
on_info2 = {+pri_a28_strelok_dont_stop} remark@medic_horror_4
|
||||
|
||||
[remark@medic_horror_4]:walker@ignore
|
||||
anim = pri_a25_psy_medic_idle
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_signal = sound_end | remark@medic_horror_5 %+pri_a28_army_its_here =give_task(pri_a28_recover_medic)%
|
||||
on_game_timer = 10 | %=play_sound(pri_a28_army_its_here)%
|
||||
|
||||
[remark@medic_horror_5]:walker@ignore
|
||||
anim = pri_a25_psy_medic_idle
|
||||
target = path | pri_a28_horror_look, 2
|
||||
meet = meet@medic_horror_wait
|
||||
on_game_timer = 30 | remark@medic_horror_wait
|
||||
|
||||
[remark@medic_horror_wait]:walker@ignore
|
||||
anim = pri_a25_psy_medic_idle
|
||||
target = path | pri_a28_horror_look, 3
|
||||
meet = meet@medic_horror_wait
|
||||
on_signal = sound_end | remark@medic_horror_recovered %+pri_a28_medic_recovered%
|
||||
on_info = {+pri_a28_medic_recovered} remark@medic_horror_recovered
|
||||
|
||||
[meet@medic_horror_wait]
|
||||
abuse = false
|
||||
use = false
|
||||
snd_on_use = pri_a28_army_confusion
|
||||
use_text = pri_a28_talk_with_stupid_medic
|
||||
close_distance = 0
|
||||
far_distance = 0
|
||||
|
||||
[remark@medic_horror_recovered]:walker@ignore
|
||||
anim = pri_a25_psy_medic_out
|
||||
target = story | actor
|
||||
on_signal = anim_end | camper@medic_evac_2
|
||||
|
||||
[camper@medic_evac_2]:walker@ignore
|
||||
path_walk = medic_1_walk
|
||||
path_look = medic_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_evac_leave} camper@medic_evac_3
|
||||
|
||||
[camper@medic_evac_3]:walker@ignore
|
||||
path_walk = medic_3_walk
|
||||
path_look = medic_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_strelok_evac]
|
||||
active = camper@strelok_evac_1
|
||||
suitable = {-pri_a28_evac_done =check_npc_name(strelok)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@strelok_evac_1]:walker@fight
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_horror_start =npc_in_zone(pri_a28_sr_horror)} remark@strelok_horror_1
|
||||
on_info2 = {-pri_a28_horror_start =npc_in_zone(pri_a28_sr_evac_1)} remark@strelok_horror_1 %+pri_a28_horror_start%
|
||||
on_info3 = {+pri_a28_army_what_is_that} remark@strelok_horror_1
|
||||
|
||||
[remark@strelok_horror_1]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 2
|
||||
on_game_timer = 23 | remark@strelok_horror_2
|
||||
|
||||
[remark@strelok_horror_2]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_game_timer = 31 | remark@strelok_horror_3
|
||||
|
||||
[remark@strelok_horror_3]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 3
|
||||
on_game_timer = 15 | %=play_sound(pri_a28_strelok_dont_stop)%
|
||||
on_signal = sound_end | %+pri_a28_strelok_dont_stop%
|
||||
on_info = {+pri_a28_army_its_here} remark@strelok_horror_4
|
||||
|
||||
[remark@strelok_horror_4]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_game_timer = 10 | %=play_sound(pri_a28_strelok_run)%
|
||||
on_signal = sound_end | camper@strelok_evac_2 %+pri_a28_strelok_run%
|
||||
|
||||
[camper@strelok_evac_2]:walker@ignore
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_evac_leave} camper@strelok_evac_3
|
||||
|
||||
[camper@strelok_evac_3]:walker@ignore
|
||||
path_walk = strelok_3_walk
|
||||
path_look = strelok_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_1_evac]
|
||||
active = camper@military_1_evac_1
|
||||
suitable = {-pri_a28_evac_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_1_evac_1]:walker@fight
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_horror_start =npc_in_zone(pri_a28_sr_horror)} remark@military_1_horror_1
|
||||
on_info2 = {-pri_a28_horror_start =npc_in_zone(pri_a28_sr_evac_1)} remark@military_1_horror_1 %+pri_a28_horror_start%
|
||||
on_info3 = {+pri_a28_strelok_run} camper@military_1_evac_2
|
||||
|
||||
[remark@military_1_horror_1]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 4
|
||||
on_game_timer = 44 | remark@military_1_horror_2
|
||||
|
||||
[remark@military_1_horror_2]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_game_timer = 12 | remark@military_1_horror_3
|
||||
|
||||
[remark@military_1_horror_3]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 2
|
||||
on_info = {+pri_a28_strelok_run} camper@military_1_evac_2
|
||||
|
||||
[camper@military_1_evac_2]:walker@ignore
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_evac_leave} camper@military_1_evac_3
|
||||
|
||||
[camper@military_1_evac_3]:walker@fight
|
||||
path_walk = military_1_3_walk
|
||||
path_look = military_1_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_2_evac]
|
||||
active = camper@military_2_evac_1
|
||||
suitable = {-pri_a28_evac_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_2_evac_1]:walker@fight
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_horror_start =npc_in_zone(pri_a28_sr_horror)} remark@military_2_horror_1
|
||||
on_info2 = {-pri_a28_horror_start =npc_in_zone(pri_a28_sr_evac_1)} remark@military_2_horror_1 %+pri_a28_horror_start%
|
||||
on_info3 = {+pri_a28_strelok_run} camper@military_2_evac_2
|
||||
|
||||
[remark@military_2_horror_1]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 3
|
||||
on_game_timer = 28 | remark@military_2_horror_2
|
||||
|
||||
[remark@military_2_horror_2]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 4
|
||||
on_game_timer = 36 | remark@military_2_horror_3
|
||||
|
||||
[remark@military_2_horror_3]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 3
|
||||
on_info = {+pri_a28_strelok_run} camper@military_2_evac_2
|
||||
|
||||
[camper@military_2_evac_2]:walker@ignore
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_evac_leave} camper@military_2_evac_3
|
||||
|
||||
[camper@military_2_evac_3]:walker@fight
|
||||
path_walk = military_2_3_walk
|
||||
path_look = military_2_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_3_evac]
|
||||
active = camper@military_3_evac_1
|
||||
suitable = {-pri_a28_evac_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_3_evac_1]:walker@fight
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_horror_start =npc_in_zone(pri_a28_sr_horror)} remark@military_3_horror_1
|
||||
on_info2 = {-pri_a28_horror_start =npc_in_zone(pri_a28_sr_evac_1)} remark@military_3_horror_1 %+pri_a28_horror_start%
|
||||
on_info3 = {+pri_a28_strelok_run} camper@military_3_evac_2
|
||||
|
||||
[remark@military_3_horror_1]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 3
|
||||
on_game_timer = 33 | remark@military_3_horror_2
|
||||
|
||||
[remark@military_3_horror_2]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 4
|
||||
on_game_timer = 44 | remark@military_3_horror_3
|
||||
|
||||
[remark@military_3_horror_3]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_info = {+pri_a28_strelok_run} camper@military_3_evac_2
|
||||
|
||||
[camper@military_3_evac_2]:walker@ignore
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_evac_leave} camper@military_3_evac_3
|
||||
|
||||
[camper@military_3_evac_3]:walker@fight
|
||||
path_walk = military_3_3_walk
|
||||
path_look = military_3_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_4_evac]
|
||||
active = camper@military_4_evac_1
|
||||
suitable = {-pri_a28_evac_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_4_evac_1]:walker@fight
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_horror_start =npc_in_zone(pri_a28_sr_horror)} remark@military_4_horror_1
|
||||
on_info2 = {-pri_a28_horror_start =npc_in_zone(pri_a28_sr_evac_1)} remark@military_4_horror_1 %+pri_a28_horror_start%
|
||||
on_info3 = {+pri_a28_strelok_run} camper@military_4_evac_2
|
||||
|
||||
[remark@military_4_horror_1]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 2
|
||||
on_game_timer = 22 | remark@military_4_horror_2
|
||||
|
||||
[remark@military_4_horror_2]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 0
|
||||
on_game_timer = 56 | remark@military_4_horror_3
|
||||
|
||||
[remark@military_4_horror_3]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_info = {+pri_a28_strelok_run} camper@military_4_evac_2
|
||||
|
||||
[camper@military_4_evac_2]:walker@ignore
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_evac_leave} camper@military_4_evac_3
|
||||
|
||||
[camper@military_4_evac_3]:walker@fight
|
||||
path_walk = military_4_3_walk
|
||||
path_look = military_4_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_5_evac]
|
||||
active = camper@military_5_evac_1
|
||||
suitable = {-pri_a28_evac_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_5_evac_1]:walker@fight
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_horror_start =npc_in_zone(pri_a28_sr_horror)} remark@military_5_horror_1
|
||||
on_info2 = {-pri_a28_horror_start =npc_in_zone(pri_a28_sr_evac_1)} remark@military_5_horror_1 %+pri_a28_horror_start%
|
||||
on_info3 = {+pri_a28_strelok_run} camper@military_5_evac_2
|
||||
|
||||
[remark@military_5_horror_1]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 0
|
||||
on_game_timer = 25 | remark@military_5_horror_2
|
||||
|
||||
[remark@military_5_horror_2]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 4
|
||||
on_game_timer = 40 | remark@military_5_horror_3
|
||||
|
||||
[remark@military_5_horror_3]:walker@ignore
|
||||
anim = hide_na
|
||||
target = path | pri_a28_horror_look, 1
|
||||
on_info = {+pri_a28_strelok_run} camper@military_5_evac_2
|
||||
|
||||
[camper@military_5_evac_2]:walker@ignore
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_1
|
||||
on_info = {+pri_a28_evac_leave} camper@military_5_evac_3
|
||||
|
||||
[camper@military_5_evac_3]:walker@fight
|
||||
path_walk = military_5_3_walk
|
||||
path_look = military_5_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_evac_2
|
||||
89
gamedata/configs/scripts/evac/pri_a28_evac_squad.ltx
Normal file
89
gamedata/configs/scripts/evac/pri_a28_evac_squad.ltx
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
#include "pri_a28_general.ltx"
|
||||
|
||||
[logic@pri_a28_evac_military_1]
|
||||
active = camper@pri_a28_evac_military_1_wait
|
||||
suitable = {+pri_b305_fifth_cam_end =check_npc_name(pri_a28_evac_com)} true, {+pri_b305_fifth_cam_end !is_alive(pri_a28_evac_com) =target_squad_name(pri_a28_evac_squad) =is_squad_commander} true
|
||||
prior = 200
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@pri_a28_evac_military_1_wait]:walker@ignore
|
||||
path_walk = evac_military_1_walk
|
||||
path_look = evac_military_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
invulnerable = true
|
||||
on_info = {+pri_a28_squad_dead} camper@pri_a28_evac_military_1 %=clear_smart_terrain(pri_sim_2) +pri_a28_evac_squad_active%
|
||||
on_info2 = {=dist_to_actor_le(150)} camper@pri_a28_evac_military_1 %=clear_smart_terrain(pri_sim_2) +pri_a28_evac_squad_active%
|
||||
on_info3 = {+pri_a28_evac_done} camper@pri_a28_evac_military_1 %=clear_smart_terrain(pri_sim_2) +pri_a28_evac_squad_active%
|
||||
|
||||
[camper@pri_a28_evac_military_1]:walker@fight
|
||||
path_walk = evac_military_1_walk
|
||||
path_look = evac_military_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_info = {+pri_a28_evac_come_close} %=play_sound(pri_a28_evac_come_close)%
|
||||
on_info2 = {+pri_a28_evac_com_to_helicopter} %=play_sound(pri_a28_evac_com_to_helicopter)%
|
||||
on_signal = sound_end | {-pri_a28_evac_come_close_done} %+pri_a28_evac_come_close_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_evac_military_2]
|
||||
active = camper@pri_a28_evac_military_2_wait
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_evac_squad) !check_npc_name(pri_a28_evac_com)} true, {+pri_b305_fifth_cam_end !is_alive(pri_a28_evac_com) =target_squad_name(pri_a28_evac_squad) !is_squad_commander} true
|
||||
prior = 200
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@pri_a28_evac_military_2_wait]:walker@ignore
|
||||
path_walk = evac_military_2_walk
|
||||
path_look = evac_military_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_info = {+pri_a28_evac_squad_active} camper@pri_a28_evac_military_2
|
||||
|
||||
[camper@pri_a28_evac_military_2]:walker@fight
|
||||
path_walk = evac_military_2_walk
|
||||
path_look = evac_military_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_evac_military_3]
|
||||
active = camper@pri_a28_evac_military_3_wait
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_evac_squad) !check_npc_name(pri_a28_evac_com)} true, {+pri_b305_fifth_cam_end !is_alive(pri_a28_evac_com) =target_squad_name(pri_a28_evac_squad) !is_squad_commander} true
|
||||
prior = 200
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@pri_a28_evac_military_3_wait]:walker@ignore
|
||||
path_walk = evac_military_3_walk
|
||||
path_look = evac_military_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_info = {+pri_a28_evac_squad_active} camper@pri_a28_evac_military_3
|
||||
|
||||
[camper@pri_a28_evac_military_3]:walker@fight
|
||||
path_walk = evac_military_3_walk
|
||||
path_look = evac_military_3_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_evac_military_4]
|
||||
active = camper@pri_a28_evac_military_4_wait
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_evac_squad) !check_npc_name(pri_a28_evac_com)} true, {+pri_b305_fifth_cam_end !is_alive(pri_a28_evac_com) =target_squad_name(pri_a28_evac_squad) !is_squad_commander} true
|
||||
prior = 200
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@pri_a28_evac_military_4_wait]:walker@ignore
|
||||
path_walk = evac_military_4_walk
|
||||
path_look = evac_military_4_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_info = {+pri_a28_evac_squad_active} camper@pri_a28_evac_military_4
|
||||
|
||||
[camper@pri_a28_evac_military_4]:walker@fight
|
||||
path_walk = evac_military_4_walk
|
||||
path_look = evac_military_4_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
60
gamedata/configs/scripts/evac/pri_a28_general.ltx
Normal file
60
gamedata/configs/scripts/evac/pri_a28_general.ltx
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
;Meets default
|
||||
[meet@def]
|
||||
close_snd_hello = nil
|
||||
close_snd_bye = nil
|
||||
snd_on_use = nil
|
||||
close_distance = 0
|
||||
far_distance = 0
|
||||
close_victim = nil
|
||||
use = false
|
||||
abuse = false
|
||||
|
||||
|
||||
|
||||
;Hits
|
||||
[hit@def]
|
||||
on_info = {!has_enemy =hit_by_actor =counter_greater(pri_a28_friendly_hit:7) =squad_exist(pri_a16_military_squad)} %=set_squad_enemy_to_actor(pri_a16_military_squad) +pri_a28_actor_enemy%
|
||||
on_info2 = {!has_enemy =hit_by_actor !counter_greater(pri_a28_friendly_hit:7) =squad_exist(pri_a16_military_squad)} %=inc_counter(pri_a28_friendly_hit)%
|
||||
|
||||
;Death
|
||||
[death@def]
|
||||
on_info = %=stop_sound%
|
||||
on_info2 = {=has_enemy =killed_by_actor !counter_greater(pri_a28_friendly_hit:7)} %=inc_counter(pri_a28_friendly_hit)%, {=killed_by_actor =squad_exist(pri_a16_military_squad)} %=set_squad_enemy_to_actor(pri_a16_military_squad) +pri_a28_actor_enemy%
|
||||
|
||||
|
||||
|
||||
;Sounds
|
||||
[walker@fight]
|
||||
meet = meet@def
|
||||
wounded = wounded@no_wound
|
||||
def_state_standing = threat_na
|
||||
def_state_moving = assault
|
||||
def_state_campering = hide_na
|
||||
gather_items_enabled = false
|
||||
help_wounded_enabled = false
|
||||
corpse_detection_enabled = false
|
||||
radius = 70
|
||||
no_retreat = true
|
||||
use_camp = false
|
||||
|
||||
[walker@ignore]:walker@fight
|
||||
combat_ignore_cond = {+pri_a28_actor_enemy} false, true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
radius = 15
|
||||
|
||||
|
||||
[walker@kovalski_fight]:walker@fight
|
||||
on_info99 = {-pri_a28_actor_enemy -pri_a28_colonel_strelok_out +pri_a28_strelok_dead} %+pri_a28_colonel_strelok_out =play_sound(pri_a28_colonel_strelok_out)%
|
||||
|
||||
[walker@kovalski_ignore]:walker@ignore
|
||||
on_info99 = {-pri_a28_actor_enemy -pri_a28_colonel_strelok_out +pri_a28_strelok_dead} %+pri_a28_colonel_strelok_out =play_sound(pri_a28_colonel_strelok_out)%
|
||||
|
||||
|
||||
|
||||
;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
|
||||
254
gamedata/configs/scripts/evac/pri_a28_heli.ltx
Normal file
254
gamedata/configs/scripts/evac/pri_a28_heli.ltx
Normal file
|
|
@ -0,0 +1,254 @@
|
|||
#include "pri_a28_general.ltx"
|
||||
|
||||
[logic@pri_a28_kovalski_heli]
|
||||
active = camper@kovalski_heli_1
|
||||
suitable = {=check_npc_name(kovalski)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@kovalski_heli_1]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_game_timer = 30 | {+pri_a28_evac_come_close_done} %=play_sound(pri_a28_colonel_close_by)%
|
||||
on_signal = sound_end | camper@kovalski_heli_1_fight
|
||||
|
||||
[camper@kovalski_heli_1_fight]:walker@kovalski_fight
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_info = {=npc_in_zone(pri_a28_sr_small)} camper@kovalski_heli_2 %=disable_memory_object%
|
||||
|
||||
[camper@kovalski_heli_2]:walker@kovalski_ignore
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_signal = path_end | camper@kovalski_heli_2_fight
|
||||
|
||||
[camper@kovalski_heli_2_fight]:walker@kovalski_fight
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_strelok_heli]
|
||||
active = camper@strelok_heli_1
|
||||
suitable = {=check_npc_name(strelok)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@strelok_heli_1]:walker@ignore
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_info = {=npc_in_zone(pri_a28_sr_small)} camper@strelok_heli_2
|
||||
|
||||
[camper@strelok_heli_2]:walker@ignore
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_1_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_signal = path_end | camper@strelok_heli_2_fight
|
||||
on_info = {-pri_a28_strelok_can_leave =npc_in_zone(pri_a28_scene_end_zone)} %+pri_a28_strelok_can_leave%
|
||||
|
||||
[camper@strelok_heli_2_fight]:walker@fight
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_1_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_info = {-pri_a28_strelok_can_leave =npc_in_zone(pri_a28_scene_end_zone)} %+pri_a28_strelok_can_leave%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_1_heli]
|
||||
active = camper@military_1_heli_1
|
||||
suitable = {=target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 110
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_1_heli_1]:walker@fight
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_1
|
||||
on_info = {+pri_a28_evac_com_to_helicopter} camper@military_1_heli_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_1_heli_2]:walker@ignore
|
||||
path_walk = military_1_2_walk
|
||||
path_look = military_1_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_signal = path_end | camper@military_1_heli_2_fight
|
||||
|
||||
[camper@military_1_heli_2_fight]:walker@fight
|
||||
path_walk = military_1_2_walk
|
||||
path_look = military_1_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_2_heli]
|
||||
active = camper@military_2_heli_1
|
||||
suitable = {=target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_2_heli_1]:walker@fight
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_1
|
||||
on_info = {+pri_a28_evac_com_to_helicopter} camper@military_2_heli_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_2_heli_2]:walker@ignore
|
||||
path_walk = military_2_2_walk
|
||||
path_look = military_2_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_signal = path_end | camper@military_2_heli_2_fight
|
||||
|
||||
[camper@military_2_heli_2_fight]:walker@fight
|
||||
path_walk = military_2_2_walk
|
||||
path_look = military_2_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_3_heli]
|
||||
active = camper@military_3_heli_1
|
||||
suitable = {=target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 90
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_3_heli_1]:walker@fight
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_1
|
||||
on_info = {+pri_a28_evac_com_to_helicopter} camper@military_3_heli_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_3_heli_2]:walker@ignore
|
||||
path_walk = military_3_2_walk
|
||||
path_look = military_3_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_signal = path_end | camper@military_3_heli_2_fight
|
||||
|
||||
[camper@military_3_heli_2_fight]:walker@fight
|
||||
path_walk = military_3_2_walk
|
||||
path_look = military_3_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_4_heli]
|
||||
active = camper@military_4_heli_1
|
||||
suitable = {=target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 110
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_4_heli_1]:walker@fight
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_2
|
||||
on_info = {+pri_a28_evac_com_to_helicopter} camper@military_4_heli_1_wait
|
||||
|
||||
[camper@military_4_heli_1_wait]:walker@fight
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_2
|
||||
on_game_timer = 180 | camper@military_4_heli_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_4_heli_2]:walker@ignore
|
||||
path_walk = military_4_2_walk
|
||||
path_look = military_4_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_signal = path_end | camper@military_4_heli_2_fight
|
||||
|
||||
[camper@military_4_heli_2_fight]:walker@fight
|
||||
path_walk = military_4_2_walk
|
||||
path_look = military_4_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_5_heli]
|
||||
active = camper@military_5_heli_1
|
||||
suitable = {=target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_5_heli_1]:walker@fight
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_2
|
||||
on_info = {+pri_a28_evac_com_to_helicopter} camper@military_5_heli_1_wait
|
||||
|
||||
[camper@military_5_heli_1_wait]:walker@fight
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_2
|
||||
on_game_timer = 180 | camper@military_5_heli_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_5_heli_2]:walker@ignore
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_signal = path_end | camper@military_5_heli_2_fight
|
||||
|
||||
[camper@military_5_heli_2_fight]:walker@fight
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_6_heli]
|
||||
active = camper@military_6_heli_1
|
||||
suitable = {=target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski)} true
|
||||
prior = 90
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_6_heli_1]:walker@fight
|
||||
path_walk = military_6_1_walk
|
||||
path_look = military_6_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_2
|
||||
on_info = {+pri_a28_evac_com_to_helicopter} camper@military_6_heli_1_wait
|
||||
|
||||
[camper@military_6_heli_1_wait]:walker@fight
|
||||
path_walk = military_6_1_walk
|
||||
path_look = military_6_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_heli_2
|
||||
on_game_timer = 180 | camper@military_6_heli_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_6_heli_2]:walker@ignore
|
||||
path_walk = military_6_2_walk
|
||||
path_look = military_6_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
on_signal = path_end | camper@military_6_heli_2_fight
|
||||
|
||||
[camper@military_6_heli_2_fight]:walker@fight
|
||||
path_walk = military_6_2_walk
|
||||
path_look = military_6_2_look
|
||||
out_restr = pri_a28_scene_end_zone
|
||||
64
gamedata/configs/scripts/evac/pri_a28_heli_1.ltx
Normal file
64
gamedata/configs/scripts/evac/pri_a28_heli_1.ltx
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
[logic]
|
||||
active = heli_move@under_level
|
||||
|
||||
[heli_move@under_level]
|
||||
path_move = pri_a28_heli_under_level_1
|
||||
path_look = pri_a28_heli_way_1
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
engine_sound = false
|
||||
on_info = {+pri_b305_fifth_cam_end} heli_move@start
|
||||
;Çàòû÷êà
|
||||
on_info2 = {+pri_a28_cutscene_start} heli_move@land %+pri_a28_helis_added =spawn_object(pri_a28_earth_helli_1:pri_a28_heli_landing_way_1:0:215) =spawn_object(pri_a28_earth_helli_2:pri_a28_heli_landing_way_2:0:210)%
|
||||
|
||||
[heli_move@start]
|
||||
path_move = pri_a28_heli_start_1
|
||||
path_look = pri_a28_heli_way_1
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
engine_sound = false
|
||||
on_info = {+pri_a28_update_task_cover_strelok} heli_move@flyby
|
||||
|
||||
[heli_move@flyby]
|
||||
path_move = pri_a28_heli_way_1
|
||||
path_look = pri_a28_heli_cutscene_move_1
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_info = {-pri_a28_heli_near_base =npc_in_zone(pri_a28_heli_near_base)} %+pri_a28_heli_near_base%
|
||||
on_info2 = {=npc_in_zone(pri_a28_heli_landing_zone)} heli_move@land %+pri_a28_helis_added =spawn_object(pri_a28_earth_helli_1:pri_a28_heli_landing_way_1:0:215) =spawn_object(pri_a28_earth_helli_2:pri_a28_heli_landing_way_2:0:210)%
|
||||
|
||||
[heli_move@land]
|
||||
path_move = pri_a28_heli_land_move_1
|
||||
path_look = pri_a28_heli_land_look_1
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
engine_sound = false
|
||||
on_info = {+pri_a28_helis_leave} heli_move@cutscene
|
||||
|
||||
[heli_move@cutscene]
|
||||
path_move = pri_a28_heli_cutscene_move_1
|
||||
path_look = pri_a28_heli_cutscene_move_1_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_info = {=npc_in_zone(pri_a28_helli_start_away_zone)} heli_move@fly_over %+pri_a28_heli_fly_over%
|
||||
;on_info2 = {+pri_a28_heli_fly_over} heli_move@fly_over
|
||||
|
||||
[heli_move@fly_over]
|
||||
path_move = pri_a28_heli_cutscene_move_1_2
|
||||
path_look = pri_a28_heli_cutscene_move_away_1
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_game_timer = 50 | heli_move@cutscene_away
|
||||
|
||||
[heli_move@cutscene_away]
|
||||
path_move = pri_a28_heli_cutscene_move_away_1
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_info = {=npc_in_zone(pri_a28_scene_end_hellis_destroy_zone)} %=destroy_object%
|
||||
71
gamedata/configs/scripts/evac/pri_a28_heli_2.ltx
Normal file
71
gamedata/configs/scripts/evac/pri_a28_heli_2.ltx
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
[logic]
|
||||
active = heli_move@under_level
|
||||
|
||||
[heli_move@under_level]
|
||||
path_move = pri_a28_heli_under_level_2
|
||||
path_look = pri_a28_heli_way_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
engine_sound = false
|
||||
on_info = {+pri_b305_fifth_cam_end} heli_move@start
|
||||
on_info2 = {+pri_a28_cutscene_start} heli_move@land
|
||||
|
||||
[heli_move@start]
|
||||
path_move = pri_a28_heli_start_2
|
||||
path_look = pri_a28_heli_way_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
engine_sound = false
|
||||
on_info = {+pri_a28_update_task_cover_strelok} heli_move@wait
|
||||
|
||||
[heli_move@wait]
|
||||
path_move = pri_a28_heli_start_2
|
||||
path_look = pri_a28_heli_way_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_game_timer = 100 | heli_move@flyby
|
||||
|
||||
[heli_move@flyby]
|
||||
path_move = pri_a28_heli_way_2
|
||||
path_look = pri_a28_heli_cutscene_move_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_info = {-pri_a28_heli_near_base =npc_in_zone(pri_a28_heli_near_base)} %+pri_a28_heli_near_base%
|
||||
on_info2 = {=npc_in_zone(pri_a28_heli_landing_zone)} heli_move@land
|
||||
|
||||
[heli_move@land]
|
||||
path_move = pri_a28_heli_land_move_2
|
||||
path_look = pri_a28_heli_land_look_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
engine_sound = false
|
||||
on_info = {+pri_a28_helis_leave} heli_move@cutscene
|
||||
|
||||
[heli_move@cutscene]
|
||||
path_move = pri_a28_heli_cutscene_move_2
|
||||
path_look = pri_a28_heli_cutscene_move_2_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_info = {=npc_in_zone(pri_a28_helli_start_away_zone)} heli_move@fly_over %+pri_a28_heli_fly_over%
|
||||
;on_info2 = {+pri_a28_heli_fly_over} heli_move@fly_over
|
||||
|
||||
[heli_move@fly_over]
|
||||
path_move = pri_a28_heli_cutscene_move_2_2
|
||||
path_look = pri_a28_heli_cutscene_move_away_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_game_timer = 45 | heli_move@cutscene_away
|
||||
|
||||
[heli_move@cutscene_away]
|
||||
path_move = pri_a28_heli_cutscene_move_away_2
|
||||
max_velocity = 100
|
||||
combat_ignore_cond = true
|
||||
combat_ignore_keep_when_attacked = true
|
||||
on_info = {=npc_in_zone(pri_a28_scene_end_hellis_destroy_zone)} %=destroy_object%
|
||||
1162
gamedata/configs/scripts/evac/pri_a28_heli_mono.ltx
Normal file
1162
gamedata/configs/scripts/evac/pri_a28_heli_mono.ltx
Normal file
File diff suppressed because it is too large
Load diff
310
gamedata/configs/scripts/evac/pri_a28_school.ltx
Normal file
310
gamedata/configs/scripts/evac/pri_a28_school.ltx
Normal file
|
|
@ -0,0 +1,310 @@
|
|||
#include "pri_a28_general.ltx"
|
||||
|
||||
[logic@pri_a28_kovalski_school]
|
||||
active = camper@kovalski_school_1
|
||||
suitable = {-pri_a28_school_done =check_npc_name(kovalski)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@kovalski_school_1]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_info = {=npc_in_zone(pri_a28_sr_school_1) +pri_a28_medic_about_snork} camper@kovalski_school_1_wait
|
||||
|
||||
[camper@kovalski_school_1_wait]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_game_timer = 10 | %=play_sound(pri_a28_colonel_about_snork)%
|
||||
on_signal = sound_end | camper@kovalski_school_2 %+pri_a28_colonel_about_snork%
|
||||
on_info = {+pri_a28_colonel_about_snork} camper@kovalski_school_2
|
||||
|
||||
[camper@kovalski_school_2]:walker@kovalski_fight
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_2_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_signal = path_end | %+pri_a28_school_2_leave%
|
||||
on_info = {+pri_a28_school_2_leave} camper@kovalski_school_2_wait %=disable_memory_object%
|
||||
|
||||
[camper@kovalski_school_2_wait]:walker@kovalski_ignore
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_2_look
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_game_timer = 10 | {-pri_a28_colonel_fire_will} camper@kovalski_school_3 %+pri_a28_colonel_fire_will =play_sound(pri_a28_colonel_fire_will)%
|
||||
on_info = {+pri_a28_colonel_fire_will} camper@kovalski_school_3
|
||||
|
||||
[camper@kovalski_school_3]:walker@kovalski_fight
|
||||
path_walk = kovalski_3_walk
|
||||
path_look = kovalski_3_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_3
|
||||
on_signal = path_end | {-pri_a28_school_done} %+pri_a28_school_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_medic_school]
|
||||
active = camper@medic_school_1
|
||||
suitable = {-pri_a28_school_done =check_npc_name(base_medic)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@medic_school_1]:walker@ignore
|
||||
path_walk = medic_1_walk
|
||||
path_look = medic_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_signal = sound_end | %+pri_a28_medic_about_snork%
|
||||
on_info = {+pri_a28_school_1_leave} %=play_sound(pri_a28_medic_about_snork)%
|
||||
on_info2 = {+pri_a28_colonel_about_snork} camper@medic_school_2
|
||||
|
||||
[camper@medic_school_2]:walker@fight
|
||||
path_walk = medic_2_walk
|
||||
path_look = medic_2_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_signal = path_end | camper@medic_school_2_wait %+pri_a28_school_2_leave%
|
||||
on_info = {+pri_a28_school_2_leave} camper@medic_school_2_wait
|
||||
|
||||
[camper@medic_school_2_wait]:walker@fight
|
||||
path_walk = medic_2_walk
|
||||
path_look = medic_2_look
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_info = {+pri_a28_colonel_fire_will} camper@medic_school_3
|
||||
|
||||
[camper@medic_school_3]:walker@fight
|
||||
path_walk = medic_3_walk
|
||||
path_look = medic_3_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_3
|
||||
on_signal = path_end | {-pri_a28_school_done} %+pri_a28_school_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_strelok_school]
|
||||
active = camper@strelok_school_1
|
||||
suitable = {-pri_a28_school_done =check_npc_name(strelok)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@strelok_school_1]:walker@ignore
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_info = {+pri_a28_colonel_about_snork} camper@strelok_school_2
|
||||
|
||||
[camper@strelok_school_2]:walker@fight
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_2_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_signal = path_end | camper@strelok_school_2_wait %+pri_a28_school_2_leave%
|
||||
on_info = {+pri_a28_school_2_leave} camper@strelok_school_2_wait
|
||||
|
||||
[camper@strelok_school_2_wait]:walker@fight
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_2_look
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_info = {+pri_a28_colonel_fire_will} camper@strelok_school_3
|
||||
|
||||
[camper@strelok_school_3]:walker@fight
|
||||
path_walk = strelok_3_walk
|
||||
path_look = strelok_3_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_3
|
||||
on_signal = path_end | {-pri_a28_school_done} %+pri_a28_school_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_1_school]
|
||||
active = camper@military_1_school_1
|
||||
suitable = {-pri_a28_school_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski) !check_npc_name(base_medic)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_1_school_1]:walker@ignore
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_info = {+pri_a28_colonel_about_snork} camper@military_1_school_2
|
||||
|
||||
[camper@military_1_school_2]:walker@fight
|
||||
path_walk = military_1_2_walk
|
||||
path_look = military_1_2_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_signal = path_end | camper@military_1_school_2_wait %+pri_a28_school_2_leave%
|
||||
on_info = {+pri_a28_school_2_leave} camper@military_1_school_2_wait
|
||||
|
||||
[camper@military_1_school_2_wait]:walker@fight
|
||||
path_walk = military_1_2_walk
|
||||
path_look = military_1_2_look
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_info = {+pri_a28_colonel_fire_will} camper@military_1_school_3
|
||||
|
||||
[camper@military_1_school_3]:walker@fight
|
||||
path_walk = military_1_3_walk
|
||||
path_look = military_1_3_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_3
|
||||
on_signal = path_end | {-pri_a28_school_done} %+pri_a28_school_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_2_school]
|
||||
active = camper@military_2_school_1
|
||||
suitable = {-pri_a28_school_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski) !check_npc_name(base_medic)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_2_school_1]:walker@ignore
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_info = {+pri_a28_colonel_about_snork} camper@military_2_school_2
|
||||
|
||||
[camper@military_2_school_2]:walker@fight
|
||||
path_walk = military_2_2_walk
|
||||
path_look = military_2_2_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_signal = path_end | camper@military_2_school_2_wait %+pri_a28_school_2_leave%
|
||||
on_info = {+pri_a28_school_2_leave} camper@military_2_school_2_wait
|
||||
|
||||
[camper@military_2_school_2_wait]:walker@fight
|
||||
path_walk = military_2_2_walk
|
||||
path_look = military_2_2_look
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_info = {+pri_a28_colonel_fire_will} camper@military_2_school_3
|
||||
|
||||
[camper@military_2_school_3]:walker@fight
|
||||
path_walk = military_2_3_walk
|
||||
path_look = military_2_3_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_3
|
||||
on_signal = path_end | {-pri_a28_school_done} %+pri_a28_school_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_3_school]
|
||||
active = camper@military_3_school_1
|
||||
suitable = {-pri_a28_school_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski) !check_npc_name(base_medic)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_3_school_1]:walker@ignore
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_info = {+pri_a28_colonel_about_snork} camper@military_3_school_2
|
||||
|
||||
[camper@military_3_school_2]:walker@fight
|
||||
path_walk = military_3_2_walk
|
||||
path_look = military_3_2_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_signal = path_end | camper@military_3_school_2_wait %+pri_a28_school_2_leave%
|
||||
on_info = {+pri_a28_school_2_leave} camper@military_3_school_2_wait
|
||||
|
||||
[camper@military_3_school_2_wait]:walker@fight
|
||||
path_walk = military_3_2_walk
|
||||
path_look = military_3_2_look
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_info = {+pri_a28_colonel_fire_will} camper@military_3_school_3
|
||||
|
||||
[camper@military_3_school_3]:walker@fight
|
||||
path_walk = military_3_3_walk
|
||||
path_look = military_3_3_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_3
|
||||
on_signal = path_end | {-pri_a28_school_done} %+pri_a28_school_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_4_school]
|
||||
active = camper@military_4_school_1
|
||||
suitable = {-pri_a28_school_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski) !check_npc_name(base_medic)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_4_school_1]:walker@ignore
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_info = {+pri_a28_colonel_about_snork} camper@military_4_school_2
|
||||
|
||||
[camper@military_4_school_2]:walker@fight
|
||||
path_walk = military_4_2_walk
|
||||
path_look = military_4_2_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_signal = path_end | camper@military_4_school_2_wait %+pri_a28_school_2_leave%
|
||||
on_info = {+pri_a28_school_2_leave} camper@military_4_school_2_wait
|
||||
|
||||
[camper@military_4_school_2_wait]:walker@fight
|
||||
path_walk = military_4_2_walk
|
||||
path_look = military_4_2_look
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_info = {+pri_a28_colonel_fire_will} camper@military_4_school_3
|
||||
|
||||
[camper@military_4_school_3]:walker@fight
|
||||
path_walk = military_4_3_walk
|
||||
path_look = military_4_3_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_3
|
||||
on_signal = path_end | {-pri_a28_school_done} %+pri_a28_school_done%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_5_school]
|
||||
active = camper@military_5_school_1
|
||||
suitable = {-pri_a28_school_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(kovalski) !check_npc_name(base_medic)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_5_school_1]:walker@ignore
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
out_restr = pri_a28_sr_school_1
|
||||
on_info = {+pri_a28_colonel_about_snork} camper@military_5_school_2
|
||||
|
||||
[camper@military_5_school_2]:walker@fight
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_signal = path_end | camper@military_5_school_2_wait %+pri_a28_school_2_leave%
|
||||
on_info = {+pri_a28_school_2_leave} camper@military_5_school_2_wait
|
||||
|
||||
[camper@military_5_school_2_wait]:walker@fight
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
out_restr = pri_a28_sr_school_2
|
||||
on_info = {+pri_a28_colonel_fire_will} camper@military_5_school_3
|
||||
|
||||
[camper@military_5_school_3]:walker@fight
|
||||
path_walk = military_5_3_walk
|
||||
path_look = military_5_3_look
|
||||
;def_state_moving = assault_fire
|
||||
out_restr = pri_a28_sr_school_3
|
||||
on_signal = path_end | {-pri_a28_school_done} %+pri_a28_school_done%
|
||||
269
gamedata/configs/scripts/evac/pri_a28_school_snork.ltx
Normal file
269
gamedata/configs/scripts/evac/pri_a28_school_snork.ltx
Normal file
|
|
@ -0,0 +1,269 @@
|
|||
[logic@pri_a28_snork_1_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_1)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_1_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_1_school_wait]
|
||||
path_home = snork_1_home
|
||||
out_restr = pri_a28_sr_school_3
|
||||
home_min_radius = 5
|
||||
home_max_radius = 20
|
||||
aggressive = false
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_arch_done} mob_walker@pri_a28_snork_1_school_walk
|
||||
|
||||
[mob_walker@pri_a28_snork_1_school_walk]
|
||||
path_walk = snork_1_walk
|
||||
path_look = snork_1_jump
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_1_school_jump
|
||||
on_game_timer = 30 | mob_jump@pri_a28_snork_1_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_1_school_jump]
|
||||
path_jump = snork_1_jump
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 1.1
|
||||
on_signal = jumped | mob_home@pri_a28_snork_1_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_1_school_home]
|
||||
path_home = snork_1_attack
|
||||
aggressive = true
|
||||
|
||||
[hit@pri_a28_snork_hit]
|
||||
on_info = {~33 +pri_a28_colonel_about_snork} %=kill_npc%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_snork_2_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_1)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_2_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_2_school_wait]:mob_home@pri_a28_snork_1_school_wait
|
||||
on_info = {+pri_a28_arch_done} mob_walker@pri_a28_snork_2_school_walk
|
||||
|
||||
[mob_walker@pri_a28_snork_2_school_walk]
|
||||
path_walk = snork_2_walk
|
||||
path_look = snork_2_jump
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_2_school_jump
|
||||
on_game_timer = 40 | mob_jump@pri_a28_snork_2_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_2_school_jump]
|
||||
path_jump = snork_2_jump
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 1
|
||||
on_signal = jumped | mob_home@pri_a28_snork_2_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_2_school_home]:mob_home@pri_a28_snork_1_school_home
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_snork_3_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_1)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_3_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_3_school_wait]:mob_home@pri_a28_snork_1_school_wait
|
||||
on_info = {+pri_a28_arch_done} mob_walker@pri_a28_snork_3_school_walk
|
||||
|
||||
[mob_walker@pri_a28_snork_3_school_walk]
|
||||
path_walk = snork_3_walk
|
||||
path_look = snork_3_jump
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_3_school_jump
|
||||
on_game_timer = 50 | mob_jump@pri_a28_snork_3_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_3_school_jump]
|
||||
path_jump = snork_3_jump
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 1.2
|
||||
on_signal = jumped | mob_home@pri_a28_snork_3_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_3_school_home]:mob_home@pri_a28_snork_1_school_home
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_snork_4_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_1)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_4_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_4_school_wait]:mob_home@pri_a28_snork_1_school_wait
|
||||
on_info = {+pri_a28_arch_done} mob_walker@pri_a28_snork_4_school_walk
|
||||
|
||||
[mob_walker@pri_a28_snork_4_school_walk]
|
||||
path_walk = snork_4_walk
|
||||
path_look = snork_4_jump
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_4_school_jump
|
||||
on_game_timer = 35 | mob_jump@pri_a28_snork_4_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_4_school_jump]
|
||||
path_jump = snork_4_jump
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 0.95
|
||||
on_signal = jumped | mob_home@pri_a28_snork_4_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_4_school_home]:mob_home@pri_a28_snork_1_school_home
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_snork_5_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_2)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_5_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_5_school_wait]
|
||||
path_home = snork_2_home
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
home_min_radius = 2
|
||||
home_max_radius = 6
|
||||
aggressive = false
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_school_2_leave} mob_walker@pri_a28_snork_5_school_walk
|
||||
on_info2 = {!npc_in_zone(pri_a28_school_in_restrictor)} %=teleport_npc(pri_a28_school_snork_2_home)%
|
||||
|
||||
[mob_walker@pri_a28_snork_5_school_walk]
|
||||
path_walk = snork_5_walk
|
||||
path_look = snork_5_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_5_school_jump
|
||||
on_game_timer = 30 | mob_jump@pri_a28_snork_5_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_5_school_jump]
|
||||
path_jump = snork_5_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 1
|
||||
on_signal = jumped | mob_home@pri_a28_snork_5_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_5_school_home]
|
||||
path_home = snork_2_attack
|
||||
aggressive = true
|
||||
on_game_timer = 25 | {=npc_in_zone(pri_a28_school_in_restrictor)} mob_jump@pri_a28_snork_5_school_jump
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_snork_6_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_2)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_6_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_6_school_wait]:mob_home@pri_a28_snork_5_school_wait
|
||||
on_info = {+pri_a28_school_2_leave} mob_walker@pri_a28_snork_6_school_walk
|
||||
|
||||
[mob_walker@pri_a28_snork_6_school_walk]
|
||||
path_walk = snork_6_walk
|
||||
path_look = snork_6_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_6_school_jump
|
||||
on_game_timer = 40 | mob_jump@pri_a28_snork_6_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_6_school_jump]
|
||||
path_jump = snork_6_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 1.1
|
||||
on_signal = jumped | mob_home@pri_a28_snork_6_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_6_school_home]:mob_home@pri_a28_snork_5_school_home
|
||||
on_game_timer = 25 | {=npc_in_zone(pri_a28_school_in_restrictor)} mob_jump@pri_a28_snork_6_school_jump
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_snork_7_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_2)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_7_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_7_school_wait]:mob_home@pri_a28_snork_5_school_wait
|
||||
on_info = {+pri_a28_school_2_leave} mob_walker@pri_a28_snork_7_school_walk
|
||||
|
||||
[mob_walker@pri_a28_snork_7_school_walk]
|
||||
path_walk = snork_7_walk
|
||||
path_look = snork_7_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_7_school_jump
|
||||
on_game_timer = 50 | mob_jump@pri_a28_snork_7_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_7_school_jump]
|
||||
path_jump = snork_7_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 1.1
|
||||
on_signal = jumped | mob_home@pri_a28_snork_7_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_7_school_home]:mob_home@pri_a28_snork_5_school_home
|
||||
on_game_timer = 25 | {=npc_in_zone(pri_a28_school_in_restrictor)} mob_jump@pri_a28_snork_7_school_jump
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_snork_8_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_2)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_8_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_8_school_wait]:mob_home@pri_a28_snork_5_school_wait
|
||||
on_info = {+pri_a28_school_2_leave} mob_walker@pri_a28_snork_8_school_walk
|
||||
|
||||
[mob_walker@pri_a28_snork_8_school_walk]
|
||||
path_walk = snork_8_walk
|
||||
path_look = snork_8_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_8_school_jump
|
||||
on_game_timer = 55 | mob_jump@pri_a28_snork_8_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_8_school_jump]
|
||||
path_jump = snork_8_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 1
|
||||
on_signal = jumped | mob_home@pri_a28_snork_8_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_8_school_home]:mob_home@pri_a28_snork_5_school_home
|
||||
on_game_timer = 25 | {=npc_in_zone(pri_a28_school_in_restrictor)} mob_jump@pri_a28_snork_8_school_jump
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_snork_9_school]
|
||||
suitable = {+pri_b305_fifth_cam_end =target_squad_name(pri_a28_school_snorks_2)} true
|
||||
prior = 100
|
||||
active = mob_home@pri_a28_snork_9_school_wait
|
||||
monster_job = true
|
||||
on_hit = hit@pri_a28_snork_hit
|
||||
|
||||
[mob_home@pri_a28_snork_9_school_wait]:mob_home@pri_a28_snork_5_school_wait
|
||||
on_info = {+pri_a28_school_2_leave} mob_walker@pri_a28_snork_9_school_walk
|
||||
|
||||
[mob_walker@pri_a28_snork_9_school_walk]
|
||||
path_walk = snork_9_walk
|
||||
path_look = snork_9_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
on_signal = path_end | mob_jump@pri_a28_snork_9_school_jump
|
||||
on_game_timer = 45 | mob_jump@pri_a28_snork_9_school_jump
|
||||
|
||||
[mob_jump@pri_a28_snork_9_school_jump]
|
||||
path_jump = snork_9_jump
|
||||
out_restr = pri_a28_school_in_restrictor
|
||||
offset = 0,0,0
|
||||
ph_jump_factor = 0.85
|
||||
on_signal = jumped | mob_home@pri_a28_snork_9_school_home
|
||||
|
||||
[mob_home@pri_a28_snork_9_school_home]:mob_home@pri_a28_snork_5_school_home
|
||||
on_game_timer = 25 | {=npc_in_zone(pri_a28_school_in_restrictor)} mob_jump@pri_a28_snork_9_school_jump
|
||||
428
gamedata/configs/scripts/evac/pri_a28_shop.ltx
Normal file
428
gamedata/configs/scripts/evac/pri_a28_shop.ltx
Normal file
|
|
@ -0,0 +1,428 @@
|
|||
#include "pri_a28_general.ltx"
|
||||
|
||||
[logic@pri_a28_kovalski_shop]
|
||||
active = camper@kovalski_shop_1
|
||||
suitable = {-pri_a28_shop_done =check_npc_name(kovalski)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@kovalski_shop_1]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_1)} smartcover@kovalski_shop_1
|
||||
|
||||
[smartcover@kovalski_shop_1]:walker@kovalski_ignore
|
||||
cover_name = pri_a28_shop_cover_4
|
||||
use_in_combat = true
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_info = {=in_dest_smart_cover +pri_a28_army_zombied_in_building} smartcover@kovalski_shop_1_wait
|
||||
|
||||
[smartcover@kovalski_shop_1_wait]:walker@kovalski_fight
|
||||
cover_name = pri_a28_shop_cover_4
|
||||
use_in_combat = true
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 40 | %=play_sound(pri_a28_colonel_go_left)%
|
||||
on_signal = sound_end | %+pri_a28_colonel_go_left%
|
||||
on_info = {+pri_a28_colonel_go_left} smartcover@kovalski_shop_1_fight
|
||||
|
||||
;obsolete
|
||||
[walker@kovalski_shop_1_wait]:walker@kovalski_fight
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 40 | %=play_sound(pri_a28_colonel_go_left)%
|
||||
on_signal = sound_end | %+pri_a28_colonel_go_left%
|
||||
on_info = {+pri_a28_colonel_go_left} smartcover@kovalski_shop_1_fight
|
||||
|
||||
[smartcover@kovalski_shop_1_fight]:walker@kovalski_fight
|
||||
cover_name = pri_a28_shop_cover_4
|
||||
use_in_combat = true
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 210 | {-pri_a28_shop_1_leave} camper@kovalski_shop_2_go %+pri_a28_shop_1_leave%
|
||||
on_info = {+pri_a28_shop_1_leave} camper@kovalski_shop_2_go
|
||||
on_info2 = {=in_dest_smart_cover !has_enemy_in_current_loopholes_fov} walker@kovalski_shop_1_fight
|
||||
|
||||
[walker@kovalski_shop_1_fight]:walker@kovalski_fight
|
||||
path_walk = kovalski_1_walk
|
||||
path_look = kovalski_1_look
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 210 | {-pri_a28_shop_1_leave} %+pri_a28_shop_1_leave%
|
||||
on_info = {+pri_a28_shop_1_leave} camper@kovalski_shop_2_go %=disable_memory_object%
|
||||
|
||||
[camper@kovalski_shop_2_go]:walker@kovalski_ignore
|
||||
path_walk = kovalski_1_1_walk
|
||||
path_look = kovalski_2_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = path_end | camper@kovalski_shop_2
|
||||
|
||||
[camper@kovalski_shop_2]:walker@kovalski_ignore
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_2_look
|
||||
out_restr = pri_a28_sr_shop_2
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_2)} walker@kovalski_shop_2_fight
|
||||
|
||||
[walker@kovalski_shop_2_fight]:walker@kovalski_fight
|
||||
path_walk = kovalski_2_walk
|
||||
path_look = kovalski_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_3_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = sound_end | %+pri_a28_shop_done%
|
||||
on_game_timer = 200 | {-pri_a28_shop_3_leave} %+pri_a28_shop_3_leave%
|
||||
on_info = {+pri_a28_shop_3_leave} %=play_sound(pri_a28_colonel_zombied_attack)%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_medic_shop]
|
||||
active = smartcover@medic_shop_1
|
||||
suitable = {-pri_a28_shop_done =check_npc_name(base_medic)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[smartcover@medic_shop_1]:walker@ignore
|
||||
cover_name = pri_a28_shop_cover_1
|
||||
use_in_combat = true
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
derf_state_moving = rush
|
||||
on_signal = sound_end | %+pri_a28_army_zombied_in_building%
|
||||
on_info = {=in_dest_smart_cover} %=play_sound(pri_a28_army_zombied_in_building)%
|
||||
on_info2 = {+pri_a28_army_zombied_in_building} smartcover@medic_shop_1_fight
|
||||
|
||||
;obsolete
|
||||
[camper@medic_shop_1]:walker@ignore
|
||||
path_walk = medic_1_walk
|
||||
path_look = medic_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_signal = sound_end | %+pri_a28_army_zombied_in_building%
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_1_small)} %=play_sound(pri_a28_army_zombied_in_building)%
|
||||
on_info2 = {+pri_a28_army_zombied_in_building} walker@medic_shop_1_fight
|
||||
|
||||
[smartcover@medic_shop_1_fight]:walker@fight
|
||||
cover_name = pri_a28_shop_cover_1
|
||||
use_in_combat = true
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 250 | {-pri_a28_shop_1_leave} camper@medic_shop_2_go %+pri_a28_shop_1_leave%
|
||||
on_info = {+pri_a28_shop_1_leave} camper@medic_shop_2_go
|
||||
on_info2 = {=in_dest_smart_cover !has_enemy_in_current_loopholes_fov} walker@medic_shop_1_fight
|
||||
|
||||
[walker@medic_shop_1_fight]:walker@fight
|
||||
path_walk = medic_1_walk
|
||||
path_look = medic_1_look
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 250 | {-pri_a28_shop_1_leave} %+pri_a28_shop_1_leave%
|
||||
on_info = {+pri_a28_shop_1_leave} camper@medic_shop_2_go %=disable_memory_object%
|
||||
|
||||
[camper@medic_shop_2_go]:walker@ignore
|
||||
path_walk = medic_1_1_walk
|
||||
path_look = medic_2_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = path_end | camper@medic_shop_2
|
||||
|
||||
[camper@medic_shop_2]:walker@ignore
|
||||
path_walk = medic_2_walk
|
||||
path_look = medic_2_look
|
||||
out_restr = pri_a28_sr_shop_2
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_2)} walker@medic_shop_2_fight
|
||||
|
||||
[walker@medic_shop_2_fight]:walker@fight
|
||||
path_walk = medic_2_walk
|
||||
path_look = medic_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_3_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_game_timer = 200 | {-pri_a28_shop_3_leave} %+pri_a28_shop_3_leave%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_strelok_shop]
|
||||
active = smartcover@strelok_shop_1
|
||||
suitable = {-pri_a28_shop_done =check_npc_name(strelok)} true
|
||||
prior = 200
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[smartcover@strelok_shop_1]:walker@ignore
|
||||
cover_name = pri_a28_shop_cover_3
|
||||
use_in_combat = true
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_info = {+pri_a28_army_zombied_in_building} smartcover@strelok_shop_1_fight
|
||||
|
||||
;obsolete
|
||||
[camper@strelok_shop_1]:walker@ignore
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_info = {+pri_a28_army_zombied_in_building} walker@strelok_shop_1_fight
|
||||
|
||||
[smartcover@strelok_shop_1_fight]:walker@fight
|
||||
cover_name = pri_a28_shop_cover_3
|
||||
use_in_combat = true
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 250 | {-pri_a28_shop_1_leave} camper@strelok_shop_2_go %+pri_a28_shop_1_leave%
|
||||
on_info = {+pri_a28_shop_1_leave} camper@strelok_shop_2_go
|
||||
on_info2 = {=in_dest_smart_cover !has_enemy_in_current_loopholes_fov} walker@strelok_shop_1_fight
|
||||
|
||||
[walker@strelok_shop_1_fight]:walker@fight
|
||||
path_walk = strelok_1_walk
|
||||
path_look = strelok_1_look
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 250 | {-pri_a28_shop_1_leave} %+pri_a28_shop_1_leave%
|
||||
on_info = {+pri_a28_shop_1_leave} camper@strelok_shop_2_go %=disable_memory_object%
|
||||
|
||||
[camper@strelok_shop_2_go]:walker@ignore
|
||||
path_walk = strelok_1_1_walk
|
||||
path_look = strelok_2_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = path_end | camper@strelok_shop_2
|
||||
|
||||
[camper@strelok_shop_2]:walker@ignore
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_2_look
|
||||
out_restr = pri_a28_sr_shop_2
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_2)} walker@strelok_shop_2_fight
|
||||
|
||||
[walker@strelok_shop_2_fight]:walker@fight
|
||||
path_walk = strelok_2_walk
|
||||
path_look = strelok_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_3_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_game_timer = 200 | {-pri_a28_shop_3_leave} %+pri_a28_shop_3_leave%
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_1_shop]
|
||||
active = walker@military_1_shop_1
|
||||
suitable = {-pri_a28_shop_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 110
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_1_shop_1]:walker@fight
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
out_restr = pri_a28_sr_shop_1
|
||||
combat_ignore_cond = {=actor_enemy} false, {=check_enemy_smart(pri_a28_shop)} true, false
|
||||
on_info = {+pri_a28_colonel_go_left} camper@military_1_shop_1_go %=disable_memory_object%
|
||||
|
||||
[camper@military_1_shop_1_go]:walker@ignore
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_2_small)} walker@military_1_shop_1_fight
|
||||
on_info2 = {+pri_a28_shop_2_leave} camper@military_1_shop_2
|
||||
|
||||
[walker@military_1_shop_1_fight]:walker@fight
|
||||
path_walk = military_1_1_walk
|
||||
path_look = military_1_1_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
on_game_timer = 200 | {-pri_a28_shop_2_leave} %+pri_a28_shop_2_leave%
|
||||
on_info = {+pri_a28_shop_2_leave} camper@military_1_shop_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_1_shop_2]:walker@ignore
|
||||
path_walk = military_1_2_walk
|
||||
path_look = military_1_2_look
|
||||
out_restr = pri_a28_sr_shop_3_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = path_end | camper@military_1_shop_3
|
||||
|
||||
[camper@military_1_shop_3]:walker@fight
|
||||
path_walk = military_1_3_walk
|
||||
path_look = military_1_3_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_2_shop]
|
||||
active = walker@military_2_shop_1
|
||||
suitable = {-pri_a28_shop_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_2_shop_1]:walker@fight
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
out_restr = pri_a28_sr_shop_1
|
||||
combat_ignore_cond = {=actor_enemy} false, {=check_enemy_smart(pri_a28_shop)} true, false
|
||||
on_info2 = {+pri_a28_colonel_go_left} camper@military_2_shop_1_go %=disable_memory_object%
|
||||
|
||||
[camper@military_2_shop_1_go]:walker@ignore
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_2_small)} walker@military_2_shop_1_fight
|
||||
on_info2 = {+pri_a28_shop_2_leave} camper@military_2_shop_2
|
||||
|
||||
[walker@military_2_shop_1_fight]:walker@fight
|
||||
path_walk = military_2_1_walk
|
||||
path_look = military_2_1_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
on_game_timer = 200 | {-pri_a28_shop_2_leave} %+pri_a28_shop_2_leave%
|
||||
on_info = {+pri_a28_shop_2_leave} camper@military_2_shop_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_2_shop_2]:walker@ignore
|
||||
path_walk = military_2_2_walk
|
||||
path_look = military_2_2_look
|
||||
out_restr = pri_a28_sr_shop_3_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = path_end | camper@military_2_shop_3
|
||||
|
||||
[camper@military_2_shop_3]:walker@fight
|
||||
path_walk = military_2_3_walk
|
||||
path_look = military_2_3_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_3_shop]
|
||||
active = walker@military_3_shop_1
|
||||
suitable = {-pri_a28_shop_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 100
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_3_shop_1]:walker@fight
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
out_restr = pri_a28_sr_shop_1
|
||||
combat_ignore_cond = {=actor_enemy} false, {=check_enemy_smart(pri_a28_shop)} true, false
|
||||
on_info2 = {+pri_a28_colonel_go_left} camper@military_3_shop_1_go %=disable_memory_object%
|
||||
|
||||
[camper@military_3_shop_1_go]:walker@ignore
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_2_small)} walker@military_3_shop_1_fight
|
||||
on_info2 = {+pri_a28_shop_2_leave} camper@military_3_shop_2
|
||||
|
||||
[walker@military_3_shop_1_fight]:walker@fight
|
||||
path_walk = military_3_1_walk
|
||||
path_look = military_3_1_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
on_game_timer = 200 | {-pri_a28_shop_2_leave} %+pri_a28_shop_2_leave%
|
||||
on_info = {+pri_a28_shop_2_leave} camper@military_3_shop_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_3_shop_2]:walker@ignore
|
||||
path_walk = military_3_2_walk
|
||||
path_look = military_3_2_look
|
||||
out_restr = pri_a28_sr_shop_3_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = path_end | camper@military_3_shop_3
|
||||
|
||||
[camper@military_3_shop_3]:walker@fight
|
||||
path_walk = military_3_3_walk
|
||||
path_look = military_3_3_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_4_shop]
|
||||
active = walker@military_4_shop_1
|
||||
suitable = {-pri_a28_shop_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 90
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[walker@military_4_shop_1]:walker@fight
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
out_restr = pri_a28_sr_shop_1
|
||||
combat_ignore_cond = {=actor_enemy} false, {=check_enemy_smart(pri_a28_shop)} true, false
|
||||
on_info2 = {+pri_a28_colonel_go_left} camper@military_4_shop_1_go %=disable_memory_object%
|
||||
|
||||
[camper@military_4_shop_1_go]:walker@ignore
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_2_small)} walker@military_4_shop_1_fight
|
||||
on_info2 = {+pri_a28_shop_2_leave} camper@military_4_shop_2
|
||||
|
||||
[walker@military_4_shop_1_fight]:walker@fight
|
||||
path_walk = military_4_1_walk
|
||||
path_look = military_4_1_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
on_game_timer = 200 | {-pri_a28_shop_2_leave} %+pri_a28_shop_2_leave%
|
||||
on_info = {+pri_a28_shop_2_leave} camper@military_4_shop_2 %=disable_memory_object%
|
||||
|
||||
[camper@military_4_shop_2]:walker@ignore
|
||||
path_walk = military_4_2_walk
|
||||
path_look = military_4_2_look
|
||||
out_restr = pri_a28_sr_shop_3_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = path_end | camper@military_4_shop_3
|
||||
|
||||
[camper@military_4_shop_3]:walker@fight
|
||||
path_walk = military_4_3_walk
|
||||
path_look = military_4_3_look
|
||||
out_restr = pri_a28_sr_arch_1
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_military_5_shop]
|
||||
active = camper@military_5_shop_1
|
||||
suitable = {-pri_a28_shop_done =target_squad_name(pri_a16_military_squad) !check_npc_name(strelok) !check_npc_name(base_medic) !check_npc_name(kovalski)} true
|
||||
prior = 90
|
||||
on_hit = hit@def
|
||||
on_death = death@def
|
||||
post_combat_time = 0,0
|
||||
|
||||
[camper@military_5_shop_1]:walker@ignore
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_info = {+pri_a28_army_zombied_in_building} walker@military_5_shop_1_fight
|
||||
|
||||
[walker@military_5_shop_1_fight]:walker@fight
|
||||
path_walk = military_5_1_walk
|
||||
path_look = military_5_1_look
|
||||
out_restr = pri_a28_sr_shop_1_small
|
||||
on_game_timer = 250 | {-pri_a28_shop_1_leave} %+pri_a28_shop_1_leave%
|
||||
on_info = {+pri_a28_shop_1_leave} camper@military_5_shop_2_go %=disable_memory_object%
|
||||
|
||||
[camper@military_5_shop_2_go]:walker@ignore
|
||||
path_walk = military_5_1_1_walk
|
||||
path_look = military_5_2_look
|
||||
out_restr = pri_a28_sr_shop_2_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_signal = path_end | camper@military_5_shop_2
|
||||
|
||||
[camper@military_5_shop_2]:walker@ignore
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
out_restr = pri_a28_sr_shop_2
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_info = {=npc_in_zone(pri_a28_sr_shop_2)} walker@military_5_shop_2_fight
|
||||
|
||||
[walker@military_5_shop_2_fight]:walker@fight
|
||||
path_walk = military_5_2_walk
|
||||
path_look = military_5_2_look
|
||||
def_state_standing = hide_na
|
||||
out_restr = pri_a28_sr_shop_3_small
|
||||
in_restr = pri_a28_sr_shop_in
|
||||
on_game_timer = 200 | {-pri_a28_shop_3_leave} %+pri_a28_shop_3_leave%
|
||||
224
gamedata/configs/scripts/evac/pri_a28_shop_zombied.ltx
Normal file
224
gamedata/configs/scripts/evac/pri_a28_shop_zombied.ltx
Normal file
|
|
@ -0,0 +1,224 @@
|
|||
[logic@pri_a28_zombied_1_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_1_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_2_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_2_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_3_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_3_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_4_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_4_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_5_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_5_shop_walk
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_shop_walk]
|
||||
path_walk = zombied_1_walk
|
||||
on_info = walker@pri_a28_zombied_1_shop_wait %=teleport_npc(pri_a28_shop_zombied_1_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_2_shop_walk]
|
||||
path_walk = zombied_2_walk
|
||||
on_info = walker@pri_a28_zombied_2_shop_wait %=teleport_npc(pri_a28_shop_zombied_2_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_3_shop_walk]
|
||||
path_walk = zombied_3_walk
|
||||
on_info = walker@pri_a28_zombied_3_shop_wait %=teleport_npc(pri_a28_shop_zombied_3_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_4_shop_walk]
|
||||
path_walk = zombied_4_walk
|
||||
on_info = walker@pri_a28_zombied_4_shop_wait %=teleport_npc(pri_a28_shop_zombied_4_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_5_shop_walk]
|
||||
path_walk = zombied_5_walk
|
||||
on_info = walker@pri_a28_zombied_5_shop_wait %=teleport_npc(pri_a28_shop_zombied_5_walk)%
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_shop_wait]
|
||||
path_walk = zombied_1_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_in_building} walker@pri_a28_zombied_1_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_1_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_2_shop_wait]
|
||||
path_walk = zombied_2_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_in_building} walker@pri_a28_zombied_1_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_1_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_3_shop_wait]
|
||||
path_walk = zombied_3_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_in_building} walker@pri_a28_zombied_2_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_4_shop_wait]
|
||||
path_walk = zombied_4_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_in_building} walker@pri_a28_zombied_2_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_5_shop_wait]
|
||||
path_walk = zombied_5_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_army_zombied_in_building} walker@pri_a28_zombied_3_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_3_shop_attack
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_1_shop_attack]
|
||||
path_walk = zombied_1_attack
|
||||
on_signal = path_end | %+pri_a28_shop_zombied_done%
|
||||
|
||||
[walker@pri_a28_zombied_2_shop_attack]
|
||||
path_walk = zombied_2_attack
|
||||
on_signal = path_end | %+pri_a28_shop_zombied_done%
|
||||
|
||||
[walker@pri_a28_zombied_3_shop_attack]
|
||||
path_walk = zombied_3_attack
|
||||
on_signal = path_end | %+pri_a28_shop_zombied_done%
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_zombied_6_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_6_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_7_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_7_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_8_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_8_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_9_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied_2) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_9_shop_walk
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_6_shop_walk]
|
||||
path_walk = zombied_6_walk
|
||||
on_info = walker@pri_a28_zombied_6_shop_wait %=teleport_npc(pri_a28_shop_zombied_6_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_7_shop_walk]
|
||||
path_walk = zombied_7_walk
|
||||
on_info = walker@pri_a28_zombied_7_shop_wait %=teleport_npc(pri_a28_shop_zombied_7_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_8_shop_walk]
|
||||
path_walk = zombied_8_walk
|
||||
on_info = walker@pri_a28_zombied_8_shop_wait %=teleport_npc(pri_a28_shop_zombied_8_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_9_shop_walk]
|
||||
path_walk = zombied_9_walk
|
||||
on_info = walker@pri_a28_zombied_9_shop_wait %=teleport_npc(pri_a28_shop_zombied_9_walk)%
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_6_shop_wait]
|
||||
path_walk = zombied_6_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_shop_1_leave} walker@pri_a28_zombied_4_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_4_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_7_shop_wait]
|
||||
path_walk = zombied_7_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_shop_1_leave} walker@pri_a28_zombied_5_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_5_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_8_shop_wait]
|
||||
path_walk = zombied_8_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_shop_1_leave} walker@pri_a28_zombied_4_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_4_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_9_shop_wait]
|
||||
path_walk = zombied_9_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_shop_1_leave} walker@pri_a28_zombied_5_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_5_shop_attack
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_4_shop_attack]
|
||||
path_walk = zombied_4_attack
|
||||
on_signal = path_end | %+pri_a28_shop_zombied_done%
|
||||
|
||||
[walker@pri_a28_zombied_5_shop_attack]
|
||||
path_walk = zombied_5_attack
|
||||
on_signal = path_end | %+pri_a28_shop_zombied_done%
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[logic@pri_a28_zombied_10_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied_3) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_10_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_11_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied_3) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_11_shop_walk
|
||||
|
||||
[logic@pri_a28_zombied_12_shop]
|
||||
suitable = {=target_squad_name(pri_a28_shop_zombied_3) +pri_b305_fifth_cam_end} true
|
||||
prior = 200
|
||||
active = walker@pri_a28_zombied_12_shop_walk
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_10_shop_walk]
|
||||
path_walk = zombied_10_walk
|
||||
on_info = walker@pri_a28_zombied_10_shop_wait %=teleport_npc(pri_a28_shop_zombied_10_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_11_shop_walk]
|
||||
path_walk = zombied_11_walk
|
||||
on_info = walker@pri_a28_zombied_11_shop_wait %=teleport_npc(pri_a28_shop_zombied_11_walk)%
|
||||
|
||||
[walker@pri_a28_zombied_12_shop_walk]
|
||||
path_walk = zombied_12_walk
|
||||
on_info = walker@pri_a28_zombied_12_shop_wait %=teleport_npc(pri_a28_shop_zombied_12_walk)%
|
||||
|
||||
|
||||
|
||||
[walker@pri_a28_zombied_10_shop_wait]
|
||||
path_walk = zombied_10_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_shop_1_leave} walker@pri_a28_zombied_1_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_1_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_11_shop_wait]
|
||||
path_walk = zombied_11_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_shop_1_leave} walker@pri_a28_zombied_2_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_2_shop_attack
|
||||
|
||||
[walker@pri_a28_zombied_12_shop_wait]
|
||||
path_walk = zombied_12_walk
|
||||
combat_ignore_cond = true
|
||||
on_info = {+pri_a28_shop_1_leave} walker@pri_a28_zombied_3_shop_attack
|
||||
on_info2 = {=dist_to_actor_le(13)} walker@pri_a28_zombied_3_shop_attack
|
||||
149
gamedata/configs/scripts/evac/pri_a28_sr_control.ltx
Normal file
149
gamedata/configs/scripts/evac/pri_a28_sr_control.ltx
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
[logic]
|
||||
active = sr_idle@give_task
|
||||
|
||||
[sr_idle@give_task]
|
||||
on_info = {+pri_b305_fifth_cam_end} sr_idle@start_surge %=give_task(pri_a28_evacuation) =set_counter(pri_a28_friendly_hit:0) =set_counter(pri_a28_heli_mono_cnt:12)%
|
||||
on_info2 = {+pri_a28_evacuation_start -pri_b305_fifth_cam_end} sr_idle@clear_smart %+pri_b305_fifth_cam_end +pri_a25_rfi_source_eliminated +pri_a16_wait_for_stalkers =set_counter(pri_a28_friendly_hit:0) =set_counter(pri_a28_heli_mono_cnt:12)%
|
||||
|
||||
[sr_idle@start_surge]
|
||||
on_info = {!surge_started} sr_idle@stop_surge %=set_surge_mess_and_task(empty:empty) =start_surge%, sr_idle@stop_surge %=set_surge_mess_and_task(empty:empty)%
|
||||
|
||||
[sr_idle@stop_surge]
|
||||
on_info = {=surge_complete} sr_idle@base_zombied_add %+pri_a28_surge_end =clear_smart_terrain(pri_a15)%
|
||||
on_info2 = {+pri_a28_update_task_cover_strelok} %=stop_surge%
|
||||
|
||||
|
||||
|
||||
;skip of previous scenes
|
||||
[sr_idle@clear_smart]
|
||||
on_info = sr_idle@add_squad %=clear_smart_terrain(pri_a16)%
|
||||
|
||||
[sr_idle@add_squad]
|
||||
on_info = sr_idle@add_strong_parts %=create_squad(pri_a16_military_squad_strong:pri_a16) +pri_a28_strelok_alive +pri_a28_tarasov_alive +pri_a28_valentyr_alive +pri_a28_podorojniy_alive +pri_a28_sokolov_alive%
|
||||
|
||||
[sr_idle@add_strong_parts]
|
||||
on_info = {+pri_a28_tarasov_alive} %-pri_a28_tarasov_alive =create_squad_member(pri_a17_military_captain_tarasov_strong:pri_a16_military_squad)%
|
||||
on_info2 = {+pri_a28_valentyr_alive} %-pri_a28_valentyr_alive =create_squad_member(pri_a17_military_prapor_valentyr_strong:pri_a16_military_squad)%
|
||||
on_info3 = {+pri_a28_podorojniy_alive} %-pri_a28_podorojniy_alive =create_squad_member(pri_a17_military_lieutenant_podorojniy_strong:pri_a16_military_squad)%
|
||||
on_info4 = {+pri_a28_sokolov_alive} %-pri_a28_sokolov_alive =create_squad_member(pri_a15_sokolov_sci_head_strong:pri_a16_military_squad)%
|
||||
on_info5 = {+pri_a28_strelok_alive} %-pri_a28_strelok_alive =create_squad_member(pri_b305_strelok_strong:pri_a16_military_squad)%
|
||||
on_info6 = {=is_alive(pri_b305_strelok)} sr_idle@give_task
|
||||
|
||||
|
||||
|
||||
;main theme again
|
||||
[sr_idle@base_zombied_add]
|
||||
on_info = sr_idle@school_snork_spawn_start %=create_squad(pri_a28_base_zombied:pri_a28_base) =create_squad(pri_a28_base_zombied_2:pri_a28_base:pri_a16) =create_squad(pri_a28_shop_zombied:pri_a28_shop) =create_squad(pri_a28_shop_zombied_2:pri_a28_shop) =create_squad(pri_a28_shop_zombied_3:pri_a28_shop) =create_squad(pri_a28_arch_zombied:pri_a28_arch)%
|
||||
|
||||
[sr_idle@school_snork_spawn_start]
|
||||
on_info = sr_idle@add_snorks %=clear_smart_terrain(pri_b301)%
|
||||
|
||||
[sr_idle@add_snorks]
|
||||
on_info = {!squad_npc_count_ge(pri_a16_military_squad:4)} sr_idle@wait_for_base_exit %=create_squad(pri_a28_school_snorks_1:pri_a28_school) =create_squad(pri_a28_school_snorks_2:pri_a28_school)%
|
||||
on_info2 = {=squad_npc_count_ge(pri_a16_military_squad:4)} sr_idle@wait_for_base_exit %=create_squad(pri_a28_school_snorks_1_strong:pri_a28_school) =create_squad(pri_a28_school_snorks_2_strong:pri_a28_school)%
|
||||
|
||||
[sr_idle@wait_for_base_exit]
|
||||
on_info = {+pri_a28_update_task_cover_strelok -pri_a28_evacutaion_start} %+pri_a28_evacutaion_start =scenario_autosave(st_save_pri_a28_evacutaion_start)%
|
||||
on_info2 = {+pri_a28_update_task_cover_strelok +pri_a28_evacutaion_start} sr_idle@add_mono %=clear_smart_terrain(pri_sim_2) =create_squad(pri_a28_evac_squad:pri_a28_heli)%
|
||||
|
||||
|
||||
|
||||
[sr_idle@add_mono]
|
||||
on_info = sr_idle@check_base_out %=create_squad(pri_a28_heli_mono_default:pri_a28_heli) =create_squad(pri_a28_heli_mono_snipers:pri_a28_heli)%
|
||||
|
||||
|
||||
|
||||
[sr_idle@check_base_out]
|
||||
on_info = {=squad_in_zone(pri_a16_military_squad:pri_a28_sr_shop_1)} %+pri_a28_base_done%
|
||||
on_info2 = {-pri_a28_colonel_about_heli !is_alive(pri_a17_military_colonel_kovalski)} %+pri_a28_colonel_about_heli%
|
||||
on_info3 = {+pri_a28_army_zombied_first -pri_a28_colonel_zombied_first !is_alive(pri_a17_military_colonel_kovalski)} sr_idle@check_base_out_koval_dead
|
||||
on_info4 = {+pri_a28_colonel_zombied_first !is_alive(pri_a17_military_colonel_kovalski)} sr_idle@check_base_out_koval_dead_go
|
||||
on_info5 = {+pri_a28_colonel_about_heli -pri_a28_army_zombied_first !is_alive(pri_a22_army_signaller)} %+pri_a28_army_zombied_first%
|
||||
on_info6 = {+pri_a28_base_done} sr_idle@check_shop_start
|
||||
|
||||
[sr_idle@check_base_out_koval_dead]
|
||||
on_game_timer = 30 | {-pri_a28_colonel_zombied_first} sr_idle@check_base_out_koval_dead_go %+pri_a28_colonel_zombied_first%
|
||||
on_info = {=squad_in_zone(pri_a16_military_squad:pri_a28_sr_shop_1)} sr_idle@check_shop_start %+pri_a28_base_done%
|
||||
|
||||
[sr_idle@check_base_out_koval_dead_go]
|
||||
on_game_timer = 80 | {-pri_a28_base_leave} %+pri_a28_base_leave%
|
||||
on_game_timer2 = 150 | {-pri_a28_base_done} %+pri_a28_base_done%
|
||||
on_info = {=squad_in_zone(pri_a16_military_squad:pri_a28_sr_shop_1)} %+pri_a28_base_done%
|
||||
on_info2 = {+pri_a28_base_done} sr_idle@check_shop_start
|
||||
|
||||
|
||||
|
||||
[sr_idle@check_shop_start]
|
||||
on_info = {+pri_a28_colonel_go_left} sr_idle@check_shop_out
|
||||
on_info2 = {-pri_a28_army_zombied_in_building !is_alive(pri_a25_base_medic)} %+pri_a28_army_zombied_in_building%
|
||||
on_info3 = {+pri_a28_army_zombied_in_building -pri_a28_colonel_go_left !is_alive(pri_a17_military_colonel_kovalski)} sr_idle@check_shop_out
|
||||
on_info4 = {+pri_a28_shop_done} sr_idle@check_arch_out
|
||||
on_info5 = {-pri_a28_shop_1_leave !squad_exist(pri_a28_shop_zombied)} %+pri_a28_shop_1_leave%
|
||||
on_info6 = {+pri_a28_shop_1_leave -pri_a28_shop_3_leave !squad_exist(pri_a28_shop_zombied_2) !squad_exist(pri_a28_shop_zombied_3)} %+pri_a28_shop_2_leave +pri_a28_shop_3_leave%
|
||||
|
||||
[sr_idle@check_shop_out]
|
||||
on_game_timer = 40 | {-pri_a28_colonel_go_left} %+pri_a28_colonel_go_left%
|
||||
on_info = {-pri_a28_shop_1_leave =squad_in_zone(pri_a16_military_squad:pri_a28_sr_shop_2_small)} %+pri_a28_shop_1_leave%
|
||||
on_info2 = {-pri_a28_shop_2_leave =squad_in_zone(pri_a16_military_squad:pri_a28_sr_shop_3_small)} %+pri_a28_shop_2_leave%
|
||||
on_info3 = {-pri_a28_shop_3_leave =squad_in_zone(pri_a16_military_squad:pri_a28_sr_arch_1)} %+pri_a28_shop_3_leave%
|
||||
on_info4 = {+pri_a28_shop_3_leave -pri_a28_shop_done !is_alive(pri_a17_military_colonel_kovalski)} %+pri_a28_shop_done%
|
||||
on_info5 = {+pri_a28_shop_done} sr_idle@check_arch_out
|
||||
on_info6 = {-pri_a28_shop_1_leave !squad_exist(pri_a28_shop_zombied)} %+pri_a28_shop_1_leave%
|
||||
on_info7 = {+pri_a28_shop_1_leave -pri_a28_shop_3_leave !squad_exist(pri_a28_shop_zombied_2) !squad_exist(pri_a28_shop_zombied_3)} %+pri_a28_shop_2_leave +pri_a28_shop_3_leave%
|
||||
|
||||
|
||||
|
||||
[sr_idle@check_arch_out]
|
||||
on_info = {+pri_a28_arch_done} sr_idle@check_school_out
|
||||
on_info2 = {-pri_a28_strelok_go_over_anomaly !is_alive(pri_b305_strelok)} %+pri_a28_strelok_go_over_anomaly%
|
||||
on_info3 = {-pri_a28_colonel_ok_go_here !is_alive(pri_a17_military_colonel_kovalski)} %+pri_a28_colonel_ok_go_here%
|
||||
on_info4 = {+pri_a28_evac_com_where_you -pri_a28_colonel_we_close !is_alive(pri_a17_military_colonel_kovalski)} %+pri_a28_colonel_we_close%
|
||||
on_info5 = {+pri_a28_evac_com_cant_wait -pri_a28_arch_done !is_alive(pri_a17_military_colonel_kovalski)} %+pri_a28_arch_done%
|
||||
on_info6 = {-pri_a28_arch_leave !squad_exist(pri_a28_arch_zombied)} %+pri_a28_arch_leave%
|
||||
|
||||
|
||||
|
||||
[sr_idle@check_school_out]
|
||||
on_info = {+pri_a28_school_done} sr_idle@check_horror_out
|
||||
on_info2 = {-pri_a28_school_1_leave =squad_in_zone(pri_a28_school_snorks_1:pri_a28_sr_school_2)} %+pri_a28_school_1_leave%
|
||||
on_info3 = {-pri_a28_school_1_leave =squad_in_zone_all(pri_a16_military_squad:pri_a28_sr_school_1)} %+pri_a28_school_1_leave%
|
||||
on_info4 = {-pri_a28_school_2_leave !squad_exist(pri_a28_school_snorks_1)} %+pri_a28_school_2_leave%
|
||||
on_info5 = {-pri_a28_school_done !squad_exist(pri_a28_school_snorks_1) !squad_exist(pri_a28_school_snorks_2)} %+pri_a28_school_done%
|
||||
on_info6 = {+pri_a28_school_1_leave -pri_a28_medic_about_snork !is_alive(pri_a25_base_medic)} %+pri_a28_medic_about_snork%
|
||||
on_info7 = {+pri_a28_medic_about_snork -pri_a28_colonel_about_snork !is_alive(pri_a17_military_colonel_kovalski)} %+pri_a28_colonel_about_snork%
|
||||
on_info8 = {+pri_a28_school_2_leave -pri_a28_colonel_fire_will !is_alive(pri_a17_military_colonel_kovalski)} %+pri_a28_colonel_fire_will%
|
||||
|
||||
|
||||
|
||||
[sr_idle@check_horror_out]
|
||||
on_info = {+pri_a28_strelok_run} sr_idle@check_evac_out %-pri_a28_colonel_wait_actor +pri_a28_evac_come_close%
|
||||
on_info2 = {-pri_a28_horror_start =squad_in_zone(pri_a16_military_squad:pri_a28_sr_horror) !is_alive(pri_a25_base_medic)} %+pri_a28_horror_start +pri_a28_medic_recovered%
|
||||
on_info3 = {+pri_a28_horror_start -pri_a28_strelok_dont_stop !is_alive(pri_b305_strelok)} %+pri_a28_strelok_dont_stop%
|
||||
on_info4 = {+pri_a28_strelok_dont_stop -pri_a28_army_its_here !is_alive(pri_a25_base_medic)} %+pri_a28_army_its_here +pri_a28_medic_recovered%
|
||||
on_info5 = {+pri_a28_army_its_here -pri_a28_strelok_run !is_alive(pri_b305_strelok)} %+pri_a28_strelok_run%
|
||||
|
||||
|
||||
|
||||
[sr_idle@check_evac_out]
|
||||
on_info = {+pri_a28_evac_done} sr_idle@evac_point
|
||||
on_info2 = {-pri_a28_evac_leave =actor_in_zone(pri_a28_sr_big)} sr_idle@check_evac_out_go %+pri_a28_evac_leave%
|
||||
on_info3 = {=squad_in_zone(pri_a16_military_squad:pri_a28_sr_big)} sr_idle@check_evac_out_go %+pri_a28_evac_leave%
|
||||
on_info4 = {+pri_a28_evac_leave =actor_in_zone(pri_a28_sr_big)} sr_idle@check_evac_out_go
|
||||
on_info5 = {-pri_a28_evac_leave !is_alive(pri_a17_military_colonel_kovalski) =squad_in_zone_all(pri_a16_military_squad:pri_a28_sr_evac_1)} sr_idle@check_evac_out_go %+pri_a28_evac_leave%
|
||||
on_info6 = {-pri_a28_evac_come_close_done !is_alive(pri_a28_evac_com)} %+pri_a28_evac_come_close_done%
|
||||
|
||||
[sr_idle@check_evac_out_go]
|
||||
on_info = {+pri_a28_evac_done} sr_idle@evac_point
|
||||
on_info2 = {-pri_a28_evac_com_to_helicopter =actor_in_zone(pri_a28_sr_small)} %+pri_a28_evac_com_to_helicopter%
|
||||
on_info3 = {-pri_a28_evac_com_to_helicopter =squad_in_zone(pri_a16_military_squad:pri_a28_sr_small)} %+pri_a28_evac_com_to_helicopter%
|
||||
on_info4 = {-pri_a28_evac_come_close_done !is_alive(pri_a28_evac_com)} %+pri_a28_evac_come_close_done%
|
||||
|
||||
|
||||
|
||||
[sr_idle@evac_point]
|
||||
on_info = {+pri_a28_evac_com_to_helicopter} sr_idle@nil
|
||||
on_info2 = {-pri_a28_evac_com_to_helicopter =actor_in_zone(pri_a28_sr_small)} %+pri_a28_evac_com_to_helicopter%
|
||||
on_info3 = {-pri_a28_evac_com_to_helicopter =squad_in_zone(pri_a16_military_squad:pri_a28_sr_small)} %+pri_a28_evac_com_to_helicopter%
|
||||
|
||||
|
||||
[sr_idle@nil]
|
||||
114
gamedata/configs/scripts/evac/pri_a28_sr_evac.ltx
Normal file
114
gamedata/configs/scripts/evac/pri_a28_sr_evac.ltx
Normal file
|
|
@ -0,0 +1,114 @@
|
|||
[logic]
|
||||
active = sr_idle@start
|
||||
|
||||
[sr_idle@start]
|
||||
on_info = {+pri_b305_fifth_cam_end =actor_in_zone(pri_a28_scene_end_zone) +pri_a28_strelok_can_leave} sr_idle@helis_reached_save
|
||||
on_info2 = {+pri_b305_fifth_cam_end =actor_in_zone(pri_a28_scene_end_zone) +pri_a28_strelok_dead} sr_idle@helis_reached_save
|
||||
on_info3 = {+pri_b305_fifth_cam_end +pri_a28_squad_dead} sr_idle@helis_want_to_leave
|
||||
on_info4 = {+pri_a28_helis_leave !actor_in_zone(pri_a28_scene_end_zone)} sr_idle@cut_2_save
|
||||
;çàòû÷êà
|
||||
on_info5 = {+pri_a28_cutscene_start} sr_idle@cut_1_save %=clear_smart_terrain(pri_sim_2)%
|
||||
|
||||
|
||||
|
||||
[sr_idle@helis_want_to_leave]
|
||||
on_game_timer = 30 | %=play_sound(pri_a28_evac_com_helicopter_run_time)%
|
||||
on_signal = sound_end | sr_timer@got_one_minute
|
||||
|
||||
[sr_timer@got_one_minute]
|
||||
type = dec
|
||||
start_value = 60000
|
||||
on_value = 0 | {+pri_a28_evacuation_end =actor_in_zone(pri_a28_scene_end_zone)} sr_idle@cut_1_save, %+pri_a28_helis_leave%
|
||||
on_info = {-pri_a28_evacuation_end =actor_in_zone(pri_a28_scene_end_zone)} %+pri_a28_evacuation_end =scenario_autosave(st_save_pri_a28_evacuation_end)%
|
||||
on_info2 = {+pri_a28_helis_leave !actor_in_zone(pri_a28_scene_end_zone)} sr_idle@cut_2_save
|
||||
|
||||
|
||||
|
||||
[sr_idle@helis_reached_save]
|
||||
on_info = {-pri_a28_evacuation_end =actor_alive} %+pri_a28_evacuation_end =scenario_autosave(st_save_pri_a28_evacuation_end)%
|
||||
on_info2 = {+pri_a28_evacuation_end +pri_a28_waves_end =actor_in_zone(pri_a28_scene_end_zone)} sr_idle@cut_1_save
|
||||
on_info3 = {+pri_a28_helis_leave !actor_in_zone(pri_a28_scene_end_zone)} sr_idle@cut_2_save
|
||||
|
||||
|
||||
|
||||
[sr_idle@cut_1_save]
|
||||
on_info = {-pri_a28_evacuation_heli =actor_alive} %+pri_a28_evacuation_heli =scenario_autosave(st_save_pri_a28_evacuation_heli)%
|
||||
on_info2 = {+pri_a28_evacuation_heli} sr_idle@cut_1_start %=disable_ui =run_postprocess(black:3009:true) +pri_a28_scene_end =save_actor_position%
|
||||
|
||||
[sr_idle@cut_1_start]
|
||||
on_game_timer = 18 | sr_idle@check_squad %=create_cutscene_actor_with_weapon(pri_a28_cutscene_actor:pri_a28_cutscene_actor_walk:0:0:3)%
|
||||
|
||||
[sr_idle@check_squad]
|
||||
on_info = {=squad_exist(pri_a16_military_squad)} sr_idle@check_commander %+pri_a28_somebody_alive%, sr_idle@check_commander
|
||||
|
||||
[sr_idle@check_commander]
|
||||
on_info = {=is_alive(pri_a28_evac_com)} sr_idle@add_commander %=remove_npc(pri_a28_evac_com)%, sr_idle@add_commander
|
||||
|
||||
[sr_idle@add_commander]
|
||||
on_info = sr_idle@check_strelok %=spawn_object(pri_a28_cutscene_commander:pri_a28_cutscene_commander_walk)%
|
||||
|
||||
[sr_idle@check_strelok]
|
||||
on_info = {=is_alive(pri_b305_strelok)} sr_idle@add_strelok %=remove_npc(pri_b305_strelok)%, sr_cutscene@cut_1 %+pri_a28_strelok_dead%
|
||||
|
||||
[sr_idle@add_strelok]
|
||||
on_info = sr_cutscene@cut_1 %=spawn_object(pri_a28_cutscene_strelok:pri_a28_cutscene_strelok_walk)%
|
||||
|
||||
[sr_cutscene@cut_1]
|
||||
point = pri_a28_actor_hide_walk
|
||||
look = pri_a28_actor_hide_look
|
||||
global_cameffect = true
|
||||
enable_ui_on_end = false
|
||||
outdoor = true
|
||||
cam_effector = scenario_cam\pripyat\pri_a28_evac_cam_1
|
||||
on_signal = cam_effector_stop | sr_idle@freeplay_dialog %=run_postprocess(black:3009:true) -pri_a28_cam_started%
|
||||
on_signal2 = cameff_end | sr_idle@freeplay_dialog %+pri_a28_cut_1_end =run_postprocess(black:3009:true) -pri_a28_cam_started%
|
||||
on_info = {-pri_a28_cam_started} %+pri_a28_cam_started =stop_postprocess(3009)%
|
||||
on_info2 = {+pri_a28_cut_1_end} %=stop_sr_cutscene%
|
||||
|
||||
[sr_idle@freeplay_dialog]
|
||||
on_game_timer = 10 | {-pri_a28_show_freeplay_dialog} %+pri_a28_show_freeplay_dialog =enable_ui =show_freeplay_dialog(st_freeplay_text_yes_no:true)%
|
||||
on_info = {+pri_a28_actor_in_zone_stay} sr_idle@check_sokolov %+pri_a28_helis_leave =disable_ui%
|
||||
on_info2 = {+pri_a28_actor_in_zone_leave} sr_idle@check_sokolov %+pri_a28_helis_leave =disable_ui%
|
||||
|
||||
|
||||
|
||||
[sr_idle@cut_2_save]
|
||||
on_info = {-pri_a28_evacuation_heli =actor_alive} %+pri_a28_evacuation_heli =scenario_autosave(st_save_pri_a28_evacuation_heli)%
|
||||
on_info2 = {+pri_a28_evacuation_heli} sr_idle@check_sokolov %=disable_ui =run_postprocess(black:3009:true) =save_actor_position%
|
||||
|
||||
[sr_idle@check_sokolov]
|
||||
on_info = {-pri_a28_sokolov_left_alive =is_alive(pri_a15_sokolov_sci_head)} %+pri_a28_sokolov_left_alive%
|
||||
on_info2 = {-pri_a28_army_leaved_alive -pri_a28_strelok_dead =squad_npc_count_ge(pri_a16_military_squad:5)} %+pri_a28_army_leaved_alive%
|
||||
on_info3 = {-pri_a28_army_leaved_alive +pri_a28_strelok_dead =squad_npc_count_ge(pri_a16_military_squad:4)} %+pri_a28_army_leaved_alive%
|
||||
on_info4 = sr_idle@cut_2_start
|
||||
|
||||
[sr_idle@cut_2_start]
|
||||
on_info = {=squad_exist(pri_a16_military_squad)} %=remove_squad(pri_a16_military_squad)%
|
||||
on_info2 = {=squad_exist(pri_a28_evac_squad)} %=remove_squad(pri_a28_evac_squad)%
|
||||
on_game_timer = 18 | {+pri_a28_helis_added} sr_cutscene@cut_2 %=destroy_object(story:pri_a28_earth_helli_1) =destroy_object(story:pri_a28_earth_helli_2)%, sr_cutscene@cut_2
|
||||
|
||||
[sr_cutscene@cut_2]
|
||||
point = pri_a28_actor_hide_walk
|
||||
look = pri_a28_actor_hide_look
|
||||
global_cameffect = true
|
||||
enable_ui_on_end = false
|
||||
outdoor = true
|
||||
cam_effector = scenario_cam\pripyat\pri_a28_evac_cam_heli
|
||||
on_signal = cam_effector_stop | sr_idle@hellis_fly_cutscene_end %=run_postprocess(black:3009:true)%
|
||||
on_signal = cameff_end | sr_idle@hellis_fly_cutscene_end %=run_postprocess(black:3009:true)%
|
||||
on_info = {-pri_a28_cam_started} %+pri_a28_cam_started =stop_postprocess(3009)%
|
||||
on_game_timer = 200 | %=stop_sr_cutscene%
|
||||
|
||||
[sr_idle@hellis_fly_cutscene_end]
|
||||
on_game_timer = 10 | {-pri_a28_actor_in_zone_stay -pri_a28_actor_in_zone_leave} sr_idle@wait_for_ok %=enable_ui =show_freeplay_dialog(st_freeplay_text_ok)%
|
||||
on_info = {+pri_a28_actor_in_zone_stay} sr_idle@announce_continue %=restore_actor_position =stop_postprocess(3009) =enable_ui%
|
||||
on_info2 = {+pri_a28_actor_in_zone_leave} sr_idle@nil %=restore_actor_position =enable_ui =run_tutorial(outro_game)%
|
||||
|
||||
[sr_idle@wait_for_ok]
|
||||
on_info = {+pri_a28_actor_in_zone_stay} sr_idle@announce_continue %=restore_actor_position =stop_postprocess(3009)%
|
||||
|
||||
[sr_idle@announce_continue]
|
||||
on_info = {!dist_to_story_obj_ge(pri_surge_hide_a16:100)} sr_idle@nil %=play_sound(pri_a28_continuation)%
|
||||
on_game_timer = 50 | {-pri_a28_cutscenes_end} %+pri_a28_cutscenes_end%
|
||||
|
||||
[sr_idle@nil]
|
||||
30
gamedata/configs/scripts/evac/pri_a28_sr_evac_radio_talk.ltx
Normal file
30
gamedata/configs/scripts/evac/pri_a28_sr_evac_radio_talk.ltx
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
[logic]
|
||||
active = sr_idle@wait_for_start
|
||||
|
||||
[sr_idle@wait_for_start]
|
||||
on_info = {+pri_b305_fifth_cam_end} sr_idle@wait
|
||||
|
||||
[sr_idle@wait]
|
||||
on_info = {=squad_in_zone(pri_a16_military_squad:pri_a28_sr_evac_radio_talk)} sr_idle@first_sound_play
|
||||
on_info2 = {=actor_in_zone(pri_a28_sr_evac_radio_talk)} sr_idle@first_sound_play
|
||||
|
||||
[sr_idle@first_sound_play]
|
||||
on_info = {=dist_to_actor_le(15)} %=play_sound(pri_a28_evac_com_where_you)%
|
||||
on_signal = sound_end | sr_idle@wait_for_answer
|
||||
on_game_timer = 300 | %=play_sound(pri_a28_evac_com_where_you)%
|
||||
|
||||
[sr_idle@wait_for_answer]
|
||||
on_game_timer = 10 | {-pri_a28_evac_com_where_you} %+pri_a28_evac_com_where_you%
|
||||
on_info = {+pri_a28_colonel_we_close} sr_idle@timer
|
||||
|
||||
[sr_idle@timer]
|
||||
on_game_timer = 10 | sr_idle@say_cant_wait
|
||||
|
||||
[sr_idle@say_cant_wait]
|
||||
on_info = %=play_sound(pri_a28_evac_com_cant_wait)%
|
||||
on_signal = sound_end | sr_idle@timer_after
|
||||
|
||||
[sr_idle@timer_after]
|
||||
on_game_timer = 10 | sr_idle@nil %+pri_a28_evac_com_cant_wait%
|
||||
|
||||
[sr_idle@nil]
|
||||
33
gamedata/configs/scripts/evac/pri_a28_sr_horror.ltx
Normal file
33
gamedata/configs/scripts/evac/pri_a28_sr_horror.ltx
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
[logic]
|
||||
active = sr_idle@start
|
||||
;active = sr_deimos
|
||||
|
||||
[sr_idle@start]
|
||||
on_info = {+pri_b305_fifth_cam_end =actor_in_zone(pri_a28_sr_horror)} sr_deimos, {+pri_a28_scene_end} sr_idle@wait_2
|
||||
|
||||
[sr_deimos]
|
||||
movement_speed = 42
|
||||
growing_koef = 0.45; 0.25
|
||||
lowering_koef = 0.22; 0.06
|
||||
pp_effector = psi
|
||||
pp_effector2 = deimos1
|
||||
cam_effector = pripyat_horror
|
||||
cam_effector_repeating_time = 5
|
||||
noise_sound = pri_a28_deimos_noise_sound
|
||||
heartbeet_sound = pri_a28_deimos_heartbeat
|
||||
health_lost = 0.1
|
||||
disable_bound = 0.2
|
||||
switch_lower_bound = 0.4 ;0.3
|
||||
switch_upper_bound = 0.75 ;0.6
|
||||
on_info = {=actor_in_surge_cover} sr_idle@wait_2
|
||||
on_info2 = {-pri_a28_actor_in_zone_stay +pri_a28_evac_com_to_helicopter} sr_idle@wait_2
|
||||
on_info3 = {!actor_in_zone(pri_a28_sr_horror)} sr_idle@wait_2
|
||||
on_game_timer = 100 | {=check_deimos_phase(disable_bound:decreasing) !actor_in_zone(pri_a28_sr_horror)} sr_idle@wait_1
|
||||
|
||||
[sr_idle@wait_1]
|
||||
on_game_timer = 18000 | {~20} sr_deimos, sr_idle@wait_2
|
||||
on_info = {-pri_a28_evac_com_to_helicopter =actor_in_zone(pri_a28_sr_horror)} sr_deimos
|
||||
|
||||
[sr_idle@wait_2]
|
||||
on_game_timer = 9000 | {~25} sr_deimos, sr_idle@wait_1
|
||||
on_info = {-pri_a28_evac_com_to_helicopter =actor_in_zone(pri_a28_sr_horror)} sr_deimos
|
||||
62
gamedata/configs/scripts/evac/pri_a28_sr_mono_waves.ltx
Normal file
62
gamedata/configs/scripts/evac/pri_a28_sr_mono_waves.ltx
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
[logic]
|
||||
active = sr_idle@wait_for_start
|
||||
|
||||
[sr_idle@wait_for_start]
|
||||
on_info = {+pri_b305_fifth_cam_end +pri_a28_strelok_can_leave} sr_idle@wait_for_mono_die %+pri_a28_defend_start%
|
||||
on_info2 = {+pri_b305_fifth_cam_end =actor_in_zone(pri_a28_scene_end_zone)} sr_idle@wait_for_mono_die %+pri_a28_defend_start%
|
||||
on_info3 = {+pri_b305_fifth_cam_end +pri_a28_strelok_dead =actor_in_zone(pri_a28_scene_end_zone)} sr_idle@wait_for_mono_die %+pri_a28_defend_start%
|
||||
on_info4 = {+pri_a28_helis_leave =actor_in_zone(pri_a28_scene_end_zone)} sr_idle@add_final_wave
|
||||
on_info5 = {+pri_a28_cutscenes_end} sr_idle@nil
|
||||
;on_info6 = {+pri_a28_squad_dead} sr_idle@waves_done
|
||||
|
||||
[sr_idle@wait_for_mono_die]
|
||||
on_info = {!counter_greater(pri_a28_heli_mono_cnt:4)} sr_idle@wait_for_spawn
|
||||
on_info2 = {+pri_a28_helis_leave =actor_in_zone(pri_a28_scene_end_zone)} sr_idle@add_final_wave %-pri_a28_defender_needed%
|
||||
on_info3 = {+pri_a28_cutscenes_end} sr_idle@nil
|
||||
on_info4 = {+pri_a28_squad_dead} sr_idle@waves_done
|
||||
|
||||
[sr_idle@wait_for_spawn]
|
||||
on_info = {+pri_a28_cutscenes_end} sr_idle@nil
|
||||
on_info2 = {=actor_in_zone(pri_a28_scene_end_zone)} sr_idle@add_wave %-pri_a28_defender_needed%
|
||||
on_info3 = {+pri_a28_squad_dead} sr_idle@waves_done
|
||||
on_info4 = {+pri_a28_wave_1_spawned +pri_a28_wave_2_spawned +pri_a28_wave_3_spawned} sr_idle@waves_done
|
||||
on_info5 = {-pri_a28_wave_3_spawned =actor_in_zone(pri_a28_sr_mono_add_1)} sr_idle@spawn_wave_3 %+pri_a28_defender_needed%
|
||||
on_info6 = {-pri_a28_wave_3_spawned ~50 =actor_in_zone(pri_a28_sr_mono_add_2)} sr_idle@spawn_wave_3 %+pri_a28_defender_needed%
|
||||
on_info7 = {-pri_a28_wave_1_spawned ~50 =actor_in_zone(pri_a28_sr_mono_add_2)} sr_idle@spawn_wave_1 %+pri_a28_defender_needed%
|
||||
on_info8 = {-pri_a28_wave_1_spawned =actor_in_zone(pri_a28_sr_mono_add_3)} sr_idle@spawn_wave_1 %+pri_a28_defender_needed%
|
||||
on_info9 = {!actor_in_zone(pri_a28_scene_end_zone)} sr_idle@get_zone_to_spawn %+pri_a28_defender_needed%
|
||||
|
||||
[sr_idle@get_zone_to_spawn]
|
||||
on_info = {+pri_a28_wave_1_spawned +pri_a28_wave_2_spawned +pri_a28_wave_3_spawned} sr_idle@waves_done
|
||||
on_info2 = sr_idle@wait_for_mono_die %=pri_a28_check_zones%
|
||||
|
||||
[sr_idle@spawn_wave_1]
|
||||
on_info = sr_idle@wait_for_mono_die %+pri_a28_wave_1_spawned =create_squad(pri_a28_heli_mono_add_1:pri_a28_heli) =inc_counter(pri_a28_heli_mono_cnt:4)%
|
||||
|
||||
[sr_idle@spawn_wave_2]
|
||||
on_info = sr_idle@wait_for_mono_die %+pri_a28_wave_2_spawned =create_squad(pri_a28_heli_mono_add_2:pri_a28_heli) =inc_counter(pri_a28_heli_mono_cnt:4)%
|
||||
|
||||
[sr_idle@spawn_wave_3]
|
||||
on_info = sr_idle@wait_for_mono_die %+pri_a28_wave_3_spawned =create_squad(pri_a28_heli_mono_add_3:pri_a28_heli) =inc_counter(pri_a28_heli_mono_cnt:4)%
|
||||
|
||||
[sr_idle@add_wave]
|
||||
on_info = {~33 -pri_a28_wave_1_spawned} sr_idle@spawn_wave_1, {~66 -pri_a28_wave_2_spawned} sr_idle@spawn_wave_2, {~100 -pri_a28_wave_3_spawned} sr_idle@spawn_wave_3
|
||||
on_info2 = {+pri_a28_wave_1_spawned +pri_a28_wave_2_spawned +pri_a28_wave_3_spawned} sr_idle@waves_done
|
||||
on_info3 = {+pri_a28_helis_leave} sr_idle@add_final_wave
|
||||
on_info4 = {+pri_a28_squad_dead} sr_idle@waves_done
|
||||
|
||||
[sr_idle@waves_done]
|
||||
on_info = {=actor_in_zone(pri_a28_scene_end_zone)} sr_idle@wait_a_little
|
||||
on_info2 = {-pri_a28_helis_defended} %+pri_a28_helis_defended%
|
||||
on_game_timer = 300 | sr_idle@add_final_wave %+pri_a28_helis_leave%
|
||||
|
||||
[sr_idle@wait_a_little]
|
||||
on_game_timer = 30 | sr_idle@add_final_wave
|
||||
on_info = {-pri_a28_final_wave_added} %+pri_a28_final_wave_added =create_squad(pri_a28_heli_mono_add_2_final:pri_a28_heli)%
|
||||
|
||||
[sr_idle@add_final_wave]
|
||||
on_info = {-pri_a28_final_wave_added !actor_in_zone(pri_a28_sr_mono_add_2)} sr_idle@nil %+pri_a28_waves_end =create_squad(pri_a28_heli_mono_add_2_final:pri_a28_heli)%
|
||||
on_info2 = {-pri_a28_final_wave_added =actor_in_zone(pri_a28_sr_mono_add_2)} sr_idle@nil %+pri_a28_waves_end%
|
||||
on_info3 = {+pri_a28_final_wave_added} sr_idle@nil %+pri_a28_waves_end%
|
||||
|
||||
[sr_idle@nil]
|
||||
26
gamedata/configs/scripts/evac/pri_a28_sr_squad_neutral.ltx
Normal file
26
gamedata/configs/scripts/evac/pri_a28_sr_squad_neutral.ltx
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
[logic]
|
||||
active = sr_idle@wait
|
||||
|
||||
[sr_idle@wait]
|
||||
on_info = {+pri_a28_update_task_cover_strelok} sr_idle@squad_neutral
|
||||
|
||||
[sr_idle@squad_neutral]
|
||||
on_info = {!squad_exist(pri_a16_military_squad)} sr_idle@timeout %+pri_a28_squad_dead +pri_a28_strelok_dead +pri_a28_koval_dead%
|
||||
on_info2 = {+pri_a28_actor_enemy} sr_idle@timeout %=set_squad_enemy_to_actor(pri_a16_military_squad) +pri_a28_strelok_dead +pri_a28_koval_dead%
|
||||
on_info3 = {=squad_exist(pri_a16_military_squad) =is_squad_enemy_to_actor(pri_a16_military_squad) !counter_greater(pri_a28_friendly_hit:7)} %=set_squad_friend_to_actor(pri_a16_military_squad)%
|
||||
on_info4 = {=squad_exist(pri_a28_evac_squad) =is_squad_enemy_to_actor(pri_a28_evac_squad)} %=set_squad_friend_to_actor(pri_a28_evac_squad)%
|
||||
on_info5 = {-pri_a28_strelok_dead !is_alive(pri_b305_strelok)} %+pri_a28_strelok_dead%
|
||||
on_info6 = {-pri_a28_koval_dead !is_alive(pri_a17_military_colonel_kovalski)} %+pri_a28_koval_dead%
|
||||
on_info7 = {=squad_exist(pri_a16_military_squad) =pri_a28_actor_is_far} %=kill_squad(pri_a16_military_squad)%
|
||||
on_info8 = {+pri_a28_actor_in_zone_stay} sr_idle@nil, {+pri_a28_actor_in_zone_leave} sr_idle@nil, {+pri_a28_evacuation_heli} sr_idle@nil
|
||||
on_game_timer = 300 | {=squad_exist(pri_a16_military_squad)} sr_idle@heal_a_little_bit
|
||||
|
||||
[sr_idle@heal_a_little_bit]
|
||||
on_info = {=squad_exist(pri_a16_military_squad)} %=set_squad_friend_to_actor(pri_a16_military_squad)%
|
||||
on_info2 = {=squad_exist(pri_a28_evac_squad)} %=set_squad_friend_to_actor(pri_a28_evac_squad)%
|
||||
on_info3 = sr_idle@squad_neutral %=heal_squad(pri_a16_military_squad)%
|
||||
|
||||
[sr_idle@timeout]
|
||||
on_game_timer = 150 | sr_idle@nil %+pri_a28_actor_enemy_to_squad +pri_a28_squad_dead%
|
||||
|
||||
[sr_idle@nil]
|
||||
20
gamedata/configs/scripts/evac/smart/pri_a28_arch.ltx
Normal file
20
gamedata/configs/scripts/evac/smart/pri_a28_arch.ltx
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
[smart_terrain]
|
||||
sim_avail = false
|
||||
arrive_dist = 100000
|
||||
|
||||
[exclusive]
|
||||
pri_a28_kovalski_arch = evac\pri_a28_arch.ltx
|
||||
pri_a28_strelok_arch = evac\pri_a28_arch.ltx
|
||||
pri_a28_military_1_arch = evac\pri_a28_arch.ltx
|
||||
pri_a28_military_2_arch = evac\pri_a28_arch.ltx
|
||||
pri_a28_military_3_arch = evac\pri_a28_arch.ltx
|
||||
pri_a28_military_4_arch = evac\pri_a28_arch.ltx
|
||||
pri_a28_military_5_arch = evac\pri_a28_arch.ltx
|
||||
pri_a28_military_6_arch = evac\pri_a28_arch.ltx
|
||||
|
||||
pri_a28_zombied_1_arch = evac\pri_a28_arch_zombied.ltx
|
||||
pri_a28_zombied_2_arch = evac\pri_a28_arch_zombied.ltx
|
||||
pri_a28_zombied_3_arch = evac\pri_a28_arch_zombied.ltx
|
||||
pri_a28_zombied_4_arch = evac\pri_a28_arch_zombied.ltx
|
||||
pri_a28_zombied_5_arch = evac\pri_a28_arch_zombied.ltx
|
||||
pri_a28_zombied_6_arch = evac\pri_a28_arch_zombied.ltx
|
||||
27
gamedata/configs/scripts/evac/smart/pri_a28_base.ltx
Normal file
27
gamedata/configs/scripts/evac/smart/pri_a28_base.ltx
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
[smart_terrain]
|
||||
sim_avail = false
|
||||
arrive_dist = 100000
|
||||
|
||||
[exclusive]
|
||||
pri_a28_kovalski_base = evac\pri_a28_base.ltx
|
||||
pri_a28_kirillov_base = evac\pri_a28_base.ltx
|
||||
pri_a28_strelok_base = evac\pri_a28_base.ltx
|
||||
pri_a28_military_1_base = evac\pri_a28_base.ltx
|
||||
pri_a28_military_2_base = evac\pri_a28_base.ltx
|
||||
pri_a28_military_3_base = evac\pri_a28_base.ltx
|
||||
pri_a28_military_4_base = evac\pri_a28_base.ltx
|
||||
pri_a28_military_5_base = evac\pri_a28_base.ltx
|
||||
|
||||
pri_a28_zombied_1_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_2_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_3_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_4_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_5_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_6_base = evac\pri_a28_base_zombied.ltx
|
||||
|
||||
pri_a28_zombied_7_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_8_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_9_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_10_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_11_base = evac\pri_a28_base_zombied.ltx
|
||||
pri_a28_zombied_12_base = evac\pri_a28_base_zombied.ltx
|
||||
13
gamedata/configs/scripts/evac/smart/pri_a28_evac.ltx
Normal file
13
gamedata/configs/scripts/evac/smart/pri_a28_evac.ltx
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
[smart_terrain]
|
||||
sim_avail = false
|
||||
arrive_dist = 100000
|
||||
|
||||
[exclusive]
|
||||
pri_a28_kovalski_evac = evac\pri_a28_evac.ltx
|
||||
pri_a28_medic_evac = evac\pri_a28_evac.ltx
|
||||
pri_a28_strelok_evac = evac\pri_a28_evac.ltx
|
||||
pri_a28_military_1_evac = evac\pri_a28_evac.ltx
|
||||
pri_a28_military_2_evac = evac\pri_a28_evac.ltx
|
||||
pri_a28_military_3_evac = evac\pri_a28_evac.ltx
|
||||
pri_a28_military_4_evac = evac\pri_a28_evac.ltx
|
||||
pri_a28_military_5_evac = evac\pri_a28_evac.ltx
|
||||
63
gamedata/configs/scripts/evac/smart/pri_a28_heli.ltx
Normal file
63
gamedata/configs/scripts/evac/smart/pri_a28_heli.ltx
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
[smart_terrain]
|
||||
sim_avail = false
|
||||
arrive_dist = 100000
|
||||
def_restr = pri_a28_scene_end_zone
|
||||
|
||||
[exclusive]
|
||||
pri_a28_kovalski_heli = evac\pri_a28_heli.ltx
|
||||
pri_a28_strelok_heli = evac\pri_a28_heli.ltx
|
||||
pri_a28_military_1_heli = evac\pri_a28_heli.ltx
|
||||
pri_a28_military_2_heli = evac\pri_a28_heli.ltx
|
||||
pri_a28_military_3_heli = evac\pri_a28_heli.ltx
|
||||
pri_a28_military_4_heli = evac\pri_a28_heli.ltx
|
||||
pri_a28_military_5_heli = evac\pri_a28_heli.ltx
|
||||
pri_a28_military_6_heli = evac\pri_a28_heli.ltx
|
||||
|
||||
pri_a28_evac_military_1 = evac\pri_a28_evac_squad.ltx
|
||||
pri_a28_evac_military_2 = evac\pri_a28_evac_squad.ltx
|
||||
pri_a28_evac_military_3 = evac\pri_a28_evac_squad.ltx
|
||||
pri_a28_evac_military_4 = evac\pri_a28_evac_squad.ltx
|
||||
|
||||
pri_a28_mono_1_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_2_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_3_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_4_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_5_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_6_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_7_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_8_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_9_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_10_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_11_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_12_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_sniper_1_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_sniper_2_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_sniper_3_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_sniper_4_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_add_1_1_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_1_2_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_1_3_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_1_4_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_1_5_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_1_6_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_add_2_1_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_2_2_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_2_3_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_2_4_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_2_5_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_2_6_heli = evac\pri_a28_heli_mono.ltx
|
||||
|
||||
pri_a28_mono_add_3_1_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_3_2_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_3_3_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_3_4_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_3_5_heli = evac\pri_a28_heli_mono.ltx
|
||||
pri_a28_mono_add_3_6_heli = evac\pri_a28_heli_mono.ltx
|
||||
24
gamedata/configs/scripts/evac/smart/pri_a28_school.ltx
Normal file
24
gamedata/configs/scripts/evac/smart/pri_a28_school.ltx
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
[smart_terrain]
|
||||
sim_avail = false
|
||||
arrive_dist = 100000
|
||||
|
||||
[exclusive]
|
||||
pri_a28_kovalski_school = evac\pri_a28_school.ltx
|
||||
pri_a28_medic_school = evac\pri_a28_school.ltx
|
||||
pri_a28_strelok_school = evac\pri_a28_school.ltx
|
||||
pri_a28_military_1_school = evac\pri_a28_school.ltx
|
||||
pri_a28_military_2_school = evac\pri_a28_school.ltx
|
||||
pri_a28_military_3_school = evac\pri_a28_school.ltx
|
||||
pri_a28_military_4_school = evac\pri_a28_school.ltx
|
||||
pri_a28_military_5_school = evac\pri_a28_school.ltx
|
||||
|
||||
pri_a28_snork_1_school = evac\pri_a28_school_snork.ltx
|
||||
pri_a28_snork_2_school = evac\pri_a28_school_snork.ltx
|
||||
pri_a28_snork_3_school = evac\pri_a28_school_snork.ltx
|
||||
pri_a28_snork_4_school = evac\pri_a28_school_snork.ltx
|
||||
|
||||
pri_a28_snork_5_school = evac\pri_a28_school_snork.ltx
|
||||
pri_a28_snork_6_school = evac\pri_a28_school_snork.ltx
|
||||
pri_a28_snork_7_school = evac\pri_a28_school_snork.ltx
|
||||
pri_a28_snork_8_school = evac\pri_a28_school_snork.ltx
|
||||
pri_a28_snork_9_school = evac\pri_a28_school_snork.ltx
|
||||
28
gamedata/configs/scripts/evac/smart/pri_a28_shop.ltx
Normal file
28
gamedata/configs/scripts/evac/smart/pri_a28_shop.ltx
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
[smart_terrain]
|
||||
sim_avail = false
|
||||
arrive_dist = 100000
|
||||
|
||||
[exclusive]
|
||||
pri_a28_kovalski_shop = evac\pri_a28_shop.ltx
|
||||
pri_a28_medic_shop = evac\pri_a28_shop.ltx
|
||||
pri_a28_strelok_shop = evac\pri_a28_shop.ltx
|
||||
pri_a28_military_1_shop = evac\pri_a28_shop.ltx
|
||||
pri_a28_military_2_shop = evac\pri_a28_shop.ltx
|
||||
pri_a28_military_3_shop = evac\pri_a28_shop.ltx
|
||||
pri_a28_military_4_shop = evac\pri_a28_shop.ltx
|
||||
pri_a28_military_5_shop = evac\pri_a28_shop.ltx
|
||||
|
||||
pri_a28_zombied_1_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_2_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_3_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_4_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_5_shop = evac\pri_a28_shop_zombied.ltx
|
||||
|
||||
pri_a28_zombied_6_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_7_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_8_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_9_shop = evac\pri_a28_shop_zombied.ltx
|
||||
|
||||
pri_a28_zombied_10_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_11_shop = evac\pri_a28_shop_zombied.ltx
|
||||
pri_a28_zombied_12_shop = evac\pri_a28_shop_zombied.ltx
|
||||
Loading…
Add table
Add a link
Reference in a new issue