realgray-stellaris-mod/common/scripted_effects/RG_gray_goo_effects.txt

748 lines
15 KiB
Plaintext
Raw Normal View History

2023-06-03 17:46:32 +08:00
#灰风舰船刷新位置检测
rg_global_gray_location_check = {
if = {
2023-06-08 13:11:05 +08:00
limit = {
has_country_flag = gray_constship_active
}
2023-06-03 17:46:32 +08:00
if = {
2023-06-08 13:11:05 +08:00
limit = {
exists = event_target:global_gray_constship
}
2023-06-03 17:46:32 +08:00
event_target:global_gray_constship = {
save_global_event_target_as = global_gray_location
}
2023-06-08 13:11:05 +08:00
}
else = {
2023-06-03 17:46:32 +08:00
random_owned_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_constship
}
2023-06-03 17:46:32 +08:00
save_global_event_target_as = global_gray_location
}
}
}
else_if = {
2023-06-08 13:11:05 +08:00
limit = {
has_country_flag = gray_warship_active
}
2023-06-03 17:46:32 +08:00
if = {
2023-06-08 13:11:05 +08:00
limit = {
exists = event_target:gray_warship
}
2023-06-03 17:46:32 +08:00
event_target:gray_warship = {
save_global_event_target_as = global_gray_location
}
2023-06-08 13:11:05 +08:00
}
else = {
2023-06-03 17:46:32 +08:00
random_owned_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_fleet
}
2023-06-03 17:46:32 +08:00
save_global_event_target_as = global_gray_location
}
}
}
else_if = {
2023-06-08 13:11:05 +08:00
limit = {
has_country_flag = gray_juggernaut_active
}
2023-06-03 17:46:32 +08:00
if = {
2023-06-08 13:11:05 +08:00
limit = {
exists = event_target:gray_juggernaut
}
2023-06-03 17:46:32 +08:00
event_target:gray_juggernaut = {
save_global_event_target_as = global_gray_location
}
2023-06-08 13:11:05 +08:00
}
else = {
2023-06-03 17:46:32 +08:00
random_controlled_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_juggernaut_fleet
}
2023-06-03 17:46:32 +08:00
save_global_event_target_as = global_gray_location
}
}
}
else_if = {
2023-06-08 13:11:05 +08:00
limit = {
has_country_flag = gray_governor_active
}
2023-06-03 17:46:32 +08:00
if = {
2023-06-08 13:11:05 +08:00
limit = {
any_owned_planet = {
exists = sector.leader
sector.leader = {
has_leader_flag = gray_governor
}
2023-06-03 17:46:32 +08:00
}
}
random_owned_planet = {
limit = {
exists = sector.leader
2023-06-08 13:11:05 +08:00
sector.leader = {
has_leader_flag = gray_governor
}
2023-06-03 17:46:32 +08:00
}
save_global_event_target_as = global_gray_location
}
}
else = {
2023-06-08 13:11:05 +08:00
capital_scope = {
save_global_event_target_as = global_gray_location
}
2023-06-03 17:46:32 +08:00
}
2023-06-08 13:11:05 +08:00
}
2023-06-03 17:46:32 +08:00
else_if = {
2023-06-08 13:11:05 +08:00
limit = {
has_country_flag = gray_army_active
}
2023-06-03 17:46:32 +08:00
if = {
limit = {
any_owned_army = {
army_type = gray_army
exists = planet
}
}
random_owned_army = {
2023-06-08 13:11:05 +08:00
limit = {
army_type = gray_army
}
planet = {
save_global_event_target_as = global_gray_location
}
2023-06-03 17:46:32 +08:00
}
}
else = {
random_owned_army = {
2023-06-08 13:11:05 +08:00
limit = {
army_type = gray_army
}
fleet = {
save_global_event_target_as = global_gray_location
}
2023-06-03 17:46:32 +08:00
}
}
}
else = {
2023-06-08 13:11:05 +08:00
capital_scope = {
save_global_event_target_as = global_gray_location
}
2023-06-03 17:46:32 +08:00
}
}
2023-06-08 13:11:05 +08:00
#创造灰风总督
2023-06-08 13:11:05 +08:00
rg_create_gray_governor = {
if = {
limit = {
has_country_flag = gray_governor_active
}
}
2023-06-06 11:03:08 +08:00
else = {
#延迟执行
optimize_memory
#删除战舰
every_owned_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_fleet
}
2023-06-06 11:03:08 +08:00
delete_fleet = {
target = this
kill_leader = no
destroy_template = yes
}
}
#删除科学舰
every_owned_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_constship
}
2023-06-06 11:03:08 +08:00
delete_fleet = {
target = this
kill_leader = no
destroy_template = yes
}
}
#删除陆军
every_owned_army = {
2023-06-08 13:11:05 +08:00
limit = {
army_type = gray_army
}
2023-06-06 11:03:08 +08:00
if = {
2023-06-08 13:11:05 +08:00
limit = {
exists = leader
}
2023-06-06 11:03:08 +08:00
unassign_leader = leader
}
remove_army = yes
}
#存储当前领袖等级
every_owned_leader = {
if = {
###等级检测
limit = {
has_leader_flag = rg_gray_leader
NOT = {
has_leader_flag = rg_gray_leader_temp
}
}
#导出等级到暂存
export_trigger_value_to_variable = {
trigger = has_skill
variable = rg_gray_level_temp
}
#导入变量
owner = {
set_variable = {
which = rg_gray_level
value = prev.rg_gray_level_temp
}
}
#清理暂存区
clear_variable = rg_gray_level_temp
}
}
2023-06-06 11:03:08 +08:00
#把所有种类的小灰领袖都送回娘家
every_owned_leader = {
2023-06-08 13:11:05 +08:00
limit = {
has_leader_flag = rg_gray_leader
}
2023-06-06 11:03:08 +08:00
set_owner = event_target:rg_gray_country
set_leader_flag = rg_gray_leader_temp
# kill_leader = { show_notification = no }
}
2023-06-06 11:03:08 +08:00
#把娘家的总督领袖接回来
if = {
2023-06-08 13:11:05 +08:00
limit = {
2023-06-06 11:03:08 +08:00
exists = event_target:gray_governor
}
2023-06-08 13:11:05 +08:00
event_target:gray_governor = {
set_owner = event_target:gray_owner
2023-06-06 11:03:08 +08:00
remove_leader_flag = rg_gray_leader_temp
}
}
2023-06-06 11:03:08 +08:00
#如果不存在总督备份,现场变一个
else = {
rg_gray_govener_init = yes
}
2023-06-06 11:03:08 +08:00
#设置总督已启用标识
set_country_flag = gray_governor_active
#更新灰风形态
remove_country_flag = gray_warship_active
remove_country_flag = rg_kac_grayfleet_active
remove_country_flag = gray_constship_active
remove_country_flag = gray_army_active
#等级导入,把存储的领袖等级赋予到领袖身上
random_owned_leader = {
2023-06-08 13:11:05 +08:00
limit = {
has_leader_flag = gray_governor
}
2023-06-06 11:03:08 +08:00
set_skill = owner.rg_gray_level
}
}
}
2023-06-08 13:11:05 +08:00
#创造灰风战舰
rg_create_gray_warship = {
2023-06-08 13:11:05 +08:00
if = {
limit = {
has_country_flag = gray_warship_active
}
}
2023-06-06 11:03:08 +08:00
else = {
optimize_memory
#舰船刷新位置检测
rg_global_gray_location_check = yes
# 存储当前领袖等级
every_owned_leader = {
if = {
###等级检测
limit = {
has_leader_flag = rg_gray_leader
NOT = {
has_leader_flag = rg_gray_leader_temp
}
}
2023-06-06 11:03:08 +08:00
export_trigger_value_to_variable = {
trigger = has_skill
variable = rg_gray_level_temp
}
2023-06-06 11:03:08 +08:00
owner = {
set_variable = {
which = rg_gray_level
value = prev.rg_gray_level_temp
}
}
clear_variable = rg_gray_level_temp
}
}
2023-06-06 11:03:08 +08:00
every_owned_leader = {
2023-06-08 13:11:05 +08:00
limit = {
has_leader_flag = rg_gray_leader
}
2023-06-06 11:03:08 +08:00
set_owner = event_target:rg_gray_country
set_leader_flag = rg_gray_leader_temp
# kill_leader = { show_notification = no }
}
if = {
2023-06-08 13:11:05 +08:00
limit = {
2023-06-06 11:03:08 +08:00
exists = event_target:gray_leader_admiral
}
2023-06-08 13:11:05 +08:00
event_target:gray_leader_admiral = {
set_owner = event_target:gray_owner
2023-06-06 11:03:08 +08:00
remove_leader_flag = rg_gray_leader_temp
}
}
2023-06-06 11:03:08 +08:00
else = {
rg_gray_admiral_init = yes
}
2023-06-06 11:03:08 +08:00
set_country_flag = gray_warship_active
if = {
limit = {
has_country_flag = rg_gray_level_2
}
2023-06-11 12:36:05 +08:00
rg_warship_init_mod1 = yes
2023-06-06 11:03:08 +08:00
}
else_if = {
limit = {
has_country_flag = rg_gray_level_3
NOT = {
has_country_flag = gray_warship_is_juggernaut
}
}
2023-06-11 12:36:05 +08:00
rg_warship_init_mod2 = yes
}
2023-06-06 11:03:08 +08:00
else_if = {
limit = {
has_country_flag = gray_warship_is_juggernaut
}
2023-06-11 12:36:05 +08:00
rg_warship_init_mod3 = yes
2023-06-06 11:03:08 +08:00
}
else = {
2023-06-11 12:36:05 +08:00
rg_warship_init_mod0 = yes
2023-06-06 11:03:08 +08:00
}
every_owned_army = {
2023-06-08 13:11:05 +08:00
limit = {
army_type = gray_army
}
2023-06-06 11:03:08 +08:00
if = {
2023-06-08 13:11:05 +08:00
limit = {
exists = leader
}
2023-06-06 11:03:08 +08:00
unassign_leader = leader
}
remove_army = yes
}
every_owned_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_constship
}
2023-06-06 11:03:08 +08:00
delete_fleet = {
target = this
kill_leader = no
destroy_template = yes
}
}
remove_country_flag = gray_constship_active
remove_country_flag = gray_governor_active
remove_country_flag = gray_army_active
random_owned_leader = {
2023-06-08 13:11:05 +08:00
limit = {
has_leader_flag = gray_admiral
}
2023-06-06 11:03:08 +08:00
set_skill = owner.rg_gray_level
}
}
}
2023-06-08 13:11:05 +08:00
2023-06-06 11:03:08 +08:00
#创造灰风地面单位
rg_create_gray_army = {
2023-06-08 13:11:05 +08:00
if = {
limit = {
has_leader_flag = gray_army_active
}
}
2023-06-06 11:03:08 +08:00
else = {
optimize_memory
#舰船刷新位置检测
rg_global_gray_location_check = yes
every_owned_leader = {
if = {
###等级检测
limit = {
has_leader_flag = rg_gray_leader
NOT = {
has_leader_flag = rg_gray_leader_temp
}
}
export_trigger_value_to_variable = {
trigger = has_skill
variable = rg_gray_level_temp
}
2023-06-06 11:03:08 +08:00
owner = {
set_variable = {
which = rg_gray_level
value = prev.rg_gray_level_temp
}
}
clear_variable = rg_gray_level_temp
}
}
2023-06-06 11:03:08 +08:00
every_owned_leader = {
2023-06-08 13:11:05 +08:00
limit = {
has_leader_flag = rg_gray_leader
}
2023-06-06 11:03:08 +08:00
set_owner = event_target:rg_gray_country
set_leader_flag = rg_gray_leader_temp
# kill_leader = { show_notification = no }
}
if = {
2023-06-08 13:11:05 +08:00
limit = {
2023-06-06 11:03:08 +08:00
exists = event_target:gray_leader_general
}
2023-06-08 13:11:05 +08:00
event_target:gray_leader_general = {
set_owner = event_target:gray_owner
2023-06-06 11:03:08 +08:00
remove_leader_flag = rg_gray_leader_temp
}
}
else = {
rg_gray_general_init = yes
}
create_ship_design = {
design = "NAME_RG_armed_transport_ship"
}
2023-06-06 11:03:08 +08:00
add_ship_design = last_created_design
set_country_flag = gray_army_active
create_fleet = {
name = "NAME_Gray"
effect = {
set_owner = prev
2023-06-06 11:03:08 +08:00
create_army_transport = {
ship_name = "NAME_Gray"
army_name = "NAME_Gray"
army_type = "gray_army"
}
set_location = {
2023-06-03 17:46:32 +08:00
target = event_target:global_gray_location
distance = 0
2023-06-08 13:11:05 +08:00
angle = random
}
2023-06-06 11:03:08 +08:00
# set_cloaking_active = yes
set_fleet_stance = aggressive
}
}
last_created_army = {
assign_leader = event_target:gray_leader_general
}
every_owned_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_fleet
}
2023-06-06 11:03:08 +08:00
delete_fleet = {
target = this
kill_leader = no
destroy_template = yes
}
}
2023-06-06 11:03:08 +08:00
every_owned_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_constship
}
2023-06-06 11:03:08 +08:00
delete_fleet = {
target = this
kill_leader = no
destroy_template = yes
}
}
remove_country_flag = gray_warship_active
remove_country_flag = rg_kac_grayfleet_active
remove_country_flag = gray_governor_active
remove_country_flag = gray_constship_active
remove_ship_design = last_created_design
random_owned_leader = {
2023-06-08 13:11:05 +08:00
limit = {
has_leader_flag = gray_general
}
2023-06-06 11:03:08 +08:00
set_skill = owner.rg_gray_level
}
}
2023-06-06 11:03:08 +08:00
}
2023-06-08 13:11:05 +08:00
2023-06-06 11:03:08 +08:00
#创造灰风科学舰
rg_create_gray_const = {
2023-06-08 13:11:05 +08:00
if = {
limit = {
has_country_flag = gray_constship_active
}
}
else = {
2023-06-06 11:03:08 +08:00
optimize_memory
#舰船刷新位置检测
rg_global_gray_location_check = yes
every_owned_leader = {
if = {
###等级检测
limit = {
has_leader_flag = rg_gray_leader
NOT = {
has_leader_flag = rg_gray_leader_temp
}
}
export_trigger_value_to_variable = {
trigger = has_skill
variable = rg_gray_level_temp
}
owner = {
set_variable = {
which = rg_gray_level
value = prev.rg_gray_level_temp
}
}
clear_variable = rg_gray_level_temp
}
}
every_owned_leader = {
2023-06-08 13:11:05 +08:00
limit = {
has_leader_flag = rg_gray_leader
}
2023-06-06 11:03:08 +08:00
set_owner = event_target:rg_gray_country
set_leader_flag = rg_gray_leader_temp
# kill_leader = { show_notification = no }
}
if = {
2023-06-08 13:11:05 +08:00
limit = {
2023-06-06 11:03:08 +08:00
exists = event_target:gray_leader_scientist
}
2023-06-08 13:11:05 +08:00
event_target:gray_leader_scientist = {
set_owner = event_target:gray_owner
2023-06-06 11:03:08 +08:00
remove_leader_flag = rg_gray_leader_temp
}
}
else = {
rg_gray_scientist_init = yes
}
set_country_flag = gray_constship_active
create_fleet = {
name = "NAME_Gray"
2023-06-08 13:11:05 +08:00
settings = {
can_upgrade = no
can_disband = no
2023-06-08 13:11:05 +08:00
can_change_composition = no
can_change_leader = yes
uses_naval_capacity = no
2023-06-08 13:11:05 +08:00
spawn_debris = no
}
effect = {
set_owner = prev
create_ship = {
name = "NAME_Gray"
2023-06-06 11:03:08 +08:00
design = "NAME_RG_GRAY_scienceship"
prefix = no
upgradable = yes
}
2023-06-06 11:03:08 +08:00
set_fleet_stance = evasive
set_location = {
2023-06-03 17:46:32 +08:00
target = event_target:global_gray_location
distance = 0
2023-06-08 13:11:05 +08:00
angle = random
}
2023-06-06 11:03:08 +08:00
set_fleet_flag = gray_constship
save_global_event_target_as = global_gray_constship
set_cloaking_active = yes
assign_leader = event_target:gray_leader_scientist
2023-06-03 00:02:37 +08:00
}
}
2023-06-06 11:03:08 +08:00
every_owned_fleet = {
2023-06-08 13:11:05 +08:00
limit = {
has_fleet_flag = gray_fleet
}
2023-06-06 11:03:08 +08:00
delete_fleet = {
target = this
kill_leader = no
destroy_template = yes
}
}
2023-06-06 11:03:08 +08:00
every_owned_army = {
2023-06-08 13:11:05 +08:00
limit = {
army_type = gray_army
}
2023-06-06 11:03:08 +08:00
if = {
2023-06-08 13:11:05 +08:00
limit = {
exists = leader
}
2023-06-06 11:03:08 +08:00
unassign_leader = leader
}
2023-06-06 11:03:08 +08:00
remove_army = yes
}
2023-06-06 11:03:08 +08:00
remove_country_flag = gray_army_active
remove_country_flag = gray_warship_active
remove_country_flag = rg_kac_grayfleet_active
remove_country_flag = gray_governor_active
random_owned_leader = {
2023-06-08 13:11:05 +08:00
limit = {
has_leader_flag = gray_scientist
}
2023-06-06 11:03:08 +08:00
set_skill = owner.rg_gray_level
}
}
}
2023-06-11 12:36:05 +08:00
rg_warship_init_mod1 = {
create_fleet = {
name = "NAME_Gray"
settings = {
can_upgrade = no
can_disband = no
can_change_composition = no
can_change_leader = yes
uses_naval_capacity = no
spawn_debris = no
}
effect = {
set_owner = prev
create_ship = {
name = "NAME_Gray"
design = "NAME_Gray_Warship"
prefix = no
upgradable = yes
}
set_fleet_stance = aggressive
set_location = {
target = event_target:global_gray_location
distance = 0
angle = random
}
set_fleet_flag = gray_fleet
save_global_event_target_as = gray_warship
assign_leader = event_target:gray_leader_admiral
if = {
limit = {
has_global_flag = kdc_event_mod_active
}
add_modifier = {
modifier = remove_fleet_maintenance
}
}
}
}
}
rg_warship_init_mod2 = {
create_fleet = {
name = "NAME_Gray"
settings = {
can_upgrade = no
can_disband = no
can_change_composition = no
can_change_leader = yes
uses_naval_capacity = no
spawn_debris = no
}
effect = {
set_owner = prev
create_ship = {
name = "NAME_Gray"
random_existing_design = RG_graygoo_capitalship
prefix = no
upgradable = yes
}
set_fleet_stance = aggressive
set_location = {
target = event_target:global_gray_location
distance = 0
angle = random
}
set_fleet_flag = gray_fleet
save_global_event_target_as = gray_warship
assign_leader = event_target:gray_leader_admiral
if = {
limit = {
has_global_flag = kdc_event_mod_active
}
add_modifier = {
modifier = remove_fleet_maintenance
}
}
}
}
}
rg_warship_init_mod3 = {
create_fleet = {
name = "NAME_Gray"
settings = {
can_upgrade = no
can_disband = no
can_change_composition = no
can_change_leader = yes
uses_naval_capacity = no
spawn_debris = no
}
effect = {
set_owner = prev
create_ship = {
name = "NAME_Gray"
design = "NAME_gray_juggernautship"
# random_existing_design = RG_gray_juggernaut
prefix = no
upgradable = yes
}
set_fleet_stance = aggressive
set_location = {
target = event_target:global_gray_location
distance = 0
angle = random
}
set_fleet_flag = gray_fleet
save_global_event_target_as = gray_warship
if = {
limit = {
has_global_flag = kdc_event_mod_active
}
add_modifier = {
modifier = remove_fleet_maintenance
}
}
}
}
}
rg_warship_init_mod0 = {
create_fleet = {
name = "NAME_Gray"
settings = {
can_upgrade = no
can_disband = no
can_change_composition = no
can_change_leader = yes
uses_naval_capacity = no
spawn_debris = no
}
effect = {
set_owner = prev
create_ship = {
name = "NAME_Gray"
design = "NAME_Gray_Warship_base"
prefix = no
upgradable = yes
}
set_fleet_stance = aggressive
set_location = {
target = event_target:global_gray_location
distance = 0
angle = random
}
set_fleet_flag = gray_fleet
save_global_event_target_as = gray_warship
assign_leader = event_target:gray_leader_admiral
if = {
limit = {
has_global_flag = kdc_event_mod_active
}
add_modifier = {
modifier = remove_fleet_maintenance
}
}
}
}
}