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

210 lines
No EOL
9.5 KiB
TeX

;-------------------------------------Ëèäåð áðàòâû--------------------------------------------
[logic@port_bandit_1_leader]
active = walker@wait
suitable = {=check_npc_name(zat_b52_port_bandit_1) -zat_b52_actor_go_offline} true, {=is_squad_commander +zat_b52_bandit_leader_is_dead =target_squad_name(zat_b52_port_bandits) -zat_b52_actor_go_offline} true
prior = 100
on_death = death
post_combat_time = 0, 0
[walker@wait] ;Æäåì èãðîêà
path_walk = port_bandit_1_walk_1
path_look = port_bandit_1_look_1
def_state_moving1 = walk
def_state_moving2 = rush
on_info = {!actor_enemy =dist_to_actor_le(20) -zat_b52_robbery_done} remark@tell_actor
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
meet = no_meet
[remark@tell_actor] ;Âèäèì èãðîêà
target = story | actor
anim = hello_wpn
meet = no_meet
on_info = %=play_sound(zat_b52_port_bandits_see_actor)% remark@wait_actor
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
on_info2 = {!actor_enemy =dist_to_actor_ge(40)} walker@wait
[remark@wait_actor] ;Æäåì èãðîêà
target = story | actor
anim = wait_na
meet = no_meet
on_info = {!actor_enemy =dist_to_actor_le(5)} walker@robbery %+zat_b52_robbery_start%
on_info2 = {!actor_enemy =dist_to_actor_ge(40)} walker@wait
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
[walker@robbery] ;Ïðîñèì èãðîêà îòäàòü îðóæèå
path_walk = port_bandit_1_walk_1
path_look = port_bandit_1_look_1
meet = meet@robbery
on_info = {+zat_b52_robbery_done} remark@guard_first_sound %+zat_b52_bandits_free%
on_info2 = {+zat_b52_robbery_no} walker@fight %=set_squad_enemy_to_actor(zat_b52_port_bandits) =play_sound(zat_b52_port_bandits_kill_actor_snd)%
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
[meet@robbery] ;Ïðîñèì èãðîêà îòäàòü îðóæèå
close_victim = actor
far_victim = actor
close_distance = 6
far_distance = 10
far_anim = nil
close_anim = nil
use = {=has_enemy} false, {=actor_enemy} false, self
allow_break = false
trade_enable = false
meet_dialog = {!actor_enemy} zat_b52_robbery_port_bandits_1
[walker@fight] ;Èãðîê ñîïðîòèâëÿåòñÿ
path_walk = port_bandit_1_walk_1
path_look = port_bandit_1_look_1
combat_ignore_cond = {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
meet = no_meet
[remark@guard_first_sound] ;Ïðîãàíÿåì èãðîêà ðàç
target = story | actor
anim = threat_na
snd_anim_sync = true
meet = no_meet
on_info = {!actor_enemy} %=play_sound(zat_b52_port_bandits_after_pay_snd)%
on_info2 = {=dist_to_actor_ge(120)} walker@wait %+zat_b52_actor_go_offline%
on_signal = sound_end | remark@guard_second_sound_wait
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
[remark@guard_second_sound_wait] ;Ïðîãàíÿåì èãðîêà ðàç æäåì
target = story | actor
anim = backoff
snd_anim_sync = true
meet = no_meet
on_info = {=actor_in_zone(zat_b52_smart_terrain_def)} remark@guard_second_sound
on_info2 = {=dist_to_actor_ge(120)} walker@wait %+zat_b52_actor_go_offline%
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
[remark@guard_second_sound] ;Ïðîãàíÿåì èãðîêà äâà
target = story | actor
anim = threat_na
snd_anim_sync = true
meet = no_meet
on_info = {!actor_enemy} %=play_sound(zat_b52_port_bandits_after_pay_snd)%
on_signal = sound_end | remark@guard_last_sound_wait
on_info2 = {=dist_to_actor_ge(120)} walker@wait %+zat_b52_actor_go_offline%
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
[remark@guard_last_sound_wait] ;Ïðîãàíÿåì èãðîêà äâà æäåì
target = story | actor
anim = backoff
snd_anim_sync = true
meet = no_meet
on_info = {=actor_in_zone(zat_b52_smart_terrain_def)} remark@guard_last_sound
on_info2 = {=dist_to_actor_ge(120)} walker@wait %+zat_b52_actor_go_offline%
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
[remark@guard_last_sound] ;Ïðîãàíÿåì èãðîêà òðè
target = story | actor
anim = backoff2
snd_anim_sync = true
meet = no_meet
on_info = {!actor_enemy} %=play_sound(zat_b52_port_bandits_after_pay_snd)%
on_signal = sound_end | remark@end
on_info2 = {=dist_to_actor_ge(120)} walker@wait %+zat_b52_actor_go_offline%
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
[remark@end] ;Èãðîê íàäîåë - ñòðåëÿåì ïî íåìó
target = story | actor
anim = threat_na
snd_anim_sync = true
meet = no_meet
on_game_timer = 50 | walker@fight %=set_squad_enemy_to_actor(zat_b52_port_bandits)%
[death]
on_info = %+zat_b52_bandit_leader_is_dead%
;-------------------------------------Áðàòîê ðàç--------------------------------------------
[logic@port_bandit_2]
active = walker@wait_bandit_2
suitable = {!check_npc_name(zat_b52_port_bandit_1) =target_squad_name(zat_b52_port_bandits) -zat_b52_actor_go_offline} true
prior = 90
post_combat_time = 0, 0
[walker@wait_bandit_2] ;Æäåì èãðîêà
path_walk = port_bandit_2_walk_1
path_look = port_bandit_2_look_1
on_info = {+zat_b52_robbery_start -zat_b52_robbery_done} remark@wait_bandit_2_robbery
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
meet = no_meet
[remark@wait_bandit_2_robbery] ;Íàâîäèì ñòâîë íà èãðîêà
target = story | actor
anim = threat_na
meet = no_meet
on_info = {=dist_to_actor_ge(120) +zat_b52_robbery_done} walker@wait_bandit_2 %+zat_b52_actor_go_offline%
on_info2 = {+zat_b52_robbery_no} walker@wait_bandit_2
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
;-------------------------------------Áðàòîê äûâà--------------------------------------------
[logic@port_bandit_3]
active = walker@wait_bandit_3
suitable = {!check_npc_name(zat_b52_port_bandit_1) =target_squad_name(zat_b52_port_bandits) -zat_b52_actor_go_offline} true
prior = 90
post_combat_time = 0, 0
[walker@wait_bandit_3] ;Æäåì èãðîêà
path_walk = port_bandit_3_walk_1
path_look = port_bandit_3_look_1
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
on_info = {+zat_b52_robbery_start -zat_b52_robbery_done} remark@wait_bandit_3_robbery
meet = no_meet
[remark@wait_bandit_3_robbery] ;Íàâîäèì ñòâîë íà èãðîêà
target = story | actor
anim = threat_na
meet = no_meet
on_info = {=dist_to_actor_ge(120) +zat_b52_robbery_done} walker@wait_bandit_3 %+zat_b52_actor_go_offline%
on_info2 = {+zat_b52_robbery_no} walker@wait_bandit_3
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
;-------------------------------------Áðàòîê òûðè--------------------------------------------
[logic@port_bandit_4]
active = walker@wait_bandit_4
suitable = {!check_npc_name(zat_b52_port_bandit_1) =target_squad_name(zat_b52_port_bandits) -zat_b52_actor_go_offline} true
prior = 90
post_combat_time = 0, 0
[walker@wait_bandit_4] ;Æäåì èãðîêà
path_walk = port_bandit_4_walk_1
path_look = port_bandit_4_look_1
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
on_info = {+zat_b52_robbery_start -zat_b52_robbery_done} remark@wait_bandit_4_robbery
meet = no_meet
[remark@wait_bandit_4_robbery] ;Íàâîäèì ñòâîë íà èãðîêà
target = story | actor
anim = threat_na
meet = no_meet
on_info = {=dist_to_actor_ge(120) +zat_b52_robbery_done} walker@wait_bandit_4 %+zat_b52_actor_go_offline%
on_info2 = {+zat_b52_robbery_no} walker@wait_bandit_4
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
;-------------------------------------Áðàòîê ÷åòûðè--------------------------------------------
[logic@port_bandit_5]
active = walker@wait_bandit_5
suitable = {!check_npc_name(zat_b52_port_bandit_1) =target_squad_name(zat_b52_port_bandits) -zat_b52_actor_go_offline} true
prior = 90
post_combat_time = 0, 0
[walker@wait_bandit_5] ;Æäåì èãðîêà
path_walk = port_bandit_5_walk_1
path_look = port_bandit_5_look_1
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false
on_info = {+zat_b52_robbery_start -zat_b52_robbery_done} remark@wait_bandit_5_robbery
meet = no_meet
[remark@wait_bandit_5_robbery] ;Íàâîäèì ñòâîë íà èãðîêà
target = story | actor
anim = threat_na
meet = no_meet
on_info = {=dist_to_actor_ge(120) +zat_b52_robbery_done} walker@wait_bandit_5 %+zat_b52_actor_go_offline%
on_info2 = {+zat_b52_robbery_no} walker@wait_bandit_5
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_name(zat_b38_stalker_cop_dead)} true, {=check_enemy_name(zat_b22_stalker_medic)} true, false