code:
<?xml version="1.0" encoding="utf-8"?>
<LanguageData>
<!--Settings-->
<RJWSettingsOne>RimJobWorld - базові налаштування</RJWSettingsOne>
<NymphTamed>Приєднатися до німфоманки</NymphTamed>
<NymphTamed_desc>Приєднує пішака з ознакою ('Гіперсексуальний') до колонії.</NymphTamed_desc>
<NymphWild>Дика німфоманка</NymphWild>
<NymphWild_desc>Породжує дикого пішака з ознакою "Гіперсексуальність" для нападу на колонію.</NymphWild_desc>
<NymphRaidEasy>Німфоманки здійснюють рейд (легко)</NymphRaidEasy>
<NymphRaidEasy_desc>Німфоманки вирішили відвідати вашу колонію.\nbaseChance дорівнює 0.1.</NymphRaidEasy_desc>
<NymphRaidHard>Німфоманки здійснюють рейд(важко)</NymphRaidHard>
<NymphRaidHard_desc>Німфоманки вирішили, що тепер це їхня колонія.\n(Game Over).\nbaseChance - 0.01.</NymphRaidHard_desc>
<NymphRaidRP>Кволі рейди німф</NymphRaidRP>
<NymphRaidRP_desc>Перемикає рейди німф на використання очок рейду для тих, хто занадто слабкий для передбачуваної складності рейду німф.</NymphRaidRP_desc>
<NymphPermanentManhunter>Постійний мисливець на німф</NymphPermanentManhunter>
<NymphPermanentManhunter_desc>Психічний стан перманентного мисливця на людей.</NymphPermanentManhunter_desc>
<NymphSappers>Сапери німф</NymphSappers>
<NymphSappers_desc>Тук-тук! Хорні відчуває твій запах за цими дверима! Ти можеш тікати, але тобі не сховатися.</NymphSappers_desc>
<FemaleFuta>Увімкнути футу</FemaleFuta>
<FemaleFuta_desc>Відтворювати самок як футу (+ пеніс)</FemaleFuta_desc>
<MaleTrap>Увімкнути пастки</MaleTrap>
<MaleTrap_desc>Репродукувати самців як пасток (+ груди)</MaleTrap_desc>
<male_nymph_chance>Шанс відтворення німфи-самця</male_nymph_chance>
<male_nymph_chance_desc>Шанс відтворення німфи-самця\n\nДопустимий діапазон: 0 - 100\nЗа замовчуванням: 0</male_nymph_chance_desc>
<futa_nymph_chance>Шанс відтворення німфи-фути/пастки</futa_nymph_chance>
<futa_nymph_chance_desc>Шанс спалаху німфи фута/пастки \n\nДопустимий діапазон: 0 - 100\nЗа замовчуванням: 0</futa_nymph_chance_desc>
<futa_natives_chance>Шанс відтворення аборигенів фути/пастки</futa_natives_chance>
<futa_natives_chance_desc>Шанс народження аборигенів фути/пастки \n(індустріальний рівень і нижче) \n\nДопустимий діапазон: 0 - 100\nЗа замовчуванням: 0</futa_natives_chance_desc>
<futa_spacers_chance>Шанс створення розпірок Futa/Trap</futa_spacers_chance>
<futa_spacers_chance_desc>Шанс породження фута/пастки\n\nДопустимий діапазон: 0 - 100\nЗа замовчуванням: 5</futa_spacers_chance_desc>
<sexneed_decay_rate_name>Потрібна швидкість розпаду статі (%)</sexneed_decay_rate_name>
<sexneed_decay_rate_desc>0% для відсутності розпаду.\n1000000% для планети Рапетурнус. Рекомендований діапазон: 50% до 200%.</sexneed_decay_rate_desc>
<sexneed_fix_name>Потрібно виправити стать</sexneed_fix_name>
<sexneed_fix_desc>Виправляє некоректні пороги сексуальних потреб, ймовірно, значно зменшує тригери для сексу та зґвалтування.</sexneed_fix_desc>
<Animal_mating_cooldown>Охолодження спарювання тварин</Animal_mating_cooldown>
<Animal_mating_cooldown_desc>Скільки годин тварина чекає перед спарюванням/розмноженням.\n0 - на основі статевого потягу</Animal_mating_cooldown_desc>
<AllowYouthSex>Дозволити молодіжний секс</AllowYouthSex>
<AllowYouthSex_desc>Дозволити секс між людськими видами, які перебувають у репродуктивному віці, але їхній ріст не досягнув 100%.</AllowYouthSex_desc>
<!-- застаріло -->
<sex_age_legacymode>Спадщина Статеві вікові обмеження</sex_age_legacymode>
<sex_age_legacymode_desc>Застарілі вікові обмеження для людиноподібних пішаків, майже зламані для рас з нелюдською тривалістю життя, але люди хочуть це повернути, тож неважливо.\n При інвалідності використовується репродуктивна стадія життя раси як підлітка, а ріст пішака (100%) як дорослого.</sex_age_legacymode_desc>
<SexMinimumAge>Мінімальний вік статі</SexMinimumAge>
<SexMinimumAge_desc>Людиноподібні пішаки, молодші за цей вік, не матимуть сексу взагалі.</SexMinimumAge_desc>
<SexFreeForAllAge>Вік згоди</SexFreeForAllAge>
<SexFreeForAllAge_desc>Людиноподібні пішаки, молодші за цей вік, матимуть секс лише з пішаками з різницею у віці 2 роки.</SexFreeForAllAge_desc>
<bestiality_enabled>Увімкнути зоофілію</bestiality_enabled>
<bestiality_enabled_desc>Увімкнути зоофілію. Бажані і не дуже.</bestiality_enabled_desc>
<animal_on_animal_enabled>Увімкнути тварину на тварині</animal_on_animal_enabled>
<animal_on_animal_enabled_desc>Увімкнути спарювання диких тварин. Приручені тварини спаровуватимуться у межах свого виду незалежно від цього параметра (ванільна поведінка).\nУвімкнути міжвидовий секс між (визначеними) тваринами, що може призвести до вагітності.</animal_on_animal_enabled_desc>
<necrophilia_enabled>Увімкнути некрофілію</necrophilia_enabled>
<necrophilia_enabled_desc>Увімкнути секс з трупами. Зазвичай обмежується пішаками з рисою Некрофілія, але інші можуть іноді робити це, якщо вони сексуально розчаровані.</necrophilia_enabled_desc>
<sounds_enabled>Увімкнути звуки RJW</sounds_enabled>
<sounds_enabled_desc>Увімкнути специфічні для RJW звуки. Зауважте, що це не впливає на налаштування ядра: якщо у вас звук повністю вимкнено, це нічого не змінить.</sounds_enabled_desc>
<sounds_sex_volume>Гучність статі</sounds_sex_volume>
<sounds_sex_volume_desc>Змінити гучність статі</sounds_sex_volume_desc>
<sounds_cum_volume>Загальна гучність</sounds_cum_volume>
<sounds_cum_volume_desc>Змінити гучність кінчання</sounds_cum_volume_desc>
<sounds_voice_volume>Гучність голосу</sounds_voice_volume>
<sounds_voice_volume_desc>Змінити гучність голосу</sounds_voice_volume_desc>
<sounds_orgasm_volume>Гучність оргазму</sounds_orgasm_volume>
<sounds_orgasm_volume_desc>Змінити гучність оргазму</sounds_orgasm_volume_desc>
<sounds_animal_on_animal_volume>Модифікатор гучності тварини на тварині</sounds_animal_on_animal_volume>
<sounds_animal_on_animal_volume_desc>Додатковий модифікатор гучності для статі тварини на тварині</sounds_animal_on_animal_volume_desc>
<cum_filth>Увімкнути бруд сперми</cum_filth>
<cum_filth_desc>Увімкнути брудну сперму після сексу. Зауважте, що вимкнення цієї опції полегшить гру через відсутність бруду та потреби у прибиранні.</cum_filth_desc>
<RPG_hero_control_name>Режим героя</RPG_hero_control_name>
<RPG_hero_control_desc>Гравець може встановити 1 пішака як персонажа гравця та мати прямий безумовний контроль</RPG_hero_control_desc>
<RPG_hero_control_HC_name>Режим героя (HC)</RPG_hero_control_HC_name>
<RPG_hero_control_HC_desc>HARDCORE: Гравець може керувати лише героєм, запасіться мастилом, його знадобиться багато.\n(призначено для мультиплеєра)</RPG_hero_control_HC_desc>
<RPG_hero_control_Ironman_name>Режим героя (Ironman)</RPG_hero_control_Ironman_name>
<RPG_hero_control_Ironman_desc>HARDCORE: Гравець може встановити героя лише один раз</RPG_hero_control_Ironman_desc>
<UseAdvancedAgeScaling>Розширене масштабування віку</UseAdvancedAgeScaling>
<UseAdvancedAgeScaling_desc>Використовувати різну шкалу віку для нелюдських рас (довга або коротка тривалість життя)</UseAdvancedAgeScaling_desc>
<!-- Речі для зґвалтування-->
<designated_freewill>Визначена воля пішака</designated_freewill>
<designated_freewill_desc>Пішак, призначений для комфорту або спарювання, може ініціювати секс.</designated_freewill_desc>
<rape_enabled>Увімкнути зґвалтування</rape_enabled>
<rape_enabled_desc>Бачите, що вам подобається? Бери силоміць, потім можеш зробити з нього шапку.</rape_enabled_desc>
<PrisonersBeating>Шльопни мене, татку!</PrisonersBeating>
<PrisonersBeating_desc>Бий жертв до смерті під час зґвалтування.</PrisonersBeating_desc>
<GentlePrisonersBeating> Сенпай! Будь ласка, будьте лагіднішим!</GentlePrisonersBeating>
<GentlePrisonersBeating_desc>Зменшити шкоду від побиття до ~0-1.</GentlePrisonersBeating_desc>
<rape_stripping>Роздягати жертв зґвалтування</rape_stripping>
<rape_stripping_desc>Жертви зґвалтування з роздяганням (не комфортне зґвалтування - зоофілія, вороги тощо роздягають жертв)</rape_stripping_desc>
<ColonistCanCP>Увімкнути комфортне зґвалтування колоністами</ColonistCanCP>
<ColonistCanCP_desc>Колоністам дозволено ґвалтувати комфортних пішаків</ColonistCanCP_desc>
<VisitorsCanCP>Увімкнути комфортне зґвалтування відвідувачами</VisitorsCanCP>
<VisitorsCanCP_desc>Відвідувачам дозволено ґвалтувати комфортних пішаків.</VisitorsCanCP_desc>
<AnimalsCanCP>Увімкнути комфортне зґвалтування тваринами</AnimalsCanCP>
<AnimalsCanCP_desc>Тваринам дозволено ґвалтувати комфортних пішаків. Потребує увімкнення зоофілії.</AnimalsCanCP_desc>
<NonFutaWomenRaping_MaxVulnerability>Дівчата йдуть ґвалтувати (%)</NonFutaWomenRaping_MaxVulnerability>
<NonFutaWomenRaping_MaxVulnerability_desc>Тільки жінки з вразливістю нижче цього рівня можуть зґвалтувати інших. \Вразливість тварин завжди дорівнює 100%. \nЩоб перевірити статус 'вразливості', перейдіть до 'переглянути інформацію про цей об'єкт' > статистика.\n\nДопустимий діапазон: 0 - 300%</NonFutaWomenRaping_MaxVulnerability_desc>
<Rapee_MinVulnerability_human>'To-be-pealed' вразливість (%)</Rapee_MinVulnerability_human>
<Rapee_MinVulnerability_human_desc>Пішаки-люди з вразливістю вище цієї будуть цілями для зґвалтування. \Щоб перевірити статус 'вразливості', перейдіть до 'переглянути інформацію про цей об'єкт' > stats.\n\nДопустимий діапазон: 0 - 300%</Rapee_MinVulnerability_human_desc>
<Rapee_MinVulnerability_animals>Вразливість тварин до зґвалтування (%)</Rapee_MinVulnerability_animals>
<Rapee_MinVulnerability_animals_desc>Тварини з уразливістю вище цієї будуть об'єктами зґвалтування для зоофілів. \nЩоб перевірити статус 'вразливості', перейдіть до 'переглянути інформацію про цей об'єкт' > stats.\n\nДопустимий діапазон: 0 - 300%</Rapee_MinVulnerability_animals_desc>
<RJWSettingsFour>RimJobWorld - Налаштування випадкового сексу</RJWSettingsFour>
<SettingHookupsEnabled>Увімкнути хуки (загалом)</SettingHookupsEnabled>
<SettingHookupsEnabled_desc>Керує тим, чи можуть самотні пішаки мати випадковий секс з іншими самотніми пішаками</SettingHookupsEnabled_desc>
<SettingQuickHookupsEnabled>Увімкнути швидкі зв'язки.</SettingQuickHookupsEnabled>
<SettingQuickHookupsEnabled_desc>Керує тим, чи можуть одиночні пішаки мати випадковий швидкий секс з іншими одиночними пішаками\nПопередження: Це може перервати роботу пішаків.</SettingQuickHookupsEnabled_desc>
<SettingNoHookupsDuringWorkHours>Вимкнути з'єднання у робочий час</SettingNoHookupsDuringWorkHours>
<SettingNoHookupsDuringWorkHours_desc>Керує тим, чи можуть пішаки шукати випадкового сексу в робочий час.\nНімфоманки ігнорують це.</SettingNoHookupsDuringWorkHours_desc>
<SettingColonistsCanHookup>Колоністи можуть з'єднуватися</SettingColonistsCanHookup>
<SettingColonistsCanHookup_desc>Керує, чи дозволено колоністам шукати випадковий секс.</SettingColonistsCanHookup_desc>
<SettingColonistsCanHookupWithVisitor>Чи можуть колоністи переспати з відвідувачами</SettingColonistsCanHookupWithVisitor>
<SettingColonistsCanHookupWithVisitor_desc>Керує, чи можуть пішаки мати випадковий секс з відвідувачами колонії.</SettingColonistsCanHookupWithVisitor_desc>
<SettingCanHookupWithPrisoner>Пішаки, які не є ув'язненими, можуть з'єднуватися з ув'язненими</SettingCanHookupWithPrisoner>
<SettingCanHookupWithPrisoner_desc>Керує тим, чи можуть пішаки, які не є ув'язненими, шукати секс за згодою з ув'язненими.\nНа це не впливає позначення комфортного ув'язненого і вважається, що секс за згодою обох сторін.</SettingCanHookupWithPrisoner_desc>
<SettingVisitorsCanHookupWithColonists>Відвідувачі можуть з'єднуватися з колоністами</SettingVisitorsCanHookupWithColonists>
<SettingVisitorsCanHookupWithColonists_desc>Керує тим, чи можуть пішаки, які відвідують колонії, включати колоністів як потенційних партнерів для випадкового сексу.</SettingVisitorsCanHookupWithColonists_desc>
<SettingVisitorsCanHookupWithVisitors>Відвідувачі можуть з'єднуватися з іншими відвідувачами</SettingVisitorsCanHookupWithVisitors>
<SettingVisitorsCanHookupWithVisitors_desc>Керує тим, чи відвідувачі-пішаки включають інших відвідувачів як потенційних партнерів для випадкового сексу.</SettingVisitorsCanHookupWithVisitors_desc>
<SettingPrisonersCanHookupWithNonPrisoner>В'язні можуть з'єднуватися з колоністами</SettingPrisonersCanHookupWithNonPrisoner>
<SettingPrisonersCanHookupWithNonPrisoner_desc>Контролює, чи в'язні включають не ув'язнених як потенційних партнерів для випадкового сексу.\nПішаки, включно з ув'язненими, можуть займатися сексом лише з тими, до кого вони можуть дістатися, тому, якщо ув'язнений не може покинути свою камеру, це спірне питання.</SettingPrisonersCanHookupWithNonPrisoner_desc>
<SettingPrisonersCanHookupWithPrisoner>Ув'язнені можуть спілкуватися з ув'язненими</SettingPrisonersCanHookupWithPrisoner>
<SettingPrisonersCanHookupWithPrisoner_desc>Контролює, чи в'язні включають інших в'язнів як потенційних партнерів для випадкового сексу.\nПішаки, включно з в'язнями, можуть займатися сексом лише з тими, до кого вони можуть дістатися, тому, якщо в'язень не може покинути свою камеру, це спірне питання.</SettingPrisonersCanHookupWithPrisoner_desc>
<SettingNymphosCanPickAnyone>Німфос може вибрати будь-кого</SettingNymphosCanPickAnyone>
<SettingNymphosCanPickAnyone_desc>Керує тим, чи будуть пішаки-німфоманки (риса "Гіперсексуальність") вибирати будь-кого з доступних пішаків.\nВони все ще підпорядковуються налаштуванням шахрайства та руйнування сім'ї нижче.</SettingNymphosCanPickAnyone_desc>
<SettingNymphosCanCheat>Німфос може шахраювати</SettingNymphosCanCheat>
<SettingNymphosCanCheat_desc>Контролює, чи можуть пішаки-німфоманки (риса "Гіперсексуальність") шахраювати, якщо вони сексуально розчаровані.</SettingNymphosCanCheat_desc>
<SettingNymphosCanHomewreck>Німфос може розбити будинок</SettingNymphosCanHomewreck>
<SettingNymphosCanHomewreck_desc>Контролює, чи будуть пішаки-німфоманки (риса "Гіперсексуальність") трахати людей, які вже мають партнерів.</SettingNymphosCanHomewreck_desc>
<SettingNymphosCanHomewreckReverse>Німфос може розбивати будинки(Реверс)</SettingNymphosCanHomewreckReverse>
<SettingNymphosCanHomewreckReverse_desc>Керує тим, чи прийматимуть пішаки-німфоманки (риса 'Гіперсексуальність') секс, навіть якщо у них є партнер.</SettingNymphosCanHomewreckReverse_desc>
<SettingHookupChanceForNonNymphos>Шанс підчеплення % на годину</SettingHookupChanceForNonNymphos>
<SettingHookupChanceForNonNymphos_desc>Імовірність того, що збуджений пішак шукатиме випадкового сексу.\nПеревіряється лише раз на годину і лише тоді, коли пішак завершує своє поточне завдання. Значення за замовчуванням - 30%</SettingHookupChanceForNonNymphos_desc>
<SettingMinimumFuckabilityToHookup>Мінімальна придатність до зачеплення</SettingMinimumFuckabilityToHookup>
<SettingMinimumFuckabilityToHookup_desc>Контролює, наскільки привабливими (RJW) повинні бути обидва пішаки, щоб розглянути можливість хука.\n Значення за замовчуванням 10%.</SettingMinimumFuckabilityToHookup_desc>
<SettingMinimumAttractivenessToHookup>Мінімальна привабливість для хукапа</SettingMinimumAttractivenessToHookup>
<SettingMinimumAttractivenessToHookup_desc>Контролює, наскільки привабливі пішаки(Rimworld) один для одного, щоб розглядати можливість зчеплення.\n Значення за замовчуванням 50%.\n Nymphomaniac > 0.</SettingMinimumAttractivenessToHookup_desc>
<SettingMinimumRelationshipToHookup> Мінімальна думка про хукап</SettingMinimumRelationshipToHookup>
<SettingMinimumRelationshipToHookup_desc>Керує мінімальною думкою пішаків один про одного, щоб розглядати можливість з'єднання.\n За замовчуванням 20.\n Nymphomaniac > 0.</SettingMinimumRelationshipToHookup_desc>
<RJWDebugSettings>RimJobWorld - Налагодження</RJWDebugSettings>
<!-- налагодження-->
<submit_button_enabled>Увімкнути кнопку "відправити" на підготовлених пішаках</submit_button_enabled>
<submit_button_enabled_desc>Кнопка "Надіслати" дозволяє пропустити більш смертельну частину і перейти до більш принизливої. \Вимкніть її, якщо честь для вас важливіша за життя. \nПам'ятайте, якщо ви передумаєте, вона завжди буде тут і чекатиме на вас.</submit_button_enabled_desc>
<RJW_позначення_box>Показати позначення RJW</RJW_позначення_box>
<RJW_designation_box_desc>Вмикає показ групи кнопок RJW у графічному інтерфейсі керування пішаками.</RJW_designation_box_desc>
<StackRjwParts_name>Складання RJW деталей</StackRjwParts_name>
<StackRjwParts_desc>Складати rjw-частини у вкладку здоров'я пішака \n(Label x count)</StackRjwParts_desc>
<maxDistanceCellsCasual_name>Відстань між статями (Cells)</maxDistanceCellsCasual_name>
<maxDistanceCellsCasual_desc>Максимальна відстань у клітинках, яку ШІ готовий пройти, щоб досягти місця призначення/цілі.\n\nШвидка перевірка відстані - ігнорує перешкоди (наприклад, стіни, гори).\nЗа замовчуванням 100 клітин.</maxDistanceCellsCasual_desc>
<maxDistanceCellsRape_name>Довжина зґвалтування (клітинок)</maxDistanceCellsRape_name>
<maxDistanceCellsRape_desc>Максимальна відстань у клітинках, яку ШІ готовий пройти, щоб досягти місця призначення/цілі.\n\nШвидка перевірка відстані - ігнорує перешкоди (наприклад, стіни, гори).\nЗа замовчуванням 100 клітин.</maxDistanceCellsRape_desc>
<maxDistancePathCost_name>Статева відстань(PawnPath)</maxDistancePathCost_name>
<maxDistancePathCost_desc>Максимальна відстань, яку ШІ розглядає, щоб досягти місця призначення/цілі статевого акту. Повільне комплексне обчислення, на яке впливають перешкоди, швидкість пішака та модифікатори ґрунту.\nЗа замовчуванням 1000.\n0 - вимкнути перевірку.</maxDistancePathCost_desc>
<!-- чит-код-->
<override_RJW_designation_checks_name>Перевизначити перевірки позначень</override_RJW_designation_checks_name>
<override_RJW_designation_checks_desc>Дозволяє встановити позначення для всіх колоністів, ігноруючи умови.\n ВИ ШАХРАЙ</override_RJW_designation_checks_desc>
<override_control>Пряме керування</override_control>
<override_control_desc>Гравець може вручну наказувати пішакам робити дії, пов'язані з сексом.\n ВИ ШАХРАЙ</override_control_desc>
<AddTrait_Rapist>Набути риси ґвалтівника</AddTrait_Rapist>
<AddTrait_Rapist_desc>Шанс отримати ознаку ґвалтівника після 10 статевих актів, >12% з яких є зґвалтуваннями\n ВИ ШАХРАЙ</AddTrait_Rapist_desc>
<AddTrait_Masocist>Здобути ознаку мазохіста</AddTrait_Masocist>
<AddTrait_Masocist_desc>Шанс отримати рису мазохіста після зґвалтування, 5% після стадії відчуття розбитості\n ВИ ШАХРАЙ</AddTrait_Masocist_desc>
<AddTrait_Nymphomaniac>Здобути ознаку Гіперсексуальність</AddTrait_Nymphomaniac>
<AddTrait_Nymphomaniac_desc>Шанс отримати ознаку гіперсексуальності після 10 статевих актів, якщо ви перебуваєте під залежністю від HumpShroom\n YOU CHEATER</AddTrait_Nymphomaniac_desc>
<AddTrait_Necrophiliac>Набути ознаки некрофіла</AddTrait_Necrophiliac>
<AddTrait_Necrophiliac_desc>Шанс отримати ознаку некрофіла після 10 статевих актів, >50% з яких з трупами\n ВИ ШАХРАЙ</AddTrait_Necrophiliac_desc>
<AddTrait_Nerves>Здобути ознаку Нерви</AddTrait_Nerves>
<AddTrait_Nerves_desc>Набути властивості "Нерви" після зґвалтування\n ТИ ШАХРАЙ</AddTrait_Nerves_desc>
<AddTrait_Zoophiliac>Отримати ознаку Зоофілія</AddTrait_Zoophiliac>
<AddTrait_Zoophiliac_desc>Шанс отримати ознаку зоофіла після 10 статевих актів, >50% з яких з тваринами\n ВИ ШАХРАЙ</AddTrait_Zoophiliac_desc>
<AddTrait_FootSlut>Набути ознаку FootSlut</AddTrait_FootSlut>
<AddTrait_FootSlut_desc>Шанс отримати ознаку повії після 10 статевих актів, при отриманні Footjob\n YOU CHEATER</AddTrait_FootSlut_desc>
<AddTrait_CumSlut>Отримати характеристику "Шльондра"</AddTrait_CumSlut>
<AddTrait_CumSlut_desc>Шанс отримати ознаку повії після 10 статевих актів при виконанні Fellatio\n YOU CHEATER</AddTrait_CumSlut_desc>
<AddTrait_ButtSlut>Отримати ознаку Жополиз</AddTrait_ButtSlut>
<AddTrait_ButtSlut_desc>Шанс отримати ознаку шльондри після 10 статевих актів, при отриманні Anal\n YOU CHEATER</AddTrait_ButtSlut_desc>
<Allow_RMB_DeepTalk>Глибока розмова в юанях</Allow_RMB_DeepTalk>
<Allow_RMB_DeepTalk_desc>Дозволяє взаємодію RMB-Social-DeepTalk (+12 зв'язків)\n YOU CHEATER</Allow_RMB_DeepTalk_desc>
<Disable_bestiality_pregnancy_relations>Вимкнути зв'язки зоофілії з вагітністю</Disable_bestiality_pregnancy_relations>
<Disable_bestiality_pregnancy_relations_desc>Вимкнути зв'язки (мати/батько/брати/сестри) від зоофілії вагітності.\n YOU CHEATER</Disable_bestiality_pregnancy_relations_desc>
<Disable_MeditationFocusDrain>Вимкнути злив фокусу медитації</Disable_MeditationFocusDrain>
<Disable_MeditationFocusDrain_desc>Коли пішаки розчаровані, вони не втрачають фокус.\n ВИ ШАХРАЙ</Disable_MeditationFocusDrain_desc>
<Disable_RecreationDrain>Вимкнути злив відпочинку</Disable_RecreationDrain>
<Disable_RecreationDrain_desc>Коли пішаки мають нудний/поганий секс через риси/запити, вони не втрачають потреби у відпочинку.\n ВИ ШАХРАЙ</Disable_RecreationDrain_desc>
<!-- налагодження-->
<ForbidKidnap>Заборонити викрадення</ForbidKidnap>
<ForbidKidnap_desc>Не викрадати</ForbidKidnap_desc>
<override_lovin>Замінити ванільний lovin</override_lovin>
<override_lovin_desc>Використовуйте випадковий секс замість ванільного кохання</override_lovin_desc>
<override_matin>Замінити ванільний matin</override_matin>
<override_matin_desc>Використовувати breeding замість ванільного matin</override_matin_desc>
<matin_crossbreed>Схрещування матінок</matin_crossbreed>
<matin_crossbreed_desc>Тварини з однаковим animalType (Ваніль: Собаки, Дріади) вважатимуться одним видом і можуть спаровуватися між собою.</matin_crossbreed_desc>
<WildMode_name>Дикий режим</WildMode_name>
<WildMode_desc>ЕКСПЕРИМЕНТАЛЬНИЙ - НЕ ПОВІДОМЛЯЙТЕ ПРО ВИКЛЮЧЕННЯ, ЯКЩО ЦЕ УВІМКНЕНО. \n\nНемає правил для сексу. Більшість обмежувальних вимог вимкнено. Насолоджуйтесь найдикішою стороною Rimworld.</WildMode_desc>
<HippieMode_name>Режим хіпі</HippieMode_name>
<HippieMode_desc>ЕКСПЕРИМЕНТАЛЬНО - НЕ ПОВІДОМЛЯЙТЕ ПРО ВИКЛЮЧЕННЯ, ЯКЩО ЦЕ УВІМКНЕНО. \Ігнорувати зв'язки для випадкових знайомств.</HippieMode_desc>
<GenderlessAsFuta_name>GenderlessAsFuta</GenderlessAsFuta_name>
<GenderlessAsFuta_desc>Використовуйте на свій страх і ризик. \Безстатеві пішаки будуть встановлені як жіноча стать і матимуть обидва набори геніталій.</GenderlessAsFuta_desc>
<DevMode_name>Режим розробки</DevMode_name>
<DevMode_desc>Увімкнення журналювання RimJobWorld та інших речей. Зазвичай ви не хочете, щоб це було увімкнено.</DevMode_desc>
<DebugLogJoinInBed>Інформація для пошуку журналу налагодження підключення</DebugLogJoinInBed>
<DebugLogJoinInBed_desc>Вмикає деякі дуже спам'ятні журнали налагодження для пошуку помилок у роботі JoinInBed. \nТільки розробники (або хтось, хто допомагає їм знайти ваду) повинні вмикати цей параметр.</DebugLogJoinInBed_desc>
<DebugRape>Інформація про зґвалтування журналу налагодження</DebugRape>
<DebugRape_desc>Вмикає деякі дуже спамливі журнали налагодження, щоб допомогти знайти вади у операціях зґвалтування.\nТільки розробники (або хтось, хто допомагає їм знайти ваду) повинні вмикати цей параметр.</DebugRape_desc>
<DebugInteraction>Інформація про взаємодію з журналом налагодження</DebugInteraction>
<DebugInteraction_desc>Довідковий режим для модуля взаємодії.</DebugInteraction_desc>
<DebugNymph>Інформація про німфу журналу налагодження</DebugNymph>
<DebugNymph_desc>Режим розширеного опису для модуля nymph.</DebugNymph_desc>
<!-- Вагітність-->
<RJWSettingsTwo>RimJobWorld - налаштування вагітності</RJWSettingsTwo>
<UseVanillaPregnancy>Вагітність у Biotech DLC</UseVanillaPregnancy>
<UseVanillaPregnancy_desc>Використовувати Biotech DLC вагітність для вагітностей за участю людської самки.</UseVanillaPregnancy_desc>
<RJWH_pregnancy>Увімкнути людські вагітності</RJWH_pregnancy>
<RJWH_pregnancy_desc>Увімкнути вагітність під час статевого акту між людьми. Якщо не встановлено DLC Biotech, RJW використовуватиме власну систему вагітності.</RJWH_pregnancy_desc>
<PregnantCoeffecientForHuman>Шанси вагітності людини (%)</PregnantCoeffecientForHuman>
<PregnantCoeffecientForHuman_desc>Шанси завагітніти для людини у відсотках.\n\nДопустимий діапазон: 0 - 100%</PregnantCoeffecientForHuman_desc>
<RJWB_pregnancy>Увімкнути вагітність від зоофілів</RJWB_pregnancy>
<RJWB_pregnancy_desc>Використовувати вагітність RJW для вагітностей людина-тварина.</RJWB_pregnancy_desc>
<PregnantCoeffecientForAnimals>Шанси вагітності для тварин (%)</PregnantCoeffecientForAnimals>
<PregnantCoeffecientForAnimals_desc>Шанси вагітності тварин у відсотках.\n\nДопустимий діапазон: 0 - 100%</PregnantCoeffecientForAnimals_desc>
<InterspeciesImpregnantionModifier>Модифікатор міжвидового запліднення (%)</InterspeciesImpregnantionModifier>
<InterspeciesImpregnantionModifier_desc>Міжвидовий модифікатор просочення у відсотках. При 20% це зменшує нормальний шанс до п'ятої частини для одного виду і т.д.\n\nДопустимий діапазон: 0 - 100%</InterspeciesImpregnantionModifier_desc>
<UseParentMethod>Успадкування ДНК</UseParentMethod>
<UseParentMethod_desc>Увімкнено:Діти мають випадкову батьківську ДНК.\nВимкнено:Діти схожі на матерів.</UseParentMethod_desc>
<OffspringLookLikeTheirMother>Успадкування людської ДНК</OffspringLookLikeTheirMother>
<OffspringLookLikeTheirMother_desc>Керує людиноподібними вагітностями. \n100% означає, що народжені діти будуть мати материнську расу. \0% означає, що народжені діти будуть батьківської раси.\n\nДопустимий діапазон: 0 - 100%</OffspringLookLikeTheirMother_desc>
<OffspringIsHuman>Успадкування ДНК бестіальності (мати/батько)</OffspringIsHuman>
<OffspringIsHuman_desc>Керує вагітностями людина-тварина та тварина-тварина.\n100% означає, що народжені діти будуть "материнської" раси. \0% означає, що народжені діти будуть "батьківської" раси.\n\nДопустимий діапазон: 0 - 100%</OffspringIsHuman_desc>
<OffspringIsHuman2>Успадкування ДНК бестіальності (людина/тварина)</OffspringIsHuman2>
<OffspringIsHuman2_desc>Керує вагітністю між людиною і твариною.\n\n ліворуч - народжені діти будуть належати до раси звірів. \n\n праворуч - народжені діти будуть належати до людиноподібної раси. \n\n будь-що інше - використовуйте логіку Мати/Батько</OffspringIsHuman2_desc>
<RJWA_pregnancy>Увімкнути вагітність тварин</RJWA_pregnancy>
<RJWA_pregnancy_desc>Використовувати вагітність RJW для вагітностей тварина-тварина.</RJWA_pregnancy_desc>
<RJWI_pregnancy>Увімкнути яйцеклітинні вагітності</RJWI_pregnancy>
<RJWI_pregnancy_desc>Використовувати вагітність RJW для яйцевих вагітностей яйцекладок.</RJWI_pregnancy_desc>
<egg_pregnancy_implant_anyone>Фільтр імплантації яйцеклітин</egg_pregnancy_implant_anyone>
<egg_pregnancy_implant_anyone_desc>Увімкнено: імплантувати яйцеклітини може будь-хто, хто має жіночий яйцеклад.\nВимкнено: імплантувати яйцеклітини може лише попередньо визначений тип батьків.</egg_pregnancy_implant_anyone_desc>
<egg_pregnancy_fertilize_anyone>Фільтр запліднення яйцеклітин</egg_pregnancy_fertilize_anyone>
<egg_pregnancy_fertilize_anyone_desc>Увімкнено: запліднювати яйця може будь-хто з чоловічим яйцекладом.\nВимкнено: запліднювати яйця може лише попередньо визначений тип батьків або такий самий, як імплантатор.</egg_pregnancy_fertilize_anyone_desc>
<RJWI_analPregnancy>Увімкнути анальну яйцеклітинну вагітність</RJWI_analPregnancy>
<RJWI_analPregnancy_desc>Дозволити комахам запліднювати пішаків анально.</RJWI_analPregnancy_desc>
<RJWI_oralPregnancy>Увімкнути вагітність оральних яєць</RJWI_oralPregnancy>
<RJWI_oralPregnancy_desc>Дозволити комахам запліднювати пішаків орально.</RJWI_oralPregnancy_desc>
<egg_pregnancy_eggs_size>Модифікатор розміру яйця</egg_pregnancy_eggs_size>
<egg_pregnancy_eggs_size_desc>0 - можна імплантувати необмежену кількість яйцеклітин.</egg_pregnancy_eggs_size_desc>
<MechanoidImplanting>Увімкнути імплантацію механоїдів</MechanoidImplanting>
<MechanoidImplanting_desc>Дозволити зондування та імплантацію механоїдами.</MechanoidImplanting_desc>
<SaferMechanoidImplanting>Безпечніші механоїдні імплантати(')</SaferMechanoidImplanting>
<SaferMechanoidImplanting_desc>Механоїдні імплантати не вбиватимуть пішаків(''якщо було перевірено вагітність), натомість наносять по 5 пошкоджень кожній частині тіла, що міститься в тулубі. Механоїди все одно будуть ворожими</SaferMechanoidImplanting_desc>
<CP_pregnancy>Використовувати вагітність RimWorldChildren для вагітності між humanlike</CP_pregnancy>
<CP_pregnancy_desc>Керує, чи має RJW використовувати власну вагітність або RimWorldChildren для вагітностей людина-людина.</CP_pregnancy_desc>
<genetic_trait_filter>Фільтр успадкованих ознак</genetic_trait_filter>
<genetic_trait_filter_desc>Якщо увімкнено, буде використано rjw/Defs/NonInheritedTraits.xml для фільтрації ознак, які не слід передавати наступним поколінням. Якщо вимкнено, все буде чесно.</genetic_trait_filter_desc>
<max_num_momtraits_inherited>Максимальна кількість успадкованих ознак від матері</max_num_momtraits_inherited>
<max_num_poptraits_inherited>Максимальна кількість успадкованих ознак від батька</max_num_poptraits_inherited>
<RJW_fertility_endAge_male>Вік безпліддя чоловіка</RJW_fertility_endAge_male>
<RJW_fertility_endAge_male_desc>Скориговано на тривалість життя для інопланетних рас. Та сама шкала використовується для тварин і людей.</RJW_fertility_endAge_male_desc>
<RJW_fertility_endAge_female_humanlike>Вік безпліддя жінок (людиноподібні)</RJW_fertility_endAge_female_humanlike>
<RJW_fertility_endAge_female_humanlike_desc>На відміну від більшості тварин, самки людини стають неплідними у ранньому віці. Для балансу використовується однакове співвідношення для всіх інопланетних рас.</RJW_fertility_endAge_female_humanlike_desc>
<RJW_fertility_endAge_female_animal>Вік безпліддя самок (тварини)</RJW_fertility_endAge_female_animal>
<RJW_fertility_endAge_female_animal_desc>На відміну від людей, більшість самок тварин залишаються фертильними до смерті.</RJW_fertility_endAge_female_animal_desc>
<In_human_years> у людських роках</In_human_years>
<XofLifeExpectancy>% від очікуваної тривалості життя</XofLifeExpectancy>
<InterspeciesDisabled>Міжвидові інваліди.</InterspeciesDisabled>
<InterspeciesMaximum>Дорівнює одному виду.</InterspeciesMaximum>
<AlwaysMother>Завжди материнський вид.</AlwaysMother>
<AlwaysFather>Завжди вид батька.</AlwaysFather>
<AlwaysBeast>Тваринний вид.</AlwaysBeast>
<AlwaysHumanlike>Види, подібні до людини.</AlwaysHumanlike>
<UsesOffspringIsHuman>Використовувати матір/батька</UsesOffspringIsHuman>
<ComplexImpregnation>Увімкнути розрахунок складного міжвидового просочення</ComplexImpregnation>
<ComplexImpregnation_desc><![CDATA[Якщо увімкнено, шанс запліднення між видами залежить від різниці у будові та розмірі тіла.
Приклади:
Людина/крилатий гуманоїд : ~95%
Людина/Гарпія : ~75%
Людина/Собака: ~30%
Людина/курка : ~5%
Вовк/Собака : ~95
Вовк/курка : ~5%.
Півень/Гарпія : ~30%.
Зверніть увагу, що цей шанс ще більше знижується повзунками вагітності базової тварини та людини.
]]></ComplexImpregnation_desc>
<phantasy_pregnancy>Фантастична вагітність</phantasy_pregnancy>
<phantasy_pregnancy_desc>Світ заполонили злі наномашини, які прискорюють ріст дітей до досягнення ними репродуктивного віку.\n\nНе впливає на нелюдей і не репродуктивні раси.\n\nЙмовірно, не працює з іншими модами вагітності.</phantasy_pregnancy_desc>
<normal_pregnancy_duration>Модифікатор тривалості вагітності.</normal_pregnancy_duration>
<normal_pregnancy_duration_desc>Більше -> Довше</normal_pregnancy_duration_desc>
<egg_pregnancy_duration>Модифікатор тривалості яєчної вагітності.</egg_pregnancy_duration>
<egg_pregnancy_duration_desc>Більше -> Довше.</egg_pregnancy_duration_desc>
<!-- статеві типи -->
<RJWSettingsThree>RimJobWorld - Налаштування статі</RJWSettingsThree>
<SexTypeFrequency> Частота типу статі:\n[Вище = більш поширений]</SexTypeFrequency>
<vaginal>Частота вагінального проникнення</vaginal>
<vaginal_desc>Частота вагінального сексу. Зверніть увагу, що ця частота додатково коригується такими факторами, як доступні отвори і т.д.\n\nДопустимий діапазон: 1 - 200\n\nЗа замовчуванням: 120</vaginal_desc>
<cunnilingus>Частота кунілінгусу</cunnilingus>
<cunnilingus_desc>Частота оральної стимуляції піхви. Зверніть увагу, що ця частота додатково коригується такими факторами, як доступні отвори, зґвалтування і т.д.\n\nДопустимий діапазон: 1 - 200\nЗа замовчуванням: 80</cunnilingus_desc>
<anal>Частота анального проникнення</anal>
<anal_desc>Частота анального проникнення (пеніс). Зверніть увагу, що ця частота додатково коригується такими факторами, як доступні отвори, зґвалтування і т.д.\n\nДопустимий діапазон: 1 - 200\nЗа замовчуванням: 80</anal_desc>
<rimming>Частота облямівки</rimming>
<rimming_desc>Частота оральної стимуляції ануса. Зверніть увагу, що ця частота додатково коригується такими факторами, як доступні отвори і т.д.\n\nДопустимий діапазон: 1 - 200\nЗа замовчуванням: 40</rimming_desc>
<fellatio>Частота феллації</fellatio>
<fellatio_desc>Частота феляції, також відомої як мінет. Зверніть увагу, що ця частота додатково коригується такими факторами, як доступні отвори і т.д.\n\nДопустимий діапазон: 1 - 200\n\nЗа замовчуванням: 80</fellatio_desc>
<handjob>Частота ручних рухів</handjob>
<handjob_desc>Частота ручних робіт. Потрібні робочі руки. Зверніть увагу, що ця частота додатково коригується такими факторами, як повії і т.д.\n\nДопустимий діапазон: 1 - 200\n\nЗа замовчуванням: 80</handjob_desc>
<mutual_masturbation>Частота взаємної мастурбації</mutual_masturbation>
<mutual_masturbation_desc>Частота взаємної мастурбації (два колоністи мастурбують один одному). Зверніть увагу, що ця частота додатково коригується такими факторами, як зґвалтування і т.д.\n\nДопустимий діапазон: 1 - 200\nЗа замовчуванням: 70</mutual_masturbation_desc>
<double_penetration>Частота подвійного проникнення</double_penetration>
<double_penetration_desc>Частота подвійного проникнення, одночасного анального та вагінального. Потрібен мультипеніс, наприклад, геміпеніс. Зверніть увагу, що ця частота додатково коригується такими факторами, як доступні отвори і т.д.\n\nДопустимий діапазон: 1 - 200\n\nЗа замовчуванням: 60</double_penetration_desc>
<breastjob>Частота грудей</breastjob>
<breastjob_desc>Частота мастурбації грудей. Вимагає, щоб один пішак мав груди, а інший - пеніс. Зауважте, що ця частота додатково коригується такими факторами, як повії, зґвалтування і т.д.\n\nДопустимий діапазон: 1 - 200\nЗа замовчуванням: 50</breastjob_desc>
<fingering>Частота вагінальних пальців</fingering>
<fingering_desc>Частота вагінальної аплікатури. Вимагає, щоб один пішак мав вагіну, а інший - робочу руку. Зауважте, що ця частота додатково коригується такими факторами, як проституція, зґвалтування і т.д.\n\nДопустимий діапазон: 1 - 200\n\nЗа замовчуванням: 50</fingering_desc>
<scissoring>Частота ножиць</scissoring>
<scissoring_desc>Частота ножиць (тип трибадизму, коли партнери зчіплюють ноги і труться вульвами). Вимагає, щоб обидва пішаки мали вагіни.\n\nДопустимий діапазон: 1 - 200\n\nЗа замовчуванням: 50</scissoring_desc>
<footjob>Періодичність ножного ходу</footjob>
<footjob_desc>Частота футджобів (стимуляція пеніса ногами). Зверніть увагу, що ця частота додатково коригується такими факторами, як повії, зґвалтування і т.д.\n\nДопустимий діапазон: 1 - 200\n\nЗа замовчуванням: 30</footjob_desc>
<fisting_desc>Частота анального фістингу (вагінальний ще не реалізовано). Вимагає, щоб один партнер мав робочу руку. Зауважте, що ця частота додатково коригується такими факторами, як повія, зґвалтування і т.д.\n\nДопустимий діапазон: 1 - 200\nЗа замовчуванням: 30</fisting_desc>
<sixtynine>69 частота</sixtynine>
<sixtynine_desc>Частота 69 (взаємний оральний). Вимагає наявності геніталій у обох партнерів. Зауважте, що ця частота додатково коригується такими факторами, як проституція, зґвалтування і т.д.\n\nДопустимий діапазон: 1 - 200\nЗа замовчуванням: 69</sixtynine_desc>
<FapEverywhere>Дрочити скрізь</FapEverywhere>
<FapEverywhere_desc>Пішак буде мастурбувати, де захоче.</FapEverywhere_desc>
<FapInBed>Мастурбувати в ліжку</FapInBed>
<FapInBed_desc>Пішак буде мастурбувати у своєму ліжку.</FapInBed_desc>
<FapInBelts>Фапінг із заблокованими геніталіями</FapInBelts>
<FapInBelts_desc>Пішак може мастурбувати із заблокованими геніталіями.</FapInBelts_desc>
<FapInArmbinders>Мастурбувати із заблокованими руками</FapInArmbinders>
<FapInArmbinders_desc>Пішак може мастурбувати із заблокованими руками.</FapInArmbinders_desc>
<Malesex> Дозволений чоловічий секс:</Malesex>
<FeMalesex>Дозволена жіноча стать:</FeMalesex>
<AllowedSex.All>Всі</AllowedSex.All>
<AllowedSex.Homo>Гей</AllowedSex.Homo>
<AllowedSex.Nohomo>Натурал</AllowedSex.Nohomo>
<SexClothing>Одяг, якому надається перевага для сексу:</SexClothing>
<SexClothingNude>Одяг без одягу</SexClothingNude>
<SexClothingHeadwear>Тільки головний убір</SexClothingHeadwear>
<SexClothingFull> Повністю одягнений</SexClothingFull>
<RapeAttemptAlert>Попередження про спробу зґвалтування:</RapeAttemptAlert>
<RapeAttemptAlertAlways>Завжди увімкнено</RapeAttemptAlertAlways>
<RapeAttemptAlertHumanlike>Тільки якщо ціль схожа на людину</RapeAttemptAlertHumanlike>
<RapeAttemptAlertColonist>Тільки якщо ціль є колоністом</RapeAttemptAlertColonist>
<RapeAttemptAlertSilent>Тільки показувати сповіщення</RapeAttemptAlertSilent>
<RapeAttemptAlertDisabled>Вимкнено</RapeAttemptAlertDisabled>
<RapeAlert> Сповіщення про зґвалтування:</RapeAlert>
<RapeAlertAlways>Завжди увімкнено</RapeAlertAlways>
<RapeAlertHumanlike>Тільки якщо ціль схожа на людину</RapeAlertHumanlike>
<RapeAlertColonist>Тільки якщо ціль є колоністом</RapeAlertColonist>
<RapeAlertSilent>Тільки показувати сповіщення</RapeAlertSilent>
<RapeAlertDisabled>Вимкнено</RapeAlertDisabled>
<RapeAlertCP>Показувати для CP</RapeAlertCP>
<RapeAlertCP_desc>Показувати попередження, коли пішака, призначеного для заспокоєння, зґвалтовано.</RapeAlertCP_desc>
<RapeAlertBreeding>Показувати для розведення</RapeAlertBreeding>
<RapeAlertBreeding_desc>Показувати попередження, коли пішака, призначеного для розведення, зґвалтовано.</RapeAlertBreeding_desc>
<SexualitySpread1>Джерело поширення сексуальності:</SexualitySpread1>
<SexualitySpread2>Поширення генерації сексуальності для RJW.\nЦЕ ЛИШЕ ДЛЯ СЕКСУ\nНЕ ВПЛИВАЄ НА ВІДНОСИНИ</SexualitySpread2>
<SexualitySpreadVanilla>[Імпортовано з Vanilla Rimworld]</SexualitySpreadVanilla>
<SexualitySpreadPsychology>[Імпортовано з Psychology]</SexualitySpreadPsychology>
<SexualitySpreadIndividuality>[імпортовано з [SYR]Індивідуальність]</SexualitySpreadIndividuality>
<SexualityAsexual> Безстатевий:</SexualityAsexual>
<SexualityPansexual> Пансексуал:</SexualityPansexual>
<SexualityHeterosexual> Гетеросексуальна:</SexualityHeterosexual>
<SexualityBisexual> Бісексуал:</SexualityBisexual>
<SexualityGay> Гей:</SexualityGay>
<SexualityAsexual_desc> Низький або відсутній статевий потяг, загалом не зацікавлений у сексі.</SexualityAsexual_desc>
<SexualityPansexual_desc>Пансексуали повністю ігнорують стать.</SexualityPansexual_desc>
<SexualityHeterosexual_desc>Гетеросексуалів приваблює "протилежна" стать.</SexualityHeterosexual_desc>
<SexualityBisexual_desc>Бісексуалів приваблюють як чоловіки, так і жінки.</SexualityBisexual_desc>
<SexualityGay_desc>Гомосексуалів приваблюють особи своєї статі.</SexualityGay_desc>
<MaxQuirks>Максимальні примхи</MaxQuirks>
<MaxQuirks_desc>Максимум дивацтв, які може отримати пішак при створенні.</MaxQuirks_desc>
<SendTraitGainLetters>Сповіщення про статеві ознаки</SendTraitGainLetters>
<SendTraitGainLetters_desc>Увімкнути отримання листів, коли пішак отримує ознаку статі. Неважливі пішаки, такі як торговці, ніколи не будуть отримувати сповіщення незалежно від цього налаштування.</SendTraitGainLetters_desc>
</LanguageData>


code:
<?xml version="1.0" encoding="utf-8"?>
<LanguageData>
<!-- Labels -->
<RJW_SexGizmo_Orgasm>Оргазм</RJW_SexGizmo_Orgasm>
<RJW_SexGizmo_RestNeed>Стаміна</RJW_SexGizmo_RestNeed>
<RJW_SexGizmo_SexNeed>Задоволення</RJW_SexGizmo_SexNeed>
<!-- Buttons -->
<RJW_SexGizmo_SexOverdriveTooltip>Секс-екстаз - секс не закінчується, поки пішак не зламається або не буде перервано.</RJW_SexGizmo_SexOverdriveTooltip>
<RJW_SexGizmo_HitPawn>Ударити раз.</RJW_SexGizmo_HitPawn>
<RJW_SexGizmo_Cocoon>Завернути павука в кокон.</RJW_SexGizmo_Cocoon>
<RJW_SexGizmo_Egg>Наповнити яйцями.</RJW_SexGizmo_Egg>
</LanguageData>

repo_name: PhaetonYT/rjw

license: mit


code:
<?xml version="1.0" encoding="utf-8"?>
<LanguageData>
<!--Sexuality card-->
<SexcardTooltip>Показати сексуальність</SexcardTooltip>
<Quirks>Особливості:</Quirks>
<NoQuirks>Немає особливостей, ванільний.</NoQuirks>
<MessyQuirk><![CDATA[
{pawn} не тільки виділяє великі кількості рідини під час сексу, але {pawn_pronoun} рідко стається чистити себе після цього.
]]></MessyQuirk>
<PodophileQuirk><![CDATA[
{pawn} дійсно любить ноги та віддає перевагу сексуальним актам з ними.
]]></PodophileQuirk>
<CumslutQuirk><![CDATA[
{pawn} дійсно любить сперму та віддає перевагу фелляційним сексуальним актам.
]]></CumslutQuirk>
<ButtslutQuirk><![CDATA[
{pawn} дійсно любить бути трахнутим у попу та віддає перевагу анальним сексуальним актам.
]]></ButtslutQuirk>
<TeratophileQuirk><![CDATA[
{pawn} віддає перевагу непривабливим партнерам. {pawn_pronoun} також віддає перевагу більшим та диким тваринам, якби {pawn_pronoun} був на це налаштований...
]]></TeratophileQuirk>
<EndytophileQuirk><![CDATA[
{pawn} віддає перевагу тим, щоб залишатись одягненим під час сексу.
]]></EndytophileQuirk>
<ExhibitionistQuirk><![CDATA[
{pawn} насолоджується сексом там, де його можуть побачити інші.
]]></ExhibitionistQuirk>
<GerontophileQuirk><![CDATA[
{pawn} віддає перевагу старшим партнерам (55+ за людськими мірками).
]]></GerontophileQuirk>
<SomnophileQuirk><![CDATA[
{pawn} віддає перевагу тому, щоб його партнер був у стані сну.
]]></SomnophileQuirk>
<SapiosexualQuirk><![CDATA[
{pawn} віддає перевагу розумним партнерам.
]]></SapiosexualQuirk>
<FertileQuirk><![CDATA[
{pawn} має надзвичайно високу репродуктивність, тому ймовірність народження дітей вища.
]]></FertileQuirk>
<InfertileQuirk><![CDATA[
{pawn} має надзвичайно низьку репродуктивність, тому ймовірність народження дітей низька.
]]></InfertileQuirk>
<ImpregnationFetishQuirk><![CDATA[
{pawn} дійсно любить ідею вагітності. {pawn_pronoun} віддає перевагу партнерам і позиціям під час сексу, де є можливість вагітності. {pawn_pronoun} не цікавиться тим, чи сам {pawn_pronoun} стає вагітним, чи його партнер, головне, щоб народився малюк.
]]></ImpregnationFetishQuirk>
<PregnancyFetishQuirk><![CDATA[
{pawn} віддає перевагу партнерам, які мають видиму вагітність.
]]></PregnancyFetishQuirk>
<IncubatorQuirk><![CDATA[
{pawn} народив стільки яєць, що його організм адаптувався до них. Швидкість інкубації яєць у {pawn_possessive} збільшилась.
]]></IncubatorQuirk>
<BreederQuirk><![CDATA[
{pawn} народив стільки разів, що його організм адаптувався до розмноження. Вагітності у {pawn_possessive} стають коротшими та приносять більше нащадків.
]]></BreederQuirk>
<VigorousQuirk><![CDATA[
{pawn} підіймається після сексу. {pawn_pronoun} не втомлюється так сильно під час сексу.
]]></VigorousQuirk>
<ChitinLoverQuirk><![CDATA[
{pawn} любить гладкість і міць хітинового зовнішнього скелету. {pawn_pronoun} віддає перевагу партнерам, що схожі на павуків або комах.
]]></ChitinLoverQuirk>
<DemonLoverQuirk><![CDATA[
{pawn} пристрастився до забороненого. {pawn_pronoun} віддає перевагу тим партнерам, які приходять з буквальної глибини пекла, або принаймні мають відповідний зовнішній вигляд.
]]></DemonLoverQuirk>
!
<FeatherLoverQuirk><![CDATA[
{pawn} любить пухнасту пір'яну шерсть. Він віддає перевагу партнерам-птахам або динозаврам. Бо динозаври - це птахи, як {pawn_pronoun} пояснить, якщо дають шанс.
]]></FeatherLoverQuirk>
<FurLoverQuirk><![CDATA[
{pawn} віддає перевагу партнерам з густою, розкішною, м'якою і пухнастою шерстю.
]]></FurLoverQuirk>
<PlantLoverQuirk><![CDATA[
{pawn} любить поливати рослини. Якщо ви знаєте, про що я.
]]></PlantLoverQuirk>
<RobotLoverQuirk><![CDATA[
Що краще - 2D або 3D? {pawn} знає, що друк 3D дає вам кращі можливості обох світів.
]]></RobotLoverQuirk>
<ScaleLoverQuirk><![CDATA[
Хто не хоче трахнути дракона? Однозначно не {pawn}. {pawn} хоче трахнути дракона.
]]></ScaleLoverQuirk>
<SkinLoverQuirk><![CDATA[
{pawn} віддає перевагу партнерам з гладкою чутливою шкірою без вовни або луски на перешкоді. На щастя для {pawn_pronoun} людей скрізь багато.
]]></SkinLoverQuirk>
<SlimeLoverQuirk><![CDATA[
Через їх ковзаючу та м'яку природу, слизи дуже, дуже добрі в сексі. Як ви почуєте знову і знову, якщо прослуховуєте {pawn} на протязі довшого часу.
]]></SlimeLoverQuirk>
<SexPartWants>Хоче бути:</SexPartWants>
</LanguageData>


code:
дупа
розмір грудей
груди
попка
ерекція
лібідо
соски
оральні навички
пеніс
розмір пеніса
сексуальні досягнення
сексуальні навички
язик
вагіна
місткість вагіни


code:
аборт
сексуальні практики
догляд
вік згоди
оргазм
анальний секс
геніталії тварин
спарювання тварин
анонімний секс
аромантичність
асексуальність
дівчатка
автоеротизм
самовідсмоктування
бідони
бороди
сексизм
секс із тваринами
великі попки
біфобія
бісексуальність
укуси
пов'язки на очі
змазка
модифікації тіла
бондаж
тітіліс
цицьки
попки
пасивів
утяжки для грудей
ріст грудей
гіпертрофовані груди
тортури над грудьми
вилизування грудей
груди
контроль дихання партнера
запліднювачі
буккаке
стриптизерки-кролики
анальні пробки
пік-ак
кошкодівчата
стриманість
пояс вірності
зрада
гігантські цицьки
любителів товстушок
клітор
догоджання члена
носіння нашийника
релігійні погляди на секс
невпевнена згода
згода
контрацептиви
міжвидовий секс
сперма
куні
кіберсекс
деднеймінг
розпуста
демісексуальність
домінація
подвійне проникнення
подвійні стандарти
драг квін
еджинг
їстівна білизна
згода з ентузіазмом
еротичне переривання сексу
еротичне відшльопування
еротичний лоскот
еротика
ексгібіціонізм
позашлюбний секс
сидіння на обличчі
образи за вагу
жіноче домінування
дівчата без сексу
феменізм
теорія феменізму
фетиші
фінансова домінація
фінгерінг
ігри з вогнем
фістинг
флірт
роздягання з примусу
попередні ласки
дружба з "бонусами"
фуррі
фурсьюти
фута
генг-бенг
гей-радар
ГЕЙ-міри
геї
гендерна ідентичність
гендерна нейтральність
гендерні ролі
порушення гендерних ролей
гігантомастія
гоккун
приємний біль
груповий секс
мастурбація рукою
межа терпіння болю
гарем
хентай
гетеросексуальність
гомофобія
Гомосексуальність
великі сиськи
гіпервагітність
відшльопування
імпотенція
інбридинг
інцели
інцест
виклик лактації
зрада
статевий акт
міжкультурний секс
міжкультурний секс
інтерсекціональність
міжвидовий шлюб
міжвидові стосунки
неприйняття своєї гомосексуальності
ігри з ножем
лактація
фемінні лесбіянки
змазка
макрофілія
заняття коханням
менсплейнінг
мазохізм
мастурбація
механофілія
мікрофілія
місгендерінг
моногамність
взаємна мастурбація
накадаші
некрофілія
ігри з голкою
нетораре
неторі
милі хлопці
дев'ятидолорова купюра
секс без пенетрації
катування носа
нудизм
нагота
німфоманія
німфоманки
об'єктивізація
вільний шлюб
оральний секс
оргазми
оргії
відкладання яєць
член у штанині
любителі болю
пайзурі
пансексуальність
парафілія
перехід
патріархат
пеггінг
пеніси
пасивна лесбійка
поліаморність
поні-бої
поні-герл
порно-логіка
неприкриті плечі
порно
потенція
вагітність
привілеї
підбір ліфчика
повії
проституція
культура стриманості
катування вагіни
квір-теорія
радикальний феменізм
зґвалтування
культура зґвалтувань
фантазії про зґвалтування
секс для розваги
біль у дупі
риммінг
зв'язування мотузкою
садизм
садомазохізм
безпечний секс
стоп-слово
спокушання
гра з почуттями
підпорядкування зі службою
секс
сексуальна привабливість
сексуальна освіта
позиції в сексі
секс-іграшки
торгівля сексом
секс-боти
кайфовий секс
сексизм
сексуальне насильство
збудження
сексуальний злочин
сексуальні вподобання
сексуальні дисфункції
сексуальні фантазії
мораль у сексі
мексуальна орієнтація
секс-рабство
сексуальна стимуляція
орієнтація
шибарі
цицька-вид-з-боку
секс уві сні
спить
содомія
м'які обмеження
відшльопування
ЗПСШ
стриптиз
підпорядкування
сабспейс
купальники
свінінг
світчинг
табу
технофілія
тератофілія
яєчка
підглядання
трійнички
катування грудей
вести в сексі знизу
токсична маскулінність
транс-ексклюзивний феменізм
фантазії про трансформацію
transmisogyny
трансмізогінія
транссексуальність
трансвестити
фетиші
твінки
вим'я
фетиш на поглинання вагіною
звинувачення жертви
цнота
віртуальний секс
фетиш на поїдання
вуайєризм
ігри з воском
вологі сни
ксенофілія
яой
йіфф
юри
зоофілія


code:
<?xml version="1.0" encoding="UTF-8"?>
<Patch>

	<Operation Class="PatchOperationFindMod">
		<mods>

Royalty

		</mods>
		<match Class="PatchOperationAdd">
			<xpath>/Defs/HediffDef[defName="LoveEnhancer"]</xpath>
			<value>
				<stages>

						<statOffsets>
							<SexSatisfaction>0.15</SexSatisfaction>
						</statOffsets>

				</stages>
			</value>
		</match>
	</Operation>
</Patch>


code:
<Patch>
	<Operation Class="PatchOperationSequence">
		<operations>

				<mods>

Royalty

				</mods>
				<match Class="PatchOperationFindMod">
					<mods>

Anime Tree

					</mods>
					<match Class="PatchOperationAdd">
						<xpath>/Defs/ThingDef[defName="Plant_TreeAnima"]/comps/li[@Class="CompProperties_MeditationFocus"]/focusTypes</xpath>
						<value>

Sex

						</value>
					</match>
				</match>

		</operations>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>

	<Operation Class="PatchOperationSequence">
		<success>Always</success>
		<operations>

				<xpath>Defs/DutyDef[defName="BI_DefendAndExpandHive"]</xpath>

				<xpath>Defs/DutyDef[defName="BI_DefendAndExpandHive"]/thinkNode/subNodes/li[@Class="ThinkNode_ChancePerHour_Constant"]</xpath>
				<value>

				</value>

		</operations>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef[defName != "Human"]/corePart[def != "MechanicalThorax" and def != "MechanicalThoraxCanManipulate" and def != "MechanicalCentipedeBodyFirstRing" and def != "MechanicalTermiteBodyFirstRing" and def != "MechanicalDiabolusBodyFirstRing" and def != "MechanicalWarqueenBodyFirstRing"]/parts</xpath>
		<value>

				<def>Genitals</def>
				<coverage>0.005</coverage>
				<height>Bottom</height>
				<depth>Outside</depth>
				<groups>

Torso

GenitalsBPG

				</groups>

		</value>
	</Operation>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef[defName != "Human"]/corePart[def != "MechanicalThorax" and def != "MechanicalThoraxCanManipulate" and def != "MechanicalCentipedeBodyFirstRing" and def != "MechanicalTermiteBodyFirstRing" and def != "MechanicalDiabolusBodyFirstRing" and def != "MechanicalWarqueenBodyFirstRing"]/parts</xpath>
		<value>

				<def>Chest</def>
				<coverage>0.02</coverage>
				<height>Top</height>
				<depth>Outside</depth>
				<groups>

Torso

ChestBPG

				</groups>

		</value>
	</Operation>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef[defName != "Human"]/corePart[def != "MechanicalThorax" and def != "MechanicalThoraxCanManipulate" and def != "MechanicalCentipedeBodyFirstRing" and def != "MechanicalTermiteBodyFirstRing" and def != "MechanicalDiabolusBodyFirstRing" and def != "MechanicalWarqueenBodyFirstRing"]/parts</xpath>
		<value>

				<def>Flank</def>
				<coverage>0.02</coverage>
				<height>Bottom</height>
				<depth>Outside</depth>
				<groups>

Torso

FlankBPG

				</groups>

		</value>
	</Operation>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef[defName != "Human"]/corePart[def != "MechanicalThorax" and def != "MechanicalThoraxCanManipulate" and def != "MechanicalCentipedeBodyFirstRing" and def != "MechanicalTermiteBodyFirstRing" and def != "MechanicalDiabolusBodyFirstRing" and def != "MechanicalWarqueenBodyFirstRing"]/parts</xpath>
		<value>

				<def>Anus</def>
				<coverage>0.001</coverage>
				<height>Bottom</height>
				<depth>Inside</depth>
				<groups>

Torso

AnusBPG

				</groups>

		</value>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef[defName = "Human"]/corePart/parts</xpath>
		<value>

				<def>Genitals</def>
				<coverage>0.005</coverage>
				<height>Bottom</height>
				<depth>Outside</depth>
				<groups>

Torso

GenitalsBPG

				</groups>

				<def>Chest</def>
				<coverage>0.02</coverage>
				<height>Top</height>
				<depth>Outside</depth>
				<groups>

Torso

ChestBPG

				</groups>

				<def>Anus</def>
				<coverage>0.001</coverage>
				<height>Bottom</height>
				<depth>Inside</depth>
				<groups>

Torso

AnusBPG

				</groups>

		</value>
	</Operation>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef[defName = "Human"]/corePart/parts</xpath>
		<value>

				<def>Flank</def>
				<coverage>0.02</coverage>
				<height>Bottom</height>
				<depth>Outside</depth>
				<groups>

Torso

FlankBPG

				</groups>

		</value>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>

<Patch>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef/corePart[def = "MechanicalThorax"]/parts</xpath>
		<value>

				<def>MechGenitals</def>
				<coverage>0.001</coverage>
				<depth>Inside</depth>

		</value>
	</Operation>
	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef/corePart[def = "MechanicalThoraxCanManipulate"]/parts</xpath>
		<value>

				<def>MechGenitals</def>
				<coverage>0.001</coverage>
				<depth>Inside</depth>

		</value>
	</Operation>
	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef/corePart[def = "MechanicalCentipedeBodyFirstRing"]/parts/li[def = "MechanicalCentipedeBodySecondRing"]/parts</xpath>
		<value>

				<def>MechGenitals</def>
				<coverage>0.001</coverage>
				<depth>Inside</depth>

		</value>
	</Operation>
	<Operation Class="PatchOperationAdd">
		<xpath>Defs/BodyDef/corePart[def = "MechanicalTermiteBodyFirstRing"]/parts/li[def = "MechanicalTermiteBodySecondRing"]/parts</xpath>
		<value>

				<def>MechGenitals</def>
				<coverage>0.001</coverage>
				<depth>Inside</depth>

		</value>
	</Operation>

	<Operation Class="PatchOperationFindMod">
		<mods>

Biotech

		</mods>
		<match Class="PatchOperationAdd">
			<xpath>Defs/BodyDef/corePart[def = "MechanicalDiabolusBodyFirstRing"]/parts</xpath>
			<value>

					<def>MechGenitals</def>
					<coverage>0.001</coverage>
					<depth>Inside</depth>

			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationFindMod">
		<mods>

Biotech

		</mods>
		<match Class="PatchOperationAdd">
			<xpath>Defs/BodyDef/corePart[def = "MechanicalWarqueenBodyFirstRing"]/parts/li[def = "MechanicalWarqueenBodySecondRing"]/parts</xpath>
			<value>

					<def>MechGenitals</def>
					<coverage>0.001</coverage>
					<depth>Inside</depth>

			</value>
		</match>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>

</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>
	<!--Rape prisoners in NonPlayerHome-->
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "DefendBase"]/thinkNode/subNodes/li[@Class="ThinkNode_ForbidOutsideFlagRadius"]/subNodes/li[@Class="ThinkNode_Subtree"]</xpath>
		<value>
			<li Class="rjw.JobGiver_AIRapePrisoner" />
		</value>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "AssaultColony"]/thinkNode/subNodes/li[@Class="JobGiver_AIFightEnemies"]</xpath>
		<value>

		</value>
	</Operation>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "AssaultColony"]/thinkNode/subNodes/li[@Class="JobGiver_AITrashColonyClose"]</xpath>
		<value>

		</value>
	</Operation>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "Sapper"]/thinkNode/subNodes/li[@Class="JobGiver_AIFightEnemies"]</xpath>
		<value>

		</value>
	</Operation>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "Defend"]/thinkNode/subNodes/li[@Class="ThinkNode_ForbidOutsideFlagRadius"]</xpath>
		<value>

		</value>
	</Operation>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "DefendBase"]/thinkNode/subNodes/li[@Class="JobGiver_AIDefendPoint"]</xpath>
		<value>

		</value>
	</Operation>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "HuntEnemiesIndividual"]/thinkNode/subNodes/li[@Class="JobGiver_AIFightEnemies"]</xpath>
		<value>

		</value>
	</Operation>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "DefendAndExpandHive"]/thinkNode/subNodes/li[@Class="ThinkNode_Tagger"]</xpath>
		<value>

		</value>
	</Operation>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/DutyDef[defName = "DefendHiveAggressively"]/thinkNode/subNodes/li[@Class="JobGiver_HiveDefense"]</xpath>
		<value>

		</value>
	</Operation>
	<Operation Class="PatchOperationInsert">
		<xpath>Defs/ThinkTreeDef[defName="MentalStateNonCritical"]/thinkRoot[@Class="ThinkNode_Tagger"]/subNodes/li[stateClass="MentalState_Manhunter"]/subNodes/li[@Class="ThinkNode_Priority"]/subNodes/li[@Class="JobGiver_Manhunter"]</xpath>
		<value>

		</value>
	</Operation>

</Patch>


code:
<?xml version="1.0" encoding="utf-8"?>
<Patch>
  <Operation Class="PatchOperationFindMod">
    <mods>

[NL] Facial Animation - WIP

    </mods>
    <match Class="PatchOperationSequence">
      <success>Always</success>
      <operations>

          <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin" or defName="Lovin2"]/targetJobs</xpath>
          <success>Always</success>
          <value>

RJW_Masturbate

GettinBred

Bestiality

BestialityForFemale

ViolateCorpse

Quickie

GettingQuickie

GettinRaped

JoinInBed

GettinLoved

GettinLicked

GettinSucked

          </value>

          <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="WaitCombat" or defName="Wait_Combat_Rare"]/targetJobs</xpath>
          <success>Always</success>
          <value>

RapeComfortPawn

RandomRape

RapeEnemy

          </value>

          <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Wear" or defName="Wear2" or defName="Wear3"]/targetJobs</xpath>
          <success>Always</success>
          <value>

StruggleInBondageGear

          </value>

          <mods>

Rimworld-Animations

          </mods>
          <match Class="PatchOperationSequence">
            <success>Always</success>
            <operations>

                <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin" or defName="Lovin2"]/animationFrames/li[1]/headOffset</xpath>
                <success>Always</success>

                <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin"]/animationFrames/li[2]/headOffset</xpath>
                <success>Always</success>

                <xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin"]/animationFrames/li[3]/headOffset</xpath>
                <success>Always</success>

				<xpath>/Defs/FacialAnimation.FaceAnimationDef[defName="Lovin" or defName="Lovin2"]/targetJobs</xpath>
				<success>Always</success>
				<value>

JoinInBedAnimation

GettinLovedAnimation

				</value>

            </operations>
          </match>

      </operations>
    </match>
  </Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/ThinkTreeDef[defName="MentalStateCritical"]/thinkRoot[@Class="ThinkNode_Tagger"]/subNodes</xpath>
		<value>

				<state>RandomRape</state>
				<subNodes>

						<need>Rest</need>
						<threshold>0.05</threshold>
						<invert>true</invert>
						<subNodes>

						</subNodes>

						<minPriority>0.5</minPriority>
						<subNodes>

								<subNodes>

								</subNodes>

						</subNodes>

				</subNodes>

		</value>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>
	<Operation Class="PatchOperationSequence">
		<success>Always</success>
		<operations>

				<xpath>Defs/TraitDef[defName="Prude"]</xpath>

				<xpath>Defs/TraitDef[defName="Nymphomaniac"]/conflictingTraits</xpath>
				<value>

Prude

				</value>

				<xpath>Defs/TraitDef[defName="Prude"]/conflictingTraits</xpath>
				<value>

Nymphomaniac

				</value>

				<xpath>Defs/TraitDef[defName="Prude"]/degreeDatas/li</xpath>
				<value>
					<statOffsets>
						<SexFrequency>-0.3</SexFrequency>
					</statOffsets>
				</value>

		</operations>
	</Operation>

	<Operation Class="PatchOperationSequence">
		<success>Always</success>
		<operations>

				<xpath>Defs/TraitDef[defName="Faithful"]</xpath>

				<xpath>Defs/TraitDef[defName="Nymphomaniac"]/conflictingTraits</xpath>
				<value>

Faithful

				</value>

				<xpath>Defs/TraitDef[defName="Faithful"]/conflictingTraits</xpath>
				<value>

Nymphomaniac

				</value>

		</operations>
	</Operation>

	<Operation Class="PatchOperationConditional">
		<xpath>Defs/TraitDef[defName="Nimble"]/degreeDatas/li/statOffsets</xpath>
		<nomatch Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Nimble"]/degreeDatas/li</xpath>
			<value>
				<statOffsets>
					<Vulnerability>-0.1</Vulnerability>
				</statOffsets>
			</value>
		</nomatch>
		<match Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Nimble"]/degreeDatas/li/statOffsets</xpath>
			<value>
				<Vulnerability>-0.1</Vulnerability>
			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationConditional">
		<xpath>Defs/TraitDef[defName="Bloodlust"]/degreeDatas/li/statOffsets</xpath>
		<nomatch Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Bloodlust"]/degreeDatas/li</xpath>
			<value>
				<statOffsets>
					<Vulnerability>-0.1</Vulnerability>
				</statOffsets>
			</value>
		</nomatch>
		<match Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Bloodlust"]/degreeDatas/li/statOffsets</xpath>
			<value>
				<Vulnerability>-0.1</Vulnerability>
			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationConditional">
		<xpath>Defs/TraitDef[defName="Tough"]/degreeDatas/li/statOffsets</xpath>
		<nomatch Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Tough"]/degreeDatas/li</xpath>
			<value>
				<statOffsets>
					<Vulnerability>-0.4</Vulnerability>
				</statOffsets>
			</value>
		</nomatch>
		<match Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Tough"]/degreeDatas/li/statOffsets</xpath>
			<value>
				<Vulnerability>-0.4</Vulnerability>
			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationConditional">
		<xpath>Defs/TraitDef[defName="TooSmart"]/degreeDatas/li/statOffsets</xpath>
		<nomatch Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="TooSmart"]/degreeDatas/li</xpath>
			<value>
				<statOffsets>
					<Vulnerability>-0.3</Vulnerability>
				</statOffsets>
			</value>
		</nomatch>
		<match Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="TooSmart"]/degreeDatas/li/statOffsets</xpath>
			<value>
				<Vulnerability>-0.3</Vulnerability>
			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationConditional">
		<xpath>Defs/TraitDef[defName="Wimp"]/degreeDatas/li/statOffsets</xpath>
		<nomatch Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Wimp"]/degreeDatas/li</xpath>
			<value>
				<statOffsets>
					<Vulnerability>0.2</Vulnerability>
				</statOffsets>
			</value>
		</nomatch>
		<match Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Wimp"]/degreeDatas/li/statOffsets</xpath>
			<value>
				<Vulnerability>0.2</Vulnerability>
			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationConditional">
		<xpath>Defs/TraitDef[defName="Masochist"]/degreeDatas/li/statOffsets</xpath>
		<nomatch Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Masochist"]/degreeDatas/li</xpath>
			<value>
				<statOffsets>
					<Vulnerability>0.3</Vulnerability>
				</statOffsets>
			</value>
		</nomatch>
		<match Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Masochist"]/degreeDatas/li/statOffsets</xpath>
			<value>
				<Vulnerability>0.3</Vulnerability>
			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationConditional">
		<xpath>Defs/TraitDef[defName="Ascetic"]/degreeDatas/li/statOffsets</xpath>
		<nomatch Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Ascetic"]/degreeDatas/li</xpath>
			<value>
				<statOffsets>
					<SexFrequency>-0.3</SexFrequency>
				</statOffsets>
			</value>
		</nomatch>
		<match Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="Ascetic"]/degreeDatas/li/statOffsets</xpath>
			<value>
				<SexFrequency>-0.3</SexFrequency>
			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationConditional">
		<xpath>Defs/TraitDef[defName="BodyPurist"]/degreeDatas/li/statOffsets</xpath>
		<nomatch Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="BodyPurist"]/degreeDatas/li</xpath>
			<value>
				<statOffsets>
					<SexFrequency>-0.1</SexFrequency>
				</statOffsets>
			</value>
		</nomatch>
		<match Class="PatchOperationAdd">
			<xpath>Defs/TraitDef[defName="BodyPurist"]/degreeDatas/li/statOffsets</xpath>
			<value>
				<SexFrequency>-0.1</SexFrequency>
			</value>
		</match>
	</Operation>

	<Operation Class="PatchOperationSequence">
		<success>Always</success>
		<operations>

				<xpath>Defs/TraitDef[defName="Asexual"]</xpath>

				<xpath>Defs/TraitDef[defName="Necrophiliac"]/conflictingTraits</xpath>
				<value>

Asexual

				</value>

				<xpath>Defs/TraitDef[defName="Nymphomaniac"]/conflictingTraits</xpath>
				<value>

Asexual

				</value>

				<xpath>Defs/TraitDef[defName="Rapist"]/conflictingTraits</xpath>
				<value>

Asexual

				</value>

				<xpath>Defs/TraitDef[defName="Zoophile"]/conflictingTraits</xpath>
				<value>

Asexual

				</value>

				<xpath>Defs/TraitDef[defName="Asexual"]/conflictingTraits</xpath>
				<value>

Necrophiliac

Nymphomaniac

Rapist

Zoophile

				</value>

		</operations>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>

	<Operation Class="PatchOperationAdd">
		<xpath>Defs/ThingDef[@Name="AnimalThingBase"]/recipes</xpath>
		<value>

DeterminePregnancy

RJW_AbortionHuman

RJW_AbortionBeast

RJW_AbortionMech

RJW_HackMech

RJW_RemoveRestraints

RJW_RemoveCocoon

RemoveUdder

		</value>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>
  <Operation Class="PatchOperationAdd">
    <xpath>Defs/RulePackDef[defName = "GlobalUtility"]/include</xpath>
    <value>

TalkTopicsSex

    </value>
  </Operation>

  <Operation Class="PatchOperationAdd">
    <xpath>Defs/InteractionDef[defName = "DeepTalk"]/logRulesInitiator/rulesStrings</xpath>
    <value>

subject(p=0.24)->[TalkTopicSex]

    </value>
  </Operation>

  <Operation Class="PatchOperationAdd">
    <xpath>Defs/InteractionDef[defName = "Chitchat"]/logRulesInitiator/rulesStrings</xpath>
    <value>

r_logentry(p=0.12)->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [TalkTopicSex].

r_logentry(p=0.12)->[INITIATOR_nameDef] [talkedabout] [TalkTopicSex] with [RECIPIENT_nameDef].

r_logentry(p=0.24)->[INITIATOR_nameDef] [commentedabout] [TalkTopicSex] to [RECIPIENT_nameDef].

    </value>
  </Operation>
</Patch>


code:
<Patch>
	<Operation Class="PatchOperationSequence">
		<success>Always</success>
		<operations>

				<xpath>Defs/ThoughtDef[defName="HarmedMe"]/nullifyingTraits</xpath>
				<value>

Masochist

				</value>

		</operations>
	</Operation>
</Patch>


code:
<Patch>
	<Operation Class="PatchOperationSequence">
		<success>Always</success>
		<operations>

				<xpath>Defs/ThoughtDef[defName="ObservedLayingCorpse"]/nullifyingTraits</xpath>
				<value>

Necrophiliac

				</value>

				<xpath>Defs/ThoughtDef[defName="ObservedLayingRottingCorpse"]/nullifyingTraits</xpath>
				<value>

Necrophiliac

				</value>

		</operations>
	</Operation>
</Patch>


code:
<?xml version="1.0" encoding="utf-8" ?>
<Patch>

	<Operation Class="PatchOperationFindMod">
		<mods>

Vanilla Psycasts Expanded

		</mods>
		<match Class="PatchOperationAddModExtension">
			<xpath>/Defs/MeditationFocusDef[defName="Sex"]</xpath>
			<value>

					<icon>UI/PsyfocusIcons/PsyfocusSex</icon>

			</value>
		</match>
	</Operation>
</Patch>


code:
root=true

[*.{cs,xml}]
indent_style = tab


code:
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("RimJobWorld")]
[assembly: AssemblyDescription("Adult mod for Rimworld")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Community Project")]
[assembly: AssemblyProduct("RimJobWorld")]
[assembly: AssemblyCopyright("Copyright © 2018")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]

// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("c2825019-7f0b-456d-85a3-479c1a2a8805")]

// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version
//      Build Number
//      Revision
//
[assembly: AssemblyVersion("1.0.0.0")]


code:
/*
Core versions of scripts addapted for Greater Good
*/

using System;
using System.Collections.Generic;
using System.Linq;
using RimWorld;
using RimWorld.Planet;
using Verse;
using rjw;

namespace rjw_CORE_EXPOSED
{
	// used in Vulnerability StatDef calculation
	public class SkillNeed_BaseBonus : SkillNeed
	{
		private float baseValue = 0.5f;

		private float bonusPerLevel = 0.05f;

		public override float ValueFor(Pawn pawn)
		{
			if (pawn.skills == null)
			{
				return 1f;
			}
			int level = pawn.skills.GetSkill(this.skill).Level;
			// remove melee bonus for pawns: downed, sleeping/resting/lying, wearing armbinder
			if (pawn.Downed || pawn.GetPosture() != PawnPosture.Standing ||
				(xxx.RjwExIsActive && pawn.health.hediffSet.HasHediff(xxx.RjwEx_Armbinder)))  // Simple verification on RJW side, but ideally this method should just be patched in RJW-EX to return valueAtLevel(0) if Armbinder active
				level = 0;
			return this.ValueAtLevel(level);
		}

		private float ValueAtLevel(int level)
		{
			return this.baseValue + this.bonusPerLevel * (float)level;
		}

		public override IEnumerable<string> ConfigErrors()
		{
			foreach (string error in base.ConfigErrors())
			{
				yield return error;
			}
			for (int i = 1; i <= 20; i++)
			{
				float factor = this.ValueAtLevel(i);
				if (factor <= 0f)
				{
					yield return "SkillNeed yields factor < 0 at skill level " + i;
				}
			}
		}
	}

	public static class LovePartnerRelationUtility
	{
		public static float LovinMtbSinglePawnFactor(Pawn pawn)
		{
			float num = 1f;
			num /= 1f - pawn.health.hediffSet.PainTotal;
			float efficiency = pawn.health.capacities.GetLevel(PawnCapacityDefOf.Consciousness);
			if (efficiency < 0.5f)
			{
				num /= efficiency * 2f;
			}

			if (!pawn.RaceProps.Humanlike)
			{
				return num * 4f;
			}
			if (RimWorld.LovePartnerRelationUtility.ExistingLovePartner(pawn) != null)
			{
				num *= 2f; //This is a factor which makes pawns with love partners less likely to do fappin/random raping/rapingCP/bestiality/necro.
			}
			else if (pawn.gender == Gender.Male)
			{
				num /= 1.25f; //This accounts for single men
			}
			return num / GenMath.FlatHill(0.0001f, 8f, 13f, 28f, 50f, 0.15f, pawn.ageTracker.AgeBiologicalYearsFloat);//this needs to be changed
		}
	}

	public static class MedicalRecipesUtility
	{
		public static bool IsCleanAndDroppable(Pawn pawn, BodyPartRecord part)
		{
			return IsClean(pawn, part) && part.def.spawnThingOnRemoved != null;
		}
		//TODO: add check if hediff are bad?
		public static bool IsClean(Pawn pawn, BodyPartRecord part)
		{
			//in vanilla Hediff = always bad?
			return !pawn.Dead && !(from x in pawn.health.hediffSet.hediffs
									where (x.Part == part)
									select x).Any<Hediff>();
		}

		public static bool IsViolationOnPawn(Pawn pawn, BodyPartRecord part, Faction billDoerFaction)
		{
			return pawn.Faction != billDoerFaction || HealthUtility.PartRemovalIntent(pawn, part) == BodyPartRemovalIntent.Harvest;
		}

		public static void RestorePartAndSpawnAllPreviousParts(Pawn pawn, BodyPartRecord part, IntVec3 pos, Map map)
		{
			SpawnNaturalPartIfClean(pawn, part, pos, map);
			SpawnThingsFromHediffs(pawn, part, pos, map);
			pawn.health.RestorePart(part, null, true);
		}

		// always false since rjw uses hediffs for genitals, thus its always dirty
		public static Thing SpawnNaturalPartIfClean(Pawn pawn, BodyPartRecord part, IntVec3 pos, Map map)
		{
			if (MedicalRecipesUtility.IsCleanAndDroppable(pawn, part))
			{
				//normal/rimworld parts
				return GenSpawn.Spawn(part.def.spawnThingOnRemoved, pos, map);
			}
			return null;
		}

		/// <summary>
		/// spawn rjw parts after operation
		/// </summary>
		/// <param name="pawn"></param>
		/// <param name="part"></param>
		/// <param name="pos"></param>
		/// <param name="map"></param>
		public static void SpawnThingsFromHediffs(Pawn pawn, BodyPartRecord part, IntVec3 pos, Map map)
		{
			if (!pawn.health.hediffSet.GetNotMissingParts(BodyPartHeight.Undefined, BodyPartDepth.Undefined).Contains(part))
			{
				return;
			}
			if (pawn.Dead)
			{
				return;
			}
			IEnumerable<Hediff> enumerable = from x in pawn.health.hediffSet.hediffs
											 where x.Part == part
											 select x;
			//RJW parts and other implants?
			foreach (Hediff current in enumerable)
			{
				if (current.def.spawnThingOnRemoved != null)
				{
					//Thing thing = GenSpawn.Spawn(current.def.spawnThingOnRemoved, pos, map);

					//spawn thing
					GenSpawn.Spawn(SexPartAdder.recipePartRemover(current), pos, map);
				}
			}
			//spawn sub parts? not sure why would it call itself but w/e
			for (int i = 0; i < part.parts.Count; i++)
			{
				MedicalRecipesUtility.SpawnThingsFromHediffs(pawn, part.parts[i], pos, map);
			}
		}
	}

	public class Recipe_RemoveBodyPart : Recipe_Surgery
	{
		public virtual bool blocked(Pawn p)
		{
			return false;
		}
		public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
		{
			if (!blocked(pawn))
			{
				IEnumerable<BodyPartRecord> parts = pawn.health.hediffSet.GetNotMissingParts(BodyPartHeight.Undefined, BodyPartDepth.Undefined);
				foreach (BodyPartRecord part in parts)
				{
					if (pawn.health.hediffSet.HasDirectlyAddedPartFor(part))
					{
						yield return part;
					}
					if (MedicalRecipesUtility.IsCleanAndDroppable(pawn, part))
					{
						yield return part;
					}
					if (part != pawn.RaceProps.body.corePart && part.def.canSuggestAmputation && pawn.health.hediffSet.hediffs.Any((Hediff d) => !(d is Hediff_Injury) && d.def.isBad && d.Visible && d.Part == part))
					{
						yield return part;
					}
				}
			}
		}

		private const int ViolationGoodwillImpact = -15;

		public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients, Bill bill)
		{
			bool flag = MedicalRecipesUtility.IsClean(pawn, part);
			bool flag2 = MedicalRecipesUtility.IsViolationOnPawn(pawn, part, Faction.OfPlayer);
			if (billDoer != null)
			{
				if (base.CheckSurgeryFail(billDoer, pawn, ingredients, part, bill))
				{
					return;
				}
				TaleRecorder.RecordTale(TaleDefOf.DidSurgery, new object[]
				{
					billDoer,
					pawn
				});
				MedicalRecipesUtility.SpawnNaturalPartIfClean(pawn, part, billDoer.Position, billDoer.Map);
				MedicalRecipesUtility.SpawnThingsFromHediffs(pawn, part, billDoer.Position, billDoer.Map);
			}
			DamageDef surgicalCut = DamageDefOf.SurgicalCut;
			float amount = 99999f;
			float armorPenetration = 999f;
			pawn.TakeDamage(new DamageInfo(surgicalCut, amount, armorPenetration, -1f, null, part, null, DamageInfo.SourceCategory.ThingOrUnknown, null));
			if (flag)
			{
				if (pawn.Dead)
				{
					ThoughtUtility.GiveThoughtsForPawnExecuted(pawn, billDoer, PawnExecutionKind.OrganHarvesting);
				}
				ThoughtUtility.GiveThoughtsForPawnOrganHarvested(pawn, billDoer);
			}
			if (flag2 && pawn.Faction != null && billDoer != null && billDoer.Faction != null)
			{
				Faction faction = pawn.Faction;
				Faction faction2 = billDoer.Faction;
				HistoryEventDef reason = DefDatabase<HistoryEventDef>.GetNamedSilentFail("GoodwillChangedReason_RemovedBodyPart");
				//string reason = "GoodwillChangedReason_RemovedBodyPart".Translate(part.LabelShort);
				GlobalTargetInfo? lookTarget = pawn;
				faction.TryAffectGoodwillWith(faction2, ViolationGoodwillImpact, true, true, reason, lookTarget);
			}
		}

		public override string GetLabelWhenUsedOn(Pawn pawn, BodyPartRecord part)
		{
			if (pawn.RaceProps.IsMechanoid || pawn.health.hediffSet.PartOrAnyAncestorHasDirectlyAddedParts(part))
			{
				return RecipeDefOf.RemoveBodyPart.LabelCap;
			}
			BodyPartRemovalIntent bodyPartRemovalIntent = HealthUtility.PartRemovalIntent(pawn, part);
			if (bodyPartRemovalIntent == BodyPartRemovalIntent.Harvest)
			{
				return "Harvest".Translate();
			}
			if (bodyPartRemovalIntent != BodyPartRemovalIntent.Amputate)
			{
				throw new InvalidOperationException();
			}
			if (part.depth == BodyPartDepth.Inside)
			{
				return "RemoveOrgan".Translate();
			}
			return "Amputate".Translate();
		}
	}

	public class Recipe_InstallOrReplaceBodyPart : Recipe_Surgery
	{
		public virtual bool blocked(Pawn p)
		{
			return false;
		}

		public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
		{
			if (!blocked(pawn))
			{
				//ModLog.Message("Recipe_InstallOrReplaceBodyPart Recipe: " + recipe.defName);

				// For all parts listed in the recipe
				for (int i = 0; i < recipe.appliedOnFixedBodyParts.Count; i++)
				{
					// Grab the recipe part
					BodyPartDef part = recipe.appliedOnFixedBodyParts[i];

					// For all parts on the pawn
					List<BodyPartRecord> bpList = pawn.RaceProps.body.AllParts;
					for (int j = 0; j < bpList.Count; j++)
					{
						// Grab the pawn part
						BodyPartRecord record = bpList[j];

						// If the recipe part and pawn part match
						if (record.def == part)
						{
							// Grab all pawn hediffs for natural and artificial parts that are on the current pawn body part
							IEnumerable<Hediff> diffs = from x in pawn.health.hediffSet.hediffs
														where x.Part == record && (x is Hediff_PartBaseNatural || x is Hediff_PartBaseArtifical)
														select x;

							//ModLog.Message("Recipe_InstallOrReplaceBodyPart GetPartsToApplyOn: Pawn=" + pawn.Name + " Part=" + record.Label + ", diffs.Count=" + diffs.Count<Hediff>() + ", First Diff=" + diffs.First<Hediff>().def.defName + " recipe.addsHediff=" + recipe.addsHediff.defName);

							// If the pawn doesn't have exactly 1 diff for that part OR the first diff found is not the one being added by the recipe
							//if (diffs.Count<Hediff>() != 1 || diffs.First<Hediff>().def != recipe.addsHediff)
							{
								//ModLog.Message("Diff Matched.  Recipe parent=" + record.parent?.Label);

								// If this is the base body OR the pawn has the parent body part of the recipe part
								if (record.parent == null || pawn.health.hediffSet.GetNotMissingParts(BodyPartHeight.Undefined, BodyPartDepth.Undefined, null, null).Contains(record.parent))
								{
									//ModLog.Message("Parent Found.  PartOrAnyAncestorHasDirectlyAddedParts=" + pawn.health.hediffSet.PartOrAnyAncestorHasDirectlyAddedParts(record) + ", HasDirectlyAddedPartFor=" + pawn.health.hediffSet.HasDirectlyAddedPartFor(record));

									if (!pawn.health.hediffSet.PartOrAnyAncestorHasDirectlyAddedParts(record) || pawn.health.hediffSet.HasDirectlyAddedPartFor(record))
									{
										//ModLog.Message("Recipe: " + recipe.defName + "Applies to: " + record.Label + " of " + pawn.Name);
										yield return record;
									}
								}
							}
						}
					}
				}
			}
		}

		public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients, Bill bill)
		{
			if (billDoer != null)
			{
				if (base.CheckSurgeryFail(billDoer, pawn, ingredients, part, bill))
				{
					DamageDef surgicalCut = DamageDefOf.SurgicalCut;
					float amount = 99999f;
					float armorPenetration = 999f;
					pawn.TakeDamage(new DamageInfo(surgicalCut, amount, armorPenetration, -1f, null, part, null, DamageInfo.SourceCategory.ThingOrUnknown, null));
					return;
				}
				TaleRecorder.RecordTale(TaleDefOf.DidSurgery, new object[]
				{
					billDoer,
					pawn
				});
				MedicalRecipesUtility.RestorePartAndSpawnAllPreviousParts(pawn, part, billDoer.Position, billDoer.Map);
			}
			//pawn.health.AddHediff(recipe.addsHediff, part, null, null);

			pawn.health.AddHediff(SexPartAdder.recipePartAdder(recipe, pawn, part, ingredients), part, null, null);
		}
	}

	public class Recipe_AddBodyPart : Recipe_Surgery
	{
		public virtual bool blocked(Pawn p)
		{
			return false;
		}
		public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
		{
			if (!blocked(pawn))
			{
				for (int i = 0; i < recipe.appliedOnFixedBodyParts.Count; i++)
				{
					BodyPartDef part = recipe.appliedOnFixedBodyParts[i];
					List<BodyPartRecord> bpList = pawn.RaceProps.body.AllParts;
					for (int j = 0; j < bpList.Count; j++)
					{
						BodyPartRecord record = bpList[j];
						if (record.def == part)
						{
							IEnumerable<Hediff> diffs = from x in pawn.health.hediffSet.hediffs
														where x.Part == record && (x is Hediff_PartBaseNatural || x is Hediff_PartBaseArtifical)
														select x;

							// If the pawn doesn't have exactly 1 diff for that part OR the first diff found is not the one being added by the recipe
							//if (diffs.Count<Hediff>() != 1 || diffs.First<Hediff>().def != recipe.addsHediff)
							{
								if (record.parent == null || pawn.health.hediffSet.GetNotMissingParts(BodyPartHeight.Undefined, BodyPartDepth.Undefined, null, null).Contains(record.parent))
								{
									if (!pawn.health.hediffSet.PartOrAnyAncestorHasDirectlyAddedParts(record) || pawn.health.hediffSet.HasDirectlyAddedPartFor(record))
									{
										yield return record;
									}
								}
							}
						}
					}
				}
			}
		}

		public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients, Bill bill)
		{
			if (billDoer != null)
			{
				if (base.CheckSurgeryFail(billDoer, pawn, ingredients, part, bill))
				{
					DamageDef surgicalCut = DamageDefOf.SurgicalCut;
					float amount = 99999f;
					float armorPenetration = 999f;
					pawn.TakeDamage(new DamageInfo(surgicalCut, amount, armorPenetration, -1f, null, part, null, DamageInfo.SourceCategory.ThingOrUnknown, null));
					return;
				}
				TaleRecorder.RecordTale(TaleDefOf.DidSurgery, new object[]
				{
					billDoer,
					pawn
				});
				//pawn.health.AddHediff(recipe.addsHediff, part, null, null);

				pawn.health.AddHediff(SexPartAdder.recipePartAdder(recipe, pawn, part, ingredients), part, null, null);
			}
		}
	}
	public class Recipe_RemovePart : Recipe_Surgery
	{
		public virtual bool blocked(Pawn p)
		{
			return false;
		}
		public override IEnumerable<BodyPartRecord> GetPartsToApplyOn(Pawn pawn, RecipeDef recipe)
		{
			if (!blocked(pawn))
			{
				for (int i = 0; i < recipe.appliedOnFixedBodyParts.Count; i++)
				{
					BodyPartDef part = recipe.appliedOnFixedBodyParts[i];
					List<BodyPartRecord> bpList = pawn.RaceProps.body.AllParts;
					for (int j = 0; j < bpList.Count; j++)
					{
						BodyPartRecord record = bpList[j];
						if (record.def == part)
						{
							IEnumerable<Hediff> diffs = from x in pawn.health.hediffSet.hediffs
														where x.Part == record && (x is Hediff_PartBaseNatural || x is Hediff_PartBaseArtifical)
														select x;

							// If the pawn doesn't have exactly 1 diff for that part OR the first diff found is not the one being added by the recipe
							//if (diffs.Count<Hediff>() != 1 || diffs.First<Hediff>().def != recipe.addsHediff)
							{
								if (record.parent == null || pawn.health.hediffSet.GetNotMissingParts(BodyPartHeight.Undefined, BodyPartDepth.Undefined, null, null).Contains(record.parent))
								{
									if (!pawn.health.hediffSet.PartOrAnyAncestorHasDirectlyAddedParts(record) || pawn.health.hediffSet.HasDirectlyAddedPartFor(record))
									{
										yield return record;
									}
								}
							}
						}
					}
				}
			}
		}

		public override void ApplyOnPawn(Pawn pawn, BodyPartRecord part, Pawn billDoer, List<Thing> ingredients, Bill bill)
		{
			if (billDoer != null)
			{
				if (base.CheckSurgeryFail(billDoer, pawn, ingredients, part, bill))
				{
					DamageDef surgicalCut = DamageDefOf.SurgicalCut;
					float amount = 99999f;
					float armorPenetration = 999f;
					pawn.TakeDamage(new DamageInfo(surgicalCut, amount, armorPenetration, -1f, null, part, null, DamageInfo.SourceCategory.ThingOrUnknown, null));
					return;
				}
				TaleRecorder.RecordTale(TaleDefOf.DidSurgery, new object[]
				{
					billDoer,
					pawn
				});
				//pawn.health.AddHediff(recipe.addsHediff, part, null, null);

				pawn.health.AddHediff(SexPartAdder.recipePartAdder(recipe, pawn, part, ingredients), part, null, null);
			}
		}
	}
}