realgray-stellaris-mod/events/RG_planet_event.txt

455 lines
9.2 KiB
Plaintext

namespace = rg_planet
##### Virtual Ascension Events
### Create the Unemployed
### Country scope gatekeeper
### on_monthly_pulse_country
country_event = {
id = rg_planet.5025
hide_window = yes
is_triggered_only = yes
trigger = {
OR = {
has_country_flag = rg_habitat_enabled
has_active_tradition = tr_rg_nanotech_5
}
# exists = event_target:rg_gray_habitat_target
any_owned_planet = {
is_under_colonization = no
OR = {
is_planet_class = pc_rg_grayhabitat
is_planet_class = pc_nanotech
}
free_jobs > 0
NOR = {
free_jobs_of_type = {
job = mortal_initiate
value >= 1
}
free_jobs_of_type = {
category = bio_trophy
value >= 1
}
}
}
}
immediate = {
if = {
limit = {
has_country_flag = rg_habitat_enabled
NOT = {
has_active_tradition = tr_rg_nanotech_5
}
}
event_target:rg_gray_habitat_target = {
planet_event = {
id = rg_planet.2027
days = 1
}
}
}
else = {
random_owned_planet = {
limit = {
owner = {
has_country_flag = rg_habitat_enabled
}
# exists = event_target:rg_gray_habitat_target
PREV = {
any_owned_planet = {
is_under_colonization = no
OR = {
is_planet_class = pc_rg_grayhabitat
is_planet_class = pc_nanotech
}
free_jobs > 0
NOR = {
free_jobs_of_type = {
job = mortal_initiate
value >= 1
}
free_jobs_of_type = {
category = bio_trophy
value >= 1
}
}
}
}
}
planet_event = {
id = rg_planet.2027
days = 1
}
}
}
}
}
### Create the Unemployed
### Planet scope gatekeeper
### on_building_complete, on_building_upgraded, on_building_demolished,
### on_building_downgraded, on_building_replaced
### on_district_complete, on_district_demolished
planet_event = {
id = rg_planet.2026
hide_window = yes
is_triggered_only = yes
trigger = {
is_under_colonization = no
OR = {
is_planet_class = pc_rg_grayhabitat
is_planet_class = pc_nanotech
}
exists = owner
owner = {
OR = {
has_country_flag = rg_habitat_enabled
has_active_tradition = tr_rg_nanotech_5
}
}
free_jobs > 0
}
immediate = {
planet_event = {
id = rg_planet.2027
days = 1
}
}
}
### Create the Unemployed
### Fired by cybernetics.2025 and cybernetics.2026
planet_event = {
id = rg_planet.2027
hide_window = yes
is_triggered_only = yes
trigger = {
is_under_colonization = no
OR = {
is_planet_class = pc_rg_grayhabitat
is_planet_class = pc_nanotech
}
exists = owner
owner = {
OR = {
has_country_flag = rg_habitat_enabled
has_active_tradition = tr_rg_nanotech_5
}
}
free_jobs > 0
}
immediate = {
set_variable = {
which = num_pops
value = value:num_free_virtual_jobs
}
# Create pops for every free job
if = {
limit = {
owner = {
is_same_value = event_target:gray_owner
}
}
while = {
count = num_pops
create_pop = {
species = event_target:rg_owner_main_maid_species
}
}
}
else = {
while = {
count = num_pops
create_pop = {
species = owner_main_species
}
}
}
# Kill pops generated in excess (e.g. from forbidden jobs)
if = {
limit = {
any_owned_pop = {
is_unemployed = yes
}
}
every_owned_pop = {
limit = {
is_unemployed = yes
}
kill_pop = yes
}
}
}
}
### Kill the unemployed
### Country scope
### on_monthly_pulse_country
country_event = {
id = rg_planet.5030
hide_window = yes
is_triggered_only = yes
trigger = {
has_country_flag = rg_habitat_enabled
event_target:rg_gray_habitat_target = {
any_owned_pop = {
is_unemployed = yes
}
}
}
immediate = {
event_target:rg_gray_habitat_target = {
every_owned_pop = {
limit = {
is_unemployed = yes
}
kill_pop = yes
}
}
}
}
### Kill the unemployed
### Planet scope
### on_building_complete, on_building_upgraded, on_building_demolished,
### on_building_downgraded, on_building_replaced
### on_district_complete, on_district_demolished
planet_event = {
id = rg_planet.2031
hide_window = yes
is_triggered_only = yes
trigger = {
exists = owner
owner = {
has_country_flag = rg_habitat_enabled
}
any_owned_pop = {
is_unemployed = yes
}
}
immediate = {
every_owned_pop = {
limit = {
is_unemployed = yes
}
kill_pop = yes
}
}
}
event = {
id = rg_planet.5053
hide_window = yes
is_triggered_only = yes
immediate = {
every_system = {
limit = {
exists = owner
owner = {
has_tradition = tr_rg_nanotech_finish
}
exists = starbase
# starbase = {
# has_starbase_building = nanite_harvester
# }
}
system_event = { id = rg_planet.5054 }
}
}
}
system_event = {
id = rg_planet.5054
hide_window = yes
is_triggered_only = yes
trigger = {
exists = owner
owner = {
has_tradition = tr_rg_nanotech_finish
}
# starbase = {
# has_starbase_building = nanite_harvester
# }
}
immediate = {
owner = {
save_event_target_as = nanotech_country
}
every_system_planet = {
limit = {
OR = {
has_deposit = d_nanite_harvester_deposit
has_planet_flag = nanites_doubled_1
has_planet_flag = nanites_doubled_2
has_planet_flag = nanites_doubled_3
has_planet_flag = nanites_doubled_4
has_planet_flag = nanites_doubled_5
has_planet_flag = nanites_doubled_6
has_planet_flag = nanites_doubled_7
has_planet_flag = nanites_doubled_8
has_planet_flag = nanites_doubled_9
}
has_mining_station = yes
}
if = {
limit = {
NOR = {
has_planet_flag = nanites_doubled_1
has_planet_flag = nanites_doubled_2
has_planet_flag = nanites_doubled_3
has_planet_flag = nanites_doubled_4
has_planet_flag = nanites_doubled_5
has_planet_flag = nanites_doubled_6
has_planet_flag = nanites_doubled_7
has_planet_flag = nanites_doubled_8
has_planet_flag = nanites_doubled_9
}
}
add_deposit = d_nanite_harvester_deposit
set_planet_flag = nanites_doubled_1
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_1
planet_size >= 3
}
add_deposit = d_nanite_harvester_deposit
add_deposit = d_nanite_harvester_deposit
set_planet_flag = nanites_doubled_2
remove_planet_flag = nanites_doubled_1
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_2
planet_size > 6
}
add_deposit = d_nanite_harvester_deposit
add_deposit = d_nanite_harvester_deposit
add_deposit = d_nanite_harvester_deposit
add_deposit = d_nanite_harvester_deposit
set_planet_flag = nanites_doubled_3
remove_planet_flag = nanites_doubled_2
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_3
planet_size >= 9
}
every_deposit = {
limit = {
is_deposit_type = d_nanite_harvester_deposit
}
remove_deposit = yes
}
add_deposit = d_nanite_harvester_deposit_regular
set_planet_flag = nanites_doubled_4
remove_planet_flag = nanites_doubled_3
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_4
planet_size >= 12
}
random_list = {
50 = {
nanotech_deposit_nanite_generation = yes
}
50 = {
add_deposit = d_nanite_harvester_deposit_regular
set_planet_flag = nanites_doubled_5
remove_planet_flag = nanites_doubled_4
}
}
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_5
planet_size >= 15
}
random_list = {
50 = {
nanotech_deposit_nanite_generation = yes
}
50 = {
add_deposit = d_nanite_harvester_deposit_regular
add_deposit = d_nanite_harvester_deposit_regular
set_planet_flag = nanites_doubled_6
remove_planet_flag = nanites_doubled_5
}
}
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_6
planet_size >= 18
}
random_list = {
50 = {
nanotech_deposit_nanite_generation = yes
}
50 = {
add_deposit = d_nanite_harvester_deposit_regular
add_deposit = d_nanite_harvester_deposit_regular
add_deposit = d_nanite_harvester_deposit_regular
add_deposit = d_nanite_harvester_deposit_regular
set_planet_flag = nanites_doubled_7
remove_planet_flag = nanites_doubled_6
}
}
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_7
planet_size >= 21
}
random_list = {
50 = {
nanotech_deposit_nanite_generation = yes
}
50 = {
every_deposit = {
limit = {
is_deposit_type = d_nanite_harvester_deposit_regular
}
remove_deposit = yes
}
add_deposit = d_nanite_harvester_deposit_large
set_planet_flag = nanites_doubled_8
remove_planet_flag = nanites_doubled_7
}
}
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_8
planet_size >= 25
}
random_list = {
50 = {
nanotech_deposit_nanite_generation = yes
}
50 = {
add_deposit = d_nanite_harvester_deposit_large
set_planet_flag = nanites_doubled_9
remove_planet_flag = nanites_doubled_8
}
}
}
else_if = {
limit = {
has_planet_flag = nanites_doubled_9
}
nanotech_deposit_nanite_generation = yes
}
}
}
}