### Updated

### Caerulenite

### Normal
stz_caerulenite_farmer = {
    category = worker
    swappable_data = {
        default = {
            condition_string = WORKER_JOB_TRIGGER
            building_icon = building_food_processing_facility
        }
        swap_type = {
            trigger = {
                farmer_is_titan_hunter_trigger = yes
            }
            name = stz_caerulenite_titan_hunter
            desc = stz_caerulenite_titan_hunter
            icon = stz_caerulenite_hunter_gatherer
            weight = 10
        }
        swap_type = {
            trigger = {
                farmer_is_puddle_technician_trigger = yes
            }
            name = stz_caerulenite_puddle_technician
            desc = stz_caerulenite_puddle_technician
            icon = stz_caerulenite_puddle_technician
            weight = 15
        }
        swap_type = {
            trigger = {
                farmer_is_gas_extractor_trigger = yes
            }
            name = stz_caerulenite_gas_extractor
            desc = stz_caerulenite_gas_extractor
            icon = stz_caerulenite_gas_extractor
            building_icon = building_gas_extractors
            weight = 20
        }
        swap_type = {
            trigger = {
                farmer_is_angler_trigger = yes
            }
            name = stz_caerulenite_angler
            desc = stz_caerulenite_angler
            icon = stz_caerulenite_angler
            weight = 50
        }
    }

    tags = { food }

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

    possible_precalc = can_fill_worker_job
    possible = {
        hidden_trigger = { exists = owner }
        owner = {
            is_gestalt = no
        }
    }

    resources = {
        category = planet_farmers
        produces = {
            food = 12
        }
        produces = {
            trigger = {
                exists = owner
                owner = {
                    is_robot_empire = yes
                }
            }
            food = -2
        }
        # Job Swap - Anglers
        produces = {
            trigger = {
                exists = planet
                planet = {
                    farmer_is_angler_trigger = yes
                }
            }
            trade = 4
        }
        # Job Swap - Titan Hunters
        produces = {
            trigger = {
                farmer_is_titan_hunter_trigger = yes
            }
            food = 4
            trade = 16
        }
        # Job Swap - Puddle Technician
        produces = {
            trigger = {
                farmer_is_puddle_technician_trigger = yes
            }
            alloys = 2
        }
        produces = {
            trigger = {
                planet = {
                    has_planet_flag = has_produce_requisitorium
                }
            }
            food = -6
        }

        upkeep = {
            stz_sr_caerulenite = 1
        }
    }

    overlord_resources = {
        category = planet_requisitioned_food
        produces = {
            trigger = {
                planet = {
                    has_planet_flag = has_produce_requisitorium
                }
            }
            food = 8
        }
    }

    triggered_planet_modifier = {
        potential = {
            exists = owner
            owner = {
                has_valid_civic = civic_agrarian_idyll
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 400
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }

    weight = {
        weight = @worker_job_weight
        mult = value:job_weights_modifier|JOB|stz_caerulenite_farmer|RESOURCE|food|
        modifier = {
            factor = 1.1
            owner = { has_valid_civic = civic_agrarian_idyll }
        }
        modifier = {
            factor = 10
            is_enslaved = yes
            can_take_servant_job = no
            NOT = { has_slavery_type = { type = slavery_indentured } }
        }
        modifier = {
            factor = 3
            OR = {
                is_non_sapient_robot = yes
                is_shackled_robot = yes
            }
            can_take_servant_job = no
            owner = { has_technology = tech_droid_workers }
        }
        modifier = {
            factor = 200
            OR = {
                is_non_sapient_robot = yes
                is_shackled_robot = yes
            }
            can_take_servant_job = no
            owner = { NOT = { has_technology = tech_droid_workers } }
        }
        modifier = {
            factor = 0.25
            can_take_servant_job = yes
        }
        modifier = {
            factor = value:scripted_modifier_job_weight_mult|MODIFIER|pop_job_amenities_mult|
            owner = { has_valid_civic = civic_agrarian_idyll }
        }
        # low income modifier
        modifier = {
            factor = 3
            exists = planet
            planet = {
                has_available_jobs = farmer
            }
            exists = owner
            owner = {
                has_monthly_income = {
                    resource = food
                    value < 10
                }
            }
        }

        modifier = {
            factor = 0.5
            has_trait = trait_lithoid

            owner = {
                is_lithoid_empire = yes
                country_uses_food = no
                has_monthly_income = {
                    resource = food
                    value >= 0
                }
            }
        }
        modifier = {
            factor = 0.5
            has_trait = trait_infernal

            owner = {
                is_infernal_empire = yes
                country_uses_food = no
                has_monthly_income = {
                    resource = food
                    value >= 0
                }
            }
        }
        modifier = {
            factor = 5
            has_trait = trait_cyborg_creed_of_labor
        }
    }

    inline_script = "jobs/automodding_priority_food"

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

### Gestalt
stz_caerulenite_agri_drone = {
    category = simple_drone

    swappable_data = {
        default = {
            condition_string = DRONE_JOB_TRIGGER
            building_icon = building_food_processing_facility
        }
        swap_type = {
            trigger = {
                farmer_is_puddle_technician_trigger = yes
            }
            name = stz_caerulenite_puddle_technician_drone
            desc = stz_caerulenite_puddle_technician_drone
            icon = stz_caerulenite_puddle_technician_drone
            weight = 10
        }
        swap_type = {
            trigger = {
                farmer_is_gas_extractor_trigger = yes
            }
            name = stz_caerulenite_gas_extraction_drone
            desc = stz_caerulenite_gas_extraction_drone
            icon = stz_caerulenite_gas_extraction_drone
            building_icon = building_gas_extractors
            weight = 20
        }
        swap_type = {
            trigger = {
                exists = owner
                owner = {
                    is_wilderness_empire = yes
                }
            }
            name = stz_caerulenite_pollinosymbiont
            desc = stz_caerulenite_pollinosymbiont
            icon = stz_caerulenite_pollinosymbiont
            building_icon = massive_growth_3
            condition_string = DRONE_JOB_TRIGGER
            weight = 100
        }
    }

    tags = { food }

    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 = { simple_drone_trigger = yes }

    resources = {
        category = planet_farmers
        produces = {
            food = 12
        }
        produces = {
            trigger = {
                exists = owner
                owner = {
                    is_robot_empire = yes
                    is_catalytic_empire = no
                }
            }
            food = -2
        }
        # Job Swap - Puddle Technician
        produces = {
            trigger = {
                farmer_is_puddle_technician_trigger = yes
            }
            alloys = 2
        }
        produces = {
            trigger = {
                planet = {
                    has_planet_flag = has_produce_requisitorium
                }
            }
            food = -6
        }

        upkeep = {
            stz_sr_caerulenite = 1
        }
    }

    overlord_resources = {
        category = planet_requisitioned_food
        produces = {
            trigger = {
                planet = {
                    has_planet_flag = has_produce_requisitorium
                }
            }
            food = 8
        }
    }

    weight = {
        weight = @simple_drone_job_weight
        mult = value:job_weights_modifier|JOB|stz_viridian_agri_drone|RESOURCE|food|
        modifier = {
            factor = 0.9
            owner = {
                has_monthly_income = {
                    resource = food
                    value > 50
                }
            }
        }
        modifier = {
            factor = 0.9
            owner = {
                is_robot_empire = yes
            }
        }
        modifier = {
            factor = 1.1
            exists = owner
            years_passed < 1
            owner = { has_valid_civic = civic_machine_assimilator }
            has_trait = trait_cybernetic
        }

        modifier = {
            factor = 0.5
            has_trait = trait_lithoid

            owner = {
                is_lithoid_empire = yes
                country_uses_food = no
                has_monthly_income = {
                    resource = food
                    value >= 0
                }
            }
        }
        modifier = {
            factor = 0.5
            has_trait = trait_infernal

            owner = {
                is_infernal_empire = yes
                country_uses_food = no
                has_monthly_income = {
                    resource = food
                    value >= 0
                }
            }
        }
    }

    inline_script = "jobs/automodding_priority_food"

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

### Viridian

### Normal
stz_viridian_farmer = {
    category = worker
    swappable_data = {
        default = {
            condition_string = WORKER_JOB_TRIGGER
            building_icon = building_food_processing_facility
        }
        swap_type = {
            trigger = {
                farmer_is_titan_hunter_trigger = yes
            }
            name = stz_viridian_titan_hunter
            desc = stz_viridian_titan_hunter
            icon = stz_viridian_hunter_gatherer
            weight = 10
        }
        swap_type = {
            trigger = {
                farmer_is_puddle_technician_trigger = yes
            }
            name = stz_viridian_puddle_technician
            desc = stz_viridian_puddle_technician
            icon = stz_viridian_puddle_technician
            weight = 15
        }
        swap_type = {
            trigger = {
                stz_viridian_farmer_is_gas_extractor_trigger = yes
            }
            name = stz_viridian_gas_extractor
            desc = stz_viridian_gas_extractor
            icon = stz_viridian_gas_extractor
            building_icon = building_gas_extractors
            weight = 20
        }
        swap_type = {
            trigger = {
                farmer_is_angler_trigger = yes
            }
            name = stz_viridian_angler
            desc = stz_viridian_angler
            icon = stz_viridian_angler
            weight = 50
        }
    }

    tags = { food }

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

    possible_precalc = can_fill_worker_job
    possible = {
        hidden_trigger = { exists = owner }
        owner = {
            is_gestalt = no
        }
    }

    resources = {
        category = planet_farmers
        produces = {
            food = 18
        }
        produces = {
            trigger = {
                exists = owner
                owner = {
                    is_robot_empire = yes
                }
            }
            food = -3
        }
        # Job Swap - Anglers
        produces = {
            trigger = {
                exists = planet
                planet = {
                    farmer_is_angler_trigger = yes
                }
            }
            trade = 6
        }
        # Job Swap - Titan Hunters
        produces = {
            trigger = {
                farmer_is_titan_hunter_trigger = yes
            }
            food = 6
            trade = 24
        }
        # Job Swap - Puddle Technician
        produces = {
            trigger = {
                farmer_is_puddle_technician_trigger = yes
            }
            alloys = 3
        }
        produces = {
            trigger = {
                planet = {
                    has_planet_flag = has_produce_requisitorium
                }
            }
            food = -9
        }

        upkeep = {
            stz_sr_viridisium = 1
        }
    }

    overlord_resources = {
        category = planet_requisitioned_food
        produces = {
            trigger = {
                planet = {
                    has_planet_flag = has_produce_requisitorium
                }
            }
            food = 12
        }
    }

    triggered_planet_modifier = {
        potential = {
            exists = owner
            owner = {
                has_valid_civic = civic_agrarian_idyll
                NOT = {
                    has_valid_civic = civic_dystopian_society
                }
            }
        }
        planet_amenities_add = 600
        mult = value:scripted_modifier_mult|MODIFIER|pop_job_amenities_mult|
    }

    weight = {
        weight = @worker_job_weight
        mult = value:job_weights_modifier|JOB|stz_viridian_farmer|RESOURCE|food|
        modifier = {
            factor = 1.1
            owner = { has_valid_civic = civic_agrarian_idyll }
        }
        modifier = {
            factor = 10
            is_enslaved = yes
            can_take_servant_job = no
            NOT = { has_slavery_type = { type = slavery_indentured } }
        }
        modifier = {
            factor = 3
            OR = {
                is_non_sapient_robot = yes
                is_shackled_robot = yes
            }
            can_take_servant_job = no
            owner = { has_technology = tech_droid_workers }
        }
        modifier = {
            factor = 200
            OR = {
                is_non_sapient_robot = yes
                is_shackled_robot = yes
            }
            can_take_servant_job = no
            owner = { NOT = { has_technology = tech_droid_workers } }
        }
        modifier = {
            factor = 0.25
            can_take_servant_job = yes
        }
        modifier = {
            factor = value:scripted_modifier_job_weight_mult|MODIFIER|pop_job_amenities_mult|
            owner = { has_valid_civic = civic_agrarian_idyll }
        }
        # low income modifier
        modifier = {
            factor = 3
            exists = planet
            planet = {
                has_available_jobs = stz_viridian_farmer
            }
            exists = owner
            owner = {
                has_monthly_income = {
                    resource = food
                    value < 10
                }
            }
        }

        modifier = {
            factor = 0.5
            has_trait = trait_lithoid

            owner = {
                is_lithoid_empire = yes
                country_uses_food = no
                has_monthly_income = {
                    resource = food
                    value >= 0
                }
            }
        }
        modifier = {
            factor = 0.5
            has_trait = trait_infernal

            owner = {
                is_infernal_empire = yes
                country_uses_food = no
                has_monthly_income = {
                    resource = food
                    value >= 0
                }
            }
        }
        modifier = {
            factor = 5
            has_trait = trait_cyborg_creed_of_labor
        }
    }

    inline_script = "jobs/automodding_priority_food"

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

### Gestalt
stz_viridian_agri_drone = {
    category = simple_drone

    swappable_data = {
        default = {
            condition_string = DRONE_JOB_TRIGGER
            building_icon = building_food_processing_facility
        }
        swap_type = {
            trigger = {
                farmer_is_puddle_technician_trigger = yes
            }
            name = stz_viridian_puddle_technician_drone
            desc = stz_viridian_puddle_technician_drone
            icon = stz_viridian_puddle_technician_drone
            weight = 10
        }
        swap_type = {
            trigger = {
                stz_viridian_farmer_is_gas_extractor_trigger = yes
            }
            name = stz_viridian_gas_extraction_drone
            desc = stz_viridian_gas_extraction_drone
            icon = stz_viridian_gas_extraction_drone
            building_icon = building_gas_extractors
            weight = 20
        }
        swap_type = {
            trigger = {
                exists = owner
                owner = {
                    is_wilderness_empire = yes
                }
            }
            name = stz_viridian_pollinosymbiont
            desc = stz_viridian_pollinosymbiont
            icon = stz_viridian_pollinosymbiont
            building_icon = massive_growth_3
            condition_string = DRONE_JOB_TRIGGER
            weight = 100
        }
    }

    tags = { food }

    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 = { simple_drone_trigger = yes }

    resources = {
        category = planet_farmers
        produces = {
            food = 18
        }
        produces = {
            trigger = {
                exists = owner
                owner = {
                    is_robot_empire = yes
                    is_catalytic_empire = no
                }
            }
            food = -3
        }
        # Job Swap - Puddle Technician
        produces = {
            trigger = {
                farmer_is_puddle_technician_trigger = yes
            }
            alloys = 3
        }
        produces = {
            trigger = {
                planet = {
                    has_planet_flag = has_produce_requisitorium
                }
            }
            food = -9
        }

        upkeep = {
            stz_sr_viridisium = 1
        }
    }

    overlord_resources = {
        category = planet_requisitioned_food
        produces = {
            trigger = {
                planet = {
                    has_planet_flag = has_produce_requisitorium
                }
            }
            food = 12
        }
    }

    weight = {
        weight = @simple_drone_job_weight
        mult = value:job_weights_modifier|JOB|stz_viridian_agri_drone|RESOURCE|food|
        modifier = {
            factor = 0.9
            owner = {
                has_monthly_income = {
                    resource = food
                    value > 50
                }
            }
        }
        modifier = {
            factor = 0.9
            owner = {
                is_robot_empire = yes
            }
        }
        modifier = {
            factor = 1.1
            exists = owner
            years_passed < 1
            owner = { has_valid_civic = civic_machine_assimilator }
            has_trait = trait_cybernetic
        }

        modifier = {
            factor = 0.5
            has_trait = trait_lithoid

            owner = {
                is_lithoid_empire = yes
                country_uses_food = no
                has_monthly_income = {
                    resource = food
                    value >= 0
                }
            }
        }
        modifier = {
            factor = 0.5
            has_trait = trait_infernal

            owner = {
                is_infernal_empire = yes
                country_uses_food = no
                has_monthly_income = {
                    resource = food
                    value >= 0
                }
            }
        }
    }

    inline_script = "jobs/automodding_priority_food"

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