### UPDATED

### Bureaucrat
stz_viridian_bureaucrat = {
    category = specialist

    swappable_data = {
        default = {
            condition_string = SPECIALIST_JOB_TRIGGER
            building_icon = building_bureaucratic_1
        }
        swap_type = {
            trigger = {
                bureaucrat_is_manager = yes
            }
            name = stz_viridian_manager
            desc = stz_viridian_manager
            icon = stz_viridian_manager
            building_icon = building_bureaucratic_1
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 2
        }
        swap_type = {
            trigger = {
                bureaucrat_is_priest = yes
            }
            name = stz_viridian_priest
            desc = stz_viridian_priest
            icon = stz_viridian_priest
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 5
        }
        swap_type = {
            trigger = {
                bureaucrat_is_steward = yes
            }
            name = stz_viridian_steward
            desc = stz_viridian_steward
            icon = stz_viridian_manager
            building_icon = building_bureaucratic_1
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 10
        }
        swap_type = {
            trigger = {
                bureaucrat_is_preacher = yes
            }
            name = stz_viridian_preacher
            desc = stz_viridian_preacher
            icon = stz_viridian_preacher
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 15
        }
        swap_type = {
            trigger = {
                bureaucrat_is_numistic_priest = yes
            }
            name = stz_viridian_numistic_priest
            desc = stz_viridian_numistic_priest
            icon = stz_viridian_preacher
            building_icon = building_nuumismatic_shrine
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 20
        }
        swap_type = {
            trigger = {
                bureaucrat_is_unifier = yes
            }
            name = stz_viridian_overlord_propagandist
            desc = stz_viridian_overlord_propagandist
            icon = stz_viridian_overlord_propagandist
            building_icon = building_capital
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 25
        }
        swap_type = {
            trigger = {
                bureaucrat_is_culture_worker = yes
            }
            name = stz_viridian_culture_worker
            desc = stz_viridian_culture_worker
            icon = stz_viridian_culture_worker
            building_icon = building_artist_patron
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 30
        }
        swap_type = {
            trigger = {
                bureaucrat_is_death_priest = yes
            }
            name = stz_viridian_death_priest
            desc = stz_viridian_death_priest
            icon = stz_viridian_death_priest
            building_icon = building_sacrificial_temple_1
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 35
        }
        swap_type = {
            trigger = {
                bureaucrat_is_fire_dancer = yes
            }
            name = stz_viridian_fire_dancer
            desc = stz_viridian_fire_dancer
            icon = stz_viridian_fire_dancer
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 40
        }
        swap_type = {
            trigger = {
                bureaucrat_is_fire_seer = yes
            }
            name = stz_viridian_fire_seer
            desc = stz_viridian_fire_seer
            icon = stz_viridian_fire_seer
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 450
        }
        swap_type = {
            trigger = {
                bureaucrat_is_pyromancer = yes
            }
            name = stz_viridian_pyromancer
            desc = stz_viridian_pyromancer
            icon = stz_viridian_fire_dancer
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 450
        }
        swap_type = {
            trigger = {
                bureaucrat_is_cremator = yes
            }
            name = stz_viridian_cremator
            desc = stz_viridian_cremator
            icon = stz_viridian_cremator
            building_icon = building_sacrificial_temple_1
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 450
        }
        swap_type = {
            trigger = {
                bureaucrat_is_memorialist = yes
            }
            name = stz_viridian_death_chronicler
            desc = stz_viridian_death_chronicler
            icon = stz_viridian_death_chronicler
            building_icon = building_galactic_memorial_1
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 200
        }
        swap_type = {
            trigger = {
                bureaucrat_is_death_priest = yes
                bureaucrat_is_manager = yes
            }
            name = stz_viridian_death_manager
            desc = stz_viridian_death_manager
            icon = stz_viridian_manager
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 300
        }
        swap_type = {
            trigger = {
                bureaucrat_is_haruspex = yes
            }
            name = stz_viridian_haruspex
            desc = stz_viridian_haruspex
            icon = stz_viridian_haruspex
            building_icon = building_the_sanctum_of_augmentation
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 500
        }
        swap_type = {
            trigger = {
                bureaucrat_is_superstitious_beliefs_priest = yes
            }
            name = stz_viridian_superstitious_beliefs_priest
            desc = stz_viridian_superstitious_beliefs_priest
            icon = stz_viridian_superstitious_beliefs_priest
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 400
        }
        swap_type = {
            trigger = {
                bureaucrat_is_superstitious_beliefs_priest_corporate = yes
            }
            name = stz_viridian_superstitious_beliefs_priest_corporate
            desc = stz_viridian_superstitious_beliefs_priest_corporate
            icon = stz_viridian_superstitious_beliefs_priest
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 400
        }
        swap_type = {
            trigger = {
                bureaucrat_is_corpse_reader = yes
            }
            name = stz_viridian_corpse_reader
            desc = stz_viridian_corpse_reader
            icon = stz_viridian_death_priest
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 500
        }
        swap_type = {
            trigger = {
                bureaucrat_is_corpse_broker = yes
            }
            name = stz_viridian_corpse_broker
            desc = stz_viridian_corpse_broker
            icon = stz_viridian_death_priest
            building_icon = building_temple
            condition_string = SPECIALIST_JOB_TRIGGER
            weight = 500
        }
    }
    tags = { unity }

    triggered_tags = {
        trigger = {
            OR = {
                bureaucrat_is_priest = yes
                bureaucrat_is_death_priest = yes
                bureaucrat_is_numistic_priest = yes
                bureaucrat_is_preacher = yes
                bureaucrat_is_haruspex = yes
                bureaucrat_is_superstitious_beliefs_priest = yes
                bureaucrat_is_superstitious_beliefs_priest_corporate = yes
                bureaucrat_is_corpse_broker = yes
                bureaucrat_is_corpse_reader = yes
                bureaucrat_is_fire_dancer = yes
                bureaucrat_is_pyromancer = yes
                bureaucrat_is_fire_seer = yes
                bureaucrat_is_cremator = yes
            }
        }
        tags = { psionic_aura }
    }

    possible_pre_triggers = {
        has_owner = yes
        is_being_purged = no
        is_being_assimilated = no
        is_sapient = yes
    }

    possible_precalc = can_fill_specialist_job
    possible = {
        complex_specialist_job_check_trigger = yes
    }

    resources = {
        category = planet_bureaucrats
        # PRODUCES
        produces = {
            unity = 9
        }
        upkeep = {
            consumer_goods = 6
        }
        ##Government Swaps
        produces = {
            trigger = {
                bureaucrat_is_manager = yes
            }
            trade = 6
        }
        produces = {
            trigger = {
                bureaucrat_is_steward = yes
            }
            trade = 3
        }
        produces = {
            trigger = {
                OR = {
                    bureaucrat_is_death_priest = yes
                    bureaucrat_is_cremator = yes
                }
            }
            unity = -3
            society_research = 1.5
        }
        produces = {
            trigger = {
                bureaucrat_is_haruspex = yes
            }
            unity = -3
            engineering_research = 3
        }
        ##Event Swaps
        upkeep = {
            trigger = {
                bureaucrat_is_unifier = yes
            }
            consumer_goods = -3
        }
        # Job Swap - Numistic Priests
        produces = {
            trigger = {
                exists = planet
                planet = {
                    bureaucrat_is_numistic_priest = yes
                }
            }
            unity = -3
            trade = 18
        }
        upkeep = {
            trigger = {
                exists = planet
                planet = {
                    bureaucrat_is_numistic_priest = yes
                }
            }
            consumer_goods = -3
            trade = 6
        }
        # Job Swap - Superstitions Beliefs and Death Cult
        produces = {
            trigger = {
                OR = {
                    bureaucrat_is_corpse_reader = yes
                    bureaucrat_is_corpse_broker = yes
                }
            }
            society_research = 1.5
        }
        inline_script = "jobs/stz_viridian_ethic_job_resources_memorialist"

        upkeep = {
            stz_sr_viridisium = 1
        }
    }

    ## Amenities
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_priest = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_steward = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 300
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_preacher = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_death_priest = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_fire_dancer = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            OR = {
                bureaucrat_is_pyromancer = yes
                bureaucrat_is_fire_seer = yes
                bureaucrat_is_cremator = yes
            }
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 1200
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_unifier = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 900
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_low_tech_priest = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_numistic_priest = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_haruspex = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_culture_worker = yes
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 900
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }

    inline_script = "jobs/stz_viridian_ethic_job_modifiers_memorialist"

    ##Stability
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_memorialist = yes
        }
        planet_stability_add = 0.6
    }
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_fire_dancer = yes
        }
        planet_stability_add = 1.5
    }

    triggered_planet_modifier = {
        potential = {
            exists = planet
            planet = {
                check_modifier_value = {
                    modifier = planet_bureaucrats_stability_produces_add
                    value > 0
                }
            }
        }
        planet_stability_add = 3
        mult = planet.modifier:planet_bureaucrats_stability_produces_add
    }

    ## Ethics Attraction
    triggered_planet_modifier = {
        potential = {
            bureaucrat_is_culture_worker = yes
        }
        pop_government_ethic_attraction = 0.30
    }

    triggered_planet_modifier = {
        potential = {
            OR = {
                bureaucrat_is_superstitious_beliefs_priest = yes
                bureaucrat_is_superstitious_beliefs_priest_corporate = yes
            }
        }
        planet_stability_add = 0.6
    }
    triggered_planet_modifier = {
        potential = {
            OR = {
                # Getting these costs 2 Civic points and deserve better rewards.
                bureaucrat_is_pyromancer = yes
                bureaucrat_is_fire_seer = yes
                bureaucrat_is_cremator = yes
            }
        }
        planet_stability_add = 4.5
    }

    triggered_planet_modifier = {
        potential = {
            OR = {
                bureaucrat_is_corpse_reader = yes
                bureaucrat_is_corpse_broker = yes
            }
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }

    triggered_planet_modifier = {
        potential = {
            OR = {
                bureaucrat_is_corpse_reader = yes
                bureaucrat_is_corpse_broker = yes
            }
        }
        planet_stability_add = 3
        mult = planet.modifier:planet_bureaucrats_stability_produces_add
    }

    triggered_planet_modifier = {
        potential = {
            planet = {
                has_active_building = building_league_offices
            }
            exists = owner
            owner = {
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 300
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }

    triggered_country_modifier = {
        potential = {
            exists = owner
            owner = { has_valid_civic = civic_efficient_bureaucracy }
        }
        country_edict_fund_add = 6
        mult = value:job_total_output_modifier|JOB|stz_viridian_bureaucrat|RESOURCE|unity|
    }

    triggered_planet_modifier = {
        potential = {
            planet = {
                exists = owner
                owner = {
                    has_tradition = tr_modularity_4
                }
            }
        }
        planet_jobs_worker_produces_mult = 0.06
    }

    weight = {
        weight = @specialist_job_weight
        mult = value:job_weights_modifier|JOB|stz_viridian_bureaucrat|RESOURCE|unity|
        mult = value:scripted_modifier_job_weight_mult|MODIFIER|pop_job_amenities_mult|
        modifier = {
            factor = 0.2
            has_citizenship_rights = no
            NOT = { has_trait = trait_mechanical }
        }
        modifier = {
            factor = 2
            exists = owner
            owner = { has_civic = civic_exalted_priesthood }
        }
        modifier = {
            factor = 0.1
            can_take_servant_job = yes
        }
        modifier = {
            factor = 0.1
            is_enslaved = yes
            has_slavery_type = { type = slavery_indentured }
        }
    }

    inline_script = "jobs/automodding_priority_unity"

    promotion = {
        time = @standard_promotion_time
        effect = {
            pop_amount_change_category = {
                CATEGORY = specialist
                AMOUNT = local_pop_amount
            }
        }
    }
}

### Mortal Initiate
#stz_viridian_mortal_initiate = {
#	category = worker
#	condition_string = WORKER_JOB_TRIGGER
#	building_icon = building_sacrificial_temple_1
#	clothes_texture_index = 3
#	icon = mortal_initiate
#
#	possible_pre_triggers = {
#		has_owner = yes
#		is_sapient = yes
#		is_enslaved = no
#		is_being_purged = no
#		is_being_assimilated = no
#	}
#
#	possible_precalc = can_fill_worker_job
#	possible = {
#		NOT = { has_trait = trait_mechanical } #No machines
#		NOT = { has_trait = trait_zombie } #How do you kill that which has no life?
#	}
#
#	resources = {
#		category = planet_administrators
#		produces = {
#			unity = 10
#			society_research = 5
#		}
#		upkeep = {
#			stz_sr_viridisium = 1
#		}
#	}
#
#	triggered_planet_modifier = {
#		potential = {
#			always = yes
#		}
#		planet_amenities_add = 10
#		mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
#	}
#
#	weight = {
#		weight = @specialist_job_weight
#		mult = value:job_weights_multiple_resources_modifier|JOB|stz_viridian_mortal_initiate|RESOURCE1|unity|WEIGHT1|0.5|RESOURCE2|society_research|WEIGHT2|0.3|
#		mult = value:scripted_modifier_job_weight_mult|MODIFIER|pop_job_amenities_mult|
#		modifier = {
#			factor = 0.2
#			has_citizenship_rights = no
#			NOT = { has_trait = trait_mechanical }
#		}
#		modifier = {
#			factor = 0.1
#			can_take_servant_job = yes
#		}
#	}
#
#	inline_script = "jobs/automodding_priority_unity"
#}

### Synapse Drone
stz_viridian_coordinator = {
    category = complex_drone

    swappable_data = {
        default = {
            condition_string = DRONE_JOB_TRIGGER
            building_icon = building_machine_capital
        }
        # Synpase Drone - auth_hive_mind
        swap_type = {
            trigger = {
                exists = owner
                owner = {
                    is_hive_empire = yes
                    is_wilderness_empire = no
                }
            }
            name = stz_viridian_synapse_drone
            desc = stz_viridian_synapse_drone
            icon = stz_viridian_synapse_drone
            building_icon = building_hive_capital
            condition_string = DRONE_JOB_TRIGGER
            weight = 2
        }
        # Chronicle Drone
        swap_type = {
            trigger = {
                exists = owner
                owner = {
                    is_memorialist_empire = yes
                }
            }
            name = stz_viridian_chronicle_drone
            desc = stz_viridian_chronicle_drone
            icon = stz_viridian_death_chronicler
            building_icon = building_galactic_memorial_1
            condition_string = DRONE_JOB_TRIGGER
            weight = 3
        }
        swap_type = {
            trigger = {
                exists = owner
                owner = {
                    is_wilderness_empire = yes
                }
            }
            name = stz_viridian_choirsymbiont
            desc = stz_viridian_choirsymbiont
            icon = stz_viridian_choirsymbiont
            building_icon = building_commensal_clearing_3
            condition_string = DRONE_JOB_TRIGGER
            weight = 10
        }
    }

    possible_pre_triggers = {
        has_owner = yes
        is_enslaved = no
        is_being_purged = no
        is_being_assimilated = no
        is_sapient = yes
    }

    possible_precalc = can_fill_drone_job

    possible = { can_think = yes }

    resources = {
        category = planet_bureaucrats
        produces = {
            unity = 9
        }
        produces = {
            trigger = {
                exists = owner
                owner = {
                    is_memorialist_empire = yes
                }
            }
            unity = 1.5
        }
        upkeep = {
            trigger = {
                exists = owner
                owner = {
                    is_hive_empire = yes
                    is_lithoid_or_infernal_empire = no
                }
            }
            food = 6
            energy = 6
        }
        upkeep = {
            trigger = {
                exists = owner
                owner = {
                    is_hive_empire = yes
                    is_lithoid_or_infernal_empire = yes
                }
            }
            minerals = 6
            energy = 6
        }
        upkeep = {
            trigger = {
                exists = owner
                owner = {
                    is_hive_empire = no
                }
            }
            energy = 12
        }

        upkeep = {
            stz_sr_viridisium = 1
        }
    }

    triggered_planet_modifier = {
        potential = {
            exists = owner
            owner = {
                is_memorialist_empire = yes
            }
        }
        modifier = {
            planet_stability_add = 0.6
        }
    }

    triggered_planet_modifier = {
        potential = {
            planet = {
                has_active_building = building_league_offices
            }
        }
        planet_amenities_no_happiness_add = 300
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }

    triggered_planet_modifier = {
        potential = {
            OR = {
                has_modifier = planet_artifact_relays_machine
                has_modifier = planet_artifact_relays_hivemind
            }
        }
        modifier = {
            planet_stability_add = 2
            planet_jobs_simple_drone_produces_mult = 0.03
        }
    }

    triggered_planet_modifier = {
        potential = {
            planet = {
                exists = owner
                owner = {
                    has_tradition = tr_modularity_4
                }
            }
        }
        planet_jobs_simple_drone_produces_mult = 0.06
    }

    weight = {
        weight = @synapse_drone_job_weight
        mult = value:job_weights_modifier|JOB|stz_viridian_coordinator|RESOURCE|unity|
        mult = value:scripted_job_weight_shroud_forged_mult
        modifier = {
            factor = 0.9
            exists = owner
            years_passed < 1
            owner = { has_valid_civic = civic_machine_assimilator }
            has_trait = trait_cybernetic
        }
    }

    inline_script = "jobs/automodding_priority_unity"

    promotion = {
        time = @standard_promotion_time
        effect = {
            pop_amount_change_category = {
                CATEGORY = complex_drone
                AMOUNT = local_pop_amount
            }
        }
    }
}