add game&rawdata

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

View file

@ -0,0 +1,68 @@
[anomal_zone]
layers_count = 2
respawn_tries = 2
max_artefacts = 3
;applying_force_xz = 200
;applying_force_y = 400
artefacts = af_cristall, af_fireball, af_dummy_glassbeads, af_eye, af_fire
start_artefact = af_eye
coeff = 3, 3, 2, 2, 1
;field_name = jup_b10_zone_field_thermal_average
artefact_ways = jup_b10_af_way_1, jup_b10_af_way_2, jup_b10_af_way_3
[mines_core]
jup_b10_zone_mine_thermal_average
jup_b10_zone_mine_thermal_average_0000
jup_b10_zone_mine_thermal_average_0001
jup_b10_zone_mine_thermal_average_0002
jup_b10_zone_mine_thermal_average_0003
jup_b10_zone_mine_thermal_average_0004
jup_b10_zone_mine_thermal_average_0005
jup_b10_zone_mine_thermal_average_0006
jup_b10_zone_mine_thermal_average_0007
jup_b10_zone_mine_thermal_average_0008
[layer_1]
mines_section = mines_layer_1
[mines_layer_1]:mines_core
jup_b10_zone_mine_thermal_average_0009
jup_b10_zone_mine_thermal_average_0010
jup_b10_zone_mine_thermal_average_0011
jup_b10_zone_mine_thermal_average_0012
jup_b10_zone_mine_thermal_average_0013
jup_b10_zone_mine_thermal_average_0014
jup_b10_zone_mine_thermal_average_0015
jup_b10_zone_mine_thermal_average_0016
jup_b10_zone_mine_thermal_average_0017
jup_b10_zone_mine_thermal_average_0018
jup_b10_zone_mine_thermal_average_0019
jup_b10_zone_mine_thermal_average_0020
jup_b10_zone_mine_thermal_average_0021
jup_b10_zone_mine_thermal_average_0022
jup_b10_zone_mine_thermal_average_0023
jup_b10_zone_mine_thermal_average_0024
[layer_2]
mines_section = mines_layer_2
[mines_layer_2]:mines_core
jup_b10_zone_mine_thermal_average_0025
jup_b10_zone_mine_thermal_average_0026
jup_b10_zone_mine_thermal_average_0027
jup_b10_zone_mine_thermal_average_0028
jup_b10_zone_mine_thermal_average_0029
jup_b10_zone_mine_thermal_average_0030
jup_b10_zone_mine_thermal_average_0031
jup_b10_zone_mine_thermal_average_0032
jup_b10_zone_mine_thermal_average_0033
jup_b10_zone_mine_thermal_average_0034
jup_b10_zone_mine_thermal_average_0035
jup_b10_zone_mine_thermal_average_0036
jup_b10_zone_mine_thermal_average_0037
jup_b10_zone_mine_thermal_average_0038
jup_b10_zone_mine_thermal_average_0039
jup_b10_zone_mine_thermal_average_0040
jup_b10_zone_mine_thermal_average_0041
jup_b10_zone_mine_thermal_average_0042

View file

@ -0,0 +1,18 @@
[anomal_zone]
layers_count = 2
respawn_tries = 0
max_artefacts = 0
artefacts = af_cristall
coeff = 1
field_name = jup_b1_zone_field_psychic_average
artefact_ways = jup_b211_af_way_1
[layer_1]
mines_section = mines_layer_1
[mines_layer_1]
[layer_2]
mines_section = mines_layer_2
[mines_layer_2]

View file

@ -0,0 +1,10 @@
[anomal_zone]
layers_count = 1
artefacts = af_cristall, af_fireball, af_dummy_glassbeads, af_eye, af_fire
start_artefact = af_dummy_glassbeads
coeff = 3, 3, 2, 2, 1
artefact_ways = jup_b200_art_way
applying_force_y = 10
respawn_tries = 1
max_artefacts = 1

View file

@ -0,0 +1,71 @@
[anomal_zone]
layers_count = 3
artefacts = af_blood, af_mincer_meat, af_soul, af_fuzz_kolobok, af_baloon, af_glass
start_artefact = af_soul
coeff = 3, 3, 2, 2, 1, 1
artefact_ways = jup_b201_art_walk
;field_name = jup_b201_zone_field_acidic_average
respawn_tries = 1
max_artefacts = 1
[layer_1]
mines_section = mines_layer_1
[mines_layer_1]
jup_b201_zone_mine_acidic_average
jup_b201_zone_mine_acidic_average_0000
jup_b201_zone_mine_acidic_average_0001
jup_b201_zone_mine_acidic_average_0002
jup_b201_zone_mine_acidic_average_0003
jup_b201_zone_mine_acidic_average_0004
jup_b201_zone_mine_acidic_average_0005
jup_b201_zone_mine_acidic_average_0006
jup_b201_zone_mine_acidic_average_0007
jup_b201_zone_mine_acidic_average_0008
jup_b201_zone_mine_acidic_average_0009
jup_b201_zone_mine_acidic_average_0010
jup_b201_zone_mine_acidic_average_0011
jup_b201_zone_mine_acidic_average_0012
jup_b201_zone_mine_acidic_average_0013
jup_b201_zone_mine_acidic_average_0014
jup_b201_zone_mine_acidic_average_0015
[layer_2]
mines_section = mines_layer_2
[mines_layer_2]
jup_b201_zone_mine_acidic_average_0016
jup_b201_zone_mine_acidic_average_0017
jup_b201_zone_mine_acidic_average_0018
jup_b201_zone_mine_acidic_average_0019
jup_b201_zone_mine_acidic_average_0020
jup_b201_zone_mine_acidic_average_0021
jup_b201_zone_mine_acidic_average_0022
jup_b201_zone_mine_acidic_average_0023
jup_b201_zone_mine_acidic_average_0024
jup_b201_zone_mine_acidic_average_0025
jup_b201_zone_mine_acidic_average_0026
jup_b201_zone_mine_acidic_average_0027
jup_b201_zone_mine_acidic_average_0028
jup_b201_zone_mine_acidic_average_0029
jup_b201_zone_mine_acidic_average_0030
[layer_3]
mines_section = mines_layer_3
[mines_layer_3]
jup_b201_zone_mine_acidic_average_0031
jup_b201_zone_mine_acidic_average_0032
jup_b201_zone_mine_acidic_average_0033
jup_b201_zone_mine_acidic_average_0034
jup_b201_zone_mine_acidic_average_0035
jup_b201_zone_mine_acidic_average_0036
jup_b201_zone_mine_acidic_average_0037
jup_b201_zone_mine_acidic_average_0038
jup_b201_zone_mine_acidic_average_0039
jup_b201_zone_mine_acidic_average_0040
jup_b201_zone_mine_acidic_average_0041
jup_b201_zone_mine_acidic_average_0042
jup_b201_zone_mine_acidic_average_0043
jup_b201_zone_mine_acidic_average_0044
jup_b201_zone_mine_acidic_average_0045

View file

@ -0,0 +1,106 @@
[anomal_zone]
layers_count = 2
respawn_tries = 2
max_artefacts = 3
;applying_force_xz = 200
;applying_force_y = 400
artefacts = af_blood, af_soul, af_baloon, af_glass
start_artefact = af_baloon
coeff = 3, 2, 1, 1
artefact_ways = jup_b206_af_way, jup_b206_af_way_2, jup_b206_af_way_3
[mines_core]
[layer_1]
mines_section = mines_layer_1
[mines_layer_1]:mines_core
;jup_b206_zone_mine_acidic_average_0005
jup_b206_zone_mine_acidic_average_0006
jup_b206_zone_mine_acidic_average_0007
jup_b206_zone_mine_acidic_average_0008
jup_b206_zone_mine_acidic_average_0009
jup_b206_zone_mine_acidic_average_0010
jup_b206_zone_mine_acidic_average_0011
jup_b206_zone_mine_acidic_average_0012
jup_b206_zone_mine_acidic_average_0013
jup_b206_zone_mine_acidic_average_0014
jup_b206_zone_mine_acidic_average_0015
jup_b206_zone_mine_acidic_average_0016
jup_b206_zone_mine_acidic_average_0017
jup_b206_zone_mine_acidic_average_0018
jup_b206_zone_mine_acidic_average_0019
jup_b206_zone_mine_acidic_average_0020
jup_b206_zone_mine_acidic_average_0021
jup_b206_zone_mine_acidic_average_0022
jup_b206_zone_mine_acidic_average_0023
jup_b206_zone_mine_acidic_average_0024
jup_b206_zone_mine_acidic_average_0025
jup_b206_zone_mine_acidic_average_0026
jup_b206_zone_mine_acidic_average_0027
jup_b206_zone_mine_acidic_average_0028
jup_b206_zone_mine_acidic_average_0029
jup_b206_zone_mine_acidic_average_0030
jup_b206_zone_mine_acidic_average_0031
jup_b206_zone_mine_acidic_average_0032
jup_b206_zone_mine_acidic_average_0033
jup_b206_zone_mine_acidic_average_0034
jup_b206_zone_mine_acidic_average_0035
jup_b206_zone_mine_acidic_average_0036
jup_b206_zone_mine_acidic_average_0037
jup_b206_zone_mine_acidic_average_0038
jup_b206_zone_mine_acidic_average_0039
jup_b206_zone_mine_acidic_average_0040
jup_b206_zone_mine_acidic_average_0041
jup_b206_zone_mine_acidic_average_0042
jup_b206_zone_mine_acidic_average_0043
jup_b206_zone_mine_acidic_average_0044
;jup_b206_zone_mine_acidic_average_0045
;jup_b206_zone_mine_acidic_average_0046
[layer_2]
mines_section = mines_layer_2
[mines_layer_2]:mines_core
;jup_b206_zone_mine_acidic_average_0005
jup_b206_zone_mine_acidic_average_0006
jup_b206_zone_mine_acidic_average_0007
jup_b206_zone_mine_acidic_average_0008
jup_b206_zone_mine_acidic_average_0009
jup_b206_zone_mine_acidic_average_0010
jup_b206_zone_mine_acidic_average_0011
jup_b206_zone_mine_acidic_average_0012
jup_b206_zone_mine_acidic_average_0013
jup_b206_zone_mine_acidic_average_0014
jup_b206_zone_mine_acidic_average_0015
jup_b206_zone_mine_acidic_average_0016
jup_b206_zone_mine_acidic_average_0017
jup_b206_zone_mine_acidic_average_0018
jup_b206_zone_mine_acidic_average_0019
jup_b206_zone_mine_acidic_average_0020
jup_b206_zone_mine_acidic_average_0021
jup_b206_zone_mine_acidic_average_0022
jup_b206_zone_mine_acidic_average_0023
jup_b206_zone_mine_acidic_average_0024
jup_b206_zone_mine_acidic_average_0025
jup_b206_zone_mine_acidic_average_0026
jup_b206_zone_mine_acidic_average_0027
jup_b206_zone_mine_acidic_average_0028
jup_b206_zone_mine_acidic_average_0029
jup_b206_zone_mine_acidic_average_0030
jup_b206_zone_mine_acidic_average_0031
jup_b206_zone_mine_acidic_average_0032
jup_b206_zone_mine_acidic_average_0033
jup_b206_zone_mine_acidic_average_0034
jup_b206_zone_mine_acidic_average_0035
jup_b206_zone_mine_acidic_average_0036
jup_b206_zone_mine_acidic_average_0037
jup_b206_zone_mine_acidic_average_0038
jup_b206_zone_mine_acidic_average_0039
jup_b206_zone_mine_acidic_average_0040
jup_b206_zone_mine_acidic_average_0041
jup_b206_zone_mine_acidic_average_0042
jup_b206_zone_mine_acidic_average_0043
jup_b206_zone_mine_acidic_average_0044
;jup_b206_zone_mine_acidic_average_0045
;jup_b206_zone_mine_acidic_average_0046

View file

@ -0,0 +1,32 @@
[anomal_zone]
layers_count = 2
artefacts = af_cristall, af_fireball, af_dummy_glassbeads, af_eye, af_fire, af_medusa, af_cristall_flower, af_night_star, af_vyvert, af_gravi, af_gold_fish
start_artefact = af_gravi
coeff = 3, 3, 2, 2, 1, 3, 3, 2, 2, 1, 1
artefact_ways = jup_b209_art_way, jup_b209_af_way_2, jup_b209_af_way_3
;field_name = jup_b209_zone_field_thermal_average
respawn_tries = 2
max_artefacts = 3
[layer_1]
mines_section = mines_layer_1
[mines_layer_1]
jup_b209_zone_mine_thermal_average_0000
jup_b209_zone_mine_thermal_average_0003
jup_b209_zone_mine_thermal_average_0004
jup_b209_zone_mine_thermal_average_0005
jup_b209_zone_mine_thermal_average_0007
jup_b209_zone_mine_thermal_average_0011
[layer_2]
mines_section = mines_layer_2
[mines_layer_2]
jup_b209_zone_mine_thermal_average_0001
jup_b209_zone_mine_thermal_average_0002
jup_b209_zone_mine_thermal_average_0006
jup_b209_zone_mine_thermal_average_0008
jup_b209_zone_mine_thermal_average_0009
jup_b209_zone_mine_thermal_average_0010

View file

@ -0,0 +1,53 @@
[anomal_zone]
layers_count = 2
respawn_tries = 2
max_artefacts = 3
;applying_force_xz = 200
;applying_force_y = 400
artefacts = af_blood, af_soul, af_baloon, af_glass
start_artefact = af_blood
coeff = 3, 2, 1, 1
;field_name = jup_b211_zone_field_acidic_average
artefact_ways = jup_b211_af_way_1, jup_b211_af_way_2, jup_b211_af_way_3
[mines_core]
jup_b211_zone_mine_acidic_average
jup_b211_zone_mine_acidic_average_0000
jup_b211_zone_mine_acidic_average_0001
jup_b211_zone_mine_acidic_average_0002
jup_b211_zone_mine_acidic_average_0003
jup_b211_zone_mine_acidic_average_0004
jup_b211_zone_mine_acidic_average_0005
jup_b211_zone_mine_acidic_average_0006
jup_b211_zone_mine_acidic_average_0007
[layer_1]
mines_section = mines_layer_1
[mines_layer_1]:mines_core
jup_b211_zone_mine_acidic_average_0008
jup_b211_zone_mine_acidic_average_0009
jup_b211_zone_mine_acidic_average_0010
jup_b211_zone_mine_acidic_average_0011
jup_b211_zone_mine_acidic_average_0012
jup_b211_zone_mine_acidic_average_0013
jup_b211_zone_mine_acidic_average_0014
jup_b211_zone_mine_acidic_average_0015
jup_b211_zone_mine_acidic_average_0016
jup_b211_zone_mine_acidic_average_0017
[layer_2]
mines_section = mines_layer_2
[mines_layer_2]:mines_core
jup_b211_zone_mine_acidic_average_0018
jup_b211_zone_mine_acidic_average_0019
jup_b211_zone_mine_acidic_average_0020
jup_b211_zone_mine_acidic_average_0021
jup_b211_zone_mine_acidic_average_0022
jup_b211_zone_mine_acidic_average_0023
jup_b211_zone_mine_acidic_average_0024
jup_b211_zone_mine_acidic_average_0025
jup_b211_zone_mine_acidic_average_0026
jup_b211_zone_mine_acidic_average_0027
jup_b211_zone_mine_acidic_average_0028

View file

@ -0,0 +1,10 @@
[anomal_zone]
layers_count = 1
respawn_tries = 1
max_artefacts = 1
;applying_force_xz = 200
;applying_force_y = 400
artefacts = af_electra_sparkler, af_electra_flash, af_electra_moonlight, af_dummy_battery, af_dummy_dummy, af_ice
start_artefact = af_dummy_battery
coeff = 3, 3, 2, 2, 1, 1
artefact_ways = jup_b214_af_way

View file

@ -0,0 +1,76 @@
[anomal_zone]
layers_count = 3
respawn_tries = 2
max_artefacts = 3
artefacts = af_blood, af_soul, af_baloon, af_glass
start_artefact = af_soul
coeff = 3, 2, 1, 1
artefact_ways = jup_b25_af_way_1, jup_b25_af_way_2, jup_b25_af_way_3
[mines_core]
jup_b25_zone_mine_acidic_average
jup_b25_zone_mine_acidic_average_0000
jup_b25_zone_mine_acidic_average_0001
jup_b25_zone_mine_acidic_average_0002
jup_b25_zone_mine_acidic_average_0003
jup_b25_zone_mine_acidic_average_0004
jup_b25_zone_mine_acidic_average_0005
jup_b25_zone_mine_acidic_average_0006
jup_b25_zone_mine_acidic_average_0007
jup_b25_zone_mine_acidic_average_0008
jup_b25_zone_mine_acidic_average_0009
jup_b25_zone_mine_acidic_average_0010
jup_b25_zone_mine_acidic_average_0011
jup_b25_zone_mine_acidic_average_0012
jup_b25_zone_mine_acidic_average_0013
jup_b25_zone_mine_acidic_average_0014
jup_b25_zone_mine_acidic_average_0015
jup_b25_zone_mine_acidic_average_0016
jup_b25_zone_mine_acidic_average_0017
jup_b25_zone_mine_acidic_average_0018
jup_b25_zone_mine_acidic_average_0019
jup_b25_zone_mine_acidic_average_0020
jup_b25_zone_mine_acidic_average_0021
[layer_1]
mines_section = mines_layer_1
[mines_layer_1]:mines_core
jup_b25_zone_mine_acidic_average_0022
jup_b25_zone_mine_acidic_average_0023
jup_b25_zone_mine_acidic_average_0024
jup_b25_zone_mine_acidic_average_0025
jup_b25_zone_mine_acidic_average_0026
[layer_2]
mines_section = mines_layer_2
[mines_layer_2]:mines_core
jup_b25_zone_mine_acidic_average_0027
jup_b25_zone_mine_acidic_average_0028
jup_b25_zone_mine_acidic_average_0029
jup_b25_zone_mine_acidic_average_0030
jup_b25_zone_mine_acidic_average_0031
jup_b25_zone_mine_acidic_average_0032
jup_b25_zone_mine_acidic_average_0033
jup_b25_zone_mine_acidic_average_0034
jup_b25_zone_mine_acidic_average_0035
jup_b25_zone_mine_acidic_average_0036
jup_b25_zone_mine_acidic_average_0037
[layer_3]
mines_section = mines_layer_3
[mines_layer_3]:mines_core
jup_b25_zone_mine_acidic_average_0038
jup_b25_zone_mine_acidic_average_0039
jup_b25_zone_mine_acidic_average_0040
jup_b25_zone_mine_acidic_average_0041
jup_b25_zone_mine_acidic_average_0042
jup_b25_zone_mine_acidic_average_0043
jup_b25_zone_mine_acidic_average_0044
jup_b25_zone_mine_acidic_average_0045
jup_b25_zone_mine_acidic_average_0046
jup_b25_zone_mine_acidic_average_0047
jup_b25_zone_mine_acidic_average_0048
jup_b25_zone_mine_acidic_average_0049

View file

@ -0,0 +1,23 @@
[anomal_zone]
layers_count = 1
respawn_tries = 1
max_artefacts = 2
;applying_force_xz = 200
;applying_force_y = 400
artefacts = af_electra_sparkler, af_electra_flash, af_electra_moonlight, af_dummy_battery, af_dummy_dummy, af_ice
start_artefact = af_electra_moonlight
coeff = 3, 3, 2, 2, 1, 1
artefact_ways = jup_b32_af_way, jup_b32_af_way_2
[mines_core]
jup_b32_zone_mine_electric_average
jup_b32_zone_mine_electric_average_0000
jup_b32_zone_mine_electric_average_0001
jup_b32_zone_mine_electric_average_0002
jup_b32_zone_mine_electric_average_0003
jup_b32_zone_mine_electric_average_0004
jup_b32_zone_mine_electric_average_0005
jup_b32_zone_mine_electric_average_0006
jup_b32_zone_mine_electric_average_0007
jup_b32_zone_mine_electric_average_0008
jup_b32_zone_mine_electric_average_0009

View file

@ -0,0 +1,9 @@
[anomal_zone]
layers_count = 1
respawn_tries = 2
max_artefacts = 3
;applying_force_xz = 200
;applying_force_y = 400
artefacts = af_cristall, af_fireball, af_dummy_glassbeads, af_eye, af_fire, af_electra_sparkler, af_electra_flash, af_electra_moonlight, af_dummy_battery, af_dummy_dummy, af_ice, af_medusa, af_cristall_flower, af_night_star, af_vyvert, af_gravi, af_gold_fish, af_blood, af_mincer_meat, af_soul, af_fuzz_kolobok, af_baloon, af_glass
coeff = 3, 3, 2, 2, 1, 3, 3, 2, 2, 1, 1, 3, 3, 2, 2, 1, 1, 3, 3, 2, 2, 1, 1
artefact_ways = jup_wa_way_1, jup_wa_way_2, jup_wa_way_3, jup_wa_way_4, jup_wa_way_6, jup_wa_way_7, jup_wa_way_8, jup_wa_way_9

View file

@ -0,0 +1,16 @@
[logic@jup_a10_bandit_guard_1]
suitable = {=target_squad_name(jup_a10_bandit_squad_3) !check_npc_name(jup_a10_bandit_leader)} true
prior = 100
active = walker@jup_a10_bandit_guard_1
[walker@jup_a10_bandit_guard_1]
path_walk = jup_a10_bandit_guard_1_walk
path_look = jup_a10_bandit_guard_1_look
on_info = {=surge_started} walker@surge
[walker@surge]
path_walk = bodyguard_1_walk
path_look = bodyguard_1_look
on_info = {=surge_complete} walker@jup_a10_bandit_guard_1

View file

@ -0,0 +1,16 @@
[logic@jup_a10_bandit_guard_2]
suitable = {=target_squad_name(jup_a10_bandit_squad_3) !check_npc_name(jup_a10_bandit_leader)} true
prior = 100
active = walker@jup_a10_bandit_guard_2
[walker@jup_a10_bandit_guard_2]
path_walk = jup_a10_bandit_guard_2_walk
path_look = jup_a10_bandit_guard_2_look
on_actor_dist_le = 20 | {=actor_has_weapon} remark
[remark]
anim = backoff2
target = story | actor
snd = jup_a10_bandits_warn
on_timer = 5000 | {-jup_a10_hit_bandit_guard_1} %=hit_npc_from_actor +jup_a10_hit_bandit_guard_1%
on_info = {!actor_has_weapon} walker@jup_a10_bandit_guard_2

View file

@ -0,0 +1,43 @@
[logic@jup_a10_bandit_guard_3]
suitable = {=target_squad_name(jup_a10_bandit_squad_3) !check_npc_name(jup_a10_bandit_leader)} true
prior = 100
active = walker@jup_a10_bandit_guard_3
[walker@jup_a10_bandit_guard_3]
path_walk = jup_a10_bandit_guard_3_walk
path_look = jup_a10_bandit_guard_3_look
on_actor_dist_le = 3 | {=actor_has_weapon} remark
on_info = {+jup_a10_guard_back} walker@1 %-jup_a10_guard_back%
on_info2 = {=surge_started} walker@surge
on_actor_in_zone = jup_surge_hide_a10 | walker@1
meet = meet
[walker@1]
path_walk = jup_a10_bandit_guard_3_back_walk
path_look = jup_a10_bandit_guard_3_back_look
on_actor_dist_le = 3 | {=actor_has_weapon} remark@2
on_actor_not_in_zone = jup_a10_guard_spase_restrictor | walker@jup_a10_bandit_guard_3
[remark]
anim = backoff2
target = story | actor
snd = jup_a10_bandits_warn
on_timer = 5000 | {-jup_a10_hit_bandit_guard_3} %=hit_npc_from_actor +jup_a10_hit_bandit_guard_3%
on_info = {!actor_has_weapon} walker@jup_a10_bandit_guard_3
[remark@2]
anim = backoff2
target = story | actor
snd = jup_a10_bandits_warn
on_timer = 5000 | {-jup_a10_hit_bandit_guard_3} %=hit_npc_from_actor +jup_a10_hit_bandit_guard_3%
on_info = {!actor_has_weapon} walker@1
[meet]
use = {=actor_enemy} false, {=actor_has_weapon} false ,true
meet_dialog = jup_a10_guard_dialog
[walker@surge]
path_walk = bodyguard_2_walk
path_look = bodyguard_2_look
on_info = {=surge_complete} walker@jup_a10_bandit_guard_3
on_info2 = {=surge_complete +jup_a10_guard_back} walker@1

View file

@ -0,0 +1,32 @@
[logic@jup_a10_bandit_leader]
suitable = {=check_npc_name(jup_a10_bandit_leader)}
prior = 100
active = animpoint@valet
on_death = death
[animpoint@valet]
cover_name = jup_a10_bandit_leader_sit_animpoint
avail_animations = animpoint_sit_normal
use_camp = false
on_info = {+jup_a10_krutoy_stvol_attack -jup_a10_hit_bandit_leader} %=hit_npc_from_actor +jup_a10_hit_bandit_leader%
;on_actor_dist_le = 10 | {=actor_has_weapon} remark
on_info2 = {=is_squad_enemy_to_actor(jup_a10_bandit_squad_3) +jup_a10_vano_give_task} %+jup_a10_kill_all_bandit%
meet = meet
[death]
on_info = %+jup_a10_death_0%
[meet]
snd_on_use = {-jup_a10_vano_give_task} meet_use_no_default, {+jup_a10_back_vano} meet_use_no_default
close_snd_hello = jup_a10_bandit_leader_hello
close_distance = 10
close_victim = actor
close_anim = nil
use = {=actor_enemy} false, {=actor_has_weapon} false, true
trade_enable = false
[animpoint@remark]
target = story | actor
snd = meet_hide_weapon
on_signal = sound_end | animpoint@valet
meet = no_meet

View file

@ -0,0 +1,20 @@
[logic]
active = ph_door@open
[ph_door@open]
locked = false
closed = false
snd_open_start = wood_small_open
snd_close_start = wood_small_close_start
snd_close_stop = wood_small_close_stop
on_use = ph_door@close
tip_close = tip_door_close
[ph_door@close]
locked = false
closed = true
snd_open_start = wood_small_open
snd_close_start = wood_small_close_start
snd_close_stop = wood_small_close_stop
on_use = ph_door@open
tip_open = tip_door_open

View file

@ -0,0 +1,16 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_a10_vano_give_task} sr_idle@2
on_info2 = {+jup_a10_run_quest} %+jup_b218_gather_squad +jup_a9_tech_conservation_info%
on_info3 = {!squad_exist(jup_a10_bandit_squad_3)} %+jup_a10_bandit_out%
[sr_idle@2]
;on_info = {+jup_a10_vano_give_task -jup_a10_bandit_take_money -jup_a10_bandit_take_all_money +jup_a10_death_0 +jup_a10_death_1 +jup_a10_death_2 +jup_a10_death_3} %+jup_a10_bandit_out +jup_a10_back_vano%
on_info = {+jup_a10_vano_give_task -jup_a10_bandit_take_money -jup_a10_bandit_take_all_money !squad_exist(jup_a10_bandit_squad_3)} %+jup_a10_bandit_out +jup_a10_back_vano%
on_info2 = {+jup_a10_back_vano} sr_idle@3
;on_info@3 = {=squad_exist(jup_a10_bandit_squad_3)} %+jup_a10_bandit_squad_death%
;on_game_timer = 259200 | sr_idle@3 %+jup_a10_fals -jup_a10_vano_give_task%
[sr_idle@3]

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {=is_squad_enemy_to_actor(jup_a10_bandit_squad)} sr_idle@2 %=set_squad_enemy_to_actor(jup_a10_bandit_squad_2) =set_squad_enemy_to_actor(jup_a10_bandit_squad_3)%
on_info2 = {=is_squad_enemy_to_actor(jup_a10_bandit_squad_2)} sr_idle@2 %=set_squad_enemy_to_actor(jup_a10_bandit_squad) =set_squad_enemy_to_actor(jup_a10_bandit_squad_3)%
on_info3 = {=is_squad_enemy_to_actor(jup_a10_bandit_squad_3)} sr_idle@2 %=set_squad_enemy_to_actor(jup_a10_bandit_squad) =set_squad_enemy_to_actor(jup_a10_bandit_squad_2)%
[sr_idle@2]

View file

@ -0,0 +1,36 @@
[logic@jup_a10_stalker_vano]
suitable = {=check_npc_name(jup_a10_stalker_vano)}
active = animpoint@vano
prior = 200
[animpoint@vano]
cover_name = jup_a6_animpoint_vano
use_camp = false
on_info = {+jup_a10_vano_give_task -give_jup_a10_task} %=give_task(jup_a10_actor_agree_back_vano_duties) +give_jup_a10_task%
on_info2 = {=dist_to_actor_ge(150) +jup_a10_fals} %=destroy_object(story:jup_a10_stalker_vano)%
on_info3 = {+jup_a10_vano_give_task_end -jup_a10_vano_max_simpathy} %=actor_friend +jup_a10_vano_max_simpathy%
on_actor_dist_le = 2 | {-jup_a10_vano_give_task -jup_a10_vano_need_help_infoporshin +jup_b217_welcome_tech_talked} %=play_sound(jup_a10_vano_need_help) +jup_a10_vano_need_help_infoporshin%
on_actor_dist_ge_nvis = 100 | {+jup_a10_vano_need_help_infoporshin} %-jup_a10_vano_need_help_infoporshin%
meet = meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
corpse_detection_enabled = false
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[meet]
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
close_distance = 0
far_distance = 0
snd_on_use = nil
use = {+jup_a10_fals} false, {=actor_enemy} false, true
allow_break = false
trade_enable = false
meet_dialog = jup_a10_vano_help_dialog
meet_on_talking = false

View file

@ -0,0 +1,36 @@
[logic@jup_a12_bandit_bodyguard_1]
active = walker@guard
prior = 150
suitable = {=check_npc_name(sim_default_bandit_1)} true
[walker@guard]
path_walk = bandit_bodyguard_1_walk
path_look = bandit_bodyguard_1_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true
meet = meet@guard
on_actor_in_zone = jup_a12_sr_bandit_bodyguard | {=actor_has_weapon} walker@threat
out_restr = jup_a12_sr_bandit_bodyguard
[meet@guard]
close_distance = 20
close_victim = actor
close_anim = guard
use = false
[walker@threat]
path_walk = bandit_bodyguard_1_walk
path_look = bandit_bodyguard_1_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true
meet = meet@threat
on_actor_in_zone = jup_a12_sr_bandit_bodyguard | {!actor_has_weapon} walker@guard
on_actor_not_in_zone = jup_a12_sr_bandit_bodyguard | walker@guard
on_game_timer = 50 | %+jup_a12_actor_enemy_to_bandits%
out_restr = jup_a12_sr_bandit_bodyguard
on_info = {-jup_a12_actor_enemy_to_bandits} %=play_sound(jup_a12_bandits_bodyguard_warning_actor)%
[meet@threat]
close_distance = 20
close_victim = actor
close_anim = {!actor_has_weapon} guard, {+jup_a12_actor_enemy_to_bandits} threat_fire, threat
far_snd = {!actor_has_weapon} nil, {+jup_a12_actor_enemy_to_bandits} nil, nil
use = false

View file

@ -0,0 +1,35 @@
[logic@jup_a12_bandit_bodyguard_2]
active = walker@guard
prior = 150
suitable = {=check_npc_name(sim_default_bandit_1)} true
[walker@guard]
path_walk = bandit_bodyguard_2_walk
path_look = bandit_bodyguard_2_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true
meet = meet@guard
on_actor_in_zone = jup_a12_sr_bandit_bodyguard | {=actor_has_weapon} walker@threat
out_restr = jup_a12_sr_bandit_bodyguard
[meet@guard]
close_distance = 20
close_victim = actor
close_anim = guard
use = false
[walker@threat]
path_walk = bandit_bodyguard_2_walk
path_look = bandit_bodyguard_2_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true
meet = meet@threat
on_actor_in_zone = jup_a12_sr_bandit_bodyguard | {!actor_has_weapon} walker@guard
on_actor_not_in_zone = jup_a12_sr_bandit_bodyguard | walker@guard
on_game_timer = 50 | %+jup_a12_actor_enemy_to_bandits%
out_restr = jup_a12_sr_bandit_bodyguard
[meet@threat]
close_distance = 20
close_victim = actor
close_anim = {!actor_has_weapon} guard, {+jup_a12_actor_enemy_to_bandits} threat_fire, threat
far_snd = {!actor_has_weapon} nil, {+jup_a12_actor_enemy_to_bandits} nil, nil
use = false

View file

@ -0,0 +1,46 @@
[logic@jup_a12_bandit_cashier]
active = walker@wait
prior = 200
on_death = death
suitable = {=check_npc_name(jup_a12_bandit_cashier) !surge_started} true
[walker@wait]
path_walk = bandit_cashier_wait_walk
path_look = bandit_cashier_wait_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true
on_info = {+jup_a12_stalker_prisoner_free -jup_a12_stalker_prisoner_dead} walker@get_payment_wait
on_info2 = {+jup_a12_stalker_prisoner_dead} walker@wait_after
meet = no_meet
[walker@get_payment_wait]
path_walk = bandit_cashier_get_payment_walk
path_look = bandit_cashier_get_payment_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true
on_actor_dist_le_nvis = 3 | %+jup_a12_bandit_payment_started%
on_info = {+jup_a12_bandit_payment_started -jup_a12_stalker_prisoner_dead} walker@get_payment
on_info2 = {+jup_a12_stalker_prisoner_dead} walker@wait_after
def_state_moving = rush
meet = no_meet
[walker@get_payment]
path_walk = bandit_cashier_get_payment_walk
path_look = bandit_cashier_get_payment_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true
meet = meet@get_payment
on_info = {+jup_a12_actor_did_not_pay_to_cashier} walker@wait_after %=actor_enemy%, {+jup_a12_actor_paid_to_cashier} walker@wait_after
on_info2 = {+jup_a12_stalker_prisoner_dead} walker@wait_after
[meet@get_payment]
use = {!actor_enemy -jup_a12_actor_paid_to_cashier -jup_a12_actor_did_not_pay_to_cashier} self, false
meet_dialog = jup_a12_bandit_payment_dialog
trade_enable = false
allow_break = false
[walker@wait_after]
path_walk = bandit_cashier_wait_walk
path_look = bandit_cashier_wait_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner)} true
meet = no_meet
[death]
on_info = {-jup_a12_actor_enemy_to_bandits +jup_a12_bandit_payment_started} %+jup_a12_bandit_cashier_dead =set_squad_neutral_to_actor(jup_a12_bandit_chief_squad) =set_squad_neutral_to_actor(jup_a12_bandit_cashier_squad) =set_squad_neutral_to_actor(jup_a12_bandit_guard_squad) =set_squad_neutral_to_actor(jup_a12_bandit_sim_squad)%, %+jup_a12_bandit_cashier_dead%

View file

@ -0,0 +1,66 @@
[logic@jup_a12_bandit_chief]
active = walker@bandit_chief_stand
suitable = {=check_npc_name(jup_a12_bandit_chief)} true
prior = 200
on_death = death
[walker@bandit_chief_stand]
path_walk = bandit_chief_stand_walk
path_look = bandit_chief_stand_look
def_state_standing = wait_na
combat_ignore_cond = true
meet = meet@bandit_chief_stand
on_info = {+jup_a12_chief_bandit_wait_threat_prisoner -jup_a12_stalker_prisoner_free} walker@wait_threat_prisoner, {+jup_a12_stalker_prisoner_dead} walker@stand, {+jup_a12_stalker_prisoner_free +jup_a12_stalker_prisoner_thanked_actor} walker@stand, {+jup_a12_actor_enemy_to_bandits -jup_a12_chief_bandit_wait_threat_prisoner} %+jup_a12_chief_bandit_wait_threat_prisoner%
[meet@bandit_chief_stand]
close_anim = wait_na
close_snd_hello = nil
close_snd_bye = nil
close_victim = actor
snd_on_use = nil
use = {!actor_enemy !actor_has_weapon} true, false
use_wpn = false
meet_dialog = jup_a12_bandit_chief_dialog
trade_enable = false
[walker@wait_threat_prisoner]
path_walk = bandit_chief_threat_prisoner_walk
path_look = bandit_chief_threat_prisoner_look
def_state_standing = threat_na
combat_ignore_cond = true
on_actor_in_zone = jup_a12_sr_threat_prisoner_zone | %+jup_a12_chief_bandit_threat_prisoner%
on_info = {+jup_a12_chief_bandit_threat_prisoner} walker@threat_prisoner
def_state_moving = rush
meet = no_meet
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@threat_prisoner]
path_walk = bandit_chief_threat_prisoner_walk
path_look = bandit_chief_threat_prisoner_look
combat_ignore_cond = true
def_state_standing = threat_na
on_info = {+jup_a12_chief_bandit_kill_prisoner} walker@kill_prisoner, {+jup_a12_stalker_prisoner_dead} walker@stand, %=play_sound(jup_a12_bandit_threat_to_prisoner)%
on_game_timer = 25 | %+jup_a12_chief_bandit_kill_prisoner%
def_state_moving = rush
meet = no_meet
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@kill_prisoner]
path_walk = bandit_chief_kill_prisoner_walk
path_look = bandit_chief_kill_prisoner_look
def_state_standing = threat_na
on_info = {+jup_a12_stalker_prisoner_dead} walker@stand
combat_ignore_cond = {!check_enemy_name(jup_a12_stalker_prisoner)} true
meet = no_meet
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@stand]
path_walk = bandit_chief_stand_walk
path_look = bandit_chief_stand_look
def_state_standing = wait_na
meet = meet@bandit_chief_stand
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true
out_restr = jup_a12_sr_bandit_bodyguard
[death]
on_info = %+jup_a12_bandit_out%

View file

@ -0,0 +1,37 @@
[logic@jup_a12_bandit_guard]
active = walker@bandit_guard_stand
suitable = {=check_npc_name(jup_a12_bandit_guard) !surge_started} true
prior = 200
on_hit = hit
on_death = death
[walker@bandit_guard_stand]
path_walk = bandit_guard_stand_walk
path_look = bandit_guard_stand_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {+jup_a12_bandit_guard_can_be_easily_killed -jup_a12_merc_attack_started} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
meet = meet@guard_base
on_info = {=dist_to_actor_le(15) +jup_a12_actor_paid_to_cashier -jup_a12_bandit_taunt} %+jup_a12_bandit_taunt =play_sound(jup_a12_bandit_say_jump)%
on_info2 = {+jup_a12_bandit_guard_killed =is_alive(jup_a12_bandit_guard)} %=kill_npc%
on_info3 = {-jup_a12_actor_has_pass_to_containers -jup_a12_actor_enemy_to_bandits =actor_in_zone(jup_a12_sr_containers_kampzone)} %+jup_a12_actor_enemy_to_bandits%
on_info4 = {-jup_a12_actor_has_pass_to_containers -jup_a12_bandits_warning_actor =dist_to_actor_le(22)} %+jup_a12_bandits_warning_actor =play_sound(jup_a12_bandits_warning_actor)%
[meet@guard_base]
close_distance = 15
close_anim = {+jup_a12_actor_has_pass_to_containers} guard_na, threat_na
close_victim = actor
close_snd_hello = nil
close_snd_bye = nil
far_distance = 45
far_anim = {+jup_a12_actor_has_pass_to_containers} guard, threat
far_victim = actor
far_snd = nil
snd_on_use = nil
use = {!actor_enemy !actor_has_weapon} true
meet_dialog = {+jup_a12_actor_has_pass_to_containers} jup_a12_bandit_guard_visited, jup_a12_bandit_guard_start
trade_enable = false
[hit]
on_info = {+jup_a12_bandit_guard_can_be_easily_killed =is_alive -jup_a12_merc_attack_started -jup_a12_bandit_guard_killed} %+jup_a12_bandit_guard_killed%
[death]
on_info = %+jup_a12_bandit_guard_killed%

View file

@ -0,0 +1,283 @@
[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@jup_a12_merc_cover]
active = walker@merc_cover_start
post_combat_time = 0, 0
suitable = {=check_npc_name(jup_a12_merc_cover) -jup_a12_merc_attack_started} true
prior = 200
[walker@merc_cover_start]
path_walk = kamp_walker_walk
path_look = kamp_walker_look
def_state_moving = assault
on_info = {+jup_a12_mercs_go_to_positions} walker@cover_walk_to_position %=play_sound(jup_a12_merc_lets_go)%, {!is_jup_a12_mercs_time} %+jup_a12_mercs_go_to_positions%
on_info2 = {-jup_a12_merc_cover_in_merc_camp} %+jup_a12_merc_cover_in_merc_camp%
meet = meet@cover_merc_kamp_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, {!actor_enemy =dist_to_actor_ge(50)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[meet@cover_merc_kamp_meet]
meet_dialog = jup_a12_stalker_give_art_dialog
trade_enable = false
snd_on_use = {=is_wounded} nil, {=actor_enemy} nil, {=has_enemy} meet_use_no_fight, {=actor_has_weapon} meet_use_no_weapon
use = {=is_wounded} false, {=actor_enemy} false, {=has_enemy} false, {=actor_has_weapon} false, true
[walker@cover_walk_to_position]
path_walk = cover_to_position_walk
path_look = cover_to_position_look
def_state_moving = assault
on_signal = path_end | walker@cover_walk_on_position %+jup_a12_merc_cover_to_position =play_sound(jup_a12_merc_cover_us) +jup_a12_bandit_guard_can_be_easily_killed%
on_info = {+jup_a12_merc_cover_to_position} walker@cover_walk_on_position
team = jup_a12_mercs
meet = no_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@cover_walk_on_position]
path_walk = cover_on_position_walk
path_look = cover_on_position_look
def_state_moving = sneak_run
on_signal = path_end | %+jup_a12_merc_cover_on_position =play_sound(jup_a12_merc_ready)%
on_info = {+jup_a12_merc_cover_on_position} remark@cover_attack_guard
team = jup_a12_mercs2
meet = no_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[remark@cover_attack_guard]
anim = threat_fire
on_game_timer = 100 | %+jup_a12_bandit_guard_killed%
target = story | jup_a12_bandit_guard
on_info = {+jup_a12_merc_attack_started} %=play_sound(jup_a12_merc_attack_started)%
combat_ignore_cond = true
meet = no_meet
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[logic@jup_a12_merc_cover_attack]
active = camper@cover_attack_containers
post_combat_time = 0, 0
suitable = {=check_npc_name(jup_a12_merc_cover) +jup_a12_merc_attack_started} true
prior = 200
[camper@cover_attack_containers]
path_walk = merc_cover_attack_containers_walk
path_look = merc_cover_attack_containers_look
def_state_moving = assault_fire
def_state_moving_fire = assault_fire
no_retreat = true
on_signal = path_end | walker@cover_walk_to_hangar %+jup_a12_merc_cover_attacked_containers%
on_info = {+jup_a12_merc_cover_attacked_containers} walker@cover_walk_to_hangar
on_info2 = {+jup_a12_merc_attack_started -jup_a12_merc_attack_started_sound} %+jup_a12_merc_attack_started_sound =play_sound(jup_a12_merc_attack_started)%
meet = no_meet
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@cover_walk_to_hangar]
path_walk = merc_cover_walk_to_hangar_walk
path_look = merc_cover_walk_to_hangar_look
on_actor_dist_ge_nvis = 150 | %+jup_a12_mercs_done%
on_info = {+jup_a12_mercs_done} walker@cover_merc_kamp_after
meet = meet@merc_hangar_meet
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
def_state_moving = assault
[meet@merc_hangar_meet]
meet_dialog = jup_a12_merc_done_dialog
trade_enable = false
snd_on_use = {=is_wounded} nil, {=actor_enemy} nil, {=has_enemy} meet_use_no_fight, {=actor_has_weapon} meet_use_no_weapon
use = {=is_wounded} false, {=actor_enemy} false, {=has_enemy} false, {=actor_has_weapon} false, true
[walker@cover_merc_kamp_after]
path_walk = merc_kamp_walker_walk
path_look = merc_kamp_walker_look
def_state_moving = assault
meet = no_meet
wounded = wounded@no_wound
[logic@jup_a12_merc_left]
active = walker@merc_left_start
post_combat_time = 0, 0
suitable = {=target_squad_name(jup_a12_merc_stalker_squad) !check_npc_name(jup_a12_merc_cover) -jup_a12_merc_attack_started} true
prior = 200
[walker@merc_left_start]
path_walk = kamp_walker_1_walk
path_look = kamp_walker_look
def_state_moving = assault
on_info = {+jup_a12_mercs_go_to_positions} walker@left_walk_to_position
meet = no_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, {!actor_enemy =dist_to_actor_ge(50)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@left_walk_to_position]
path_walk = left_to_position_walk
path_look = left_to_position_look
def_state_moving = assault
on_signal = path_end | walker@left_walk_on_position %+jup_a12_merc_left_to_position +jup_a12_bandit_guard_can_be_easily_killed%
on_info = {+jup_a12_merc_left_to_position} walker@left_walk_on_position
team = jup_a12_mercs
meet = no_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@left_walk_on_position]
path_walk = left_on_position_walk
path_look = left_on_position_look
def_state_moving = sneak_run
on_signal = on_pos | %=play_sound(jup_a12_merc_ready)%
on_info = {+jup_a12_merc_attack_started} %=play_sound(jup_a12_merc_attack_started)%
team = jup_a12_mercs2
meet = no_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[logic@jup_a12_merc_left_attack]
active = camper@left_attack_containers
post_combat_time = 0, 0
suitable = {=target_squad_name(jup_a12_merc_stalker_squad) !check_npc_name(jup_a12_merc_cover) +jup_a12_merc_attack_started} true
prior = 200
[camper@left_attack_containers]
path_walk = merc_left_attack_containers_walk
path_look = merc_left_attack_containers_look
def_state_moving = assault_fire
def_state_moving_fire = assault_fire
no_retreat = true
on_signal = path_end | walker@left_walk_to_hangar %+jup_a12_merc_left_attacked_containers%
on_info = {+jup_a12_merc_left_attacked_containers} walker@left_walk_to_hangar
meet = no_meet
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@left_walk_to_hangar]
path_walk = merc_left_walk_to_hangar_walk
path_look = merc_left_walk_to_hangar_look
on_actor_dist_ge_nvis = 150 | %+jup_a12_mercs_done%
on_info = {+jup_a12_mercs_done} walker@left_merc_kamp_after
meet = meet@merc_hangar_meet
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
def_state_moving = assault
[walker@left_merc_kamp_after]
path_walk = merc_kamp_walker_1_walk
path_look = merc_kamp_walker_look
def_state_moving = assault
meet = no_meet
wounded = wounded@no_wound
[logic@jup_a12_merc_right]
active = walker@merc_right_start
post_combat_time = 0, 0
suitable = {=target_squad_name(jup_a12_merc_stalker_squad) !check_npc_name(jup_a12_merc_cover) -jup_a12_merc_attack_started} true
prior = 200
[walker@merc_right_start]
path_walk = kamp_walker_2_walk
path_look = kamp_walker_look
def_state_moving = assault
on_info = {+jup_a12_mercs_go_to_positions} walker@right_walk_to_position
meet = no_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, {!actor_enemy =dist_to_actor_ge(50)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@right_walk_to_position]
path_walk = right_to_position_walk
path_look = right_to_position_look
def_state_moving = assault
on_signal = path_end | walker@right_walk_on_position %+jup_a12_merc_right_to_position +jup_a12_bandit_guard_can_be_easily_killed%
on_info = {+jup_a12_merc_right_to_position} walker@right_walk_on_position
team = jup_a12_mercs
meet = no_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@right_walk_on_position]
path_walk = right_on_position_walk
path_look = right_on_position_look
def_state_moving = sneak_run
on_signal = on_pos | %=play_sound(jup_a12_merc_ready)%
on_info = {+jup_a12_merc_attack_started} %=play_sound(jup_a12_merc_attack_started)%
team = jup_a12_mercs2
meet = no_meet
combat_ignore_condition = {=check_enemy_smart(jup_a12)} true, false
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[logic@jup_a12_merc_right_attack]
active = camper@right_attack_containers
post_combat_time = 0, 0
suitable = {=target_squad_name(jup_a12_merc_stalker_squad) !check_npc_name(jup_a12_merc_cover) +jup_a12_merc_attack_started} true
prior = 200
[camper@right_attack_containers]
path_walk = merc_right_attack_containers_walk
path_look = merc_right_attack_containers_look
def_state_moving = assault_fire
def_state_moving_fire = assault_fire
no_retreat = true
on_signal = path_end | %+jup_a12_merc_right_attacked_containers%
on_info = {+jup_a12_merc_right_attacked_containers} walker@right_walk_to_hangar
meet = no_meet
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@right_walk_to_hangar]
path_walk = merc_right_walk_to_hangar_walk
path_look = merc_right_walk_to_hangar_look
on_actor_dist_ge_nvis = 150 | %+jup_a12_mercs_done%
on_info = {+jup_a12_mercs_done} walker@right_merc_kamp_after
meet = meet@merc_hangar_meet
gather_items_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
def_state_moving = assault
[walker@right_merc_kamp_after]
path_walk = merc_kamp_walker_2_walk
path_look = merc_kamp_walker_look
def_state_moving = assault
meet = no_meet
wounded = wounded@no_wound

View file

@ -0,0 +1,301 @@
[logic@walker_1]
active = walker@walker_1
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 65
[logic@walker_2]
active = walker@walker_2
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 65
[logic@walker_3]
active = walker@walker_3
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 65
[logic@walker_4]
active = walker@walker_4
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 65
[logic@walker_5]
active = walker@walker_5
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 65
[logic@walker_6]
active = walker@walker_6
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 65
[logic@guard_1]
active = camper@guard_1
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 75
[logic@guard_2]
active = camper@guard_2
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 75
[logic@guard_3]
active = camper@guard_3
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 75
[logic@guard_4]
active = camper@guard_4
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 75
[logic@guard_5]
active = camper@guard_5
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 90
[logic@guard_6]
active = camper@guard_6
suitable = {-jup_a12_actor_enemy_to_bandits} true
prior = 90
[walker@walker_1]
path_walk = walker_1_walk
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
on_info = {=actor_enemy} camper@walker_1_wait, {+jup_a12_actor_enemy_to_bandits} camper@walker_1_wait
[camper@walker_1_wait]
path_walk = walker_1_camper
path_look = stalker_prisoner_battle_look
def_state_standing = hide_na
radius = 0
on_info = {!actor_enemy} walker@walker_1
[walker@walker_2]
path_walk = walker_2_walk
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
on_info = {=actor_enemy} camper@walker_2_wait, {+jup_a12_actor_enemy_to_bandits} camper@walker_2_wait
[camper@walker_2_wait]
path_walk = walker_2_camper
path_look = stalker_prisoner_battle_look
def_state_standing = hide_na
radius = 0
on_info = {!actor_enemy} walker@walker_2
[walker@walker_3]
path_walk = walker_3_walk
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
[walker@walker_4]
path_walk = walker_4_walk
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
[walker@walker_5]
path_walk = walker_5_walk
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
[walker@walker_6]
path_walk = walker_6_walk
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
[camper@guard_1]
path_walk = guard_1_walk
path_look = guard_1_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
meet = meet@guard_base
on_info = {=dist_to_actor_le(15) +jup_a12_actor_paid_to_cashier -jup_a12_bandit_taunt} %+jup_a12_bandit_taunt =play_sound(jup_a12_bandit_say_jump)%
on_actor_in_zone = jup_a12_sr_containers_kampzone | {-jup_a12_actor_has_pass_to_containers} %+jup_a12_actor_enemy_to_bandits%
on_info2 = {-jup_a12_actor_has_pass_to_containers -jup_a12_bandits_warning_actor =dist_to_actor_le(22)} %+jup_a12_bandits_warning_actor =play_sound(jup_a12_bandits_warning_actor)%
[meet@guard_base]
close_distance = 15
close_anim = {+jup_a12_actor_has_pass_to_containers} guard_na, threat_na
close_victim = actor
close_snd_hello = nil
close_snd_bye = nil
far_distance = 45
far_anim = {+jup_a12_actor_has_pass_to_containers} guard, threat
far_victim = actor
far_snd = nil
snd_on_use = nil
use = {!actor_enemy !actor_has_weapon} true
meet_dialog = {+jup_a12_actor_has_pass_to_containers} jup_a12_bandit_guard_visited, jup_a12_bandit_guard_start
trade_enable = false
[camper@guard_2]
path_walk = guard_2_walk
path_look = guard_2_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
meet = meet@guard_base
on_info = {=dist_to_actor_le(15) +jup_a12_actor_paid_to_cashier -jup_a12_bandit_taunt} %+jup_a12_bandit_taunt =play_sound(jup_a12_bandit_say_jump)%
on_actor_in_zone = jup_a12_sr_containers_kampzone | {-jup_a12_actor_has_pass_to_containers} %+jup_a12_actor_enemy_to_bandits%
on_info2 = {-jup_a12_actor_has_pass_to_containers -jup_a12_bandits_warning_actor =dist_to_actor_le(22)} %+jup_a12_bandits_warning_actor =play_sound(jup_a12_bandits_warning_actor)%
[camper@guard_3]
path_walk = guard_3_walk
path_look = guard_3_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
meet = meet@guard_base
on_info = {=dist_to_actor_le(15) +jup_a12_actor_paid_to_cashier -jup_a12_bandit_taunt} %+jup_a12_bandit_taunt =play_sound(jup_a12_bandit_say_jump)%
on_actor_in_zone = jup_a12_sr_containers_kampzone | {-jup_a12_actor_has_pass_to_containers} %+jup_a12_actor_enemy_to_bandits%
on_info2 = {-jup_a12_actor_has_pass_to_containers -jup_a12_bandits_warning_actor =dist_to_actor_le(22)} %+jup_a12_bandits_warning_actor =play_sound(jup_a12_bandits_warning_actor)%
[camper@guard_4]
path_walk = guard_4_walk
path_look = guard_4_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner) -jup_a12_actor_enemy_to_bandits} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
meet = meet@guard_base
on_info = {=dist_to_actor_le(15) +jup_a12_actor_paid_to_cashier -jup_a12_bandit_taunt} %+jup_a12_bandit_taunt =play_sound(jup_a12_bandit_say_jump)%
on_actor_in_zone = jup_a12_sr_containers_kampzone | {-jup_a12_actor_has_pass_to_containers} %+jup_a12_actor_enemy_to_bandits%
on_info2 = {-jup_a12_actor_has_pass_to_containers -jup_a12_bandits_warning_actor =dist_to_actor_le(22)} %+jup_a12_bandits_warning_actor =play_sound(jup_a12_bandits_warning_actor)%
[camper@guard_5]
path_walk = guard_5_walk
path_look = guard_5_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner)} true, {!actor_in_zone(jup_a12_sr_prisoner_guards)} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
meet = meet@guard_base
on_info = {=dist_to_actor_le(15) +jup_a12_actor_paid_to_cashier -jup_a12_bandit_taunt} %+jup_a12_bandit_taunt =play_sound(jup_a12_bandit_say_jump)%
on_actor_in_zone = jup_a12_sr_containers_kampzone | {-jup_a12_actor_has_pass_to_containers} %+jup_a12_actor_enemy_to_bandits%
on_info2 = {-jup_a12_actor_has_pass_to_containers -jup_a12_bandits_warning_actor =dist_to_actor_le(22)} %+jup_a12_bandits_warning_actor =play_sound(jup_a12_bandits_warning_actor)%
[camper@guard_6]
path_walk = guard_6_walk
path_look = guard_6_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner)} true, {!actor_in_zone(jup_a12_sr_prisoner_guards)} true, {-jup_a12_merc_attack_started =check_enemy_smart(jup_a12_merc)} true, false
meet = meet@guard_base
on_info = {=dist_to_actor_le(15) +jup_a12_actor_paid_to_cashier -jup_a12_bandit_taunt} %+jup_a12_bandit_taunt =play_sound(jup_a12_bandit_say_jump)%
on_actor_in_zone = jup_a12_sr_containers_kampzone | {-jup_a12_actor_has_pass_to_containers} %+jup_a12_actor_enemy_to_bandits%
on_info2 = {-jup_a12_actor_has_pass_to_containers -jup_a12_bandits_warning_actor =dist_to_actor_le(22)} %+jup_a12_bandits_warning_actor =play_sound(jup_a12_bandits_warning_actor)%
[walker@jup_a12_surge_def]
;path_walk = surge_hide_1_walk
;path_look = surge_hide_1_look
combat_ignore_cond = {=check_enemy_name(jup_a12_stalker_prisoner)} true, {-jup_a12_actor_enemy_to_bandits} true, false
on_info = {-jup_a12_actor_enemy_to_bandits -jup_a12_actor_has_pass_to_containers =actor_in_zone(jup_a12_sr_bandit_bodyguard)} %+jup_a12_actor_enemy_to_bandits%
def_state_standing = sit
def_state_moving = assault
[logic@jup_a12_surge_def]
;active = walker@jup_a12_surge_work_1
suitable = {=check_npc_name(bandit) =surge_started} true
prior = 100
[logic@jup_a12_surge_work_1]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_1
[logic@jup_a12_surge_work_2]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_2
[logic@jup_a12_surge_work_3]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_3
[logic@jup_a12_surge_work_4]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_4
[logic@jup_a12_surge_work_5]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_5
[logic@jup_a12_surge_work_6]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_6
[logic@jup_a12_surge_work_7]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_7
[logic@jup_a12_surge_work_8]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_8
[logic@jup_a12_surge_work_9]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_9
[logic@jup_a12_surge_work_10]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_10
[logic@jup_a12_surge_work_11]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_11
[logic@jup_a12_surge_work_12]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_12
[logic@jup_a12_surge_work_13]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_13
[logic@jup_a12_surge_work_14]:logic@jup_a12_surge_def
active = walker@jup_a12_surge_work_14
[walker@jup_a12_surge_work_1]:walker@jup_a12_surge_def
path_walk = surge_hide_1_walk
path_look = surge_hide_1_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_2]:walker@jup_a12_surge_def
path_walk = surge_hide_2_walk
path_look = surge_hide_1_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_3]:walker@jup_a12_surge_def
path_walk = surge_hide_3_walk
path_look = surge_hide_1_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_4]:walker@jup_a12_surge_def
path_walk = surge_hide_4_walk
path_look = surge_hide_1_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_5]:walker@jup_a12_surge_def
path_walk = surge_hide_5_walk
path_look = surge_hide_5_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_6]:walker@jup_a12_surge_def
path_walk = surge_hide_6_walk
path_look = surge_hide_5_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_7]:walker@jup_a12_surge_def
path_walk = surge_hide_7_walk
path_look = surge_hide_5_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_8]:walker@jup_a12_surge_def
path_walk = surge_hide_8_walk
path_look = surge_hide_5_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_9]:walker@jup_a12_surge_def
path_walk = surge_hide_9_walk
path_look = surge_hide_9_look
[walker@jup_a12_surge_work_10]:walker@jup_a12_surge_def
path_walk = surge_hide_10_walk
path_look = surge_hide_9_look
[walker@jup_a12_surge_work_11]:walker@jup_a12_surge_def
path_walk = surge_hide_11_walk
path_look = surge_hide_9_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_12]:walker@jup_a12_surge_def
path_walk = surge_hide_12_walk
path_look = surge_hide_12_look
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@jup_a12_surge_work_13]:walker@jup_a12_surge_def
path_walk = surge_hide_13_walk
path_look = surge_hide_13_look
[walker@jup_a12_surge_work_14]:walker@jup_a12_surge_def
path_walk = surge_hide_14_walk
path_look = surge_hide_13_look

View file

@ -0,0 +1,32 @@
[logic]
active = sr_idle@warning
[sr_idle@warning]
on_info = {+jup_a12_bandits_warning_actor} sr_idle@timer
on_info2 = {+jup_a12_actor_has_pass_to_containers} sr_idle@wait
on_info3 = {+jup_a12_actor_enemy_to_bandits} sr_idle@wait
[sr_idle@timer]
on_game_timer = 100 | sr_idle@warning %-jup_a12_bandits_warning_actor%
on_info = {+jup_a12_actor_has_pass_to_containers} sr_idle@wait
on_info2 = {+jup_a12_actor_enemy_to_bandits} sr_idle@wait
[sr_idle@wait]
on_info = {+jup_a12_actor_did_not_pay_to_cashier} %+jup_a12_actor_enemy_to_bandits%
on_info2 = {+jup_a12_actor_paid_to_cashier} sr_idle@end
on_info3 = {=is_squad_enemy_to_actor(jup_a12_bandit_cashier_squad)} %+jup_a12_actor_enemy_to_bandits%
on_info4 = {+jup_a12_actor_enemy_to_bandits} sr_idle@after %=set_squad_enemy_to_actor(jup_a12_bandit_guard_squad) =set_squad_enemy_to_actor(jup_a12_bandit_chief_squad) =set_squad_enemy_to_actor(jup_a12_bandit_cashier_squad) =set_squad_enemy_to_actor(jup_a12_bandit_sim_squad)%
on_info5 = {+jup_a12_stalkers_on_base} sr_idle@nil, {+jup_a12_stalker_prisoner_dead} sr_idle@nil
on_info6 = {-jup_a12_gave_artefact_for_hostage -jup_a12_stalker_prisoner_dead +jup_a12_stalker_prisoner_free !talking} %+jup_a12_gave_artefact_for_hostage =scenario_autosave(st_save_jup_a12_gave_artefact_for_hostage)%
[sr_idle@end]
on_info = {+jup_a12_actor_enemy_to_bandits} sr_idle@after %=set_squad_enemy_to_actor(jup_a12_bandit_guard_squad) =set_squad_enemy_to_actor(jup_a12_bandit_chief_squad) =set_squad_enemy_to_actor(jup_a12_bandit_cashier_squad) =set_squad_enemy_to_actor(jup_a12_bandit_sim_squad)%
on_info2 = {-jup_a12_actor_enemy_to_bandits =is_squad_enemy_to_actor(jup_a12_bandit_cashier_squad)} %+jup_a12_actor_enemy_to_bandits%
on_info3 = {+jup_a12_stalkers_on_base} sr_idle@nil, {+jup_a12_stalker_prisoner_dead} sr_idle@nil
[sr_idle@after]
on_info = {+jup_a12_actor_enemy_to_bandits +jup_a12_actor_choose_ransom -jup_a12_bandit_payment_started} %+jup_a12_actor_switched_from_ransom_to_power -jup_a12_actor_choose_self_or_ransom -jup_a12_actor_choose_ransom +jup_a12_actor_choose_power +jup_a12_actor_is_ready%
on_info2 = {-jup_a12_actor_is_ready +jup_a12_stalker_prisoner_free_dialog_done} %+jup_a12_actor_is_ready%
on_info3 = {+jup_a12_stalkers_on_base} sr_idle@nil, {+jup_a12_stalker_prisoner_dead} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,11 @@
[logic]
active = sr_idle@wait
[sr_idle@wait]
on_info = {+jup_a12_mercs_go_to_positions} sr_light@off
[sr_light@off]
light_on = false
on_info = {+pri_a12_stalker_prisoner_free} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,19 @@
[logic]
active = sr_idle@wait_for_task
[sr_idle@wait_for_task]
on_info = {+jup_a12_mercs_go_to_positions +jup_a12_actor_choose_power -jup_a12_met_with_liberators} %+jup_a12_met_with_liberators =scenario_autosave(st_save_jup_a12_met_with_liberators)%
on_info2 = {+jup_a12_mercs_go_to_positions +jup_a12_actor_choose_power +jup_a12_met_with_liberators} sr_idle@wait_for_attack_start
on_info3 = {+jup_a12_stalkers_on_base} sr_idle@nil, {+jup_a12_stalker_prisoner_dead} sr_idle@nil
on_info4 = {-jup_a12_mercs_go_to_positions =is_squad_enemy_to_actor(jup_a12_merc_stalker_squad)} %+jup_a12_mercs_go_to_positions%
on_info5 = {-jup_a12_mercs_go_to_positions +jup_a12_mercs_spawned !squad_exist(jup_a12_merc_stalker_squad)} %+jup_a12_mercs_go_to_positions%
[sr_idle@wait_for_attack_start]
on_info = {+jup_a12_bandit_guard_killed} sr_idle@wait_for_attack_end %+jup_a12_merc_attack_started =set_squad_enemy_to_actor(jup_a12_bandit_guard_squad)%
on_info2 = {+jup_a12_actor_enemy_to_bandits} sr_idle@wait_for_attack_end %+jup_a12_merc_attack_started%
[sr_idle@wait_for_attack_end]
on_info = {+jup_a12_mercs_done} sr_idle@nil, {+pri_a12_stalker_prisoner_free} sr_idle@nil
on_info2 = {+jup_a12_merc_attack_started =dist_to_story_obj_ge(jup_a12_stalker_prisoner:225)} sr_idle@nil %+jup_a12_stalker_prisoner_dead%, {+jup_a12_merc_attack_started =dist_to_story_obj_ge(jup_a12_stalker_prisoner:175)} %=play_sound(jup_a12_stalkers_to_actor_came_back)%
[sr_idle@nil]

View file

@ -0,0 +1,17 @@
[logic]
active = sr_idle@wait_for_spawn
[sr_idle@wait_for_spawn]
on_info = {=is_jup_a12_mercs_time +jup_a12_actor_choose_power -pri_a12_stalker_prisoner_free -jup_a12_actor_switched_from_ransom_to_power} sr_idle@spawn, {+pri_a12_stalker_prisoner_free} sr_idle@nil
on_info2 = {-jup_a12_spawn_merc_squad !actor_in_zone(jup_a12_sr_merc_kamp)} %+jup_a12_spawn_merc_squad%
on_info3 = {+jup_a12_spawn_merc_squad =actor_in_zone(jup_a12_sr_merc_kamp)} %-jup_a12_spawn_merc_squad%
[sr_idle@spawn]
on_info = {-jup_a12_spawn_merc_squad !actor_in_zone(jup_a12_sr_merc_kamp)} %+jup_a12_spawn_merc_squad%
on_info2 = {+jup_a12_spawn_merc_squad =actor_in_zone(jup_a12_sr_merc_kamp)} %-jup_a12_spawn_merc_squad =clear_smart_terrain(jup_sim_2) =clear_smart_terrain(jup_sim_11) =clear_smart_terrain(jup_sim_12)%
on_info3 = sr_idle@transfer %=create_squad(jup_a12_merc_stalker_squad:jup_a12_merc) +jup_a12_mercs_spawned%
[sr_idle@transfer]
on_info = {+jup_a12_actor_choose_power +jup_a12_actor_is_ready +jup_a12_merc_cover_in_merc_camp} sr_idle@nil %=relocate_item(af_soul:jup_a12_stalker_assaulter:jup_a12_merc_cover)%
[sr_idle@nil]

View file

@ -0,0 +1,43 @@
[logic]
active = sr_idle@task
[sr_idle@task]
on_info = {-jup_a12_task_given +jup_a12_actor_choose_self -jup_a12_stalker_prisoner_dead} sr_idle@wait %+jup_a12_actor_choose_self_or_ransom +jup_a12_task_given =give_task(jup_a12_free_prisoner)%
on_info2 = {-jup_a12_task_given +jup_a12_actor_choose_power -jup_a12_stalker_prisoner_dead} sr_idle@wait %+jup_a12_task_given =give_task(jup_a12_free_prisoner)%
on_info3 = {-jup_a12_task_given +jup_a12_actor_choose_ransom -jup_a12_stalker_prisoner_dead} sr_idle@wait %+jup_a12_actor_choose_self_or_ransom +jup_a12_task_given =give_task(jup_a12_free_prisoner)%
on_info4 = {-jup_a12_task_given +pri_a12_stalker_prisoner_free -jup_a12_stalker_prisoner_dead} sr_idle@wait %+jup_a12_task_given =give_task(jup_a12_free_prisoner)%
on_info5 = {+jup_a12_stalker_prisoner_dead} sr_idle@remove_prisoner %+jup_a12_stalker_prisoner_dead +pri_a12_stalker_prisoner_free +jup_a12_stalker_prisoner_free%
;on_game_timer = 172800 | {-pri_a12_stalker_prisoner_free} sr_idle@remove_prisoner %+jup_a12_stalker_prisoner_dead +pri_a12_stalker_prisoner_free +jup_a12_stalker_prisoner_free%
[sr_idle@wait]
on_info = {+jup_a12_actor_guided_base} sr_idle@start %-jup_a12_ui%
on_info2 = {+jup_a12_stalker_prisoner_cheats_to_base -jup_a12_stalkers_on_base} sr_idle@start
on_info3 = {+jup_a12_stalkers_on_base} sr_idle@clean_up
;on_game_timer = 172800 | {-pri_a12_stalker_prisoner_free} sr_idle@remove_prisoner %+jup_a12_stalker_prisoner_dead%
[sr_idle@start]
on_info = {+jup_a12_actor_guided_base} sr_idle@teleport %=run_postprocess(fade_in) =disable_ui%
on_info2 = {-jup_a12_actor_guided_base} sr_idle@teleport
[sr_idle@teleport]
on_game_timer = 20 | {+jup_a12_actor_guided_base} sr_idle@switch %=run_postprocess(black:8510:true) =teleport_squad(jup_a12_prisoner:jup_a6_spawn_point)%, {-jup_a12_actor_guided_base} sr_idle@switch %=teleport_squad(jup_a12_prisoner:jup_a6_spawn_point)%
[sr_idle@switch]
on_info = {+jup_a12_actor_guided_base} sr_idle@out %=teleport_actor(jup_actor_arrive_walk:jup_actor_arrive_look) =forward_game_time(2)%
on_info2 = {-jup_a12_actor_guided_base} sr_idle@out
[sr_idle@out]
on_game_timer = 30 | %+jup_a12_ui%
on_info = {+jup_a12_ui +jup_a12_actor_guided_base} sr_idle@clean_up %=stop_postprocess(8510) =enable_ui%
on_info2 = {+jup_a12_stalker_prisoner_cheats_to_base -jup_a12_actor_guided_base} sr_idle@clean_up
[sr_idle@clean_up]
on_info = {+jup_b6_prisoner_employed =dist_to_story_obj_ge(jup_a12_stalker_squad:35)} sr_idle@nil %=remove_squad(jup_b6_stalker_exprisoner_squad) =remove_squad(jup_a12_prisoner) +jup_b6_exprisoner_work_on_sci%
[sr_idle@remove_prisoner]
on_info = {=squad_exist(jup_a12_prisoner)} sr_idle@nil %=remove_squad(jup_a12_prisoner) +jup_a12_task_done%, sr_idle@nil %+jup_a12_task_done%
[sr_idle@nil]
on_info = {+jup_a12_actor_enemy_to_bandits} sr_idle@zero %=set_squad_enemy_to_actor(jup_a12_bandit_guard_squad) =set_squad_enemy_to_actor(jup_a12_bandit_chief_squad) =set_squad_enemy_to_actor(jup_a12_bandit_cashier_squad) =set_squad_enemy_to_actor(jup_a12_bandit_sim_squad)%
[sr_idle@zero]

View file

@ -0,0 +1,80 @@
[logic@jup_a12_stalker_assaulter]
active = animpoint@stand_start
suitable = {=check_npc_name(jup_a12_stalker_assaulter)} true
prior = 200
[animpoint@argue]
cover_name = jup_a6_animp_assaulter
avail_animations = animpoint_stay_table
use_camp = false
on_signal = sound_end | {-jup_a12_stalker_diplomat_argued -jup_a12_stalker_assaulter_argued} %+jup_a12_stalker_assaulter_argued%
on_info = {+jup_a12_stalker_assaulter_1_argue -jup_a12_stalker_assaulter_argued} %=play_sound(jup_a12_stalker_assaulter_1_argue)%
on_info2 = {+jup_a12_stalker_assaulter_2_argue -jup_a12_stalker_assaulter_argued} %=play_sound(jup_a12_stalker_assaulter_2_argue)%
on_info3 = {+jup_a12_stalker_assaulter_3_argue -jup_a12_stalker_assaulter_argued} %=play_sound(jup_a12_stalker_assaulter_3_argue)%
on_info4 = {!actor_in_zone(jup_a12_sr_stalkers_argue)} animpoint@stand_start %-jup_a12_stalker_assaulter_argued -jup_a12_stalker_assaulter_1_argue -jup_a12_stalker_assaulter_2_argue -jup_a12_stalker_assaulter_3_argue%
on_info5 = {+jup_a12_stalker_assaulter_told_story} animpoint@stand_start
on_info6 = {+jup_a12_stalker_diplomat_argued} animpoint@stand_start %-jup_a12_stalker_assaulter_argued -jup_a12_stalker_assaulter_1_argue -jup_a12_stalker_assaulter_2_argue -jup_a12_stalker_assaulter_3_argue%
meet = meet@stand_start_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[animpoint@stand_start]
cover_name = jup_a6_animp_assaulter
avail_animations = animpoint_stay_table
use_camp = false
meet = meet@stand_start_meet
on_info = {-jup_a12_stalker_assaulter_1_argue -jup_a12_stalker_assaulter_2_argue -jup_a12_stalker_assaulter_3_argue ~33} %+jup_a12_stalker_assaulter_1_argue%
on_info2 = {-jup_a12_stalker_assaulter_1_argue -jup_a12_stalker_assaulter_2_argue -jup_a12_stalker_assaulter_3_argue ~66} %+jup_a12_stalker_assaulter_2_argue%
on_info3 = {-jup_a12_stalker_assaulter_1_argue -jup_a12_stalker_assaulter_2_argue -jup_a12_stalker_assaulter_3_argue} %+jup_a12_stalker_assaulter_3_argue%
on_info4 = {-jup_a12_stalker_assaulter_has_af} %+jup_a12_stalker_assaulter_has_af =give_items(af_gold_fish)%
on_info5 = {+jup_a12_stalker_prisoner_free} animpoint@stand_after
on_game_timer = 130 | {-jup_a12_stalker_assaulter_told_story +jup_b217_welcome_tech_talked =actor_in_zone(jup_a12_sr_stalkers_argue)} animpoint@argue %-jup_a12_stalker_diplomat_argued%
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[meet@stand_start_meet]
close_snd_hello = nil
close_snd_bye = nil
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
use = {=actor_enemy} false, true
allow_break = false
trade_enable = false
meet_dialog = {-jup_a12_actor_is_ready} jup_a12_stalkers_choose_dialog, {+jup_a12_actor_is_ready} jup_a12_stalker_assaulter_after_scene_dialog
meet_on_talking = false
[animpoint@stand_after]
cover_name = jup_a6_animp_assaulter
use_camp = false
meet = meet@after_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[meet@after_meet]
close_snd_hello = nil
close_snd_bye = nil
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
use = {=actor_enemy} false, true
allow_break = false
trade_enable = false
meet_dialog = jup_a12_stalker_assaulter_after_scene_dialog
meet_on_talking = false

View file

@ -0,0 +1,66 @@
[logic@jup_a12_stalker_diplomat]
active = animpoint@stand_start
suitable = {=check_npc_name(jup_a12_stalker_diplomat)} true
prior = 200
[animpoint@argue]
cover_name = jup_a6_animp_diplomat
avail_animations = animpoint_stay_table
use_camp = false
on_signal = sound_end | animpoint@stand_start %-jup_a12_stalker_assaulter_argued +jup_a12_stalker_diplomat_argued%
on_info = {+jup_a12_stalker_assaulter_1_argue} %=play_sound(jup_a12_stalker_diplomat_1_argue)%
on_info2 = {+jup_a12_stalker_assaulter_2_argue} %=play_sound(jup_a12_stalker_diplomat_2_argue)%
on_info3 = {+jup_a12_stalker_assaulter_3_argue} %=play_sound(jup_a12_stalker_diplomat_3_argue)%
on_info4 = {!actor_in_zone(jup_a12_sr_stalkers_argue)} animpoint@stand_start %-jup_a12_stalker_assaulter_argued +jup_a12_stalker_diplomat_argued%
on_info5 = {+jup_a12_stalker_assaulter_told_story} animpoint@stand_start
meet = meet@stand_start_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[animpoint@stand_start]
cover_name = jup_a6_animp_diplomat
avail_animations = animpoint_stay_table
use_camp = false
on_info = {-jup_a12_stalker_assaulter_told_story +jup_b217_welcome_tech_talked =actor_in_zone(jup_a12_sr_stalkers_argue) +jup_a12_stalker_assaulter_argued} animpoint@argue
on_info2 = {+jup_a12_stalker_prisoner_free} animpoint@stand_after
meet = meet@stand_start_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[animpoint@stand_after]
cover_name = jup_a6_animp_diplomat
use_camp = false
meet = meet@stand_start_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[meet@stand_start_meet]
close_snd_hello = nil
close_snd_bye = nil
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
close_distance = 0
far_distance = 0
allow_break = false
trade_enable = false
snd_on_use = {-jup_a12_stalkers_on_base} jup_a12_stalker_diplomat_no_talk
use = {=actor_enemy} false, {+pri_a12_stalker_prisoner_free} true, {+jup_a12_stalkers_on_base} true, false
meet_dialog = jup_a12_stalker_diplomat_after_scene_dialog
meet_on_talking = false

View file

@ -0,0 +1,370 @@
[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@jup_a12_stalker_prisoner]
active = walker@stand_prisoner
on_hit = hit
on_death = death
suitable = {=check_npc_name(jup_a12_stalker_prisoner) -jup_a12_stalker_prisoner_free_dialog_done} true
prior = 200
post_combat_time = 0, 0
[walker@stand_prisoner]
path_walk = stalker_prisoner_stand_prisoner_walk
path_look = stalker_prisoner_stand_prisoner_look
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
meet = no_meet
on_info = {+jup_a12_stalker_prisoner_free} walker@stand_up %-jup_a12_prisoner_invul%, {+jup_a12_bandit_out +jup_a12_actor_choose_power} walker@stand_up %+jup_a12_prisoner_free_with_stalkers -jup_a12_prisoner_invul%, {+jup_a12_bandit_out} walker@stand_up %+jup_a12_stalker_prisoner_free -jup_a12_prisoner_invul%, {+jup_a12_chief_bandit_kill_prisoner} remark@get_killed %-jup_a12_prisoner_invul%, {+jup_a12_stalker_prisoner_dead} %=kill_npc%
on_info2 = {=actor_in_zone(jup_a12_sr_threat_prisoner_zone)} walker@stand_prisoner_true
on_info3 = {!npc_in_zone(jup_a12_sr_threat_prisoner_zone)} %=teleport_npc(jup_a12_stalker_prisoner_stand_prisoner_walk)%
on_info4 = {-jup_a12_prisoner_invul} %+jup_a12_prisoner_invul%
invulnerable = true
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_a12_sr_threat_prisoner_zone
[walker@stand_prisoner_true]
path_walk = stalker_prisoner_stand_prisoner_walk
path_look = stalker_prisoner_stand_prisoner_look
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
meet = no_meet
on_info = {=quest_npc_enemy_actor(jup_a12_stalker_prisoner)} walker@quick_get_out_of_base %+jup_a12_actor_enemy_to_bandits +jup_a12_stalker_prisoner_says_we_can_run_from_here%
on_info2 = {+jup_a12_stalker_prisoner_free} walker@stand_up, {+jup_a12_bandit_out +jup_a12_actor_choose_power} walker@stand_up %+jup_a12_prisoner_free_with_stalkers%, {+jup_a12_bandit_out} walker@stand_up %+jup_a12_stalker_prisoner_free%, {+jup_a12_chief_bandit_kill_prisoner} remark@get_killed, {+jup_a12_stalker_prisoner_dead} %=kill_npc%
on_info3 = {!actor_in_zone(jup_a12_sr_threat_prisoner_zone)} walker@stand_prisoner
on_info4 = {+jup_a12_prisoner_invul} %-jup_a12_prisoner_invul%
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_a12_sr_threat_prisoner_zone
wounded = wounded@no_wound
[remark@get_killed]
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
meet = no_meet
on_info = {+jup_a12_bandit_out +jup_a12_actor_choose_power} walker@stand_up %+jup_a12_prisoner_free_with_stalkers%, {+jup_a12_bandit_out} walker@stand_up %+jup_a12_stalker_prisoner_free%
anim = prisoner
target = story | jup_a12_bandit_chief
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_a12_sr_threat_prisoner_zone
wounded = wounded@no_wound
[walker@stand_up]
path_walk = stalker_prisoner_stand_up_walk
path_look = stalker_prisoner_stand_up_look
combat_ignore_cond = {!actor_enemy} true, false
combat_ignore_keep_when_attacked = true
meet = no_meet
on_game_timer = 50 | %+jup_a12_stalker_prisoner_stood_up +pri_a12_stalker_prisoner_free +jup_a12_actor_is_ready%
on_info = {+jup_a12_stalker_prisoner_stood_up +jup_a12_actor_enemy_to_bandits} walker@hide_until_walk_out, {+jup_a12_stalker_prisoner_stood_up -jup_a12_actor_enemy_to_bandits} walker@out_of_prison
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_a12_sr_threat_prisoner_zone
wounded = wounded@no_wound
[walker@hide_until_walk_out]
path_walk = stalker_prisoner_hide_until_walk_out_walk
path_look = stalker_prisoner_hide_until_walk_out_look
on_info = {+jup_a12_stalker_prisoner_hide_end} walker@out_of_containers %+jup_a12_stalker_prisoner_wait_for_dialog =set_squad_goodwill(jup_a12_prisoner:friend)%
on_info2 = {=actor_enemy} walker@quick_get_out_of_base
on_info3 = {=dist_to_actor_ge(120)} %+jup_a12_stalker_prisoner_hide_end%
on_info4 = %=play_sound(jup_a12_stalker_prisoner_thanks_actor)%
combat_ignore_cond = {!actor_enemy} true, false
combat_ignore_keep_when_attacked = true
meet = meet@hide_until_walk_out_meet
def_state_standing = hide_na
help_wounded_enabled = false
out_restr = jup_a12_sr_threat_prisoner_zone
wounded = wounded@no_wound
[meet@hide_until_walk_out_meet]
close_victim = actor
close_anim = nil
meet_dialog = jup_a12_stalker_prisoner_hide_until_walk_out_dialog
trade_enable = false
snd_on_use = nil
close_snd_hello = nil
close_snd_bye = nil
use = {=is_wounded} false, {=actor_enemy} false, true
[walker@out_of_prison]
path_walk = stalker_prisoner_thank_to_actor_walk
path_look = stalker_prisoner_thank_to_actor_look
combat_ignore_cond = {!actor_enemy} true, {-jup_a12_actor_enemy_to_bandits} true, false
combat_ignore_keep_when_attacked = true
meet = no_meet
def_state_moving = run
on_signal = path_end | %+jup_a12_stalker_prisoner_out_of_prison%
on_info = {+jup_a12_stalker_prisoner_out_of_prison} remark@thank_to_actor, {+jup_a12_stalker_prisoner_hit_by_actor} walker@quick_get_out_of_base
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[remark@thank_to_actor]
target = story | actor
on_signal = sound_end | %+jup_a12_stalker_prisoner_wait_for_dialog%
on_info = %=play_sound(jup_a12_stalker_prisoner_thanks_actor)%
on_info2 = {+jup_a12_stalker_prisoner_wait_for_dialog} walker@thank_to_actor
combat_ignore_cond = {!actor_enemy} true, {-jup_a12_actor_enemy_to_bandits} true, false
combat_ignore_keep_when_attacked = true
meet = no_meet
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@thank_to_actor]
path_walk = stalker_prisoner_thank_to_actor_walk
path_look = stalker_prisoner_thank_to_actor_look
combat_ignore_cond = {!actor_enemy} true, {-jup_a12_actor_enemy_to_bandits} true, false
combat_ignore_keep_when_attacked = true
def_state_moving = run
on_game_timer = 300 | %+jup_a12_stalker_prisoner_thanked_actor%
on_info = {+jup_a12_stalker_prisoner_thanked_actor} walker@out_of_hangar %=set_squad_goodwill(jup_a12_prisoner:1000)%, {+jup_a12_stalker_prisoner_hit_by_actor} walker@quick_get_out_of_base, {+jup_a12_actor_did_not_pay_to_cashier} %+jup_a12_stalker_prisoner_thanked_actor +jup_a12_stalker_prisoner_out_of_hangar%
meet = meet@thank_to_actor
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[meet@thank_to_actor]
close_snd_hello = nil
close_snd_bye = nil
close_victim = actor
close_anim = wait_na
meet_dialog = jup_a12_stalker_prisoner_thank_bandits_base_dialog
trade_enable = false
snd_on_use = nil
use = {=is_wounded} false, {=actor_enemy} false, {=has_enemy} false, {=actor_has_weapon} false, true
[walker@out_of_hangar]
path_walk = stalker_prisoner_out_of_hangar_walk
path_look = stalker_prisoner_out_of_hangar_look
combat_ignore_cond = {!actor_enemy} true, {-jup_a12_actor_enemy_to_bandits} true, false
combat_ignore_keep_when_attacked = true
def_state_moving = assault
on_signal = path_end | %+jup_a12_stalker_prisoner_out_of_hangar%
on_info = {+jup_a12_bandit_out} walker@out_of_containers %+jup_a12_stalker_prisoner_out_of_hangar%
on_info2 = {+jup_a12_bandit_cashier_dead} walker@quick_get_out_of_base
on_info3 = {+jup_a12_stalker_prisoner_out_of_hangar +jup_a12_actor_paid_to_cashier} walker@out_of_containers
on_info4 = {+jup_a12_actor_did_not_pay_to_cashier} walker@hide %+jup_a12_stalker_prisoner_out_of_hangar =disable_memory_object%
on_info5 = {+jup_a12_stalker_prisoner_hit_by_actor} walker@quick_get_out_of_base
on_info6 = {+jup_a12_stalker_prisoner_out_of_hangar !is_alive(jup_a12_bandit_cashier)} walker@out_of_containers
meet = no_meet
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@hide]
path_walk = stalker_prisoner_battle_walk
path_look = stalker_prisoner_battle_look
combat_ignore_cond = {!actor_enemy} true, false
combat_ignore_keep_when_attacked = true
def_state_moving = sprint
def_state_standing = hide_na
meet = meet@hide_until_walk_out_meet
out_restr = jup_a12_sr_prisoner_hide
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
on_info = {+jup_a12_stalker_prisoner_hide_end} walker@out_of_containers %=set_squad_goodwill(jup_a12_prisoner:friend)%
on_info2 = {=actor_enemy} walker@quick_get_out_of_base
on_info3 = {=dist_to_actor_ge(120)} %+jup_a12_stalker_prisoner_hide_end%
on_info4 = {=has_enemy} %=disable_memory_object%
wounded = wounded@no_wound
[walker@quick_get_out_of_base]
path_walk = merc_stalker_prisoner_out_of_containers_walk
path_look = merc_stalker_prisoner_out_of_containers_look
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
def_state_moving = sprint
on_signal = path_end | %+jup_a12_stalker_prisoner_out_of_containers%
on_info = {+jup_a12_stalker_prisoner_out_of_containers} walker@out_of_containers
;on_info2 = {-jup_a12_stalker_prisoner_says_we_can_run_from_here} %+jup_a12_stalker_prisoner_says_we_can_run_from_here =play_sound(jup_a12_stalker_prisoner_says_we_can_run_from_here)%
on_info3 = {-jup_a12_stalker_prisoner_out_of_containers =npc_in_zone(jup_a12_sr_containers_warnzone)} %+jup_a12_stalker_prisoner_out_of_containers%
meet = no_meet
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[walker@out_of_containers]
path_walk = merc_stalker_prisoner_out_of_containers_walk
path_look = merc_stalker_prisoner_out_of_containers_look
combat_ignore_cond = {!actor_enemy} true, {-jup_a12_actor_enemy_to_bandits} true, false
combat_ignore_keep_when_attacked = true
def_state_moving = assault
on_signal = path_end | %+jup_a12_stalker_prisoner_out_of_containers%
on_info = {-jup_a12_stalker_prisoner_free_dialog_done +jup_a12_stalker_prisoner_hit_by_actor} %+jup_a12_stalker_prisoner_free_dialog_done%
on_info2 = {-jup_a12_stalker_prisoner_free_dialog_done =actor_enemy} %+jup_a12_stalker_prisoner_free_dialog_done%
on_info3 = {-jup_a12_stalker_prisoner_out_of_containers =npc_in_zone(jup_a12_sr_containers_warnzone)} %+jup_a12_stalker_prisoner_out_of_containers%
meet = meet@going_out_of_containers_meet
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[meet@going_out_of_containers_meet]
close_snd_hello = nil
close_snd_bye = nil
close_victim = nil
close_distance = 0
far_distance = 0
meet_dialog = {+jup_a12_stalker_prisoner_out_of_containers} jup_a12_stalker_prisoner_free_dialog, jup_a12_stalker_prisoner_thank_bandits_base_dialog
trade_enable = false
allow_break = false
snd_on_use = nil
use = {=is_wounded} false, {=actor_enemy} false, {=has_enemy} false, {=actor_has_weapon} false, true
[hit]
on_info = {+jup_a12_prisoner_invul}, {-jup_a12_stalker_prisoner_free -jup_a12_prisoner_free_with_stalkers -jup_a12_stalker_prisoner_dead} %+jup_a12_stalker_prisoner_dead =kill_npc%
[death]
on_info = %+jup_a12_stalker_prisoner_dead +pri_a12_stalker_prisoner_free +jup_a12_stalker_prisoner_free%
[logic@jup_a12_prisoner_free]
active = walker@already_out_of_containers
on_hit = hit
on_death = death
suitable = {=check_npc_name(jup_a12_stalker_prisoner)} true
prior = 200
post_combat_time = 0, 0
[walker@already_out_of_containers]
path_walk = stalker_prisoner_out_of_containers_walk
path_look = stalker_prisoner_out_of_containers_look
combat_ignore_cond = {!actor_enemy} true, {-jup_a12_actor_enemy_to_bandits} true, false
combat_ignore_keep_when_attacked = true
def_state_moving = assault
on_signal = path_end | %+jup_a12_stalker_prisoner_out_of_containers%
;on_game_timer = 1200 | %+jup_a12_stalker_prisoner_free_dialog_done%
on_info = {-jup_a12_stalker_prisoner_free_dialog_done +jup_a12_stalker_prisoner_hit_by_actor} %+jup_a12_stalker_prisoner_free_dialog_done%
on_info2 = {-jup_a12_stalker_prisoner_free_dialog_done =actor_enemy} %+jup_a12_stalker_prisoner_free_dialog_done%
on_info3 = {+jup_a12_stalker_prisoner_out_of_containers =dist_to_actor_le(10)} remark@out_of_containers
on_info4 = {+jup_a12_stalker_prisoner_free_dialog_done} walker@get_out_far_away
on_info5 = {-jup_a12_stalker_prisoner_out_of_containers =npc_in_zone(jup_a12_sr_containers_warnzone)} %+jup_a12_stalker_prisoner_out_of_containers%
on_info6 = {-jup_a12_stalker_prisoner_free_dialog_done =dist_to_actor_ge(75)} %+jup_a12_stalker_prisoner_free_dialog_done%
meet = meet@going_out_of_containers_meet
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[remark@out_of_containers]
target = story | actor
on_info = %=play_sound(jup_a12_stalkers_to_actor_meet_on_base)%
on_info2 = {+jup_a12_stalker_prisoner_free_dialog_done} walker@get_out_far_away
on_info3 = {-jup_a12_stalker_prisoner_free_dialog_done =dist_to_actor_ge(75)} %+jup_a12_stalker_prisoner_free_dialog_done%
combat_ignore_cond = {!actor_enemy} true, {-jup_a12_actor_enemy_to_bandits} true, false
combat_ignore_keep_when_attacked = true
meet = meet@out_of_containers_meet
;on_game_timer = 300 | %+jup_a12_stalker_prisoner_free_dialog_done%
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[meet@out_of_containers_meet]
close_snd_hello = nil
close_snd_bye = nil
close_victim = actor
close_anim = wait_na
meet_dialog = {+jup_a12_stalker_prisoner_out_of_containers} jup_a12_stalker_prisoner_free_dialog, jup_a12_stalker_prisoner_thank_bandits_base_dialog
trade_enable = false
allow_break = false
snd_on_use = nil
use = {=is_wounded} false, {=actor_enemy} false, {=has_enemy} false, {=dist_to_actor_le(3) +jup_a12_stalker_prisoner_out_of_containers -jup_a12_stalker_prisoner_free_dialog_done !actor_has_weapon} self, {!actor_enemy =actor_has_weapon} true, true
[walker@get_out_far_away]
path_walk = stalker_prisoner_base_walk
combat_ignore_cond = {!actor_enemy} true, {=check_enemy_smart(jup_a12)} true, false
combat_ignore_keep_when_attacked = true
def_state_moving = assault
on_info = {-jup_a12_stalkers_on_base =npc_in_zone(jup_a6_sr_light)} %+jup_a12_stalkers_on_base +jup_a12_stalker_prisoner_cheats_to_base%
on_info2 = {-jup_a12_stalker_prisoner_cheats_to_base -jup_a12_actor_guided_base =dist_to_actor_ge(100)} %+jup_a12_stalker_prisoner_cheats_to_base%
on_info3 = {!has_enemy =dist_to_actor_le(5)} remark@wait_while_walking
meet = meet@out_of_containers_meet
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_a6_sr_noweap
wounded = wounded@no_wound
[remark@wait_while_walking]
target = story | actor
combat_ignore_cond = {!actor_enemy} true, {-jup_a12_actor_enemy_to_bandits} true, false
combat_ignore_keep_when_attacked = true
meet = meet@out_of_containers_meet
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
on_info = {=has_enemy} walker@get_out_far_away, {=dist_to_actor_ge(5)} walker@get_out_far_away
wounded = wounded@no_wound
[logic@jup_a12_stalker_prisoner_base]
active = animpoint@go_to_base_done
on_hit = hit
on_death = death
suitable = {=check_npc_name(jup_a12_stalker_prisoner) +jup_a12_stalkers_on_base} true, {=check_npc_name(jup_a12_stalker_prisoner) +jup_a12_stalker_prisoner_cheats_to_base} true
prior = 200
post_combat_time = 0, 0
[animpoint@go_to_base_done]
reach_movement = assault
cover_name = jup_a6_animp_prisoner
use_camp = false
meet = meet@base_meet
on_info = {-jup_a12_stalkers_on_base =npc_in_zone(jup_a6_sr_light)} %+jup_a12_stalkers_on_base +jup_a12_stalker_prisoner_cheats_to_base%
on_info2 = {-jup_a12_stalker_prisoner_cheats_to_base -jup_a12_actor_guided_base =dist_to_actor_ge(100)} %+jup_a12_stalker_prisoner_cheats_to_base%
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded@no_wound
[meet@base_meet]
close_snd_hello = nil
close_snd_bye = nil
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
close_distance = 0
far_distance = 0
use = {=actor_enemy} false, true
allow_break = false
trade_enable = false
meet_dialog = jup_a12_stalker_prisoner_free_dialog
meet_on_talking = false

View file

@ -0,0 +1,90 @@
[logic@jup_a6_duty_leader]
suitable = {=check_npc_name(jup_a6_duty_leader)} true
prior = 200
active = walker@duty_leader
[animpoint@duty_leader]
cover_name = jup_a6_animpint_duty_leader
avail_animations = animpoint_sit_normal_no_rnd
use_camp = false
meet = meet@stand_base
on_info = {+jup_b207_duty_knows_about_depot -jup_b207_ui} remark@jup_b207_radio_talk
on_game_timer = 900 | walker@duty_leader
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
corpse_detection_enabled = false
gather_items_enabled = false
help_wounded_enabled = false
[walker@duty_leader]
path_walk = duty_leader_walk
path_look = duty_leader_look
def_state_standing = wait_na
def_state_moving = walk_noweap
meet = meet@walker
on_info = {+jup_b207_duty_knows_about_depot -jup_b207_ui} remark@jup_b207_radio_talk
on_game_timer = 900 | animpoint@duty_leader
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
corpse_detection_enabled = false
gather_items_enabled = false
help_wounded_enabled = false
use_camp = false
[meet@stand_base]
close_snd_hello = jup_a6_duty_leader_greeting
close_snd_bye = jup_a6_duty_leader_farewell
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
close_distance = 0
far_distance = 0
close_snd_distance = 3
use = {=actor_enemy} false, true
allow_break = false
trade_enable = false
meet_on_talking = false
[meet@walker]:meet@stand_base
close_anim = wait_na
close_victim = actor
close_distance = 3
[remark@jup_b207_radio_talk]
target = story | actor
anim = wait_rac
on_signal = anim_end | %=play_sound(jup_b207_duty_leader_about_depot)%
on_signal2 = sound_end | remark@jup_b207_radio_talk_done
meet = no_meet
;combat_ignore_cond = {=check_enemy_smart(jup_a6)} true
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[remark@jup_b207_radio_talk_done]
target = story | actor
anim = wait_na
on_signal = anim_end | %=play_sound(jup_b207_duty_leader_about_depot_after)%
on_signal2 = sound_end | %+jup_b207_ui -jup_b207_lock_door%
on_info = {+jup_b207_ui} animpoint@duty_leader
meet = no_meet
;combat_ignore_cond = {=check_enemy_smart(jup_a6)} true
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false

View file

@ -0,0 +1,89 @@
[logic@jup_a6_freedom_leader]
suitable = {=check_npc_name(jup_a6_freedom_leader)}
prior = 200
active = walker@freedom_leader
[animpoint@freedom_leader]
cover_name = jup_a6_animpint_freedom_leader
avail_animations = animpoint_sit_normal_no_rnd
use_camp = false
meet = meet@stand_base
on_info = {+jup_b207_freedom_knows_about_depot -jup_b207_ui} remark@jup_b207_radio_talk
on_game_timer = 900 | walker@freedom_leader
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
corpse_detection_enabled = false
gather_items_enabled = false
help_wounded_enabled = false
[walker@freedom_leader]
path_walk = freedom_leader_walk
path_look = freedom_leader_look
def_state_standing = wait_na
def_state_moving = walk_noweap
meet = meet@walker
on_info = {+jup_b207_freedom_knows_about_depot -jup_b207_ui} remark@jup_b207_radio_talk
on_game_timer = 900 | animpoint@freedom_leader
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
corpse_detection_enabled = false
gather_items_enabled = false
help_wounded_enabled = false
use_camp = false
[meet@stand_base]
close_snd_hello = jup_a6_freedom_leader_greeting
close_snd_bye = jup_a6_freedom_leader_farewell
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
close_distance = 0
far_distance = 0
close_snd_distance = 3
use = {=actor_enemy} false, true
allow_break = false
trade_enable = false
meet_on_talking = false
[meet@walker]:meet@stand_base
close_anim = wait_na
close_victim = actor
close_distance = 3
[remark@jup_b207_radio_talk]
target = story | actor
anim = wait_rac
on_signal = anim_end | %=play_sound(jup_b207_freedom_leader_about_depot)%
on_signal2 = sound_end | remark@jup_b207_radio_talk_done
meet = no_meet
;combat_ignore_cond = {=check_enemy_smart(jup_a6)} true
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[remark@jup_b207_radio_talk_done]
target = story | actor
anim = wait_na
on_signal = anim_end | %=play_sound(jup_b207_freedom_leader_about_depot_after)%
on_signal2 = sound_end | %+jup_b207_ui -jup_b207_lock_door%
on_info = {+jup_b207_ui} animpoint@freedom_leader
meet = no_meet
;combat_ignore_cond = {=check_enemy_smart(jup_a6)} true
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false

View file

@ -0,0 +1,33 @@
[logic]
active = sr_idle@set_counters
[sr_idle@set_counters]
on_info = {-jup_b4_b46_b207_b106_counters_start -jup_b4_b46_b207_b106_counters_end} sr_idle@b4_b46_b207_b106_counters %=set_counter(jup_a6_actor_help_stalkers:0) =set_counter(jup_a6_actor_help_duty:0) =set_counter(jup_a6_actor_help_freedom:0) +jup_b4_b46_b207_b106_counters_start%
on_info2 = {+jup_b4_b46_b207_b106_counters_start -jup_b4_b46_b207_b106_counters_end} sr_idle@b4_b46_b207_b106_counters
on_info3 = {+jup_b4_b46_b207_b106_counters_start +jup_b4_b46_b207_b106_counters_end} sr_idle@end
[sr_idle@b4_b46_b207_b106_counters]
;------------- b46 ---------------;
on_info1 = {+jup_b46_duty_founder_pda_to_stalkers -jup_b46_counted} %=inc_counter(jup_a6_actor_help_stalkers:1) +jup_b46_counted%
on_info2 = {+jup_b46_duty_founder_pda_to_duty -jup_b46_counted} %=inc_counter(jup_a6_actor_help_duty:1) =inc_faction_goodwill_to_actor(dolg:500) =dec_faction_goodwill_to_actor(freedom:250) +jup_b46_counted%
on_info3 = {+jup_b46_duty_founder_pda_to_freedom -jup_b46_counted} %=inc_counter(jup_a6_actor_help_freedom:1) =inc_faction_goodwill_to_actor(freedom:500) =dec_faction_goodwill_to_actor(dolg:250) +jup_b46_counted%
;------------- b106 --------------;
on_info4 = {+zat_b106_found_soroka_done -zat_b106_counted} %=inc_counter(jup_a6_actor_help_stalkers:1) +zat_b106_counted%
on_info5 = {+jup_b25_flint_blame_done_to_duty -zat_b106_counted} %=inc_counter(jup_a6_actor_help_duty:1) =inc_faction_goodwill_to_actor(dolg:500) =dec_faction_goodwill_to_actor(freedom:250) +zat_b106_counted%
on_info6 = {+jup_b25_flint_blame_done_to_freedom -zat_b106_counted} %=inc_counter(jup_a6_actor_help_freedom:1) =inc_faction_goodwill_to_actor(freedom:500) =dec_faction_goodwill_to_actor(dolg:250) +zat_b106_counted%
;-------------- b4 ---------------;
on_info7 = {+jup_b4_monolith_squad_in_duty -jup_b4_counted} %=inc_counter(jup_a6_actor_help_duty:1) =inc_faction_goodwill_to_actor(dolg:500) =dec_faction_goodwill_to_actor(freedom:250) +jup_b4_counted%
on_info8 = {+jup_b4_recruit_2_cool_freedom_sound -jup_b4_counted} %=inc_counter(jup_a6_actor_help_freedom:1) =inc_faction_goodwill_to_actor(freedom:500) =dec_faction_goodwill_to_actor(dolg:250) +jup_b4_counted%
;------------- b207 --------------;
on_info9 = {+jup_b207_dealers_pda_sold_owl -jup_b207_counted} %=inc_counter(jup_a6_actor_help_stalkers:1) +jup_b207_counted%
on_info10 = {+jup_b207_sell_dealers_pda_duty -jup_b207_counted} %=inc_counter(jup_a6_actor_help_duty:1) =inc_faction_goodwill_to_actor(dolg:500) =dec_faction_goodwill_to_actor(freedom:250) +jup_b207_counted%
on_info11 = {+jup_b207_sell_dealers_pda_freedom -jup_b207_counted} %=inc_counter(jup_a6_actor_help_freedom:1) =inc_faction_goodwill_to_actor(freedom:500) =dec_faction_goodwill_to_actor(dolg:250) +jup_b207_counted%
;------------- reward ------------;
on_info12 = {=jup_b202_actor_treasure_not_in_steal =distance_to_obj_ge(jup_b202_actor_treasure:100) =counter_greater(jup_a6_actor_help_duty:1) -jup_a6_duty_leader_give_first_reward} %=spawn_object_in(dolg_outfit:jup_b202_actor_treasure) =send_tip(st_duty_first_reward_news:got_duty_light_armor) +jup_a6_duty_leader_give_first_reward%
on_info13 = {=jup_b202_actor_treasure_not_in_steal =distance_to_obj_ge(jup_b202_actor_treasure:100) =counter_greater(jup_a6_actor_help_freedom:1) -jup_a6_freedom_leader_give_first_reward} %=spawn_object_in(svoboda_light_outfit:jup_b202_actor_treasure) =send_tip(st_freedom_first_reward_news:got_freedom_light_armor) +jup_a6_freedom_leader_give_first_reward%
on_info14 = {=jup_b202_actor_treasure_not_in_steal =distance_to_obj_ge(jup_b202_actor_treasure:100) =counter_greater(jup_a6_actor_help_duty:3) -jup_a6_duty_leader_give_second_reward} %=spawn_object_in(dolg_heavy_outfit:jup_b202_actor_treasure) =send_tip(st_duty_second_reward_news:got_duty_heavy_armor) +jup_a6_duty_leader_give_second_reward%
on_info15 = {=jup_b202_actor_treasure_not_in_steal =distance_to_obj_ge(jup_b202_actor_treasure:100) =counter_greater(jup_a6_actor_help_freedom:3) -jup_a6_freedom_leader_give_second_reward} %=spawn_object_in(svoboda_heavy_outfit:jup_b202_actor_treasure) =send_tip(st_freedom_second_reward_news:got_freedom_heavy_armor) +jup_a6_freedom_leader_give_second_reward%
;-------------- end --------------;
on_info16 = {+jup_b46_counted +zat_b106_counted +jup_b4_counted +jup_b207_counted =distance_to_obj_ge(jup_b202_actor_treasure:200) =jup_b202_actor_treasure_not_in_steal} sr_idle@end %+jup_b4_b46_b207_b106_counters_end%
[sr_idle@end]

View file

@ -0,0 +1,443 @@
[animpoint@jup_a6_animp_gen]
reach_movement = walk_noweap
use_camp = false
meet = meet@jup_a6_animpoint_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[animpoint@jup_a6_animp_gen_reach]:animpoint@jup_a6_animp_gen
combat_ignore_keep_when_attacked = false
invulnerable = false
[meet@jup_a6_animpoint_meet]
close_snd_hello = {=check_npc_name(monolith)} nil, {=is_wounded} nil, {!is_squad_commander} nil, {=actor_enemy} nil, {=actor_has_weapon} meet_hide_weapon, meet_hello
close_snd_bye = {=check_npc_name(monolith)} nil, {=is_wounded} nil, {!is_squad_commander} nil, {=actor_enemy} nil, {=actor_has_weapon} nil, meet_hello
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
close_distance = 0
far_distance = 0
use = {=actor_enemy} false, {=dist_to_actor_le(3)} true, false
snd_on_use = {!dist_to_actor_le(3)} nil
meet_on_talking = false
[logic@jup_a6_animp_01]
active = animpoint@jup_a6_animp_01
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_02]
active = animpoint@jup_a6_animp_02
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_03]
active = animpoint@jup_a6_animp_03
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_04]
active = animpoint@jup_a6_animp_04
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_09]
active = animpoint@jup_a6_animp_09
suitable = {+jup_b217_welcome_tech_talked =npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {+jup_b217_welcome_tech_talked =npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_10]
active = animpoint@jup_a6_animp_10
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_11]
active = animpoint@jup_a6_animp_11
suitable = {+jup_b217_welcome_tech_talked =npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {+jup_b217_welcome_tech_talked =npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_15]
active = animpoint@jup_a6_animp_15
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_16]
active = animpoint@jup_a6_animp_16
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_17]
active = animpoint@jup_a6_animp_17
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_18]
active = animpoint@jup_a6_animp_18
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_91]
active = animpoint@jup_a6_animp_91
suitable = {-jup_b25_freedom_flint_gone =npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_92]
active = animpoint@jup_a6_animp_92
suitable = {-jup_b25_freedom_flint_gone =npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_93]
active = animpoint@jup_a6_animp_93
suitable = {-jup_b25_freedom_flint_gone =npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_05]
active = animpoint@jup_a6_animp_05
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 95
[logic@jup_a6_animp_06]
active = animpoint@jup_a6_animp_06
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 95
[logic@jup_a6_animp_07]
active = animpoint@jup_a6_animp_07
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_08]
active = animpoint@jup_a6_animp_08
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 95
[logic@jup_a6_animp_12]
active = animpoint@jup_a6_animp_12
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_13]
active = animpoint@jup_a6_animp_13
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_14]
active = animpoint@jup_a6_animp_14
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_19]
active = animpoint@jup_a6_animp_19
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[logic@jup_a6_animp_20]
active = animpoint@jup_a6_animp_20
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 85
[logic@jup_a6_animp_21]
active = animpoint@jup_a6_animp_21
suitable = {=npc_community(stalker) =npc_in_zone(jup_a6_sr_noweap)} true, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 80
[animpoint@jup_a6_animp_01]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_01
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_01_reached
[animpoint@jup_a6_animp_02]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_02
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_02_reached
[animpoint@jup_a6_animp_03]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_03
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_03_reached
[animpoint@jup_a6_animp_04]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_04
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_04_reached
[animpoint@jup_a6_animp_05]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_05
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_05_reached
[animpoint@jup_a6_animp_06]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_06
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_06_reached
[animpoint@jup_a6_animp_07]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_07
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_07_reached
[animpoint@jup_a6_animp_08]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_08
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_08_reached
[animpoint@jup_a6_animp_09]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_09
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_09_reached
[animpoint@jup_a6_animp_10]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_10
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_10_reached
[animpoint@jup_a6_animp_11]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_11
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_11_reached
[animpoint@jup_a6_animp_12]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_12
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_12_reached
[animpoint@jup_a6_animp_13]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_13
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_13_reached
[animpoint@jup_a6_animp_14]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_14
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_14_reached
[animpoint@jup_a6_animp_15]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_15
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_15_reached
[animpoint@jup_a6_animp_16]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_16
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_16_reached
[animpoint@jup_a6_animp_17]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_17
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_17_reached
[animpoint@jup_a6_animp_18]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_18
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_18_reached
[animpoint@jup_a6_animp_19]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_19
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_19_reached
[animpoint@jup_a6_animp_20]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_20
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_20_reached
[animpoint@jup_a6_animp_21]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_21
use_camp = true
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_21_reached
[animpoint@jup_a6_animp_91]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_b221_duty_01
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_91_reached
[animpoint@jup_a6_animp_92]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_b221_duty_02
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_92_reached
[animpoint@jup_a6_animp_93]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_b221_duty_03
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_93_reached
[animpoint@jup_a6_animp_01_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_01
use_camp = true
[animpoint@jup_a6_animp_02_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_02
[animpoint@jup_a6_animp_03_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_03
[animpoint@jup_a6_animp_04_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_04
[animpoint@jup_a6_animp_05_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_05
[animpoint@jup_a6_animp_06_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_06
[animpoint@jup_a6_animp_07_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_07
[animpoint@jup_a6_animp_08_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_08
[animpoint@jup_a6_animp_09_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_09
[animpoint@jup_a6_animp_10_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_10
[animpoint@jup_a6_animp_11_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_11
[animpoint@jup_a6_animp_12_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_12
use_camp = true
[animpoint@jup_a6_animp_13_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_13
use_camp = true
[animpoint@jup_a6_animp_14_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_14
use_camp = true
[animpoint@jup_a6_animp_15_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_15
use_camp = true
[animpoint@jup_a6_animp_16_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_16
use_camp = true
[animpoint@jup_a6_animp_17_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_17
use_camp = true
[animpoint@jup_a6_animp_18_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_18
use_camp = true
[animpoint@jup_a6_animp_19_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_19
use_camp = true
[animpoint@jup_a6_animp_20_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_20
[animpoint@jup_a6_animp_21_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_21
use_camp = true
[animpoint@jup_a6_animp_91_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_b221_duty_01
[animpoint@jup_a6_animp_92_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_b221_duty_02
[animpoint@jup_a6_animp_93_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_b221_duty_03
[logic@jup_a6_duty_guard]
active = walker@jup_a6_duty_guard_reach
suitable = {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[walker@jup_a6_duty_guard_reach]
path_walk = duty_guard_walk
path_look = duty_guard_look
def_state_standing = wait_na
meet = meet@jup_a6_animpoint_meet
combat_ignore_cond = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
use_camp = false
on_info = {=npc_in_zone(jup_a6_sr_light)} walker@jup_a6_duty_guard
[walker@jup_a6_duty_guard]
path_walk = duty_guard_walk
path_look = duty_guard_look
def_state_standing = wait_na
meet = meet@jup_a6_animpoint_meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
use_camp = false
[logic@jup_a6_duty_guarder]
active = walker@jup_a6_duty_guarder
suitable = {=target_squad_name(b207)} false, {=check_npc_name(monolith)} false, {=is_factions_enemies(dolg)} false, {=npc_community(dolg) =npc_in_zone(jup_a6_sr_noweap) !surge_started} true
prior = 120
[walker@jup_a6_duty_guarder]
path_walk = duty_guarder_walk
path_look = duty_guarder_look
on_info = {!actor_enemy =see_actor !npc_in_zone(jup_a6_sr_light) =actor_has_weapon =actor_in_zone(jup_a6_sr_noweap) =dist_to_actor_le(35)} remark@jup_a6_duty_guarder
combat_ignore_cond = {=check_enemy_name(freedom)} true, {=npc_in_zone(jup_a6_sr_light)} true, false
out_restr = jup_a6_sr_noweap
in_restr = jup_a6_sr_light
meet = no_meet
[remark@jup_a6_duty_guarder]
anim = threat
target = story | actor
on_info = %=play_sound(jup_a6_base_guard)%
on_game_timer = 75 | walker@jup_a6_duty_guarder
combat_ignore_cond = {=check_enemy_name(freedom)} true, {=npc_in_zone(jup_a6_sr_light)} true, false
out_restr = jup_a6_sr_noweap
in_restr = jup_a6_sr_light
meet = no_meet
[logic@jup_a6_freedom_guarder]
active = walker@jup_a6_freedom_guarder
suitable = {=target_squad_name(b207)} false, {=check_npc_name(monolith)} false, {=is_factions_enemies(freedom)} false, {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap) !surge_started} true
prior = 120
[walker@jup_a6_freedom_guarder]
path_walk = freedom_guarder_walk
path_look = freedom_guarder_look
on_info = {!actor_enemy =see_actor !npc_in_zone(jup_a6_sr_light) =actor_has_weapon =actor_in_zone(jup_a6_sr_noweap) =dist_to_actor_le(35)} remark@jup_a6_freedom_guarder
combat_ignore_cond = {=check_enemy_name(duty)} true, {=npc_in_zone(jup_a6_sr_light)} true, false
out_restr = jup_a6_sr_noweap
in_restr = jup_a6_sr_light
meet = no_meet
[remark@jup_a6_freedom_guarder]
anim = threat
target = story | actor
on_info = %=play_sound(jup_a6_base_guard)%
on_game_timer = 75 | walker@jup_a6_freedom_guarder
combat_ignore_cond = {=check_enemy_name(duty)} true, {=npc_in_zone(jup_a6_sr_light)} true, false
out_restr = jup_a6_sr_noweap
in_restr = jup_a6_sr_light
meet = no_meet
[logic@jup_a6_animp_freedom_guard]
active = animpoint@jup_a6_animp_freedom_guard
suitable = {=npc_community(freedom) =npc_in_zone(jup_a6_sr_noweap)} true
prior = 100
[animpoint@jup_a6_animp_freedom_guard]:animpoint@jup_a6_animp_gen_reach
cover_name = jup_a6_animp_freedom_guard
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@jup_a6_animp_freedom_guard_reached
[animpoint@jup_a6_animp_freedom_guard_reached]:animpoint@jup_a6_animp_gen
cover_name = jup_a6_animp_freedom_guard

View file

@ -0,0 +1,39 @@
[logic]
active = ph_door@closed
[ph_door@closed]
closed = true
locked = false
on_use = ph_door@open %+jup_a6_main_door_open%
on_info = {!check_smart_alarm_status(jup_a6:normal)} ph_door@locked
on_info2 = {+jup_a6_main_door_open !is_door_blocked_by_npc} ph_door@open
snd_open_start = trader_door_open_start
snd_close_start = trader_door_close_start
snd_close_stop = trader_door_close_stop
[ph_door@open]
closed = false
locked = false
on_use = ph_door@closed %-jup_a6_main_door_open%
on_info = {!check_smart_alarm_status(jup_a6:normal)} ph_door@locked %-jup_a6_main_door_open%
on_info2 = {-jup_a6_main_door_open !is_door_blocked_by_npc} ph_door@closed
on_game_timer = 35 | {!is_door_blocked_by_npc} ph_door@closed %-jup_a6_main_door_open%
snd_open_start = trader_door_open_start
snd_close_start = trader_door_close_start
snd_close_stop = trader_door_close_stop
[ph_door@locked]
closed = true
locked = true
on_info = {=check_smart_alarm_status(jup_a6:normal)} ph_door@closed
on_info2 = {=check_smart_alarm_status(jup_a6:alarm)} ph_door@locked_alarm
snd_open_start = trader_door_locked
tip_open = tip_door_closed_hide_weapon
[ph_door@locked_alarm]
closed = true
locked = true
on_info = {=check_smart_alarm_status(jup_a6:normal)} ph_door@closed
on_info2 = {=check_smart_alarm_status(jup_a6:danger)} ph_door@locked
snd_open_start = trader_door_locked
tip_open = tip_door_closed_base_alarm

View file

@ -0,0 +1,39 @@
[logic]
active = ph_door@open
[ph_door@closed]
closed = true
locked = false
on_use = ph_door@open %+jup_a6_main_door_2_open%
on_info = {!check_smart_alarm_status(jup_a6:normal)} ph_door@locked
on_info2 = {+jup_a6_main_door_2_open !is_door_blocked_by_npc} ph_door@open
snd_open_start = trader_door_open_start
snd_close_start = trader_door_close_start
snd_close_stop = trader_door_close_stop
[ph_door@open]
closed = false
locked = false
on_use = ph_door@closed %-jup_a6_main_door_2_open%
on_info = {!check_smart_alarm_status(jup_a6:normal)} ph_door@locked %-jup_a6_main_door_2_open%
on_info2 = {-jup_a6_main_door_2_open !is_door_blocked_by_npc} ph_door@closed
on_game_timer = 35 | {!is_door_blocked_by_npc} ph_door@closed %-jup_a6_main_door_2_open%
snd_open_start = trader_door_open_start
snd_close_start = trader_door_close_start
snd_close_stop = trader_door_close_stop
[ph_door@locked]
closed = true
locked = true
on_info = {=check_smart_alarm_status(jup_a6:normal)} ph_door@closed
on_info2 = {=check_smart_alarm_status(jup_a6:alarm)} ph_door@locked_alarm
snd_open_start = trader_door_locked
tip_open = tip_door_closed_hide_weapon
[ph_door@locked_alarm]
closed = true
locked = true
on_info = {=check_smart_alarm_status(jup_a6:normal)} ph_door@closed
on_info2 = {=check_smart_alarm_status(jup_a6:danger)} ph_door@locked
snd_open_start = trader_door_locked
tip_open = tip_door_closed_base_alarm

View file

@ -0,0 +1,37 @@
[logic]
active = ph_door@closed
[ph_door@closed]
closed = true
locked = false
on_use = ph_door@open
on_info = {!check_smart_alarm_status(jup_a6:normal)} ph_door@locked
snd_open_start = wood_large_open
snd_close_start = wood_large_close_start
snd_close_stop = wood_large_close_stop
[ph_door@open]
closed = false
locked = false
on_use = ph_door@closed
on_info = {!check_smart_alarm_status(jup_a6:normal)} ph_door@locked
on_game_timer = 50 | ph_door@closed
snd_open_start = wood_large_open
snd_close_start = wood_large_close_start
snd_close_stop = wood_large_close_stop
[ph_door@locked]
closed = true
locked = true
on_info = {=check_smart_alarm_status(jup_a6:normal)} ph_door@closed
on_info2 = {=check_smart_alarm_status(jup_a6:alarm)} ph_door@locked_alarm
snd_open_start = trader_door_locked
tip_open = tip_door_closed_hide_weapon
[ph_door@locked_alarm]
closed = true
locked = true
on_info = {=check_smart_alarm_status(jup_a6:normal)} ph_door@closed
on_info2 = {=check_smart_alarm_status(jup_a6:danger)} ph_door@locked
snd_open_start = trader_door_locked
tip_open = tip_door_closed_base_alarm

View file

@ -0,0 +1,38 @@
[logic]
active = ph_door@closed
[ph_door@closed]
closed = true
locked = false
on_use = ph_door@open
on_info = {=actor_in_zone(jup_a6_sr_noweap_zulus) =actor_has_weapon} ph_door@locked
on_info2 = {=check_smart_alarm_status(jup_a6:alarm)} ph_door@locked_alarm
snd_open_start = wood_large_open
snd_close_start = wood_large_close_start
snd_close_stop = wood_large_close_stop
[ph_door@open]
closed = false
locked = false
on_use = ph_door@closed
on_info = {=actor_in_zone(jup_a6_sr_noweap_zulus) =actor_has_weapon} ph_door@locked
on_info2 = {=check_smart_alarm_status(jup_a6:alarm)} ph_door@locked_alarm
on_game_timer = 50 | ph_door@closed
snd_open_start = wood_large_open
snd_close_start = wood_large_close_start
snd_close_stop = wood_large_close_stop
[ph_door@locked]
closed = true
locked = true
on_info = {=actor_in_zone(jup_a6_sr_noweap_zulus) !actor_has_weapon} ph_door@closed
on_info2 = {=check_smart_alarm_status(jup_a6:alarm)} ph_door@locked_alarm
snd_open_start = trader_door_locked
tip_open = tip_door_closed_hide_weapon
[ph_door@locked_alarm]
closed = true
locked = true
on_info = {=check_smart_alarm_status(jup_a6:normal)} ph_door@locked
snd_open_start = trader_door_locked
tip_open = tip_door_closed_base_alarm

View file

@ -0,0 +1,20 @@
[logic]
active = ph_idle@wait
[ph_idle@wait]
on_info = {=actor_in_zone(jup_a6_sr_noweap) !actor_in_zone(jup_a6_sr_light) !check_smart_alarm_status(jup_a6:normal)} ph_idle@pleaseplease
[ph_idle@pleaseplease]
on_info = {=check_smart_alarm_status(jup_a6:danger)} %=play_sound(jup_a6_base_megaphone)%
on_info2 = {=check_smart_alarm_status(jup_a6:alarm)} ph_idle@swear
on_info3 = {=check_smart_alarm_status(jup_a6:normal)} ph_idle@wait
on_info4 = {!actor_in_zone(jup_a6_sr_noweap)} ph_idle@wait
on_info5 = {=actor_in_zone(jup_a6_sr_light)} ph_idle@wait
[ph_idle@swear]
on_info = {!check_smart_alarm_status(jup_a6:alarm)} ph_idle@spawn
on_info2 = {!actor_in_zone(jup_a6_sr_noweap)} ph_idle@spawn
on_info3 = {=actor_in_zone(jup_a6_sr_light)} ph_idle@wait
[ph_idle@spawn]
on_info = ph_idle@wait

View file

@ -0,0 +1,5 @@
[logic]
active = sr_light
[sr_light]
light_on = false

View file

@ -0,0 +1,12 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_actor_inside = {!black_screen} sr_no_weapon@wait
[sr_idle@wait]
on_actor_inside = {=check_smart_alarm_status(jup_a6:normal) !actor_has_weapon} sr_no_weapon@wait
on_info = {=actor_in_zone(jup_a6_sr_light)} sr_no_weapon@wait
[sr_no_weapon@wait]
on_actor_outside = sr_idle@wait

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle@wait
[sr_idle@wait]
on_actor_inside = {=check_smart_alarm_status(jup_a6:normal) !actor_has_weapon} sr_no_weapon@wait
on_info = {=actor_in_zone(jup_b15_sr_light)} sr_no_weapon@wait
[sr_no_weapon@wait]
on_actor_outside = sr_idle@wait

View file

@ -0,0 +1,52 @@
[animpoint@jup_a9_actor_gen]
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
reach_movement = patrol
[walker@jup_a9_gen]
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
[logic]
active = walker@jup_a9_teleport
[walker@jup_a9_teleport]:walker@jup_a9_gen
path_walk = jup_a9_temp_actor_walk
path_look = jup_a9_temp_actor_look
out_restr = jup_a9_in_rest_for_temp_actor
def_state_standing = wait_na
on_info = {=actor_in_zone(jup_a9_cam_1)} animpoint@jup_a9_cam_1 %=teleport_npc(jup_a9_cam_1_actor_walk)%, {=actor_in_zone(jup_a9_cam_2)} animpoint@jup_a9_cam_2 %=teleport_npc(jup_a9_cam_2_actor_walk)%, {=actor_in_zone(jup_a9_cam_3)} animpoint@jup_a9_cam_3 %=teleport_npc(jup_a9_cam_3_actor_walk)%
[animpoint@jup_a9_cam_1]:animpoint@jup_a9_actor_gen
avail_animations = jup_a9_cam1_actor
cover_name = jup_a9_cam_1_animpoint
on_info = {+jup_a9_cam1_actor_anim_end} walker@jup_a9_cam_1
[walker@jup_a9_cam_1]:walker@jup_a9_gen
path_walk = jup_a9_cam_1_actor_walk2
path_look = jup_a9_cam_1_actor_look2
def_state_moving = patrol
def_state_standing = guard
[animpoint@jup_a9_cam_2]:animpoint@jup_a9_actor_gen
avail_animations = jup_a9_cam2_actor
cover_name = jup_a9_cam_2_animpoint
out_restr = jup_factory_default_in_restrictor
[animpoint@jup_a9_cam_3]:animpoint@jup_a9_actor_gen
avail_animations = jup_a9_cam3_actor
cover_name = jup_a9_cam_3_animpoint
out_restr = jup_factory_default_in_restrictor

View file

@ -0,0 +1,95 @@
[logic]
active = sr_idle@select
[sr_idle@select]
on_info1 = {=actor_in_zone(jup_a9_cam_1) =actor_has_item(jup_a9_way_info) -jup_a9_cam_1_end} sr_idle@cam_1_spawn %=run_postprocess(fade_in:7918) +jup_a9_way_info%
on_info2 = {=actor_in_zone(jup_a9_cam_2) =actor_has_item(jup_a9_conservation_info) -jup_a9_cam_2_end} sr_idle@cam_2_spawn %=run_postprocess(fade_in:7922) +jup_a9_conservation_info%
on_info3 = {=actor_in_zone(jup_a9_cam_3) =actor_has_item(jup_a9_power_info) -jup_a9_cam_3_end} sr_idle@cam_3_spawn %=run_postprocess(fade_in:7926) +jup_a9_power_info%
on_info4 = {+jup_a9_cam_1_end +jup_a9_cam_2_end +jup_a9_cam_3_end} sr_idle@end
;cam_1
[sr_idle@cam_1_spawn]
on_game_timer = 20 | sr_idle@cam_1_disable %=run_postprocess(black:7919:true) =create_cutscene_actor_with_weapon(jup_a9_actor:jup_a9_temp_actor_walk:0:90:3)%
[sr_idle@cam_1_disable]
on_info = sr_idle@cam_1_time %=disable_ui%
[sr_idle@cam_1_time]
on_game_timer = 50 | sr_cutscene@cam_1_start %=stop_postprocess(7918) =stop_postprocess(7919) =play_sound(jup_a9_actor_way_info)%
[sr_cutscene@cam_1_start]
point = jup_a9_cam_1_actor_walk
look = jup_a9_cam_1_actor_look
global_cameffect = true
enable_ui_on_end = false
outdoor = true
cam_effector = scenario_cam\jupiter\jup_a9_actor_way_info_cam
on_signal1 = theme_end | {-jup_a9_cam_1_end} %+jup_a9_cam_1_end =stop_sr_cutscene =run_postprocess(fade_in:7920)%
on_signal2 = cameff_end | {+jup_a9_cam_1_end} sr_idle@cam_1_destroy
[sr_idle@cam_1_destroy]
on_game_timer = 20 | {=story_object_exist(jup_a9_actor)} sr_idle@cam_1_end %=run_postprocess(black:7921:true) =destroy_object(story:jup_a9_actor) =destroy_object(story:jup_a9_way_info_fake) =teleport_actor(jup_a9_cam_1_actor_walk:jup_a9_cam_1_actor_look)%, sr_idle@cam_1_end %=run_postprocess(black:7921:true) =destroy_object(story:jup_a9_way_info_fake) =teleport_actor(jup_a9_cam_1_actor_walk:jup_a9_cam_1_actor_look)%
[sr_idle@cam_1_end]
on_game_timer = 20 | sr_idle@select %=stop_postprocess(7920) =stop_postprocess(7921) =enable_ui%
;cam_2
[sr_idle@cam_2_spawn]
on_game_timer = 20 | sr_idle@cam_2_disable %=run_postprocess(black:7923:true) =create_cutscene_actor_with_weapon(jup_a9_actor:jup_a9_temp_actor_walk:0:90:3)%
[sr_idle@cam_2_disable]
on_info = sr_idle@cam_2_time %=disable_ui%
[sr_idle@cam_2_time]
on_game_timer = 50 | sr_cutscene@cam_2_start %=stop_postprocess(7922) =stop_postprocess(7923) =play_sound(jup_a9_actor_conservation_info)%
[sr_cutscene@cam_2_start]
point = jup_a9_cam_2_actor_walk
look = jup_a9_cam_2_actor_look
global_cameffect = true
enable_ui_on_end = false
cam_effector = scenario_cam\jupiter\jup_a9_actor_conservation_info_cam
on_signal1 = theme_end | {-jup_a9_cam_2_end} %+jup_a9_cam_2_end =stop_sr_cutscene =run_postprocess(fade_in:7924)%
on_signal2 = cameff_end | {+jup_a9_cam_2_end} sr_idle@cam_2_destroy
[sr_idle@cam_2_destroy]
on_game_timer = 20 | {=story_object_exist(jup_a9_actor)} sr_idle@cam_2_end %=run_postprocess(black:7925:true) =destroy_object(story:jup_a9_actor) =destroy_object(story:jup_a9_conservation_info_fake) =teleport_actor(jup_a9_cam_2_actor_walk:jup_a9_cam_2_actor_look)%, sr_idle@cam_2_end %=run_postprocess(black:7925:true) =destroy_object(story:jup_a9_conservation_info_fake) =teleport_actor(jup_a9_cam_2_actor_walk:jup_a9_cam_2_actor_look)%
[sr_idle@cam_2_end]
on_game_timer = 20 | sr_idle@select %=stop_postprocess(7924) =stop_postprocess(7925) =enable_ui%
;cam_3
[sr_idle@cam_3_spawn]
on_game_timer = 20 | sr_idle@cam_3_disable %=run_postprocess(black:7927:true) =create_cutscene_actor_with_weapon(jup_a9_actor:jup_a9_temp_actor_walk:0:270:3)%
[sr_idle@cam_3_disable]
on_info = sr_idle@cam_3_time %=disable_ui%
[sr_idle@cam_3_time]
on_game_timer = 50 | sr_cutscene@cam_3_start %=stop_postprocess(7926) =stop_postprocess(7927) =play_sound(jup_a9_actor_power_info)%
[sr_cutscene@cam_3_start]
point = jup_a9_cam_3_actor_walk
look = jup_a9_cam_3_actor_look
global_cameffect = true
enable_ui_on_end = false
cam_effector = scenario_cam\jupiter\jup_a9_actor_power_info_cam
on_signal1 = theme_end | {-jup_a9_cam_3_end} %+jup_a9_cam_3_end =stop_sr_cutscene =run_postprocess(fade_in:7928)%
on_signal2 = cameff_end | {+jup_a9_cam_3_end} sr_idle@cam_3_destroy
[sr_idle@cam_3_destroy]
on_game_timer = 20 | {=story_object_exist(jup_a9_actor)} sr_idle@cam_3_end %=run_postprocess(black:7929:true) =destroy_object(story:jup_a9_actor) =destroy_object(story:jup_a9_power_info_fake) =teleport_actor(jup_a9_cam_3_actor_walk:jup_a9_cam_3_actor_look)%, sr_idle@cam_3_end %=run_postprocess(black:7929:true) =destroy_object(story:jup_a9_power_info_fake) =teleport_actor(jup_a9_cam_3_actor_walk:jup_a9_cam_3_actor_look)%
[sr_idle@cam_3_end]
on_game_timer = 20 | sr_idle@select %=stop_postprocess(7928) =stop_postprocess(7929) =enable_ui%
;end
[sr_idle@end]
on_info = {-jup_a9_scenari_save_after_three_docs} %+jup_a9_scenari_save_after_three_docs =scenario_autosave(st_save_jup_a9_got_underpass_docs)%
on_info2 = {+jup_a9_scenari_save_after_three_docs} sr_idle@nil
[sr_idle@nil]

View file

@ -0,0 +1,42 @@
;generic section
[logic@jup_a9_dog_gen]
suitable = {=target_squad_name(jup_a9_dogs_normal)} true
prior = 200
monster_job = true
[mob_walker@jup_a9_dog_gen]
combat_ignore_cond = {=check_enemy_smart(jup_b47)} true
;dogs section
[logic@jup_a9_dog_01]:logic@jup_a9_dog_gen
active = mob_walker@01
[logic@jup_a9_dog_02]:logic@jup_a9_dog_gen
active = mob_walker@02
[logic@jup_a9_dog_03]:logic@jup_a9_dog_gen
active = mob_walker@03
[logic@jup_a9_dog_04]:logic@jup_a9_dog_gen
active = mob_walker@04
[logic@jup_a9_dog_05]:logic@jup_a9_dog_gen
active = mob_walker@05
[mob_walker@01]:mob_walker@jup_a9_dog_gen
path_walk = dogs_1_walk
[mob_walker@02]:mob_walker@jup_a9_dog_gen
path_walk = dogs_2_walk
[mob_walker@03]:mob_walker@jup_a9_dog_gen
path_walk = dogs_3_walk
[mob_walker@04]:mob_walker@jup_a9_dog_gen
path_walk = dogs_4_walk
[mob_walker@05]:mob_walker@jup_a9_dog_gen
path_walk = dogs_5_walk

View file

@ -0,0 +1,16 @@
[logic]
active = sr_idle@jup_a9_logic
[sr_idle@jup_a9_logic]
on_info1 = {-jup_a9_delivery_info_taked =actor_has_item(jup_a9_delivery_info)} %+jup_a9_delivery_info_taked%
on_info2 = {-jup_a9_losses_info_taked =actor_has_item(jup_a9_losses_info)} %+jup_a9_losses_info_taked%
on_info3 = {-jup_a9_meeting_info_taked =actor_has_item(jup_a9_meeting_info)} %+jup_a9_meeting_info_taked%
on_info4 = {-jup_a9_evacuation_info_taked =actor_has_item(jup_a9_evacuation_info)} %+jup_a9_evacuation_info_taked%
on_info5 = {+zat_b107_evacuation_info_full +jup_a9_way_info -jup_a9_conservation_info -jup_a9_power_info -jup_a9_way_to_pripyat_gas_info_started -jup_a9_way_to_pripyat_power_info_started} %=give_task(jup_a9_way_to_pripyat_power_info) =give_task(jup_a9_way_to_pripyat_gas_info)%
on_info6 = {+zat_b107_evacuation_info_full -jup_a9_way_info +jup_a9_conservation_info -jup_a9_power_info -jup_a9_way_to_pripyat_way_info_started -jup_a9_way_to_pripyat_power_info_started} %=give_task(jup_a9_way_to_pripyat_power_info) =give_task(jup_a9_way_to_pripyat_way_info)%
on_info7 = {+zat_b107_evacuation_info_full -jup_a9_way_info -jup_a9_conservation_info +jup_a9_power_info -jup_a9_way_to_pripyat_way_info_started -jup_a9_way_to_pripyat_gas_info_started} %=give_task(jup_a9_way_to_pripyat_gas_info) =give_task(jup_a9_way_to_pripyat_way_info)%
on_info8 = {+zat_b107_evacuation_info_full +jup_a9_way_info +jup_a9_conservation_info +jup_a9_power_info -jup_a9_actor_found_main_documents} %+jup_a9_actor_found_main_documents%
on_info9 = {+zat_b107_evacuation_info_full +jup_a9_way_info +jup_a9_conservation_info +jup_a9_power_info -jup_a9_way_to_pripyat_tech_started} sr_idle@jup_a9_end %+jup_a9_actor_found_main_documents =give_task(jup_a9_way_to_pripyat_tech)%
[sr_idle@jup_a9_end]

View file

@ -0,0 +1,17 @@
[logic]
active = sr_idle@jupiter
[sr_idle@jupiter]
on_info = {+actor_was_in_many_bad_places} sr_idle@nil
on_info2 = {=counter_greater(anomalies_visited:18)} sr_idle@nil %+actor_was_in_many_bad_places%
on_info3 = {-jup_b10_visited =actor_in_zone(jup_b10_zone_field_thermal_average)} %+jup_b10_visited =inc_counter(anomalies_visited)%
on_info4 = {-jup_b200_visited =actor_in_zone(jup_b200_field)} %+jup_b200_visited =inc_counter(anomalies_visited)%
on_info5 = {-jup_b201_visited !dist_to_story_obj_ge(jup_b201_spot:15)} %+jup_b201_visited =inc_counter(anomalies_visited)%
on_info6 = {-jup_b206_visited =actor_in_zone(jup_b206_field_acidic_average)} %+jup_b206_visited =inc_counter(anomalies_visited)%
on_info7 = {-jup_b209_visited =actor_in_zone(jup_b209_zone_field_thermal_average)} %+jup_b209_visited =inc_counter(anomalies_visited)%
on_info8 = {-jup_b211_visited =actor_in_zone(jup_b211_zone_field_acidic_average)} %+jup_b211_visited =inc_counter(anomalies_visited)%
on_info9 = {-jup_b214_visited =actor_in_zone(jup_surge_hide_b214)} %+jup_b214_visited =inc_counter(anomalies_visited)%
on_info10 = {-jup_b25_visited =actor_in_zone(jup_b25_zone_field_acidic_weak)} %+jup_b25_visited =inc_counter(anomalies_visited)%
on_info11 = {-jup_b32_visited =actor_in_zone(jup_b32_zone_field_radioactive_weak)} %+jup_b32_visited =inc_counter(anomalies_visited)%
[sr_idle@nil]

View file

@ -0,0 +1,8 @@
[keep_items]
[logic]
;suitable = {=check_npc_name(jup_b10_stalker_drunk_dead)} true
active = walker@ihopeyoudie
[walker@ihopeyoudie]
path_walk = jup_b10_drunk_deadway_01
on_info = %=jup_b10_spawn_drunk_dead_items =kill_npc%

View file

@ -0,0 +1,36 @@
[logic]
active = sr_idle@set_counter
[sr_idle@set_counter]
on_info = sr_idle@give_task %=set_counter(jup_b10_ufo_counter:0)%
[sr_idle@give_task]
on_info = {+jup_b10_ufo_memory_started} sr_idle@start_repair %=give_task(jup_b10_ufo)%
[sr_idle@start_repair]
on_info = {+jup_b10_ufo_memory_repairing +jup_b10_ufo_memory_at_nitros} sr_idle@timer_nitro
on_info2 = {+jup_b10_ufo_memory_repairing +jup_b10_ufo_memory_at_novikovs} sr_idle@timer_novikov
[sr_idle@timer_nitro]
on_game_timer = 10800 | sr_idle@where_is_actor
[sr_idle@timer_novikov]
on_game_timer = 3600 | sr_idle@spot %-jup_b10_ufo_memory_repairing%
[sr_idle@where_is_actor]
on_info = {!actor_in_zone(jup_a6_sr_noweap)} sr_idle@remove_drunk %=play_sound(jup_b10_ufo_memory_repaired_nitro) -jup_b10_ufo_memory_repairing%
on_info2= {=actor_in_zone(jup_a6_sr_sleep)} sr_idle@remove_drunk %=play_sound(jup_b10_ufo_memory_repaired_nitro) -jup_b10_ufo_memory_repairing%
[sr_idle@remove_drunk]
on_info = {=squad_exist(jup_b10_stalker_drunk_squad)} sr_idle@spot %=remove_squad(jup_b10_stalker_drunk_squad)%, sr_idle@spot
[sr_idle@spot]
on_info = {+jup_b10_ufo_memory_repaired +jup_b10_ufo_memory_at_nitros} sr_idle@spawn_drunk_dead %=give_treasure(jup_b10_secret_03_mapspot:jup_b10_secret_02_mapspot:jup_b10_secret_01_mapspot)%
on_info2 = {+jup_b10_ufo_memory_repaired +jup_b10_ufo_memory_at_novikovs} sr_idle@nil %=give_treasure(jup_b10_secret_03_mapspot:jup_b10_secret_02_mapspot:jup_b10_secret_01_mapspot)%
[sr_idle@spawn_drunk_dead]
on_info = {+info_b10_second_zone_visited +info_b10_third_zone_visited} sr_idle@nil %=spawn_object(jup_b10_stalker_drunk_dead:jup_b10_drunk_deadway_01)%
on_info2 = {+info_b10_first_zone_visited +info_b10_third_zone_visited} sr_idle@nil %=spawn_object(jup_b10_stalker_drunk_dead:jup_b10_drunk_deadway_02)%
on_info3 = {+info_b10_first_zone_visited +info_b10_second_zone_visited} sr_idle@nil %=spawn_object(jup_b10_stalker_drunk_dead:jup_b10_drunk_deadway_03)%
[sr_idle@nil]

View file

@ -0,0 +1,36 @@
[logic]
active = sr_idle@waiting_for_actor
[sr_idle@waiting_for_actor]
on_info = {=actor_in_zone(jup_b10_secret_zone_01)} sr_idle@counter_selector
[sr_idle@counter_selector]
on_info = {=counter_equal(jup_b10_ufo_counter:0)} sr_idle@counter_0
on_info2 = {=counter_equal(jup_b10_ufo_counter:1)} sr_idle@counter_1
on_info3 = {=counter_equal(jup_b10_ufo_counter:2)} sr_idle@counter_2
on_info4 = {=counter_equal(jup_b10_ufo_counter:3)} sr_idle@end
[sr_idle@counter_0]
on_info = {-jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_01 %=spawn_object_in(jup_b10_notes_01:jup_b10_secret_01) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_01)%
on_info2 = {+jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_01 %=spawn_object_in(jup_b10_notes_01:jup_b10_secret_01)%
[sr_idle@counter_1]
on_info = {-jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_02 %=spawn_object_in(jup_b10_notes_02:jup_b10_secret_01) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_01)%
on_info2 = {+jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_02 %=spawn_object_in(jup_b10_notes_02:jup_b10_secret_01)%
[sr_idle@counter_2]
on_info = sr_idle@clear_box_03 %=spawn_object_in(jup_b10_notes_03:jup_b10_secret_01) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_01)%
[sr_idle@clear_box_01]
on_info = {!actor_in_zone(jup_b10_secret_zone_01)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_01)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:1)} sr_idle@end %+info_b10_first_zone_visited%
[sr_idle@clear_box_02]
on_info = {!actor_in_zone(jup_b10_secret_zone_01)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_01)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:2)} sr_idle@end %+info_b10_first_zone_visited%
[sr_idle@clear_box_03]
on_info = {!actor_in_zone(jup_b10_secret_zone_01)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_01)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:3)} sr_idle@end %+info_b10_first_zone_visited%
[sr_idle@end]

View file

@ -0,0 +1,36 @@
[logic]
active = sr_idle@waiting_for_actor
[sr_idle@waiting_for_actor]
on_info = {=actor_in_zone(jup_b10_secret_zone_02)} sr_idle@counter_selector
[sr_idle@counter_selector]
on_info = {=counter_equal(jup_b10_ufo_counter:0)} sr_idle@counter_0
on_info2 = {=counter_equal(jup_b10_ufo_counter:1)} sr_idle@counter_1
on_info3 = {=counter_equal(jup_b10_ufo_counter:2)} sr_idle@counter_2
on_info4 = {=counter_equal(jup_b10_ufo_counter:3)} sr_idle@end
[sr_idle@counter_0]
on_info = {-jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_01 %=spawn_object_in(jup_b10_notes_01:jup_b10_secret_02) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_02)%
on_info2 = {+jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_01 %=spawn_object_in(jup_b10_notes_01:jup_b10_secret_02)%
[sr_idle@counter_1]
on_info = {-jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_02 %=spawn_object_in(jup_b10_notes_02:jup_b10_secret_02) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_02)%
on_info2 = {+jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_02 %=spawn_object_in(jup_b10_notes_02:jup_b10_secret_02)%
[sr_idle@counter_2]
on_info = sr_idle@clear_box_03 %=spawn_object_in(jup_b10_notes_03:jup_b10_secret_02) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_02)%
[sr_idle@clear_box_01]
on_info = {!actor_in_zone(jup_b10_secret_zone_02)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_02)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:1)} sr_idle@end %+info_b10_second_zone_visited%
[sr_idle@clear_box_02]
on_info = {!actor_in_zone(jup_b10_secret_zone_02)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_02)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:2)} sr_idle@end %+info_b10_second_zone_visited%
[sr_idle@clear_box_03]
on_info = {!actor_in_zone(jup_b10_secret_zone_02)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_02)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:3)} sr_idle@end %+info_b10_second_zone_visited%
[sr_idle@end]

View file

@ -0,0 +1,36 @@
[logic]
active = sr_idle@waiting_for_actor
[sr_idle@waiting_for_actor]
on_info = {=actor_in_zone(jup_b10_secret_zone_03)} sr_idle@counter_selector
[sr_idle@counter_selector]
on_info = {=counter_equal(jup_b10_ufo_counter:0)} sr_idle@counter_0
on_info2 = {=counter_equal(jup_b10_ufo_counter:1)} sr_idle@counter_1
on_info3 = {=counter_equal(jup_b10_ufo_counter:2)} sr_idle@counter_2
on_info4 = {=counter_equal(jup_b10_ufo_counter:3)} sr_idle@end
[sr_idle@counter_0]
on_info = {-jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_01 %=spawn_object_in(jup_b10_notes_01:jup_b10_secret_03) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_03)%
on_info2 = {+jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_01 %=spawn_object_in(jup_b10_notes_01:jup_b10_secret_03)%
[sr_idle@counter_1]
on_info = {-jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_02 %=spawn_object_in(jup_b10_notes_02:jup_b10_secret_03) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_03)%
on_info2 = {+jup_b10_ufo_memory_at_nitros} sr_idle@clear_box_02 %=spawn_object_in(jup_b10_notes_02:jup_b10_secret_03)%
[sr_idle@counter_2]
on_info = sr_idle@clear_box_03 %=spawn_object_in(jup_b10_notes_03:jup_b10_secret_03) =jup_b10_spawn_drunk_dead_items(jup_b10_secret_03)%
[sr_idle@clear_box_01]
on_info = {!actor_in_zone(jup_b10_secret_zone_03)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_03)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:1)} sr_idle@end %+info_b10_third_zone_visited%
[sr_idle@clear_box_02]
on_info = {!actor_in_zone(jup_b10_secret_zone_03)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_03)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:2)} sr_idle@end %+info_b10_third_zone_visited%
[sr_idle@clear_box_03]
on_info = {!actor_in_zone(jup_b10_secret_zone_03)} sr_idle@waiting_for_actor %=clear_box(jup_b10_secret_03)%
on_info2 = {=counter_equal(jup_b10_ufo_counter:3)} sr_idle@end %+info_b10_third_zone_visited%
[sr_idle@end]

View file

@ -0,0 +1,12 @@
[logic]
active = ph_idle
[ph_idle]
nonscript_usable = true
tips = st_search_treasure
on_use = ph_idle@end %=inc_counter(jup_b10_ufo_counter)%
[ph_idle@end]
nonscript_usable = true
tips = st_search_treasure

View file

@ -0,0 +1,19 @@
[logic@jup_b10_stalker_drunk]
suitable = {=check_npc_name(jup_b10_stalker_drunk)} true
active = animpoint@ravings
prior = 200
[animpoint@ravings]
cover_name = jup_a6_animpoint_drunk
avail_animations = zat_b3_tech_drunk
reach_distance = 2
use_camp = false
meet = no_meet
on_actor_in_zone = jup_b10_sr_warnzone | %=play_sound(jup_b10_stalker_drunk_no_meet) +jup_b10_actor_seen_senka%
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false

View file

@ -0,0 +1,13 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_info = {=actor_in_zone(jup_b10_ufo_restrictor)} sr_idle@tutorial %=run_tutorial(jup_b10_ufo_tutor)%
on_info2 = {+jup_b10_ufo_memory_started} sr_idle@nil
[sr_idle@tutorial]
on_info = {!actor_in_zone(jup_b10_ufo_restrictor)} sr_idle@start %=stop_tutorial%
on_info2 = {+jup_b10_ufo_memory_started} sr_idle@nil
on_info3 = {!has_active_tutorial} sr_idle@start
[sr_idle@nil]

View file

@ -0,0 +1,46 @@
[logic]
active = sr_idle@task
[sr_idle@task]
on_info = {+jup_a9_tech_way_info} sr_idle@drink_control %=give_task(jup_b218_pripyat_group) +jup_b218_gather_squad =spawn_object_in(vodka:jup_b15_zulus)%
[sr_idle@drink_control]
on_info = {+jup_b15_actor_drink +jup_b15_zulus_drink_anim_info} sr_idle@drink_effect
[sr_idle@drink_effect]
;on_info = {+jup_b15_actor_drink -jup_b15_actor_drink_final} %=run_postprocess(fade_in_out) =give_item(vodka_script:actor) -jup_b15_actor_drink%
;on_info2 = {+jup_b15_actor_drink +jup_b15_actor_drink_final} %=run_postprocess(fade_in_out) =give_item(vodka_script:actor) -jup_b15_actor_drink%
on_info = {+jup_b15_actor_drink -jup_b15_actor_drink_final} %=give_item(vodka_script:actor) -jup_b15_actor_drink%
on_info2 = {+jup_b15_actor_drink +jup_b15_actor_drink_final} %=give_item(vodka_script:actor) -jup_b15_actor_drink%
on_game_timer = 15 | {+jup_b15_actor_drink_final =actor_has_item(vodka_script)} sr_cutscene@sleep %=eat_vodka_script%, {-jup_b15_actor_drink_final =actor_has_item(vodka_script)} sr_idle@drink_control %=eat_vodka_script -jup_b15_zulus_drink_anim_info =enable_ui +jup_b15_can_talk%;, {!actor_has_item(vodka_script)} %=give_item(vodka_script:actor)%
[sr_cutscene@sleep]
point = jup_b15_cut_actor_walk
look = jup_b15_cut_actor_look
cam_effector = scenario_cam\Jupiter\jup_b15_sleep
global_cameffect = false
enable_ui_on_end = false
on_signal = cameff_end | sr_cutscene@wake %=run_postprocess(fade_in_out) =set_game_time(06:00)%
[sr_cutscene@wake]
point = jup_b15_cut_actor_walk
look = jup_b15_cut_actor_look
cam_effector = scenario_cam\Jupiter\jup_b15_wake_up
global_cameffect = false
on_info = {-jup_b15_alcohol} %+jup_b15_alcohol%
on_signal = cameff_end | sr_idle@b218 %+jup_b15_cameff_end =set_counter(jup_b218_squad_members_count:0)%
[sr_idle@b218]
on_info8 = {-jup_b15_drunk_with_zulu_saved} %+jup_b15_drunk_with_zulu_saved =scenario_autosave(st_save_jup_b15_drunk_with_zulu)%
on_info = {+jup_b218_vano_tp -jup_b218_zulus_met_vano} %+jup_b218_zulus_met_vano =inc_counter(jup_b218_squad_members_count) =scenario_autosave(st_save_jup_b218_vano_in_squad)%
on_info2 = {+jup_b218_sokolov_tp -jup_b218_zulus_met_sokolov} %+jup_b218_zulus_met_sokolov =inc_counter(jup_b218_squad_members_count) =scenario_autosave(st_save_jup_b218_sokolov_in_squad)%
on_info3 = {+jup_b218_monolith_fr_tp -jup_b218_zulus_met_monolith} %+jup_b218_zulus_met_monolith =inc_counter(jup_b218_squad_members_count) =scenario_autosave(st_save_jup_b218_strider_in_squad)%
on_info4 = {+jup_b218_monolith_du_tp -jup_b218_zulus_met_monolith} %+jup_b218_zulus_met_monolith =inc_counter(jup_b218_squad_members_count) =scenario_autosave(st_save_jup_b218_strider_in_squad)%
on_info5 = {+jup_b218_pause_meet} sr_idle@pause %-jup_b218_pause_meet -jup_b218_pause_done%
;on_info6 = {+jup_b218_gather_squad_complete -jup_b218_travel_jup_to_pas_saved} %+jup_b218_travel_jup_to_pas_saved =scenario_autosave(st_save_jup_b218_travel_jup_to_pas)%
on_info7 = {+jup_b218_gather_squad_complete} sr_idle@nil
[sr_idle@pause]
on_game_timer = 15 | sr_idle@b218 %+jup_b218_pause_done%
[sr_idle@nil]

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_actor_inside = {=jup_b16_is_zone_active -jup_b16_row_1_blok } sr_idle@2 %+jup_b16_row_complete_1 +jup_b16_row_1_blok%, {-jup_b16_row_1_blok} sr_idle@2 %+jup_b16_row_1_blok -jup_b16_row_complete_1%
on_info = {+jup_b16_row_1_blok} sr_idle@2
[sr_idle@2]
on_actor_in_zone = jup_b16_teleport | sr_idle %-jup_b16_row_1_blok%

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_actor_inside = {=jup_b16_is_zone_active -jup_b16_row_2_blok } sr_idle@2 %+jup_b16_row_complete_2 +jup_b16_row_2_blok%, {-jup_b16_row_2_blok} sr_idle@2 %+jup_b16_row_2_blok -jup_b16_row_complete_2%
on_info = {+jup_b16_row_2_blok} sr_idle@2
[sr_idle@2]
on_actor_in_zone = jup_b16_teleport | sr_idle %-jup_b16_row_2_blok%

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_actor_inside = {=jup_b16_is_zone_active -jup_b16_row_3_blok } sr_idle@2 %+jup_b16_row_complete_3 +jup_b16_row_3_blok%, {-jup_b16_row_3_blok} sr_idle@2 %+jup_b16_row_3_blok -jup_b16_row_complete_3%
on_info = {+jup_b16_row_3_blok} sr_idle@2
[sr_idle@2]
on_actor_in_zone = jup_b16_teleport | sr_idle %-jup_b16_row_3_blok%

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_actor_inside = {=jup_b16_is_zone_active -jup_b16_row_4_blok } sr_idle@2 %+jup_b16_row_complete_4 +jup_b16_row_4_blok%, {-jup_b16_row_4_blok} sr_idle@2 %+jup_b16_row_4_blok -jup_b16_row_complete_4%
on_info = {+jup_b16_row_4_blok} sr_idle@2
[sr_idle@2]
on_actor_in_zone = jup_b16_teleport | sr_idle %-jup_b16_row_4_blok%

View file

@ -0,0 +1,34 @@
[logic]
active = sr_idle@random
[sr_idle@turn_off]
on_info = sr_idle@random %=turn_off(jup_b43_heart_lamp)%
[sr_idle@random]
on_info = {~20} %+jup_b16_sr_1_1%, {~40} %+jup_b16_sr_1_2%, {~60} %+jup_b16_sr_1_3%, {~80} %+jup_b16_sr_1_4%, %+jup_b16_sr_1_5%
on_info2 = {~20} %+jup_b16_sr_2_1%, {~40} %+jup_b16_sr_2_2%, {~60} %+jup_b16_sr_2_3%, {~80} %+jup_b16_sr_2_4%, %+jup_b16_sr_2_5%
on_info3 = {~20} %+jup_b16_sr_3_1%, {~40} %+jup_b16_sr_3_2%, {~60} %+jup_b16_sr_3_3%, {~80} %+jup_b16_sr_3_4%, %+jup_b16_sr_3_5%
on_info4 = {~20} %+jup_b16_sr_4_1%, {~40} %+jup_b16_sr_4_2%, {~60} %+jup_b16_sr_4_3%, {~80} %+jup_b16_sr_4_4%, %+jup_b16_sr_4_5%
on_info6 = {+jup_b16_oasis_artefact_to_scientist +jup_b41_heart_spawn} sr_idle@nil %+jup_b16_randomize%
on_info5 = sr_idle@wait_for_reset %+jup_b16_randomize%
[sr_idle@wait_for_reset]
;on_info = {-jup_b16_oasis_artifact_spawn} %=spawn_object(af_oasis_heart:jup_b16_oasis_artifact_spawn) +jup_b16_oasis_artifact_spawn%
on_info = {-jup_b16_oasis_artifact_spawn} %+jup_b16_oasis_artifact_spawn%
on_info2 = {+jup_b16_oasis_start -jup_b16_oasis_give_task} %=give_task(jup_b16_oasis) +jup_b16_oasis_give_task%
on_info3 = {=surge_started} sr_idle@surge
on_info4 = {-jup_b16_randomize} sr_idle@random %-jup_b16_sr_1_1 -jup_b16_sr_1_2 -jup_b16_sr_1_3 -jup_b16_sr_1_4 -jup_b16_sr_1_5 -jup_b16_sr_2_1 -jup_b16_sr_2_2 -jup_b16_sr_2_3 -jup_b16_sr_2_4 -jup_b16_sr_2_5 -jup_b16_sr_3_1 -jup_b16_sr_3_2 -jup_b16_sr_3_3 -jup_b16_sr_3_4 -jup_b16_sr_3_5 -jup_b16_sr_4_1 -jup_b16_sr_4_2 -jup_b16_sr_4_3 -jup_b16_sr_4_4 -jup_b16_sr_4_5%
on_info5 = {+jup_b16_oasis_artefact_to_scientist =dist_to_actor_ge(30) -jup_b41_heart_spawn} %+jup_b41_heart_spawn =spawn_object(jup_b41_af_oasis_heart:jup_b41_heart_spawn) =turn_on(jup_b43_heart_lamp)%
on_info6 = {+jup_b16_oasis_artefact_to_scientist +jup_b41_heart_spawn} sr_idle@nil
[sr_idle@surge]
on_info = {!surge_started} sr_idle@wait_for_reset %-jup_b16_randomize%
on_info5 = {+jup_b16_oasis_artefact_to_scientist =dist_to_actor_ge(30) -jup_b41_heart_spawn} %+jup_b41_heart_spawn =spawn_object(jup_b41_af_oasis_heart:jup_b41_heart_spawn) =turn_on(jup_b43_heart_lamp)%
on_info2 = {+jup_b16_oasis_start -jup_b16_oasis_give_task} %=give_task(jup_b16_oasis) +jup_b16_oasis_give_task%
[sr_idle@surge_after_task]
on_info = {!surge_started} sr_idle@nil %-jup_b16_randomize%
[sr_idle@nil]
on_info3 = {=surge_started} sr_idle@surge_after_task
on_info4 = {-jup_b16_randomize} sr_idle@random %-jup_b16_sr_1_1 -jup_b16_sr_1_2 -jup_b16_sr_1_3 -jup_b16_sr_1_4 -jup_b16_sr_1_5 -jup_b16_sr_2_1 -jup_b16_sr_2_2 -jup_b16_sr_2_3 -jup_b16_sr_2_4 -jup_b16_sr_2_5 -jup_b16_sr_3_1 -jup_b16_sr_3_2 -jup_b16_sr_3_3 -jup_b16_sr_3_4 -jup_b16_sr_3_5 -jup_b16_sr_4_1 -jup_b16_sr_4_2 -jup_b16_sr_4_3 -jup_b16_sr_4_4 -jup_b16_sr_4_5%

View file

@ -0,0 +1,10 @@
[logic]
active = sr_idle
[sr_idle]
on_actor_inside = {+jup_b16_oasis_art} %=oasis_heal -jup_b16_row_complete_4 -jup_b16_row_complete_3 -jup_b16_row_complete_2 -jup_b16_row_complete_1 -jup_b16_no_teleport%, {-jup_b16_oasis_art} %+jup_b16_oasis_art -jup_b16_row_complete_4 -jup_b16_row_complete_3 -jup_b16_row_complete_2 -jup_b16_row_complete_1 -jup_b16_no_teleport%
on_info = {-actor_has_af_oasis_heart =actor_has_item(af_oasis_heart)} %+actor_has_af_oasis_heart +jup_b16_oasis_art =spawn_object(jup_b16_pseudodog_strong:jup_b16_spawn_psy_dog:0:270)%
on_info2 = {-save_jup_b16_passed_labyrinth =actor_in_zone(jup_b16_teleport) +jup_b16_no_teleport} %+save_jup_b16_passed_labyrinth =scenario_autosave(st_save_jup_b16_passed_labyrinth)%
;on_actor_inside = {-jup_b16_pseudodog} % =spawn_object(jup_b16_pseudodog_strong:jup_b16_spawn_psy_dog:0:270) +jup_b16_pseudodog%
;on_actor_inside2 = {+jup_b16_oasis_start} %+jup_b16_oasis_art%

View file

@ -0,0 +1,17 @@
[logic]
active = mob_home
[mob_home]
path_home = jup_b16_psy_dog_home
home_min_radius = 1
home_max_radius = 2
aggressive = true
on_info = {=npc_in_zone(jup_b16_oasis)} mob_home@1
out_restr = jup_oasis_default_in_restrictor
[mob_home@1]
path_home = jup_b16_psy_dog_home
home_min_radius = 30
home_max_radius = 50
aggressive = true
out_restr = jup_oasis_default_in_restrictor

View file

@ -0,0 +1,66 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_go_particle} sr_idle@2
[sr_idle@2]
on_actor_in_zone = jup_b16_show_particles_sr |{+jup_b16_show_particles} sr_idle@wait_for_show_particle
[sr_idle@wait_for_show_particle]
on_timer = 100 | {+jup_b16_sr_1_1 +jup_b16_row_complete_1} sr_particle@1_1 %-jup_b16_row_complete_1%
on_timer2 = 100 | {+jup_b16_sr_1_2 +jup_b16_row_complete_1} sr_particle@1_2 %-jup_b16_row_complete_1%
on_timer3 = 100 | {+jup_b16_sr_1_3 +jup_b16_row_complete_1} sr_particle@1_3 %-jup_b16_row_complete_1%
on_timer4 = 100 | {+jup_b16_sr_1_4 +jup_b16_row_complete_1} sr_particle@1_4 %-jup_b16_row_complete_1%
on_timer5 = 100 | {+jup_b16_sr_1_5 +jup_b16_row_complete_1} sr_particle@1_5 %-jup_b16_row_complete_1%
on_info = {-jup_b16_row_complete_1} sr_idle
[sr_particle@1_1]
name = anomaly2\oasis_way
path = jup_b16_sr_1_1_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_1_1} %+jup_b16_sound_1_1%
on_info2 = {-jup_b16_sr_1_1} sr_idle %-jup_b16_sound_1_1 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_1_1 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@1_2]
name = anomaly2\oasis_way
path = jup_b16_sr_1_2_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_1_2} %+jup_b16_sound_1_2%
on_info2 = {-jup_b16_sr_1_2} sr_idle %-jup_b16_sound_1_2 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_1_2 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@1_3]
name = anomaly2\oasis_way
path = jup_b16_sr_1_3_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_1_3} %+jup_b16_sound_1_3%
on_info2 = {-jup_b16_sr_1_3} sr_idle %-jup_b16_sound_1_3 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_1_3 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@1_4]
name = anomaly2\oasis_way
path = jup_b16_sr_1_4_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_1_4} %+jup_b16_sound_1_4%
on_info2 = {-jup_b16_sr_1_4} sr_idle %-jup_b16_sound_1_4 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_1_4 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@1_5]
name = anomaly2\oasis_way
path = jup_b16_sr_1_5_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_1_5} %+jup_b16_sound_1_5%
on_info2 = {-jup_b16_sr_1_5} sr_idle %-jup_b16_sound_1_5 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_1_5 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,66 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_go_particle} sr_idle@2
[sr_idle@2]
on_actor_in_zone = jup_b16_show_particles_sr | {+jup_b16_show_particles} sr_idle@wait_for_show_particle
[sr_idle@wait_for_show_particle]
on_timer = 100 | {+jup_b16_sr_2_1 +jup_b16_row_complete_2} sr_particle@2_1 %-jup_b16_row_complete_2%
on_timer2 = 100 | {+jup_b16_sr_2_2 +jup_b16_row_complete_2} sr_particle@2_2 %-jup_b16_row_complete_2%
on_timer3 = 100 | {+jup_b16_sr_2_3 +jup_b16_row_complete_2} sr_particle@2_3 %-jup_b16_row_complete_2%
on_timer4 = 100 | {+jup_b16_sr_2_4 +jup_b16_row_complete_2} sr_particle@2_4 %-jup_b16_row_complete_2%
on_timer5 = 100 | {+jup_b16_sr_2_5 +jup_b16_row_complete_2} sr_particle@2_5 %-jup_b16_row_complete_2%
on_info = {-jup_b16_row_complete_2} sr_idle
[sr_particle@2_1]
name = anomaly2\oasis_way
path = jup_b16_sr_2_1_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_2_1} %+jup_b16_sound_2_1%
on_info2 = {-jup_b16_sr_2_1} sr_idle %-jup_b16_sound_2_1 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_2_1 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@2_2]
name = anomaly2\oasis_way
path = jup_b16_sr_2_2_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_2_2} %+jup_b16_sound_2_2%
on_info2 = {-jup_b16_sr_2_2} sr_idle %-jup_b16_sound_2_2 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_2_2 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@2_3]
name = anomaly2\oasis_way
path = jup_b16_sr_2_3_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_2_3} %+jup_b16_sound_2_3%
on_info2 = {-jup_b16_sr_2_3} sr_idle %-jup_b16_sound_2_3 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_2_3 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@2_4]
name = anomaly2\oasis_way
path = jup_b16_sr_2_4_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_2_4} %+jup_b16_sound_2_4%
on_info2 = {-jup_b16_sr_2_4} sr_idle %-jup_b16_sound_2_4 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_2_4 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@2_5]
name = anomaly2\oasis_way
path = jup_b16_sr_2_5_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_2_5} %+jup_b16_sound_2_5%
on_info2 = {-jup_b16_sr_2_5} sr_idle %-jup_b16_sound_2_5 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_2_5 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,66 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_go_particle} sr_idle@2
[sr_idle@2]
on_actor_in_zone = jup_b16_show_particles_sr | {+jup_b16_show_particles} sr_idle@wait_for_show_particle
[sr_idle@wait_for_show_particle]
on_timer = 100 | {+jup_b16_sr_3_1 +jup_b16_row_complete_3} sr_particle@3_1 %-jup_b16_row_complete_3%
on_timer2 = 100 | {+jup_b16_sr_3_2 +jup_b16_row_complete_3} sr_particle@3_2 %-jup_b16_row_complete_3%
on_timer3 = 100 | {+jup_b16_sr_3_3 +jup_b16_row_complete_3} sr_particle@3_3 %-jup_b16_row_complete_3%
on_timer4 = 100 | {+jup_b16_sr_3_4 +jup_b16_row_complete_3} sr_particle@3_4 %-jup_b16_row_complete_3%
on_timer5 = 100 | {+jup_b16_sr_3_5 +jup_b16_row_complete_3} sr_particle@3_5 %-jup_b16_row_complete_3%
on_info = {-jup_b16_row_complete_3} sr_idle
[sr_particle@3_1]
name = anomaly2\oasis_way
path = jup_b16_sr_3_1_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_3_1} %+jup_b16_sound_3_1%
on_info2 = {-jup_b16_sr_3_1} sr_idle %-jup_b16_sound_3_1 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_3_1 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@3_2]
name = anomaly2\oasis_way
path = jup_b16_sr_3_2_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_3_2} %+jup_b16_sound_3_2%
on_info2 = {-jup_b16_sr_3_2} sr_idle %-jup_b16_sound_3_2 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_3_2 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@3_3]
name = anomaly2\oasis_way
path = jup_b16_sr_3_3_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_3_3} %+jup_b16_sound_3_3%
on_info2 = {-jup_b16_sr_3_3} sr_idle %-jup_b16_sound_3_3 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_3_3 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@3_4]
name = anomaly2\oasis_way
path = jup_b16_sr_3_4_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_3_4} %+jup_b16_sound_3_4%
on_info2 = {-jup_b16_sr_3_4} sr_idle %-jup_b16_sound_3_4 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_3_4 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@3_5]
name = anomaly2\oasis_way
path = jup_b16_sr_3_5_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_3_5} %+jup_b16_sound_3_5%
on_info2 = {-jup_b16_sr_3_5} sr_idle %-jup_b16_sound_3_5 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_3_5 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,66 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_go_particle} sr_idle@2
[sr_idle@2]
on_actor_in_zone = jup_b16_show_particles_sr | {+jup_b16_show_particles} sr_idle@wait_for_show_particle
[sr_idle@wait_for_show_particle]
on_timer = 100 | {+jup_b16_sr_4_1 +jup_b16_row_complete_4} sr_particle@4_1 %-jup_b16_row_complete_4%
on_timer2 = 100 | {+jup_b16_sr_4_2 +jup_b16_row_complete_4} sr_particle@4_2 %-jup_b16_row_complete_4%
on_timer3 = 100 | {+jup_b16_sr_4_3 +jup_b16_row_complete_4} sr_particle@4_3 %-jup_b16_row_complete_4%
on_timer4 = 100 | {+jup_b16_sr_4_4 +jup_b16_row_complete_4} sr_particle@4_4 %-jup_b16_row_complete_4%
on_timer5 = 100 | {+jup_b16_sr_4_5 +jup_b16_row_complete_4} sr_particle@4_5 %-jup_b16_row_complete_4%
on_info = {-jup_b16_row_complete_4} sr_idle
[sr_particle@4_1]
name = anomaly2\oasis_way
path = jup_b16_sr_4_1_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_4_1} %+jup_b16_sound_4_1%
on_info2 = {-jup_b16_sr_4_1} sr_idle %-jup_b16_sound_4_1 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_4_1 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@4_2]
name = anomaly2\oasis_way
path = jup_b16_sr_4_2_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_4_2} %+jup_b16_sound_4_2%
on_info2 = {-jup_b16_sr_4_2} sr_idle %-jup_b16_sound_4_2 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_4_2 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@4_3]
name = anomaly2\oasis_way
path = jup_b16_sr_4_3_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_4_3} %+jup_b16_sound_4_3%
on_info2 = {-jup_b16_sr_4_3} sr_idle %-jup_b16_sound_4_3 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_4_3 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@4_4]
name = anomaly2\oasis_way
path = jup_b16_sr_4_4_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_4_4} %+jup_b16_sound_4_4%
on_info2 = {-jup_b16_sr_4_4} sr_idle %-jup_b16_sound_4_4 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_4_4 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle
[sr_particle@4_5]
name = anomaly2\oasis_way
path = jup_b16_sr_4_5_particle
mode = 2
looped = true
on_info = {-jup_b16_sound_4_5} %+jup_b16_sound_4_5%
on_info2 = {-jup_b16_sr_4_5} sr_idle %-jup_b16_sound_4_5 -jup_b16_show_particles -jup_b16_go_particle%, {+jup_b16_actor_leave_oazis} sr_idle %-jup_b16_sound_4_5 -jup_b16_show_particles -jup_b16_go_particle%
;on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_1_1} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_1_2} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_1_3} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_1_4} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_1_5} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_2_1} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_2_2} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_2_3} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_2_4} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_2_5} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_3_1} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_3_2} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_3_3} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_3_4} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_3_5} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_4_1} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_4_2} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_4_3} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_4_4} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,9 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_sound_4_5} %=play_sound(jup_b16_oasis_noise)%
on_signal = sound_end | sr_idle@wait
[sr_idle@wait]
on_info = {-jup_b16_show_particles} sr_idle

View file

@ -0,0 +1,16 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b16_row_complete_1 +jup_b16_row_complete_2 +jup_b16_row_complete_3 +jup_b16_row_complete_4} %+jup_b16_no_teleport%
on_info2 = {-jup_b16_actor_leave_oazis =dist_to_actor_ge(150)} %+jup_b16_actor_leave_oazis%
on_actor_in_zone = jup_b16_teleport | {+jup_b16_actor_leave_oazis} %-jup_b16_actor_leave_oazis%
on_actor_in_zone2 = jup_b16_teleport | {-jup_b16_no_teleport} sr_idle@teleport %-jup_b16_show_particles -jup_b16_go_particle%
on_actor_in_zone3 = jup_b16_show_particles_sr| {+jup_b16_go_particle} %+jup_b16_show_particles%
[sr_idle@teleport]
;on_info = {-jup_b16_no_teleport} sr_idle %-jup_b16_no_teleport +jup_b16_go_particle =jup_teleport_actor%
on_info = {-jup_b16_no_teleport} sr_idle % +jup_b16_go_particle =jup_teleport_actor%

View file

@ -0,0 +1,18 @@
[logic]
active = sr_idle
[sr_idle]
on_info = {+jup_b19_merc_spawned} sr_cutscene@cam1 %=disable_ui%
on_info2 = {+jup_b19_fail} sr_idle@nil
[sr_cutscene@cam1]
point = jup_b19_merc4_10_walk
look = jup_b19_merc1_4_look
cam_effector = scenario_cam\Jupiter\jup_b19_waiting_for_mercs
on_signal = cameff_end | sr_idle@nil
global_cameffect = true
enable_ui_on_end = true
outdoor = true
on_info = {+jup_b19_fight_begun} %=stop_sr_cutscene%
[sr_idle@nil]

View file

@ -0,0 +1,71 @@
[logic@jup_b19_freedom_yar]
active = animpoint@start
suitable = {=check_npc_name(jup_b19_freedom_yar)}
prior = 200
post_combat_time = 5,5
on_death = death
[animpoint@start]
cover_name = jup_a6_animpoint_yar
use_camp = false
on_info = {+jup_b19_yar_switch_smart_terrain} animpoint@back
meet = meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded
[animpoint@back]
cover_name = jup_a6_animpoint_yar
use_camp = false
on_info = {=npc_in_zone(jup_a6_sr_light)} animpoint@back_done
combat_ignore_cond = {=npc_in_zone(jup_a6_sr_light)} true, {=check_enemy_name(jup_b19_zombied_)} true
meet = no_meet
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded
[animpoint@back_done]
cover_name = jup_a6_animpoint_yar
use_camp = false
meet = meet
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
out_restr = jup_a6_sr_noweap
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
wounded = wounded
[wounded]
hp_state = 0|wounded_heavy@help_heavy
hp_state_see = 0|wounded_heavy@help_heavy
hp_victim = 0|nil
hp_fight = 0|false
hp_cover = 0|false
[meet]
close_anim = nil
close_victim = nil
far_anim = nil
far_victim = nil
close_distance = 0
far_distance = 0
use = {=actor_enemy} false, true
allow_break = false
trade_enable = false
meet_on_talking = false
[danger]
ignore_distance = 0
[death]
on_info = %+jup_b19_yar_enemy_or_dead%

View file

@ -0,0 +1,339 @@
[logic@freedom_yar]
active = walker@start
suitable = {=check_npc_name(jup_b19_freedom_yar)}
post_combat_time = 0,0
prior = 200
on_death = death
on_hit = hit
[walker@gen]
def_state_moving = patrol
def_state_standing = guard_na
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
on_info2 = {+jup_b19_yar_enemy_or_dead =is_alive} %=kill_npc%
on_offline = {-jup_b19_yar_enemy_or_dead} %+jup_b19_yar_enemy_or_dead%
[camper@gen]
radius = 1
def_state_moving = rush
;def_state_standing = rush
def_state_campering = hide_na
def_state_campering_fire = hide_sniper_fire
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
attack_sound = false
no_retreat = true
wounded = wounded
on_info2 = {+jup_b19_yar_enemy_or_dead =is_alive} %=kill_npc%
on_offline = {-jup_b19_yar_enemy_or_dead} %+jup_b19_yar_enemy_or_dead%
[walker@start];:walker@gen
path_walk = yar_1_walk
path_look = yar_1_look
on_info = {=see_actor -jup_b19_arrived} %+jup_b19_arrived%
on_info2 = {+jup_b19_arrived_done} walker@meet
meet = no_meet
def_state_moving = patrol
def_state_standing = guard_na
combat_ignore_cond = true ;{=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@meet];:walker@gen
path_walk = yar_1_walk
path_look = yar_1_look
on_info = {+jup_b19_following_yar} walker@move_to_position
meet = meet@hunter
def_state_moving = patrol
def_state_standing = guard_na
combat_ignore_cond = true ;{=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@move_to_position]:walker@gen
path_walk = yar_2_walk
path_look = yar_2_look
on_info = {+jup_b19_actor_damaged_zombied} camper@move_to_position %=play_sound(jup_b19_freedom_yar_zombie_hit)%
on_signal = point2 | walker@move_to_position_2
meet = no_meet
[walker@move_to_position_2]:walker@gen
path_walk = yar_3_walk
path_look = yar_3_look
on_info = {+jup_b19_actor_damaged_zombied} camper@move_to_position %=play_sound(jup_b19_freedom_yar_zombie_hit)%
on_signal = point3 | walker@move_to_position_3 %=play_sound(jup_b19_freedom_yar_about_zombie)%
meet = no_meet
[walker@move_to_position_3]:walker@gen
path_walk = yar_4_walk
path_look = yar_4_look
on_info = {+jup_b19_actor_damaged_zombied} camper@move_to_position %=play_sound(jup_b19_freedom_yar_zombie_hit)%
on_signal = point4 | walker@move_to_position_4 %=play_sound(jup_b19_freedom_yar_about_zombie)%
meet = no_meet
[walker@move_to_position_4]:walker@gen
path_walk = yar_5_walk
path_look = yar_5_look
on_info = {+jup_b19_actor_damaged_zombied} camper@move_to_position %=play_sound(jup_b19_freedom_yar_zombie_hit)%
on_signal = point5 | walker@move_to_position_9 %=play_sound(jup_b19_freedom_yar_about_zombie)%
meet = no_meet
[walker@move_to_position_9]:walker@gen
path_walk = yar_10_walk
path_look = yar_10_look
on_info = {+jup_b19_actor_damaged_zombied} camper@move_to_position %=play_sound(jup_b19_freedom_yar_zombie_hit)%
on_signal = point10 | walker@move_to_position_10
meet = no_meet
[walker@move_to_position_10]:walker@gen
path_walk = yar_11_walk
path_look = yar_11_look
on_info = {+jup_b19_actor_damaged_zombied} camper@move_to_position %=play_sound(jup_b19_freedom_yar_zombie_hit)%
on_signal = point11 | walker@move_to_position_11
meet = no_meet
[walker@move_to_position_11]:walker@gen
path_walk = yar_12_walk
path_look = yar_12_look
on_info = {+jup_b19_actor_damaged_zombied} camper@move_to_position %=play_sound(jup_b19_freedom_yar_zombie_hit)%
on_signal = point12 | camper@move_to_position_12 ;walker@move_to_position_12
meet = no_meet
out_restr = jup_b19_sr_actor_close_by_yar
[camper@move_to_position]:camper@gen
path_walk = yar_12_walk
path_look = yar_12_look
on_info = {=npc_in_zone(jup_b19_sr_actor_close_by_yar)} camper@move_to_position_12 ;walker@move_to_position_12
meet = no_meet
out_restr = jup_b19_sr_actor_close_by_yar
[camper@move_to_position_12]:camper@gen
path_walk = yar_12_walk
path_look = yar_15_look
on_info = {!actor_in_zone(jup_b19_sr_actor_close_by_yar)} %=play_sound(jup_b19_freedom_yar_come_here)%, walker@timer_to_ready %+jup_b19_merc_spawned -jup_b19_actor_damaged_zombied%
meet = no_meet
out_restr = jup_b19_sr_actor_close_by_yar
[walker@timer_to_ready]
path_walk = yar_12_walk
path_look = yar_15_look
def_state_standing = hide_na
on_game_timer = 40 | walker@ready %=play_sound(jup_b19_freedom_yar_suspense)%
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_merc)} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
meet = no_meet
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_b19_sr_actor_close_by_yar
[walker@ready]
path_walk = yar_12_walk
path_look = yar_15_look
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_merc)} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
on_info = {+jup_b19_mercs_can_fight} remark@fight
on_info2 = {+jup_b19_fight_begun} remark@fight
danger = danger
def_state_standing = hide_na
meet = no_meet
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_b19_sr_actor_close_by_yar
[remark@fight]
anim = hide_sniper_fire ;hide
target = path | jup_b19_yar_15_look,0
on_info = %=play_sound(jup_b19_freedom_yar_guessed_short)%
on_signal = sound_end | camper@fight %+jup_b19_fight_begun%
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_merc)} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
meet = no_meet
wounded = wounded
out_restr = jup_b19_sr_actor_close_by_yar
[camper@fight]
path_walk = yar_12_walk
path_look = yar_15_look
radius = 0
no_retreat = true
def_state_moving = sneak
def_state_moving_fire = sneak_fire
def_state_campering = hide_na
def_state_campering_fire = hide_sniper_fire
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
on_info = {!squad_exist(jup_b19_merc_squad) -jup_b19_actor_damaged_zombied} walker@after_fire
on_info2 = {!squad_exist(jup_b19_merc_squad) +jup_b19_actor_damaged_zombied !squad_exist(jup_b19_kopatci_zombied_squad) -jup_b19_freedom_yar_explanations_done} walker@after_fire
on_info3 = {!squad_exist(jup_b19_merc_squad) +jup_b19_actor_damaged_zombied !squad_exist(jup_b19_kopatci_zombied_squad) +jup_b19_freedom_yar_explanations_done} walker@after_remark
danger = danger
attack_sound = false
meet = meet@camper
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_b19_sr_actor_close_by_yar
[walker@after_fire]
path_walk = yar_13_walk
path_look = yar_13_look
def_state_moving = assault
def_state_standing = guard_na
on_signal = remark | remark@after_fire
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
on_info = {+jup_b19_actor_damaged_zombied =squad_exist(jup_b19_kopatci_zombied_squad)} camper@fight %=play_sound(jup_b19_freedom_yar_zombie_hit)%
danger = danger
meet = no_meet
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
;out_restr = jup_b19_sr_actor_close_by_yar
[remark@after_fire]
anim = guard_na
target = story | actor
on_info = {-jup_b19_freedom_yar_explanations_done} %=play_sound(jup_b19_freedom_yar_explanations) +jup_b19_freedom_yar_explanations_done%
on_signal = sound_end | walker@after_remark
on_info2 = {+jup_b19_actor_damaged_zombied =squad_exist(jup_b19_kopatci_zombied_squad) =is_playing_sound} camper@fight %=stop_sound%, {+jup_b19_actor_damaged_zombied =squad_exist(jup_b19_kopatci_zombied_squad) !is_playing_sound} camper@fight
;on_info3 = {+jup_b19_freedom_yar_explanations_done} walker@after_remark
meet = no_meet
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
;out_restr = jup_b19_sr_actor_close_by_yar
[walker@after_remark]
path_walk = yar_13_walk
path_look = yar_13_look
def_state_moving = patrol
def_state_standing = guard_na
on_info = {+jup_b19_yar_dont_teleport_actor_to_yanov} walker@checkpoint %-jup_b19_dont_break%
on_info2 = {+jup_b19_actor_damaged_zombied -jup_b19_zombied_dead} camper@fight
;on_info3 = {+jup_b19_yar_switch_smart_terrain} %=teleport_npc(jup_a6_spawn_point)%
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
meet = meet@final
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
;out_restr = jup_b19_sr_actor_close_by_yar
[walker@checkpoint]
path_walk = yar_comeback_2_walk
path_look = yar_comeback_2_look
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
def_state_moving = rush
def_state_standing = guard_na
on_signal = check | walker@go_to_yanov
meet = no_meet
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@go_to_yanov]
path_walk = yar_comeback_1_walk
path_look = yar_comeback_1_look
combat_ignore_cond = {=check_enemy_name(jup_b19_zombied_1) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(jup_b19_zombied_2) -jup_b19_actor_damaged_zombied} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
def_state_moving = rush
def_state_standing = guard_na
on_signal = switch | %+jup_b19_yar_switch_smart_terrain%
meet = no_meet
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
out_restr = jup_a6_sr_noweap
[meet@hunter]
close_anim = guard_na
close_victim = actor
close_distance = 3
close_snd_hello = {=actor_has_weapon} meet_hide_weapon, nil
close_snd_bye = nil
abuse = true
use = {+jup_b19_ui_input_enabled} self, false
trade_enable = false
allow_break = false
meet_dialog = {+jup_b19_arrived -jup_b19_following_yar} jup_b19_freedom_yar_prepare_start
[meet@final]
close_anim = guard_na
close_victim = actor
close_distance = 3
close_snd_hello = {=actor_has_weapon} meet_hide_weapon, nil
close_snd_bye = nil
;use = {=actor_has_weapon} false, true
use = true
abuse = true
trade_enable = false
allow_break = false
meet_dialog = jup_b19_freedom_yar_done_start
[meet@camper]
close_distance = 0
close_snd_hello = nil
close_snd_bye = nil
use = false
snd_on_use = {=has_enemy} meet_use_no_fight, {!has_enemy} nil
abuse = false
;snd_on_use = {=has_enemy} meet_use_no_fight, nil
[meet]
;close_anim = guard
close_victim = actor
use = {=actor_enemy} false, true
abuse = true
trade_enable = false
allow_break = false
[wounded]
hp_state = 0|wounded_heavy@help_heavy
hp_state_see = 0|wounded_heavy@help_heavy
hp_victim = 0|nil
hp_fight = 0|false
hp_cover = 0|false
[danger]
ignore_distance = 0
ignore_distance_grenade = 0
ignore_distance_corpse = 0
ignore_distance_hit = 0
ignore_distance_sound = 0
[hit]
on_info = {!actor_enemy} %=restore_health =stop_sound%, %=stop_sound%
[death]
on_info = %+jup_b19_yar_enemy_or_dead =stop_sound%

View file

@ -0,0 +1,85 @@
[logic@work_killer_1]
active = walker@walk1
suitable = {=check_npc_name(jup_b19_merc_1)}
prior = 100
on_death = death
on_hit = hit
[walker@walk1]
path_walk = merc1_1_walk
path_look = merc1_1_look
on_signal = merc1_1 | walker@walk2
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk2]
path_walk = merc1_2_walk
path_look = merc1_2_look
on_signal = merc1_2 | walker@walk3
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk3]
path_walk = merc1_3_walk
path_look = merc1_3_look
on_signal = merc1_3 | walker@walk4
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk4]
path_walk = merc1_4_walk
path_look = merc1_4_look
on_signal = merc1_4 | {-jup_b19_mercs_can_fight} walker@walk5 %+jup_b19_mercs_can_fight%
on_info = {+jup_b19_mercs_can_fight} walker@walk5
on_info2 = {+jup_b19_fight_begun} walker@walk5
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
out_restr = jup_b19_zombied_restrictor
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk5]
path_walk = merc1_10_walk
path_look = merc1_10_look
wounded = wounded
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
;out_restr = jup_b19_sr_actor_close_by_yar
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[wounded]
hp_state = 0|wounded_heavy@help_heavy
hp_state_see = 0|wounded_heavy@help_heavy
hp_victim = 0|nil
hp_fight = 0|false
hp_cover = 0|false
[hit]
on_info = {-jup_b19_fight_begun} %+jup_b19_fight_begun%
[danger]
ignore_distance = 0
[death]
on_info = %=inc_counter(merc_death)%

View file

@ -0,0 +1,84 @@
[logic@work_killer_2]
active = walker@walk1
suitable = {=check_npc_name(jup_b19_merc_2)}
prior = 100
on_death = death
on_hit = hit
[walker@walk1]
path_walk = merc2_1_walk
path_look = merc2_1_look
on_signal = merc1_1 | walker@walk2
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk2]
path_walk = merc2_2_walk
path_look = merc2_2_look
on_signal = merc1_2 | walker@walk3
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk3]
path_walk = merc2_3_walk
path_look = merc2_3_look
on_signal = merc1_3 | walker@walk4
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk4]
path_walk = merc2_4_walk
path_look = merc2_4_look
on_signal = merc1_4 | {-jup_b19_mercs_can_fight} walker@walk5 %+jup_b19_mercs_can_fight%
on_info = {+jup_b19_mercs_can_fight} walker@walk5
on_info2 = {+jup_b19_fight_begun} walker@walk5
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
out_restr = jup_b19_zombied_restrictor
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk5]
path_walk = merc2_10_walk
path_look = merc2_10_look
wounded = wounded
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
;out_restr = jup_b19_sr_actor_close_by_yar
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[wounded]
hp_state = 0|wounded_heavy@help_heavy
hp_state_see = 0|wounded_heavy@help_heavy
hp_victim = 0|nil
hp_fight = 0|false
hp_cover = 0|false
[hit]
on_info = {-jup_b19_fight_begun} %+jup_b19_fight_begun%
[danger]
ignore_distance = 0
[death]
on_info = %=inc_counter(merc_death)%

View file

@ -0,0 +1,84 @@
[logic@work_killer_3]
active = walker@walk1
suitable = {=check_npc_name(jup_b19_merc_3)}
prior = 100
on_death = death
on_hit = hit
[walker@walk1]
path_walk = merc3_1_walk
path_look = merc3_1_look
on_signal = merc1_1 | walker@walk2
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk2]
path_walk = merc3_2_walk
path_look = merc3_2_look
on_signal = merc1_2 | walker@walk3
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk3]
path_walk = merc3_3_walk
path_look = merc3_3_look
on_signal = merc1_3 | walker@walk4
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk4]
path_walk = merc3_4_walk
path_look = merc3_4_look
on_signal = merc1_4 | {-jup_b19_mercs_can_fight} walker@walk5 %+jup_b19_mercs_can_fight%
on_info = {+jup_b19_mercs_can_fight} walker@walk5
on_info2 = {+jup_b19_fight_begun} walker@walk5
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
out_restr = jup_b19_zombied_restrictor
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk5]
path_walk = merc3_10_walk
path_look = merc3_10_look
wounded = wounded
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
;out_restr = jup_b19_sr_actor_close_by_yar
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[wounded]
hp_state = 0|wounded_heavy@help_heavy
hp_state_see = 0|wounded_heavy@help_heavy
hp_victim = 0|nil
hp_fight = 0|false
hp_cover = 0|false
[hit]
on_info = {-jup_b19_fight_begun} %+jup_b19_fight_begun%
[danger]
ignore_distance = 0
[death]
on_info = %=inc_counter(merc_death)%

View file

@ -0,0 +1,84 @@
[logic@work_killer_4]
active = walker@walk1
suitable = {=check_npc_name(jup_b19_merc_4)}
prior = 100
on_death = death
on_hit = hit
[walker@walk1]
path_walk = merc4_1_walk
path_look = merc4_1_look
on_signal = merc1_1 | walker@walk2
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk2]
path_walk = merc4_2_walk
path_look = merc4_2_look
on_signal = merc1_2 | walker@walk3
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk3]
path_walk = merc4_3_walk
path_look = merc4_3_look
on_signal = merc1_3 | walker@walk4
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk4]
path_walk = merc4_4_walk
path_look = merc4_4_look
on_signal = merc1_4 | walker@walk5 {-jup_b19_mercs_can_fight} %+jup_b19_mercs_can_fight%
on_info = {+jup_b19_mercs_can_fight} walker@walk5
on_info2 = {+jup_b19_fight_begun} walker@walk5
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
out_restr = jup_b19_zombied_restrictor
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk5]
path_walk = merc4_10_walk
path_look = merc4_10_look
wounded = wounded
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
;out_restr = jup_b19_sr_actor_close_by_yar
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[wounded]
hp_state = 0|wounded_heavy@help_heavy
hp_state_see = 0|wounded_heavy@help_heavy
hp_victim = 0|nil
hp_fight = 0|false
hp_cover = 0|false
[hit]
on_info = {-jup_b19_fight_begun} %+jup_b19_fight_begun%
[danger]
ignore_distance = 0
[death]
on_info = %=inc_counter(merc_death)%

View file

@ -0,0 +1,84 @@
[logic@work_killer_5]
active = walker@walk1
suitable = {=check_npc_name(jup_b19_merc_5)}
prior = 100
on_death = death
on_hit = hit
[walker@walk1]
path_walk = merc5_1_walk
path_look = merc5_1_look
on_signal = merc1_1 | walker@walk2
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk2]
path_walk = merc5_2_walk
path_look = merc5_2_look
on_signal = merc1_2 | walker@walk3
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk3]
path_walk = merc5_3_walk
path_look = merc5_3_look
on_signal = merc1_3 | walker@walk4
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk4]
path_walk = merc5_4_walk
path_look = merc5_4_look
on_signal = merc1_4 | {-jup_b19_mercs_can_fight} walker@walk5 %+jup_b19_mercs_can_fight%
on_info = {+jup_b19_mercs_can_fight} walker@walk5
on_info2 = {+jup_b19_fight_begun} walker@walk5
def_state_moving1 = rush
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
danger = danger
wounded = wounded
out_restr = jup_b19_zombied_restrictor
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[walker@walk5]
path_walk = merc2_10_walk
path_look = merc2_10_look
wounded = wounded
combat_ignore_cond = {=check_enemy_name(jup_b19_freedom_yar:actor:jup_b19_zombied) -jup_b19_fight_begun} true, {=check_enemy_name(sim_default) =fighting_dist_ge(30)} true
;out_restr = jup_b19_sr_actor_close_by_yar
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
[wounded]
hp_state = 0|wounded_heavy@help_heavy
hp_state_see = 0|wounded_heavy@help_heavy
hp_victim = 0|nil
hp_fight = 0|false
hp_cover = 0|false
[hit]
on_info = {-jup_b19_fight_begun} %+jup_b19_fight_begun%
[danger]
ignore_distance = 0
[death]
on_info = %=inc_counter(merc_death)%

Some files were not shown because too many files have changed in this diff Show more