From 1f2b360f45dcd266b7746b2a04b2addc7c9536ae Mon Sep 17 00:00:00 2001 From: Aviuz Date: Sat, 26 Oct 2019 19:51:31 +0200 Subject: [PATCH] 0.10.1 (#148) * fixed seeds please compatibility * 0.9.2 * Updated .bat files - updated directories for new computer * iteration * Added dutch - added dutch translation sheet - added dutch translation files * language fix * Added treatment chart * .bat file up * samsung iteration * minor * samsung iteration * minor * minor * Forbidding & Temperatures - prisoners will now work in cold only if "work" time is set - prisoners will now seek safe temperature when not supervised - prisoners will respect forbidden items, if "inspired" * Treatment iteration - fixed food reservation throwing errors - added prisoner sucicides - added +5 bonus to mood while prisoner have free time - added +5 bonus to mood if prisoner is not supervised and got lazy - added +15 bonus to mood if treatment is above 75% - added blocking revolts (100%, 95%, 50%, 10%) if overall prisoner treatment is good enough - increased base chance for Revolts - added blocking mental breaks for prisoners with low treatment levels - added treatment drop when prisoner is being beaten - fixed cutting some content of bill config in some languages - cosmetic changes to bill checkbox - prisoners will now give offer to join colony if treatment is good enough (random) - prisoners will now stay at bed if waiting for surgery - "Treatment happiness" will decrease if health conditions are bad, when prisoners are hungry, or they're working. - fixed blurred effect on settings window * Update TaskList.txt * Auto stash before merge of "dev" and "origin/dev" * Refined .bat files * Deleted old .bat files * Fixed merge * updated defs * Added sub-Tabs - added sub-tabs in "Work" Tab and "Assign" Tab for "Colonists" and "Prisoners" - added class PrisonLaborWidgets with tab view included * minor * Reworked Food Tweaks * Polish translation * removed duplicated patch * minor refactoring * minor fix to food reservation * changelog * SubTabs * bugfix and refactoring * arrest iteration * minor * Reworked Food Tweaks * Polish translation * removed duplicated patch * minor refactoring * minor fix to food reservation * changelog fix * Added renaming prisoners * Added Chineese * Added Russian * SaveUpgrader - added save upgrading system - added upgrade to new food deliver tweak * Added weapon picking * Refactor & DevImprovements * Revolt fix * Refactor * Refactor - moved out escape from Motivation into EscapeTracker - moved out Watched property to InspirationUtility class * Escaping prisoners * Assign Prisoners to bed * Namespace fix * Merge Fix * Reworked Icons Images * xcfs * EscapingPrisoners tweaks - increased priority - added to changelog * Version update * Fix for prisoners joining colony through offer * Rename PawnIcons * Refactor * Def fix (from refactoring) * One more refactor * Wardens no longer deliver food if prisoners can get it from another room * todo update * Refactored process that remove mod from save * Fixed construction job * Added changelog parser * Refactored news printing - added RichListing - added automated printing version news from changelog - alternatively in NewsFeed version news can have custom body * updated to new policy * updated changelog * added simpleVideo * snapshot * changed RichListing simple text to [-] element * renamed NewsDialog to NewsWindow * Added pop-up tutorials with xml provider and settings buttons - added pop-up windows for pop-up tutorial view and list view for all pop-up tutorials - added XML for pop-up tutorials - added TutorialProvider to read XML - added button and language keys in settings * Added lazy icon * New news system (#147) * Added Introduction Tutorial * Resized tutorial window * Labor area * Added treatment tutorial * Changed introduction tutorial * Upgraded version to 0.10.1 * Fixed news window * Added changelog news for 0.10.1 * Added new dll --- About/About.xml | 3 +- Assemblies/PrisonLabor.dll | Bin 173568 -> 230912 bytes Defs/ConceptDef.xml | 7 + Defs/Hediffs.xml | 2 +- Defs/Incidents.xml | 33 +- Defs/JobDef.xml | 17 +- Defs/Needs.xml | 12 +- Defs/ThinkTreeDef.xml | 14 +- Defs/ThoughtsDef.xml | 37 ++ Defs/WorkGiverDef.xml | 2 +- Images/Discord.png | Bin 0 -> 57469 bytes Images/Discord.xcf | Bin 0 -> 159850 bytes Images/FreezingIcon.xcf | Bin 0 -> 42768 bytes Images/InspireIcon.xcf | Bin 66446 -> 26219 bytes Images/LazyIcon.xcf | Bin 0 -> 13209 bytes Images/deleteLabor.png | Bin 6665 -> 0 bytes Images/extendLabor.png | Bin 7868 -> 0 bytes Languages/ChineseSimplified/Keyed/Keys.xml | 2 + Languages/ChineseTraditional/Keyed/Keys.xml | 4 +- Languages/Dutch/Keyed/Keys.xml | 2 + Languages/English/Keyed/Keys.xml | 37 +- Languages/French/Keyed/Keys.xml | 2 + Languages/Polish/Keyed/Keys.xml | 4 +- Languages/Russian/Keyed/Keys.xml | 1 + Languages/Spanish/Keyed/Keys.xml | 2 + Languages/Swedish/Keyed/Keys.xml | 2 + README.md | 2 +- Source/Behaviour_MotivationIcon.cs | 106 ---- Source/BugTracker.cs | 12 - Source/CompatibilityPatches/OlderVersions.cs | 9 +- .../SeedsPlease_WorkDriver_Patch.cs | 2 +- .../SeedsPlease_WorkGiver.cs | 1 + Source/CompatibilityPatches/WorkTab.cs | 2 + Source/Constants/BGP.cs | 51 ++ .../PL_DefOf.cs} | 9 +- .../AI/JobDrivers}/JobDriver_Supervise.cs | 23 +- .../AI/JobGivers}/JobGiver_BedTime.cs | 9 +- Source/Core/AI/JobGivers/JobGiver_Diet.cs | 49 ++ .../{ => Core/AI/JobGivers}/JobGiver_Labor.cs | 20 +- .../AI/JobGivers/JobGiver_PickupWeapon.cs | 127 ++++ .../AI/ThinkNodes}/ThinkNode_Labor.cs | 20 +- .../ThinkNode_SeekSafeTemperature.cs | 21 + .../ThoughtWorkers/ThoughtWorker_FreeTime.cs | 19 + .../ThoughtWorker_LowMotivation.cs | 21 + .../ThoughtWorker_VeryGoodTreatment.cs | 21 + .../AI/WorkGivers}/WorkGiver_Supervise.cs | 14 +- Source/Core/Alerts/Alert_EscapingPrisoners.cs | 50 ++ .../{ => Core/Alerts}/Alert_LazyPrisoners.cs | 9 +- .../Alerts}/Alert_StarvingPrisoners.cs | 12 +- Source/Core/BaseClasses/SimpleTimer.cs | 51 ++ .../BillAssignationUtility.cs} | 6 +- .../BillAssignation}/BillGroupData.cs | 4 +- Source/Core/GUI_Components/PawnIcons.cs | 93 +++ .../GUI_Components}/PawnTable_Prisoners.cs | 4 +- Source/Core/GUI_Components/RichListing.cs | 232 +++++++ Source/Core/GUI_Components/SImpleVideo.cs | 38 ++ Source/Core/GameSaves/SaveCleaner.cs | 266 ++++++++ Source/Core/GameSaves/SaveUpgrader.cs | 47 ++ .../Hediffs}/HediffGiver_PrisonersChains.cs | 4 +- Source/{ => Core/Hediffs}/HediffManager.cs | 4 +- .../IncidentWorker_ResocializationOffer.cs | 66 ++ .../Core/Incidents/IncidentWorker_Revolt.cs | 179 ++++++ .../Core/Incidents/IncidentWorker_Suicide.cs | 71 +++ Source/{ => Core/LaborArea}/Area_Labor.cs | 4 +- .../LaborArea}/Designator_AreaLabor.cs | 5 +- .../LaborArea}/Designator_AreaLaborClear.cs | 4 +- .../LaborArea}/Designator_AreaLaborExpand.cs | 4 +- .../LaborWorkSettings}/WorkSettings.cs | 8 +- Source/{ => Core/Meta}/Prefs.cs | 19 +- Source/{ => Core/Meta}/PrefsData.cs | 50 +- Source/Core/Meta/Version.cs | 51 ++ Source/Core/Meta/VersionUtility.cs | 55 ++ Source/Core/Needs/Need_Motivation.cs | 140 +++++ Source/Core/Needs/Need_Treatment.cs | 140 +++++ Source/Core/Other/ArrestUtility.cs | 88 +++ Source/Core/Other/NewsProvider.cs | 122 ++++ .../Other}/PrisonerFoodReservation.cs | 10 +- Source/Core/Other/TreatmentUtility.cs | 32 + Source/Core/Other/TutorialProvider.cs | 51 ++ Source/{ => Core/Other}/Tutorials.cs | 39 +- Source/Core/PrisonLaborUtility.cs | 59 ++ Source/{ => Core}/PrisonLaborWidgets.cs | 4 +- Source/Core/Settings/CleanSaveDialog.cs | 60 ++ .../Settings/SelectSaveForCleaningDialog.cs | 61 ++ .../Settings}/SelectWorkTypesDialog.cs | 7 +- Source/{ => Core/Settings}/SettingsMenu.cs | 93 ++- Source/Core/Trackers/EscapeTracker.cs | 140 +++++ Source/Core/Trackers/InspirationTracker.cs | 99 +++ Source/Core/Windows/NewsWindow.cs | 79 +++ Source/Core/Windows/ReplayTutorialsWindow.cs | 46 ++ Source/Core/Windows/TutorialWindow.cs | 36 ++ Source/HarmonyPatches/DevTools.cs | 108 ++++ Source/HarmonyPatches/HPatcher.cs | 33 +- .../Patch_RemoveHediffIfDisabled.cs | 27 - .../Patch_RemoveLaborAreaIfDisabled.cs | 18 - Source/HarmonyPatches/Patch_ShowNews.cs | 17 - .../Patch_AssignPrisonersToBed.cs | 160 +++++ .../Patch_BillPrevention.cs | 9 +- .../Patch_ExposeBillGroup.cs | 11 +- .../Patch_RemoveBillFromUtility.cs | 7 +- .../EnableConstructionFinishFrames.cs | 65 ++ .../EnableDeepDrillsToPrisoners.cs | 68 ++ .../Patches_Escaping/Patch_EscapeTracker.cs | 38 ++ .../Patch_EscapingPrisoner.cs | 15 +- .../Patches_Food/AddCustomFoodReservation.cs | 73 +++ .../DeliverEvenOutsidePrisonCell.cs | 62 ++ ...Utility_IsFoodSourceOnMapSociallyProper.cs | 79 +++ .../ReserveFoodForPrisonerAfterDropping.cs | 32 + .../ReservedByPrisonerPatch.cs} | 23 +- .../StopIfPrisonerCanGetFoodByHimself.cs | 70 +++ .../GUI_Bill}/Patch_BillCheckbox.cs | 83 ++- .../Patch_AddScrollToPrisonerTab.cs | 10 +- .../Patch_ExtendVistorRect.cs | 4 +- .../GUI_PrisonerTab/Patch_PrisonerTab.cs | 92 +++ .../Patch_ChangeWorkTabPrisonerLabelColor.cs | 4 +- .../GUI_WorkTab/Patch_PawnTableSetDirtyFix.cs | 28 + .../GUI_WorkTab/Patch_WorkDisabled.cs} | 7 +- .../GUI_WorkTab/Patch_WorkDisabled2.cs} | 7 +- .../Patch_DefaultInteractionMode.cs | 5 +- .../Patch_PrisonInteractionLabel.cs | 8 +- .../Patch_AddLaborArea.cs | 5 +- .../Patch_LaborForbid.cs | 20 +- .../Patch_NeedOnlyByPrisoners.cs | 17 +- .../Patch_ForibiddenDrop.cs | 4 +- .../Patch_ItemIsForbidden.cs | 21 +- .../Patch_RespectReservation.cs | 6 +- .../Patch_SocialPropernessFix.cs | 4 +- .../Patch_RenamePrisoners.cs | 6 +- .../Patch_RestrainsPatch.cs | 4 +- .../Patch_JailorTypeSaveCompatibility.cs | 11 +- .../Patch_ReduceChanceForMentalBreak.cs | 58 ++ .../Patch_AddModVersionToFile.cs | 117 ++++ ...tch_DisableAreaRestrictionsForPrisoners.cs | 6 +- .../Patch_ResetWorktableWhenRecruited.cs | 26 + .../Patch_TimetableFix.cs | 4 +- Source/HarmonyPatches/Triggers.cs | 73 +++ Source/IncidentWorker_Revolt.cs | 129 ---- Source/Initialization.cs | 12 +- Source/InspirationUtility.cs | 47 -- Source/JobGiver_Diet.cs | 90 --- Source/LaborExclusionUtility.cs | 15 - Source/Libraries/0Harmony.dll | Bin 0 -> 71168 bytes Source/Need_Motivation.cs | 219 ------- Source/NewsDialog.cs | 526 ---------------- Source/Organizer/NewsFeed.xml | 254 ++++++++ Source/Organizer/TutorialFeed.xml | 44 ++ Source/PrisonLabor.csproj | 192 ++++-- Source/PrisonLaborUtility.cs | 57 -- Source/Properties/AssemblyInfo.cs | 16 +- Source/Properties/Resources.Designer.cs | 124 ++++ Source/Properties/Resources.resx | 130 ++++ Source/Tweaks/ClassInjector.cs | 17 +- Source/Tweaks/FoodUtility_Tweak.cs | 583 ------------------ Source/Tweaks/JobDriver_FoodDeliver_Tweak.cs | 98 --- Source/Tweaks/JobDriver_Mine_Tweak.cs | 4 +- Source/Tweaks/JobDriver_PlantCut_Tweak.cs | 4 +- Source/Tweaks/JobDriver_PlantHarvest_Tweak.cs | 4 +- Source/Tweaks/JobDriver_PlantWork_Tweak.cs | 4 +- Source/Tweaks/MainTabWindow_Assign_Tweak.cs | 109 ++++ Source/Tweaks/MainTabWindow_Dual.cs | 4 +- Source/Tweaks/WorkGiver_CleanFilth_Tweak.cs | 4 +- Source/Tweaks/WorkGiver_GrowerSow_Tweak.cs | 6 +- .../WorkGiver_Warden_DeliverFood_Tweak.cs | 86 --- Source/VersionUtility.cs | 92 --- TaskList.txt | 27 +- Test/PrisonLabor-Tests.csproj | 6 + Test/Program.cs | 20 +- Test/SortingVersion.cs | 57 ++ Test/ToilLister.cs | 46 ++ Textures/FreezingIcon.png | Bin 0 -> 14459 bytes Textures/InspireIcon.png | Bin 18239 -> 10631 bytes Textures/LazyIcon.png | Bin 0 -> 4965 bytes Textures/MotivateIcon.png | Bin 17842 -> 0 bytes Textures/Tutorials/ForceToWork.jpg | Bin 0 -> 11429 bytes Textures/Tutorials/Hypothermia.jpg | Bin 0 -> 78706 bytes Textures/Tutorials/Icons.png | Bin 0 -> 33226 bytes Textures/Tutorials/InspirationPreview.png | Bin 0 -> 209601 bytes Textures/Tutorials/Resocialization.jpg | Bin 0 -> 18827 bytes Textures/Tutorials/WorkTab.png | Bin 0 -> 58918 bytes To-Do.md | 8 +- Translation sheets/Dutch.xlsx | Bin 24685 -> 24913 bytes Translation sheets/Spanish.xlsx | Bin 0 -> 27729 bytes changelog.txt | 23 +- credits.md | 9 +- 184 files changed, 5352 insertions(+), 2622 deletions(-) create mode 100644 Defs/ThoughtsDef.xml create mode 100644 Images/Discord.png create mode 100644 Images/Discord.xcf create mode 100644 Images/FreezingIcon.xcf create mode 100644 Images/LazyIcon.xcf delete mode 100644 Images/deleteLabor.png delete mode 100644 Images/extendLabor.png delete mode 100644 Source/Behaviour_MotivationIcon.cs delete mode 100644 Source/BugTracker.cs create mode 100644 Source/Constants/BGP.cs rename Source/{PrisonLaborDefOf.cs => Constants/PL_DefOf.cs} (64%) rename Source/{ => Core/AI/JobDrivers}/JobDriver_Supervise.cs (80%) rename Source/{ => Core/AI/JobGivers}/JobGiver_BedTime.cs (90%) create mode 100644 Source/Core/AI/JobGivers/JobGiver_Diet.cs rename Source/{ => Core/AI/JobGivers}/JobGiver_Labor.cs (95%) create mode 100644 Source/Core/AI/JobGivers/JobGiver_PickupWeapon.cs rename Source/{ => Core/AI/ThinkNodes}/ThinkNode_Labor.cs (69%) create mode 100644 Source/Core/AI/ThinkNodes/ThinkNode_SeekSafeTemperature.cs create mode 100644 Source/Core/AI/ThoughtWorkers/ThoughtWorker_FreeTime.cs create mode 100644 Source/Core/AI/ThoughtWorkers/ThoughtWorker_LowMotivation.cs create mode 100644 Source/Core/AI/ThoughtWorkers/ThoughtWorker_VeryGoodTreatment.cs rename Source/{ => Core/AI/WorkGivers}/WorkGiver_Supervise.cs (70%) create mode 100644 Source/Core/Alerts/Alert_EscapingPrisoners.cs rename Source/{ => Core/Alerts}/Alert_LazyPrisoners.cs (88%) rename Source/{ => Core/Alerts}/Alert_StarvingPrisoners.cs (87%) create mode 100644 Source/Core/BaseClasses/SimpleTimer.cs rename Source/{BillUtility.cs => Core/BillAssignation/BillAssignationUtility.cs} (87%) rename Source/{ => Core/BillAssignation}/BillGroupData.cs (88%) create mode 100644 Source/Core/GUI_Components/PawnIcons.cs rename Source/{ => Core/GUI_Components}/PawnTable_Prisoners.cs (89%) create mode 100644 Source/Core/GUI_Components/RichListing.cs create mode 100644 Source/Core/GUI_Components/SImpleVideo.cs create mode 100644 Source/Core/GameSaves/SaveCleaner.cs create mode 100644 Source/Core/GameSaves/SaveUpgrader.cs rename Source/{ => Core/Hediffs}/HediffGiver_PrisonersChains.cs (95%) rename Source/{ => Core/Hediffs}/HediffManager.cs (89%) create mode 100644 Source/Core/Incidents/IncidentWorker_ResocializationOffer.cs create mode 100644 Source/Core/Incidents/IncidentWorker_Revolt.cs create mode 100644 Source/Core/Incidents/IncidentWorker_Suicide.cs rename Source/{ => Core/LaborArea}/Area_Labor.cs (89%) rename Source/{ => Core/LaborArea}/Designator_AreaLabor.cs (96%) rename Source/{ => Core/LaborArea}/Designator_AreaLaborClear.cs (92%) rename Source/{ => Core/LaborArea}/Designator_AreaLaborExpand.cs (92%) rename Source/{ => Core/LaborWorkSettings}/WorkSettings.cs (95%) rename Source/{ => Core/Meta}/Prefs.cs (91%) rename Source/{ => Core/Meta}/PrefsData.cs (56%) create mode 100644 Source/Core/Meta/Version.cs create mode 100644 Source/Core/Meta/VersionUtility.cs create mode 100644 Source/Core/Needs/Need_Motivation.cs create mode 100644 Source/Core/Needs/Need_Treatment.cs create mode 100644 Source/Core/Other/ArrestUtility.cs create mode 100644 Source/Core/Other/NewsProvider.cs rename Source/{ => Core/Other}/PrisonerFoodReservation.cs (72%) create mode 100644 Source/Core/Other/TreatmentUtility.cs create mode 100644 Source/Core/Other/TutorialProvider.cs rename Source/{ => Core/Other}/Tutorials.cs (71%) create mode 100644 Source/Core/PrisonLaborUtility.cs rename Source/{ => Core}/PrisonLaborWidgets.cs (97%) create mode 100644 Source/Core/Settings/CleanSaveDialog.cs create mode 100644 Source/Core/Settings/SelectSaveForCleaningDialog.cs rename Source/{ => Core/Settings}/SelectWorkTypesDialog.cs (95%) rename Source/{ => Core/Settings}/SettingsMenu.cs (68%) create mode 100644 Source/Core/Trackers/EscapeTracker.cs create mode 100644 Source/Core/Trackers/InspirationTracker.cs create mode 100644 Source/Core/Windows/NewsWindow.cs create mode 100644 Source/Core/Windows/ReplayTutorialsWindow.cs create mode 100644 Source/Core/Windows/TutorialWindow.cs create mode 100644 Source/HarmonyPatches/DevTools.cs delete mode 100644 Source/HarmonyPatches/Patch_RemoveHediffIfDisabled.cs delete mode 100644 Source/HarmonyPatches/Patch_RemoveLaborAreaIfDisabled.cs delete mode 100644 Source/HarmonyPatches/Patch_ShowNews.cs create mode 100644 Source/HarmonyPatches/Patches_AssignBed/Patch_AssignPrisonersToBed.cs rename Source/HarmonyPatches/{ => Patches_BillAssignation}/Patch_BillPrevention.cs (90%) rename Source/HarmonyPatches/{ => Patches_BillAssignation}/Patch_ExposeBillGroup.cs (55%) rename Source/HarmonyPatches/{ => Patches_BillAssignation}/Patch_RemoveBillFromUtility.cs (60%) create mode 100644 Source/HarmonyPatches/Patches_Construction/EnableConstructionFinishFrames.cs create mode 100644 Source/HarmonyPatches/Patches_DeepDrill/EnableDeepDrillsToPrisoners.cs create mode 100644 Source/HarmonyPatches/Patches_Escaping/Patch_EscapeTracker.cs rename Source/HarmonyPatches/{ => Patches_Escaping}/Patch_EscapingPrisoner.cs (81%) create mode 100644 Source/HarmonyPatches/Patches_Food/AddCustomFoodReservation.cs create mode 100644 Source/HarmonyPatches/Patches_Food/DeliverEvenOutsidePrisonCell.cs create mode 100644 Source/HarmonyPatches/Patches_Food/FoodUtility_IsFoodSourceOnMapSociallyProper.cs create mode 100644 Source/HarmonyPatches/Patches_Food/ReserveFoodForPrisonerAfterDropping.cs rename Source/HarmonyPatches/{Patch_ReservedByPrisoner.cs => Patches_Food/ReservedByPrisonerPatch.cs} (70%) create mode 100644 Source/HarmonyPatches/Patches_Food/StopIfPrisonerCanGetFoodByHimself.cs rename Source/HarmonyPatches/{ => Patches_GUI/GUI_Bill}/Patch_BillCheckbox.cs (61%) rename Source/HarmonyPatches/{ => Patches_GUI/GUI_PrisonerTab}/Patch_AddScrollToPrisonerTab.cs (94%) rename Source/HarmonyPatches/{ => Patches_GUI/GUI_PrisonerTab}/Patch_ExtendVistorRect.cs (89%) create mode 100644 Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_PrisonerTab.cs rename Source/HarmonyPatches/{ => Patches_GUI/GUI_WorkTab}/Patch_ChangeWorkTabPrisonerLabelColor.cs (88%) create mode 100644 Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_PawnTableSetDirtyFix.cs rename Source/HarmonyPatches/{Patch_WorkDisable.cs => Patches_GUI/GUI_WorkTab/Patch_WorkDisabled.cs} (82%) rename Source/HarmonyPatches/{Patch_WorkDisable2.cs => Patches_GUI/GUI_WorkTab/Patch_WorkDisabled2.cs} (83%) rename Source/HarmonyPatches/{ => Patches_InteractionMode}/Patch_DefaultInteractionMode.cs (84%) rename Source/HarmonyPatches/{ => Patches_InteractionMode}/Patch_PrisonInteractionLabel.cs (88%) rename Source/HarmonyPatches/{ => Patches_LaborArea}/Patch_AddLaborArea.cs (74%) rename Source/HarmonyPatches/{ => Patches_LaborArea}/Patch_LaborForbid.cs (83%) rename Source/HarmonyPatches/{ => Patches_Needs}/Patch_NeedOnlyByPrisoners.cs (74%) rename Source/HarmonyPatches/{ => Patches_PermissionFix}/Patch_ForibiddenDrop.cs (90%) rename Source/HarmonyPatches/{ => Patches_PermissionFix}/Patch_ItemIsForbidden.cs (68%) rename Source/HarmonyPatches/{ => Patches_PermissionFix}/Patch_RespectReservation.cs (91%) rename Source/HarmonyPatches/{ => Patches_PermissionFix}/Patch_SocialPropernessFix.cs (96%) rename Source/HarmonyPatches/{ => Patches_RenamingPrisoners}/Patch_RenamePrisoners.cs (97%) rename Source/HarmonyPatches/{ => Patches_Restraints}/Patch_RestrainsPatch.cs (93%) rename Source/HarmonyPatches/{ => Patches_SaveCompatibility}/Patch_JailorTypeSaveCompatibility.cs (87%) create mode 100644 Source/HarmonyPatches/Patches_TreatmentTinkering/Patch_ReduceChanceForMentalBreak.cs create mode 100644 Source/HarmonyPatches/Patches_Version/Patch_AddModVersionToFile.cs rename Source/HarmonyPatches/{ => Patches_WorkSettings}/Patch_DisableAreaRestrictionsForPrisoners.cs (92%) create mode 100644 Source/HarmonyPatches/Patches_WorkSettings/Patch_ResetWorktableWhenRecruited.cs rename Source/HarmonyPatches/{ => Patches_WorkSettings}/Patch_TimetableFix.cs (95%) create mode 100644 Source/HarmonyPatches/Triggers.cs delete mode 100644 Source/IncidentWorker_Revolt.cs delete mode 100644 Source/InspirationUtility.cs delete mode 100644 Source/JobGiver_Diet.cs delete mode 100644 Source/LaborExclusionUtility.cs create mode 100644 Source/Libraries/0Harmony.dll delete mode 100644 Source/Need_Motivation.cs delete mode 100644 Source/NewsDialog.cs create mode 100644 Source/Organizer/NewsFeed.xml create mode 100644 Source/Organizer/TutorialFeed.xml delete mode 100644 Source/PrisonLaborUtility.cs create mode 100644 Source/Properties/Resources.Designer.cs create mode 100644 Source/Properties/Resources.resx delete mode 100644 Source/Tweaks/FoodUtility_Tweak.cs delete mode 100644 Source/Tweaks/JobDriver_FoodDeliver_Tweak.cs create mode 100644 Source/Tweaks/MainTabWindow_Assign_Tweak.cs delete mode 100644 Source/Tweaks/WorkGiver_Warden_DeliverFood_Tweak.cs delete mode 100644 Source/VersionUtility.cs create mode 100644 Test/SortingVersion.cs create mode 100644 Test/ToilLister.cs create mode 100644 Textures/FreezingIcon.png create mode 100644 Textures/LazyIcon.png delete mode 100644 Textures/MotivateIcon.png create mode 100644 Textures/Tutorials/ForceToWork.jpg create mode 100644 Textures/Tutorials/Hypothermia.jpg create mode 100644 Textures/Tutorials/Icons.png create mode 100644 Textures/Tutorials/InspirationPreview.png create mode 100644 Textures/Tutorials/Resocialization.jpg create mode 100644 Textures/Tutorials/WorkTab.png create mode 100644 Translation sheets/Spanish.xlsx diff --git a/About/About.xml b/About/About.xml index a89aa7b6..f0c68399 100644 --- a/About/About.xml +++ b/About/About.xml @@ -5,7 +5,7 @@
  • 1.0
  • - Version 0.9.11 + Version 0.10.1 This mod force prisoners to work. To enable this feature prisoners must have "Force to work" option checked ("Prisoner" tab). Prison labor needs management that consist: - Motivation - prisoners need to be motivated by presence of colonists. Wardens have new job - supervising prisoners. Low motivation can lead to revolts. @@ -16,3 +16,4 @@ This mod force prisoners to work. To enable this feature prisoners must have "Fo This is beta version. Some ascpects of mod still need to be balanced (like motivation). There can be still some bugs. + diff --git a/Assemblies/PrisonLabor.dll b/Assemblies/PrisonLabor.dll index b5380c85210a46c7c345608793fb090a36ea50f9..ec9ef347a8fc8cfa48a3e79d12c29cb2f5b42379 100644 GIT binary patch literal 230912 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
    ~lt18iI6I?f!=Jo!txR+L>j@xh>4{0$`-? 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
    &2Qf;M=~}-bh@# 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 M!f#jp^-True You can make time restrictions for prisoners.\n\n"Work" time will force them to work even when they're hungry or tired.\n\n"Joy" time will let them rest from job and get motivation bonus.\n\n"Sleep" time will force them to stay in prison cell.\n\n"Anything" is default setting. + + PrisonLabor_Treatment + + 50 + True + In prison labor you need to take care for prisoners. Good treatment can prevent revolts, and can provoke recruit proposition (without recruting process!).\n\nTo maintain good treatment status you need to feed prisoners regularly and set some free time so they can regenerate their strength\n\nTreatment will go lower if you beat prisoners, starve them, or exploit in terms of labor.\nGood treatment will result in:\n - Random offers with request to join colony\n - Preventing revolts\n - Preventing suicide + diff --git a/Defs/Hediffs.xml b/Defs/Hediffs.xml index ca0032cb..791281fa 100644 --- a/Defs/Hediffs.xml +++ b/Defs/Hediffs.xml @@ -25,4 +25,4 @@ - + \ No newline at end of file diff --git a/Defs/Incidents.xml b/Defs/Incidents.xml index c2281ab4..30ee950f 100644 --- a/Defs/Incidents.xml +++ b/Defs/Incidents.xml @@ -5,14 +5,43 @@
  • Map_PlayerHome
  • - PrisonLabor.IncidentWorker_Revolt + PrisonLabor.Core.Incidents.IncidentWorker_Revolt Revolt Revolt has been started by {0}. The prisoners united under faction {1}, and began uprising with self-made weapons ThreatBig - 2.7 + 5.4 20 ThreatBig true 200 + + + PrisonLabor_ResocializationOffer + + Misc + +
  • Map_PlayerHome
  • +
    + PrisonLabor.Core.Incidents.IncidentWorker_ResocializationOffer + Resocialization offer + Offer by {0}. + PositiveEvent + 10 + IncreaseEasy +
    + + + PrisonLabor_Suicide + + Misc + +
  • Map_PlayerHome
  • +
    + PrisonLabor.Core.Incidents.IncidentWorker_Suicide + Prisoner suicide + {0} has commited suicide, because of bad treatment. + NegativeEvent + 3 +
    diff --git a/Defs/JobDef.xml b/Defs/JobDef.xml index b84ad042..3627197a 100644 --- a/Defs/JobDef.xml +++ b/Defs/JobDef.xml @@ -2,28 +2,31 @@ PrisonLabor_PrisonerSupervise - PrisonLabor.JobDriver_Supervise + PrisonLabor.Core.AI.JobDrivers.JobDriver_Supervise watching prisoner TargetA. true - PrisonLabor_DeliverFood_Tweak - PrisonLabor.JobDriver_FoodDeliver_Tweak - feeding TargetA to TargetB. + PrisonLabor_Arrest + JobDriver_TakeToBed + arresting TargetA. + true + true + false PrisonLabor_Mine_Tweak - PrisonLabor.JobDriver_Mine_Tweak + PrisonLabor.Tweaks.JobDriver_Mine_Tweak digging at TargetA. PrisonLabor_Harvest_Tweak - PrisonLabor.JobDriver_PlantHarvest_Tweak + PrisonLabor.Tweaks.JobDriver_PlantHarvest_Tweak harvesting TargetA. PrisonLabor_CutPlant_Tweak - PrisonLabor.JobDriver_PlantCut_Tweak + PrisonLabor.Tweaks.JobDriver_PlantCut_Tweak cutting TargetA. diff --git a/Defs/Needs.xml b/Defs/Needs.xml index 5e0db2db..e8ab7b5c 100644 --- a/Defs/Needs.xml +++ b/Defs/Needs.xml @@ -2,11 +2,21 @@ PrisonLabor_Motivation - PrisonLabor.Need_Motivation + PrisonLabor.Core.Needs.Need_Motivation Motivation represents how motivated to work is prisoner. Motivation can be improved by colonists standing nearby. 90 false false + + PrisonLabor_Treatment + PrisonLabor.Core.Needs.Need_Treatment + + Treatment happiness represents how prisoners are content of treatment in colony. + 89 + false + false + false + diff --git a/Defs/ThinkTreeDef.xml b/Defs/ThinkTreeDef.xml index 37e0fa6d..18571ade 100644 --- a/Defs/ThinkTreeDef.xml +++ b/Defs/ThinkTreeDef.xml @@ -4,14 +4,20 @@ PrisonLabor_WorkThinkTree Humanlike_PostDuty 80 - + false +
  • + +
  • + +
  • -
  • -
  • -
  • +
  • +
  • +
  • +
  • diff --git a/Defs/ThoughtsDef.xml b/Defs/ThoughtsDef.xml new file mode 100644 index 00000000..4fb5052d --- /dev/null +++ b/Defs/ThoughtsDef.xml @@ -0,0 +1,37 @@ + + + + + PrisonLabor_VeryGoodTreatment + PrisonLabor.Core.AI.ThoughtWorkers.ThoughtWorker_VeryGoodTreatment + +
  • + + In this prison I've been treated very well. + 15 +
  • +
    +
    + + PrisonLabor_LowMotivation + PrisonLabor.Core.AI.ThoughtWorkers.ThoughtWorker_LowMotivation + +
  • + + Nobody cares if I'm working or not. + 5 +
  • +
    +
    + + PrisonLabor_FreeTime + PrisonLabor.Core.AI.ThoughtWorkers.ThoughtWorker_FreeTime + +
  • + + Even tough I'm prisoner, I can still have some free time. + 5 +
  • +
    +
    +
    diff --git a/Defs/WorkGiverDef.xml b/Defs/WorkGiverDef.xml index 33d08d24..aa7f87aa 100644 --- a/Defs/WorkGiverDef.xml +++ b/Defs/WorkGiverDef.xml @@ -3,7 +3,7 @@ PrisonLabor_SupervisePrisonLabor - PrisonLabor.WorkGiver_Supervise + PrisonLabor.Core.AI.WorkGivers.WorkGiver_Supervise PrisonLabor_Jailor 5 watch prisoner diff --git a/Images/Discord.png b/Images/Discord.png new file mode 100644 index 0000000000000000000000000000000000000000..314babf0421a5bbe4e2452565255b90cfb7b0b96 GIT binary patch literal 57469 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
    UbN&bT)nf5ZIwziE$wZEYsVy~DM5ca{(%oPKyv- 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�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 z zQGs8wa9Df?B+h_{e)U;(4QuD!lkdLU;5ndJdI1y5-Iss|zDEBNxA$IO5eKfX!J`4h z1{e=$(dv6{;ByTDlB&U>diZrUGU)B;Qvij*P}E6pbozckFZdK=W1-%cl01sZKK~K3go1JtnqF2 zVORYMIAQmYHJ}Cf3nC&M`>uWyMwB~5r!Fe{t{T-h5^_=EU+8y#J`Ny3#q15f0t!iS zeLVV?`faLtI{H`kd(iEdP^Y8)BMrVX?2(tu$D`ke#!xX-SU0}cn9%}nmX7>D4?r^d zRYE_c9hWFsad?AYtBd3gH|FUVO3UNn`D#4@I#H$d;qU_e#!Ws8?e8QsUxOcYe-X&O z#v*>Ens|wRh=PYT_@S#p?Z#65pc~T~%OE+}SgyYmYg@A#^>N?4iTnMZzt{MB_^ZL^ z8$t12pKk`m{_4$L-R6(|JshTvB!_PL?<3Qm{jr~UHWI|M{msw*`;0&E9pC?{&q&~K zlId>&r@uX{kJ_I8cFvFHUN~51S#SS)UTb-O7|seF3n-O?7!2GQ3_uScDb<%2g1>4z zxvrpiVg>t!c~`s3F)K2S7A^IN)DL<)0X8DV4udhd5D>WGeW$dQiKH9Mm)mFqr!#& zyuj6}zQHjJ3h%w^DM+*-Xo*%e{u8$apR4%`W5aE&fV1sl@K}MZ3&FWT6zM)$>lk!W zl&HXGKCcjG4w|d4^Btf)kR7+U8Su1_(1#(jOvtOnSD6)*^)VG&MGIOI==KNlk!a^CA^U^eOk zcy4WES+eWNf!9re%DDg-tc=}e3Su%=wd%SAPlm)L$BsS+)8w~?*7#GuqEa`(i|W;D z5e0X_CLIxxgx64gKiApm8Xzg26|3OpUSf5u@6w!t>r@y&yGu#rwGzYeF6b?6kjs7v zy`bStKUj-H&LYs7Qzz?dj;#s79SkqmmvT`k)#rAd9Jf;$1bzxM55^W0Y>l9C6jK2q zrtO4=1DnFX);JE}am7Avtprq`Wpr*Awhq)p;Nrml=sG}_L4g3niDsocBpm$OJHPD9 z0XKfDo?%IPLJqo-Orb)-OryYX@Hq+uy-`UU3>)_$`IXPlEAX2m-z)HAkgwU=#663k z7z}X0^?ibo!drDJgAjAN+|cikW2;5jCQvY~_?xLdLNcLwsd-Gz)6i3bC0I(!E-Mcc^% zX91{FdA`7g;ds4)kwhF&2aXkv-LSlzzuY~s3va->fdhuaFRQr$N_39|;x~nl6BMPw zYQnkWvyg3dnWtZ=34#hNLv`8!s7@Wd;27x&*BJ+jjDs0->zJXhtehWQNDY|ud4rZt z(~wA57;U)jPXHeUlp0rOrUl5S4k{G@#_l$A0H*^p1m%#Af}Z!=?`q)~Opg9bO+%Mk z0yeZ8iK8toS%BH@`3kqh?zeDzzt;2yNlFHCQnR!({Py*e)wOwOyi6a+y z5)Vq5ICJD$(6YMH(hoHNN$Y-zD1@Xc3_=oj{7%Kq1VJ{Selc@XzG9%l7Y30P76DWQ z@~v@aaoWAXs1O8I4O((o9<|?wwyZSg_lpu!xp>des9aqJ+)6jqC#0sgc4;~Z#k>92kwzma+5Iv~6sw`ft0zETFMReLbXo;Ed&?>PMnqiGTu|X)2?rxT3XeQVz zSUU&L0bBEXWd#S2vbj`DHTXeQ4| zn8~=|2~5YjCzpAEUUtwgcB5MjfjKc5jZ;cyy1d6Q{eHXva4If?tx+Oh2*2VmjH>W_ zVvDA1TK0R4K~Zs|pa%<(Q3%Na0HBw&f#W|Q*B;fT6oJJ9kHY1EC)Bv4?j|*ux-FW( z^#b&_qg@7=&Ke)n-(=fEyXo4t5@tz(V7X&E0xc?Vfq^A9J66xPH~4cYE*vdao5TR~ zL~*_TqHYQLSf7iwsBV*bS+YM;Em(DxJB&cMv(M1O4E)d zaNro1H`z6Xppo1hsEY(zMLQuK&@21^@8n)sa8FTY&6RkCyen<)Z&HPlp(0>O*8-cO zxbC*%2TdgdO42WeN`;~BpHUR?ppz8eo);Gc(xKTXTkxPXx)C=JKSc%f^ag%|p zFHC{?xbqNXK?IuzZX;TGKdz9?{J4wN?gvJ;Ve@m!j|VmQfIL{^YTRsnBW1+{O0H}B zfkaRzuA)z|QtvcyU}7Zjzc_`q8y6fz1@V9lbi0<{h@5OuA);4MG{@)>?^Md`GI7vJ zdsM>alIa?z8+UwRauHjOI!ZFDmo^IxB&Z5l4W=6n4=J=1&??uZ5WOnSmuTtB-TN>DNPrLs1<=XyLAJbS07=LQ zWXYCulgbO_A{G1$zDQLbMM&kmMqlP8_e$A9z#u07w^sKIR-CF_D`Cb zJ^xzYYCdK&T>R?I*EB@oQ^6R#y?c9rBA%53Yhe3>R)r&U$cV3Mv>~GL8QS=#0;N#l zGz$H)Dl>m{sDcC1H5`|L<|#E64My`VAhCJYbOImMmtYCrLJWy~0F_V}bgnZDJ;MNO zMTChUMfHjc6h;lQp?_bP@$(*wH7>)k;KmLZIqA~wwwju0Zr>4;R)e{5#0eUKvcLxs zQf}ai&d$utSa7};l&;M{9Ka1_ehcID1r^VX&}gnv`&zG{4z;(A&OA~)6R|{2L^u@l zt8d(*!nCR=P*jaIP$im3f%p6~dO|pcHlD+t)!s%7dk0!8ZM(_gO$Im!l2buQ{XmgH zLK>@Tr}v_IjmiP_o^Jz$VzlPLm*60Gz3;uwz0a z^$%Q({nIRbANCJx+~yHSP_}je)X92wkaj(^sC|V~JAqxMsc2oikh!7+X%lF!!W1^5 z8lHK+0xFilP+%RlQ*<`aD2)4Bwm1?9)S9tb$h~Y#GT>7Q@@O8sB~D)hlaZ-VZ_H2W zn7NS)+EmexXqCd95CS-5=-5nAGro^Ny7gNtO&LLcHQ3@N8qYJm7S!uDyHHY)YVz?h0X)>w5uQTsWa)mPV` z^NuhV3Q%o~F;LjNEhqA5tBs@LFb7>LHBbgaoF-zaH=XJ#2Uo@K#7CoSCjcTGR>`Q1 z7Aws1fUekvsO`|yWoWwE0H~<=S0jvpVGG9T^MvDgnIHj#BA8NKN%Q2j+77$sbC!)b za39)@;~bvQv72H_<9=UVL4zIO8_>u(DIkkxJ8r!bU=TNTRyWh71aNshozD3Yr>P2( zqSLa6sO3grZmY%aY9@r?tanbaQ4b8-VOvD#3_=I7tj!)YJX`-cABSbAGp9vRtbvw! zb>roruNfd!2_4rkW5mEvMB9ijZXN?%Yz~<@-dbf8IMP`rHtD3{;7wpn9Le@BPq8u8 zj{gx?-WZdj?cavl_E{a0fO)f#Se^Ljh!&>vKqOJi-X$Eq84cW86O0Xh*cyDLfb2}i zK)Z0}v%%0eQ#_)iAa;%x)&}#4+vD1zf{_U#*1-cS1$LK`GTK0Sh{<=_#!-`zT{|2e z=Fv8iH4MrllGVeY$p|`b2J|s@UlsXZu7*+Ol}ePSb2%rfRmV-7t8dhE06w9u>8OH;#(^RNa=|*Q>z1@d}2o?1{N1=CCa%P`_}6IiCV}3IWMB(qP3`T z`cMKtQ9oy#I&3Z_OP(WzhE#6GDHsIRLP>P`5hA)wMb zfjxCs76l9q`g<`rME&i$S)X1KLF zb2ZR*gX#^uUzeJzE>ckR9gd>Ulyn15(-U*w7^QZsV}=9OllB_5E|7^l%%_`!Mt!l- zb69P`&dI&d3!B)+K*CIMJGG; zdau>|Hev_eHO>%ob06CmsiFlJdW)!*h68G8xvMm3WsHv2o)VX3#P$Z)Ivqk4VS+iC z&`Abpz4<1OI!?9P(Ra(ZgkyBTtv6Whgd|`);b*CS71A$at;6Dsge8K$QvQ*ekM6kE z887Fj>+3D-i`V1E^es?Zqwe4ddAAcCA4S#je-Gk#&)3aIi9?j9)IlDdbn<3!yNfB_pUJ~Es=O!qCaUIkS0#Ex zG1yd00~T|qs}t}dUnF!AlTQa0zDF?{ovzx>U!)mn_{MFV_3v9btvL0e zULvf$7>;`If#AA>g=gVBh9?qWpM)yzhdS-1yGhf>et2}Pxh{7AN#VWJ^R~x0OdUeP=2le%1!~4 z1W^tYL^)It<)(rtw-iK4Amz3KDHYtKV9GfKQ_hZs&y632{`iZ~8}Ej8{5Uk@y-<($ z!(=!_v6vcLn#NjW7)G;n=eXD)*{if1z-ZB*#%5s|NXa_ z0=*m2TiQWSU)D-hEU16A??^S150l!QPQWkUi$`dJ$UVwu%J+{l(q9w3txtT4n$y>C z8o+2us`ZHWjJBcD+ILtkzvh$|puU@`9 z>>p0}{%Z5c%#00;1)b*n`&XQ)I;;}ih!HV9v87e)_>M_b< z&ZJvG1DqFbg=@OMo$q<&PVoC>J^vv1{Z&2xWmxLw?0z0a- z-(+nG&Nn^)u9IJ^|0gB?CrQZ(i~*1l|2#hEY3%>2upqvya4iRyRDcUNnF=igX0#CK zYa!6nLZH<`pwU909)B6)_-QyF>%)HvI#5<@MpmpZE7p@0Yh}e6S+P3lz@!6HInb6w zY@5jPh-DJXC6-M(FzUcq4*ci7`k?yOcQUWSlW`sP$4%H9_rk92hsa)p>^oTY79>=c z5M4rY3Bg^JO~H1ohmXuY+!D3|t^%S0n)0buRQI%!V&w#OA{%EFp_ShFAbu69gcq6M zsz&~QVoEH*Hr~PNn^Qd7&!rTbe=^}-_tgF7x1C16xNjH_HAx{GC9A}7ApP@cs*}R& zJa#Mo`bT}v0%r)lz!_WeczPto$=A=Hqa2e*Q#tOQrZ!n3W{-Di*5e9zE<%P zR_T{7X%YBfC5gY4PBTO70E|SIBv5aS)P6=5os3N1`Fz@l(s= zpiDFFZkS4@@ymsTBXpY9+p7!5h-u6vYfnh?skphzmlM>I!z3o&Omh{57#330NplwH zlK9vY8JBBEuB~-oZSKofo+-*tDo+z5zYKL)OeJ=we*Rt>THNr;V`=%xbX=6{{Z00k zxX;;Q2Rth%iRzy0hhETj)!y}Rs`xch7o-Jt{W;9&Toyl)^UzjuAkdVQJGqFybu}YV!bFf&R4@=3Dms&spA4Y(bnidxH z7H3xe7*AQO@^b-lD({8Gu$*${8qZZX5zfh_7MAojseW+473DW9hn0lu3_n=2x5{4< zzu#u59M?&F{EKic;l|)H(M!p1u^v_vDOQmGZ-nb93y#g>TVXAscHIerl%(~D@z~HR zaZPK%RjmP6w9;GB+HS#!2uz+#LNb$}pMfl1Sj4cPVPWH(#Eup|55i?Feiq`kZsl=1 zEb8yYxD~GGRvxd!&9G#*VOWj>yRF17aJv>i53BKBxE?7q)f*H?7> zlFqeYi!$siKTRp!ztvhE%)T18vc^|rb+t?%AA~;!>G(KS%*mxZfacaHd0LBOqm?=& zKa8mZ_n%fdMJ!$(S8oy15oJwGcQFwOSEnXAr6ygcdrZj7M&3S7>|z)KkiLn97QQV@*m{-u`KUDIX&?_;ZG_qWDajlo+Itm*-%Z$(8kkC z1`XF;l}Sqeh2jRVL{%s>C-x)Ub02cvXxaUaX;1Xy=t=J+x}k}qI3skSl%5Y|w=9D! z(zts#QJafXaw-QGZCr92V!vl!^@4dKRm4+I3MD0^nrP{gkmWdY*_~cs5-KiK60NyB z{!Z?Lc5fu#DV~4ThmtY&N8E&=dHJ#=rU1l zD%GbFNGYF-I&rnDud+`ykB(G3`WDwCNjp|={nhHShyNVQt3b_v?YL|+9*i8Hl_@yS!4ix)J^&YqIBA7G4HFeV}Vuug%@4RnxOHU!@ zLQ&hb`e}BdExm;}FC!1-@kbYyCB8~~Y≀sN@yG$BcAKYC`j$PJYj z{)d|8?ga+Fv&UjW6 z%UpP%EylOCjW~I`$d^TKtdjo<`QWZ-c4PuXSfl{NRs>c=Rm4<8RD@FmQ$$k4QAAP1 z&{|9WvrrPe_0&pnAe9dZTJq;a7S8$P?nw2KtIZ|(sgvTSWT0xRZ%XB@ZeGuoh>t{0 zMIWCR;jb}`i{!T6kAc1}=O2T^J`k!+9CFCjjdb?;)aaFxXO8@FgKk5wwjt(JeU(nM zkb1$gFI76pLh9?y;ySsZzh^@&d2d6{<^p|Vqgzauf{Xs^dOjbxSQ{1ByDMoSG;$&= zs$t_`U4JiyT8@Y-X&G5=wOdLnf%{d-Z_DYrgtz6iCV_25THj^e-;{)QO`=_|Ta`pt zch@Dzt!Z&}U838H7FSm#sVz!Ao0njQN`^XCYjJhP@64<-UDA?iUQ3+mO~>2cQns~h zT8P8RJ3W^ou4UAc`r)#cQOjC7t=R3ZmRFx>8Kv?>mCGJgE**DOpIOwo z=k?v_T`cWtEvwGdi~mD)*!=m^gD?K_ ix99D*;o!n8gz#FoKj_APzt!zG_AJQz5yUL(zrO+h%#QQ` literal 0 HcmV?d00001 diff --git a/Images/FreezingIcon.xcf b/Images/FreezingIcon.xcf new file mode 100644 index 0000000000000000000000000000000000000000..2817729310567a6e7703b2c9a3141155c76908b0 GIT binary patch literal 42768 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 K+sd_Gk^c|57*)>z literal 0 HcmV?d00001 diff --git a/Images/InspireIcon.xcf b/Images/InspireIcon.xcf index bde0d8d1527b7eacb802ae125073add940527e77..42de3e7ca435b74b7319ddfd19fe7d060c98a665 100644 GIT binary patch literal 26219 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 uU--3z7`+sEOC5f4!xt;QH*jNy1Z99>nXs;K60 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 diff --git a/Images/LazyIcon.xcf b/Images/LazyIcon.xcf new file mode 100644 index 0000000000000000000000000000000000000000..0b91a9615f71a611c416d1c417fac1a580fad54b GIT binary patch literal 13209 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 literal 0 HcmV?d00001 diff --git a/Images/deleteLabor.png b/Images/deleteLabor.png deleted file mode 100644 index 2ddf9e3b393a60989d02e52f183f8b29a95a8024..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6665 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 Ty#E%l00000NkvXXu0mjfOVhAj diff --git a/Images/extendLabor.png b/Images/extendLabor.png deleted file mode 100644 index e3cd185ebc67d3e926f4a76104762050062e2238..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7868 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 a#rVIIr(DpYLUzmm0000When enabled revolts will sometimes occur instead of vanilla incidents Labor area isn't required to make prisoners work.\n\nThis area forbids colonists from working.\n\nIt's for situations where you don't want colonists to work in certain area. Prisoners will work anywhere they can enter. Don't show again + +Upgrading [PrisonLabor] mod diff --git a/Languages/ChineseTraditional/Keyed/Keys.xml b/Languages/ChineseTraditional/Keyed/Keys.xml index 644a5571..b4fa319a 100644 --- a/Languages/ChineseTraditional/Keyed/Keys.xml +++ b/Languages/ChineseTraditional/Keyed/Keys.xml @@ -52,5 +52,5 @@ 所有人 殖民者 囚犯 - - +Upgrading [PrisonLabor] mod + \ No newline at end of file diff --git a/Languages/Dutch/Keyed/Keys.xml b/Languages/Dutch/Keyed/Keys.xml index 83938b3a..efa35396 100644 --- a/Languages/Dutch/Keyed/Keys.xml +++ b/Languages/Dutch/Keyed/Keys.xml @@ -49,4 +49,6 @@ When enabled revolts will sometimes occur instead of vanilla incidents Labor area isn't required to make prisoners work.\n\nThis area forbids colonists from working.\n\nIt's for situations where you don't want colonists to work in certain area. Prisoners will work anywhere they can enter. Don't show again + +Upgrading [PrisonLabor] mod diff --git a/Languages/English/Keyed/Keys.xml b/Languages/English/Keyed/Keys.xml index 5814442b..21849222 100644 --- a/Languages/English/Keyed/Keys.xml +++ b/Languages/English/Keyed/Keys.xml @@ -13,17 +13,13 @@ allow all allow all work types allowed work types: - browse + Browse Motivation mechanics (!) When checked prisoners need to be motivated.\n\nWARINING: Needs reloading save. Inspiration/Motivation Icons When enabled icons will be displayed above prisoners heads. Blue icon for inspiration, and green icon for gaining motivation by other factors. Prisoners can grow advanced plants When disabled prisoners can only grow plants that not require any skills. - Restart then re-save your game. - After this steps you can safely disable this mod. - Disable mod - When enabled, worlds that are saved are transferred to 'safe Mode', and can be played without mod. Version: Difficulty: Defaults @@ -42,15 +38,40 @@ Labor area is area where only prisoners can work. No colonist's work allowed here except warden type jobs. Clear Labor Area Expand Labor Area - Colonists only - Prisoners only - Colony only + Enable revolts When enabled revolts will sometimes occur instead of vanilla incidents Labor area isn't required to make prisoners work.\n\nThis area forbids colonists from working.\n\nIt's for situations where you don't want colonists to work in certain area. Prisoners will work anywhere they can enter. Don't show again + Show treatment happiness + When enabled treatment happiness will be shown in Needs tab. Everyone Colonists Prisoners + + For everyone + Limit to colonists + Limit to prisoners + + + Recruit + Ready to join colony + + Prisoners can escape + Prisoners can reach end of map and escape. They will run unless colonist will keep an eye on them. + Those prisoners can escape:\n\n{0}\nThey will run unless colonist will keep an eye on them. + + Select Save + Remove Prison Labor mod from save + + Backup + Proceed + + Upgrading [PrisonLabor] mod + You are going to remove Prison Labor mod from save. After this operation you will be able to play without the mod. + Please backup your file with button below. + + Tutorials + Show diff --git a/Languages/French/Keyed/Keys.xml b/Languages/French/Keyed/Keys.xml index bff7b1cc..c426fd2e 100644 --- a/Languages/French/Keyed/Keys.xml +++ b/Languages/French/Keyed/Keys.xml @@ -49,4 +49,6 @@ When enabled revolts will sometimes occur instead of vanilla incidents Labor area isn't required to make prisoners work.\n\nThis area forbids colonists from working.\n\nIt's for situations where you don't want colonists to work in certain area. Prisoners will work anywhere they can enter. Don't show again + +Upgrading [PrisonLabor] mod \ No newline at end of file diff --git a/Languages/Polish/Keyed/Keys.xml b/Languages/Polish/Keyed/Keys.xml index 464b5b87..85267cb9 100644 --- a/Languages/Polish/Keyed/Keys.xml +++ b/Languages/Polish/Keyed/Keys.xml @@ -1,4 +1,4 @@ - + Zmuś do pracy Praca i próba rekrutacji @@ -49,4 +49,6 @@ When enabled revolts will sometimes occur instead of vanilla incidents Labor area isn't required to make prisoners work.\n\nThis area forbids colonists from working.\n\nIt's for situations where you don't want colonists to work in certain area. Prisoners will work anywhere they can enter. Don't show again + + Aktualizacja modyfikacji [PrisonLabor] \ No newline at end of file diff --git a/Languages/Russian/Keyed/Keys.xml b/Languages/Russian/Keyed/Keys.xml index fb4926f4..d42025da 100644 --- a/Languages/Russian/Keyed/Keys.xml +++ b/Languages/Russian/Keyed/Keys.xml @@ -49,4 +49,5 @@ Если включить то бунт может случатся в качестве случайного события. Зона работ не обязательна для того чтоб заключенные работали. \n\n Зона работ запрещает поселенцам работу в указанных местах.\n\n Она создана для тех случаев, когда вы не хотите чтобы поселенцы работали в указанном месте. Заключенные же будут работать там, куда у них есть доступ. Больше не показывать +Upgrading [PrisonLabor] mod \ No newline at end of file diff --git a/Languages/Spanish/Keyed/Keys.xml b/Languages/Spanish/Keyed/Keys.xml index 41e340cb..abc5ec09 100644 --- a/Languages/Spanish/Keyed/Keys.xml +++ b/Languages/Spanish/Keyed/Keys.xml @@ -49,4 +49,6 @@ When enabled revolts will sometimes occur instead of vanilla incidents Labor area isn't required to make prisoners work.\n\nThis area forbids colonists from working.\n\nIt's for situations where you don't want colonists to work in certain area. Prisoners will work anywhere they can enter. Don't show again + +Upgrading [PrisonLabor] mod diff --git a/Languages/Swedish/Keyed/Keys.xml b/Languages/Swedish/Keyed/Keys.xml index 2710d648..1e5bfca0 100644 --- a/Languages/Swedish/Keyed/Keys.xml +++ b/Languages/Swedish/Keyed/Keys.xml @@ -49,4 +49,6 @@ When enabled revolts will sometimes occur instead of vanilla incidents Labor area isn't required to make prisoners work.\n\nThis area forbids colonists from working.\n\nIt's for situations where you don't want colonists to work in certain area. Prisoners will work anywhere they can enter. Don't show again + +Upgrading [PrisonLabor] mod \ No newline at end of file diff --git a/README.md b/README.md index b72947f8..30414ba6 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@

    diff --git a/Source/Behaviour_MotivationIcon.cs b/Source/Behaviour_MotivationIcon.cs deleted file mode 100644 index 820c533c..00000000 --- a/Source/Behaviour_MotivationIcon.cs +++ /dev/null @@ -1,106 +0,0 @@ -using RimWorld.Planet; -using System; -using UnityEngine; -using Verse; - -namespace PrisonLabor -{ - [StaticConstructorOnStartup] - internal class Behaviour_MotivationIcon : MonoBehaviour - { - // TODO delete later - private static bool displayedError = false; - - private static readonly Texture2D inspiredTexture; - private static readonly Texture2D motivatedTexture; - private static readonly Vector3 iconPos; - - private float worldScale; - - static Behaviour_MotivationIcon() - { - inspiredTexture = ContentFinder.Get("InspireIcon", false); - motivatedTexture = ContentFinder.Get("MotivateIcon", false); - iconPos = new Vector3(0f, 0f, 1.3f); - } - - private void DrawIcon(Texture2D texture, Vector3 pawnPos) - { - //TODO add iconSizeMult to prefs ? - var iconSizeMult = 1.0f; - //TODO add iconSize to prefs ? - var iconSize = 2.0f; - - if (texture == null) - { - Log.Message("texture cant be found"); - return; - } - - var scrPosVec = (pawnPos + iconPos).MapToUIPosition(); - var scrSize = worldScale * iconSizeMult * iconSize * 0.5f; - var scrPos = new Rect(scrPosVec.x - scrSize * 0.5f, scrPosVec.y - scrSize * 0.5f, scrSize, scrSize); - GUI.DrawTexture(scrPos, texture, ScaleMode.ScaleToFit, true); - } - - public virtual void OnGUI() - { - try - { - var iconsEnabled = PrisonLaborPrefs.EnableMotivationIcons && !PrisonLaborPrefs.DisableMod; - var inGame = Find.CurrentMap != null && Find.CurrentMap.mapPawns != null && !WorldRendererUtility.WorldRenderedNow; - - if (iconsEnabled && inGame) - foreach (var pawn in Find.CurrentMap.mapPawns.AllPawns) - { - if (pawn == null) continue; - if (pawn.RaceProps == null) continue; - - if (pawn.IsPrisonerOfColony) - { - var need = pawn.needs.TryGetNeed(); - if (need != null && need.Motivated) - if (need.Insipred) - DrawIcon(inspiredTexture, pawn.DrawPos); - else - DrawIcon(motivatedTexture, pawn.DrawPos); - } - } - } - catch (NullReferenceException e) - { - if (!displayedError) - { - Log.ErrorOnce("PrisonLaborError: null reference in OnGui() : " + e.Message + " trace: " + e.StackTrace, typeof(Behaviour_MotivationIcon).GetHashCode()); - displayedError = true; - } - } - } - - - public virtual void Update() - { - worldScale = Screen.height / (2 * Camera.current.orthographicSize); - } - - public static void Initialization() - { - var iconModule = new GameObject("PrisonLabor_Initializer"); - iconModule.AddComponent(); - DontDestroyOnLoad(iconModule); - } - } - - internal class IconModuleInitializer : MonoBehaviour - { - public void FixedUpdate() - { - var iconModule = GameObject.Find("PrisonLabor_IconModule"); - if (iconModule == null) - { - iconModule = new GameObject("PrisonLabor_IconModule"); - iconModule.AddComponent(); - } - } - } -} \ No newline at end of file diff --git a/Source/BugTracker.cs b/Source/BugTracker.cs deleted file mode 100644 index 104cc31d..00000000 --- a/Source/BugTracker.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace PrisonLabor -{ - class BugTracker - { - - } -} diff --git a/Source/CompatibilityPatches/OlderVersions.cs b/Source/CompatibilityPatches/OlderVersions.cs index 258e2560..a917ef46 100644 --- a/Source/CompatibilityPatches/OlderVersions.cs +++ b/Source/CompatibilityPatches/OlderVersions.cs @@ -1,4 +1,7 @@ -using RimWorld; +using PrisonLabor.Constants; +using PrisonLabor.Core.LaborWorkSettings; +using PrisonLabor.Core.Meta; +using RimWorld; using System; using System.Collections.Generic; using System.Linq; @@ -13,8 +16,8 @@ internal static void Pre_v0_9_4() { if (WorkSettings.AllowedWorkTypes.Contains(WorkTypeDefOf.Warden)) WorkSettings.AllowedWorkTypes.Remove(WorkTypeDefOf.Warden); - if (WorkSettings.AllowedWorkTypes.Contains(PrisonLaborDefOf.PrisonLabor_Jailor)) - WorkSettings.AllowedWorkTypes.Remove(PrisonLaborDefOf.PrisonLabor_Jailor); + if (WorkSettings.AllowedWorkTypes.Contains(PL_DefOf.PrisonLabor_Jailor)) + WorkSettings.AllowedWorkTypes.Remove(PL_DefOf.PrisonLabor_Jailor); WorkSettings.Apply(); PrisonLaborPrefs.Save(); diff --git a/Source/CompatibilityPatches/SeedsPlease_WorkDriver_Patch.cs b/Source/CompatibilityPatches/SeedsPlease_WorkDriver_Patch.cs index 86c8f95e..5f56f931 100644 --- a/Source/CompatibilityPatches/SeedsPlease_WorkDriver_Patch.cs +++ b/Source/CompatibilityPatches/SeedsPlease_WorkDriver_Patch.cs @@ -82,7 +82,7 @@ public static IEnumerable DelegateTranspiler(ILGenerator gen, M { if (ci.opcode == OpCodes.Beq) { - yield return new CodeInstruction(OpCodes.Call, typeof(SeedsPlease_WorkDriver_Patch).GetMethod("CorrectCondition")); + yield return new CodeInstruction(OpCodes.Call, typeof(SeedsPlease_WorkDriver_Patch).GetMethod(nameof(CorrectCondition))); yield return new CodeInstruction(OpCodes.Brfalse, ci.operand); step++; } diff --git a/Source/CompatibilityPatches/SeedsPlease_WorkGiver.cs b/Source/CompatibilityPatches/SeedsPlease_WorkGiver.cs index 26b4ba7a..a8d276bc 100644 --- a/Source/CompatibilityPatches/SeedsPlease_WorkGiver.cs +++ b/Source/CompatibilityPatches/SeedsPlease_WorkGiver.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Text; +using PrisonLabor.Tweaks; using RimWorld; using Verse; using Verse.AI; diff --git a/Source/CompatibilityPatches/WorkTab.cs b/Source/CompatibilityPatches/WorkTab.cs index ff0c30d6..7b42da04 100644 --- a/Source/CompatibilityPatches/WorkTab.cs +++ b/Source/CompatibilityPatches/WorkTab.cs @@ -7,6 +7,8 @@ using PrisonLabor.Tweaks; using UnityEngine; using RimWorld.Planet; +using PrisonLabor.Core; +using PrisonLabor.Core.LaborWorkSettings; namespace PrisonLabor.CompatibilityPatches { diff --git a/Source/Constants/BGP.cs b/Source/Constants/BGP.cs new file mode 100644 index 00000000..08a78b36 --- /dev/null +++ b/Source/Constants/BGP.cs @@ -0,0 +1,51 @@ +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace PrisonLabor.Constants +{ + /// + /// ||Balanced Gameplay Parameters|| + /// Defined constants for balananced gameplay, + /// stored in one place for optimized re-balancing + /// + public static class BGP + { + #region Insipiration + public const float InspireRate = 0.015f; + public const int WardenCapacity = (int)(InspireRate / Laziness_LazyRate); + public const float InpirationRange = 10.0f; + #endregion + + #region Laziness + public const float Laziness_LazyRate = 0.002f; + public const float Laziness_HungryRate = 0.006f; + public const float Laziness_TiredRate = 0.006f; + public const float Laziness_HealthRate = 0.006f; + public const float Laziness_JoyRate = 0.001f; + #endregion + + #region Escape + // Escape time = ax + b (x -- treatment level) + public const int Escape_MinLevel = 100; + public const int Escape_MaxLevel = 5000; + public const float Escape_LevelTreatmentMultiplier = 7000; + public const int Escape_LevelBase = -950; + #endregion + + #region Treatment + public const float ResocializationLevel = 0.1f; + + // 10% every 12 days + public const float LaborRate = 1f / (120f * GenDate.TicksPerDay / 150f); + // 1% every 12 days for every point of status + public const float StatusMultiplier = 1f / (1200f * GenDate.TicksPerDay / 150f); + // 10% every 6 days + public const float JoyRate = 1f / (60f * GenDate.TicksPerDay / 150f); + + public const float BeatenHit = -0.1f; + #endregion + } +} diff --git a/Source/PrisonLaborDefOf.cs b/Source/Constants/PL_DefOf.cs similarity index 64% rename from Source/PrisonLaborDefOf.cs rename to Source/Constants/PL_DefOf.cs index ffeb5866..f6a9fed4 100644 --- a/Source/PrisonLaborDefOf.cs +++ b/Source/Constants/PL_DefOf.cs @@ -1,18 +1,21 @@ -using RimWorld; +using RimWorld; using System; using System.Collections.Generic; using System.Linq; using System.Text; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Constants { [DefOf] - public static class PrisonLaborDefOf + public static class PL_DefOf { public static PrisonerInteractionModeDef PrisonLabor_workOption; public static PrisonerInteractionModeDef PrisonLabor_workAndRecruitOption; public static WorkTypeDef PrisonLabor_Jailor; + + public static NeedDef PrisonLabor_Motivation; + public static NeedDef PrisonLabor_Treatment; } } diff --git a/Source/JobDriver_Supervise.cs b/Source/Core/AI/JobDrivers/JobDriver_Supervise.cs similarity index 80% rename from Source/JobDriver_Supervise.cs rename to Source/Core/AI/JobDrivers/JobDriver_Supervise.cs index c46003bd..877117c1 100644 --- a/Source/JobDriver_Supervise.cs +++ b/Source/Core/AI/JobDrivers/JobDriver_Supervise.cs @@ -1,16 +1,19 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; +using PrisonLabor.Constants; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Trackers; using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Core.AI.JobDrivers { internal class JobDriver_Supervise : JobDriver { private static readonly float GapLengh = 3.0f; - protected Pawn Prisoner => (Pawn) job.targetA.Thing; + protected Pawn Prisoner => (Pawn)job.targetA.Thing; protected override IEnumerable MakeNewToils() { @@ -42,19 +45,19 @@ protected Toil MakeWatchToil(Pawn prisoner) int score = 0; int curScore = 0; bool found = false; - foreach(var cell in prisoner.GetRoom().Cells) + foreach (var cell in prisoner.GetRoom().Cells) { float distance = cell.DistanceTo(prisoner.InteractionCell); - if (distance < Need_Motivation.InpirationRange) + if (distance < BGP.InpirationRange) { if (distance < GapLengh) curScore = (int)distance; else - curScore = (int)(Need_Motivation.InpirationRange - distance); + curScore = (int)(BGP.InpirationRange - distance); foreach (var pawn in prisonersInRoom) - if (cell.DistanceTo(pawn.Position) < Need_Motivation.InpirationRange) - curScore += 100; + if (cell.DistanceTo(pawn.Position) < BGP.InpirationRange) + curScore += pawn.IsWatched() ? 50 : 100; if (curScore > score) { @@ -75,12 +78,12 @@ protected Toil MakeWatchToil(Pawn prisoner) private bool RangeCondition(Toil toil) { - return toil.actor.Position.DistanceTo(Prisoner.Position) > Need_Motivation.InpirationRange; + return toil.actor.Position.DistanceTo(Prisoner.Position) > BGP.InpirationRange; } private IEnumerable PrisonersInRoom(Room room) { - foreach(var pawn in room.Map.mapPawns.PrisonersOfColony) + foreach (var pawn in room.Map.mapPawns.PrisonersOfColony.Where(p => p.LaborEnabled() && p.needs?.TryGetNeed() != null)) { if (pawn.GetRoom() == room) yield return pawn; diff --git a/Source/JobGiver_BedTime.cs b/Source/Core/AI/JobGivers/JobGiver_BedTime.cs similarity index 90% rename from Source/JobGiver_BedTime.cs rename to Source/Core/AI/JobGivers/JobGiver_BedTime.cs index 39b1224f..30977965 100644 --- a/Source/JobGiver_BedTime.cs +++ b/Source/Core/AI/JobGivers/JobGiver_BedTime.cs @@ -1,9 +1,10 @@ -using RimWorld; +using PrisonLabor.Core.Needs; +using RimWorld; using Verse; using Verse.AI; using Verse.AI.Group; -namespace PrisonLabor +namespace PrisonLabor.Core.AI.JobGivers { internal class JobGiver_BedTime : ThinkNode_JobGiver { @@ -18,6 +19,8 @@ public override ThinkNode DeepCopy(bool resolve = true) public override float GetPriority(Pawn pawn) { + if (HealthAIUtility.ShouldHaveSurgeryDoneNow(pawn)) + return 15f; if (pawn.timetable != null && pawn.timetable.CurrentAssignment == TimeAssignmentDefOf.Sleep) return 10f; return 0f; @@ -31,7 +34,7 @@ protected override Job TryGiveJob(Pawn pawn) return null; var need = pawn.needs.TryGetNeed(); if (need != null) - need.Enabled = false; + need.IsPrisonerWorking = false; var lord = pawn.GetLord(); Building_Bed building_Bed; if (lord != null && lord.CurLordToil != null && !lord.CurLordToil.AllowRestingInBed) diff --git a/Source/Core/AI/JobGivers/JobGiver_Diet.cs b/Source/Core/AI/JobGivers/JobGiver_Diet.cs new file mode 100644 index 00000000..74411c86 --- /dev/null +++ b/Source/Core/AI/JobGivers/JobGiver_Diet.cs @@ -0,0 +1,49 @@ +using PrisonLabor.Core.Needs; +using RimWorld; +using Verse; +using Verse.AI; + +namespace PrisonLabor.Core.AI.JobGivers +{ + internal class JobGiver_Diet : JobGiver_GetFood + { + private HungerCategory minCategory = HungerCategory.Hungry; + private readonly HungerCategory stopWorkingCat = HungerCategory.UrgentlyHungry; + + public override ThinkNode DeepCopy(bool resolve = true) + { + var jobGiver_Diet = (JobGiver_Diet)base.DeepCopy(resolve); + jobGiver_Diet.minCategory = minCategory; + return jobGiver_Diet; + } + + public override float GetPriority(Pawn pawn) + { + var food = pawn.needs.food; + if (food == null) + return 0f; + if (pawn.needs.food.CurCategory < HungerCategory.Starving && FoodUtility.ShouldBeFedBySomeone(pawn)) + return 0f; + if (food.CurCategory < minCategory) + return 0f; + if (food.CurCategory <= stopWorkingCat) + return 11f; + if (food.CurLevelPercentage < pawn.RaceProps.FoodLevelPercentageWantEat) + return 7f; + return 0f; + } + + protected override Job TryGiveJob(Pawn pawn) + { + var food = pawn.needs.food; + if (food == null || food.CurCategory < minCategory) + return null; + + var need = pawn.needs.TryGetNeed(); + if (need != null) + need.IsPrisonerWorking = false; + + return base.TryGiveJob(pawn); + } + } +} \ No newline at end of file diff --git a/Source/JobGiver_Labor.cs b/Source/Core/AI/JobGivers/JobGiver_Labor.cs similarity index 95% rename from Source/JobGiver_Labor.cs rename to Source/Core/AI/JobGivers/JobGiver_Labor.cs index fa0038de..1a2f9c38 100644 --- a/Source/JobGiver_Labor.cs +++ b/Source/Core/AI/JobGivers/JobGiver_Labor.cs @@ -1,14 +1,20 @@ -using System; +using System; +using PrisonLabor.Core.LaborWorkSettings; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Other; using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Core.AI.JobGivers { public class JobGiver_Labor : ThinkNode { public bool emergency; + public object Tutorials { get; private set; } + public override ThinkNode DeepCopy(bool resolve = true) { var jobGiver_Work = (JobGiver_Labor)base.DeepCopy(resolve); @@ -34,9 +40,9 @@ public override ThinkResult TryIssueJobPackage(Pawn pawn, JobIssueParams jobPara //Check medical assistance, fed, and rest if not override if (!PrisonLaborUtility.WorkTime(pawn)) { - Tutorials.Timetable(); + Other.Tutorials.Timetable(); if (need != null) - need.Enabled = false; + need.IsPrisonerWorking = false; return ThinkResult.NoJob; } //Check motivation @@ -48,7 +54,7 @@ public override ThinkResult TryIssueJobPackage(Pawn pawn, JobIssueParams jobPara //TODO check this //workList.RemoveAll(workGiver => workGiver.def.defName == "GrowerSow"); if (need != null) - need.Enabled = false; + need.IsPrisonerWorking = false; var num = -999; var targetInfo = TargetInfo.Invalid; @@ -66,7 +72,7 @@ public override ThinkResult TryIssueJobPackage(Pawn pawn, JobIssueParams jobPara if (job2 != null) { if (need != null) - need.Enabled = true; + need.IsPrisonerWorking = true; return new ThinkResult(job2, this, workList[j].def.tagToGive); } var scanner = workGiver as WorkGiver_Scanner; @@ -162,7 +168,7 @@ public override ThinkResult TryIssueJobPackage(Pawn pawn, JobIssueParams jobPara if (job3 != null) { if (need != null) - need.Enabled = true; + need.IsPrisonerWorking = true; return new ThinkResult(job3, this, workList[j].def.tagToGive); } Log.ErrorOnce( diff --git a/Source/Core/AI/JobGivers/JobGiver_PickupWeapon.cs b/Source/Core/AI/JobGivers/JobGiver_PickupWeapon.cs new file mode 100644 index 00000000..6f5e4be1 --- /dev/null +++ b/Source/Core/AI/JobGivers/JobGiver_PickupWeapon.cs @@ -0,0 +1,127 @@ +using PrisonLabor.Core.Needs; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Verse; +using Verse.AI; + +namespace PrisonLabor.Core.AI.JobGivers +{ + public class JobGiver_PickupWeapon : ThinkNode_JobGiver + { + private static TreatmentCategory maxCategory = TreatmentCategory.Bad; + + private bool preferBuildingDestroyers; + + public override float GetPriority(Pawn pawn) => 12f; + + protected override Job TryGiveJob(Pawn pawn) + { + if (pawn.equipment == null) + { + return null; + } + if (AlreadySatisfiedWithCurrentWeapon(pawn)) + { + return null; + } + var treatmentNeed = pawn.needs?.TryGetNeed(); + if(treatmentNeed == null || treatmentNeed.CurCategory > maxCategory) + { + return null; + } + if (pawn.RaceProps.Humanlike && pawn.story.WorkTagIsDisabled(WorkTags.Violent)) + { + return null; + } + if (!pawn.health.capacities.CapableOf(PawnCapacityDefOf.Manipulation)) + { + return null; + } + if (pawn.GetRegion(RegionType.Set_Passable) == null) + { + return null; + } + Thing thing = GenClosest.ClosestThingReachable(pawn.Position, pawn.Map, ThingRequest.ForGroup(ThingRequestGroup.Weapon), PathEndMode.OnCell, TraverseParms.For(pawn, Danger.Deadly, TraverseMode.ByPawn, false), 8f, (Thing x) => pawn.CanReserve(x, 1, -1, null, false) && ShouldEquip(x, pawn), null, 0, 15, false, RegionType.Set_Passable, false); + if (thing != null) + { + return new Job(JobDefOf.Equip, thing); + } + return null; + } + + public override ThinkNode DeepCopy(bool resolve = true) + { + JobGiver_PickupWeapon jobGiver = (JobGiver_PickupWeapon)base.DeepCopy(resolve); + jobGiver.preferBuildingDestroyers = preferBuildingDestroyers; + return jobGiver; + } + + private bool ShouldEquip(Thing newWep, Pawn pawn) + { + return GetWeaponScore(newWep) > GetWeaponScore(pawn.equipment.Primary); + } + + private int GetWeaponScore(Thing wep) + { + if (wep == null) + { + return 0; + } + if (wep.def.IsMeleeWeapon && wep.GetStatValue(StatDefOf.MeleeWeapon_AverageDPS, true) < MinMeleeWeaponDPSThreshold) + { + return 0; + } + if (preferBuildingDestroyers && wep.TryGetComp().PrimaryVerb.verbProps.ai_IsBuildingDestroyer) + { + return 3; + } + if (wep.def.IsRangedWeapon) + { + return 2; + } + return 1; + } + + private bool AlreadySatisfiedWithCurrentWeapon(Pawn pawn) + { + ThingWithComps primary = pawn.equipment.Primary; + if (primary == null) + { + return false; + } + if (preferBuildingDestroyers) + { + if (!pawn.equipment.PrimaryEq.PrimaryVerb.verbProps.ai_IsBuildingDestroyer) + { + return false; + } + } + else if (!primary.def.IsRangedWeapon) + { + return false; + } + return true; + } + + private float MinMeleeWeaponDPSThreshold + { + get + { + List tools = ThingDefOf.Human.tools; + float num = 0f; + for (int i = 0; i < tools.Count; i++) + { + if (tools[i].linkedBodyPartsGroup == BodyPartGroupDefOf.LeftHand || tools[i].linkedBodyPartsGroup == BodyPartGroupDefOf.RightHand) + { + num = tools[i].power / tools[i].cooldownTime; + break; + } + } + return num + 2f; + } + } + } +} diff --git a/Source/ThinkNode_Labor.cs b/Source/Core/AI/ThinkNodes/ThinkNode_Labor.cs similarity index 69% rename from Source/ThinkNode_Labor.cs rename to Source/Core/AI/ThinkNodes/ThinkNode_Labor.cs index 336a1062..cada9731 100644 --- a/Source/ThinkNode_Labor.cs +++ b/Source/Core/AI/ThinkNodes/ThinkNode_Labor.cs @@ -1,8 +1,11 @@ -using RimWorld; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Other; +using PrisonLabor.Core.Trackers; +using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Core.AI.ThinkNodes { internal class ThinkNode_Labor : ThinkNode_Conditional { @@ -29,16 +32,17 @@ protected override bool Satisfied(Pawn pawn) // Prisoner will escape if get ready to run. // If he can run he will start ticking impatient, once complete he will get ready. - if (!pawn.guest.PrisonerIsSecure || - RCellFinder.TryFindBestExitSpot(pawn, out c, TraverseMode.ByPawn)) + var escapeTracker = EscapeTracker.Of(pawn, true); + if (pawn.guest.PrisonerIsSecure && RCellFinder.TryFindBestExitSpot(pawn, out c, TraverseMode.ByPawn)) { - need.CanEscape = true; - if (need.ReadyToRun) + if (escapeTracker.ReadyToEscape) return false; + else + escapeTracker.CanEscape = true; } else { - need.CanEscape = false; + escapeTracker.CanEscape = false; } @@ -47,7 +51,7 @@ protected override bool Satisfied(Pawn pawn) return true; } - need.Enabled = false; + need.IsPrisonerWorking = false; } return false; } diff --git a/Source/Core/AI/ThinkNodes/ThinkNode_SeekSafeTemperature.cs b/Source/Core/AI/ThinkNodes/ThinkNode_SeekSafeTemperature.cs new file mode 100644 index 00000000..97c76a3c --- /dev/null +++ b/Source/Core/AI/ThinkNodes/ThinkNode_SeekSafeTemperature.cs @@ -0,0 +1,21 @@ +using PrisonLabor.Core.Trackers; +using RimWorld; +using Verse; +using Verse.AI; + +namespace PrisonLabor.Core.AI.ThinkNodes +{ + internal class ThinkNode_SeekSafeTemperature : ThinkNode_Conditional + { + protected override bool Satisfied(Pawn pawn) + { + if (pawn.IsPrisoner) + { + if (pawn.IsWatched() && PrisonLaborUtility.WorkTime(pawn)) + return false; + return true; + } + return false; + } + } +} \ No newline at end of file diff --git a/Source/Core/AI/ThoughtWorkers/ThoughtWorker_FreeTime.cs b/Source/Core/AI/ThoughtWorkers/ThoughtWorker_FreeTime.cs new file mode 100644 index 00000000..a867d701 --- /dev/null +++ b/Source/Core/AI/ThoughtWorkers/ThoughtWorker_FreeTime.cs @@ -0,0 +1,19 @@ +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Verse; + +namespace PrisonLabor.Core.AI.ThoughtWorkers +{ + public class ThoughtWorker_FreeTime : ThoughtWorker + { + protected override ThoughtState CurrentStateInternal(Pawn p) + { + if (!p.IsPrisoner) + return false; + return p.timetable != null && p.timetable.CurrentAssignment == TimeAssignmentDefOf.Joy; + } + } +} diff --git a/Source/Core/AI/ThoughtWorkers/ThoughtWorker_LowMotivation.cs b/Source/Core/AI/ThoughtWorkers/ThoughtWorker_LowMotivation.cs new file mode 100644 index 00000000..5486083e --- /dev/null +++ b/Source/Core/AI/ThoughtWorkers/ThoughtWorker_LowMotivation.cs @@ -0,0 +1,21 @@ +using PrisonLabor.Core.Needs; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Verse; + +namespace PrisonLabor.Core.AI.ThoughtWorkers +{ + public class ThoughtWorker_LowMotivation : ThoughtWorker + { + protected override ThoughtState CurrentStateInternal(Pawn p) + { + if (!p.IsPrisoner) + return false; + var need = p.needs.TryGetNeed(); + return need != null && need.IsLazy; + } + } +} diff --git a/Source/Core/AI/ThoughtWorkers/ThoughtWorker_VeryGoodTreatment.cs b/Source/Core/AI/ThoughtWorkers/ThoughtWorker_VeryGoodTreatment.cs new file mode 100644 index 00000000..0bc43a26 --- /dev/null +++ b/Source/Core/AI/ThoughtWorkers/ThoughtWorker_VeryGoodTreatment.cs @@ -0,0 +1,21 @@ +using PrisonLabor.Core.Needs; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Verse; + +namespace PrisonLabor.Core.AI.ThoughtWorkers +{ + public class ThoughtWorker_VeryGoodTreatment : ThoughtWorker + { + protected override ThoughtState CurrentStateInternal(Pawn p) + { + if (!p.IsPrisoner) + return false; + var need = p.needs.TryGetNeed(); + return need != null && need.CurCategory == TreatmentCategory.VeryGood; + } + } +} diff --git a/Source/WorkGiver_Supervise.cs b/Source/Core/AI/WorkGivers/WorkGiver_Supervise.cs similarity index 70% rename from Source/WorkGiver_Supervise.cs rename to Source/Core/AI/WorkGivers/WorkGiver_Supervise.cs index 9c145838..a8520c1f 100644 --- a/Source/WorkGiver_Supervise.cs +++ b/Source/Core/AI/WorkGivers/WorkGiver_Supervise.cs @@ -1,16 +1,17 @@ -using RimWorld; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Trackers; +using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Core.AI.WorkGivers { internal class WorkGiver_Supervise : WorkGiver_Warden { public override Job JobOnThing(Pawn pawn, Thing t, bool forced = false) { var prisoner = t as Pawn; - var need = prisoner.needs.TryGetNeed(); - + var need = prisoner?.needs.TryGetNeed(); if (need == null || prisoner == null) return null; if (!ShouldTakeCareOfPrisoner(pawn, prisoner)) @@ -19,11 +20,12 @@ public override Job JobOnThing(Pawn pawn, Thing t, bool forced = false) return null; if (pawn.IsPrisoner) return null; - if (!PrisonLaborUtility.LaborEnabled(prisoner) && !need.CanEscape) + var escapeTracker = EscapeTracker.Of(prisoner, true); + if (!PrisonLaborUtility.LaborEnabled(prisoner) && !escapeTracker.CanEscape) return null; if (PrisonLaborUtility.RecruitInLaborEnabled(prisoner)) return new Job(JobDefOf.PrisonerAttemptRecruit, t); - if ((!PrisonLaborUtility.WorkTime(prisoner) || !need.NeedToBeInspired) && !need.CanEscape) + if ((!PrisonLaborUtility.WorkTime(prisoner) || !need.ShouldToBeMotivated) && !escapeTracker.CanEscape) return null; return new Job(DefDatabase.GetNamed("PrisonLabor_PrisonerSupervise"), prisoner); diff --git a/Source/Core/Alerts/Alert_EscapingPrisoners.cs b/Source/Core/Alerts/Alert_EscapingPrisoners.cs new file mode 100644 index 00000000..84394d61 --- /dev/null +++ b/Source/Core/Alerts/Alert_EscapingPrisoners.cs @@ -0,0 +1,50 @@ +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Other; +using PrisonLabor.Core.Trackers; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.Alerts +{ + public class Alert_EscapingPrisoners : Alert_Critical + { + public Alert_EscapingPrisoners() + { + defaultLabel = "PrisonLabor_Alert_EscapingPrisoners_Title".Translate(); + defaultExplanation = "PrisonLabor_Alert_EscapingPrisoners_DefaultExplanation".Translate(); + } + + private IEnumerable PotentialEscapingPrisoners + { + get + { + var maps = Find.Maps; + for (var i = 0; i < maps.Count; i++) + foreach (var pawn in maps[i].mapPawns.AllPawns.Where(p=>p.IsPrisoner && EscapeTracker.Of(p, true).CanEscape)) + yield return pawn; + } + } + + public override string GetExplanation() + { + Tutorials.Motivation(); + + var stringBuilder = new StringBuilder(); + foreach (var current in PotentialEscapingPrisoners) + stringBuilder.AppendLine(" " + current.Name.ToStringShort); + return string.Format("PrisonLabor_Alert_EscapingPrisoners_ExplanationFormat".Translate(), stringBuilder.ToString()); + } + + public override AlertReport GetReport() + { + if (PrisonLaborPrefs.EnableMotivationMechanics) + return AlertReport.CulpritIs(PotentialEscapingPrisoners.FirstOrDefault()); + return false; + } + } +} diff --git a/Source/Alert_LazyPrisoners.cs b/Source/Core/Alerts/Alert_LazyPrisoners.cs similarity index 88% rename from Source/Alert_LazyPrisoners.cs rename to Source/Core/Alerts/Alert_LazyPrisoners.cs index b7762fb1..67634481 100644 --- a/Source/Alert_LazyPrisoners.cs +++ b/Source/Core/Alerts/Alert_LazyPrisoners.cs @@ -1,10 +1,13 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; using System.Text; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Other; using RimWorld; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.Alerts { internal class Alert_LazyPrisoners : Alert { @@ -29,6 +32,8 @@ private IEnumerable LazyPrisoners public override string GetExplanation() { + Tutorials.Motivation(); + var stringBuilder = new StringBuilder(); foreach (var current in LazyPrisoners) stringBuilder.AppendLine(" " + current.Name.ToStringShort); diff --git a/Source/Alert_StarvingPrisoners.cs b/Source/Core/Alerts/Alert_StarvingPrisoners.cs similarity index 87% rename from Source/Alert_StarvingPrisoners.cs rename to Source/Core/Alerts/Alert_StarvingPrisoners.cs index 24b108b4..4c408527 100644 --- a/Source/Alert_StarvingPrisoners.cs +++ b/Source/Core/Alerts/Alert_StarvingPrisoners.cs @@ -1,10 +1,12 @@ -using System.Collections.Generic; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Needs; +using RimWorld; +using System.Collections.Generic; using System.Linq; using System.Text; -using RimWorld; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.Alerts { internal class Alert_StarvingPrisoners : Alert { @@ -40,9 +42,7 @@ public override string GetExplanation() public override AlertReport GetReport() { - if (!PrisonLaborPrefs.DisableMod) - return AlertReport.CulpritIs(StarvingPrisoners.FirstOrDefault()); - return false; + return AlertReport.CulpritIs(StarvingPrisoners.FirstOrDefault()); } } } \ No newline at end of file diff --git a/Source/Core/BaseClasses/SimpleTimer.cs b/Source/Core/BaseClasses/SimpleTimer.cs new file mode 100644 index 00000000..dadb8fb2 --- /dev/null +++ b/Source/Core/BaseClasses/SimpleTimer.cs @@ -0,0 +1,51 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Verse; + +namespace PrisonLabor.Core.BaseClasses +{ + public class SimpleTimer : IExposable + { + private bool _IsActive; + public bool IsActive + { + get => _IsActive; + set => _IsActive = value; + } + + private int _Ticks; + public int Ticks + { + get => _Ticks; + set => _Ticks = value; + } + + public void Start() => IsActive = true; + + public void Stop() => IsActive = false; + + public void Reset() => Ticks = 0; + + public void Tick() + { + if (_IsActive) + { + Ticks++; + } + } + + public void ResetAndStop() + { + IsActive = false; + Ticks = 0; + } + + public void ExposeData() + { + Scribe_Values.Look(ref _IsActive, nameof(IsActive)); + Scribe_Values.Look(ref _Ticks, nameof(Ticks)); + } + } +} diff --git a/Source/BillUtility.cs b/Source/Core/BillAssignation/BillAssignationUtility.cs similarity index 87% rename from Source/BillUtility.cs rename to Source/Core/BillAssignation/BillAssignationUtility.cs index 06129088..36dcf153 100644 --- a/Source/BillUtility.cs +++ b/Source/Core/BillAssignation/BillAssignationUtility.cs @@ -1,9 +1,9 @@ -using System.Collections.Generic; +using System.Collections.Generic; using RimWorld; -namespace PrisonLabor +namespace PrisonLabor.Core.BillAssignation { - internal class BillUtility + internal class BillAssignationUtility { private static readonly Dictionary Map = new Dictionary(); diff --git a/Source/BillGroupData.cs b/Source/Core/BillAssignation/BillGroupData.cs similarity index 88% rename from Source/BillGroupData.cs rename to Source/Core/BillAssignation/BillGroupData.cs index 8b99daa2..0dce3ae3 100644 --- a/Source/BillGroupData.cs +++ b/Source/Core/BillAssignation/BillGroupData.cs @@ -1,6 +1,6 @@ -using Verse; +using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.BillAssignation { public enum GroupMode { diff --git a/Source/Core/GUI_Components/PawnIcons.cs b/Source/Core/GUI_Components/PawnIcons.cs new file mode 100644 index 00000000..57a37a2f --- /dev/null +++ b/Source/Core/GUI_Components/PawnIcons.cs @@ -0,0 +1,93 @@ +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Trackers; +using System; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.GUI_Components +{ + [StaticConstructorOnStartup] + public class PawnIcons : MapComponent + { + private static readonly Texture2D watchedTexture; + private static readonly Texture2D lazyTexture; + private static readonly Texture2D freezingTexture; + private static readonly Vector3 iconPos; + + private static float worldScale; + + static PawnIcons() + { + watchedTexture = ContentFinder.Get("InspireIcon", false); + lazyTexture = ContentFinder.Get("LazyIcon", false); + freezingTexture = ContentFinder.Get("FreezingIcon", false); + iconPos = new Vector3(0.3f, 0f, 0.9f); + } + + public PawnIcons(Map map) : base(map) { } + + private static void DrawIcon(Texture2D texture, Vector3 pawnPos) + { + //TODO add iconSizeMult to prefs ? + var iconSizeMult = 1.0f; + //TODO add iconSize to prefs ? + var iconSize = 2.0f; + + if (texture == null) + { + Log.Message("texture cant be found"); + return; + } + + var scrPosVec = (pawnPos + iconPos).MapToUIPosition(); + var scrSize = worldScale * iconSizeMult * iconSize * 0.5f; + var scrPos = new Rect(scrPosVec.x - scrSize * 0.5f, scrPosVec.y - scrSize * 0.5f, scrSize, scrSize); + GUI.DrawTexture(scrPos, texture, ScaleMode.ScaleToFit, true); + } + + public override void MapComponentOnGUI() + { + try + { + if (!PrisonLaborPrefs.EnableMotivationIcons) + return; + + if (map.mapPawns == null) + return; + + foreach (var pawn in map.mapPawns.AllPawns) + { + if (pawn == null) continue; + if (pawn.RaceProps == null) continue; + + if (pawn.IsPrisonerOfColony && pawn.CarriedBy == null) + { + var need = pawn.needs.TryGetNeed(); + if (pawn.health.hediffSet.HasTemperatureInjury(TemperatureInjuryStage.Serious) && PrisonLaborUtility.WorkTime(pawn)) + { + DrawIcon(freezingTexture, pawn.DrawPos); + } + else if (pawn.IsWatched()) + { + DrawIcon(watchedTexture, pawn.DrawPos); + } + else if (need != null && need.IsLazy && PrisonLaborUtility.LaborEnabled(pawn) && PrisonLaborUtility.WorkTime(pawn)) + { + DrawIcon(lazyTexture, pawn.DrawPos); + } + } + } + } + catch (NullReferenceException e) + { + Log.ErrorOnce("PrisonLaborError: null reference in OnGui() : " + e.Message + " trace: " + e.StackTrace, typeof(PawnIcons).GetHashCode()); + } + } + + public override void MapComponentTick() + { + worldScale = Screen.height / (2 * Camera.current.orthographicSize); + } + } +} \ No newline at end of file diff --git a/Source/PawnTable_Prisoners.cs b/Source/Core/GUI_Components/PawnTable_Prisoners.cs similarity index 89% rename from Source/PawnTable_Prisoners.cs rename to Source/Core/GUI_Components/PawnTable_Prisoners.cs index 870f6756..311042da 100644 --- a/Source/PawnTable_Prisoners.cs +++ b/Source/Core/GUI_Components/PawnTable_Prisoners.cs @@ -1,11 +1,11 @@ -using RimWorld; +using RimWorld; using System; using System.Collections.Generic; using System.Linq; using System.Text; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.GUI_Components { public class PawnTable_Prisoners : PawnTable { diff --git a/Source/Core/GUI_Components/RichListing.cs b/Source/Core/GUI_Components/RichListing.cs new file mode 100644 index 00000000..564f293d --- /dev/null +++ b/Source/Core/GUI_Components/RichListing.cs @@ -0,0 +1,232 @@ +using System.Collections.Generic; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.GUI_Components +{ + public class RichListing + { + private Vector2 scrollPosition; + private Rect windowRect; + private Rect viewRect; + private IEnumerable entries; + + + public float Spacing { get; set; } + public float GapHeight { get; set; } + public string MarginText { get; set; } + public float MarginWidth { get; set; } + public GameFont TitleFont { get; set; } + public GameFont ItemFont { get; set; } + + public RichListing() // Defaults + { + TitleFont = GameFont.Medium; + ItemFont = GameFont.Small; + + MarginText = " - "; + MarginWidth = Text.fontStyles[1].CalcSize(new GUIContent(MarginText)).x; + + GapHeight = 12f; + Spacing = 2f; + } + + public void PreRender(Rect bounds, IEnumerable entries) + { + var calculatedRect = new Rect(0, 0, bounds.width - 16f, CalculateHeight(bounds.width - 16f, entries)); + viewRect = calculatedRect; + windowRect = bounds; + this.entries = entries; + } + + public void OnGui() + { + Start(windowRect, viewRect); + foreach (var entry in entries) + Append(entry); + End(); + } + + public void OnGui(ref Vector2 scroller) + { + Start(windowRect, viewRect, ref scroller); + foreach (var entry in entries) + Append(entry); + End(); + } + + public void Start(Rect windowRect, Rect viewRect) + { + this.viewRect = viewRect; + Widgets.BeginScrollView(windowRect, ref scrollPosition, viewRect, true); + } + + public void Start(Rect windowRect, Rect viewRect, ref Vector2 scroller) + { + this.viewRect = viewRect; + Widgets.BeginScrollView(windowRect, ref scroller, viewRect, true); + } + + public void Append(string item) + { + //Insert html formatting + item = item + .Replace("[b]", "") + .Replace("[/b]", ""); + + Text.Font = ItemFont; + + // Draw title + if (item.StartsWith("[title]")) + { + Text.Font = TitleFont; + Widgets.Label(viewRect, item.Substring(7)); + viewRect.y += Text.CalcHeight(item, viewRect.width) + Spacing; + + // Draw line gap + Color color = GUI.color; + GUI.color = GUI.color * new Color(1f, 1f, 1f, 0.4f); + Widgets.DrawLineHorizontal(viewRect.x, viewRect.y + +GapHeight * 0.5f, viewRect.width); + GUI.color = color; + viewRect.y += GapHeight; + } + // Draw Image with Text + else if (item.StartsWith("[img]")) + { + int imgLength = item.IndexOf("[/img]"); + var imageString = item.Substring(5, imgLength - 5); + var textToDraw = item.Substring(imgLength + 6); + + var content = new GUIContent(); + content.image = ContentFinder.Get(imageString, false); + content.text = textToDraw; + Widgets.Label(viewRect, content); + + viewRect.y += GuiStyle(Text.Font).CalcHeight(content, viewRect.width); + } + // Draw Gap + else if (item.StartsWith("[gap]")) + { + Color color = GUI.color; + GUI.color = GUI.color * new Color(1f, 1f, 1f, 0.4f); + Widgets.DrawLineHorizontal(viewRect.x, viewRect.y + +GapHeight * 0.5f, viewRect.width); + GUI.color = color; + viewRect.y += GapHeight; + } + // Draw Subtitle (without margin, old) + else if (item.StartsWith("[subtitle]")) + { + Widgets.Label(viewRect, item.Substring(10)); + viewRect.y += Text.CalcHeight(item.Substring(10), viewRect.width) + Spacing; + } + // Draw Video + else if (item.StartsWith("[video]")) + { + int imgLength = item.IndexOf("[/video]"); + var framesSrc = item.Substring(7, imgLength - 7); + var dimensions = item.Substring(imgLength + 8).Split('x'); + + Vector2 videoSize = dimensions.Length >= 2 ? new Vector2(int.Parse(dimensions[0]), int.Parse(dimensions[1])) : new Vector2(100, 100); + int framesPerSecond = dimensions.Length >= 3 ? int.Parse(dimensions[2]) : 10; + + new SimpleVideo(framesSrc, framesPerSecond).OnGui(new Rect((viewRect.x - videoSize.x) / 2, viewRect.y, videoSize.x, videoSize.y)); + + viewRect.y += videoSize.y; + } + // List point (with margin) + else if (item.StartsWith("[-]")) + { + viewRect.width -= MarginWidth; + Widgets.Label(viewRect, MarginText); + viewRect.x += MarginWidth; + Widgets.Label(viewRect, item.Substring(3)); + viewRect.x -= MarginWidth; + viewRect.y += Text.CalcHeight(item.Substring(3), viewRect.width) + Spacing; + viewRect.width += MarginWidth; + } + // Draw Text + else + { + Widgets.Label(viewRect, item); + viewRect.y += Text.CalcHeight(item, viewRect.width) + Spacing; + } + } + + public void End() + { + Widgets.EndScrollView(); + } + + private float CalculateHeight(float width, IEnumerable items) + { + float height = 0; + foreach (var item in items) + { + if (item.StartsWith("[title]")) + { + Text.Font = TitleFont; + height += Text.CalcHeight(item.Substring(7), width) + Spacing + GapHeight; + } + // Image with Text + else if (item.StartsWith("[img]")) + { + Text.Font = ItemFont; + int imgLength = item.IndexOf("[/img]"); + var imageString = item.Substring(5, imgLength - 5); + var textToDraw = item.Substring(imgLength + 6); + + var content = new GUIContent(); + content.image = ContentFinder.Get(imageString, false); + content.text = textToDraw; + + + height += GuiStyle(Text.Font).CalcHeight(content, width); + } + // Gap + else if (item.StartsWith("[gap]")) + { + height += GapHeight; + } + else if (item.StartsWith("[subtitle]")) + { + Text.Font = ItemFont; + height += Text.CalcHeight(item.Substring(10), width) + Spacing; + } + else if (item.StartsWith("[-]")) + { + Text.Font = ItemFont; + height += Text.CalcHeight(item.Substring(3), width - MarginWidth) + Spacing; + } + // Only Text + else + { + Text.Font = ItemFont; + height += Text.CalcHeight(item, width) + Spacing; + } + } + return height; + } + + private static GUIStyle GuiStyle(GameFont font) + { + GUIStyle gUIStyle; + switch (font) + { + case GameFont.Tiny: + gUIStyle = Text.fontStyles[0]; + break; + case GameFont.Small: + gUIStyle = Text.fontStyles[1]; + break; + case GameFont.Medium: + gUIStyle = Text.fontStyles[2]; + break; + default: + return null; + } + gUIStyle.alignment = Text.Anchor; + gUIStyle.wordWrap = Text.WordWrap; + return gUIStyle; + } + } +} diff --git a/Source/Core/GUI_Components/SImpleVideo.cs b/Source/Core/GUI_Components/SImpleVideo.cs new file mode 100644 index 00000000..ddca4668 --- /dev/null +++ b/Source/Core/GUI_Components/SImpleVideo.cs @@ -0,0 +1,38 @@ +using System.Collections.Generic; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.GUI_Components +{ + public class SimpleVideo + { + Texture2D[] frames; + double framesPerSecond; + + public SimpleVideo(string texturesPath, double framesPerSecond) + { + var framesList = new List(); + int iterator = 0; + + Texture2D texture; + do + { + texture = ContentFinder.Get($"{texturesPath}/{iterator++}", false); + if (texture != null) + framesList.Add(texture); + } + while (texture != null); + + frames = framesList.ToArray(); + this.framesPerSecond = framesPerSecond; + } + + public void OnGui(Rect rect) + { + if (frames.Length > 0) + GUI.DrawTexture(rect, frames[(int)(Time.time * framesPerSecond) % frames.Length]); + else + Log.Warning("PrisonLabor Warning: no frames found in SimpleVideo"); + } + } +} diff --git a/Source/Core/GameSaves/SaveCleaner.cs b/Source/Core/GameSaves/SaveCleaner.cs new file mode 100644 index 00000000..92815495 --- /dev/null +++ b/Source/Core/GameSaves/SaveCleaner.cs @@ -0,0 +1,266 @@ +using PrisonLabor.Constants; +using PrisonLabor.Core.GUI_Components; +using PrisonLabor.Core.LaborArea; +using PrisonLabor.Core.Needs; +using RimWorld; +using System; +using System.Collections.Generic; +using System.IO; +using System.Xml; +using Verse; + +namespace PrisonLabor.Core.GameSaves +{ + public static class SaveCleaner + { + public static void BackupSavegame(string fileName) + { + string savegamePath = GenFilePaths.FilePathForSavedGame(fileName); + string backupPath = GetFilePathForBackup(savegamePath); + + File.Copy(savegamePath, backupPath, false); + Log.Message($"Save copied to \"{backupPath}\""); + } + + public static void RemoveFromSave(string fileName) + { + LongEventHandler.QueueLongEvent( + () => UpdateFile(fileName), + "Removing", + false, + (e) => OnError(e) + ); + } + + private static void UpdateFile(string fileName) + { + string filePath = GenFilePaths.FilePathForSavedGame(fileName); + + XmlElement xmlNode; + using (StreamReader streamReader = new StreamReader(filePath)) + { + using (XmlTextReader xmlTextReader = new XmlTextReader(streamReader)) + { + var XmlDocument = new XmlDocument(); + XmlDocument.Load(xmlTextReader); + xmlNode = XmlDocument.DocumentElement; + } + } + + UpdateData(xmlNode); + + using (FileStream saveStream = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None)) + { + var xmlWriterSettings = new XmlWriterSettings(); + xmlWriterSettings.Indent = true; + xmlWriterSettings.IndentChars = "\t"; + using (XmlWriter writer = XmlWriter.Create(saveStream, xmlWriterSettings)) + { + writer.WriteStartDocument(); + writer.WriteNode(xmlNode.CreateNavigator(), false); + } + } + + Log.Message($"Save'{fileName}' converted successfuly"); + } + + private static void UpdateData(XmlElement xmlNode) + { + List removalBuffer = new List(); + XmlNode curNode = xmlNode; + + #region Meta + var metaNode = xmlNode["meta"]; + + // Meta.ModIds & Meta.ModNames + XmlNode modIdsNode = metaNode["modIds"], modNamesNode = metaNode["modNames"]; + for (int i = 0; i < modIdsNode.ChildNodes.Count; i++) + { + var modNode = modIdsNode.ChildNodes[i]; + + if (modNode.InnerText == "972057888" || modNode.InnerText == "PrisonLabor") + { + modIdsNode.RemoveChild(modIdsNode.ChildNodes[i]); + modNamesNode.RemoveChild(modNamesNode.ChildNodes[i]); + break; + } + } + + // Remove version of PL + var plVersionInfo = metaNode["PrisonLaborVersion"]; + if (plVersionInfo != null) + metaNode.RemoveChild(plVersionInfo); + #endregion + + #region Game + var gameNode = xmlNode["game"]; + + // Game.Tutor + string[] conceptDefs = { "PrisonLabor_Indroduction", "PrisonLabor_Motivation", "PrisonLabor_Growing", "PrisonLabor_Management", "PrisonLabor_Timetable" }; + + var tutorNode = gameNode["tutor"]; + //var activeLessonsNode = tutorNode["activeLesson"]; + var learningReadoutNode = tutorNode["learningReadout"]; + if (learningReadoutNode["activeConcepts"].HasChildNodes) + { + removalBuffer.Clear(); + foreach (XmlNode concept in learningReadoutNode["activeConcepts"].ChildNodes) + { + foreach (string conceptDef in conceptDefs) + { + if (concept.InnerText == conceptDef) + removalBuffer.Add(concept); + } + } + foreach (var concept in removalBuffer) + learningReadoutNode["activeConcepts"].RemoveChild(concept); + } + if (learningReadoutNode["selectedConcept"] != null) + { + removalBuffer.Clear(); + foreach (string conceptDef in conceptDefs) + { + if (learningReadoutNode["selectedConcept"].InnerText == conceptDef) + learningReadoutNode.RemoveChild(learningReadoutNode["selectedConcept"]); + } + } + //var tutorialStateNode = tutorNode["tutorialState"]; + + // Game.Maps + foreach (XmlNode mapNode in gameNode["maps"].ChildNodes) + { + // Game.Maps.AreaManager + var areaManagerNode = mapNode["areaManager"]; + + if (areaManagerNode["areas"] != null && areaManagerNode["areas"].HasChildNodes) + { + removalBuffer.Clear(); + foreach (XmlNode areaNode in areaManagerNode["areas"].ChildNodes) + { + if (areaNode.Attributes["Class"].Value == typeof(Area_Labor).FullName) + { + removalBuffer.Add(areaNode); + } + } + foreach (var node in removalBuffer) + areaManagerNode["areas"].RemoveChild(node); + } + + //Game.Maps.Components + var components = mapNode["components"]; + removalBuffer.Clear(); + foreach (XmlNode component in components) + { + if (component.Attributes["Class"].Value == typeof(PawnIcons).FullName) + removalBuffer.Add(component); + } + foreach (var item in removalBuffer) + components.RemoveChild(item); + } + + // TODO bills + + // Interaction Mode + string[] interactions = { PL_DefOf.PrisonLabor_workOption.defName, PL_DefOf.PrisonLabor_workAndRecruitOption.defName }; + + foreach (var guestTracker in gameNode.GetEveryNode("guest")) + { + var interactionMode = guestTracker["interactionMode"]; + if (interactionMode != null) + { + foreach (string interaction in interactions) + { + if (interactionMode.InnerText == interaction) + interactionMode.InnerText = PrisonerInteractionModeDefOf.NoInteraction.defName; + } + } + } + + + // Remove Heddifs + foreach (var needTracker in gameNode.GetEveryNode("needs")) + { + var needs = needTracker["needs"]; + if (needs != null) + { + + if (needs != null && needs.HasChildNodes) + { + removalBuffer.Clear(); + foreach (XmlNode need in needs.ChildNodes) + { + if (need.Attributes["Class"].Value == typeof(Need_Motivation).FullName) + removalBuffer.Add(need); + else if (need.Attributes["Class"].Value == typeof(Need_Treatment).FullName) + removalBuffer.Add(need); + } + foreach (var node in removalBuffer) + needs.RemoveChild(node); + } + } + } + + // Remove Heddifs + foreach (var hediffSet in gameNode.GetEveryNode("hediffSet")) + { + var hediffs = hediffSet["hediffs"]; + + if (hediffs != null && hediffs.HasChildNodes) + { + removalBuffer.Clear(); + foreach (XmlNode hediff in hediffs.ChildNodes) + { + if (hediff["def"].InnerText == "PrisonLabor_PrisonerChains") + { + removalBuffer.Add(hediff); + } + } + foreach (var node in removalBuffer) + hediffs.RemoveChild(node); + } + } + #endregion + } + + private static IEnumerable GetEveryNode(this XmlNode rootElement, string nodeName) + { + foreach (XmlNode node in rootElement.ChildNodes) + { + if (node.Name.Equals(nodeName)) + yield return node; + if (node.HasChildNodes) + { + foreach (XmlNode childNode in node.GetEveryNode(nodeName)) + yield return childNode; + } + } + } + + private static void OnError(Exception e) + { + Log.Error(e.ToString()); + } + + private static string GetFilePathForBackup(string filePath) + { + string originFilePathWithoutExtension = Path.GetDirectoryName(filePath) + @"\" + Path.GetFileNameWithoutExtension(filePath); + + string backupFileCoreString = originFilePathWithoutExtension + "_Backup"; + + string backupFilePathFinal = backupFileCoreString + ".rws"; + + if (!File.Exists(backupFilePathFinal)) + return backupFilePathFinal; + + for (int i = 1; i < int.MaxValue; i++) + { + backupFilePathFinal = backupFileCoreString + i.ToString() + ".rws"; + + if (!File.Exists(backupFilePathFinal)) + return backupFilePathFinal; + } + + throw new IndexOutOfRangeException(); + } + } +} diff --git a/Source/Core/GameSaves/SaveUpgrader.cs b/Source/Core/GameSaves/SaveUpgrader.cs new file mode 100644 index 00000000..55e506a1 --- /dev/null +++ b/Source/Core/GameSaves/SaveUpgrader.cs @@ -0,0 +1,47 @@ +using PrisonLabor.Core.GUI_Components; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Needs; +using System; +using System.Xml; +using Verse; +using Version = PrisonLabor.Core.Meta.Version; + +namespace PrisonLabor.Core.GameSaves +{ + static class SaveUpgrader + { + public static void Upgrade() + { + if (Scribe.mode == LoadSaveMode.LoadingVars || Scribe.mode == LoadSaveMode.ResolvingCrossRefs || Scribe.mode == LoadSaveMode.PostLoadInit) + { + if (VersionUtility.VersionOfSaveFile == VersionUtility.versionNumber) + return; + + LongEventHandler.SetCurrentEventText("PrisonLabor_UpgradeSaveProcessMessage".Translate()); + + var xmlNode = Scribe.loader.curXmlParent; + + if (VersionUtility.VersionOfSaveFile < Version.v0_10_0) + UpTo_0_10(xmlNode); + } + } + + private static void UpTo_0_10(XmlNode xml) + { + // Replace job trackers + xml.InnerXml = xml.InnerXml.Replace("", ""); + + // Replace job defs + xml.InnerXml = xml.InnerXml.Replace("PrisonLabor_DeliverFood_Tweak", "DeliverFood"); + + // Replace need classes + xml.InnerXml = xml.InnerXml.Replace("PrisonLabor.Need_Motivation", typeof(Need_Motivation).FullName); + + // Replace need classes + xml.InnerXml = xml.InnerXml.Replace("PrisonLabor.Need_Treatment", typeof(Need_Treatment).FullName); + + // Replace need classes + xml.InnerXml = xml.InnerXml.Replace("PrisonLabor.MapComponent_Icons", typeof(PawnIcons).FullName); + } + } +} diff --git a/Source/HediffGiver_PrisonersChains.cs b/Source/Core/Hediffs/HediffGiver_PrisonersChains.cs similarity index 95% rename from Source/HediffGiver_PrisonersChains.cs rename to Source/Core/Hediffs/HediffGiver_PrisonersChains.cs index 02f06706..3c3ace79 100644 --- a/Source/HediffGiver_PrisonersChains.cs +++ b/Source/Core/Hediffs/HediffGiver_PrisonersChains.cs @@ -1,11 +1,11 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Text; using Verse; using RimWorld; -namespace PrisonLabor +namespace PrisonLabor.Core.Hediffs { class HediffGiver_PrisonersChains : HediffGiver { diff --git a/Source/HediffManager.cs b/Source/Core/Hediffs/HediffManager.cs similarity index 89% rename from Source/HediffManager.cs rename to Source/Core/Hediffs/HediffManager.cs index 6ccf0870..20198441 100644 --- a/Source/HediffManager.cs +++ b/Source/Core/Hediffs/HediffManager.cs @@ -1,11 +1,11 @@ -using RimWorld; +using RimWorld; using System; using System.Collections.Generic; using System.Linq; using System.Text; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.Hediffs { public static class HediffManager { diff --git a/Source/Core/Incidents/IncidentWorker_ResocializationOffer.cs b/Source/Core/Incidents/IncidentWorker_ResocializationOffer.cs new file mode 100644 index 00000000..8624ebfe --- /dev/null +++ b/Source/Core/Incidents/IncidentWorker_ResocializationOffer.cs @@ -0,0 +1,66 @@ +using System; +using UnityEngine; +using Verse; +using RimWorld; +using Verse.AI.Group; +using System.Collections.Generic; +using PrisonLabor.Constants; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Other; + +namespace PrisonLabor.Core.Incidents +{ + public class IncidentWorker_ResocializationOffer : IncidentWorker + { + protected override bool CanFireNowSub(IncidentParms parms) + { + Map map = (Map)parms.target; + + foreach (var pawn in map.mapPawns.PrisonersOfColony) + { + if (pawn.IsColonist) + continue; + + var treatment = pawn.needs.TryGetNeed(); + if (treatment == null) + continue; + + if (treatment.CurLevel >= BGP.ResocializationLevel) + return true; + } + + return false; + } + + protected override bool TryExecuteWorker(IncidentParms parms) + { + Map map = (Map)parms.target; + Pawn prisoner = null; + var affectedPawns = new List(map.mapPawns.PrisonersOfColony); + foreach (var pawn in map.mapPawns.PrisonersOfColony) + { + if (pawn.IsColonist) + continue; + + var treatment = pawn.needs.TryGetNeed(); + if (treatment == null) + continue; + + if (treatment.CurLevel >= BGP.ResocializationLevel) + { + treatment.ResocializationReady = true; + parms.faction = pawn.Faction; + prisoner = pawn; + break; + } + } + if (prisoner == null) + return false; + + Tutorials.Treatment(); + + SendStandardLetter(prisoner, null, new string[] { prisoner.Name.ToStringShort, prisoner.Faction.Name }); + return true; + } + } +} \ No newline at end of file diff --git a/Source/Core/Incidents/IncidentWorker_Revolt.cs b/Source/Core/Incidents/IncidentWorker_Revolt.cs new file mode 100644 index 00000000..16e405d2 --- /dev/null +++ b/Source/Core/Incidents/IncidentWorker_Revolt.cs @@ -0,0 +1,179 @@ +using System; +using UnityEngine; +using Verse; +using RimWorld; +using Verse.AI.Group; +using System.Collections.Generic; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Other; + +namespace PrisonLabor.Core.Incidents +{ + public class IncidentWorker_Revolt : IncidentWorker + { + private const float MaxMotivationToStart = 0.4f; + private const float MaxTreatmentToStart = 3.5f; + + protected override bool CanFireNowSub(IncidentParms parms) + { + Map map = parms.target as Map; + + bool enemyFaction = false; + float accumulatedMotivation = 0.0f; + float accumulatedTreatment = 0.0f; + int prisonersCount = 0; + + // Calculate values + foreach (var pawn in map.mapPawns.PrisonersOfColony) + { + if (pawn.Faction.HostileTo(Faction.OfPlayer)) + enemyFaction = true; + + var need = pawn.needs.TryGetNeed(); + if (need == null) + continue; + accumulatedMotivation += need.CurLevel; + prisonersCount++; + } + + // If motivation is too high + if (accumulatedMotivation / prisonersCount >= MaxMotivationToStart) + return false; + // If treatment is too good + if (accumulatedTreatment / prisonersCount >= MaxTreatmentToStart) + return false; + + return enemyFaction && PrisonLaborPrefs.EnableRevolts; + } + + protected override bool TryExecuteWorker(IncidentParms parms) + { + try + { + Map map = (Map)parms.target; + Pawn t = null; + var affectedPawns = new List(map.mapPawns.PrisonersOfColony); + + // Calculate chance for blocking incident if prisoners are treated good + float treatment = 0f; + float chance = 0f; + foreach (Pawn pawn in affectedPawns) + if (pawn.needs.TryGetNeed() != null) + treatment += (float)pawn.needs.TryGetNeed().CurCategory; + treatment = treatment / affectedPawns.Count; + if (treatment < 0.5) + chance = 1f; + else if (treatment < 1.5) + chance = 0.95f; + else if (treatment < 2.5) + chance = 0.5f; + else if (treatment < 3.5) + chance = 0.1f; + + // When incident is forced, log instead of blocking + if (!parms.forced) + { + if (Prefs.DevMode) + { + string msg = $"Prison Labor: Revolt blocking chance is currently equal to {chance * 100}% (overall treatment = {treatment}). Rolling ..."; + Log.Message(msg); + } + if (UnityEngine.Random.value > chance) + return false; + } + + + foreach (Pawn pawn in affectedPawns) + { + if (pawn.Faction.HostileTo(Faction.OfPlayer)) + { + parms.faction = pawn.Faction; + t = pawn; + break; + } + } + float points = parms.points; + int prisonersLeft = affectedPawns.Count; + foreach (Pawn pawn in affectedPawns) + { + pawn.ClearMind(); + pawn.guest.SetGuestStatus(null, false); + pawn.SetFaction(parms.faction); + + ThingWithComps weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("MeleeWeapon_Knife"), ThingDefOf.WoodLog) as ThingWithComps; + ThingWithComps ammo = null; + int pointsToRemove = 0; + + if (parms.points >= 1000) + weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("MeleeWeapon_Knife"), ThingDefOf.Steel) as ThingWithComps; + + if (points >= 1000) + { + // If combat extended is enabled + if (DefDatabase.GetNamed("Weapon_GrenadeStickBomb", false) != null) + { + if (UnityEngine.Random.value > 0.5f) + { + weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeStickBomb")) as ThingWithComps; + ammo = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeStickBomb")) as ThingWithComps; + ammo.stackCount = 6; + } + else + { + weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeMolotov")) as ThingWithComps; + ammo = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeMolotov")) as ThingWithComps; + ammo.stackCount = 6; + } + } + else + { + weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeMolotov")) as ThingWithComps; + } + + pointsToRemove = 500; + } + else if (points >= 500) + { + weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("Bow_Short")) as ThingWithComps; + + if (DefDatabase.GetNamed("Ammo_Arrow_Stone", false) != null) + { + ammo = ThingMaker.MakeThing(DefDatabase.GetNamed("Ammo_Arrow_Stone")) as ThingWithComps; + ammo.stackCount = 30; + } + + pointsToRemove = 100; + } + else if (points >= 300) + { + weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("MeleeWeapon_Club"), ThingDefOf.Granite) as ThingWithComps; + pointsToRemove = 100; + } + + if (pawn.equipment.Primary == null) + { + pawn.equipment.AddEquipment(weapon); + if (ammo != null) + pawn.inventory.innerContainer.TryAdd(ammo); + points -= pointsToRemove; + } + } + var lordJob = new LordJob_AssaultColony(parms.faction, true, true, false, true, true); + //TODO old code: + LordMaker.MakeNewLord(parms.faction, lordJob/*(new RaidStrategyWorker_ImmediateAttackSmart()).MakeLordJob(parms, map)*/, map, affectedPawns); + SendStandardLetter(t, null, new string[] { t.Name.ToStringShort, t.Faction.Name }); + Find.TickManager.slower.SignalForceNormalSpeedShort(); + + Tutorials.Treatment(); + + return true; + } + catch(Exception e) + { + Log.Error($"PrisonLabor: Erron on executing Revolt Incident: {e.ToString()}"); + return false; + } + } + } +} \ No newline at end of file diff --git a/Source/Core/Incidents/IncidentWorker_Suicide.cs b/Source/Core/Incidents/IncidentWorker_Suicide.cs new file mode 100644 index 00000000..e39b3771 --- /dev/null +++ b/Source/Core/Incidents/IncidentWorker_Suicide.cs @@ -0,0 +1,71 @@ +using System; +using UnityEngine; +using Verse; +using RimWorld; +using Verse.AI.Group; +using System.Collections.Generic; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Other; + +namespace PrisonLabor.Core.Incidents +{ + public class IncidentWorker_Suicide : IncidentWorker + { + protected override bool CanFireNowSub(IncidentParms parms) + { + Map map = parms.target as Map; + + foreach (var pawn in map.mapPawns.PrisonersOfColony) + { + if (pawn.IsColonist) + continue; + + var need = pawn.needs.TryGetNeed(); + if (need == null) + continue; + + if (need.CurCategory >= TreatmentCategory.Bad) + return true; + } + + return false; + } + + protected override bool TryExecuteWorker(IncidentParms parms) + { + Map map = (Map)parms.target; + var affectedPawns = new List(map.mapPawns.PrisonersOfColony); + foreach (var pawn in map.mapPawns.PrisonersOfColony) + { + if (pawn.IsColonist) + continue; + + var need = pawn.needs.TryGetNeed(); + if (need == null) + continue; + + if (need.CurCategory >= TreatmentCategory.Bad) + { + // If treatment is only bad reduce chance by 50% + if (need.CurCategory == TreatmentCategory.Bad && !parms.forced) + { + if (UnityEngine.Random.value < 0.5f) + continue; + } + + SendStandardLetter(new TargetInfo(pawn.Position, pawn.Map), null, new string[] { pawn.Name.ToStringShort }); + parms.faction = pawn.Faction; + + DamageInfo dinfo = new DamageInfo(DamageDefOf.Cut, 29, 0, 0, pawn, pawn.RaceProps.body.AllParts.Find(p => p.def == BodyPartDefOf.Neck)); + while (!pawn.Dead) + pawn.TakeDamage(dinfo); + + Tutorials.Treatment(); + + return true; + } + } + return false; + } + } +} \ No newline at end of file diff --git a/Source/Area_Labor.cs b/Source/Core/LaborArea/Area_Labor.cs similarity index 89% rename from Source/Area_Labor.cs rename to Source/Core/LaborArea/Area_Labor.cs index 44599812..87744b49 100644 --- a/Source/Area_Labor.cs +++ b/Source/Core/LaborArea/Area_Labor.cs @@ -1,7 +1,7 @@ -using UnityEngine; +using UnityEngine; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.LaborArea { internal class Area_Labor : Area { diff --git a/Source/Designator_AreaLabor.cs b/Source/Core/LaborArea/Designator_AreaLabor.cs similarity index 96% rename from Source/Designator_AreaLabor.cs rename to Source/Core/LaborArea/Designator_AreaLabor.cs index c30bcd99..608c46b8 100644 --- a/Source/Designator_AreaLabor.cs +++ b/Source/Core/LaborArea/Designator_AreaLabor.cs @@ -1,9 +1,10 @@ -using System.Collections.Generic; +using System.Collections.Generic; +using PrisonLabor.Core.Other; using RimWorld; using UnityEngine; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.LaborArea { [StaticConstructorOnStartup] public abstract class Designator_AreaLabor : Designator_Area diff --git a/Source/Designator_AreaLaborClear.cs b/Source/Core/LaborArea/Designator_AreaLaborClear.cs similarity index 92% rename from Source/Designator_AreaLaborClear.cs rename to Source/Core/LaborArea/Designator_AreaLaborClear.cs index b068b003..fd1b1d45 100644 --- a/Source/Designator_AreaLaborClear.cs +++ b/Source/Core/LaborArea/Designator_AreaLaborClear.cs @@ -1,8 +1,8 @@ -using RimWorld; +using RimWorld; using UnityEngine; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.LaborArea { internal class Designator_AreaLaborClear : Designator_AreaLabor { diff --git a/Source/Designator_AreaLaborExpand.cs b/Source/Core/LaborArea/Designator_AreaLaborExpand.cs similarity index 92% rename from Source/Designator_AreaLaborExpand.cs rename to Source/Core/LaborArea/Designator_AreaLaborExpand.cs index bdd0029a..cc434fb8 100644 --- a/Source/Designator_AreaLaborExpand.cs +++ b/Source/Core/LaborArea/Designator_AreaLaborExpand.cs @@ -1,8 +1,8 @@ -using RimWorld; +using RimWorld; using UnityEngine; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.LaborArea { internal class Designator_AreaLaborExpand : Designator_AreaLabor { diff --git a/Source/WorkSettings.cs b/Source/Core/LaborWorkSettings/WorkSettings.cs similarity index 95% rename from Source/WorkSettings.cs rename to Source/Core/LaborWorkSettings/WorkSettings.cs index 6a3f65c6..711a8c36 100644 --- a/Source/WorkSettings.cs +++ b/Source/Core/LaborWorkSettings/WorkSettings.cs @@ -1,11 +1,13 @@ -using RimWorld; +using PrisonLabor.Constants; +using PrisonLabor.Core.Meta; +using RimWorld; using System; using System.Collections.Generic; using System.Linq; using System.Text; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.LaborWorkSettings { public static class WorkSettings { @@ -24,7 +26,7 @@ public static List AvailableWorkTypes _availableWorkTypes.Add(worktype); _availableWorkTypes.Remove(DefDatabase.GetNamed("Warden")); - _availableWorkTypes.Remove(PrisonLaborDefOf.PrisonLabor_Jailor); + _availableWorkTypes.Remove(PL_DefOf.PrisonLabor_Jailor); } return _availableWorkTypes; } diff --git a/Source/Prefs.cs b/Source/Core/Meta/Prefs.cs similarity index 91% rename from Source/Prefs.cs rename to Source/Core/Meta/Prefs.cs index 0e6a08b6..5eddf52f 100644 --- a/Source/Prefs.cs +++ b/Source/Core/Meta/Prefs.cs @@ -1,9 +1,12 @@ -using System; +using PrisonLabor.Core.LaborWorkSettings; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Other; +using System; using System.IO; using System.Xml.Linq; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.Meta { public static class PrisonLaborPrefs { @@ -105,12 +108,15 @@ public static bool EnableRevolts } } - public static bool DisableMod + public static bool ShowTreatmentHappiness { - get { return data.disable_mod; } + get + { + return data.show_treatment_happiness; + } set { - data.disable_mod = value; + data.show_treatment_happiness = value; Apply(); } } @@ -145,7 +151,7 @@ public static void Init() public static void Save() { - Tutorials.UpdateTutorialFlags(); + Other.Tutorials.UpdateTutorialFlags(); try { var xDocument = new XDocument(); @@ -165,6 +171,7 @@ public static void Apply() data.Apply(); WorkSettings.DataString = AllowedWorkTypes; Tutorials.Apply(); + Need_Treatment.ShowOnList = ShowTreatmentHappiness; } public static void RestoreToDefault() diff --git a/Source/PrefsData.cs b/Source/Core/Meta/PrefsData.cs similarity index 56% rename from Source/PrefsData.cs rename to Source/Core/Meta/PrefsData.cs index 9507fcf0..1dbe41f8 100644 --- a/Source/PrefsData.cs +++ b/Source/Core/Meta/PrefsData.cs @@ -1,6 +1,6 @@ -using System; +using System; -namespace PrisonLabor +namespace PrisonLabor.Core.Meta { public class PrisonLaborPrefsData { @@ -12,8 +12,7 @@ public class PrisonLaborPrefsData public bool enable_motivation_mechanics = true; public bool enable_motivation_icons = true; public bool enable_revolts = true; - - public bool disable_mod = false; + public bool show_treatment_happiness = false; public Version last_version = Version.v0_0; public bool show_news = true; @@ -27,48 +26,6 @@ public void Apply() } } - public enum Version - { - v0_0, - v0_1, - v0_2, - v0_3, - v0_4, - v0_5, - v0_6, - v0_7, - v0_7_dev1, - v0_7_dev2, - v0_7_dev3, - v0_7_dev4, - v0_7_dev5, - v0_8_0, - v0_8_1, - v0_8_2, - v0_8_3, - v0_8_4, - v0_8_5, - v0_8_6, - v0_8_7, - v0_8_8, - v0_8_9, - v0_8_9_1, - v0_8_9_2, - v0_8_9_4, - v0_8_9_5, - v0_9_0, - v0_9_1, - v0_9_2, - v0_9_3, - v0_9_4, - v0_9_5, - v0_9_6, - v0_9_8, - v0_9_9, - v0_9_10, - v0_9_11 - } - [Flags] public enum TutorialFlag { @@ -79,5 +36,6 @@ public enum TutorialFlag Managment = 0x8, Timetable = 0x10, LaborAreaWarning = 0x20, + Treatment = 0x40, } } \ No newline at end of file diff --git a/Source/Core/Meta/Version.cs b/Source/Core/Meta/Version.cs new file mode 100644 index 00000000..5856c083 --- /dev/null +++ b/Source/Core/Meta/Version.cs @@ -0,0 +1,51 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace PrisonLabor.Core.Meta +{ + public enum Version + { + v0_0, + v0_1, + v0_2, + v0_3, + v0_4, + v0_5, + v0_6, + v0_7, + v0_7_dev1, + v0_7_dev2, + v0_7_dev3, + v0_7_dev4, + v0_7_dev5, + v0_8_0, + v0_8_1, + v0_8_2, + v0_8_3, + v0_8_4, + v0_8_5, + v0_8_6, + v0_8_7, + v0_8_8, + v0_8_9, + v0_8_9_1, + v0_8_9_2, + v0_8_9_4, + v0_8_9_5, + v0_9_0, + v0_9_1, + v0_9_2, + v0_9_3, + v0_9_4, + v0_9_5, + v0_9_6, + v0_9_8, + v0_9_9, + v0_9_10, + v0_9_11, + v0_10_0, + v0_10_1, + } +} diff --git a/Source/Core/Meta/VersionUtility.cs b/Source/Core/Meta/VersionUtility.cs new file mode 100644 index 00000000..374fa1c3 --- /dev/null +++ b/Source/Core/Meta/VersionUtility.cs @@ -0,0 +1,55 @@ +using PrisonLabor.Core.Windows; + +namespace PrisonLabor.Core.Meta +{ + class VersionUtility + { + public const Version versionNumber = Version.v0_10_1; + public const string versionString = "0.10.1"; + + public static Version VersionOfSaveFile { get; set; } + + public static void CheckVersion() + { + // Update actual version + if (PrisonLaborPrefs.Version == Version.v0_0) + { + PrisonLaborPrefs.Version = versionNumber; + PrisonLaborPrefs.LastVersion = versionNumber; + } + else if (PrisonLaborPrefs.Version != versionNumber) + { + PrisonLaborPrefs.Version = versionNumber; + } + + // Client has new version + if (PrisonLaborPrefs.LastVersion < versionNumber) + { + // Show version news + NewsWindow.LastVersionString = GetVersionString(PrisonLaborPrefs.LastVersion); + NewsWindow.AutoShow = true; + + // Dev version fix, it can be removed in future + // There is no changelog for 0.10 so it will skip it, and display all changes + if (PrisonLaborPrefs.LastVersion == Version.v0_10_0) + { + NewsWindow.LastVersionString = GetVersionString(Version.v0_9_11); + } + + // Pre 0.9.4 + if (PrisonLaborPrefs.LastVersion < Version.v0_9_4) + { + CompatibilityPatches.OlderVersions.Pre_v0_9_4(); + } + } + + PrisonLaborPrefs.Version = versionNumber; + PrisonLaborPrefs.Save(); + } + + public static string GetVersionString(Version version) + { + return version.ToString().Replace("_", ".").Substring(1); + } + } +} diff --git a/Source/Core/Needs/Need_Motivation.cs b/Source/Core/Needs/Need_Motivation.cs new file mode 100644 index 00000000..4eb2da41 --- /dev/null +++ b/Source/Core/Needs/Need_Motivation.cs @@ -0,0 +1,140 @@ +using System.Collections.Generic; +using System.Text; +using PrisonLabor.Constants; +using PrisonLabor.Core.Trackers; +using PrisonLabor.HarmonyPatches; +using RimWorld; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.Needs +{ + public class Need_Motivation : Need + { + private const float LazyLevel = 0.2f; + private const float NeedInspirationLevel = 0.5f; + + public float PercentageThreshNeedInsipration => NeedInspirationLevel; + + public float PercentageThreshLazy => LazyLevel; + //TODO change to lazy category? + public HungerCategory CurCategory => 0; + + public static NeedDef Def => PL_DefOf.PrisonLabor_Motivation; + + public bool Motivated => _GUIChangeArrow > 0; + + private int _GUIChangeArrow; + public override int GUIChangeArrow => _GUIChangeArrow; + + /// + /// Indicates whenever pawn should be motivated. + /// This property purpose is that pawn should be only motivated in semi-auto mode, + /// which means after getting to full, it should wait to drop a bit before recharging again. + /// + public bool ShouldToBeMotivated { get; private set; } + + /// + /// Indicates whenever pawn is currently working, and his motivation is decreasing by laziness rate. + /// + public bool IsPrisonerWorking { get; set; } + + /// + /// Indicates whenever pawn is lazy and stopped working by lack of motivation. + /// + public bool IsLazy { get; private set; } + + public Need_Motivation(Pawn pawn) : base(pawn) { } + + public override void SetInitialLevel() + { + CurLevelPercentage = 1.0f; + IsPrisonerWorking = false; + } + + public override void NeedInterval() + { + // Update value of need + CurLevel += GetChangePoints(); + + // Set NeedToBeMotivated + if (CurLevel == MaxLevel) + ShouldToBeMotivated = false; + else if (CurLevel <= NeedInspirationLevel) + ShouldToBeMotivated = true; + + // Set IsLazy + if (CurLevel <= LazyLevel && _GUIChangeArrow <= 0) + IsLazy = true; + else + IsLazy = false; + } + + private float GetChangePoints() + { + if (pawn.IsPrisoner && pawn.IsPrisonerOfColony) + { + if (pawn.GetRoomGroup() != null) + { + var value = InspirationTracker.GetInsiprationValue(pawn, true); + + if (PrisonLaborUtility.LaborEnabled(pawn)) + { + if (IsPrisonerWorking) + { + value -= BGP.Laziness_LazyRate; + if (HealthAIUtility.ShouldSeekMedicalRest(pawn)) + value -= BGP.Laziness_HealthRate; + value -= (int)pawn.needs.food.CurCategory * BGP.Laziness_HungryRate; + value -= (int)pawn.needs.rest.CurCategory * BGP.Laziness_TiredRate; + } + else if (pawn.timetable != null && pawn.timetable.CurrentAssignment == TimeAssignmentDefOf.Joy) + { + value += BGP.Laziness_JoyRate; + } + } + + _GUIChangeArrow = value.CompareTo(0.0f); + return value; + } + else + { + _GUIChangeArrow = 0; + return 0.0f; + } + } + else + { + _GUIChangeArrow = 1; + return +0.01f; + } + } + + public override string GetTipString() + { + var stringBuilder = new StringBuilder(); + stringBuilder.AppendLine(base.GetTipString()); + stringBuilder.AppendLine(); + stringBuilder.Append("PrisonLabor_WardenResponseThreshold".Translate()); + stringBuilder.AppendLine($": {PercentageThreshNeedInsipration.ToStringPercent()}"); + stringBuilder.Append("PrisonLabor_StoppingWorkThreshold".Translate()); + stringBuilder.AppendLine($": {PercentageThreshLazy.ToStringPercent()}"); + return stringBuilder.ToString(); + } + + public override void DrawOnGUI(Rect rect, int maxThresholdMarkers = 2147483647, float customMargin = -1f, bool drawArrows = true, bool doTooltip = true) + { + if (threshPercents == null) + threshPercents = new List(); + threshPercents.Clear(); + threshPercents.Add(PercentageThreshLazy); + threshPercents.Add(PercentageThreshNeedInsipration); + base.DrawOnGUI(rect, maxThresholdMarkers, customMargin, drawArrows, doTooltip); + } + + public override void ExposeData() + { + base.ExposeData(); + } + } +} \ No newline at end of file diff --git a/Source/Core/Needs/Need_Treatment.cs b/Source/Core/Needs/Need_Treatment.cs new file mode 100644 index 00000000..b036eb8d --- /dev/null +++ b/Source/Core/Needs/Need_Treatment.cs @@ -0,0 +1,140 @@ +using System.Collections.Generic; +using System.Text; +using PrisonLabor.Constants; +using RimWorld; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.Needs +{ + /// + /// VeryGood: 4 + /// Good: 3 + /// Normal: 2 + /// Bad: 1 + /// VeryBad: 0 + /// + public enum TreatmentCategory : byte + { + VeryGood = 4, + Good = 3, + Normal = 2, + Bad = 1, + VeryBad = 0, + } + + public class Need_Treatment : Need + { + private bool _resocializationReady = false; + + public float PercentageThreshVeryGood => 0.85f; + public float PercentageThreshGood => 0.65f; + public float PercentageThreshNormal => 0.35f; + public float PercentageThreshBad => 0.15f; + + public override int GUIChangeArrow => 0; + + public static NeedDef Def => PL_DefOf.PrisonLabor_Treatment; + + public bool ResocializationReady + { + get => _resocializationReady; + set { _resocializationReady = value; } + } + + public TreatmentCategory CurCategory + { + get + { + if (CurLevelPercentage < PercentageThreshBad) + return TreatmentCategory.VeryBad; + else if (CurLevelPercentage < PercentageThreshNormal) + return TreatmentCategory.Bad; + else if (CurLevelPercentage < PercentageThreshGood) + return TreatmentCategory.Normal; + else if (CurLevelPercentage < PercentageThreshVeryGood) + return TreatmentCategory.Good; + else + return TreatmentCategory.VeryGood; + } + } + + public static bool ShowOnList + { + get + { + return PL_DefOf.PrisonLabor_Treatment.showOnNeedList; + } + set + { + PL_DefOf.PrisonLabor_Treatment.showOnNeedList = value; + } + } + + public Need_Treatment(Pawn pawn) : base(pawn) { } + + public override void SetInitialLevel() + { + CurLevelPercentage = 0.5f; + } + + public override void NeedInterval() + { + // Joy + if (pawn.timetable != null && pawn.timetable.CurrentAssignment == TimeAssignmentDefOf.Joy) + CurLevel += BGP.JoyRate; + + // Status + var hunger = pawn.needs.TryGetNeed(); + + int statusScore = 0; + if (hunger.CurCategory < HungerCategory.UrgentlyHungry) + statusScore += 5; + if (hunger.CurCategory < HungerCategory.Hungry) + statusScore += 5; + statusScore -= (int)pawn.health.hediffSet.PainTotal / 10; + if (pawn.health.HasHediffsNeedingTend()) + statusScore -= 7; + + CurLevel += statusScore * BGP.StatusMultiplier; + + + // Labor + var motivation = pawn.needs.TryGetNeed(); + if (motivation != null && motivation.IsPrisonerWorking) + CurLevel += BGP.LaborRate; + } + + public override string GetTipString() + { + var stringBuilder = new StringBuilder(); + stringBuilder.AppendLine(base.GetTipString()); + return stringBuilder.ToString(); + } + + public void NotifyPrisonerBeaten(DamageInfo dinfo, bool absorbed) + { + CurLevel += BGP.BeatenHit; + } + + public override void DrawOnGUI(Rect rect, int maxThresholdMarkers = 2147483647, float customMargin = -1f, + bool drawArrows = true, bool doTooltip = true) + { + if (threshPercents == null) + { + threshPercents = new List(); + threshPercents.Add(PercentageThreshBad); + threshPercents.Add(PercentageThreshNormal); + threshPercents.Add(PercentageThreshGood); + threshPercents.Add(PercentageThreshVeryGood); + } + base.DrawOnGUI(rect, maxThresholdMarkers, customMargin, drawArrows, doTooltip); + } + + public override void ExposeData() + { + base.ExposeData(); + Scribe_Values.Look(ref _resocializationReady, "PrisonLabor_resocialization_ready", false, false); + } + } +} \ No newline at end of file diff --git a/Source/Core/Other/ArrestUtility.cs b/Source/Core/Other/ArrestUtility.cs new file mode 100644 index 00000000..eabd184d --- /dev/null +++ b/Source/Core/Other/ArrestUtility.cs @@ -0,0 +1,88 @@ +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using UnityEngine; +using Verse; +using Verse.AI; + +namespace PrisonLabor.Core.Other +{ + public static class ArrestUtility + { + public static void AddArrestOrder(Vector3 clickPos, Pawn pawn, List opts) + { + //TODO this is some copy-pasted example, refactor it so it should add arrest option + IntVec3 c = IntVec3.FromVector3(clickPos); + if (pawn.health.capacities.CapableOf(PawnCapacityDefOf.Manipulation)) + { + foreach (LocalTargetInfo current in GenUI.TargetsAt(clickPos, ForArrest(pawn), true)) + { + LocalTargetInfo dest = current; + bool flag = dest.HasThing && dest.Thing is Pawn && ((Pawn)dest.Thing).IsWildMan(); + if (!pawn.Drafted || flag) + { + if (!pawn.CanReach(dest, PathEndMode.OnCell, Danger.Deadly, false, TraverseMode.ByPawn)) + { + opts.Add(new FloatMenuOption("CannotArrest".Translate() + " (" + "NoPath".Translate() + ")", null, MenuOptionPriority.Default, null, null, 0f, null, null)); + } + else + { + Pawn pTarg = (Pawn)dest.Thing; + Action action = delegate + { + Building_Bed building_Bed = RestUtility.FindBedFor(pTarg, pawn, true, false, false); + if (building_Bed == null) + { + building_Bed = RestUtility.FindBedFor(pTarg, pawn, true, false, true); + } + if (building_Bed == null) + { + Messages.Message("CannotArrest".Translate() + ": " + "NoPrisonerBed".Translate(), pTarg, MessageTypeDefOf.RejectInput, false); + return; + } + Job job = new Job(JobDefOf.Arrest, pTarg, building_Bed); + job.count = 1; + pawn.jobs.TryTakeOrderedJob(job, JobTag.Misc); + if (pTarg.Faction != null && pTarg.Faction != Faction.OfPlayer && !pTarg.Faction.def.hidden) + { + TutorUtility.DoModalDialogIfNotKnown(ConceptDefOf.ArrestingCreatesEnemies); + } + }; + string label = "TryToArrest".Translate(dest.Thing.LabelCap, dest.Thing); + Action action2 = action; + MenuOptionPriority priority = MenuOptionPriority.High; + Thing thing = dest.Thing; + opts.Add(FloatMenuUtility.DecoratePrioritizedTask(new FloatMenuOption(label, action2, priority, null, thing, 0f, null, null), pawn, pTarg, "ReservedBy")); + } + } + } + } + } + + public static TargetingParameters ForArrest(Pawn arrester) + { + return new TargetingParameters + { + canTargetPawns = true, + canTargetBuildings = false, + mapObjectTargetsMustBeAutoAttackable = false, + validator = delegate (TargetInfo targ) + { + if (!targ.HasThing) + { + return false; + } + Pawn pawn = targ.Thing as Pawn; + return pawn != null && pawn != arrester && CanBeArrestedBy(pawn, arrester) && !pawn.Downed; + } + }; + } + + public static bool CanBeArrestedBy(Pawn pawn, Pawn arrester) + { + return pawn.RaceProps.Humanlike && pawn.HostileTo(arrester.Faction) && pawn.CurJob.def == JobDefOf.Flee && (!pawn.IsPrisonerOfColony || !pawn.Position.IsInPrisonCell(pawn.Map)); + } + } +} diff --git a/Source/Core/Other/NewsProvider.cs b/Source/Core/Other/NewsProvider.cs new file mode 100644 index 00000000..babe8298 --- /dev/null +++ b/Source/Core/Other/NewsProvider.cs @@ -0,0 +1,122 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.RegularExpressions; +using System.Xml; +using Verse; + +namespace PrisonLabor.Core.Other +{ + public static class NewsProvider + { + public struct VersionNotes + { + public string version; + public string[] entries; + } + + public static VersionNotes[] allVersionNotes; + + static NewsProvider() + { + try + { + allVersionNotes = GetVersionNotesFromChangelog(Properties.Resources.changelog).ToArray(); + + int iterator = 0; + foreach (var notes in GetVersionNotesFromNewsFeed(Properties.Resources.NewsFeed)) + { + while (allVersionNotes[iterator].version != notes.version && iterator < allVersionNotes.Length) + iterator++; + + if (iterator < allVersionNotes.Length) + { + allVersionNotes[iterator] = notes; + } + else + { + Log.Warning($"PrisonLabor: couldn't find version {notes.version} to alter"); + iterator = 0; + } + } + } + catch (Exception e) + { + Log.Error("PrisonLabor: Failed to initialize news" + e.ToString()); + } + } + + public static IEnumerable NewsAfterVersion(string versionString) + { + bool stop = false; + for (int i = 0; i < allVersionNotes.Length && !stop; i++) + { + if (allVersionNotes[i].version == versionString) + stop = true; + else + yield return allVersionNotes[i]; + } + } + + private static IEnumerable GetVersionNotesFromChangelog(string text) + { + var lines = Regex.Split(text, "\r\n|\r|\n"); + + if (lines.Length < 2) + yield break; + + string currentPatch = lines[0]; + List currentPatchNotes = new List(); + + for (int i = 1; i < lines.Length; i++) + { + string line = lines[i]; + + var match = Regex.Match(line, "^\\*|-|\t"); + + if (match.Success) + { + currentPatchNotes.Add("[-]" + line.Replace(match.Value, "").Trim()); + } + else + { + if (currentPatchNotes.Count > 0) + { + currentPatchNotes.Insert(0, $"[title]Prison Labor v{currentPatch}"); + yield return new VersionNotes() { version = currentPatch, entries = currentPatchNotes.ToArray() }; + } + currentPatch = line; + currentPatchNotes = new List(); + } + } + + // Last iteration + if (currentPatchNotes.Count > 0) + { + currentPatchNotes.Insert(0, $"[title]Prison Labor v{currentPatch}"); + yield return new VersionNotes() { version = currentPatch, entries = currentPatchNotes.ToArray() }; + } + } + + private static IEnumerable GetVersionNotesFromNewsFeed(string xml) + { + XmlDocument xmlDocument = new XmlDocument(); + xmlDocument.LoadXml(xml); + foreach (XmlNode patch in xmlDocument.DocumentElement["patches"].ChildNodes) + { + if (patch.Name == "patch") + { + var entries = new List(); + entries.Add($"[title]{patch["title"].InnerXml}"); + foreach (XmlNode item in patch["items"].ChildNodes) + entries.Add(item.InnerXml); + yield return new VersionNotes() + { + version = patch.Attributes["version"].Value, + entries = entries.ToArray(), + }; + } + } + } + } +} diff --git a/Source/PrisonerFoodReservation.cs b/Source/Core/Other/PrisonerFoodReservation.cs similarity index 72% rename from Source/PrisonerFoodReservation.cs rename to Source/Core/Other/PrisonerFoodReservation.cs index 1eecf2b4..3af288c1 100644 --- a/Source/PrisonerFoodReservation.cs +++ b/Source/Core/Other/PrisonerFoodReservation.cs @@ -1,18 +1,18 @@ -using System.Collections.Generic; +using System.Collections.Generic; using RimWorld; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.Other { internal class PrisonerFoodReservation { private static readonly Dictionary reservation = new Dictionary(); - public static bool isReserved(Thing t) + public static bool IsReserved(Thing t) { Pawn p; reservation.TryGetValue(t, out p); - if (p != null && p.GetRoom() == t.GetRoom() && p.needs.food.CurCategory != HungerCategory.Fed) + if (p != null && t!= null && p.GetRoom() == t.GetRoom() && p.needs != null && p.needs.food != null && p.needs.food.CurCategory != HungerCategory.Fed) return true; return false; } @@ -32,7 +32,7 @@ private static void clearEatenFood() { var removeList = new List(); foreach (var t in reservation.Keys) - if (t == null || t.GetRoom() == null || !isReserved(t)) + if (t == null || t.GetRoom() == null || !IsReserved(t)) removeList.Add(t); foreach (var t in removeList) reservation.Remove(t); diff --git a/Source/Core/Other/TreatmentUtility.cs b/Source/Core/Other/TreatmentUtility.cs new file mode 100644 index 00000000..18e491d8 --- /dev/null +++ b/Source/Core/Other/TreatmentUtility.cs @@ -0,0 +1,32 @@ +using PrisonLabor.Core.Needs; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Text; +using Verse; + +namespace PrisonLabor.Core.Other +{ + public static class TreatmentUtility + { + public static void OnApplyDamage(Pawn_HealthTracker instance, DamageInfo dinfo, bool absorbed) + { + if (dinfo.Instigator != null && !(dinfo.Instigator is Pawn)) + return; + + Pawn attacker = dinfo.Instigator as Pawn; + Pawn victim = (Pawn)(typeof(Pawn_HealthTracker).GetField("pawn", BindingFlags.NonPublic | BindingFlags.Instance)?.GetValue(instance)); + + if (attacker == null || victim == null) + return; + + if (victim.IsPrisonerOfColony && attacker.IsColonist) + { + var need = victim.needs.TryGetNeed(); + if (need != null) + need.NotifyPrisonerBeaten(dinfo, absorbed); + } + } + } +} diff --git a/Source/Core/Other/TutorialProvider.cs b/Source/Core/Other/TutorialProvider.cs new file mode 100644 index 00000000..0dc4de74 --- /dev/null +++ b/Source/Core/Other/TutorialProvider.cs @@ -0,0 +1,51 @@ +using System; +using System.Collections.Generic; +using System.Xml; +using Verse; + +namespace PrisonLabor.Core.Other +{ + public static class TutorialProvider + { + public struct TutorialNode + { + public string[] entries; + } + + public static Dictionary TutorialNodes = new Dictionary(); + + static TutorialProvider() + { + try + { + Log.Message("PrisonLabor: tutorials initialized"); + + GetVersionNotesFromTutorialFeed(Properties.Resources.TutorialFeed); + } + catch (Exception e) + { + Log.Error("PrisonLabor: Failed to initialize tutorials" + e.ToString()); + } + } + + private static void GetVersionNotesFromTutorialFeed(string xml) + { + XmlDocument xmlDocument = new XmlDocument(); + xmlDocument.LoadXml(xml); + foreach (XmlNode tutorial in xmlDocument.DocumentElement["tutorials"].ChildNodes) + { + if (tutorial.Name == "tutorial") + { + var entries = new List(); + foreach (XmlNode item in tutorial["items"].ChildNodes) + entries.Add(item.InnerXml); + + TutorialNodes.Add( + key: tutorial.Attributes["key"].Value, + value: new TutorialNode() { entries = entries.ToArray(), } + ); + } + } + } + } +} diff --git a/Source/Tutorials.cs b/Source/Core/Other/Tutorials.cs similarity index 71% rename from Source/Tutorials.cs rename to Source/Core/Other/Tutorials.cs index ad35d50c..f64197df 100644 --- a/Source/Tutorials.cs +++ b/Source/Core/Other/Tutorials.cs @@ -1,25 +1,25 @@ -using System.Collections.Generic; +using System.Collections.Generic; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Windows; using RimWorld; using UnityEngine; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.Other { - public class Tutorials + public static class Tutorials { - private static readonly ConceptDef introductionDef = - DefDatabase.GetNamed("PrisonLabor_Indroduction", true); + private static readonly ConceptDef introductionDef = DefDatabase.GetNamed("PrisonLabor_Indroduction", true); - private static readonly ConceptDef motivationDef = - DefDatabase.GetNamed("PrisonLabor_Motivation", true); + private static readonly ConceptDef motivationDef = DefDatabase.GetNamed("PrisonLabor_Motivation", true); private static readonly ConceptDef growingDef = DefDatabase.GetNamed("PrisonLabor_Growing", true); - private static readonly ConceptDef managementDef = - DefDatabase.GetNamed("PrisonLabor_Management", true); + private static readonly ConceptDef managementDef = DefDatabase.GetNamed("PrisonLabor_Management", true); - private static readonly ConceptDef timetableDef = - DefDatabase.GetNamed("PrisonLabor_Timetable", true); + private static readonly ConceptDef timetableDef = DefDatabase.GetNamed("PrisonLabor_Timetable", true); + + private static readonly ConceptDef treatmentDef = DefDatabase.GetNamed("PrisonLabor_Treatment", true); private static readonly List triggeredTutorials = new List(); private static float lastTutorTime; @@ -36,11 +36,18 @@ public static void Apply() PlayerKnowledgeDatabase.SetKnowledge(managementDef, 1.0f); if (PrisonLaborPrefs.HasTutorialFlag(TutorialFlag.Timetable)) PlayerKnowledgeDatabase.SetKnowledge(timetableDef, 1.0f); + if (PrisonLaborPrefs.HasTutorialFlag(TutorialFlag.Treatment)) + PlayerKnowledgeDatabase.SetKnowledge(treatmentDef, 1.0f); } public static void Introduction() { - TryActivateTutorial(introductionDef, OpportunityType.Important); + //TryActivateTutorial(introductionDef, OpportunityType.Important); + if (!PrisonLaborPrefs.HasTutorialFlag(TutorialFlag.Introduction)) + { + TutorialWindow.Show("Introduction"); + PrisonLaborPrefs.AddTutorialFlag(TutorialFlag.Introduction); + } } public static void Motivation() @@ -63,6 +70,11 @@ public static void Growing() TryActivateTutorial(growingDef, OpportunityType.Important); } + public static void Treatment() + { + TryActivateTutorial(treatmentDef, OpportunityType.Important); + } + public static void LaborAreaWarning() { if (!PrisonLaborPrefs.HasTutorialFlag(TutorialFlag.LaborAreaWarning)) @@ -105,6 +117,8 @@ public static void UpdateTutorialFlags() PrisonLaborPrefs.AddTutorialFlag(TutorialFlag.Timetable); if (!PlayerKnowledgeDatabase.IsComplete(growingDef)) PrisonLaborPrefs.AddTutorialFlag(TutorialFlag.Growing); + if (!PlayerKnowledgeDatabase.IsComplete(treatmentDef)) + PrisonLaborPrefs.AddTutorialFlag(TutorialFlag.Treatment); } public static void Reset() @@ -114,6 +128,7 @@ public static void Reset() PlayerKnowledgeDatabase.SetKnowledge(managementDef, 0.0f); PlayerKnowledgeDatabase.SetKnowledge(timetableDef, 0.0f); PlayerKnowledgeDatabase.SetKnowledge(growingDef, 0.0f); + PlayerKnowledgeDatabase.SetKnowledge(treatmentDef, 0.0f); } } } \ No newline at end of file diff --git a/Source/Core/PrisonLaborUtility.cs b/Source/Core/PrisonLaborUtility.cs new file mode 100644 index 00000000..c31e0d30 --- /dev/null +++ b/Source/Core/PrisonLaborUtility.cs @@ -0,0 +1,59 @@ +using System.Collections.Generic; +using PrisonLabor.Constants; +using PrisonLabor.Core.LaborArea; +using PrisonLabor.Core.LaborWorkSettings; +using PrisonLabor.Core.Meta; +using RimWorld; +using Verse; + +namespace PrisonLabor.Core +{ + internal static class PrisonLaborUtility + { + public static bool LaborEnabled(this Pawn pawn) + { + if (pawn.IsPrisoner) + if (pawn.guest.interactionMode == PL_DefOf.PrisonLabor_workOption || pawn.guest.interactionMode == PL_DefOf.PrisonLabor_workAndRecruitOption) + return true; + + return false; + } + + public static bool RecruitInLaborEnabled(Pawn pawn) + { + if (pawn.guest.interactionMode == PL_DefOf.PrisonLabor_workAndRecruitOption && pawn.guest.ScheduledForInteraction && pawn.health.capacities.CapableOf(PawnCapacityDefOf.Talking)) + return true; + + return false; + } + + public static bool WorkTime(Pawn pawn) + { + if (pawn.needs == null || pawn.needs.food == null || pawn.needs.rest == null) + return false; + if (pawn.timetable == null) + return true; + if (pawn.timetable.CurrentAssignment == TimeAssignmentDefOf.Work) + return true; + if (pawn.timetable.CurrentAssignment == TimeAssignmentDefOf.Anything) + { + if (HealthAIUtility.ShouldSeekMedicalRest(pawn) || + pawn.health.hediffSet.HasTemperatureInjury(TemperatureInjuryStage.Serious) || + pawn.needs.food.CurCategory > HungerCategory.Hungry || + pawn.needs.rest.CurCategory != RestCategory.Rested) + return false; + else + return true; + } + return false; + } + + public static bool IsDisabledByLabor(IntVec3 pos, Pawn pawn, WorkTypeDef workType) + { + if (pos != null && pawn.Map.areaManager.Get() != null && + !WorkSettings.WorkDisabled(workType)) + return pawn.Map.areaManager.Get()[pos]; + return false; + } + } +} \ No newline at end of file diff --git a/Source/PrisonLaborWidgets.cs b/Source/Core/PrisonLaborWidgets.cs similarity index 97% rename from Source/PrisonLaborWidgets.cs rename to Source/Core/PrisonLaborWidgets.cs index f992ca5c..d84949b6 100644 --- a/Source/PrisonLaborWidgets.cs +++ b/Source/Core/PrisonLaborWidgets.cs @@ -1,11 +1,11 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Text; using UnityEngine; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core { public static class PrisonLaborWidgets { diff --git a/Source/Core/Settings/CleanSaveDialog.cs b/Source/Core/Settings/CleanSaveDialog.cs new file mode 100644 index 00000000..97fc3e6c --- /dev/null +++ b/Source/Core/Settings/CleanSaveDialog.cs @@ -0,0 +1,60 @@ +using PrisonLabor.Core.GameSaves; +using PrisonLabor.Tweaks; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.Settings +{ + public class CleanSaveDialog : Window + { + private string fileName; + + private bool saveBackuped = false; + + public CleanSaveDialog(string fileName) + { + absorbInputAroundWindow = true; + doCloseX = true; + + windowRect = new Rect(0f, 0f, 464f, 232f); + + this.fileName = fileName; + } + + public override void DoWindowContents(Rect inRect) + { + var innerRect = new Rect(inRect.x, inRect.y, inRect.width, inRect.height).ContractedBy(10f); + GUI.BeginGroup(innerRect); + + var messageRect = new Rect(0f, 0f, innerRect.width, innerRect.height - 90f); + var cancelButtonRect = new Rect((innerRect.width - 100f) / 2, innerRect.height - 40f, 100f, 40f); + var backupButtonRect = new Rect(innerRect.width - 110f, innerRect.height - 90f, 100f, 40f); + var proceedButtonRect = new Rect(innerRect.width - 110f, innerRect.height - 40f, 100f, 40f); + + string dialogMessage = $"{"PrisonLabor_UpgradeSaveDialogMessage".Translate()}\n{"PrisonLabor_BackupSaveDialogMessage".Translate()}"; + var listing = new Listing_Standard(GameFont.Medium); + listing.Begin(messageRect); + listing.Label(dialogMessage); + listing.End(); + //GUI.Label(messageRect, dialogMessage); + + Text.Font = GameFont.Small; + if (Widgets.ButtonText(cancelButtonRect, "CancelButton".Translate())) + { + Close(); + } + if (!saveBackuped && Widgets.ButtonText(backupButtonRect, "PrisonLabor_ButtonBackup".Translate(), true, false, Color.green, !saveBackuped)) + { + saveBackuped = true; + SaveCleaner.BackupSavegame(fileName); + } + if (Widgets.ButtonText(proceedButtonRect, "PrisonLabor_ButtonProceed".Translate(), true, false, Color.red)) + { + SaveCleaner.RemoveFromSave(fileName); + Close(); + } + + GUI.EndGroup(); + } + } +} diff --git a/Source/Core/Settings/SelectSaveForCleaningDialog.cs b/Source/Core/Settings/SelectSaveForCleaningDialog.cs new file mode 100644 index 00000000..3a7d59de --- /dev/null +++ b/Source/Core/Settings/SelectSaveForCleaningDialog.cs @@ -0,0 +1,61 @@ +using PrisonLabor.Tweaks; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.Settings +{ + public class SelectSaveForCleaningDialog : Window + { + private float maxH; + private Vector2 position; + private List saves; + + public SelectSaveForCleaningDialog() + { + absorbInputAroundWindow = true; + doCloseX = true; + doCloseButton = true; + + saves = new List(); + foreach (var file in GenFilePaths.AllSavedGameFiles) + saves.Add(Path.GetFileNameWithoutExtension(file.Name)); + } + + public override void DoWindowContents(Rect inRect) + { + var listRect = new Rect(inRect.x, inRect.y + 10f, inRect.width, inRect.height - 50f); + var contentRect = new Rect(0f, 0f, inRect.width - 20f, 24f * saves.Count()); + Widgets.BeginScrollView(listRect, ref this.position, contentRect, true); + var listing_Standard = new Listing_Standard(); + listing_Standard.Begin(contentRect); + + foreach (var save in saves) + { + var lineHeight = Text.LineHeight; + + var rect = listing_Standard.GetRect(30f); + + //if (!tooltip.NullOrEmpty()) + //{ + // if (Mouse.IsOver(rect)) + // Widgets.DrawHighlight(rect); + // TooltipHandler.TipRegion(rect, tooltip); + //} + + if (Widgets.ButtonText(rect, save)) + { + Find.WindowStack.Add(new CleanSaveDialog(save)); + } + listing_Standard.Gap(listing_Standard.verticalSpacing); + } + + maxH = listing_Standard.CurHeight; + + listing_Standard.End(); + Widgets.EndScrollView(); + } + } +} diff --git a/Source/SelectWorkTypesDialog.cs b/Source/Core/Settings/SelectWorkTypesDialog.cs similarity index 95% rename from Source/SelectWorkTypesDialog.cs rename to Source/Core/Settings/SelectWorkTypesDialog.cs index fc6134b9..f06d1e85 100644 --- a/Source/SelectWorkTypesDialog.cs +++ b/Source/Core/Settings/SelectWorkTypesDialog.cs @@ -1,13 +1,14 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; +using PrisonLabor.Core.LaborWorkSettings; using RimWorld; using UnityEngine; using Verse; using Verse.Sound; -namespace PrisonLabor +namespace PrisonLabor.Core.Settings { - internal class SelectWorkTypesDialog : Window + public class SelectWorkTypesDialog : Window { private float maxH; private Vector2 position; diff --git a/Source/SettingsMenu.cs b/Source/Core/Settings/SettingsMenu.cs similarity index 68% rename from Source/SettingsMenu.cs rename to Source/Core/Settings/SettingsMenu.cs index 7905932c..638477cf 100644 --- a/Source/SettingsMenu.cs +++ b/Source/Core/Settings/SettingsMenu.cs @@ -1,9 +1,12 @@ -using RimWorld; +using PrisonLabor.Core.LaborWorkSettings; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Windows; +using RimWorld; using System.Collections.Generic; using UnityEngine; using Verse; -namespace PrisonLabor +namespace PrisonLabor.Core.Settings { [StaticConstructorOnStartup] internal class SettingsMenu : Mod @@ -14,8 +17,8 @@ internal class SettingsMenu : Mod private static bool enableMotivationMechanics; private static bool enableMotivationIcons; private static bool enableRevolts; + private static bool showTreatmentHappiness; private static bool advancedGrowing; - private static bool disableMod; private static int defaultInteractionMode; private static List interactionModeList; @@ -32,7 +35,7 @@ public static void Init() enableMotivationMechanics = PrisonLaborPrefs.EnableMotivationMechanics; enableMotivationIcons = PrisonLaborPrefs.EnableMotivationIcons; enableRevolts = PrisonLaborPrefs.EnableRevolts; - disableMod = PrisonLaborPrefs.DisableMod; + showTreatmentHappiness = PrisonLaborPrefs.ShowTreatmentHappiness; interactionModeList = new List(DefDatabase.AllDefs); defaultInteractionMode = interactionModeList.IndexOf(DefDatabase.GetNamed(PrisonLaborPrefs.DefaultInteractionMode)); @@ -43,7 +46,7 @@ public static void Init() public override void DoSettingsWindowContents(Rect inRect) { var leftRect = new Rect(inRect.x, inRect.y, inRect.width * 0.65f, inRect.height); - var rightRect = new Rect(inRect.x + inRect.width * 0.65f + 30f, inRect.y, inRect.width * 0.35f - 30f, + var rightRect = new Rect((int)(inRect.x + inRect.width * 0.65f + 30f), inRect.y, inRect.width * 0.35f - 30f, inRect.height); var listing_options = new Listing_Standard(); @@ -60,57 +63,49 @@ public override void DoSettingsWindowContents(Rect inRect) listing_options.GapLine(); - if (!disableMod) + listing_options.Label("PrisonLabor_AllowedWorkTypes".Translate(), -1f); + listing_options.CheckboxLabeled(" " + "PrisonLabor_AllowAll".Translate(), ref allowAllWorktypes, "PrisonLabor_AllowAllWorkTypes".Translate()); + if (!allowAllWorktypes) + { + if (listing_options.ButtonTextLabeled(" " + "PrisonLabor_AllowedWorkTypesL".Translate(), "PrisonLabor_Browse".Translate())) + Find.WindowStack.Add(new SelectWorkTypesDialog()); + } + else { - listing_options.Label("PrisonLabor_AllowedWorkTypes".Translate(), -1f); - listing_options.CheckboxLabeled(" " + "PrisonLabor_AllowAll".Translate(), ref allowAllWorktypes, "PrisonLabor_AllowAllWorkTypes".Translate()); - if (!allowAllWorktypes) - { - if (listing_options.ButtonTextLabeled(" " + "PrisonLabor_AllowedWorkTypesL".Translate(), "PrisonLabor_Browse".Translate())) - Find.WindowStack.Add(new SelectWorkTypesDialog()); - } - else - { - listing_options.Gap(); - } + listing_options.Gap(); + } - listing_options.GapLine(); + listing_options.GapLine(); - listing_options.CheckboxLabeled("PrisonLabor_MotivationMechanics".Translate(), ref enableMotivationMechanics, - "PrisonLabor_MotivationWarning".Translate()); + listing_options.CheckboxLabeled("PrisonLabor_MotivationMechanics".Translate(), ref enableMotivationMechanics, + "PrisonLabor_MotivationWarning".Translate()); - listing_options.GapLine(); + listing_options.GapLine(); - listing_options.CheckboxLabeled("PrisonLabor_MotivationIcons".Translate(), ref enableMotivationIcons, - "PrisonLabor_MotivationIconsDesc".Translate()); + listing_options.CheckboxLabeled("PrisonLabor_MotivationIcons".Translate(), ref enableMotivationIcons, + "PrisonLabor_MotivationIconsDesc".Translate()); - listing_options.GapLine(); + listing_options.GapLine(); - listing_options.CheckboxLabeled("PrisonLabor_CanGrowAdvanced".Translate(), ref advancedGrowing, - "PrisonLabor_CanGrowAdvancedDesc".Translate()); + listing_options.CheckboxLabeled("PrisonLabor_CanGrowAdvanced".Translate(), ref advancedGrowing, + "PrisonLabor_CanGrowAdvancedDesc".Translate()); - listing_options.GapLine(); + listing_options.GapLine(); - listing_options.CheckboxLabeled("PrisonLabor_EnableRevolts".Translate(), ref enableRevolts, - "PrisonLabor_EnableRevoltsDesc".Translate()); - } - else - { - listing_options.Gap(); - listing_options.Gap(); - listing_options.Label("PrisonLabor_RestartInfo".Translate(), -1f); - listing_options.Label("PrisonLabor_RestartInfo2".Translate(), -1f); - listing_options.Gap(); - listing_options.Gap(); - listing_options.Gap(); - } + listing_options.CheckboxLabeled("PrisonLabor_EnableRevolts".Translate(), ref enableRevolts, + "PrisonLabor_EnableRevoltsDesc".Translate()); + + listing_options.GapLine(); + + listing_options.CheckboxLabeled("PrisonLabor_ShowTreatmentHappiness".Translate(), ref showTreatmentHappiness, + "PrisonLabor_ShowTreatmentHappinessDesc".Translate()); listing_options.Gap(); listing_options.Gap(); listing_options.Gap(); - listing_options.CheckboxLabeled("PrisonLabor_DisableMod".Translate(), ref disableMod, - "PrisonLabor_DisableModDesc".Translate()); + if (listing_options.ButtonTextLabeled("PrisonLabor_ButtonRemoveModFromSaveDesc".Translate(), "PrisonLabor_ButtonRemoveModFromSave".Translate())) + Find.WindowStack.Add(new SelectSaveForCleaningDialog()); listing_options.End(); @@ -138,8 +133,13 @@ public override void DoSettingsWindowContents(Rect inRect) if (listing_panel.ButtonText("PrisonLabor_ShowNews".Translate())) { - NewsDialog.showAll = true; - NewsDialog.ForceShow(); + NewsWindow.ShowAll = true; + NewsWindow.ForceShow(); + } + + if (listing_panel.ButtonText("PrisonLabor_ReplayTurorialsButton".Translate())) + { + ReplayTutorialsWindow.Show(); } listing_panel.End(); @@ -156,12 +156,11 @@ public override void WriteSettings() { PrisonLaborPrefs.ShowNews = showNews; PrisonLaborPrefs.AllowAllWorkTypes = allowAllWorktypes; - if (!disableMod) - PrisonLaborPrefs.EnableMotivationMechanics = enableMotivationMechanics; + PrisonLaborPrefs.EnableMotivationMechanics = enableMotivationMechanics; PrisonLaborPrefs.EnableMotivationIcons = enableMotivationIcons; PrisonLaborPrefs.EnableRevolts = enableRevolts; + PrisonLaborPrefs.ShowTreatmentHappiness = showTreatmentHappiness; PrisonLaborPrefs.AdvancedGrowing = advancedGrowing; - PrisonLaborPrefs.DisableMod = disableMod; PrisonLaborPrefs.DefaultInteractionMode = interactionModeList[defaultInteractionMode].defName; PrisonLaborPrefs.Save(); Log.Message("Prison Labor settings saved"); diff --git a/Source/Core/Trackers/EscapeTracker.cs b/Source/Core/Trackers/EscapeTracker.cs new file mode 100644 index 00000000..3fbb460e --- /dev/null +++ b/Source/Core/Trackers/EscapeTracker.cs @@ -0,0 +1,140 @@ +using PrisonLabor.Constants; +using PrisonLabor.Core.BaseClasses; +using PrisonLabor.Core.Needs; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Verse; + +namespace PrisonLabor.Core.Trackers +{ + public class EscapeTracker : IExposable + { + #region Object Access + /** + * Object Access region: + * This region is for ensuring that for every pawn there will be only one escape tracker. + * It is constructed in this way to prevent heavy modification of Pawn class (on external library). + */ + private static Dictionary escapeTimers = new Dictionary(); + + /// + /// Access EscapeTracker of Pawn + /// + public static EscapeTracker Of(Pawn pawn, bool forced = false) + { + if(!pawn.IsPrisoner && !forced) + { + return null; + } + if (!escapeTimers.ContainsKey(pawn)) + { + escapeTimers.Add(pawn, new EscapeTracker(pawn)); + } + return escapeTimers[pawn]; + } + + public static void Save(Pawn pawn, EscapeTracker tracker) + { + if(pawn != null && tracker != null) + { + escapeTimers[pawn] = tracker; + } + } + #endregion + + private SimpleTimer timer = new SimpleTimer(); + + /// + /// Debug information + /// + public int ReadyToRunPercentage => timer.Ticks * 100 / EscapeLevel; + + /// + /// Attached pawn + /// + public Pawn Pawn { get; private set; } + + /// + /// Flag that indicates whenever pawn should escape when JobGiver is trying to assign him a job + /// + public bool ReadyToEscape { get; private set; } + + /// + /// This value is tracking whenever pawn is ready to run, + /// in order to count time of this state + /// + public bool CanEscape + { + get => timer.IsActive; + + set + { + if (value == true) + timer.Start(); + else + timer.Stop(); + } + } + + /// + /// This value represent how long pawn will wait until he decides to escape. + /// Measured in game ticks. + /// + public int EscapeLevel + { + get + { + var treatment = Pawn.needs?.TryGetNeed(); + if (treatment == null || treatment.CurCategory <= TreatmentCategory.Bad) + return BGP.Escape_MinLevel; + + int level = (int)(treatment.CurLevel * BGP.Escape_LevelTreatmentMultiplier) + BGP.Escape_LevelBase; + + if (level < BGP.Escape_MinLevel) + return BGP.Escape_MinLevel; + else if (level > BGP.Escape_MaxLevel) + return BGP.Escape_MaxLevel; + else + return level; + } + } + + /// + /// Creates new escape tracker attached to pawn + /// + /// + public EscapeTracker(Pawn pawn) + { + Pawn = pawn; + } + + public void Tick() + { + // Reset all + if (Pawn.IsWatched()) + { + // Check if state isn't reseted already + if (timer.Ticks != 0) + { + timer.ResetAndStop(); + ReadyToEscape = false; + } + } + // Check if timer should trigger escape + else if (timer.Ticks >= EscapeLevel) + { + ReadyToEscape = true; + } + + // Tick timer + timer.Tick(); + } + + public void ExposeData() + { + Scribe_Deep.Look(ref timer, "Timer"); + } + } +} diff --git a/Source/Core/Trackers/InspirationTracker.cs b/Source/Core/Trackers/InspirationTracker.cs new file mode 100644 index 00000000..263fee22 --- /dev/null +++ b/Source/Core/Trackers/InspirationTracker.cs @@ -0,0 +1,99 @@ +using PrisonLabor.Constants; +using System; +using System.Collections.Generic; +using Verse; + +namespace PrisonLabor.Core.Trackers +{ + internal static class InspirationTracker + { + public static Dictionary> inspirationValues = new Dictionary>(); + + /// + /// Check if pawn is watched(supervised) by a Jailor + /// + public static bool IsWatched(this Pawn pawn) + { + Dictionary iValues; + float value; + + var map = pawn?.Map; + lock (inspirationValues) + { + if (map != null && inspirationValues.TryGetValue(map, out iValues)) + { + if (iValues.TryGetValue(pawn, out value)) + { + return value != 0; + } + } + } + return false; + } + + public static float GetInsiprationValue(Pawn pawn, bool refresh = false) + { + var map = pawn.Map; + if (!inspirationValues.ContainsKey(map) || !inspirationValues[map].ContainsKey(pawn)) + { + Log.Message("PrisonLabor Warning: InspirationTracker.GetInsipirationValue() didn't find map or pawn. Maybe it was called before calculating values."); + return 0; + } + lock (inspirationValues) + { + return inspirationValues[map][pawn]; + } + } + + public static void Calculate(Map map) + { + lock (inspirationValues) + { + var wardens = new List(); + wardens.AddRange(map.mapPawns.FreeColonists); + var prisoners = new List(); + prisoners.AddRange(map.mapPawns.PrisonersOfColony); + + Dictionary mapCalculations; + if (inspirationValues.TryGetValue(map, out mapCalculations)) + mapCalculations.Clear(); + else + inspirationValues[map] = mapCalculations = new Dictionary(); + + foreach (var prisoner in prisoners) + { + mapCalculations[prisoner] = 0f; + } + + var inRange = new Dictionary(); + foreach (var warden in wardens) + { + inRange.Clear(); + foreach (var prisoner in prisoners) + { + float distance = warden.Position.DistanceTo(prisoner.Position); + if (distance < BGP.InpirationRange && prisoner.GetRoom() == warden.GetRoom()) + inRange.Add(prisoner, distance); + } + + var watchedPawns = new List(inRange.Keys); + float points; + if (inRange.Count > BGP.WardenCapacity) + { + watchedPawns.Sort(new Comparison((x, y) => inRange[x].CompareTo(inRange[y]))); + points = BGP.InspireRate / BGP.WardenCapacity; + } + else + { + points = BGP.InspireRate / inRange.Count; + } + + for (int i = 0; i < watchedPawns.Count && i < BGP.WardenCapacity; i++) + { + mapCalculations[watchedPawns[i]] += points; + } + } + } + } + } +} \ No newline at end of file diff --git a/Source/Core/Windows/NewsWindow.cs b/Source/Core/Windows/NewsWindow.cs new file mode 100644 index 00000000..e863e2a9 --- /dev/null +++ b/Source/Core/Windows/NewsWindow.cs @@ -0,0 +1,79 @@ +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Other; +using System.Collections.Generic; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.Windows +{ + public class NewsWindow : Window + { + // Static Properties + public static bool AutoShow { get; set; } + + public static bool ShowAll { get; set; } + + public static string LastVersionString { get; set; } + + // Fields + private string[] entries; + private Vector2 position; + + public NewsWindow() + { + doCloseButton = true; + doCloseX = true; + Init(); + } + + public void Init() + { + var entriesList = new List(); + + if (ShowAll) + { + foreach (var patch in NewsProvider.allVersionNotes) + { + entriesList.AddRange(patch.entries); + } + } + else + { + foreach (var patch in NewsProvider.NewsAfterVersion(LastVersionString)) + { + entriesList.AddRange(patch.entries); + } + } + + entries = entriesList.ToArray(); + } + + public static void TryShow() + { + if (AutoShow && PrisonLaborPrefs.ShowNews) + { + Find.WindowStack.Add(new NewsWindow()); + PrisonLaborPrefs.LastVersion = PrisonLaborPrefs.Version; + PrisonLaborPrefs.Save(); + AutoShow = false; + } + } + + public static void ForceShow() + { + Find.WindowStack.Add(new NewsWindow()); + PrisonLaborPrefs.LastVersion = PrisonLaborPrefs.Version; + PrisonLaborPrefs.Save(); + AutoShow = false; + } + + public override void DoWindowContents(Rect inRect) + { + var displayRect = new Rect(inRect.x, inRect.y, inRect.width, inRect.height - 50f); + + var richListing = new GUI_Components.RichListing(); + richListing.PreRender(displayRect, entries); + richListing.OnGui(ref position); + } + } +} \ No newline at end of file diff --git a/Source/Core/Windows/ReplayTutorialsWindow.cs b/Source/Core/Windows/ReplayTutorialsWindow.cs new file mode 100644 index 00000000..f9b39fab --- /dev/null +++ b/Source/Core/Windows/ReplayTutorialsWindow.cs @@ -0,0 +1,46 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.Windows +{ + public class ReplayTutorialsWindow : Window + { + public ReplayTutorialsWindow() + { + doCloseButton = true; + } + + public override void DoWindowContents(Rect inRect) + { + var listing_panel = new Listing_Standard(); + + listing_panel.Begin(inRect); + + if (listing_panel.ButtonTextLabeled("Introduction", "PrisonLabor_ShowTutorialButton".Translate())) + { + TutorialWindow.Show("Introduction"); + } + + if (listing_panel.ButtonTextLabeled("Labor Area", "PrisonLabor_ShowTutorialButton".Translate())) + { + TutorialWindow.Show("LaborArea"); + } + + if (listing_panel.ButtonTextLabeled("Treatment system", "PrisonLabor_ShowTutorialButton".Translate())) + { + TutorialWindow.Show("Treatment"); + } + + listing_panel.End(); + } + + public static void Show() + { + Find.WindowStack.Add(new ReplayTutorialsWindow()); + } + } +} diff --git a/Source/Core/Windows/TutorialWindow.cs b/Source/Core/Windows/TutorialWindow.cs new file mode 100644 index 00000000..42ec6d11 --- /dev/null +++ b/Source/Core/Windows/TutorialWindow.cs @@ -0,0 +1,36 @@ +using PrisonLabor.Core.Other; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Core.Windows +{ + public class TutorialWindow : Window + { + // Fields + private string[] entries; + private Vector2 position; + + public override Vector2 InitialSize => new Vector2(800, 700); + + public TutorialWindow(string tutorialKey) + { + entries = TutorialProvider.TutorialNodes[tutorialKey].entries; + + doCloseButton = true; + } + + public override void DoWindowContents(Rect inRect) + { + var displayRect = new Rect(inRect.x, inRect.y, inRect.width, inRect.height - 50f); + + var richListing = new GUI_Components.RichListing(); + richListing.PreRender(displayRect, entries); + richListing.OnGui(ref position); + } + + public static void Show(string key) + { + Find.WindowStack.Add(new TutorialWindow(key)); + } + } +} diff --git a/Source/HarmonyPatches/DevTools.cs b/Source/HarmonyPatches/DevTools.cs new file mode 100644 index 00000000..a69276f5 --- /dev/null +++ b/Source/HarmonyPatches/DevTools.cs @@ -0,0 +1,108 @@ +using Harmony; +using PrisonLabor.Core.Needs; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Text; +using Verse; + +namespace PrisonLabor.HarmonyPatches +{ + /// + /// This patch is adding Prison Labor dev tools + /// + [HarmonyPatch(typeof(Dialog_DebugActionsMenu), "DoListingItems_MapTools")] + public static class DevTools + { + public static bool LogEscapeUtilityEnabled { get; set; } + + static void Postfix(Dialog_DebugActionsMenu __instance) + { + var menu = __instance; + menu.DoLabel("Prison Labor Tools:"); + + // Increase motivation + menu.DebugToolMapForPawns("Tool: Motivation +10%", delegate (Pawn p) + { + if (p.needs.TryGetNeed() != null) + { + OffsetNeed(p, Need_Motivation.Def, 0.1f); + } + }); + // Decrease motivation + menu.DebugToolMapForPawns("Tool: Motivation -10%", delegate (Pawn p) + { + if (p.needs.TryGetNeed() != null) + { + OffsetNeed(p, Need_Motivation.Def, -0.1f); + } + }); + // Increase treatment + menu.DebugToolMapForPawns("Tool: Treatment +10%", delegate (Pawn p) + { + if (p.needs.TryGetNeed() != null) + { + OffsetNeed(p, Need_Treatment.Def, 0.1f); + } + }); + // Decrease treatment + menu.DebugToolMapForPawns("Tool: Treatment -10%", delegate (Pawn p) + { + if (p.needs.TryGetNeed() != null) + { + OffsetNeed(p, Need_Treatment.Def, -0.1f); + } + }); + // Turn into prisoner + menu.DebugToolMapForPawns("Tool: Turn into prisoner", delegate (Pawn p) + { + p.guest.SetGuestStatus(Faction.OfPlayer, true); + }); + // Set free + menu.DebugToolMapForPawns("Tool: Set free", delegate (Pawn p) + { + p.guest.SetGuestStatus(null, false); + }); + // Set free + menu.DebugAction("Toggle logging escape utility", ()=> + { + LogEscapeUtilityEnabled = !LogEscapeUtilityEnabled; + }); + } + + #region Utilities + static void DoLabel(this Dialog_DebugActionsMenu instance, string label) + { + var method = typeof(Dialog_DebugActionsMenu).GetMethod("DoLabel", BindingFlags.Instance | BindingFlags.NonPublic); + method.Invoke(instance, new object[] { label }); + } + + static void DebugAction(this Dialog_DebugActionsMenu instance, string label, Action action) + { + var method = typeof(Dialog_DebugActionsMenu).GetMethod("DebugAction", BindingFlags.Instance | BindingFlags.NonPublic); + method.Invoke(instance, new object[] { label, action }); + } + + static void DebugToolMapForPawns(this Dialog_DebugActionsMenu instance, string label, Action pawnAction) + { + var method = typeof(Dialog_DebugActionsMenu).GetMethod("DebugToolMapForPawns", BindingFlags.Instance | BindingFlags.NonPublic); + method.Invoke(instance, new object[] { label, pawnAction }); + } + + static void OffsetNeed(Pawn pawn, NeedDef nd, float offsetPct) + { + if (pawn != null) + { + Need need = pawn.needs.TryGetNeed(nd); + if (need != null) + { + need.CurLevel += offsetPct * need.MaxLevel; + pawn.Drawer.Notify_DebugAffected(); + } + } + } + #endregion + } +} diff --git a/Source/HarmonyPatches/HPatcher.cs b/Source/HarmonyPatches/HPatcher.cs index ced36df2..dbf07106 100644 --- a/Source/HarmonyPatches/HPatcher.cs +++ b/Source/HarmonyPatches/HPatcher.cs @@ -1,7 +1,6 @@ using System; using System.Reflection; using Harmony; -using PrisonLabor.Harmony; using Verse; using System.Collections.Generic; using System.IO; @@ -28,15 +27,15 @@ public static void Init() harmony.PatchAll(Assembly.GetExecutingAssembly()); // Print out not completed methods - foreach(var f in fragments.Keys) + foreach (var f in fragments.Keys) { - if(!fragments[f]) + if (!fragments[f]) Log.Error($"PrisonLaborWarning: Harmony patch failed to find \"{f}\" fragment."); } } catch (Exception e) { - Log.Error($"PrisonLaborException: failed to proceed harmony patches: {e.Message}"); + Log.Error($"PrisonLaborException: failed to proceed harmony patches: {e.InnerException.Message}"); } // SECTION - Patches with references in method @@ -49,7 +48,7 @@ public static void Init() typeof(IntVec3), typeof(ThingPlaceMode), typeof(Thing).MakeByRefType(), typeof(Action) }), - new HarmonyMethod(null), new HarmonyMethod(typeof(ForibiddenDropPatch).GetMethod("Postfix"))); + new HarmonyMethod(null), new HarmonyMethod(typeof(Patches_PermissionFix.ForibiddenDropPatch).GetMethod("Postfix"))); harmony.Patch( typeof(Pawn_CarryTracker).GetMethod("TryDropCarriedThing", new[] @@ -57,11 +56,11 @@ public static void Init() typeof(IntVec3), typeof(int), typeof(ThingPlaceMode), typeof(Thing).MakeByRefType(), typeof(Action) }), - new HarmonyMethod(null), new HarmonyMethod(typeof(ForibiddenDropPatch).GetMethod("Postfix2"))); + new HarmonyMethod(null), new HarmonyMethod(typeof(Patches_PermissionFix.ForibiddenDropPatch).GetMethod("Postfix2"))); } catch (Exception e) { - Log.Error($"PrisonLaborException: failed to proceed harmony patches (reference section): {e.Message}"); + Log.Error($"PrisonLaborException: failed to proceed harmony patches (reference section): {e.InnerException.Message}"); } } @@ -106,7 +105,7 @@ public static void CreateDebugFileOnDesktop(string fileName, IEnumerable /// /// - public static bool IsFragment(OpCode[] opCodes, String[] operands, CodeInstruction instr, ref int step, string fragmentName) + public static bool IsFragment(OpCode[] opCodes, String[] operands, CodeInstruction instr, ref int step, string fragmentName, bool perfectMatch = true) { if (opCodes.Length != operands.Length) { @@ -121,7 +120,8 @@ public static bool IsFragment(OpCode[] opCodes, String[] operands, CodeInstructi var finalStep = opCodes.Length; - if (instr.opcode == opCodes[step] && (instr.operand == null || instr.operand.ToString() == operands[step])) + + if (InstructionMatching(instr, opCodes[step], operands[step], perfectMatch)) step++; else step = 0; @@ -143,7 +143,7 @@ public static bool IsFragment(OpCode[] opCodes, String[] operands, CodeInstructi /// /// /// - public static object FindOperandAfter(OpCode[] opCodes, String[] operands, IEnumerable instr) + public static object FindOperandAfter(OpCode[] opCodes, String[] operands, IEnumerable instr, bool perfectMatch = true) { if (opCodes.Length != operands.Length) { @@ -156,7 +156,7 @@ public static object FindOperandAfter(OpCode[] opCodes, String[] operands, IEnum int step = 0; foreach (var ci in instr) { - if (ci.opcode == opCodes[step] && (ci.operand == null || ci.operand.ToString() == operands[step])) + if (InstructionMatching(ci, opCodes[step], operands[step], perfectMatch)) step++; else step = 0; @@ -168,5 +168,16 @@ public static object FindOperandAfter(OpCode[] opCodes, String[] operands, IEnum Log.Error("PrisonLaborException: FindOperandAfter() didn't find any lines. Trace:" + new StackTrace()); return null; } + + private static bool InstructionMatching(CodeInstruction instr, OpCode opCode, string operand, bool perfectMatch) + { + bool matchingOpCodes = instr.opcode == opCode; + bool noOperands = instr.operand == null || string.IsNullOrEmpty(operand); + bool matchingOperands; + if (perfectMatch) matchingOperands = instr.operand != null && instr.operand.ToString() == operand; + else matchingOperands = instr.operand != null && instr.operand.ToString().Contains(operand); + + return matchingOpCodes && (noOperands || matchingOperands); + } } } diff --git a/Source/HarmonyPatches/Patch_RemoveHediffIfDisabled.cs b/Source/HarmonyPatches/Patch_RemoveHediffIfDisabled.cs deleted file mode 100644 index 404aa036..00000000 --- a/Source/HarmonyPatches/Patch_RemoveHediffIfDisabled.cs +++ /dev/null @@ -1,27 +0,0 @@ -using Harmony; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using Verse; - -namespace PrisonLabor.HarmonyPatches -{ - [HarmonyPatch(typeof(Pawn))] - [HarmonyPatch("ExposeData")] - class Patch_RemoveHediffIfDisabled - { - private static void Prefix(Pawn __instance) - { - if (PrisonLaborPrefs.DisableMod) - { - if (__instance.health != null && __instance.health.hediffSet != null) - { - var hediff = __instance.health.hediffSet.GetFirstHediffOfDef(DefDatabase.GetNamed("PrisonLabor_PrisonerChains"), false); - if (hediff != null) - __instance.health.RemoveHediff(hediff); - } - } - } - } -} diff --git a/Source/HarmonyPatches/Patch_RemoveLaborAreaIfDisabled.cs b/Source/HarmonyPatches/Patch_RemoveLaborAreaIfDisabled.cs deleted file mode 100644 index bbb72cf0..00000000 --- a/Source/HarmonyPatches/Patch_RemoveLaborAreaIfDisabled.cs +++ /dev/null @@ -1,18 +0,0 @@ -using Harmony; -using Verse; - -namespace PrisonLabor.HarmonyPatches -{ - [HarmonyPatch(typeof(AreaManager))] - [HarmonyPatch("ExposeData")] - internal class Patch_RemoveLaborAreaIfDisabled - { - private static void Prefix(AreaManager __instance) - { - if (PrisonLaborPrefs.DisableMod) - { - __instance.AllAreas.RemoveAll(area => area is Area_Labor); - } - } - } -} diff --git a/Source/HarmonyPatches/Patch_ShowNews.cs b/Source/HarmonyPatches/Patch_ShowNews.cs deleted file mode 100644 index 685a4ac5..00000000 --- a/Source/HarmonyPatches/Patch_ShowNews.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using Harmony; -using Verse; - -namespace PrisonLabor.HarmonyPatches -{ - [HarmonyPatch(typeof(Map))] - [HarmonyPatch("FinalizeInit")] - [HarmonyPatch(new Type[] { })] - internal class Patch_ShowNews - { - private static void Postfix() - { - NewsDialog.TryShow(); - } - } -} \ No newline at end of file diff --git a/Source/HarmonyPatches/Patches_AssignBed/Patch_AssignPrisonersToBed.cs b/Source/HarmonyPatches/Patches_AssignBed/Patch_AssignPrisonersToBed.cs new file mode 100644 index 00000000..5e4810af --- /dev/null +++ b/Source/HarmonyPatches/Patches_AssignBed/Patch_AssignPrisonersToBed.cs @@ -0,0 +1,160 @@ +using Harmony; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Reflection; +using System.Reflection.Emit; +using UnityEngine; +using Verse; +using Verse.AI; + +namespace PrisonLabor.HarmonyPatches.Patches_AssignBed +{ + [HarmonyPatch(typeof(Building_Bed))] + [HarmonyPatch(nameof(Building_Bed.GetGizmos))] + static class Patch_AssignPrisonersToBed + { + static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instructions) + { + foreach (var instr in instructions) + { + if (instr.opcode == OpCodes.Ret) + { + yield return new CodeInstruction(OpCodes.Ldarg_0); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_AssignPrisonersToBed).GetMethod(nameof(NewGizmos))); + } + yield return instr; + } + } + + public static IEnumerable NewGizmos(IEnumerable gizmos, Building_Bed bed) + { + foreach (var gizmo in gizmos) + yield return gizmo; + + if (bed.ForPrisoners) + { + yield return new Command_Action() + { + defaultLabel = "CommandBedSetOwnerLabel".Translate(), + defaultDesc = "CommandBedSetOwnerDesc".Translate(), + icon = ContentFinder.Get("ui/commands/AssignOwner", true), + action = new Action(() => Find.WindowStack.Add(new Dialog_AssignBuildingOwner(bed))), + }; + } + } + } + + + [HarmonyPatch(typeof(Building_Bed))] + [HarmonyPatch("get_" + nameof(Building_Bed.AssigningCandidates))] + static class Patch_MakePrisonersCandidates + { + static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instructions) + { + foreach (var instr in instructions) + { + if (instr.opcode == OpCodes.Ret) + { + yield return new CodeInstruction(OpCodes.Ldarg_0); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_MakePrisonersCandidates).GetMethod(nameof(NewCandidates))); + } + yield return instr; + } + } + + public static IEnumerable NewCandidates(IEnumerable pawns, Building_Bed bed) + { + if (!bed.ForPrisoners) + { + foreach (var pawn in pawns) + yield return pawn; + } + else + { + foreach (var pawn in bed.Map.mapPawns.PrisonersOfColony) + yield return pawn; + } + } + } + + + [HarmonyPatch(typeof(WorkGiver_Warden_TakeToBed))] + [HarmonyPatch("TakeToPreferredBedJob")] + static class Patch_TakePrisonersToOwnedBed + { + /* === Orignal code Look-up=== + * + * if (RestUtility.FindBedFor(prisoner, prisoner, true, true, false) != null) + * { + * return null; + * } + * + * === CIL Instructions === + * + * ldarg.1 | | Label 2 + * ldarg.1 | | no labels + * ldc.i4.1 | | no labels + * ldc.i4.1 | | no labels + * ldc.i4.0 | | no labels + * call | RimWorld.Building_Bed FindBedFor(Verse.Pawn, Verse.Pawn, Boolean, Boolean, Boolean) | no labels + * brfalse | Label 3 | no labels + */ + + static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instructions) + { + OpCode[] opCodes1 = +{ + OpCodes.Ldarg_1, + OpCodes.Ldarg_1, + OpCodes.Ldc_I4_1, + OpCodes.Ldc_I4_1, + OpCodes.Ldc_I4_0, + OpCodes.Call, + OpCodes.Brfalse, + }; + string[] operands1 = + { + "", + "", + "", + "", + "", + "RimWorld.Building_Bed FindBedFor(Verse.Pawn, Verse.Pawn, Boolean, Boolean, Boolean)", + "System.Reflection.Emit.Label", + }; + int step1 = 0; + + var label_OriginalBranch = gen.DefineLabel(); + + foreach (var instr in instructions) + { + if (HPatcher.IsFragment(opCodes1, operands1, instr, ref step1, nameof(Patch_TakePrisonersToOwnedBed), true)) + { + yield return new CodeInstruction(OpCodes.Ldarg_1); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_TakePrisonersToOwnedBed).GetMethod(nameof(HaveOwnedBed))); + yield return new CodeInstruction(OpCodes.Brfalse, label_OriginalBranch); + yield return new CodeInstruction(OpCodes.Pop); + yield return new CodeInstruction(OpCodes.Ldarg_1); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_TakePrisonersToOwnedBed).GetMethod(nameof(CanReachBed))); + yield return new CodeInstruction(OpCodes.Brfalse, instr.operand); + yield return new CodeInstruction(OpCodes.Ldnull); + yield return new CodeInstruction(OpCodes.Ret); + + instr.labels.Add(label_OriginalBranch); + } + yield return instr; + } + } + + public static bool HaveOwnedBed(Pawn pawn) + { + return pawn.ownership != null && pawn.ownership.OwnedBed != null; + } + + public static bool CanReachBed(Pawn pawn) + { + return pawn.CanReach(pawn.ownership.OwnedBed, PathEndMode.OnCell, Danger.Some); + } + } +} diff --git a/Source/HarmonyPatches/Patch_BillPrevention.cs b/Source/HarmonyPatches/Patches_BillAssignation/Patch_BillPrevention.cs similarity index 90% rename from Source/HarmonyPatches/Patch_BillPrevention.cs rename to Source/HarmonyPatches/Patches_BillAssignation/Patch_BillPrevention.cs index 5caf8781..1bb58de0 100644 --- a/Source/HarmonyPatches/Patch_BillPrevention.cs +++ b/Source/HarmonyPatches/Patches_BillAssignation/Patch_BillPrevention.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; @@ -6,8 +6,9 @@ using Verse; using System; using System.IO; +using PrisonLabor.Core.BillAssignation; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_BillAssignation { [HarmonyPatch(typeof(WorkGiver_DoBill))] [HarmonyPatch("StartOrResumeBillJob")] @@ -63,7 +64,7 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa { yield return new CodeInstruction(OpCodes.Ldarg_1); yield return new CodeInstruction(OpCodes.Ldloc_1); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_BillPrevention).GetMethod("IsForCertainGroup")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_BillPrevention).GetMethod(nameof(IsForCertainGroup))); yield return new CodeInstruction(OpCodes.Brfalse, label); } } @@ -71,7 +72,7 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa public static bool IsForCertainGroup(Pawn pawn, Bill bill) { - var group = BillUtility.IsFor(bill); + var group = BillAssignationUtility.IsFor(bill); if (group == GroupMode.ColonyOnly) return true; if (group == GroupMode.ColonistsOnly && !pawn.IsPrisoner) diff --git a/Source/HarmonyPatches/Patch_ExposeBillGroup.cs b/Source/HarmonyPatches/Patches_BillAssignation/Patch_ExposeBillGroup.cs similarity index 55% rename from Source/HarmonyPatches/Patch_ExposeBillGroup.cs rename to Source/HarmonyPatches/Patches_BillAssignation/Patch_ExposeBillGroup.cs index be05b353..84b65e43 100644 --- a/Source/HarmonyPatches/Patch_ExposeBillGroup.cs +++ b/Source/HarmonyPatches/Patches_BillAssignation/Patch_ExposeBillGroup.cs @@ -1,8 +1,10 @@ -using System; +using System; using Harmony; +using PrisonLabor.Core.BillAssignation; +using PrisonLabor.Core.Meta; using RimWorld; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_BillAssignation { [HarmonyPatch(typeof(Bill))] [HarmonyPatch("ExposeData")] @@ -11,10 +13,7 @@ internal class Patch_ExposeBillGroup { private static void Postfix(Bill __instance) { - if (PrisonLaborPrefs.DisableMod) - return; - - BillUtility.GetData(__instance).ExposeData(); + BillAssignationUtility.GetData(__instance).ExposeData(); } } } \ No newline at end of file diff --git a/Source/HarmonyPatches/Patch_RemoveBillFromUtility.cs b/Source/HarmonyPatches/Patches_BillAssignation/Patch_RemoveBillFromUtility.cs similarity index 60% rename from Source/HarmonyPatches/Patch_RemoveBillFromUtility.cs rename to Source/HarmonyPatches/Patches_BillAssignation/Patch_RemoveBillFromUtility.cs index b4e54c80..c9d91e0a 100644 --- a/Source/HarmonyPatches/Patch_RemoveBillFromUtility.cs +++ b/Source/HarmonyPatches/Patches_BillAssignation/Patch_RemoveBillFromUtility.cs @@ -1,7 +1,8 @@ -using Harmony; +using Harmony; +using PrisonLabor.Core.BillAssignation; using RimWorld; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_BillAssignation { [HarmonyPatch(typeof(BillStack))] [HarmonyPatch("Delete")] @@ -10,7 +11,7 @@ internal class Patch_RemoveBillFromUtility { public static void Postfix(Bill bill) { - BillUtility.Remove(bill); + BillAssignationUtility.Remove(bill); } } } \ No newline at end of file diff --git a/Source/HarmonyPatches/Patches_Construction/EnableConstructionFinishFrames.cs b/Source/HarmonyPatches/Patches_Construction/EnableConstructionFinishFrames.cs new file mode 100644 index 00000000..fa5a37d6 --- /dev/null +++ b/Source/HarmonyPatches/Patches_Construction/EnableConstructionFinishFrames.cs @@ -0,0 +1,65 @@ +using Harmony; +using RimWorld; +using System.Collections.Generic; +using System.Reflection; +using System.Reflection.Emit; +using Verse; + +namespace PrisonLabor.HarmonyPatches.Patches_Construction +{ + [HarmonyPatch(typeof(WorkGiver_ConstructFinishFrames))] + [HarmonyPatch(nameof(WorkGiver_ConstructFinishFrames.JobOnThing))] + static class EnableConstructionFinishFrames + { + /* === Orignal code Look-up=== + * + * if (t.Faction != pawn.Faction) + * { + * return false; + * } + * + * === CIL Instructions === + * + * ldarg.2 | | no labels + * callvirt | RimWorld.Faction get_Faction() | no labels + * ldarg.1 | | no labels + * callvirt | RimWorld.Faction get_Faction() | no labels + * beq | Label 1 | no labels + * ldc.i4.0 | | no labels + * ret | | no labels + * ldarg.2 | | Label 1 + */ + + static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instructions) + { + //find label to jump + OpCode[] opCodes1 = + { + OpCodes.Ldarg_2, + OpCodes.Callvirt, + OpCodes.Ldarg_1, + OpCodes.Callvirt, + OpCodes.Beq, + }; + string[] operands1 = + { + "", + "RimWorld.Faction get_Faction()", + "", + "RimWorld.Faction get_Faction()", + "System.Reflection.Emit.Label", + }; + var label = HPatcher.FindOperandAfter(opCodes1, operands1, instructions, true); + + //Add If(pawn.IsPrisonerOfColony) {jump next condition} + yield return new CodeInstruction(OpCodes.Ldarg_1); + yield return new CodeInstruction(OpCodes.Callvirt, typeof(Pawn).GetProperty(nameof(Pawn.IsPrisoner)).GetGetMethod()); + yield return new CodeInstruction(OpCodes.Brtrue, label); + + foreach (var instr in instructions) + { + yield return instr; + } + } + } +} diff --git a/Source/HarmonyPatches/Patches_DeepDrill/EnableDeepDrillsToPrisoners.cs b/Source/HarmonyPatches/Patches_DeepDrill/EnableDeepDrillsToPrisoners.cs new file mode 100644 index 00000000..6584a152 --- /dev/null +++ b/Source/HarmonyPatches/Patches_DeepDrill/EnableDeepDrillsToPrisoners.cs @@ -0,0 +1,68 @@ +using Harmony; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Reflection.Emit; +using System.Text; +using Verse; + +namespace PrisonLabor.HarmonyPatches.Patches_DeepDrill +{ + [HarmonyPatch(typeof(WorkGiver_DeepDrill))] + [HarmonyPatch(nameof(WorkGiver_DeepDrill.HasJobOnThing))] + static class EnableDeepDrillsToPrisoners + { + /* === Orignal code Look-up=== + * + * if (t.Faction != pawn.Faction) + * { + * return false; + * } + * + * === CIL Instructions === + * + * ldarg.2 | | no labels + * callvirt | RimWorld.Faction get_Faction() | no labels + * ldarg.1 | | no labels + * callvirt | RimWorld.Faction get_Faction() | no labels + * beq | Label 1 | no labels + * ldc.i4.0 | | no labels + * ret | | no labels + * ldarg.2 | | Label 1 + */ + + static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instructions) + { + //find label to jump + OpCode[] opCodes1 = + { + OpCodes.Ldarg_2, + OpCodes.Callvirt, + OpCodes.Ldarg_1, + OpCodes.Callvirt, + OpCodes.Beq, + }; + string[] operands1 = + { + "", + "RimWorld.Faction get_Faction()", + "", + "RimWorld.Faction get_Faction()", + "System.Reflection.Emit.Label", + }; + var label = HPatcher.FindOperandAfter(opCodes1, operands1, instructions, true); + + //Add If(pawn.IsPrisonerOfColony) {jump next condition} + yield return new CodeInstruction(OpCodes.Ldarg_1); + yield return new CodeInstruction(OpCodes.Callvirt, typeof(Pawn).GetProperty(nameof(Pawn.IsPrisoner)).GetGetMethod()); + yield return new CodeInstruction(OpCodes.Brtrue, label); + + foreach (var instr in instructions) + { + yield return instr; + } + } + } +} diff --git a/Source/HarmonyPatches/Patches_Escaping/Patch_EscapeTracker.cs b/Source/HarmonyPatches/Patches_Escaping/Patch_EscapeTracker.cs new file mode 100644 index 00000000..4e500692 --- /dev/null +++ b/Source/HarmonyPatches/Patches_Escaping/Patch_EscapeTracker.cs @@ -0,0 +1,38 @@ +using Harmony; +using PrisonLabor.Core.Trackers; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Verse; + +namespace PrisonLabor.HarmonyPatches.Patches_Escaping +{ + static class Patch_EscapeTracker + { + [HarmonyPatch(typeof(Pawn))] + [HarmonyPatch(nameof(Pawn.ExposeData))] + static class Patch_ExposeData + { + static void Postfix(Pawn __instance) + { + var escapeTracker = EscapeTracker.Of(__instance); + Scribe_Deep.Look(ref escapeTracker, "EscapeTracker", new object[] { __instance}); + EscapeTracker.Save(__instance, escapeTracker); + } + } + + [HarmonyPatch(typeof(Pawn))] + [HarmonyPatch(nameof(Pawn.Tick))] + static class Patch_Tick + { + static void Postfix(Pawn __instance) + { + if (!__instance.Dead) + { + EscapeTracker.Of(__instance)?.Tick(); + } + } + } + } +} diff --git a/Source/HarmonyPatches/Patch_EscapingPrisoner.cs b/Source/HarmonyPatches/Patches_Escaping/Patch_EscapingPrisoner.cs similarity index 81% rename from Source/HarmonyPatches/Patch_EscapingPrisoner.cs rename to Source/HarmonyPatches/Patches_Escaping/Patch_EscapingPrisoner.cs index c9a38303..bef1c698 100644 --- a/Source/HarmonyPatches/Patch_EscapingPrisoner.cs +++ b/Source/HarmonyPatches/Patches_Escaping/Patch_EscapingPrisoner.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; @@ -6,8 +6,9 @@ using Verse; using System; using System.IO; +using PrisonLabor.Core.Trackers; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_Escaping { [HarmonyPatch(typeof(JobGiver_PrisonerEscape))] [HarmonyPatch("TryGiveJob")] @@ -19,7 +20,7 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa { Label restOfMethod = gen.DefineLabel(); yield return new CodeInstruction(OpCodes.Ldarg_1); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_EscapingPrisoner).GetMethod("IsReadyToEscape")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_EscapingPrisoner).GetMethod(nameof(IsReadyToEscape))); yield return new CodeInstruction(OpCodes.Brtrue, restOfMethod); yield return new CodeInstruction(OpCodes.Ldnull); yield return new CodeInstruction(OpCodes.Ret); @@ -38,11 +39,11 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa public static bool IsReadyToEscape(Pawn pawn) { - Need_Motivation need = pawn.needs.TryGetNeed(); - if (need != null && !need.ReadyToRun) - return false; - else + var escapeTracker = EscapeTracker.Of(pawn, true); + if (escapeTracker.ReadyToEscape) return true; + else + return false; } } } diff --git a/Source/HarmonyPatches/Patches_Food/AddCustomFoodReservation.cs b/Source/HarmonyPatches/Patches_Food/AddCustomFoodReservation.cs new file mode 100644 index 00000000..6b6dc99a --- /dev/null +++ b/Source/HarmonyPatches/Patches_Food/AddCustomFoodReservation.cs @@ -0,0 +1,73 @@ +using Harmony; +using PrisonLabor.Core.Other; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Reflection.Emit; +using Verse; + +namespace PrisonLabor.HarmonyPatches.Patches_Food +{ + /// + /// Adds check if food is already reserved before trying to bring it + /// + [HarmonyPatch(typeof(FoodUtility))] + [HarmonyPatch(nameof(FoodUtility.BestFoodSourceOnMap))] + static class AddCustomFoodReservation + { + /* === Orignal code Look-up=== + * + * c__AnonStorey.foodValidator = delegate(Thing t) + * + * === CIL Instructions === + * + * ldloc.0 | | Label 6Label 8 + * ldloc.0 | | no labels + * ldftn | Boolean <>m__0(Verse.Thing) | no labels + * newobj | Void .ctor(Object, IntPtr) | no labels + * stfld | System.Predicate`1[Verse.Thing] foodValidator | no labels + * + */ + + static IEnumerable Transpiler(ILGenerator gen, IEnumerable instructions) + { + OpCode[] opCodes = + { + OpCodes.Ldftn, + OpCodes.Newobj, + OpCodes.Stfld, + }; + string[] operands = + { + "Boolean <>m__0(Verse.Thing)", + "Void .ctor(Object, IntPtr)", + "foodValidator", + }; + int step = 0; + + foreach (var instr in instructions) + { + if (HPatcher.IsFragment(opCodes, operands, instr, ref step, nameof(AddCustomFoodReservation), false)) + { + yield return new CodeInstruction(OpCodes.Ldarg_0); + yield return new CodeInstruction(OpCodes.Ldarg_1); + yield return new CodeInstruction(OpCodes.Ldarg_2); + yield return new CodeInstruction(OpCodes.Call, typeof(AddCustomFoodReservation).GetMethod(nameof(AddContitionToPredicate))); + } + yield return instr; + } + } + + public static Predicate AddContitionToPredicate(Predicate predicate, Pawn getter, Pawn eater, bool desperate) + { + return new Predicate(target => + { + if (PrisonerFoodReservation.IsReserved(target) && (eater != getter || !eater.IsPrisoner) && !desperate) + return false; + else + return predicate.Invoke(target); + } + ); + } + } +} diff --git a/Source/HarmonyPatches/Patches_Food/DeliverEvenOutsidePrisonCell.cs b/Source/HarmonyPatches/Patches_Food/DeliverEvenOutsidePrisonCell.cs new file mode 100644 index 00000000..10dc82dd --- /dev/null +++ b/Source/HarmonyPatches/Patches_Food/DeliverEvenOutsidePrisonCell.cs @@ -0,0 +1,62 @@ +using Harmony; +using RimWorld; +using System.Collections.Generic; +using System.Reflection.Emit; + +namespace PrisonLabor.HarmonyPatches.Patches_Food +{ + /// + /// This patch is ensuring prisoner will be brought food despite beign outside of prison cell. + /// It skips the condition "IsInPrisonCell" + /// + [HarmonyPatch(typeof(WorkGiver_Warden_DeliverFood))] + [HarmonyPatch(nameof(WorkGiver_Warden_DeliverFood.JobOnThing))] + static class DeliverEvenOutsidePrisonCell + { + /* === Orignal code Look-up=== + * + * if (!pawn2.Position.IsInPrisonCell(pawn2.Map)) + * { + * return null; + * } + * + * === CIL Instructions === + * + * ldloc.0 | | Label 2 + * callvirt | IntVec3 get_Position() | no labels + * ldloc.0 | | no labels + * callvirt | Verse.Map get_Map() | no labels + * call | Boolean IsInPrisonCell(IntVec3, Verse.Map) | no labels + * brtrue | Label 3 | no labels + * ldnull | | no labels + * ret | | no labels + * + * ldloc.0 | | Label 3 + */ + + static IEnumerable Transpiler(ILGenerator gen, IEnumerable instructions) + { + OpCode[] opCodes = + { + OpCodes.Call, + OpCodes.Brtrue, + }; + string[] operands = + { + "Boolean IsInPrisonCell(IntVec3, Verse.Map)", + "System.Reflection.Emit.Label", + }; + int step = 0; + + foreach (var instr in instructions) + { + if (HPatcher.IsFragment(opCodes, operands, instr, ref step, nameof(DeliverEvenOutsidePrisonCell), true)) + { + yield return new CodeInstruction(OpCodes.Pop); + instr.opcode = OpCodes.Br; + } + yield return instr; + } + } + } +} diff --git a/Source/HarmonyPatches/Patches_Food/FoodUtility_IsFoodSourceOnMapSociallyProper.cs b/Source/HarmonyPatches/Patches_Food/FoodUtility_IsFoodSourceOnMapSociallyProper.cs new file mode 100644 index 00000000..3fe17888 --- /dev/null +++ b/Source/HarmonyPatches/Patches_Food/FoodUtility_IsFoodSourceOnMapSociallyProper.cs @@ -0,0 +1,79 @@ +using Harmony; +using RimWorld; +using System.Collections.Generic; +using System.Reflection.Emit; + +namespace PrisonLabor.HarmonyPatches.Patches_Food +{ + /// + /// This patch is ignoring socially improper + /// + [HarmonyPatch(typeof(FoodUtility))] + [HarmonyPatch("IsFoodSourceOnMapSociallyProper")] + static class FoodUtility_IsFoodSourceOnMapSociallyProper + { + /* === Original code Look-up === + * + * if (!allowSociallyImproper) + * { + * bool animalsCare = !getter.RaceProps.Animal; + * if (!t.IsSociallyProper(getter) && !t.IsSociallyProper(eater, eater.IsPrisonerOfColony, animalsCare)) + * { + * return false; + * } + * } + * return true; + * + * === CIL Instructions === + * + * ldarg.3 | | no labels + * brtrue | Label 1 | no labels + * ldarg.1 | | no labels + * callvirt | Verse.RaceProperties get_RaceProps() | no labels + * callvirt | Boolean get_Animal() | no labels + * ldc.i4.0 | | no labels + * ceq | | no labels + * stloc.0 | | no labels + * ldarg.0 | | no labels + * ldarg.1 | | no labels + * call | Boolean IsSociallyProper(Verse.Thing, Verse.Pawn) | no labels + * brtrue | Label 2 | no labels + * ldarg.0 | | no labels + * ldarg.2 | | no labels + * ldarg.2 | | no labels + * callvirt | Boolean get_IsPrisonerOfColony() | no labels + * ldloc.0 | | no labels + * call | Boolean IsSociallyProper(Verse.Thing, Verse.Pawn, Boolean, Boolean) | no labels + * brtrue | Label 3 | no labels + * ldc.i4.0 | | no labels + * ret | | no labels + * ldc.i4.1 | | Label 1Label 2Label 3 + * ret | | no labels + */ + + static IEnumerable Transpiler(ILGenerator gen, IEnumerable instructions) + { + OpCode[] opCodes = + { + OpCodes.Ldarg_3, + OpCodes.Brtrue, + }; + string[] operands = + { + "", + "", + }; + int step = 0; + + foreach (var instr in instructions) + { + if (HPatcher.IsFragment(opCodes, operands, instr, ref step, nameof(FoodUtility_IsFoodSourceOnMapSociallyProper), false)) + { + yield return new CodeInstruction(OpCodes.Pop); + instr.opcode = OpCodes.Br; + } + yield return instr; + } + } + } +} diff --git a/Source/HarmonyPatches/Patches_Food/ReserveFoodForPrisonerAfterDropping.cs b/Source/HarmonyPatches/Patches_Food/ReserveFoodForPrisonerAfterDropping.cs new file mode 100644 index 00000000..49c78b8d --- /dev/null +++ b/Source/HarmonyPatches/Patches_Food/ReserveFoodForPrisonerAfterDropping.cs @@ -0,0 +1,32 @@ +using Harmony; +using PrisonLabor.Core.Other; +using RimWorld; +using System.Collections.Generic; +using System.Linq; +using Verse; +using Verse.AI; + +namespace PrisonLabor.HarmonyPatches.Patches_Food +{ + /// + /// Adds food reservation after dropping food for prisoner + /// + [HarmonyPatch(typeof(JobDriver_FoodDeliver))] + [HarmonyPatch("MakeNewToils")] + static class ReserveFoodForPrisonerAfterDropping + { + static void Postfix(ref IEnumerable __result, JobDriver_FoodDeliver __instance) + { + __result = new List(__result); + var lastToil = ((List)__result).Last(); + + lastToil.initAction = delegate + { + Thing thing; + __instance.pawn.carryTracker.TryDropCarriedThing(lastToil.actor.jobs.curJob.targetC.Cell, ThingPlaceMode.Direct, + out thing, null); + PrisonerFoodReservation.reserve(thing, (Pawn)lastToil.actor.jobs.curJob.targetB.Thing); + }; + } + } +} diff --git a/Source/HarmonyPatches/Patch_ReservedByPrisoner.cs b/Source/HarmonyPatches/Patches_Food/ReservedByPrisonerPatch.cs similarity index 70% rename from Source/HarmonyPatches/Patch_ReservedByPrisoner.cs rename to Source/HarmonyPatches/Patches_Food/ReservedByPrisonerPatch.cs index 9ee20eb8..4da67d3e 100644 --- a/Source/HarmonyPatches/Patch_ReservedByPrisoner.cs +++ b/Source/HarmonyPatches/Patches_Food/ReservedByPrisonerPatch.cs @@ -1,20 +1,23 @@ -using System.Collections.Generic; +using Harmony; +using PrisonLabor.Core.Other; +using RimWorld; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; -using Harmony; -using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor.Harmony +namespace PrisonLabor.HarmonyPatches.Patches_Food { + /// + /// Complete overhaul PawnCanAutomaticallyHaulFast check, to include FoodReservation + /// [HarmonyPatch(typeof(HaulAIUtility))] [HarmonyPatch("PawnCanAutomaticallyHaulFast")] - [HarmonyPatch(new[] {typeof(Pawn), typeof(Thing), typeof(bool)})] - internal class ReservedByPrisonerPatch + [HarmonyPatch(new[] { typeof(Pawn), typeof(Thing), typeof(bool) })] + static class ReservedByPrisonerPatch { - private static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, - IEnumerable instr) + static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instr) { //Load arguments onto stack yield return new CodeInstruction(OpCodes.Ldarg_0); @@ -22,7 +25,7 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa yield return new CodeInstruction(OpCodes.Ldarg_2); //Call function yield return new CodeInstruction(OpCodes.Call, - typeof(ReservedByPrisonerPatch).GetMethod("CanHaulAndInPrisonCell")); + typeof(ReservedByPrisonerPatch).GetMethod(nameof(CanHaulAndInPrisonCell))); //Return yield return new CodeInstruction(OpCodes.Ret); } @@ -39,7 +42,7 @@ public static bool CanHaulAndInPrisonCell(Pawn p, Thing t, bool forced) return false; if (t.def.IsNutritionGivingIngestible && t.def.ingestible.HumanEdible && !t.IsSociallyProper(p, false, true)) - if (PrisonerFoodReservation.isReserved(t)) + if (PrisonerFoodReservation.IsReserved(t)) { JobFailReason.Is("ReservedForPrisoners".Translate()); return false; diff --git a/Source/HarmonyPatches/Patches_Food/StopIfPrisonerCanGetFoodByHimself.cs b/Source/HarmonyPatches/Patches_Food/StopIfPrisonerCanGetFoodByHimself.cs new file mode 100644 index 00000000..951bd65e --- /dev/null +++ b/Source/HarmonyPatches/Patches_Food/StopIfPrisonerCanGetFoodByHimself.cs @@ -0,0 +1,70 @@ +using Harmony; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection.Emit; +using System.Text; +using Verse; + +namespace PrisonLabor.HarmonyPatches.Patches_Food +{ + /// + /// This patch is preventing wardens to deliver food when prisoner can get it by himself. + /// There is already some kind of this mechanic in Vanilla RimWorld, but it only affect room that prisoner is inside. + /// + [HarmonyPatch(typeof(WorkGiver_Warden_DeliverFood))] + [HarmonyPatch(nameof(WorkGiver_Warden_DeliverFood.JobOnThing))] + static class StopIfPrisonerCanGetFoodByHimself + { + /* === Orignal code Look-up=== + * + * if (WorkGiver_Warden_DeliverFood.FoodAvailableInRoomTo(pawn2)) + * { + * return null; + * } + * + * === CIL Instructions === + * + * ldloc.0 | | Label 7 + * call | Boolean FoodAvailableInRoomTo(Verse.Pawn) | no labels + * brfalse | Label 8 | no labels + * ldnull | | no labels + * ret | | no labels + * ldloc.2 | | Label 8 + */ + + static IEnumerable Transpiler(ILGenerator gen, IEnumerable instructions) + { + OpCode[] opCodes = + { + OpCodes.Call, + }; + string[] operands = + { + "Boolean FoodAvailableInRoomTo(Verse.Pawn)", + }; + int step = 0; + + foreach (var instr in instructions) + { + if (HPatcher.IsFragment(opCodes, operands, instr, ref step, nameof(StopIfPrisonerCanGetFoodByHimself) + 1, true)) + { + yield return new CodeInstruction(OpCodes.Call, typeof(StopIfPrisonerCanGetFoodByHimself).GetMethod(nameof(FoodAvailableForPrisoner))); + } + else + { + yield return instr; + } + } + } + + public static bool FoodAvailableForPrisoner(Pawn pawn) + { + Thing thing; + ThingDef thingDef; + + return FoodUtility.TryFindBestFoodSourceFor(pawn, pawn, false, out thing, out thingDef, true, true, false, false, true, pawn.IsWildMan()); + } + } +} diff --git a/Source/HarmonyPatches/Patch_BillCheckbox.cs b/Source/HarmonyPatches/Patches_GUI/GUI_Bill/Patch_BillCheckbox.cs similarity index 61% rename from Source/HarmonyPatches/Patch_BillCheckbox.cs rename to Source/HarmonyPatches/Patches_GUI/GUI_Bill/Patch_BillCheckbox.cs index 81e47f8a..c317c0e4 100644 --- a/Source/HarmonyPatches/Patch_BillCheckbox.cs +++ b/Source/HarmonyPatches/Patches_GUI/GUI_Bill/Patch_BillCheckbox.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; @@ -8,11 +8,15 @@ using System; using System.IO; using Verse.Sound; +using PrisonLabor.Core.BillAssignation; #pragma warning disable CS0252 -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_GUI.GUI_Bill { + /// + /// This patch is adding checkbox to toggle between allowed workers + /// [HarmonyPatch(typeof(Dialog_BillConfig))] [HarmonyPatch("DoWindowContents")] [HarmonyPatch(new[] { typeof(Rect) })] @@ -71,13 +75,12 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa if (ci.labels.Contains((Label)label)) { var injectedInstruction = new CodeInstruction(OpCodes.Ldloc_S, listing); - foreach(var item in ci.labels) + foreach (var item in ci.labels) injectedInstruction.labels.Add(item); yield return injectedInstruction; yield return new CodeInstruction(OpCodes.Ldarg_0); yield return new CodeInstruction(OpCodes.Ldfld, billField); - yield return new CodeInstruction(OpCodes.Call, - typeof(Patch_BillCheckbox).GetMethod("GroupExclusionButton")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_BillCheckbox).GetMethod(nameof(GroupExclusionButton))); ci.labels.Clear(); } @@ -87,51 +90,47 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa public static void GroupExclusionButton(Listing_Standard listing, Bill bill) { - if (BillUtility.IsFor(bill) == GroupMode.ColonistsOnly) + string label; + switch (BillAssignationUtility.IsFor(bill)) { - if (listing.ButtonText("PrisonLabor_ColonistsOnly".Translate())) - { - BillUtility.SetFor(bill, GroupMode.PrisonersOnly); - SoundDefOf.Click.PlayOneShotOnCamera(); - } - } - else if (BillUtility.IsFor(bill) == GroupMode.PrisonersOnly) - { - if (listing.ButtonText("PrisonLabor_PrisonersOnly".Translate())) - { - BillUtility.SetFor(bill, GroupMode.ColonyOnly); - SoundDefOf.Click.PlayOneShotOnCamera(); - } + case GroupMode.ColonistsOnly: + label = "PrisonLabor_ColonistsOnlyShort".Translate(); + break; + case GroupMode.PrisonersOnly: + label = "PrisonLabor_PrisonersOnlyShort".Translate(); + break; + case GroupMode.ColonyOnly: + label = "PrisonLabor_ColonyOnlyShort".Translate(); + break; + default: + label = "no label"; + break; } - else + + if (listing.ButtonText(label)) { - if (listing.ButtonText("PrisonLabor_ColonyOnly".Translate())) - { - BillUtility.SetFor(bill, GroupMode.ColonistsOnly); - SoundDefOf.Click.PlayOneShotOnCamera(); - } + MakeModeFloatMenu(bill); } - listing.Gap(12f); - } - public static Rect SetRect(Rect rect) - { - rect.height += 32; - rect.width -= 16; - return rect; - } - - public static Vector2 position; - public static void StartScrolling(Rect rect) - { - Rect viewRect = new Rect(0, 0, rect.width - 16, rect.height + 32); - Rect outRect = new Rect(0, 0, rect.width, rect.height); - Widgets.BeginScrollView(outRect, ref position, viewRect, true); + listing.Gap(12f); } - public static void StopScrolling() + private static void MakeModeFloatMenu(Bill bill) { - Widgets.EndScrollView(); + List list = new List(); + list.Add(new FloatMenuOption("PrisonLabor_ColonyOnly".Translate(), delegate + { + BillAssignationUtility.SetFor(bill, GroupMode.ColonyOnly); + })); + list.Add(new FloatMenuOption("PrisonLabor_ColonistsOnly".Translate(), delegate + { + BillAssignationUtility.SetFor(bill, GroupMode.ColonistsOnly); + })); + list.Add(new FloatMenuOption("PrisonLabor_PrisonersOnly".Translate(), delegate + { + BillAssignationUtility.SetFor(bill, GroupMode.PrisonersOnly); + })); + Find.WindowStack.Add(new FloatMenu(list)); } } } \ No newline at end of file diff --git a/Source/HarmonyPatches/Patch_AddScrollToPrisonerTab.cs b/Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_AddScrollToPrisonerTab.cs similarity index 94% rename from Source/HarmonyPatches/Patch_AddScrollToPrisonerTab.cs rename to Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_AddScrollToPrisonerTab.cs index 48f8636c..785db417 100644 --- a/Source/HarmonyPatches/Patch_AddScrollToPrisonerTab.cs +++ b/Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_AddScrollToPrisonerTab.cs @@ -1,4 +1,4 @@ -using Harmony; +using Harmony; using RimWorld; using System; using System.Collections.Generic; @@ -8,7 +8,7 @@ using UnityEngine; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_GUI.GUI_PrisonerTab { /// /// This patch is adding scroll bar to prisoner tab to ensure all interaction modes are visible @@ -80,7 +80,7 @@ private static IEnumerable Transpiler(ILGenerator gen, IEnumera // end scroll if (HPatcher.IsFragment(opCodes2, operands2, ci, ref step2, "AddScrollToPrisonerTab2")) { - var instruction = new CodeInstruction(OpCodes.Call, typeof(Patch_AddScrollToPrisonerTab).GetMethod("StopScrolling")); + var instruction = new CodeInstruction(OpCodes.Call, typeof(Patch_AddScrollToPrisonerTab).GetMethod(nameof(StopScrolling))); instruction.labels.AddRange(ci.labels); ci.labels.Clear(); yield return instruction; @@ -89,7 +89,7 @@ private static IEnumerable Transpiler(ILGenerator gen, IEnumera // resize if (HPatcher.IsFragment(opCodes3, operands3, ci, ref step3, "AddScrollToPrisonerTab3")) { - + } yield return ci; @@ -98,7 +98,7 @@ private static IEnumerable Transpiler(ILGenerator gen, IEnumera if (HPatcher.IsFragment(opCodes1, operands1, ci, ref step1, "AddScrollToPrisonerTab1")) { yield return new CodeInstruction(OpCodes.Ldloc_S, rect); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_AddScrollToPrisonerTab).GetMethod("StartScrolling")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_AddScrollToPrisonerTab).GetMethod(nameof(StartScrolling))); yield return new CodeInstruction(OpCodes.Stloc_S, rect); } } diff --git a/Source/HarmonyPatches/Patch_ExtendVistorRect.cs b/Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_ExtendVistorRect.cs similarity index 89% rename from Source/HarmonyPatches/Patch_ExtendVistorRect.cs rename to Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_ExtendVistorRect.cs index ad229df2..1caaddd8 100644 --- a/Source/HarmonyPatches/Patch_ExtendVistorRect.cs +++ b/Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_ExtendVistorRect.cs @@ -1,4 +1,4 @@ -using Harmony; +using Harmony; using RimWorld; using System; using System.Collections.Generic; @@ -8,7 +8,7 @@ using System.Text; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_GUI.GUI_PrisonerTab { [HarmonyPatch(typeof(ITab_Pawn_Visitor))] [HarmonyPatch("FillTab")] diff --git a/Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_PrisonerTab.cs b/Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_PrisonerTab.cs new file mode 100644 index 00000000..32c0212d --- /dev/null +++ b/Source/HarmonyPatches/Patches_GUI/GUI_PrisonerTab/Patch_PrisonerTab.cs @@ -0,0 +1,92 @@ +using Harmony; +using PrisonLabor.Core.Needs; +using PrisonLabor.Core.Trackers; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Reflection.Emit; +using System.Text; +using Verse; + +namespace PrisonLabor.HarmonyPatches.Patches_GUI.GUI_PrisonerTab +{ + /// + /// This patch is adding: + /// 1. string in dev mode indicating percentage of being unwatched before escaping + /// 2. Recruit option + /// + [HarmonyPatch(typeof(ITab_Pawn_Visitor), "FillTab")] + public static class Patch_PrisonerTab + { + static IEnumerable Transpiler(ILGenerator gen, IEnumerable instr) + { + // "if (Prefs.DevMode)" fragment + OpCode[] opCodes1 = + { + OpCodes.Call, + OpCodes.Brfalse, + }; + string[] operands1 = + { + "Boolean get_DevMode()", + "System.Reflection.Emit.Label", + }; + int step1 = 0; + + // "listing_Standard.End()" fragment + OpCode[] opCodes2 = + { + OpCodes.Ldloc_3, + OpCodes.Callvirt, + }; + string[] operands2 = + { + "", + "Void End()", + }; + int step2 = 0; + + foreach (var ci in instr) + { + if (HPatcher.IsFragment(opCodes2, operands2, ci, ref step2, "Patch_PrisonerTab listing_standard.End()")) + { + yield return new CodeInstruction(OpCodes.Ldloc_3); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_PrisonerTab).GetMethod(nameof(AddRecruitButton))); + } + + yield return ci; + + if (HPatcher.IsFragment(opCodes1, operands1, ci, ref step1, "Patch_PrisonerTab IfDevMode")) + { + yield return new CodeInstruction(OpCodes.Ldloc_3); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_PrisonerTab).GetMethod(nameof(AppendDevLines))); + } + + } + } + + public static void AppendDevLines(Listing_Standard listingStandard) + { + var pawn = Find.Selector.SingleSelectedThing as Pawn; + var escapeTracker = EscapeTracker.Of(pawn); + if (escapeTracker != null) + listingStandard.Label("Dev: Ready to escape: " + (escapeTracker.ReadyToEscape ? "ready" : escapeTracker.ReadyToRunPercentage + "%") + $" (Cap:{escapeTracker.EscapeLevel})", -1f); + } + + public static void AddRecruitButton(Listing_Standard listingStandard) + { + var pawn = Find.Selector.SingleSelectedThing as Pawn; + var need = pawn.needs.TryGetNeed(); + if (need != null && need.ResocializationReady) + { + if (listingStandard.ButtonTextLabeled("PrisonLabor_RecruitButtonDesc".Translate(), "PrisonLabor_RecruitButtonLabel".Translate())) + { + pawn.guest.SetGuestStatus(null); + pawn.SetFaction(Faction.OfPlayer); + } + } + } + } +} diff --git a/Source/HarmonyPatches/Patch_ChangeWorkTabPrisonerLabelColor.cs b/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_ChangeWorkTabPrisonerLabelColor.cs similarity index 88% rename from Source/HarmonyPatches/Patch_ChangeWorkTabPrisonerLabelColor.cs rename to Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_ChangeWorkTabPrisonerLabelColor.cs index 2e50bc6b..04a92c12 100644 --- a/Source/HarmonyPatches/Patch_ChangeWorkTabPrisonerLabelColor.cs +++ b/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_ChangeWorkTabPrisonerLabelColor.cs @@ -1,9 +1,9 @@ -using Harmony; +using Harmony; using RimWorld; using UnityEngine; using Verse; -namespace PrisonLabor.Harmony +namespace PrisonLabor.HarmonyPatches.Patches_GUI.GUI_WorkTab { [HarmonyPatch(typeof(PawnColumnWorker_Label))] [HarmonyPatch("DoCell")] diff --git a/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_PawnTableSetDirtyFix.cs b/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_PawnTableSetDirtyFix.cs new file mode 100644 index 00000000..b207b298 --- /dev/null +++ b/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_PawnTableSetDirtyFix.cs @@ -0,0 +1,28 @@ +using System.Collections.Generic; +using System.Reflection; +using System.Reflection.Emit; +using Harmony; +using RimWorld; +using Verse; + +namespace PrisonLabor.HarmonyPatches.Patches_GUI.GUI_WorkTab +{ + /// + /// This partch is ensuring prisonersTable is set dirty, when parent component is set to dirty too. + /// + [HarmonyPatch(typeof(MainTabWindow_PawnTable))] + [HarmonyPatch("SetDirty")] + internal class Patch_PawnTableSetDirtyFix + { + private static void Prefix(MainTabWindow_PawnTable __instance) + { + var prisonersTable = __instance.GetType().GetField("prisonersTable", BindingFlags.NonPublic | BindingFlags.Instance); + if (prisonersTable != null) + { + var SetDirty = prisonersTable.FieldType.GetMethod("SetDirty"); + if (SetDirty != null) + SetDirty.Invoke(prisonersTable.GetValue(__instance), new object[] { }); + } + } + } +} \ No newline at end of file diff --git a/Source/HarmonyPatches/Patch_WorkDisable.cs b/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_WorkDisabled.cs similarity index 82% rename from Source/HarmonyPatches/Patch_WorkDisable.cs rename to Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_WorkDisabled.cs index e91dcc9f..f9056a33 100644 --- a/Source/HarmonyPatches/Patch_WorkDisable.cs +++ b/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_WorkDisabled.cs @@ -1,11 +1,12 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; +using PrisonLabor.Core.LaborWorkSettings; using RimWorld; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_GUI.GUI_WorkTab { [HarmonyPatch(typeof(WidgetsWork))] [HarmonyPatch("DrawWorkBoxFor")] @@ -20,7 +21,7 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa yield return new CodeInstruction(OpCodes.Ldarg_2); yield return new CodeInstruction(OpCodes.Ldarg_3); yield return new CodeInstruction(OpCodes.Call, - typeof(WorkSettings).GetMethod("WorkDisabled", new[] {typeof(Pawn), typeof(WorkTypeDef)})); + typeof(WorkSettings).GetMethod(nameof(WorkSettings.WorkDisabled), new[] {typeof(Pawn), typeof(WorkTypeDef)})); //If false continue yield return new CodeInstruction(OpCodes.Brfalse, jumpTo); //Return diff --git a/Source/HarmonyPatches/Patch_WorkDisable2.cs b/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_WorkDisabled2.cs similarity index 83% rename from Source/HarmonyPatches/Patch_WorkDisable2.cs rename to Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_WorkDisabled2.cs index 25093990..894db34f 100644 --- a/Source/HarmonyPatches/Patch_WorkDisable2.cs +++ b/Source/HarmonyPatches/Patches_GUI/GUI_WorkTab/Patch_WorkDisabled2.cs @@ -1,11 +1,12 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; +using PrisonLabor.Core.LaborWorkSettings; using RimWorld; using Verse; -namespace PrisonLabor.Harmony +namespace PrisonLabor.HarmonyPatches.Patches_GUI.GUI_WorkTab { [HarmonyPatch(typeof(WidgetsWork))] [HarmonyPatch("TipForPawnWorker")] @@ -20,7 +21,7 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa yield return new CodeInstruction(OpCodes.Ldarg_0); yield return new CodeInstruction(OpCodes.Ldarg_1); yield return new CodeInstruction(OpCodes.Call, - typeof(WorkSettings).GetMethod("WorkDisabled", new[] {typeof(Pawn), typeof(WorkTypeDef)})); + typeof(WorkSettings).GetMethod(nameof(WorkSettings.WorkDisabled), new[] {typeof(Pawn), typeof(WorkTypeDef)})); //If false continue yield return new CodeInstruction(OpCodes.Brfalse, jumpTo); //Load string TODO translate diff --git a/Source/HarmonyPatches/Patch_DefaultInteractionMode.cs b/Source/HarmonyPatches/Patches_InteractionMode/Patch_DefaultInteractionMode.cs similarity index 84% rename from Source/HarmonyPatches/Patch_DefaultInteractionMode.cs rename to Source/HarmonyPatches/Patches_InteractionMode/Patch_DefaultInteractionMode.cs index 4a1cb96a..910c5b6b 100644 --- a/Source/HarmonyPatches/Patch_DefaultInteractionMode.cs +++ b/Source/HarmonyPatches/Patches_InteractionMode/Patch_DefaultInteractionMode.cs @@ -1,12 +1,13 @@ -using Harmony; +using Harmony; using System; using System.Collections.Generic; using System.Linq; using System.Text; using RimWorld; using Verse; +using PrisonLabor.Core.Meta; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_InteractionMode { [HarmonyPatch(typeof(Pawn_GuestTracker))] [HarmonyPatch("SetGuestStatus")] diff --git a/Source/HarmonyPatches/Patch_PrisonInteractionLabel.cs b/Source/HarmonyPatches/Patches_InteractionMode/Patch_PrisonInteractionLabel.cs similarity index 88% rename from Source/HarmonyPatches/Patch_PrisonInteractionLabel.cs rename to Source/HarmonyPatches/Patches_InteractionMode/Patch_PrisonInteractionLabel.cs index 62e3d7d7..dc16836f 100644 --- a/Source/HarmonyPatches/Patch_PrisonInteractionLabel.cs +++ b/Source/HarmonyPatches/Patches_InteractionMode/Patch_PrisonInteractionLabel.cs @@ -1,11 +1,11 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; using RimWorld; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_InteractionMode { //[HarmonyPatch(typeof(PrisonerInteractionModeUtility))] //[HarmonyPatch("GetLabel")] @@ -18,10 +18,10 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa // create our WORK label var jumpTo = gen.DefineLabel(); yield return new CodeInstruction(OpCodes.Ldarg_0); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_PrisonInteractionLabel).GetMethod("getLabelWork")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_PrisonInteractionLabel).GetMethod(nameof(getLabelWork))); yield return new CodeInstruction(OpCodes.Brfalse, jumpTo); yield return new CodeInstruction(OpCodes.Ldarg_0); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_PrisonInteractionLabel).GetMethod("getLabelWork")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_PrisonInteractionLabel).GetMethod(nameof(getLabelWork))); yield return new CodeInstruction(OpCodes.Ret); var first = true; diff --git a/Source/HarmonyPatches/Patch_AddLaborArea.cs b/Source/HarmonyPatches/Patches_LaborArea/Patch_AddLaborArea.cs similarity index 74% rename from Source/HarmonyPatches/Patch_AddLaborArea.cs rename to Source/HarmonyPatches/Patches_LaborArea/Patch_AddLaborArea.cs index 4e923537..8b11b6a1 100644 --- a/Source/HarmonyPatches/Patch_AddLaborArea.cs +++ b/Source/HarmonyPatches/Patches_LaborArea/Patch_AddLaborArea.cs @@ -1,7 +1,8 @@ -using Harmony; +using Harmony; +using PrisonLabor.Core.LaborArea; using Verse; -namespace PrisonLabor.Harmony +namespace PrisonLabor.HarmonyPatches.Patches_LaborArea { [HarmonyPatch(typeof(AreaManager))] [HarmonyPatch("AddStartingAreas")] diff --git a/Source/HarmonyPatches/Patch_LaborForbid.cs b/Source/HarmonyPatches/Patches_LaborArea/Patch_LaborForbid.cs similarity index 83% rename from Source/HarmonyPatches/Patch_LaborForbid.cs rename to Source/HarmonyPatches/Patches_LaborArea/Patch_LaborForbid.cs index 31c753d5..4b8b1cca 100644 --- a/Source/HarmonyPatches/Patch_LaborForbid.cs +++ b/Source/HarmonyPatches/Patches_LaborArea/Patch_LaborForbid.cs @@ -1,13 +1,14 @@ -using System; +using System; using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; +using PrisonLabor.Core; using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_LaborArea { [HarmonyPatch(typeof(JobGiver_Work))] [HarmonyPatch("TryIssueJobPackage")] @@ -18,9 +19,9 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa IEnumerable instr) { //var pawn = HPatcher.FindOperandAfter(new[] { OpCodes.Ldfld }, new[] { "Verse.Pawn pawn" }, instr); - var jobgiver = HPatcher.FindOperandAfter(new[] {OpCodes.Ldloc_S }, new[] { "RimWorld.JobGiver_Work+c__AnonStorey1 (11)" }, instr ); + var jobgiver = HPatcher.FindOperandAfter(new[] { OpCodes.Ldloc_S }, new[] { "RimWorld.JobGiver_Work+c__AnonStorey1 (11)" }, instr); var scanner = HPatcher.FindOperandAfter(new[] { OpCodes.Ldfld }, new[] { "RimWorld.WorkGiver_Scanner scanner" }, instr); - var cell = HPatcher.FindOperandAfter(new[] {OpCodes.Ldloc_S }, new[] { "Verse.IntVec3 (33)" }, instr ); + var cell = HPatcher.FindOperandAfter(new[] { OpCodes.Ldloc_S }, new[] { "Verse.IntVec3 (33)" }, instr); OpCode[] opcodes1 = { @@ -83,17 +84,17 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa yield return new CodeInstruction(OpCodes.Ldarg_1); yield return new CodeInstruction(OpCodes.Ldloc_S, jobgiver); yield return new CodeInstruction(OpCodes.Ldfld, scanner); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_LaborForbid).GetMethod("CreatePredicate")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_LaborForbid).GetMethod(nameof(CreatePredicate))); } - if(HPatcher.IsFragment(opCodes2, operands2, ci, ref step2, "Patch_LaborForbid2")) + if (HPatcher.IsFragment(opCodes2, operands2, ci, ref step2, "Patch_LaborForbid2")) { yield return new CodeInstruction(OpCodes.Ldloc_S, cell); yield return new CodeInstruction(OpCodes.Ldarg_1); yield return new CodeInstruction(OpCodes.Ldloc_S, jobgiver); yield return new CodeInstruction(OpCodes.Ldfld, scanner); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_LaborForbid).GetMethod("GetWorkType")); - yield return new CodeInstruction(OpCodes.Call, typeof(LaborExclusionUtility).GetMethod("IsDisabledByLabor")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_LaborForbid).GetMethod((nameof(GetWorkType)))); + yield return new CodeInstruction(OpCodes.Call, typeof(PrisonLaborUtility).GetMethod((nameof(PrisonLaborUtility.IsDisabledByLabor)))); yield return new CodeInstruction(OpCodes.Brtrue, ci.operand); } } @@ -103,7 +104,7 @@ public static Predicate CreatePredicate(Pawn pawn, WorkGiver_Scanner scan { return t => !t.IsForbidden(pawn) && scanner.HasJobOnThing(pawn, t, false) - && !LaborExclusionUtility.IsDisabledByLabor(t.Position, pawn, scanner.def.workType); + && !PrisonLaborUtility.IsDisabledByLabor(t.Position, pawn, scanner.def.workType); } public static WorkTypeDef GetWorkType(WorkGiver_Scanner scanner) @@ -112,4 +113,3 @@ public static WorkTypeDef GetWorkType(WorkGiver_Scanner scanner) } } } - \ No newline at end of file diff --git a/Source/HarmonyPatches/Patch_NeedOnlyByPrisoners.cs b/Source/HarmonyPatches/Patches_Needs/Patch_NeedOnlyByPrisoners.cs similarity index 74% rename from Source/HarmonyPatches/Patch_NeedOnlyByPrisoners.cs rename to Source/HarmonyPatches/Patches_Needs/Patch_NeedOnlyByPrisoners.cs index 9a1e4eb0..f495383d 100644 --- a/Source/HarmonyPatches/Patch_NeedOnlyByPrisoners.cs +++ b/Source/HarmonyPatches/Patches_Needs/Patch_NeedOnlyByPrisoners.cs @@ -1,19 +1,19 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; +using PrisonLabor.Core.Meta; using RimWorld; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_Needs { [HarmonyPatch(typeof(Pawn_NeedsTracker))] [HarmonyPatch("ShouldHaveNeed")] [HarmonyPatch(new[] { typeof(NeedDef) })] - internal class Patch_NeedOnlyByPrisoners + public class Patch_NeedOnlyByPrisoners { - private static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, - IEnumerable instr) + private static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instr) { //Searches for pawn var pawn = HPatcher.FindOperandAfter(new[] { OpCodes.Ldfld }, new[] { "Verse.Pawn pawn" }, instr); @@ -25,8 +25,7 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa yield return new CodeInstruction(OpCodes.Ldarg_0); yield return new CodeInstruction(OpCodes.Ldfld, pawn); //Call function - yield return new CodeInstruction(OpCodes.Call, - typeof(Patch_NeedOnlyByPrisoners).GetMethod("ShouldHaveNeedPrisoner")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_NeedOnlyByPrisoners).GetMethod(nameof(ShouldHaveNeedPrisoner))); //If true continue yield return new CodeInstruction(OpCodes.Brtrue, jumpTo); //Load false to stack @@ -46,11 +45,9 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa } } - public static bool ShouldHaveNeedPrisoner(NeedDef nd, Pawn pawn) { - if (nd.defName == "PrisonLabor_Motivation" && - !(pawn.IsPrisoner && PrisonLaborPrefs.EnableMotivationMechanics)) + if ((nd.defName == "PrisonLabor_Motivation" || nd.defName == "PrisonLabor_Treatment") && !(pawn.IsPrisoner && PrisonLaborPrefs.EnableMotivationMechanics)) return false; return true; } diff --git a/Source/HarmonyPatches/Patch_ForibiddenDrop.cs b/Source/HarmonyPatches/Patches_PermissionFix/Patch_ForibiddenDrop.cs similarity index 90% rename from Source/HarmonyPatches/Patch_ForibiddenDrop.cs rename to Source/HarmonyPatches/Patches_PermissionFix/Patch_ForibiddenDrop.cs index e76c8050..dddc951e 100644 --- a/Source/HarmonyPatches/Patch_ForibiddenDrop.cs +++ b/Source/HarmonyPatches/Patches_PermissionFix/Patch_ForibiddenDrop.cs @@ -1,8 +1,8 @@ -using System; +using System; using RimWorld; using Verse; -namespace PrisonLabor.Harmony +namespace PrisonLabor.HarmonyPatches.Patches_PermissionFix { internal class ForibiddenDropPatch { diff --git a/Source/HarmonyPatches/Patch_ItemIsForbidden.cs b/Source/HarmonyPatches/Patches_PermissionFix/Patch_ItemIsForbidden.cs similarity index 68% rename from Source/HarmonyPatches/Patch_ItemIsForbidden.cs rename to Source/HarmonyPatches/Patches_PermissionFix/Patch_ItemIsForbidden.cs index b14a9f81..8f024ff5 100644 --- a/Source/HarmonyPatches/Patch_ItemIsForbidden.cs +++ b/Source/HarmonyPatches/Patches_PermissionFix/Patch_ItemIsForbidden.cs @@ -1,11 +1,13 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; +using PrisonLabor.Core.Other; +using PrisonLabor.Core.Trackers; using RimWorld; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_PermissionFix { /// /// Add checking if food is reserved by prisoner @@ -20,11 +22,9 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa { var endOfPatch = gen.DefineLabel(); yield return new CodeInstruction(OpCodes.Ldarg_0); - yield return new CodeInstruction(OpCodes.Call, typeof(PrisonerFoodReservation).GetMethod("isReserved")); - yield return new CodeInstruction(OpCodes.Brfalse, endOfPatch); yield return new CodeInstruction(OpCodes.Ldarg_1); - yield return new CodeInstruction(OpCodes.Call, typeof(Pawn).GetMethod("get_IsPrisoner")); - yield return new CodeInstruction(OpCodes.Brtrue, endOfPatch); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_ItemIsForbidden).GetMethod(nameof(CustomForbidConditions))); + yield return new CodeInstruction(OpCodes.Brfalse, endOfPatch); yield return new CodeInstruction(OpCodes.Ldc_I4_1); yield return new CodeInstruction(OpCodes.Ret); @@ -39,5 +39,14 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa yield return ci; } } + + public static bool CustomForbidConditions(Thing thing, Pawn pawn) + { + if (PrisonerFoodReservation.IsReserved(thing) && !pawn.IsPrisoner) + return true; + if (pawn.IsWatched() && ForbidUtility.IsForbidden(thing, Faction.OfPlayer)) + return true; + return false; + } } } \ No newline at end of file diff --git a/Source/HarmonyPatches/Patch_RespectReservation.cs b/Source/HarmonyPatches/Patches_PermissionFix/Patch_RespectReservation.cs similarity index 91% rename from Source/HarmonyPatches/Patch_RespectReservation.cs rename to Source/HarmonyPatches/Patches_PermissionFix/Patch_RespectReservation.cs index f7778bae..95ae9568 100644 --- a/Source/HarmonyPatches/Patch_RespectReservation.cs +++ b/Source/HarmonyPatches/Patches_PermissionFix/Patch_RespectReservation.cs @@ -1,4 +1,4 @@ -using Harmony; +using Harmony; using RimWorld; using System; using System.Collections.Generic; @@ -8,7 +8,7 @@ using Verse; using Verse.AI; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_PermissionFix { [HarmonyPatch(typeof(ReservationManager))] [HarmonyPatch("RespectsReservationsOf")] @@ -19,7 +19,7 @@ private static IEnumerable Transpiler(ILGenerator gen, IEnumera Label label = gen.DefineLabel(); yield return new CodeInstruction(OpCodes.Ldarg_0); yield return new CodeInstruction(OpCodes.Ldarg_1); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_RespectReservation).GetMethod("RespectPrisoners")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_RespectReservation).GetMethod(nameof(RespectPrisoners))); yield return new CodeInstruction(OpCodes.Brfalse, label); yield return new CodeInstruction(OpCodes.Ldc_I4_1); yield return new CodeInstruction(OpCodes.Ret); diff --git a/Source/HarmonyPatches/Patch_SocialPropernessFix.cs b/Source/HarmonyPatches/Patches_PermissionFix/Patch_SocialPropernessFix.cs similarity index 96% rename from Source/HarmonyPatches/Patch_SocialPropernessFix.cs rename to Source/HarmonyPatches/Patches_PermissionFix/Patch_SocialPropernessFix.cs index d7eb5ff5..69e13e32 100644 --- a/Source/HarmonyPatches/Patch_SocialPropernessFix.cs +++ b/Source/HarmonyPatches/Patches_PermissionFix/Patch_SocialPropernessFix.cs @@ -1,4 +1,4 @@ -using Harmony; +using Harmony; using RimWorld; using System; using System.Collections.Generic; @@ -7,7 +7,7 @@ using System.Text; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_PermissionFix { /// /// This patch will fix conditions that allows prisoners only to use some activities inside room where he is. diff --git a/Source/HarmonyPatches/Patch_RenamePrisoners.cs b/Source/HarmonyPatches/Patches_RenamingPrisoners/Patch_RenamePrisoners.cs similarity index 97% rename from Source/HarmonyPatches/Patch_RenamePrisoners.cs rename to Source/HarmonyPatches/Patches_RenamingPrisoners/Patch_RenamePrisoners.cs index f9eed890..0f1d0d54 100644 --- a/Source/HarmonyPatches/Patch_RenamePrisoners.cs +++ b/Source/HarmonyPatches/Patches_RenamingPrisoners/Patch_RenamePrisoners.cs @@ -1,4 +1,4 @@ -using Harmony; +using Harmony; using RimWorld; using System; using System.Collections.Generic; @@ -9,7 +9,7 @@ using UnityEngine; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_RenamingPrisoners { /// /// This patch is enabling to temporary rename prisoners for a duration of improsiment @@ -56,7 +56,7 @@ static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase foreach (var instr in instructions) { - if (HPatcher.IsFragment(opCodes, operands, instr, ref step, nameof(Patch_RenamePrisoners) + nameof(EnableRenamingPrisoners))) + if (HPatcher.IsFragment(opCodes, operands, instr, ref step, nameof(Patch_RenamePrisoners) + nameof(EnableRenamingPrisoners), true)) { yield return new CodeInstruction(OpCodes.Call, typeof(EnableRenamingPrisoners).GetMethod(nameof(IsColonistOrPrisonerOfColony))); } diff --git a/Source/HarmonyPatches/Patch_RestrainsPatch.cs b/Source/HarmonyPatches/Patches_Restraints/Patch_RestrainsPatch.cs similarity index 93% rename from Source/HarmonyPatches/Patch_RestrainsPatch.cs rename to Source/HarmonyPatches/Patches_Restraints/Patch_RestrainsPatch.cs index 24370bf0..3e4c7fe8 100644 --- a/Source/HarmonyPatches/Patch_RestrainsPatch.cs +++ b/Source/HarmonyPatches/Patches_Restraints/Patch_RestrainsPatch.cs @@ -1,4 +1,4 @@ -using Harmony; +using Harmony; using System; using System.Collections.Generic; using System.Linq; @@ -6,7 +6,7 @@ using System.Text; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_Restraints { [HarmonyPatch(typeof(Pawn))] [HarmonyPatch("TicksPerMove")] diff --git a/Source/HarmonyPatches/Patch_JailorTypeSaveCompatibility.cs b/Source/HarmonyPatches/Patches_SaveCompatibility/Patch_JailorTypeSaveCompatibility.cs similarity index 87% rename from Source/HarmonyPatches/Patch_JailorTypeSaveCompatibility.cs rename to Source/HarmonyPatches/Patches_SaveCompatibility/Patch_JailorTypeSaveCompatibility.cs index e443a7f7..6588f99e 100644 --- a/Source/HarmonyPatches/Patch_JailorTypeSaveCompatibility.cs +++ b/Source/HarmonyPatches/Patches_SaveCompatibility/Patch_JailorTypeSaveCompatibility.cs @@ -1,4 +1,5 @@ -using Harmony; +using Harmony; +using PrisonLabor.Constants; using RimWorld; using System; using System.Collections.Generic; @@ -7,7 +8,7 @@ using System.Text; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_SaveCompatibility { [HarmonyPatch(typeof(Pawn_WorkSettings))] [HarmonyPatch("ExposeData")] @@ -21,7 +22,7 @@ private static IEnumerable Transpiler(ILGenerator gen, IEnumera yield return new CodeInstruction(OpCodes.Ldarg_0); yield return new CodeInstruction(OpCodes.Dup); yield return new CodeInstruction(OpCodes.Ldfld, priorities); - yield return new CodeInstruction(OpCodes.Call, typeof(Patch_JailorTypeSaveCompatibility).GetMethod("AddJailor")); + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_JailorTypeSaveCompatibility).GetMethod(nameof(AddJailor))); //yield return new CodeInstruction(OpCodes.Pop); //yield return new CodeInstruction(OpCodes.Ldarg_0); yield return new CodeInstruction(OpCodes.Stfld, priorities); @@ -46,8 +47,8 @@ public static DefMap AddJailor(DefMap priori { var newPriorities = new DefMap(); - int jailorIndex = PrisonLaborDefOf.PrisonLabor_Jailor.index; - newPriorities[PrisonLaborDefOf.PrisonLabor_Jailor] = 0; + int jailorIndex = PL_DefOf.PrisonLabor_Jailor.index; + newPriorities[PL_DefOf.PrisonLabor_Jailor] = 0; foreach (var def in DefDatabase.AllDefs.Where(d => d.index < priorities.Count)) { if (def.index < jailorIndex) diff --git a/Source/HarmonyPatches/Patches_TreatmentTinkering/Patch_ReduceChanceForMentalBreak.cs b/Source/HarmonyPatches/Patches_TreatmentTinkering/Patch_ReduceChanceForMentalBreak.cs new file mode 100644 index 00000000..3ea59cf3 --- /dev/null +++ b/Source/HarmonyPatches/Patches_TreatmentTinkering/Patch_ReduceChanceForMentalBreak.cs @@ -0,0 +1,58 @@ +using Harmony; +using PrisonLabor.Core.Needs; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Text; +using Verse; +using Verse.AI; + +namespace PrisonLabor.HarmonyPatches.Patches_TreatmentTinkering +{ + /// + /// This patch is reducing chance of mental break for prisoners with low treatment + /// + [HarmonyPatch(typeof(MentalStateHandler), "TryStartMentalState")] + static class Patch_ReduceChanceForMentalBreak + { + static bool Prefix(MentalStateHandler __instance, bool __result, MentalStateDef stateDef, string reason, bool forceWake, bool causedByMood, Pawn otherPawn) + { + if (!causedByMood) + return true; + + Pawn pawn = (Pawn)(typeof(MentalStateHandler).GetField("pawn", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(__instance)); + + if (pawn.IsPrisonerOfColony) + { + var need = pawn.needs.TryGetNeed(); + TreatmentCategory treatmentCat = need.CurCategory; + bool suspended = false; + float chance = 0f; + + switch (treatmentCat) + { + case TreatmentCategory.Normal: + chance = 0.1f; + break; + case TreatmentCategory.Bad: + chance = 0.5f; + break; + case TreatmentCategory.VeryBad: + chance = 1f; + break; + } + + suspended = UnityEngine.Random.value < chance; + + if (suspended) + { + __result = false; + return false; + } + } + return true; + } + } +} diff --git a/Source/HarmonyPatches/Patches_Version/Patch_AddModVersionToFile.cs b/Source/HarmonyPatches/Patches_Version/Patch_AddModVersionToFile.cs new file mode 100644 index 00000000..e0200df8 --- /dev/null +++ b/Source/HarmonyPatches/Patches_Version/Patch_AddModVersionToFile.cs @@ -0,0 +1,117 @@ +using Harmony; +using PrisonLabor.Core.Meta; +using System.Collections.Generic; +using System.Reflection; +using System.Reflection.Emit; +using Verse; +using Version = PrisonLabor.Core.Meta.Version; + +namespace PrisonLabor.HarmonyPatches.Patches_Version +{ + static class Patch_AddModVersionToFile + { + private const string ParameterName = "PrisonLaborVersion"; + + [HarmonyPatch(typeof(ScribeMetaHeaderUtility))] + [HarmonyPatch(nameof(ScribeMetaHeaderUtility.WriteMetaHeader))] + static class Patch_WriteVersion + { + /* === Orignal code Look-up=== + * + * catch + * { + * (...) + * <--- + * } + * finally + * { + * (...) + * } + * + * === CIL Instructions === + * + * leave | label 4 | no labels + * + */ + + static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instructions) + { + OpCode[] opCodes1 = + { + OpCodes.Leave, + }; + string[] operands1 = + { + "System.Reflection.Emit.Label", + }; + int step1 = 0; + + foreach (var instr in instructions) + { + if (HPatcher.IsFragment(opCodes1, operands1, instr, ref step1, nameof(Patch_WriteVersion), true)) + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_WriteVersion).GetMethod(nameof(AddMetaData))); + yield return instr; + } + } + + public static void AddMetaData() + { + var currentVersionString = VersionUtility.versionNumber; + Scribe_Values.Look(ref currentVersionString, ParameterName, default(Version), true); + } + } + + + [HarmonyPatch(typeof(ScribeMetaHeaderUtility))] + [HarmonyPatch(nameof(ScribeMetaHeaderUtility.LoadGameDataHeader))] + static class Patch_LoadVersion + { + /* === Orignal code Look-up=== + * + * catch + * { + * (...) + * <--- + * } + * finally + * { + * (...) + * } + * + * === CIL Instructions === + * + * leave | label x | no labels + * + */ + + static IEnumerable Transpiler(ILGenerator gen, MethodBase mBase, IEnumerable instructions) + { + OpCode[] opCodes1 = + { + OpCodes.Leave, + }; + string[] operands1 = + { + "System.Reflection.Emit.Label", + }; + int step1 = 0; + + foreach (var instr in instructions) + { + if (HPatcher.IsFragment(opCodes1, operands1, instr, ref step1, nameof(Patch_LoadVersion), true)) + yield return new CodeInstruction(OpCodes.Call, typeof(Patch_LoadVersion).GetMethod(nameof(ReadMetaData))); + yield return instr; + } + } + + public static void ReadMetaData() + { + var currentVersionString = VersionUtility.versionNumber; + // TODO change version to 0.9.6 later, on next major update from RimWorld 1.0 + Scribe_Values.Look(ref currentVersionString, ParameterName, Version.v0_9_6, true); + VersionUtility.VersionOfSaveFile = currentVersionString; + } + } + + } +} diff --git a/Source/HarmonyPatches/Patch_DisableAreaRestrictionsForPrisoners.cs b/Source/HarmonyPatches/Patches_WorkSettings/Patch_DisableAreaRestrictionsForPrisoners.cs similarity index 92% rename from Source/HarmonyPatches/Patch_DisableAreaRestrictionsForPrisoners.cs rename to Source/HarmonyPatches/Patches_WorkSettings/Patch_DisableAreaRestrictionsForPrisoners.cs index 47422715..6d4cc489 100644 --- a/Source/HarmonyPatches/Patch_DisableAreaRestrictionsForPrisoners.cs +++ b/Source/HarmonyPatches/Patches_WorkSettings/Patch_DisableAreaRestrictionsForPrisoners.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Reflection; using System.Reflection.Emit; using Harmony; @@ -6,7 +6,7 @@ using UnityEngine; using Verse; -namespace PrisonLabor.Harmony +namespace PrisonLabor.HarmonyPatches.Patches_WorkSettings { /// /// This patch will remove prisoners in "Restrict" tab. @@ -23,7 +23,7 @@ private static IEnumerable Transpiler(ILGenerator gen, MethodBa var jumpTo = gen.DefineLabel(); yield return new CodeInstruction(OpCodes.Ldarg_2); yield return new CodeInstruction(OpCodes.Call, - typeof(DisableAreaRestrictionsForPrisoners).GetMethod("isPrisoner")); + typeof(DisableAreaRestrictionsForPrisoners).GetMethod(nameof(isPrisoner))); yield return new CodeInstruction(OpCodes.Brfalse, jumpTo); yield return new CodeInstruction(OpCodes.Ret); diff --git a/Source/HarmonyPatches/Patches_WorkSettings/Patch_ResetWorktableWhenRecruited.cs b/Source/HarmonyPatches/Patches_WorkSettings/Patch_ResetWorktableWhenRecruited.cs new file mode 100644 index 00000000..e0ab96fe --- /dev/null +++ b/Source/HarmonyPatches/Patches_WorkSettings/Patch_ResetWorktableWhenRecruited.cs @@ -0,0 +1,26 @@ +using Harmony; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Verse; + +//Faction newFaction, Pawn recruiter = null + +namespace PrisonLabor.HarmonyPatches.Patches_WorkSettings +{ + [HarmonyPatch(typeof(Pawn))] + [HarmonyPatch("SetFaction")] + [HarmonyPatch(new[] { typeof(Faction), typeof(Pawn) })] + class Patch_ResetWorktableWhenRecruited + { + private static void Prefix(Pawn __instance, Faction newFaction, Pawn recruiter) + { + if(__instance.IsPrisonerOfColony && newFaction == Faction.OfPlayer) + { + __instance.workSettings = null; + } + } + } +} diff --git a/Source/HarmonyPatches/Patch_TimetableFix.cs b/Source/HarmonyPatches/Patches_WorkSettings/Patch_TimetableFix.cs similarity index 95% rename from Source/HarmonyPatches/Patch_TimetableFix.cs rename to Source/HarmonyPatches/Patches_WorkSettings/Patch_TimetableFix.cs index f68e3b15..a8dafa2d 100644 --- a/Source/HarmonyPatches/Patch_TimetableFix.cs +++ b/Source/HarmonyPatches/Patches_WorkSettings/Patch_TimetableFix.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -7,7 +7,7 @@ using System.Reflection.Emit; using Verse; -namespace PrisonLabor.HarmonyPatches +namespace PrisonLabor.HarmonyPatches.Patches_WorkSettings { [HarmonyPatch(typeof(Pawn_TimetableTracker))] [HarmonyPatch("get_CurrentAssignment")] diff --git a/Source/HarmonyPatches/Triggers.cs b/Source/HarmonyPatches/Triggers.cs new file mode 100644 index 00000000..3956dd29 --- /dev/null +++ b/Source/HarmonyPatches/Triggers.cs @@ -0,0 +1,73 @@ +using Harmony; +using PrisonLabor.Core.GameSaves; +using PrisonLabor.Core.Other; +using PrisonLabor.Core.Trackers; +using PrisonLabor.Core.Windows; +using RimWorld; +using System; +using System.Collections.Generic; +using System.Reflection.Emit; +using UnityEngine; +using Verse; + +namespace PrisonLabor.HarmonyPatches +{ + /// + /// This is group of patch dedicated to attach execution of other methods similar to event handling. + /// The difference between patches inside this class, and others is that + /// this patches are executing single method of Prison Labor classes. + /// + static class Triggers + { + [HarmonyPatch(typeof(FloatMenuMakerMap))] + [HarmonyPatch("AddHumanlikeOrders")] + [HarmonyPatch(new[] { typeof(Vector3), typeof(Pawn), typeof(List) })] + static class AddHumanlikeOrders + { + public static void Prefix(Vector3 clickPos, Pawn pawn, List opts) { ArrestUtility.AddArrestOrder(clickPos, pawn, opts); } + } + + [HarmonyPatch(typeof(Pawn_HealthTracker), "PreApplyDamage")] + static class Trigger_PreApplyDamage + { + static IEnumerable Transpiler(IEnumerable instr) + { + foreach (var ci in instr) + { + if (ci.opcode == OpCodes.Ret) + { + yield return new CodeInstruction(OpCodes.Ldarg_0); + yield return new CodeInstruction(OpCodes.Ldarg_1); + yield return new CodeInstruction(OpCodes.Ldarg_2); + yield return new CodeInstruction(OpCodes.Ldind_I1); + yield return new CodeInstruction(OpCodes.Call, typeof(TreatmentUtility).GetMethod(nameof(TreatmentUtility.OnApplyDamage))); + } + + yield return ci; + } + } + } + + [HarmonyPatch(typeof(Game))] + [HarmonyPatch(nameof(Game.LoadGame))] + static class UpgradeSave + { + static bool Prefix() { SaveUpgrader.Upgrade(); return true; } + } + + [HarmonyPatch(typeof(Map))] + [HarmonyPatch(nameof(Map.MapPostTick))] + static class InsiprationTracker + { + static bool Prefix(Map __instance) { InspirationTracker.Calculate(__instance); return true; } + } + + [HarmonyPatch(typeof(Map))] + [HarmonyPatch("FinalizeInit")] + [HarmonyPatch(new Type[] { })] + static class Patch_ShowNews + { + static void Postfix() { NewsWindow.TryShow();} + } + } +} diff --git a/Source/IncidentWorker_Revolt.cs b/Source/IncidentWorker_Revolt.cs deleted file mode 100644 index d01db652..00000000 --- a/Source/IncidentWorker_Revolt.cs +++ /dev/null @@ -1,129 +0,0 @@ -using System; -using UnityEngine; -using Verse; -using RimWorld; -using Verse.AI.Group; -using System.Collections.Generic; - -namespace PrisonLabor -{ - public class IncidentWorker_Revolt : IncidentWorker - { - private const float HivePoints = 400f; - private const float MinMotivationToStart = 0.4f; - - protected override bool CanFireNowSub(IncidentParms parms) - { - Map map = parms.target as Map; - - bool enemyFaction = false; - float accumulatedMotivation = 0.0f; - int prisonersCount = 0; - - foreach (var pawn in map.mapPawns.PrisonersOfColony) - { - if (pawn.Faction.HostileTo(Faction.OfPlayer)) - enemyFaction = true; - - var need = pawn.needs.TryGetNeed(); - if (need == null) - continue; - accumulatedMotivation += need.CurLevel; - prisonersCount++; - } - - if (accumulatedMotivation / prisonersCount > MinMotivationToStart) - return false; - - return enemyFaction && PrisonLaborPrefs.EnableRevolts; - } - - protected override bool TryExecuteWorker(IncidentParms parms) - { - Map map = (Map)parms.target; - Pawn t = null; - var affectedPawns = new List(map.mapPawns.PrisonersOfColony); - foreach (Pawn pawn in affectedPawns) - { - if (pawn.Faction.HostileTo(Faction.OfPlayer)) - { - parms.faction = pawn.Faction; - t = pawn; - break; - } - } - float points = parms.points; - int prisonersLeft = affectedPawns.Count; - foreach (Pawn pawn in affectedPawns) - { - pawn.ClearMind(); - pawn.guest.SetGuestStatus(null, false); - pawn.SetFaction(parms.faction); - - ThingWithComps weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("MeleeWeapon_Shiv"), ThingDefOf.WoodLog) as ThingWithComps; - ThingWithComps ammo = null; - int pointsToRemove = 0; - - if (parms.points >= 1000) - weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("MeleeWeapon_Shiv"), ThingDefOf.Steel) as ThingWithComps; - - if (points >= 1000) - { - // If combat extended is enabled - if (DefDatabase.GetNamed("Weapon_GrenadeStickBomb", false) != null) - { - if (UnityEngine.Random.value > 0.5f) - { - weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeStickBomb")) as ThingWithComps; - ammo = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeStickBomb")) as ThingWithComps; - ammo.stackCount = 6; - } - else - { - weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeMolotov")) as ThingWithComps; - ammo = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeMolotov")) as ThingWithComps; - ammo.stackCount = 6; - } - } - else - { - weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("Weapon_GrenadeMolotov")) as ThingWithComps; - } - - pointsToRemove = 500; - } - else if (points >= 500) - { - weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("Bow_Short")) as ThingWithComps; - - if (DefDatabase.GetNamed("Ammo_Arrow_Stone", false) != null) - { - ammo = ThingMaker.MakeThing(DefDatabase.GetNamed("Ammo_Arrow_Stone")) as ThingWithComps; - ammo.stackCount = 30; - } - - pointsToRemove = 100; - } - else if (points >= 300) - { - weapon = ThingMaker.MakeThing(DefDatabase.GetNamed("MeleeWeapon_Club"), ThingDefOf.Granite) as ThingWithComps; - pointsToRemove = 100; - } - - if (pawn.equipment.Primary == null) - { - pawn.equipment.AddEquipment(weapon); - if (ammo != null) - pawn.inventory.innerContainer.TryAdd(ammo); - points -= pointsToRemove; - } - } - var lordJob = new LordJob_AssaultColony(); - //TODO old code: - LordMaker.MakeNewLord(parms.faction, lordJob/*(new RaidStrategyWorker_ImmediateAttackSmart()).MakeLordJob(parms, map)*/, map, affectedPawns); - base.SendStandardLetter(t, null, new string[] { t.Name.ToStringShort, t.Faction.Name }); - Find.TickManager.slower.SignalForceNormalSpeedShort(); - return true; - } - } -} \ No newline at end of file diff --git a/Source/Initialization.cs b/Source/Initialization.cs index f687a9a9..da58a7da 100644 --- a/Source/Initialization.cs +++ b/Source/Initialization.cs @@ -1,6 +1,13 @@ -using PrisonLabor.HarmonyPatches; +using PrisonLabor.Core.Hediffs; +using PrisonLabor.Core.LaborArea; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Settings; +using PrisonLabor.HarmonyPatches; using PrisonLabor.Tweaks; +using RimWorld; using System; +using System.Collections.Generic; +using System.Linq; using Verse; namespace PrisonLabor @@ -18,13 +25,12 @@ static Initialization() SettingsMenu.Init(); VersionUtility.CheckVersion(); Designator_AreaLabor.Initialization(); - Behaviour_MotivationIcon.Initialization(); CompatibilityPatches.Initialization.Run(); HediffManager.Init(); Log.Message($"Enabled Prison Labor v{VersionUtility.versionString}"); } - catch(Exception e) + catch (Exception e) { Log.Error($"Prison Labor v{VersionUtility.versionString} caught error during start up:\n{e.Message}"); } diff --git a/Source/InspirationUtility.cs b/Source/InspirationUtility.cs deleted file mode 100644 index a0092878..00000000 --- a/Source/InspirationUtility.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System.Collections.Generic; -using Verse; - -namespace PrisonLabor -{ - internal class InspirationUtility - { - public static Dictionary> inspirationValues = new Dictionary>(); - - public static float GetInsiprationValue(Pawn pawn) - { - var map = pawn.Map; - if (!inspirationValues.ContainsKey(map) || !inspirationValues[map].ContainsKey(pawn)) - Calculate(map); - var value = inspirationValues[map][pawn]; - inspirationValues[map].Remove(pawn); - return value; - } - - private static void Calculate(Map map) - { - var wardens = new List(); - wardens.AddRange(map.mapPawns.FreeColonists); - var prisoners = new List(); - prisoners.AddRange(map.mapPawns.PrisonersOfColony); - - inspirationValues[map] = new Dictionary(); - foreach (var prisoner in prisoners) - inspirationValues[map][prisoner] = 0f; - - var prisonersInRange = new List(); - foreach (var warden in wardens) - { - prisonersInRange.Clear(); - foreach (var prisoner in prisoners) - if (warden.Position.DistanceTo(prisoner.Position) < Need_Motivation.InpirationRange && - prisoner.GetRoom() == warden.GetRoom()) - prisonersInRange.Add(prisoner); - - var delta = Need_Motivation.InspireRate / prisonersInRange.Count; - - foreach (var prisoner in prisonersInRange) - inspirationValues[map][prisoner] += delta; - } - } - } -} \ No newline at end of file diff --git a/Source/JobGiver_Diet.cs b/Source/JobGiver_Diet.cs deleted file mode 100644 index d49b50b3..00000000 --- a/Source/JobGiver_Diet.cs +++ /dev/null @@ -1,90 +0,0 @@ -using RimWorld; -using Verse; -using Verse.AI; - -namespace PrisonLabor -{ - internal class JobGiver_Diet : ThinkNode_JobGiver - { - private HungerCategory minCategory = HungerCategory.Hungry; - private readonly HungerCategory stopWorkingCat = HungerCategory.UrgentlyHungry; - - public override ThinkNode DeepCopy(bool resolve = true) - { - var jobGiver_Diet = (JobGiver_Diet) base.DeepCopy(resolve); - jobGiver_Diet.minCategory = minCategory; - return jobGiver_Diet; - } - - public override float GetPriority(Pawn pawn) - { - var food = pawn.needs.food; - if (food == null) - return 0f; - if (pawn.needs.food.CurCategory < HungerCategory.Starving && FoodUtility_Tweak.ShouldBeFedBySomeone(pawn)) - return 0f; - if (food.CurCategory < minCategory) - return 0f; - if (food.CurCategory <= stopWorkingCat) - return 11f; - if (food.CurLevelPercentage < pawn.RaceProps.FoodLevelPercentageWantEat) - return 7f; - return 0f; - } - - protected override Job TryGiveJob(Pawn pawn) - { - var food = pawn.needs.food; - if (food == null || food.CurCategory < minCategory) - return null; - var need = pawn.needs.TryGetNeed(); - if (need != null) - need.Enabled = false; - bool flag; - if (pawn.RaceProps.Animal) - { - flag = true; - } - else - { - var firstHediffOfDef = pawn.health.hediffSet.GetFirstHediffOfDef(HediffDefOf.Malnutrition, false); - flag = firstHediffOfDef != null && firstHediffOfDef.Severity > 0.4f; - } - var desperate = pawn.needs.food.CurCategory == HungerCategory.Starving; - var allowCorpse = flag; - Thing thing; - ThingDef def; - if (!FoodUtility_Tweak.TryFindBestFoodSourceFor(pawn, pawn, desperate, out thing, out def, true, true, true, - allowCorpse, false)) - return null; - var pawn2 = thing as Pawn; - if (pawn2 != null) - return new Job(JobDefOf.PredatorHunt, pawn2) - { - killIncappedTarget = true - }; - var building_NutrientPasteDispenser = thing as Building_NutrientPasteDispenser; - if (building_NutrientPasteDispenser != null && - !building_NutrientPasteDispenser.HasEnoughFeedstockInHoppers()) - { - var building = building_NutrientPasteDispenser.AdjacentReachableHopper(pawn); - if (building != null) - { - var hopperSgp = building as ISlotGroupParent; - var job = WorkGiver_CookFillHopper.HopperFillFoodJob(pawn, hopperSgp); - if (job != null) - return job; - } - thing = FoodUtility_Tweak.BestFoodSourceOnMap(pawn, pawn, desperate, FoodPreferability.MealLavish, - false, !pawn.IsTeetotaler(), false, false, false, false, false); - if (thing == null) - return null; - def = thing.def; - } - return new Job(JobDefOf.Ingest, thing) - { - count = FoodUtility_Tweak.WillIngestStackCountOf(pawn, def) - }; - } - } -} \ No newline at end of file diff --git a/Source/LaborExclusionUtility.cs b/Source/LaborExclusionUtility.cs deleted file mode 100644 index c469a730..00000000 --- a/Source/LaborExclusionUtility.cs +++ /dev/null @@ -1,15 +0,0 @@ -using Verse; - -namespace PrisonLabor -{ - internal class LaborExclusionUtility - { - public static bool IsDisabledByLabor(IntVec3 pos, Pawn pawn, WorkTypeDef workType) - { - if (pos != null && pawn.Map.areaManager.Get() != null && - !WorkSettings.WorkDisabled(workType)) - return pawn.Map.areaManager.Get()[pos]; - return false; - } - } -} \ No newline at end of file diff --git a/Source/Libraries/0Harmony.dll b/Source/Libraries/0Harmony.dll new file mode 100644 index 0000000000000000000000000000000000000000..9654e2acbf7996a4ab78183c988cfb566000f1e7 GIT binary patch literal 71168 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 O#k+oudGKr8_5Tfpa(!0- literal 0 HcmV?d00001 diff --git a/Source/Need_Motivation.cs b/Source/Need_Motivation.cs deleted file mode 100644 index 62ff6256..00000000 --- a/Source/Need_Motivation.cs +++ /dev/null @@ -1,219 +0,0 @@ -using System.Collections.Generic; -using System.Text; -using RimWorld; -using UnityEngine; -using Verse; - -namespace PrisonLabor -{ - public class Need_Motivation : Need - { - public const float InspireRate = 0.015f; - public const int WardenCapacity = (int)(InspireRate / LazyRate); - public const float InpirationRange = 10.0f; - - private const float LazyLevel = 0.2f; - private const float NeedInspirationLevel = 0.5f; - private const float LazyRate = 0.002f; - private const float HungryRate = 0.006f; - private const float TiredRate = 0.006f; - private const float HealthRate = 0.006f; - private const float JoyRate = 0.006f; - private const int ReadyToRunLevel = 100; - - private static NeedDef def; - - private int delta; - private int impatient; - - public Need_Motivation(Pawn pawn) : base(pawn) - { - delta = 0; - impatient = 0; - ReadyToRun = false; - Insipred = false; - } - - public bool Enabled { get; set; } - - public bool NeedToBeInspired { get; private set; } - - public bool IsLazy { get; private set; } - - public bool ReadyToRun { get; private set; } - - public bool Insipred { get; private set; } - - public bool CanEscape { get; set; } - - public float PercentageThreshNeedInsipration => NeedInspirationLevel; - - public float PercentageThreshLazy => LazyLevel; - - //TODO change to lazy category? - public HungerCategory CurCategory => 0; - - public override int GUIChangeArrow => delta; - - public bool Motivated - { - get - { - if (delta == 1) - return true; - return false; - } - } - - public static NeedDef Def - { - get - { - if (def == null) - def = DefDatabase.GetNamed("PrisonLabor_Motivation"); - return def; - } - } - - private float LazinessRate - { - get - { - if (pawn.IsPrisoner && pawn.IsPrisonerOfColony) - { - if (pawn.GetRoomGroup() != null) - { - var value = InspirationUtility.GetInsiprationValue(pawn); - - if (PrisonLaborUtility.LaborEnabled(pawn)) - { - if (Enabled) - { - value -= LazyRate; - if (HealthAIUtility.ShouldSeekMedicalRest(pawn)) - value -= HealthRate; - value -= (int)pawn.needs.food.CurCategory * HungryRate; - value -= (int)pawn.needs.rest.CurCategory * TiredRate; - if (value >= 0) - Insipred = true; - else - Insipred = false; - } - else if (pawn.timetable != null && - pawn.timetable.CurrentAssignment == TimeAssignmentDefOf.Joy) - { - if (value != 0) - Insipred = true; - else - Insipred = false; - value += JoyRate; - } - else - { - if (value != 0) - Insipred = true; - else - Insipred = false; - } - delta = value.CompareTo(0.0f); - return value; - } - else - { - if (value != 0) - Insipred = true; - else - Insipred = false; - - delta = value.CompareTo(0.0f); - return value; - } - } - else - { - delta = 0; - return 0.0f; - } - } - delta = 1; - return +0.01f; - } - } - - public override void ExposeData() - { - base.ExposeData(); - //Scribe_Values.Look(ref this.lastNonStarvingTick, "lastNonStarvingTick", -99999, false); - } - - public override void NeedInterval() - { - CurLevel += LazinessRate; - - if (CurLevel == MaxLevel) - NeedToBeInspired = false; - if (CurLevel <= NeedInspirationLevel && !NeedToBeInspired) - NeedToBeInspired = true; - if (CurLevel <= LazyLevel && !IsLazy && delta <= 0) - { - IsLazy = true; - Tutorials.Motivation(); - } - else if (IsLazy && delta > 0) - { - IsLazy = false; - } - - ImpatientTick(); - } - - public override void SetInitialLevel() - { - CurLevelPercentage = 1.0f; - Enabled = false; - } - - public override string GetTipString() - { - var stringBuilder = new StringBuilder(); - stringBuilder.AppendLine(base.GetTipString()); - stringBuilder.AppendLine(); - stringBuilder.AppendLine("PrisonLabor_WardenResponseThreshold".Translate() + ": " + - PercentageThreshNeedInsipration.ToStringPercent()); - stringBuilder.AppendLine( - "PrisonLabor_StoppingWorkThreshold".Translate() + ": " + PercentageThreshLazy.ToStringPercent()); - return stringBuilder.ToString(); - } - - public override void DrawOnGUI(Rect rect, int maxThresholdMarkers = 2147483647, float customMargin = -1f, - bool drawArrows = true, bool doTooltip = true) - { - if (threshPercents == null) - threshPercents = new List(); - threshPercents.Clear(); - threshPercents.Add(PercentageThreshLazy); - threshPercents.Add(PercentageThreshNeedInsipration); - base.DrawOnGUI(rect, maxThresholdMarkers, customMargin, drawArrows, doTooltip); - } - - private void ImpatientTick() - { - if (Insipred || !CanEscape) - { - if (impatient != 0) - { - impatient = 0; - ReadyToRun = false; - } - } - else if (!ReadyToRun) - { - impatient++; - if (impatient >= ReadyToRunLevel) - { - ReadyToRun = true; - } - } - } - } -} \ No newline at end of file diff --git a/Source/NewsDialog.cs b/Source/NewsDialog.cs deleted file mode 100644 index 31dd528e..00000000 --- a/Source/NewsDialog.cs +++ /dev/null @@ -1,526 +0,0 @@ -using System.Collections.Generic; -using UnityEngine; -using Verse; - -namespace PrisonLabor -{ - internal class NewsDialog : Window - { - // Constans - private const float Spacing = 2f; - private const float GapHeight = 12f; - private const string MarginText = " - "; - private readonly float MarginWidth = Text.fontStyles[1].CalcSize(new GUIContent(MarginText)).x; - private const GameFont TitleFont = GameFont.Medium; - private const GameFont ItemFont = GameFont.Small; - - // Static Properties - public static bool autoShow; - - public static bool showAll = false; - - public static bool news_0_5 = false; - public static bool news_0_6 = false; - public static bool news_0_7 = false; - public static bool news_0_8_0 = false; - public static bool news_0_8_1 = false; - public static bool news_0_8_3 = false; - public static bool news_0_8_6 = false; - public static bool news_0_9_0 = false; - public static bool news_0_9_1 = false; - public static bool news_0_9_2 = false; - public static bool news_0_9_9 = false; - - // Fields - private string[] titles; - private string[][] items; - - private Vector2 position; - - public NewsDialog() - { - doCloseButton = true; - doCloseX = true; - Init(); - } - - public void Init() - { - List titlesList = new List(); - List itemsList = new List(); - - // How to insert news: - // [subtitle] for subtitle - // [img] ... [/img] for image (inside name of file) - // [gap] for gap - - // 0.9.11 - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.9.11"); - string[] itemsArray = - { - "fixed compatibility with Fluffy's WorkTab (final)", - }; - itemsList.Add(itemsArray); - } - - // 0.9.10 - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.9.10"); - string[] itemsArray = - { - "hotfixed compatibility with Fluffy's WorkTab (still have some visual flaws)", - }; - itemsList.Add(itemsArray); - } - - // 0.9.9 - if (news_0_9_9 || showAll) - { - titlesList.Add("Prison Labor Beta v0.9.9"); - string[] itemsArray = - { - "added sub-tabs in \"Work\" Tab and \"Assign\" Tab for \"Colonists\" and \"Prisoners\"", - "added renaming Prisoners for imprisonment time (pawns will restore old names after releasing)", - }; - itemsList.Add(itemsArray); - } - - // 0.9.8 - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.9.8"); - string[] itemsArray = - { - "fixed SeedsPlease compatibility", - }; - itemsList.Add(itemsArray); - } - - // 0.9.7 - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.9.7"); - string[] itemsArray = - { - "added warning message before placing labor area for the first time", - }; - itemsList.Add(itemsArray); - } - - // 0.9.6 - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.9.6"); - string[] itemsArray = - { - "updated to RimWorld 1.0", - }; - itemsList.Add(itemsArray); - } - - // 0.9.5 - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.9.5"); - string[] itemsArray = - { - "updated to RimWorld Beta 19", - }; - itemsList.Add(itemsArray); - } - - // 0.9.4 - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.9.4"); - string[] itemsArray = - { - "disabled Warden and Jailor types of work for prisoner labor, it should fix bug, where jailors do not warden inside labor area", - }; - itemsList.Add(itemsArray); - } - - // 0.9.3 - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.9.3"); - string[] itemsArray = - { - "fixed compatibility with No Water no Life", - "fixed compatibility with Dubs Bad Hygiene Mod", - "fixed error with loading old saves", - }; - itemsList.Add(itemsArray); - } - - // 0.9.2 - if (news_0_9_2 || showAll) - { - titlesList.Add("Prison Labor Beta v0.9.2"); - string[] itemsArray = - { - "fixed seeds please compatibility issue", - "added option to disable revolts", - }; - itemsList.Add(itemsArray); - } - // 0.9.1 - if (news_0_9_1 || showAll) - { - titlesList.Add("Prison Labor Beta v0.9.1"); - string[] itemsArray = - { - "changed max. skill required for non-advanced growing by prisoners to 6 instead of 0", - "added new work type Jailor", - "fixed drawing icons on world map", - "fixed disabling mod from existing saves", - "fixed incorrectly showing \"advanced growing by prisoners\" option", - }; - itemsList.Add(itemsArray); - } - // 0.9.0 - if (news_0_9_0 || showAll) - { - titlesList.Add("Prison Labor Beta v0.9.0"); - string[] itemsArray = - { - "updated to RimWorld beta v18", - "added option to disable icons above prisoners heads in mod menu", - "fixed error \"null reference in onGui()\" when loading save", - }; - itemsList.Add(itemsArray); - } - // 0.8.8 (silent) - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.8.8"); - string[] itemsArray = - { - "changed slow from prisoners chains to act as factor instead offset", - "fixed compatibility issues with Seeds Please(again)", - }; - itemsList.Add(itemsArray); - } - // 0.8.7 (silent) - if (showAll) - { - titlesList.Add("Prison Labor Beta v0.8.7"); - string[] itemsArray = - { - "fixed bug with dropping motivation while in bed", - "prisoners will now get different weapons when revolt triggers (molotovs, bows, or clubs)", - "replaced orginal jobs with \"tweak\" jobs (instead of overriding them, this fix is for users who use \"WorkTab\" by Fluffy)", - "removed warning message from logs", - "prisoners will now have 50% of normal speed in chains (instead of 35%)", - "prisoners will now break chains after some period of time instead of immadiately(matter in incidents, breakouts etc.)", - "wardens will now try to motivate most prisoners at once, but with priority to motivate lowest motivation first", - "fixed bug with animals do not respect reservations (and vice versa)", - }; - itemsList.Add(itemsArray); - } - // 0.8.6 - if (news_0_8_6 || showAll) - { - titlesList.Add("Prison Labor Beta v0.8.6"); - string[] itemsArray = - { - "[img]NewsElement_Locks[/img]Locks mod:\nIf you want to allow prisoners to pass by closed doors, please check out my other mod called Locks", - "[gap]", - "fixed bug that Sowing job do not comply to Labor Area", - "fixed bug with JoyGiver debris (sorry about that)", - "reduced number of null reference errors with OnGui() method (fixed in v 0.8.5)", - "single warden will be able to maintain 7 prisoners, instead of 5 (because of laziness rate reduction) (changed in v 0.8.5)", - "decreased laziness rate to 0.002, instead of 0.003 (prisoners will get lazy 1.5x slower) (changed in v 0.8.5)", - "decreased manipulation to 70% (instead of 80%) (changed in v 0.8.5)", - "fixed null reference exception at loading game (fixed in v 0.8.4)", - }; - itemsList.Add(itemsArray); - } - // 0.8.3 - if (news_0_8_3 || showAll) - { - titlesList.Add("Prison Labor Beta v0.8.3"); - string[] itemsArray = - { - "fixed bugs with disabling mod(now you can safely disable mod again)", - "fixed bug with prioritizing work", - "fixed bug with rendering icons on world map", - }; - itemsList.Add(itemsArray); - } - // 0.8.1 - if (news_0_8_1 || showAll) - { - titlesList.Add("Prison Labor Beta v0.8.1"); - string[] itemsArray = - { - "[subtitle] Sorry for any inconvenience caused by 0.8.0 update. Some part of mod are very vulnerable to any mods installed", - "[subtitle] If you encouter any bugs please report it on github. I'm fixing most important ones every day. This is (recently) beta version and it has to consist some bugs. Thank you for understaning.", - "[subtitle] Also you can always download old version via github, but I think this was last big update", - "re-enabled button in Bills detail panel", - "added slider to Bills (temporary fix)", - "fixed Bill \"Prisoner only\" button (I think, let me know if you still experience errors)", - "fixed prisoners aren't working when Motivation is disabled (via Settings)", - "fixed null-reference error on some revolts incidents", - }; - itemsList.Add(itemsArray); - } - // 0.8.0 - if (news_0_8_0 || showAll) - { - titlesList.Add("Prison Labor Beta v0.8.0"); - string[] itemsArray = - { - "[subtitle]Now in Beta! I would no longer add any more features. Instead I will focus on improving existing ones.", - "[gap]", - "[subtitle]Main changes:", - "[img]NewsElement_Revolt[/img]Revolts:\nPrisoners will now form organized group under self-elected leader if motivation of prisoners is low. They will try to inflict damage to your colony or they will attemp running to elected enemy faction", - "[img]NewsElement_InspirationReworked[/img]Insiration reworked:\nQuicker, better and more intuitive.\nYou can now send your prisoners to work outside your walls, but be carefull: they will try to escape if left alone. Prisoners will start thinking about escape after being left for some time.", - "[img]LaborAreaExpand[/img]Labor area:\nYou can now select area for labor only. Your colonists will no longer go mine with peasants.\nTo access this tool look into \"Architect->Zones\" panel.", - "[img]NewsElement_PrisonersOnly[/img]Prisoners Only button\nGo to Bill details to mark bills for prisoners only!", - "[img]NewsElement_WorkAndRecruit[/img]Work and recruit:\nThis feature has been mostly requested by community. I hope it will be well received.", - "[gap]", - "[subtitle]Other changes:", - "added default prisoner interaction mode option to settings menu", - "added icons above prisoners indicating whenever he's being motivated/inspired", - "reduced manipulation capability of prisoners (now they have 80% of normal manipulation, down from 100%)", - "added tutorials triggers (now all tutorials will be shown)", - "added watched tutorials to properties (tutorials will no longer be shown after reenabling mod)", - "fixed forbidden bug with harvesting plants (again)", - "fixed Toil reservation bug (not respecting prisoners' job)", - "fixed compatibility with Dubs Hygiene Mod", - "fixed SeedsPlease compatibility", - "excluded supervising from labor", - "rewritten news dialog - now with images and stuff", - "perfomance and code improvements", - "translation improvements", - "[gap]", - "[subtitle]Also I want to annouce that I will start new mod called Prison Expansion that would be PrisonExtensions remake.The aim of this mod would be improving Prison Labor experience, especially cell doors and fences.", - }; - itemsList.Add(itemsArray); - } - // 0.7 - if (news_0_7 || showAll) - { - titlesList.Add("Prison Labor Alpha v0.7"); - string[] itemsArray = - { - "Added settings! You can now change almost any aspect of this mod, including:\n * work types\n * motivation mechanics\n * prevention of planting advanced plants.", - "Added \"uninstaller\" (\"disable\" option in settings), which will allow to disable this mod from existing saves.", - "\"No more beeping!\". Changed way of informing player what's going on with prisoners. It should be less annoying and more insightful.", - "Fixed bugs, including bug that prevents prisoners from cleaning and bug that causes warden to stuck in loop of delivering food to prisoner.", - "\"No more watching while prisoner is sleeping.\"Wardens will no longer watch over not working prisoners.", - "Prisoners will now stay in bed while waiting for operation", - "Prisoners will now stop work when starving for default (\"Anything\" time), instead of hungry. They will still get minor debuff.", - }; - itemsList.Add(itemsArray); - } - // 0.6 - if (news_0_6 || showAll) - { - titlesList.Add("Prison Labor Alpha v0.6"); - string[] itemsArray = - { - "Time restrictions - now you can manage your prisoners time for sleep, work and joy. You can now even force them to work when they're hungry!", - "Getting food by prisoners - Now prisoners will look for food in much better way, and now (when they desperate enough) they will eat corpses!", - "\"Laziness\" changed to \"Motivation\" and inverted.\n\n ATTENTION: After PrisonLabor reaches beta all saves with PrisonLabor v0.5a or lower will be corrupted and unplayable. This version (0.6) is safe and converts all older saves.", - }; - itemsList.Add(itemsArray); - } - // 0.5 - if (news_0_5 || showAll) - { - titlesList.Add("Prison Labor Alpha v0.5"); - string[] itemsArray = - { - "Prisoners can now grow, but only plants that not require any skills.", - "You can now manage prisoners work types. Just check \"Work\" tab!", - "Laziness now appear on \"Needs\" tab. Above 50% wardens will watch prisoners. Above 80% prisoners won't work unless supervised.", - "Wardens will now bring food to prisoners that went too far from his bed.", - "Prisoners won't gain laziness when not working anymore.", - "Fixed many bugs", - }; - itemsList.Add(itemsArray); - } - - // If count of items in both lists aren't equal that means someone (me) fucked up - if (titlesList.Count != itemsList.Count) - throw new System.Exception("Prison Labor exception: news lists aren't equal"); - - // Transfer items: dynamic list => static array, for optimalization - titles = new string[titlesList.Count]; - for (int i = 0; i < titlesList.Count; i++) - { - titles[i] = titlesList[i]; - } - items = new string[itemsList.Count][]; - for (int i = 0; i < itemsList.Count; i++) - { - items[i] = itemsList[i]; - } - } - - public static void TryShow() - { - if (autoShow && PrisonLaborPrefs.ShowNews) - { - Find.WindowStack.Add(new NewsDialog()); - PrisonLaborPrefs.LastVersion = PrisonLaborPrefs.Version; - PrisonLaborPrefs.Save(); - autoShow = false; - } - } - - public static void ForceShow() - { - Find.WindowStack.Add(new NewsDialog()); - PrisonLaborPrefs.LastVersion = PrisonLaborPrefs.Version; - PrisonLaborPrefs.Save(); - autoShow = false; - } - - public override void DoWindowContents(Rect inRect) - { - var displayRect = new Rect(inRect.x, inRect.y, inRect.width, inRect.height - 50f); - var viewRect = new Rect(0, 0, inRect.width - 16f, CalculateHeight(inRect.width - 16f)); - - Widgets.BeginScrollView(displayRect, ref position, viewRect, true); - - for (int i = 0; i < titles.Length; i++) - { - // Draw title - Text.Font = TitleFont; - Widgets.Label(viewRect, titles[i]); - viewRect.y += Text.CalcHeight(titles[i], viewRect.width) + Spacing; - - // Draw line gap - Color color = GUI.color; - GUI.color = GUI.color * new Color(1f, 1f, 1f, 0.4f); - Widgets.DrawLineHorizontal(viewRect.x, viewRect.y + +GapHeight * 0.5f, viewRect.width); - GUI.color = color; - viewRect.y += GapHeight; - - // Draw items - Text.Font = ItemFont; - for (int j = 0; j < items[i].Length; j++) - { - // Draw Image with Text - if (items[i][j].StartsWith("[img]")) - { - int imgLength = items[i][j].IndexOf("[/img]"); - var imageString = items[i][j].Substring(5, imgLength - 5); - var textToDraw = items[i][j].Substring(imgLength + 6); - - var content = new GUIContent(); - content.image = ContentFinder.Get(imageString, false); - content.text = textToDraw; - Widgets.Label(viewRect, content); - - viewRect.y += GuiStyle(Text.Font).CalcHeight(content, viewRect.width); - } - // Draw Gap - else if (items[i][j].StartsWith("[gap]")) - { - color = GUI.color; - GUI.color = GUI.color * new Color(1f, 1f, 1f, 0.4f); - Widgets.DrawLineHorizontal(viewRect.x, viewRect.y + +GapHeight * 0.5f, viewRect.width); - GUI.color = color; - viewRect.y += GapHeight; - } - // Draw Subtitle (without margin) - else if (items[i][j].StartsWith("[subtitle]")) - { - Widgets.Label(viewRect, items[i][j].Substring(10)); - viewRect.y += Text.CalcHeight(items[i][j], viewRect.width) + Spacing; - } - // Draw Text - else - { - viewRect.width -= MarginWidth; - Widgets.Label(viewRect, MarginText); - viewRect.x += MarginWidth; - Widgets.Label(viewRect, items[i][j]); - viewRect.x -= MarginWidth; - viewRect.y += Text.CalcHeight(items[i][j], viewRect.width) + Spacing; - viewRect.width += MarginWidth; - } - } - - // Make gap - viewRect.y += GapHeight; - } - - Widgets.EndScrollView(); - } - - private float CalculateHeight(float width) - { - float height = 0; - Text.Font = TitleFont; - foreach (var item in titles) - { - height += Text.CalcHeight(item, width) + Spacing + GapHeight; - } - Text.Font = ItemFont; - foreach (var array in items) - foreach (var item in array) - { - // Image with Text - if (item.StartsWith("[img]")) - { - int imgLength = item.IndexOf("[/img]"); - var imageString = item.Substring(5, imgLength - 5); - var textToDraw = item.Substring(imgLength + 6); - - var content = new GUIContent(); - content.image = ContentFinder.Get(imageString, false); - content.text = textToDraw; - - - height += GuiStyle(Text.Font).CalcHeight(content, width); - } - // Gap - else if (item.StartsWith("[gap]")) - { - height += GapHeight; - } - else if (item.StartsWith("[subtitle]")) - { - height += Text.CalcHeight(item, width) + Spacing; - } - // Only Text - else - { - height += Text.CalcHeight(item, width - MarginWidth) + Spacing; - } - } - return height; - } - - private static GUIStyle GuiStyle(GameFont font) - { - GUIStyle gUIStyle; - switch (font) - { - case GameFont.Tiny: - gUIStyle = Text.fontStyles[0]; - break; - case GameFont.Small: - gUIStyle = Text.fontStyles[1]; - break; - case GameFont.Medium: - gUIStyle = Text.fontStyles[2]; - break; - default: - return null; - } - gUIStyle.alignment = Text.Anchor; - gUIStyle.wordWrap = Text.WordWrap; - return gUIStyle; - } - - } -} \ No newline at end of file diff --git a/Source/Organizer/NewsFeed.xml b/Source/Organizer/NewsFeed.xml new file mode 100644 index 00000000..e0dcd108 --- /dev/null +++ b/Source/Organizer/NewsFeed.xml @@ -0,0 +1,254 @@ + + + + + + + + Prison Labor v0.10.1 + + This patch contains a lot of changes, so there can be bugs. Please [b]report bugs[/b] so I can repair them ASAP + [gap] + + [b]Treatment system[/b] + [-]added new hidden need "Treatment" that indicates level of prison treatment towards prisoner + [-]prisoners will now give offer to join colony if treatment is good enough (random) + [-]prisoners now will pick up weapons if treated bad + [-]added +5 bonus to mood while prisoner have free time + [-]added +5 bonus to mood if prisoner is not supervised and got lazy + [-]added +15 bonus to mood if treatment is above 75% + [-]added prisoner suicides + [-]added blocking revolts (100%, 95%, 50%, 10%) if overall prisoner treatment is good enough + [-]added treatment drop when prisoner is being beaten + [-]increased base chance for Revolts + [-]added blocking mental breaks for prisoners with low treatment levels + [-]"Treatment happiness" will decrease if health conditions are bad, when prisoners are hungry, or they're working. + + [b]Prisoners can do construction jobs now[/b] + + [b]Enchantments[/b] + [-]new system for removing mod from save (new button in mod menu) + [-]prisoners will now seek safe temperature when not supervised + [-]prisoners will respect forbidden items, if "inspired" + [-]prisoners will now work in cold only if "work" time is set + [-]added alert when prisoners can escape + [-]reworked news popup window + [-]wardens no longer deliver food if prisoners can get it from another room + [-]cosmetic changes to bill checkbox + [-]prisoners will now stay at bed if waiting for surgery + + [b]Bugs[/b] + [-]fixed food reservation throwing errors + [-]fixed cutting some content of bill config in some languages + [-]now work settings reset after prisoner is recruited, so it should fix some issues + [-]finally fixed "OnGui()" error, big thanks to @notfood (https://github.com/notfood) + [-]fixed blurred effect on settings window + [-]fixed Revolts + + [gap] + + If you want to support the work I do, please consider small donation. Link to Ko-fi will be placed at steam page. + + + + Prison Labor Beta v0.9.11 + + [-]fixed compatibility with Fluffy's WorkTab (final) + + + + Prison Labor Beta v0.9.10 + + [-]hotfixed compatibility with Fluffy's WorkTab (still have some visual flaws) + + + + Prison Labor Beta v0.9.9 + + [-]added sub-tabs in \"Work\" Tab and \"Assign\" Tab for \"Colonists\" and \"Prisoners\" + [-]added renaming Prisoners for imprisonment time (pawns will restore old names after releasing) + + + + Prison Labor Beta v0.9.8 + + [-]fixed SeedsPlease compatibility + + + + Prison Labor Beta v0.9.7 + + [-]added warning message before placing labor area for the first time + + + + Prison Labor Beta v0.9.6 + + [-]updated to RimWorld 1.0 + + + + Prison Labor Beta v0.9.5 + + [-]updated to RimWorld Beta 19 + + + + Prison Labor Beta v0.9.4 + + [-]disabled Warden and Jailor types of work for prisoner labor, it should fix bug, where jailors do not warden inside labor area + + + + Prison Labor Beta v0.9.3 + + [-]fixed compatibility with No Water no Life + [-]fixed compatibility with Dubs Bad Hygiene Mod + [-]fixed error with loading old saves + + + + Prison Labor Beta v0.9.2 + + [-]fixed seeds please compatibility issue + [-]added option to disable revolts + + + + Prison Labor Beta v0.9.1 + + [-]changed max. skill required for non-advanced growing by prisoners to 6 instead of 0 + [-]added new work type Jailor + [-]fixed drawing icons on world map + [-]fixed disabling mod from existing saves + [-]fixed incorrectly showing \"advanced growing by prisoners\" option + + + + Prison Labor Beta v0.9.0 + + [-]updated to RimWorld beta v18 + [-]added option to disable icons above prisoners heads in mod menu + [-]fixed error \"null reference in onGui()\" when loading save + + + + Prison Labor Beta v0.8.8 + + [-]changed slow from prisoners chains to act as factor instead offset + [-]fixed compatibility issues with Seeds Please(again) + + + + Prison Labor Beta v0.8.7 + + [-]fixed bug with dropping motivation while in bed + [-]prisoners will now get different weapons when revolt triggers (molotovs, bows, or clubs) + [-]replaced orginal jobs with \"tweak\" jobs (instead of overriding them, this fix is for users who use \"WorkTab\" by Fluffy) + [-]removed warning message from logs + [-]prisoners will now have 50% of normal speed in chains (instead of 35%) + [-]prisoners will now break chains after some period of time instead of immadiately(matter in incidents, breakouts etc.) + [-]wardens will now try to motivate most prisoners at once, but with priority to motivate lowest motivation first + [-]fixed bug with animals do not respect reservations (and vice versa) + + + + Prison Labor Beta v0.8.6 + + [img]NewsElement_Locks[/img][b]Locks mod:[/b]\nIf you want to allow prisoners to pass by closed doors, please check out my other mod called [b]Locks[/b] + [gap] + [-]fixed bug that Sowing job do not comply to Labor Area + [-]fixed bug with JoyGiver debris (sorry about that) + [-]reduced number of null reference errors with OnGui() method (fixed in v 0.8.5) + [-]single warden will be able to maintain 7 prisoners, instead of 5 (because of laziness rate reduction) (changed in v 0.8.5) + [-]decreased laziness rate to 0.002, instead of 0.003 (prisoners will get lazy 1.5x slower) (changed in v 0.8.5) + [-]decreased manipulation to 70% (instead of 80%) (changed in v 0.8.5) + [-]fixed null reference exception at loading game (fixed in v 0.8.4) + + + + Prison Labor Beta v0.8.3 + + [-]fixed bugs with disabling mod(now you can safely disable mod again) + [-]fixed bug with prioritizing work + [-]fixed bug with rendering icons on world map + + + + Prison Labor Beta v0.8.1 + + [-]fixed bug with rendering icons on world map + [subtitle] If you encouter any bugs [b]please report it on github[/b]. I'm fixing most important ones every day. This is (recently) beta version and it has to consist some bugs. Thank you for understaning. + [subtitle] Also you can always [b]download old version[/b] via github, but I think this was last big update + [-]re-enabled button in Bills detail panel + [-]added slider to Bills (temporary fix) + [-]fixed Bill \"Prisoner only\" button (I think, let me know if you still experience errors) + [-]fixed prisoners aren't working when Motivation is disabled (via Settings) + [-]fixed null-reference error on some revolts incidents + + + + Prison Labor Beta v0.8.0 + + [subtitle][b]Now in Beta![/b] I would no longer add any more features. Instead I will focus on improving existing ones. + [gap] + [subtitle][b]Main changes:[/b] + [img]NewsElement_Revolt[/img][b]Revolts:[/b]\nPrisoners will now form organized group under self-elected leader if motivation of prisoners is low. They will try to inflict damage to your colony or they will attemp running to elected enemy faction + [img]NewsElement_InspirationReworked[/img][b]Insiration reworked:[/b]\nQuicker, better and more intuitive.\nYou can now send your prisoners to work outside your walls, but be carefull: they will try to escape if left alone. Prisoners will start thinking about escape after being left for some time. + [img]LaborAreaExpand[/img][b]Labor area:[/b]\nYou can now select area for labor only. Your colonists will no longer go mine with peasants.\nTo access this tool look into \"Architect->Zones\" panel. + [img]NewsElement_PrisonersOnly[/img][b]Prisoners Only button[/b]\nGo to Bill details to mark bills for prisoners only! + [img]NewsElement_WorkAndRecruit[/img][b]Work and recruit:[/b]\nThis feature has been mostly requested by community. I hope it will be well received. + [gap] + [subtitle][b]Other changes:[/b] + [-]added default prisoner interaction mode option to settings menu + [-]added icons above prisoners indicating whenever he's being motivated/inspired + [-]reduced manipulation capability of prisoners (now they have 80% of normal manipulation, down from 100%) + [-]added tutorials triggers (now all tutorials will be shown) + [-]added watched tutorials to properties (tutorials will no longer be shown after reenabling mod) + [-]fixed forbidden bug with harvesting plants (again) + [-]fixed Toil reservation bug (not respecting prisoners' job) + [-]fixed compatibility with Dubs Hygiene Mod + [-]fixed SeedsPlease compatibility + [-]excluded supervising from labor + [-]rewritten news dialog - now with images and stuff + [-]perfomance and code improvements + [-]translation improvements + [gap] + [subtitle]Also I want to annouce that I will start new mod called [b]Prison Expansion[/b] that would be PrisonExtensions remake.The aim of this mod would be improving Prison Labor experience, especially cell doors and fences. + + + + Prison Labor Alpha v0.7 + + [-]Added settings! You can now change almost any aspect of this mod, including:\n * work types\n * motivation mechanics\n * prevention of planting advanced plants. + [-]Added \"uninstaller\" (\"disable\" option in settings), which will allow to disable this mod from existing saves. + [-]\"No more beeping!\". Changed way of informing player what's going on with prisoners. It should be less annoying and more insightful. + [-]Fixed bugs, including bug that prevents prisoners from cleaning and bug that causes warden to stuck in loop of delivering food to prisoner. + [-]\"No more watching while prisoner is sleeping.\"Wardens will no longer watch over not working prisoners. + [-]Prisoners will now stay in bed while waiting for operation + [-]Prisoners will now stop work when starving for default (\"Anything\" time), instead of hungry. They will still get minor debuff. + + + + Prison Labor Alpha v0.6 + + [-]Time restrictions - now you can manage your prisoners time for sleep, work and joy. You can now even force them to work when they're hungry! + [-]Getting food by prisoners - Now prisoners will look for food in much better way, and now (when they desperate enough) they will eat corpses! + [-]\"Laziness\" changed to \"Motivation\" and inverted.\n\n ATTENTION: After PrisonLabor reaches beta all saves with PrisonLabor v0.5a or lower will be corrupted and unplayable. This version (0.6) is safe and converts all older saves. + + + + Prison Labor Alpha v0.5 + + [-]Prisoners can now grow, but only plants that not require any skills. + [-]You can now manage prisoners work types. Just check \"Work\" tab! + [-]Laziness now appear on \"Needs\" tab. Above 50% wardens will watch prisoners. Above 80% prisoners won't work unless supervised. + [-]Wardens will now bring food to prisoners that went too far from his bed. + [-]Prisoners won't gain laziness when not working anymore. + [-]Fixed many bugs + + + + + + diff --git a/Source/Organizer/TutorialFeed.xml b/Source/Organizer/TutorialFeed.xml new file mode 100644 index 00000000..cd96edf7 --- /dev/null +++ b/Source/Organizer/TutorialFeed.xml @@ -0,0 +1,44 @@ + + + + + + + + + [title]Prison Labor Mod - Introduction + Are you new to Prison Labor Mod? Don't worry, in this tutorial you will learn how to use this mod. + The main goal of this mod is to make prisoners work, but managing prisoners is challenge on it's own, so let's go with tutorial ... + [title]Enabling labor for prisoners + There is two main things you need to do before prisoners starts working: + [img]Tutorials/ForceToWork[/img]1. Firstly you need to enable labor in Prisoner tab + [gap] + [img]Tutorials/WorkTab[/img]2. Then you need to adjust work priorities in work tab. There is a special sub-tab in top of Work tab + There is limited number of available jobs for prisoners. Additionaly you can change that in setting menu, but not all jobs are well implemented and you can experience weird behaviour by doing so. + [title]Motivation + Prisoners are not colonists and they do not want to work on their own. You need to motivate them and watch them constantly. + [img]Tutorials/InspirationPreview[/img]To watch prisoners colonists must be within 10-meters radius around prisoner (and vice-versa). Prisoners that are nearby colonists are working and gaining motivation. Additionaly prisoners do not escape if colonists is nearby, but they can take a chance when nobody is watching them. It is worth noting that watching prisoners need colonist and prisoner to be in same room. + Watching prisoners can be done manually (drafting colonists) or by enabling new work type Jailor. + [title]Desiging prison encampment + There is few thing that you should keep in mind while building prison: + [-]Walls: Prisoners want to escape, so make sure they cannot open doors to open spaces. + [-]Accessing resources: If you want prisoners to refine some materials like cooking, make sure they can access those materials like meat and potatoes. + [-]Accessing food: Prisoners should have access to food, like fridge or food stockpiles. In Prison Labor mod, prisoners can take care of themself and go for a food un if you let them + [-]Labor Areas: Those areas are optional, but in some cases you want to keep colonists away from working in prison. That where Labor area comes, it prevents colonists from working inside this area + [title]Icons + [img]Tutorials/Icons[/img]There is three icons in mod. Inspiration icon (blue one) - that indicates whenever prisoner is motivated by standing colonist, Lazy icon (red one) - that indicates whenever prisoner is to lazy to work, Freezing Icon - that indicates prisoner is working despite freezing temperature + [title]Locks mod + [img]NewsElement_Locks[/img]I highly recommend using Locks mod. It allows you to make doors passable by prisoners without making them force to open. + If you have any questions please visit FAQ first + + + + + [title]Labor areas + Labor area isn't required to make prisoners work. + This area forbids colonists from working. + It's for situations where you don't want colonists to work in certain area. Prisoners will work anywhere they can enter. + + + + \ No newline at end of file diff --git a/Source/PrisonLabor.csproj b/Source/PrisonLabor.csproj index f2c84f8a..d6b343cd 100644 --- a/Source/PrisonLabor.csproj +++ b/Source/PrisonLabor.csproj @@ -51,12 +51,15 @@ - - - - - - + + + + + + + + + @@ -64,65 +67,97 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + True + Resources.resx + - - - - + + + + - - + + @@ -130,13 +165,16 @@ + + - - - - + + + + + @@ -151,6 +189,7 @@ Defs\Hediffs.xml + Designer Defs\Incidents.xml @@ -167,6 +206,9 @@ Defs\ThinkTreeDef.xml + + Defs\ThoughtsDef.xml + Defs\WorkGiverDef.xml @@ -180,6 +222,12 @@ Organizer\TaskList.txt + + Designer + + + Designer + @@ -188,6 +236,18 @@ Organizer\README.md + + Organizer\To-Do.md + + + + + + + + ResXFileCodeGenerator + Resources.Designer.cs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + ..\..\changelog.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;windows-1250 + + + ..\Organizer\NewsFeed.xml;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + + + ..\organizer\tutorialfeed.xml;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + + \ No newline at end of file diff --git a/Source/Tweaks/ClassInjector.cs b/Source/Tweaks/ClassInjector.cs index d49421d8..c7d39919 100644 --- a/Source/Tweaks/ClassInjector.cs +++ b/Source/Tweaks/ClassInjector.cs @@ -1,4 +1,5 @@ -using RimWorld; +using PrisonLabor.Constants; +using RimWorld; using System; using System.Collections.Generic; using System.Linq; @@ -31,10 +32,6 @@ private static void UITweaks() private static void JobTweaks() { - // Deliver food to prisoners (include other rooms etc.) - var deliverFoodWorkGiver = DefDatabase.GetNamed("DeliverFoodToPrisoner"); - deliverFoodWorkGiver.giverClass = typeof(WorkGiver_Warden_DeliverFood_Tweak); - // Mine var minerJob = JobDefOf.Mine; minerJob.driverClass = typeof(JobDriver_Mine_Tweak); @@ -61,15 +58,15 @@ private static void JobTweaks() private static void SplitWardenType() { - DefDatabase.GetNamed("DoExecution").workType = PrisonLaborDefOf.PrisonLabor_Jailor; - DefDatabase.GetNamed("ReleasePrisoner").workType = PrisonLaborDefOf.PrisonLabor_Jailor; - DefDatabase.GetNamed("TakePrisonerToBed").workType = PrisonLaborDefOf.PrisonLabor_Jailor; + DefDatabase.GetNamed("DoExecution").workType = PL_DefOf.PrisonLabor_Jailor; + DefDatabase.GetNamed("ReleasePrisoner").workType = PL_DefOf.PrisonLabor_Jailor; + DefDatabase.GetNamed("TakePrisonerToBed").workType = PL_DefOf.PrisonLabor_Jailor; //DefDatabase.GetNamed("FeedPrisoner").workType = PrisonLaborDefOf.PrisonLabor_Jailor; //DefDatabase.GetNamed("DeliverFoodToPrisoner").workType = PrisonLaborDefOf.PrisonLabor_Jailor; WorkTypeDefOf.Warden.workGiversByPriority.Clear(); WorkTypeDefOf.Warden.ResolveReferences(); - PrisonLaborDefOf.PrisonLabor_Jailor.workGiversByPriority.Clear(); - PrisonLaborDefOf.PrisonLabor_Jailor.ResolveReferences(); + PL_DefOf.PrisonLabor_Jailor.workGiversByPriority.Clear(); + PL_DefOf.PrisonLabor_Jailor.ResolveReferences(); } } } diff --git a/Source/Tweaks/FoodUtility_Tweak.cs b/Source/Tweaks/FoodUtility_Tweak.cs deleted file mode 100644 index 05c04ff6..00000000 --- a/Source/Tweaks/FoodUtility_Tweak.cs +++ /dev/null @@ -1,583 +0,0 @@ -using System; -using System.Collections.Generic; -using RimWorld; -using UnityEngine; -using Verse; -using Verse.AI; - -namespace PrisonLabor -{ - public static class FoodUtility_Tweak - { - private static readonly HashSet filtered = new HashSet(); - - private static readonly SimpleCurve FoodOptimalityEffectFromMoodCurve = new SimpleCurve - { - { - new CurvePoint(-100f, -600f), - true - }, - { - new CurvePoint(-10f, -100f), - true - }, - { - new CurvePoint(-5f, -70f), - true - }, - { - new CurvePoint(-1f, -50f), - true - }, - { - new CurvePoint(0f, 0f), - true - }, - { - new CurvePoint(100f, 800f), - true - } - }; - - private static readonly List ingestThoughts = new List(); - - public static bool TryFindBestFoodSourceFor(Pawn getter, Pawn eater, bool desperate, out Thing foodSource, - out ThingDef foodDef, bool canRefillDispenser = true, bool canUseInventory = true, - bool allowForbidden = false, bool allowCorpse = true, bool allowSociallyImproper = false) - { - var flag = getter.RaceProps.ToolUser && getter.health.capacities.CapableOf(PawnCapacityDefOf.Manipulation); - var allowDrug = !eater.IsTeetotaler(); - Thing thing = null; - if (canUseInventory) - { - if (flag) - thing = BestFoodInInventory(getter, null, FoodPreferability.MealAwful, FoodPreferability.MealLavish, - 0f, false); - if (thing != null) - { - if (getter.Faction != Faction.OfPlayer) - { - foodSource = thing; - foodDef = GetFinalIngestibleDef(foodSource); - return true; - } - var compRottable = thing.TryGetComp(); - if (compRottable != null && compRottable.Stage == RotStage.Fresh && - compRottable.TicksUntilRotAtCurrentTemp < 30000) - { - foodSource = thing; - foodDef = GetFinalIngestibleDef(foodSource); - return true; - } - } - } - var allowPlant = getter == eater; - var thing2 = BestFoodSourceOnMap(getter, eater, desperate, FoodPreferability.MealLavish, allowPlant, - allowDrug, allowCorpse, true, canRefillDispenser, allowForbidden, allowSociallyImproper); - if (thing == null && thing2 == null) - { - if (canUseInventory && flag) - { - thing = BestFoodInInventory(getter, null, FoodPreferability.DesperateOnly, - FoodPreferability.MealLavish, 0f, allowDrug); - if (thing != null) - { - foodSource = thing; - foodDef = GetFinalIngestibleDef(foodSource); - return true; - } - } - if (thing2 == null && getter == eater && getter.RaceProps.predator) - { - var pawn = BestPawnToHuntForPredator(getter); - if (pawn != null) - { - foodSource = pawn; - foodDef = GetFinalIngestibleDef(foodSource); - return true; - } - } - foodSource = null; - foodDef = null; - return false; - } - if (thing == null && thing2 != null) - { - foodSource = thing2; - foodDef = GetFinalIngestibleDef(foodSource); - return true; - } - if (thing2 == null && thing != null) - { - foodSource = thing; - foodDef = GetFinalIngestibleDef(foodSource); - return true; - } - var num = FoodSourceOptimality(eater, thing2, (getter.Position - thing2.Position).LengthManhattan, false); - var num2 = FoodSourceOptimality(eater, thing, 0f, false); - num2 -= 32f; - if (num > num2) - { - foodSource = thing2; - foodDef = GetFinalIngestibleDef(foodSource); - return true; - } - foodSource = thing; - foodDef = GetFinalIngestibleDef(foodSource); - return true; - } - - public static ThingDef GetFinalIngestibleDef(Thing foodSource) - { - var building_NutrientPasteDispenser = foodSource as Building_NutrientPasteDispenser; - if (building_NutrientPasteDispenser != null) - return building_NutrientPasteDispenser.DispensableDef; - var pawn = foodSource as Pawn; - if (pawn != null) - return pawn.RaceProps.corpseDef; - return foodSource.def; - } - - public static Thing BestFoodInInventory(Pawn holder, Pawn eater = null, - FoodPreferability minFoodPref = FoodPreferability.NeverForNutrition, - FoodPreferability maxFoodPref = FoodPreferability.MealLavish, float minStackNutrition = 0f, - bool allowDrug = false) - { - if (holder.inventory == null) - return null; - if (eater == null) - eater = holder; - var innerContainer = holder.inventory.innerContainer; - for (var i = 0; i < innerContainer.Count; i++) - { - var thing = innerContainer[i]; - if (thing.def.IsNutritionGivingIngestible && thing.IngestibleNow && eater.RaceProps.CanEverEat(thing) && - thing.def.ingestible.preferability >= minFoodPref && - thing.def.ingestible.preferability <= maxFoodPref && (allowDrug || !thing.def.IsDrug)) - { - var num = thing.def.ingestible.CachedNutrition * thing.stackCount; - if (num >= minStackNutrition) - return thing; - } - } - return null; - } - - public static Thing BestFoodSourceOnMap(Pawn getter, Pawn eater, bool desperate, - FoodPreferability maxPref = FoodPreferability.MealLavish, bool allowPlant = true, bool allowDrug = true, - bool allowCorpse = true, bool allowDispenserFull = true, bool allowDispenserEmpty = true, - bool allowForbidden = false, bool allowSociallyImproper = false) - { - var getterCanManipulate = getter.RaceProps.ToolUser && - getter.health.capacities.CapableOf(PawnCapacityDefOf.Manipulation); - if (!getterCanManipulate && getter != eater) - { - Log.Error(string.Concat(getter, " tried to find food to bring to ", eater, " but ", getter, - " is incapable of Manipulation.")); - return null; - } - FoodPreferability minPref; - if (!eater.RaceProps.Humanlike || eater == getter && eater.IsPrisoner) - minPref = FoodPreferability.NeverForNutrition; - else if (desperate) - minPref = FoodPreferability.DesperateOnly; - else - minPref = eater.needs.food.CurCategory <= HungerCategory.UrgentlyHungry - ? FoodPreferability.RawBad - : FoodPreferability.MealAwful; - Predicate foodValidator = delegate(Thing t) - { - if (PrisonerFoodReservation.isReserved(t) && (eater != getter || !eater.IsPrisoner) && !desperate) - return false; - if (!allowForbidden && t.IsForbidden(getter)) - return false; - var building_NutrientPasteDispenser = t as Building_NutrientPasteDispenser; - if (building_NutrientPasteDispenser != null) - { - if (!allowDispenserFull || ThingDefOf.MealNutrientPaste.ingestible.preferability < minPref || - ThingDefOf.MealNutrientPaste.ingestible.preferability > maxPref || !getterCanManipulate || - t.Faction != getter.Faction && t.Faction != getter.HostFaction || - !building_NutrientPasteDispenser.powerComp.PowerOn || - !allowDispenserEmpty && !building_NutrientPasteDispenser.HasEnoughFeedstockInHoppers() || - !IsFoodSourceOnMapSociallyProper(t, getter, eater, allowSociallyImproper) || - !t.InteractionCell.Standable(t.Map) || !getter.Map.reachability.CanReachNonLocal( - getter.Position, new TargetInfo(t.InteractionCell, t.Map, false), PathEndMode.OnCell, - TraverseParms.For(getter, Danger.Some, TraverseMode.ByPawn, false))) - return false; - } - else - { - if (t.def.ingestible.preferability < minPref) - return false; - if (t.def.ingestible.preferability > maxPref) - return false; - if (!t.IngestibleNow || !t.def.IsNutritionGivingIngestible || !allowCorpse && t is Corpse || - !allowDrug && t.def.IsDrug || !desperate && t.IsNotFresh() || t.IsDessicated() || - !eater.WillEat(t) || - !IsFoodSourceOnMapSociallyProper(t, getter, eater, allowSociallyImproper) || - !getter.AnimalAwareOf(t) || !getter.CanReserve(t, 1, -1, null, false)) - return false; - } - return true; - }; - ThingRequest thingRequest; - if ((eater.RaceProps.foodType & (FoodTypeFlags.Plant | FoodTypeFlags.Tree)) != FoodTypeFlags.None && - allowPlant) - thingRequest = ThingRequest.ForGroup(ThingRequestGroup.FoodSource); - else - thingRequest = ThingRequest.ForGroup(ThingRequestGroup.FoodSourceNotPlantOrTree); - Thing thing; - if (getter.RaceProps.Humanlike) - { - var validator = foodValidator; - thing = SpawnedFoodSearchInnerScan(eater, getter.Position, - getter.Map.listerThings.ThingsMatching(thingRequest), PathEndMode.ClosestTouch, - TraverseParms.For(getter, Danger.Deadly, TraverseMode.ByPawn, false), 9999f, validator); - } - else - { - var searchRegionsMax = 30; - if (getter.Faction == Faction.OfPlayer) - searchRegionsMax = 100; - filtered.Clear(); - foreach (var current in GenRadial.RadialDistinctThingsAround(getter.Position, getter.Map, 2f, true)) - { - var pawn = current as Pawn; - if (pawn != null && pawn != getter && pawn.RaceProps.Animal && pawn.CurJob != null && - pawn.CurJob.def == JobDefOf.Ingest && pawn.CurJob.GetTarget(TargetIndex.A).HasThing) - filtered.Add(pawn.CurJob.GetTarget(TargetIndex.A).Thing); - } - var flag = !allowForbidden && ForbidUtility.CaresAboutForbidden(getter, true) && - getter.playerSettings != null && - getter.playerSettings.EffectiveAreaRestrictionInPawnCurrentMap != null; - Predicate predicate = t => - foodValidator(t) && !filtered.Contains(t) && - t.def.ingestible.preferability > FoodPreferability.DesperateOnly && !t.IsNotFresh(); - var validator = predicate; - var ignoreEntirelyForbiddenRegions = flag; - thing = GenClosest.ClosestThingReachable(getter.Position, getter.Map, thingRequest, - PathEndMode.ClosestTouch, TraverseParms.For(getter, Danger.Deadly, TraverseMode.ByPawn, false), - 9999f, validator, null, 0, searchRegionsMax, false, RegionType.Set_Passable, - ignoreEntirelyForbiddenRegions); - filtered.Clear(); - if (thing == null) - { - desperate = true; - validator = foodValidator; - ignoreEntirelyForbiddenRegions = flag; - thing = GenClosest.ClosestThingReachable(getter.Position, getter.Map, thingRequest, - PathEndMode.ClosestTouch, TraverseParms.For(getter, Danger.Deadly, TraverseMode.ByPawn, false), - 9999f, validator, null, 0, searchRegionsMax, false, RegionType.Set_Passable, - ignoreEntirelyForbiddenRegions); - } - } - return thing; - } - - private static bool IsFoodSourceOnMapSociallyProper(Thing t, Pawn getter, Pawn eater, - bool allowSociallyImproper) - { - if (!allowSociallyImproper) - { - var animalsCare = !getter.RaceProps.Animal; - if (!t.IsSociallyProper(getter) && !t.IsSociallyProper(eater, false, animalsCare)) - return false; - } - return true; - } - - public static float FoodSourceOptimality(Pawn eater, Thing t, float dist, bool takingToInventory = false) - { - var num = 300f; - num -= dist; - var thingDef = !(t is Building_NutrientPasteDispenser) ? t.def : ThingDefOf.MealNutrientPaste; - var preferability = thingDef.ingestible.preferability; - if (preferability != FoodPreferability.NeverForNutrition) - { - if (preferability == FoodPreferability.DesperateOnly) - num -= 150f; - var compRottable = t.TryGetComp(); - if (compRottable != null) - { - if (compRottable.Stage == RotStage.Dessicated) - return -9999999f; - if (!takingToInventory && compRottable.Stage == RotStage.Fresh && - compRottable.TicksUntilRotAtCurrentTemp < 30000) - num += 12f; - } - if (eater.needs != null && eater.needs.mood != null) - { - var list = ThoughtsFromIngesting(eater, t); - for (var i = 0; i < list.Count; i++) - num += FoodOptimalityEffectFromMoodCurve.Evaluate(list[i].stages[0].baseMoodEffect); - } - if (thingDef.ingestible != null) - if (eater.RaceProps.Humanlike) - { - num += thingDef.ingestible.optimalityOffsetHumanlikes; - } - else if (eater.RaceProps.Animal) - { - num += thingDef.ingestible.optimalityOffsetFeedingAnimals; - } - return num; - } - return -9999999f; - } - - private static Thing SpawnedFoodSearchInnerScan(Pawn eater, IntVec3 root, List searchSet, - PathEndMode peMode, TraverseParms traverseParams, float maxDistance = 9999f, - Predicate validator = null) - { - if (searchSet == null) - return null; - var pawn = traverseParams.pawn ?? eater; - var num = 0; - var num2 = 0; - Thing result = null; - var num3 = -3.40282347E+38f; - for (var i = 0; i < searchSet.Count; i++) - { - var thing = searchSet[i]; - num2++; - float num4 = (root - thing.Position).LengthManhattan; - if (num4 <= maxDistance) - { - var num5 = FoodSourceOptimality(eater, thing, num4, false); - if (num5 >= num3) - if (pawn.Map.reachability.CanReach(root, thing, peMode, traverseParams)) - if (thing.Spawned) - if (validator == null || validator(thing)) - { - result = thing; - num3 = num5; - num++; - } - } - } - return result; - } - - public static void DebugFoodSearchFromMouse_Update() - { - var root = UI.MouseCell(); - var pawn = Find.Selector.SingleSelectedThing as Pawn; - if (pawn == null) - return; - if (pawn.Map != Find.CurrentMap) - return; - var thing = SpawnedFoodSearchInnerScan(pawn, root, - Find.CurrentMap.listerThings.ThingsInGroup(ThingRequestGroup.FoodSourceNotPlantOrTree), - PathEndMode.ClosestTouch, TraverseParms.For(TraverseMode.PassDoors, Danger.Deadly, false), 9999f, null); - if (thing != null) - GenDraw.DrawLineBetween(root.ToVector3Shifted(), thing.Position.ToVector3Shifted()); - } - - public static void DebugFoodSearchFromMouse_OnGUI() - { - var a = UI.MouseCell(); - var pawn = Find.Selector.SingleSelectedThing as Pawn; - if (pawn == null) - return; - if (pawn.Map != Find.CurrentMap) - return; - Text.Anchor = TextAnchor.MiddleCenter; - Text.Font = GameFont.Tiny; - foreach (var current in Find.CurrentMap.listerThings.ThingsInGroup(ThingRequestGroup - .FoodSourceNotPlantOrTree)) - { - var num = FoodSourceOptimality(pawn, current, (a - current.Position).LengthHorizontal, false); - var vector = current.DrawPos.MapToUIPosition(); - var rect = new Rect(vector.x - 100f, vector.y - 100f, 200f, 200f); - var text = num.ToString("F0"); - var list = ThoughtsFromIngesting(pawn, current); - for (var i = 0; i < list.Count; i++) - { - var text2 = text; - text = string.Concat(text2, "\n", list[i].defName, "(", - FoodOptimalityEffectFromMoodCurve.Evaluate(list[i].stages[0].baseMoodEffect).ToString("F0"), - ")"); - } - Widgets.Label(rect, text); - } - Text.Anchor = TextAnchor.UpperLeft; - } - - private static Pawn BestPawnToHuntForPredator(Pawn predator) - { - if (predator.meleeVerbs.TryGetMeleeVerb(null) == null) - return null; - var flag = false; - var summaryHealthPercent = predator.health.summaryHealth.SummaryHealthPercent; - if (summaryHealthPercent < 0.25f) - flag = true; - var allPawnsSpawned = predator.Map.mapPawns.AllPawnsSpawned; - Pawn pawn = null; - var num = 0f; - var tutorialMode = TutorSystem.TutorialMode; - for (var i = 0; i < allPawnsSpawned.Count; i++) - { - var pawn2 = allPawnsSpawned[i]; - if (predator.GetRoom(RegionType.Set_Passable) == pawn2.GetRoom(RegionType.Set_Passable)) - if (predator != pawn2) - if (!flag || pawn2.Downed) - if (IsAcceptablePreyFor(predator, pawn2)) - if (predator.CanReach(pawn2, PathEndMode.ClosestTouch, Danger.Deadly, false, - TraverseMode.ByPawn)) - if (!pawn2.IsForbidden(predator)) - if (!tutorialMode || pawn2.Faction != Faction.OfPlayer) - { - var preyScoreFor = GetPreyScoreFor(predator, pawn2); - if (preyScoreFor > num || pawn == null) - { - num = preyScoreFor; - pawn = pawn2; - } - } - } - return pawn; - } - - public static bool IsAcceptablePreyFor(Pawn predator, Pawn prey) - { - if (!prey.RaceProps.canBePredatorPrey) - return false; - if (!prey.RaceProps.IsFlesh) - return false; - if (prey.BodySize > predator.RaceProps.maxPreyBodySize) - return false; - if (!prey.Downed) - { - if (prey.kindDef.combatPower > 2f * predator.kindDef.combatPower) - return false; - var num = prey.kindDef.combatPower * prey.health.summaryHealth.SummaryHealthPercent * - prey.ageTracker.CurLifeStage.bodySizeFactor; - var num2 = predator.kindDef.combatPower * predator.health.summaryHealth.SummaryHealthPercent * - predator.ageTracker.CurLifeStage.bodySizeFactor; - if (num > 0.85f * num2) - return false; - } - return (predator.Faction == null || prey.Faction == null || predator.HostileTo(prey)) && - (predator.Faction != Faction.OfPlayer || prey.Faction != Faction.OfPlayer) && - (!predator.RaceProps.herdAnimal || predator.def != prey.def); - } - - public static float GetPreyScoreFor(Pawn predator, Pawn prey) - { - var num = prey.kindDef.combatPower / predator.kindDef.combatPower; - var num2 = prey.health.summaryHealth.SummaryHealthPercent; - var bodySizeFactor = prey.ageTracker.CurLifeStage.bodySizeFactor; - var lengthHorizontal = (predator.Position - prey.Position).LengthHorizontal; - if (prey.Downed) - num2 = Mathf.Min(num2, 0.2f); - var num3 = -lengthHorizontal - 56f * num2 * num2 * num * bodySizeFactor; - if (prey.RaceProps.Humanlike) - num3 -= 35f; - return num3; - } - - public static void DebugDrawPredatorFoodSource() - { - var pawn = Find.Selector.SingleSelectedThing as Pawn; - if (pawn == null) - return; - Thing thing; - ThingDef thingDef; - if (TryFindBestFoodSourceFor(pawn, pawn, true, out thing, out thingDef, false, false, false, true, false)) - { - GenDraw.DrawLineBetween(pawn.Position.ToVector3Shifted(), thing.Position.ToVector3Shifted()); - if (!(thing is Pawn)) - { - var pawn2 = BestPawnToHuntForPredator(pawn); - if (pawn2 != null) - GenDraw.DrawLineBetween(pawn.Position.ToVector3Shifted(), pawn2.Position.ToVector3Shifted()); - } - } - } - - public static List ThoughtsFromIngesting(Pawn ingester, Thing t) - { - ingestThoughts.Clear(); - if (ingester.needs == null || ingester.needs.mood == null) - return ingestThoughts; - var thingDef = t.def; - if (thingDef == ThingDefOf.NutrientPasteDispenser) - thingDef = ThingDefOf.MealNutrientPaste; - if (!ingester.story.traits.HasTrait(TraitDefOf.Ascetic) && thingDef.ingestible.tasteThought != null) - ingestThoughts.Add(thingDef.ingestible.tasteThought); - var compIngredients = t.TryGetComp(); - if (IsHumanlikeMeat(thingDef) && ingester.RaceProps.Humanlike) - ingestThoughts.Add(!ingester.story.traits.HasTrait(TraitDefOf.Cannibal) - ? ThoughtDefOf.AteHumanlikeMeatDirect - : ThoughtDefOf.AteHumanlikeMeatDirectCannibal); - else if (compIngredients != null) - for (var i = 0; i < compIngredients.ingredients.Count; i++) - { - var thingDef2 = compIngredients.ingredients[i]; - if (thingDef2.ingestible != null) - if (ingester.RaceProps.Humanlike && IsHumanlikeMeat(thingDef2)) - ingestThoughts.Add(!ingester.story.traits.HasTrait(TraitDefOf.Cannibal) - ? ThoughtDefOf.AteHumanlikeMeatAsIngredient - : ThoughtDefOf.AteHumanlikeMeatAsIngredientCannibal); - else if (thingDef2.ingestible.specialThoughtAsIngredient != null) - ingestThoughts.Add(thingDef2.ingestible.specialThoughtAsIngredient); - } - else if (thingDef.ingestible.specialThoughtDirect != null) - ingestThoughts.Add(thingDef.ingestible.specialThoughtDirect); - if (t.IsNotFresh()) - ingestThoughts.Add(ThoughtDefOf.AteRottenFood); - return ingestThoughts; - } - - public static bool IsHumanlikeMeat(ThingDef def) - { - return def.ingestible.sourceDef != null && def.ingestible.sourceDef.race != null && - def.ingestible.sourceDef.race.Humanlike; - } - - public static bool IsHumanlikeMeatOrHumanlikeCorpse(Thing thing) - { - if (IsHumanlikeMeat(thing.def)) - return true; - var corpse = thing as Corpse; - return corpse != null && corpse.InnerPawn.RaceProps.Humanlike; - } - - public static int WillIngestStackCountOf(Pawn ingester, ThingDef def) - { - var num = Mathf.Min(def.ingestible.maxNumToIngestAtOnce, - StackCountForNutrition(def, ingester.needs.food.NutritionWanted)); - if (num < 1) - num = 1; - return num; - } - - public static float GetBodyPartNutrition(Pawn pawn, BodyPartRecord part) - { - if (!pawn.RaceProps.IsFlesh) - return 0f; - return 5.2f * pawn.BodySize * pawn.health.hediffSet.GetCoverageOfNotMissingNaturalParts(part); - } - - public static int StackCountForNutrition(ThingDef def, float nutrition) - { - if (nutrition <= 0.0001f) - return 0; - return Mathf.Max(Mathf.RoundToInt(nutrition / def.ingestible.CachedNutrition), 1); - } - - public static bool ShouldBeFedBySomeone(Pawn pawn) - { - return FeedPatientUtility.ShouldBeFed(pawn) || WardenFeedUtility.ShouldBeFed(pawn); - } - - public static void AddFoodPoisoningHediff(Pawn pawn, Thing ingestible) - { - pawn.health.AddHediff(HediffMaker.MakeHediff(HediffDefOf.FoodPoisoning, pawn, null), null, null); - if (PawnUtility.ShouldSendNotificationAbout(pawn)) - Messages.Message( - "MessageFoodPoisoning".Translate(pawn.LabelShort, ingestible.LabelCapNoCount).CapitalizeFirst(), - pawn, MessageTypeDefOf.NegativeEvent); - } - } -} \ No newline at end of file diff --git a/Source/Tweaks/JobDriver_FoodDeliver_Tweak.cs b/Source/Tweaks/JobDriver_FoodDeliver_Tweak.cs deleted file mode 100644 index d65e16a3..00000000 --- a/Source/Tweaks/JobDriver_FoodDeliver_Tweak.cs +++ /dev/null @@ -1,98 +0,0 @@ -using System.Collections.Generic; -using System.Diagnostics; -using RimWorld; -using Verse; -using Verse.AI; - -namespace PrisonLabor -{ - public class JobDriver_FoodDeliver_Tweak : JobDriver - { - private const TargetIndex FoodSourceInd = TargetIndex.A; - - private const TargetIndex DelivereeInd = TargetIndex.B; - - private bool eatingFromInventory; - - private bool usingNutrientPasteDispenser; - - private Pawn Deliveree => (Pawn) job.targetB.Thing; - - public override void ExposeData() - { - base.ExposeData(); - Scribe_Values.Look(ref usingNutrientPasteDispenser, "usingNutrientPasteDispenser", false, false); - Scribe_Values.Look(ref eatingFromInventory, "eatingFromInventory", false, false); - } - - public override string GetReport() - { - if (job.GetTarget(TargetIndex.A).Thing is Building_NutrientPasteDispenser) - return job.def.reportString.Replace("TargetA", ThingDefOf.MealNutrientPaste.label) - .Replace("TargetB", ((Pawn) (Thing) job.targetB).LabelShort); - return base.GetReport(); - } - - public override void Notify_Starting() - { - base.Notify_Starting(); - usingNutrientPasteDispenser = TargetThingA is Building_NutrientPasteDispenser; - eatingFromInventory = pawn.inventory != null && pawn.inventory.Contains(TargetThingA); - } - - public override bool TryMakePreToilReservations(bool errorOnFailed) - { - return true; - } - - [DebuggerHidden] - protected override IEnumerable MakeNewToils() - { - this.FailOn(() => PrisonerFoodReservation.isReserved(TargetA.Thing)); - yield return Toils_Reserve.Reserve(TargetIndex.B, 1, -1, null); - if (eatingFromInventory) - { - yield return Toils_Misc.TakeItemFromInventoryToCarrier(pawn, TargetIndex.A); - } - else if (usingNutrientPasteDispenser) - { - yield return Toils_Goto.GotoThing(TargetIndex.A, PathEndMode.InteractionCell) - .FailOnForbidden(TargetIndex.A); - yield return Toils_Ingest.TakeMealFromDispenser(TargetIndex.A, pawn); - } - else - { - yield return Toils_Reserve.Reserve(TargetIndex.A, 1, -1, null); - yield return Toils_Goto.GotoThing(TargetIndex.A, PathEndMode.ClosestTouch) - .FailOnForbidden(TargetIndex.A); - yield return Toils_Ingest.PickupIngestible(TargetIndex.A, Deliveree); - } - var toil = new Toil(); - toil.initAction = delegate - { - var actor = toil.actor; - var curJob = actor.jobs.curJob; - actor.pather.StartPath(curJob.targetC, PathEndMode.OnCell); - }; - toil.defaultCompleteMode = ToilCompleteMode.PatherArrival; - toil.FailOnDestroyedNullOrForbidden(TargetIndex.B); - toil.AddFailCondition(delegate - { - var pawn = (Pawn) toil.actor.jobs.curJob.targetB.Thing; - return !pawn.IsPrisonerOfColony || !pawn.guest.CanBeBroughtFood; - }); - yield return toil; - yield return new Toil - { - initAction = delegate - { - Thing thing; - pawn.carryTracker.TryDropCarriedThing(toil.actor.jobs.curJob.targetC.Cell, ThingPlaceMode.Direct, - out thing, null); - PrisonerFoodReservation.reserve(thing, (Pawn) toil.actor.jobs.curJob.targetB.Thing); - }, - defaultCompleteMode = ToilCompleteMode.Instant - }; - } - } -} \ No newline at end of file diff --git a/Source/Tweaks/JobDriver_Mine_Tweak.cs b/Source/Tweaks/JobDriver_Mine_Tweak.cs index 634721f4..e82eca08 100644 --- a/Source/Tweaks/JobDriver_Mine_Tweak.cs +++ b/Source/Tweaks/JobDriver_Mine_Tweak.cs @@ -1,10 +1,10 @@ -using System; +using System; using System.Collections.Generic; using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Tweaks { public class JobDriver_Mine_Tweak : JobDriver { diff --git a/Source/Tweaks/JobDriver_PlantCut_Tweak.cs b/Source/Tweaks/JobDriver_PlantCut_Tweak.cs index 47dc4ec9..8ade914f 100644 --- a/Source/Tweaks/JobDriver_PlantCut_Tweak.cs +++ b/Source/Tweaks/JobDriver_PlantCut_Tweak.cs @@ -1,8 +1,8 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Verse; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Tweaks { public class JobDriver_PlantCut_Tweak : JobDriver_PlantWork_Tweak { diff --git a/Source/Tweaks/JobDriver_PlantHarvest_Tweak.cs b/Source/Tweaks/JobDriver_PlantHarvest_Tweak.cs index e8069b71..7382d20c 100644 --- a/Source/Tweaks/JobDriver_PlantHarvest_Tweak.cs +++ b/Source/Tweaks/JobDriver_PlantHarvest_Tweak.cs @@ -1,8 +1,8 @@ -using System.Collections.Generic; +using System.Collections.Generic; using RimWorld; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Tweaks { public class JobDriver_PlantHarvest_Tweak : JobDriver_PlantWork_Tweak { diff --git a/Source/Tweaks/JobDriver_PlantWork_Tweak.cs b/Source/Tweaks/JobDriver_PlantWork_Tweak.cs index d7761d4c..34d41d85 100644 --- a/Source/Tweaks/JobDriver_PlantWork_Tweak.cs +++ b/Source/Tweaks/JobDriver_PlantWork_Tweak.cs @@ -1,11 +1,11 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Diagnostics; using RimWorld; using Verse; using Verse.AI; using Verse.Sound; -namespace PrisonLabor +namespace PrisonLabor.Tweaks { public abstract class JobDriver_PlantWork_Tweak : JobDriver { diff --git a/Source/Tweaks/MainTabWindow_Assign_Tweak.cs b/Source/Tweaks/MainTabWindow_Assign_Tweak.cs new file mode 100644 index 00000000..46cfed0a --- /dev/null +++ b/Source/Tweaks/MainTabWindow_Assign_Tweak.cs @@ -0,0 +1,109 @@ +using RimWorld; +using RimWorld.Planet; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using UnityEngine; +using Verse; + +namespace PrisonLabor.Tweaks +{ + public class MainTabWindow_Assign_Tweak : MainTabWindow_PawnTable + { + #region Original/Vanilla content of class + protected override PawnTableDef PawnTableDef + { + get + { + return PawnTableDefOf.Assign; + } + } + #endregion + + private PawnTable prisonersTable; + + public const int ColonistsTabIndex = 0; + public const int PrisonersTabIndex = 1; + private int currentTabIndex = 0; + + protected virtual IEnumerable Prisoners + { + get + { + foreach (var pawn in Find.CurrentMap.mapPawns.PrisonersOfColony) + { + if (PrisonLaborUtility.LaborEnabled(pawn)) + { + WorkSettings.InitWorkSettings(pawn); + yield return pawn; + } + } + } + } + + public override void DoWindowContents(Rect rect) + { + string[] tabs; + if (Prisoners.Count() > 0) + tabs = new string[] { "PrisonLabor_ColonistsOnlyShort".Translate(), "PrisonLabor_PrisonersOnlyShort".Translate() }; + else + tabs = new string[] { "PrisonLabor_ColonistsOnlyShort".Translate() }; + + PrisonLaborWidgets.BeginTabbedView(rect, tabs, ref currentTabIndex); + if (currentTabIndex == ColonistsTabIndex) + { + base.DoWindowContents(rect); + } + else if (currentTabIndex == PrisonersTabIndex) + { + SetInitialSizeAndPosition(); + prisonersTable.PawnTableOnGUI(new Vector2(rect.x, rect.y + this.ExtraTopSpace)); + } + PrisonLaborWidgets.EndTabbedView(); + } + + private PawnTable CreatePrisonerTable() + { + return new PawnTable( + PawnTableDef, + new Func>(() => Prisoners), + UI.screenWidth - (int)(this.Margin * 2f), + (int)((float)(UI.screenHeight - 35) - this.ExtraBottomSpace - this.ExtraTopSpace - this.Margin * 2f) + ); + } + + public override void Notify_ResolutionChanged() + { + prisonersTable = CreatePrisonerTable(); + base.Notify_ResolutionChanged(); + } + + public override void PostOpen() + { + if (this.prisonersTable == null) + { + this.prisonersTable = this.CreatePrisonerTable(); + } + base.PostOpen(); + Find.World.renderer.wantedMode = WorldRenderMode.None; + } + + public override Vector2 RequestedTabSize + { + get + { + if (prisonersTable != null) + { + var pTableSize = new Vector2(this.prisonersTable.Size.x + this.Margin * 2f, this.prisonersTable.Size.y + this.ExtraBottomSpace + this.ExtraTopSpace + this.Margin * 2f); + var cTableSize = base.RequestedTabSize; + var maxTableSize = new Vector2(Math.Max(pTableSize.x, cTableSize.x), Math.Max(pTableSize.y, cTableSize.y) + PrisonLaborWidgets.TabHeight); + return maxTableSize; + } + else + return base.RequestedTabSize; + } + } + + } +} diff --git a/Source/Tweaks/MainTabWindow_Dual.cs b/Source/Tweaks/MainTabWindow_Dual.cs index 3e1ffe28..1483bc92 100644 --- a/Source/Tweaks/MainTabWindow_Dual.cs +++ b/Source/Tweaks/MainTabWindow_Dual.cs @@ -1,4 +1,6 @@ -using RimWorld; +using PrisonLabor.Core; +using PrisonLabor.Core.LaborWorkSettings; +using RimWorld; using RimWorld.Planet; using System; using System.Collections.Generic; diff --git a/Source/Tweaks/WorkGiver_CleanFilth_Tweak.cs b/Source/Tweaks/WorkGiver_CleanFilth_Tweak.cs index def1d67f..0198d94a 100644 --- a/Source/Tweaks/WorkGiver_CleanFilth_Tweak.cs +++ b/Source/Tweaks/WorkGiver_CleanFilth_Tweak.cs @@ -1,9 +1,9 @@ -using System.Collections.Generic; +using System.Collections.Generic; using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Tweaks { internal class WorkGiver_CleanFilth_Tweak : WorkGiver_Scanner { diff --git a/Source/Tweaks/WorkGiver_GrowerSow_Tweak.cs b/Source/Tweaks/WorkGiver_GrowerSow_Tweak.cs index 8f3f910e..4cc5d677 100644 --- a/Source/Tweaks/WorkGiver_GrowerSow_Tweak.cs +++ b/Source/Tweaks/WorkGiver_GrowerSow_Tweak.cs @@ -1,8 +1,10 @@ -using RimWorld; +using PrisonLabor.Core.Meta; +using PrisonLabor.Core.Other; +using RimWorld; using Verse; using Verse.AI; -namespace PrisonLabor +namespace PrisonLabor.Tweaks { public class WorkGiver_GrowerSow_Tweak : WorkGiver_Grower { diff --git a/Source/Tweaks/WorkGiver_Warden_DeliverFood_Tweak.cs b/Source/Tweaks/WorkGiver_Warden_DeliverFood_Tweak.cs deleted file mode 100644 index bf73c608..00000000 --- a/Source/Tweaks/WorkGiver_Warden_DeliverFood_Tweak.cs +++ /dev/null @@ -1,86 +0,0 @@ -using RimWorld; -using Verse; -using Verse.AI; - -namespace PrisonLabor -{ - internal class WorkGiver_Warden_DeliverFood_Tweak : WorkGiver_Warden - { - public override Job JobOnThing(Pawn pawn, Thing t, bool forced = false) - { - if (!ShouldTakeCareOfPrisoner(pawn, t)) - return null; - var pawn2 = (Pawn) t; - if (!pawn2.guest.CanBeBroughtFood) - return null; - //if (pawn2.Position.IsInPrisonCell(pawn2.Map) || RCellFinder.TryFindBestExitSpot((Pawn)t, out c, TraverseMode.ByPawn)) - if (pawn2.needs.food.CurLevelPercentage >= pawn2.needs.food.PercentageThreshHungry + 0.02f) - return null; - if (WardenFeedUtility.ShouldBeFed(pawn2)) - return null; - Thing thing; - ThingDef def; - //Tweak: changes way of finding food - if (!FoodUtility_Tweak.TryFindBestFoodSourceFor(pawn, pawn2, - pawn2.needs.food.CurCategory == HungerCategory.Starving, out thing, out def, false, true, false, false, - false)) - return null; - if (thing.GetRoom(RegionType.Set_Passable) == pawn2.GetRoom(RegionType.Set_Passable)) - return null; - if (FoodAvailableInRoomTo(pawn2)) - return null; - return new Job(DefDatabase.GetNamed("PrisonLabor_DeliverFood_Tweak"), thing, pawn2) - { - count = FoodUtility_Tweak.WillIngestStackCountOf(pawn2, def), - targetC = RCellFinder.SpotToChewStandingNear(pawn2, thing) - }; - } - - private static bool FoodAvailableInRoomTo(Pawn prisoner) - { - if (prisoner.carryTracker.CarriedThing != null && - NutritionAvailableForFrom(prisoner, prisoner.carryTracker.CarriedThing) > 0f) - return true; - var num = 0f; - var num2 = 0f; - var room = prisoner.GetRoom(RegionType.Set_Passable); - if (room == null) - return false; - for (var i = 0; i < room.RegionCount; i++) - { - var region = room.Regions[i]; - var list = region.ListerThings.ThingsInGroup(ThingRequestGroup.FoodSourceNotPlantOrTree); - for (var j = 0; j < list.Count; j++) - { - var thing = list[j]; - if (!thing.def.IsIngestible || thing.def.ingestible.preferability > FoodPreferability.DesperateOnly) - num2 += NutritionAvailableForFrom(prisoner, thing); - } - var list2 = region.ListerThings.ThingsInGroup(ThingRequestGroup.Pawn); - for (var k = 0; k < list2.Count; k++) - { - var pawn = list2[k] as Pawn; - if (pawn.IsPrisonerOfColony && - pawn.needs.food.CurLevelPercentage < pawn.needs.food.PercentageThreshHungry + 0.02f && - (pawn.carryTracker.CarriedThing == null || - !pawn.WillEat(pawn.carryTracker.CarriedThing))) - num += pawn.needs.food.NutritionWanted; - } - } - return num2 + 0.5f >= num; - } - - private static float NutritionAvailableForFrom(Pawn p, Thing foodSource) - { - if (foodSource.def.IsNutritionGivingIngestible && p.WillEat(foodSource)) - return foodSource.def.ingestible.CachedNutrition * foodSource.stackCount; - if (p.RaceProps.ToolUser && p.health.capacities.CapableOf(PawnCapacityDefOf.Manipulation)) - { - var building_NutrientPasteDispenser = foodSource as Building_NutrientPasteDispenser; - if (building_NutrientPasteDispenser != null && building_NutrientPasteDispenser.CanDispenseNow) - return 99999f; - } - return 0f; - } - } -} \ No newline at end of file diff --git a/Source/VersionUtility.cs b/Source/VersionUtility.cs deleted file mode 100644 index cbd7ba53..00000000 --- a/Source/VersionUtility.cs +++ /dev/null @@ -1,92 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using Verse; - -namespace PrisonLabor -{ - class VersionUtility - { - public const Version versionNumber = Version.v0_9_11; - public const string versionString = "0.9.11"; - - public static void CheckVersion() - { - // Update actual version - if (PrisonLaborPrefs.Version == Version.v0_0) - { - PrisonLaborPrefs.Version = versionNumber; - PrisonLaborPrefs.LastVersion = versionNumber; - } - else if (PrisonLaborPrefs.Version != versionNumber) - { - PrisonLaborPrefs.Version = versionNumber; - } - - // Check for news - if (PrisonLaborPrefs.LastVersion < Version.v0_5) - { - NewsDialog.news_0_5 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_6) - { - NewsDialog.news_0_6 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_7) - { - NewsDialog.news_0_7 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_8_0) - { - NewsDialog.news_0_8_0 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_8_1) - { - NewsDialog.news_0_8_1 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_8_3) - { - NewsDialog.news_0_8_3 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_8_6) - { - NewsDialog.news_0_8_6 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_9_0) - { - NewsDialog.news_0_9_0 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_9_1) - { - NewsDialog.news_0_9_1 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_9_2) - { - NewsDialog.news_0_9_2 = true; - NewsDialog.autoShow = true; - } - if (PrisonLaborPrefs.LastVersion < Version.v0_9_4) - { - CompatibilityPatches.OlderVersions.Pre_v0_9_4(); - } - if (PrisonLaborPrefs.LastVersion < Version.v0_9_9) - { - NewsDialog.news_0_9_9 = true; - NewsDialog.autoShow = true; - } - - PrisonLaborPrefs.Version = versionNumber; - PrisonLaborPrefs.Save(); - } - } -} diff --git a/TaskList.txt b/TaskList.txt index 759f118c..76c99398 100644 --- a/TaskList.txt +++ b/TaskList.txt @@ -6,8 +6,25 @@ Agenda: - Scheduled for implementation * Considered ========================== - - add buff to mood for free time (Thoughts) - - add buff to mood if motivation is low - - add buff to mood if got beat by warden - - rewrite jobs def (transfer to class injection if possible) - - fix bug when prisoner is stuck on snow clearing + +- Prevent Wardens from delivering food if prisoner can get some by himself + + +-add tutorials: +Advanced (videos) +* Reporting bugs? +* labor area +* revolts +* accept prisoner +* hypothermia +Minor (Hints) +* Putting on clothes? +* Advanced planting (growing) +* timetable (old) +* managment (old) +* Available jobs for prisoners +* reaasign beds +* treatment +* accesing food +* bills +* icons (settings) \ No newline at end of file diff --git a/Test/PrisonLabor-Tests.csproj b/Test/PrisonLabor-Tests.csproj index 2cc87a30..afd6abab 100644 --- a/Test/PrisonLabor-Tests.csproj +++ b/Test/PrisonLabor-Tests.csproj @@ -32,6 +32,10 @@ 4 + + False + C:\Users\avius\Desktop\RimworldMods Shortcuts\Libraries\0Harmony.dll + ..\Source\Libraries\Assembly-CSharp.dll @@ -51,6 +55,8 @@ + + diff --git a/Test/Program.cs b/Test/Program.cs index 8ab07b8c..62602ae1 100644 --- a/Test/Program.cs +++ b/Test/Program.cs @@ -1,8 +1,8 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using RimWorld; +using System; +using System.IO; +using Verse; +using Verse.AI; namespace PrisonLabor_Tests { @@ -10,6 +10,16 @@ class Program { static void Main(string[] args) { + + } + + static void OldToils() + { + var pawn1 = PawnGenerator.GeneratePawn(PawnKindDefOf.Colonist); + var pawn2 = PawnGenerator.GeneratePawn(PawnKindDefOf.Colonist); + var job = new Job(JobDefOf.PrisonerAttemptRecruit, new LocalTargetInfo(pawn1)); + var jobdriver = job.MakeDriver(pawn2); + ToilLister.PrintToils(jobdriver); } } } diff --git a/Test/SortingVersion.cs b/Test/SortingVersion.cs new file mode 100644 index 00000000..9580e895 --- /dev/null +++ b/Test/SortingVersion.cs @@ -0,0 +1,57 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PrisonLabor_Tests +{ + public static class SortingVersion + { + + public static void Test() + { + var list = new List(); + list.Add("1.12"); + list.Add("3.22"); + list.Add("3.22.13"); + list.Add("1.0.0"); + list.Add("0.9999"); + list.Add("9999"); + list.Add("123"); + list.Add("2"); + list.Add("3"); + list.Add("3.12.32.32.13"); + + list.Sort(new Comparison((x, y) => CompareVersion(x, y))); + for (int i = 0; i < list.Count; i++) + { + System.Console.WriteLine(list[i]); + } + } + + private static int CompareVersion(string x, string y) + { + var xFragments = x.Split('.'); + var yFragments = y.Split('.'); + + for (int i = 0; i < xFragments.Length || i < yFragments.Length; i++) + { + if (i == xFragments.Length) + return -1; + if (i == yFragments.Length) + return 1; + + try + { + int xValue = int.Parse(xFragments[i]); + int yValue = int.Parse(yFragments[i]); + if (xValue != yValue) + return xValue - yValue; + } + catch (FormatException e) { } + } + return 0; + } + } +} diff --git a/Test/ToilLister.cs b/Test/ToilLister.cs new file mode 100644 index 00000000..defccf98 --- /dev/null +++ b/Test/ToilLister.cs @@ -0,0 +1,46 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Verse.AI; +using Harmony; +using Harmony.ILCopying; +using System.Reflection.Emit; +using System.Reflection; + +namespace PrisonLabor_Tests +{ + static class ToilLister + { + public static IEnumerable PickToils(JobDriver toilMaker) + { + var method = toilMaker.GetType().GetMethod("MakeNewToils", BindingFlags.NonPublic | BindingFlags.Instance); + return (IEnumerable)method.Invoke(toilMaker, new object[] { }); + } + + public static void PrintToils(JobDriver toilMaker) + { + var toils = PickToils(toilMaker); + if (toils != null) + foreach (var toil in toils) + { + Console.WriteLine($"{toil.GetType()}"); + foreach (var ci in MethodBodyReader.GetInstructions(toil.initAction.Method)) + { + var operand = ci.operand is Label ? ("Label " + ci.operand.GetHashCode()).ToString() : ci.operand; + string labels = ""; + if (ci.labels.Count > 0) + foreach (var label in ci.labels) + labels += $"Label {label.GetHashCode()}"; + else + labels += "no labels"; + Console.WriteLine($" {ci.opcode} | {operand} | {labels}"); + } + } + else + Console.WriteLine("Null"); + } + + } +} diff --git a/Textures/FreezingIcon.png b/Textures/FreezingIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..4c9b5f7a9c2b96f0b955558214439ec3201cd557 GIT binary patch literal 14459 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 KD^$o^zW+bMzvDOn literal 0 HcmV?d00001 diff --git a/Textures/InspireIcon.png b/Textures/InspireIcon.png index 88303e8370b3dffbaa098f45be0f490390f3992c..74100de3fa2a48efa06f8eaa386bfe9aaa3bb28f 100644 GIT binary patch literal 10631 zcmch-c{G&a`!GJ6u``zJ`!cp-kX=TSB})mFrR+OVvSpc>B4l5xAtDu_P}UR%BV;W* z$xzv4CbEv1_wo6B&+q)+^Zoxl&X_az^IYqF-Pe6>$(O86*;#~GKp+sixtZ~05D1I~ zK2}U{V1@Zz(-`mtcegM#2GNiIid)KZjvs`WIfQ~htUSjbFetx309a(aV{Ubxae-A3 z%&is^dD|QWk^q?-pS6pe-YAU9bnYr#LXWLJ9!+z++Z-%|%alcBBaE=79)oVG6Zp`k zmY*7_-Fh4U{(KH3npg(zZ5B>m=gbhTrf7c_fwKv~QHcpnsuF_CnQT2qjib7bSHsqp z$G;x!Wb_-ox-4%0??+`sESl@Ysd9UJ6?K=mHWhWuz6HXFNizQb?LRYK9s9F+b-#ph zl$~I`TZPK@4-rQ2%o|^em`}d%*vzGBa<0Q3&+7`?IT$es8tTSlm_km})bvNZ0X_D$ zlZej*%Q#UlGT!|2I~gOPi(NV`gfQv>Wh>Csu^+Jy6w%Lx_cW@uZmyt%8$XGCAfUeE_&r;$@HAdFr3(SM}{m@RePl||9`^(NZkH!B;lTN zEb@0Li9BD=`mBue0L1;JX(JvIG=^2&j2FZx>9skXH3f~Y8o0b>(FBAL*wd71VG6lO(p|gb!~$?V#dXZ} z|Ki~PTktn}{{p*E->K!hiqrG$Eh?X}I~Hhj0j>Qz=#EIF$b>`njQ#&64e(O)A6^7C zLCOE&MZPx)lD)@o%lX~hg2rZ_fRLJnOZ-P{Bgr4OhTL?V_Jcf*>Ea56(MuoLaCQ-r zBAy9P1H@So0t-;uoEECH0R3A050IKKi2IoJ5^tgpyWxU3EI|V&SivG`tY!l0<)Vx3 zED>R;u(*V^z|m96@k!NS84Id-1BR9k=mlUdd+(!lS<4@j{|X;Rnd8v^`)IGIiDp8& z;hO#5cOL$aGDlPBolVvgpx=TI^EfWtW7dDL7WgelCH{2__@xyU*bcyk9(1`Nj}7Og z5!FdGly=?zaj3kvmFxTCU5MzIV=g#BVO)2cL>gNP~;LwNwT{EUMP{j#)G`AEjgQRQffAIFyz9fD{;#i{! zYX9AoEN$vVusOA_J7!l}#z%MgP8b(J)U0_gxT}9(Jh^KOpG7!B7zGq5))m(9y7GAI z-zBBV2(q?PxamC7IMa=KSvMKfZ^Fnr8nrGs`AKVViLU^iCF3yzdN&Il*A@XAmUT# z9?9JF94pd0{8NH)m>^)VcmED8ni;|+j6buxI;VEgeHWaFxsp{#l=XF!q(EWAL?XHt z8DjXKAB1#)>-5FZr|+Cxx-*T+|OlbSSchZ({1Tvb1r7DF~#37`W%ULqv-qhne-O|47BNft<^D zB00$Zk#C=>DbdRE38g}qEsLhXvtj%Iw+yO|oYblZ3-n6M6nZa`Tq%@K_}Db)A9h0W zTOyse?bLn>u2Pn!Q7VfTXkx{Sz28%@_hOZVCUw9x-AZHA%ggV+-G%o**LTBXi7tSS zJ&`qE4fZXljGDNQOq#Z3|FbAT$ryym&;Umvr4CNU+(AlE_>JHsr_@F8#O3|Gb|u^s zSz4wz4deP$r{P5t27)Ta6YWM}|~weaM%|Y(@(=fqhT@!~{d1 zb%pIzEC6N=Q!v&cNxAZ&z`lwHL0ZG`I!N%m?gb5zz*#Nm6G)C~6qWJB(GCjvZpP77 zuxjK53y%>T(IB5z<9-J;nYMPPlG*?A=6&otL-pYYYju^E|8paph9IQEq>JE|5=Iym ztn^VUZ?1$V$cT91`%|o{tO}!me?lxO?)LRUOU{r{AtU}w#+`!g+l8I}ypm9aly+7% z)CBxOH9(*X{nS0YJ`vYK_>*09Sl6QrAYnVXcMj)=9|#=L(YULS%v&<6>87c3^K)49 z=%f)`;=S@-+7)uy%tSof_Z%@KEFvd1s9`Apa1Dq&E~+3Qa`t{CL0L~XQ<6y#YxZba z3%WEpVK*D1KB9e7qI|$658wpx5Df=)8n7I zPWGa}>m7(AILTRw%40A2&Xci5{3A|s^@G^JKUB1RIN{A+~2;wrqW_u$t)C7IK zr>axhyOVM*WnYH+X0nC_Ecw3qy_9pwN;T{O$xxH|X|aU6u27_=!FqXR3;qnJkL$R( zNiP$i8?(KDZb?@SvclKRbIb5WHzUuBIa~mTNl(cW4)b*Hjsy&Q4dfc5W%^WoJw!d| z%#d{x*C&rOL&m8dka0&B1{tE^&7oHw2!AZI9QO}fi3)(5dufpst7@$a&EOK*a?}@Z z$wL=H6sEDS@IU!-%y>d%7d>lVz8@EAzY(SgP--J{GAMVw3^en9_KbsMMdDe|8nab+ zONb$J(D!Zbc9H2vH>E+yH%fHfZL@VLV z^yP=q4JSTSdiZ?@dCTdpyAzuWb))b_Ni0}l{ThqZ#WS4;X@byc6Ie@s?p z3zPD8LqEBt4E|X>ML|@Zj_v&{w(AP#XC%mfjCBHSRFxHegc(6^h_T$dF(3w{ej_OY4 zO(~SOgflW2wDZJPXu%VZ{`-aI!G&2?YC%Xz?DQM5i{%{~8$FbtQpbhd z2F50pgk9o@qr_uy63+rg(%bfG?86IVUR~&AZTbemh{Roj#{QNdU+dWz_p@^KefTHs zCw{=AZ*<=aYpwFJZKiEw@F|-M(k!O;?;>XlWBv0S(8G05RrgE#bg16jb{!4spgEp^t^3NMe}647OTGv6 zUV^Ga8dBY#U%Py*DLS5u|8XcE7p*^3i=lZPVc0>VzN=1Vo&zyHmG^$k%9 zyw;2~Der&vP@b{V3JYtK%+$oRK;znI%Z^K|ML4ag1Qx?xA zv9o|tCX4#lo|Wea{OtK-yVIJ)v7l2un_v#&*W#FI9)egAA_C{Q)v%Kf>9Y8N>;D85 z!w_yo6Hr@s$5wmduEaB0!RDb=oKv7U5BN$2S%rEZwX{7rbgg%SglUa~Q3m6h6+cfr zt_?zc%$R$1%XaK{xD|=Pxy)(d1()II!d%kScMbIYS1$8gM>DFz*oFQ-@%3k`emyc- z^w3Pxkn#j^J*3O`yKio@J*FXQ2A6zJ%7`V;9+afGaz19hAJ%Z{!eLm|vX4++x`W7- z_)InlZiFWU1_TW7hkLFH`YfmH3SBo8f$rg0>I(!X; z3(7PMu6JIg|Lo@2d-hOl^l*o`$#!2)e1rMLWI@m5zCf1~UL1wS^o}BED}(dvFMF%y zkvwB6aThU!#cTe|I= zH80quQ*Ox^+$}-Br*&%lO#?fAl2Cz5)HT&Sg{9YOcfB$)b_bQYs0&Gtnv|~%4w%in z%+n!=HUzT@8Wt_MFn(t#c=csDr^Voh-hH0=ltzZhh84E1N`UT?OzwgpIAZ8WvK|p(5&IRV;lz=w+)4v`1tUnrP4d9DQAkWxf~f zZvvg`?w1Wtxh4FlbdIlds10~Uw<=WNS_KW!3>Go-D?AOJaFTwV;wH?H7o}l!vOd-Y zE^*Dzr351s`zhk&3WrSrHjlfx=iz#TK%Gt1uN9Z0>qpn&!+r7u=nc@7O0@&8+@W1L zH(t_i>U=en4&IBlY{nt24azIESlWu1ELm&PZVQ16I{Zltq9^<=#jU&Z`1Yb%PZy^a zA6cpVDmRe!)uW~7usQ9eVD7e1Te-h#r}60cq))vUfA^wTddJ?!l*8j;>n>E>t0#1o z_fplbvnqWZjqu1T3)NhPF34f1K6_00mt`I_q*WRGd+k(7PjIfy{S*7Wcy%ss=oTtZ zq5HA^qiW8Ypoaq|{RFSwU$h|k&2%TQ6<_4h=FkVnJpZ!%NY$W-kZou;|7vzmZz94H zz2KsKUos^ItnYT%kO^kNGC!Pp*tQMxh*q$Dx7WS@ ztG?zMgTB{cT_!j;2m;(9@{Yy4Z7I0{b_ucXB?%1*2EjU&BWNWc3(nuk0^4~(5|)d- zDpITQ*tS|9jr#HETpQ7v-fo{i^+7z1Hdb~g&wVw3mdF?XwIq2t{_VzgRUmE??o@ED ze7`w2Q;^lXx;fNEZ-8P#w?}M}d~mxVg%ft{LSUF5tQs6#AqCRz?2ax275SJ^L-D7- zh3)vX969VYb_6)Y2W2CFI@EBDSlJ4u!R@1XZ}*?Iu8^?v3v)BxCpkki55=W# z=A5n}?$`j?&;TrslM3%KGIMaTWqEOXv6YuZPH_9>+xIuj`928R0xL`>E_DHxouW@9MiS=ExkprCM_|zSVQb( zppxSaal#h;RFOh5BQN1wrzHZCG-hJf^vmxW(e8hgMkEs#zxFc)`QY#ULeK{w=oc$pf-;gfsyay2v^D07LK zU}IlMAwilTr@&WpSzX?exo~q!51BPvE71R`z8AEbxTStAq6m~R*(w*qv334Z-7gie z^2Mnmo2!3ox6MAgkkBPQlC%ll?9ZF1a&c<@cC27!qgF^^BbN}E7;>7dNoHF~Mkrd# z4hQwwH)lra&>{+21+W6hpaZES`PY?dn(lW^7F3`~ADQ1EuX7o_+V_08^<^7mi*qZO z>~c(FwuC(+{_4M|cO5TcYa0`1%|qK#lT9#snZXg54VLMEv2YnhU$(2D@o7{OjA8rc zUMTLI2YLg-#B@l82jB3~FpG0u){i>I^9Mi>;0rm#VkBd^j9OIFT^Gq~8zZ-bcp^n> z7sQRdzw9>*jtnA6F1#z!P_qi=JMN|Tf5;vQ3aUuso#~9&iOW}963#uicTITOZ%ua~ zvSCR7jagBM4ezD5K*@{wdwibCMI{Sd8hG~VKtrn#_YJw(E7XsWgHJ0jqYsuOkco64 z9x?&>39-LnjC)8whhFG+zc(Wo3*vFl|CKPW+`kZhX`wCgPMORch-!Cyp7Tv1Kp3}y zGDw4e%67eIGsF2kJz4Vtw-ZXZ<(~eoD=zj`nwVw9zlbnw3Y&zINr-L;D^lHiI#Mu{ zY;g$)5#6;8a0GwF*oNA|(8H zOm!zK-*Xm!p%Bcf^Mi!T5|&j|!^#M?C*ZFa`stR`vexpKsFH?e)6GS1F;mR%g~P6; zCp$Ci>euq*{BiqlSlsCZ*Jc>#`}!^JRLEJuqA4roU2V?PYjS6^z%pN9NJt~(g{@sh z%Q)1dewAh( zEF+4Qt)7>wVI%Vht|Z-WVT5it$>v@mr%LIpQ2W&ApW^*D#wJ56clkb9|%V^sfBzeYc%fV;ms-+S=j1B z?0#x0?XCH1Hxu&v!W8^=uM=#W2A{EP(lN!W3)6>COB(IVW!LYU z?CxfVbnas0(YWblrd_z-1f}>!WTu@XE;uXQ zuSk@z<#lR%#~(B!Ebwic(;oA&+h6R?v-0PA{JxFI8ngoYD?5Za;m*rMl=-*pXUb7r z-nT+Cgm#p6CUwo5_rz;=m(SU!VBV!(J-W7L|LoRS+ur>=e`XPH)9mKX64#){G9E+TXks1k3H-(qDeF{xdWbAND)}uPzUVo?8#N zWEhr(&%&}vd@!j2)kdA{g-kQ(Crp_=>WaRF@_vr)efmjP^=b1Jcr>PQh+%V4@kbPs z2{ripcgl@}en0%SQa#gKt9WK#7Wr~K$F2m~;hu#mZ_a|N+6r3bd9HcGx;YY@2~fDV6=^xD3K|QqBWCfh%irQ-<(zI6<`?25p=L!~Y(VM5IG62$uYxXWe;zHl zKVR||e|r4MJRP+sf8Jk*%vWVQJFkh>)=q8yxz+o75f>qZlyuh88PBOa%)|)&h_IV{ zdqb2*k8dH0b%W_$h)cvmR3*Ww{r-#aep$-cypJ+U*#X_36)LO|KwWg>s(lV$ZoeRE}#8#QDh}9J<;S}Fbci1 z+9NJ9@b%fv&+NfV-5>s_9T@%NI{!74DJL)_O2B;C6SSgrFK?XbGqQ>Isp=Zk{DaGx zetmi!Y-0bW5_PQXD(&4950^uY6Th~nh&Zl{zkS~+*h2zFZhxgN10oIg^*4R}O>&u6KZ^vHbZJ%b5LrnL}(5N57vpZE4?WS_QoMmu2oBL)DfiVV91P zHt;dsdnKG>A7+k_h6oxqq!#~R8C{4MZkKee-(b4$J}kKeUP3y1>Y`Z5N{WNCBf|8k z0BHA9I_nrr29`CjMLdIM+slyALY1iOKrb%nwyv7PC8PzOk-x2Xo_rhx(&VD0Pqz^6 z^cVciBko3i@r`dI%+;$%EnRmSi#`)9$eA9aBSG1H`a^P1q;tKsN_VW8&Cn#1Pa34Y z+saexT_emB+QuJJLH+beBUcr#k?V&ikDlIs8WK;hjIKPgCbwSs$21g1DueA7BmItrA#)%J=J>*cyl54|m0<&NNrjZt##pu09~P5$=$p>wbw>c;31Om$;DTs&i@|?Yh{=@3zC`TY<`p z#B0-j1EtKe@cqa7n>869KMzqJrl>|ee%~Wcss>{0%YW_w6t}%$VhJx0PJcNGN2^-q2t8in-4-;lp8g=lZ&!I1K=bW9G(Aw8dQ~S8Jsc)x2$}eTxSSK7*YbIE1 z_H)L017J(9JI@c^vUFVh-89&6?fTSQ{gCw1?6thXJ?-HZS&Saav=QbyZWEUb)NsH_ zHL1nD24RKw9pb<3bJss-tX-N{Cxtr8wSLHsn`~vO?mq&FRSK#vXtk7vDsRS7xfXL( z+?GMK^0u$VY=$r|c$tIxo-Xpnjom9Xk@zEaOkD{^UiB)i^Jt55`^k>TYqn@@n^9 zdbRD+K(_}>Oe}1@RIV}SXP7vJp3lh;GB=Bz8sg>;cPptGcfU=0^6b{T5!%ejLzbUx zspkk6LkeF2<;euW(;lTsgW%HDXG#{^jqarp2AyFXuP=OQofu@inbiI$5O$;b{YEv> z_%EzixM^?(fC*y^B3g1m8ZTz;$+_{qbL)&;%YsOX z3J+6?HOYrilWFmdgK7nutL2@Dx(akBq(JNiW|Z#}tky4+{v7?*?Y7IqH85*bj)VXO zrT*<3r$SI8XX7UCtxX`h%SE{4p&~*uQ(e|h0xbgFncYqiRBJS5eYI(|!SP(`^ z^a&{(OK6jiNI^)kwTrTRcX_Y}?Ps8U7BbOp8mz>>;JHtdC!dGaAIKsn37m3;Zg07; zh>ncmjN)B(io0LO=--{A`GNj?AJdjjG&iw{r8 zDP*t9TOD>hbN@?Ox+zIk{CQ)XbmornBujK`EB)oy{Bck`;&&3=mDHLaG&LUXv#xH;fQ(fy4J0D+!bJ0BhD!HLUvWAAVo&DpECE%mzvDE1k8469?5oTT5TX9vPV$u}B{9j0>wKHgxCN6GC4}rk}{&xb#7W6tus=GvGEGu!WN6x-Kf&%~F}y@1vj zC_}Q>s1{bm?^i@7DA+mB;pO4%L~Qr1LXTsh4<{{~_V}L~{x0WnE@O>^VB899M%by- zH}41|0K~mf=7%-maWpo`vfl$l{muq9JXnFhYz&o$X&#)ihXHtSAXS=b$Nz_t| zeW7`eIV*@F4ygkTNX8u8bWMw`chfv`qLx)4acW;zSU|W#Lj>gPykz$1pSoBRPl)^U zy$u2nkU;tWI0^JjXW${H7VlI_OtGCTH}cRYDY`lmCTc|{qIyk5HNcHvb@%bRPFT5H zg%uZ(Ibf!&jWT*0qY&hP$U!>ak6VfJCH^9aiw%c~LTT?-ZLsB)x}@9vA3oXmT+-$^ z3BA!B7E|a~YzLU~lUgV*JqVBZk_C>rB1cvyakyRp6-~JI9o!l#a=mPM@|A3xNE5Gi z#&q@b9Z=D6H+f&e;1bZ+4`)_fq_dI)`zc9hRk`=BlKAd96hB+*16d24Wh6sR?a$3{ zwd;&}BY(3V65I58ILCN15e`IR4}Ai3+Le*a+7Cv$)$r^o(>R?dSbD;m2vd`ooV#XW zAww!t)4C|$vIGd7$5Dz`r9qPKdq04a=#u?)L-B~}(0fPehZO$u+*+?V^l+v6S1lDs zbpg&8_E01tS8;U$>Zq!dJbp!ZN*ZulY{rO{S27LJ$GX(=QdI69{b; zC;0x9YZ{E3g~2yqd{WV=EXymH3+&ZVEMybQFUkN#8NRlZN7o6>OjXf^M}Oq|j@LY= zLE{T(#WEq}Jbjo?5X)u=G*dZSQ_0h9sZHz0MqA1*@x``w=e%<`V1rU4@DNl-09xP{ z&<8V0GXAL*j_!q{oCj0@+vpS7-KRZBs+wUXeaxr?dRa!Ef^GXD56(w!bV@0I1W*IB z8@}n}>8H~F{pG70(~7xmJh8z*o)z_v1Mmxh?S|Hws$;{6UQYlIp%w(n!NtHPX1NGV zz{mzbW2A0B2E);Wy0>;Cp3e3;=s!>n-mEmvn{7xC{hbAOPiVftF@R$Ri$;%yg}sr(Uw=0-Mslp? zB&jziYo?R~Tyya_FUi+PVlN88zI$QdR`a#@wLix2RD~L|17aHq7;r3y3gM!06!49i z$iuueaO@8`|KporfhbQ3E!H5E{aeEYL*ky*WlRn=84zr`I9%(6oB_Y7ohJ*%{5VNs zBp6ky{1&jRJZfXzi1uN)VKPA(9WBeYJ;9W9%kghSfz0n-U1v$m|6R;=gNTm9vSV)kxurzY-8+AL zeGS7Jz$(Zln98&oU?hkV7M?v=~48m1i!VC(_&z*RD-Bs(hvs5+d9 zsQi0un~?(Tb|hz4&2|;uMrZ(btZDFyeZ%o?x~Stl(_A@FRbMXpb&6bTgHKFVU3dgo zTec5e8k>bLpm(lUhQL7u+QOvbSW(cDqV2>Qs3_VE?{I5WPaY- KxXQ@&-v0q^jB=^~ literal 18239 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 diff --git a/Textures/LazyIcon.png b/Textures/LazyIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..e19135653cb33ca18b0fe178aaba6ad9f35276de GIT binary patch literal 4965 zcmV-r6PoOaP)smwHq6plp$b)%Z9`@C>V#LV%~*$Nf-o!pc@4&Sz^)ZvGeM_CqMKZ=}vFY zYae1{?XB9Xeav?Ey`Mhs)3<@SF*oMM+&F3m)%(L}F2?{Y{bSId&&y1ncr=$I0M&DZ z0MtyMZ^05}i8 z5)EVrfY$)*oUXKJ81n&q0l--Xkaqz54#3`H8H$x48Os4&1mIKv^8jQ4EYRQY12D0! zuTM6QjZFu}Y7P8&ef%CRkpf`vy1u^h=CQG3Qhjmk`#!x;Cjm%l2_n5{D*#*oU>N{g z1Dq<1HCi27#<>>)I2*v}`o_Sq4#d`X>=FZpsoJ_Vl(khTGX%rDmibyTyXJtjW^cOn z9ee?RWuv)VYKCAm_48=3J54OFu_Fc4|v|QM=g*Tl&S%51|`s6T@767 zwqOi7&b1-1ED*_tBKEY@0a0KRO<2GugTDXhQ3qrSP?`-B#+v}fl3)zG?%AQpB^8kc z(}mCoPKs#UB6@zn^R^x}Kny5mq&^iWaTuTV=ks9<#Cd_p#TAiWC1SO3%uuT*McPFd zfCOMALahY8OcbVw_S-}+4tU;cM+J}uP*QEec*{^zhhU7jZg)xK#)`<|1|XD86j($B z2KE!M$0mAdgXevk^x+ZL?F)eml*sW4=nX|Ofk?XEoHdv|T|__H;CY3P2a*7#nrKY5 z38O|$4ZH3YC8f>@L=y8?Hc{D*?%*xAd)^Dvne4FZUK)z53Pk2>I7#O#bun)l@Vuuw z9>^4+G=wqaI5!tXPDqjpo2Zx~`uLxG|B>04_>kjVABdb-7U@osmJHFZLEryj#{+2t zN;NmNH3`N>$LTLAbzG7}q=`Np^!=Y5i3J#Poa@UXrzA;C7xUgbeSfs$fyAJkj@pzw z88F@g@VaR;MqIbADDsW6Qay14onanJ6a8d^=Zzo9MHq42?y|^D#pnj9k=8Wxfeg_@ z^=wtg07-!Ir-*7P4B#N5l5EwrJq$yso8oH1BC2GVw+(pSFFsEXXUK8Zmqb>DA~n*U zCMsl@A2YZ1wby{rT@<;wEHW=X*>2`vPS;@1#CURi{JpO% zT)0mFR~ZGk5J(Bp%BRN1U!Lu2;OQPfH#`&p_yAr8@Em}*O&9=B68VR?no2Vt$S^BQvx#)Ss5e*qh+OfHabp!N2{z>$K8%|Q$eYd<1p^>{ozhZTMRkQ*NP&!MnP$o z`Qt&~zrSN8qy^vqijv5(NjjP6p$>y_-Gowc7@0Lf&XL*Ag-y1I0wTpGgTEEh@=CNJ^&Z~ zi{qSQM!dAUoolR&7hM8v35D!U7H}m5Ip7&Nq8}(4+l9+T9TZJ*=x(hZr&TR+7 z@Vv58^XkB;);bz}Q4@e|!2p0k-+v@cR4@&EDDuUQS6LO21?JBwqK{jZiirlPcpUCE zrWPcgv?NFq$qBQ}+p|QEwQ`Lq=AGp*TwZUk9Va0}j&rS9cD0Ght)$S09Os(_rOvAZ zgIc`v6aSCuS2wFLUIH-xKG$uUN*eIIA6rCaLmSvbj`OvS1rkPCU(>_c-|T-jInJ#U zN}W8S)?zlmAER9 zAO-^fuwUfHl2QvcI!=G1I*3K|E`W=x#|sjQTpb}HxSRDL3X#1zF|~ z5@1|aQmW>7C8g$Xbes(hq{N&XDUmZePGza6SY@v0{yHg@Z#98IG`UtI8RoGp(f`yW z`+!pdk<|*wXhTyZpj=Su#Mu0*FrH74j6}FveSPOn-~ZQ1KqARpVAzpt$4Q999z~<5 zSQR(mx0RIYZQ>enJczTRNdMv3VqSS54F9aC)RMANy(Oi3i%OkPQ0mkcVO-TfWmcgq z9CDmn68^NS(cC)%NUX~+v}3Aa$Z@_|RBB-hu4+{}q-xO9M7vEjwO{1Ql2Rw2dDXKX zjK4{0vPe{aN-Y_3oNHp<<7+zFuc~Xi6D7nl(h4wB>_d)oc~Rt~HqTl0t^%9rMN>_c zlv>=1)7OHUY9-xb6-Cat$930Kf3d;yb~2F|>e}i!AhFwA8Ag0*S>)Un+e0ZX9X3&D zdQ*Xs3ZDXurfRB=!(x?1E~_`kj&yramO6)I}}ZX{Jf zH?tRqq5nALCw$9FWj8s_x02>)&b{MuSu^9X#eA;GB2+KK8+0>!^AcbjlDiHbGb$mb zP8B1D=py=Ayf)q7_Lg{Lu0%Knq);bm7-pHb*M%`nU7u#2xWo5WaxS& zLL;twsN^~5`%h=0G`wp6u&^rHpiYQfR8Z=qB+1Aco>;QBlC?24-AZ~M0KyE>duF+I z#C4aNb|Y@*Is%AAWM)}8j2f|FKzT63yr%_MH@-kr7FjYOa$!+qQrT4-@Ru4Lv;q`M zQ5m;wVb3z}9Q6IiVp6--TtBXzd&fvfIi~xMkALP4-~T}u^S%bsko2T4LXlKb-&8Z3 zaVT~Xxh|~pOh}{A#k{vpW8C6KbMFkJ9`*K`#vn08(na)dY32iMNJ$kGC#b2Hnnv0p ze~}QCOA9c@lk!+PchwWiZB2Bdm-T)um68}QZ1B87hUoq@^T9eG>H(p4V3dK0{UTqP zP-PDTla}$ngB%K9h!1JCp?MNV!9(LVJ>p&UL5Z&9wJl;a;#Dt=n!6*O= zCPc0{sMIYbr4}X3Q<}i|tPzZRmM^~sL}xP55&&dHb)OmO-k-y04s>>%v9zU>Sn&W9f_m4+|nQnZ(^ce z5D6*uwrxm43oD=NccZ_iXz2 zaye4b=4&eee0Z=_>Q=xOCR!{aq*HG?x=Zdy;toUhU84_auFI z#z&o2((Qu{`m-7}K4*!ZGjATVAz_LjRGN7rMfCcB=l!P90Y-DVvjAKNfWk05Ya$3f zQ6jslYOb64aXXbd4bd}}?Ti4xs{nr8pU+ojHJ3Hud0XSXOJ$K$MqGEn6kz-(A|Jm3 zKpB!zFXhoF9TKLQ4`!L)zRUNAo59dy832MvcObHWiFyr9u+L7VdJ*m9Iu(cNLI5|6 z=5k%Lo?NtvUNnt#Ad)VNe7zkQgTDXMZ+l*Vs5muV04@wB$2QU|CuI?pGt6W2EbE24 ze1B-r_kZ5TRJH*q2TH99MM#P4Hj<4m1GuzBO;b-=PXn;7YGY>g8N-c^^N+gjZ7%fI zLEnF(6&Ug3-RHUtfD6Evst@dlNGgn)=`5-?L;xWXl?f1T^B>MCkP+AIo=~da ztQP8L(*IjTR<;A<^BTjhySk{y5XDa$;%!Sf2Ex!f1DjY+Dr?6SgeGb>f&&WDzj zRm@kTwsmM*e?I@PHJg*!ymxP~e&NEN5LhaQOS6^$Zb@Wur^6U=-K9mP{+5VVGSP_u z0wOw)VSeLw{aD`Sv9Uet`ufHIoDnktij{iYQfg9RjzucMybnYxj9>Sx>+5^jn(awF zxp(jO^~W8TtBCX(@@Xd}3OfbHXfD^YZqcH@tcVN<(HTUvgot{W==cn?*s0XV>-zeF z&0}MqYAAnL*Vjjg_RX)3J$4XmX(y<2Y zK%}dv)L#ub&iW33akVz!=~(8Wl49P{B=xj2cE|SwwtY(7ET(0xjM>lw0QMbGAR9dI z(+u+iaY@nDz}1@^=eF5;Ais(6?$ggTu8eQGsU_o0)am3m#%HKatdbC27TETZNg=vz zpPmp*ZtKtI)#vs$f+ic7?HHV;o#f)&+IT?^gjl-k;Blj<(kWIKRyd^b`I0{428_ zskf-N8*YMW5tUO3yD&`gT$hF-XH`Uc6B-_@lx3Z75oJ=$yO{X{!&rZ;b7_mUv5ptg z9_i2Lw`nO!1NbVUz3-c?ZwTOj0sN*~#OjC_sOT;BZYYZ^Y0!`@Hc`bQDq4{N++`EJ zw!!mu)(h$ak@Ep834xwKB%`0R9NV&9H-7!L6^5^{QWZo0pCm+=p|-zx z7l7|q_mtFchd3X=mk?`)Fd*&*@Kk?3pGVC1?U-?o>#nIpJ6gB8k+NbUnTd^*yKH+g zF`J+N$PR+1D4`cPuNCQXtaZ?k+&_MT~96|Cn(n_r_EZSgA()c@d)5LzzJ4&&1q2^>G9< z?edtR(k@XVXN3B76-vZbbzWD&(Z28j0c9(CUB$Z%T6GjAZ$^_s<9A`jor2()0AddP z%=`1RaOe`Es^kJAwQ(vdm9LZbuwrQwXxlLD!I&H9&*uXGAJ*tMqP3xA&8w64Sc}?6 zz(W8Z%mJC%@!ME3Fsqoa3T%6YV(wDR99q_*N-A}^jxo&f4ia{h_@h@@vpoI}(aXu! zm{5f1ve2?Z9XnVFo@oKV(=+wz@i_@OthNNeW<>ANn&c%Td5fnCfXDjt`LUV04w^$z zJ9JCVdaafk-LRhl_^LOQx$i>OVf`evRG(RLwQ5p^CGXZqZ8K$^p` j5p{>y048Pwf;s*l_m`gPnWOne00000NkvXXu0mjf)g4rf literal 0 HcmV?d00001 diff --git a/Textures/MotivateIcon.png b/Textures/MotivateIcon.png deleted file mode 100644 index 81a39d6b13a643abec71587e166ae985e03c7115..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17842 zcmXtA2Q-`S+fE`jwRf%B)ZUxcs@i*RRkdr+M5(Q)z16Hu?HUPH+ESDjH7Y1-$Bv5R zOMn0K9r8No&9k5Tx$f(}?&nB0GSDU`VI~0p0OXH!G)w>hAQbn}CnCVTA#U&ef%`+? z@>p8~fc^JVF<6)V?+bq&>p%d2l;+frksP1WhD=M(6%fR%ywy@Wza}r1RJa4ck%01fx6~X zZM;}TL>>3Ngh5M5m1e`DXf>b!$fX+U>Bi;vrI=wOCH|=RrBs3&%j>U42PIb-H-!fW zlky#BCnbe}Pmb1tzjnzXCMBokcZQC4Fknq%+W&qd2(^3EjPG3xyyt|d_D)YlVnVmD zzjjf~Rc#sWqvwStIXaZGqT`#thPl{h!|RXSaI1bLA6TB`H^% zg?hZ6m_GDveE6C$_LrT=0+PAor}w}{N9jB1DJgFB1a?`;_vey*Ms!g0yj9al%r)~3 z%gT66Ms(Uuvv~IB^YFvga9FOiLhcu?H`95Q@yn;vPdeJaef##{`a{XrCpUb&ye_V; zuBKbZ9ukG$M@Qo&Wn@C$>KTpB?gnAc&pQTX7PKfRFP(LbJO&qsr}&gR9c}>uND#!Q6%r>t%1sK zkGeiB#1*Ffg8v6s@Mh9u+WKa6RAb8$3s&!b3ta^qE_L13=j^Cl9xwO!*SfIN#KpyZ&K0sW$QL5D-mExgmi1|H*nG`1 zZ7C?SCjGbM!8y2spL0x_V$k*)k&%|hCdfd9TP+xH-7kJ_sPNgF+R%9JgA`U_kyl5R zYbvi^%?qJ#X}<>&w@QD(yfUWljIzf3+vJ-| z;gXYgR?+d0cL`gLJe^AOiv{LBk5Jj;7c@;>^NUHyt9NL3$d$Cy^#V0!vy9}+fMb`I z==yQHmN_7WnnzcJ&h;XfG`>1xtNgSZ9Vo!wV+c!J<`b8bE4a(fUe3l;=!i-+ALO7S zS@&avd85NACe{Me$K1{9miZ1hFF#)x>fLWKYnhM7zUFznp{4#+s=lHjDlMflz92=- zy>GdWsvM$JYQU!qelRk=16e$6wM4NjJW}=wilQ|;_{7B^0tvZ2o3>dSRWcABUP_u? zn?7x=(P(_BDjkKvvzN%LrrnwU40BwmSA?#IrwH6glxf{{NfrEd0gCu*4`ug*Izo(d^a&x zg4yswkFacyDF^wl#hbr>?Udd@|Ctok8{-KWcL}r3h2E=-h5WM1p+fOB>fMXjGyC67woXx_RAc)UoViMx&_gV(v@f+$mRGZY)W%>^lzrwq5mBdYlmH6aHD z#Bso-9P`1*&;~0AJk;Yu9wZ&wy2IS~5;FA|WqAQI!2#krFVM&%%QEV4snhbMp9@9_ z`xkGBi;K%V4^o9WU+oWN(0>)PlUW-;euJ(VSx}sYML}%&PfvqxzFYs^>KT(`D`htW z^6Mtqt3vyImb*Q-MNb>(kUl?8TXE0HQ+B<>U!{Uay>8>fZQk!fBNOLMlw*r-6QA`) z@9iC$K1M}0ijdwS?=e&Zu6-c+ zB1G9lqGntvjP@dGwz=NDpbP)mP^LVf6*&SKyzU>KC#dt&qv$N!$=EGg(t!88>uB_I zm2HK#8a8X|uebhNw1KU)Fh6!G8y{Tv+n2;@s7>0E2_K(#<>sq8Wss^7n1vs^YB|gj z-ov!s$_LOSRyB|*);BOTR1CI2**w1JG+Jk=-pVlbr@kZiF+S2Ba8$v6e(CxBRFny= zsf?S1RFbImyXwUavHWWrg~&UB^_D2y^TbfQiw|wjXA!i*bcTs|OakZ0@ah=p(Q5E` z2wbBV#)4lHSF1Z|CZ}BZIegT;GH?S8RaGV4?+R<7#Ehnh_ozjM_?39pO&@yQN@ezQ z^@x3f`puYs%Ej$=)$vb{IrHr4f9AJ7)=Y^Jhpe-|b{2VpNONDG9vFcktZ;|s`P8Q~ zASpJ_MA?hHU+V>(dSqD%~?dsY+ccXZ+W~0>8M(c z47KC4NMoo=UUw0a)Y$-9B=)7HrFE9dPb@#FZwWR{DJ~CPm3`Pvp~&@qBl=^_dTwcssHO2x#=cRh#4AESuiPs zmAfywG9Flh-Eut)=L8c&UiHl%#iQ9V*)?dia^z7h74%FU@TYmD!THfnmv?<=d>#Npf@ zF$UPZRxQ$R4Z@IP>FwuzLs?l=laUJ4CdQRcw=BcX_9)wf!#O|sAKCKsF#Z_7;ot|)|LI-c5Lq#K+FFQT{qGF)ffn0cwfPhJz#?c{a#YdP zZ9Ht>s569`pX-maNN{z81rZh>hZ!RI`z*}Nvkq!0)SLqmz-t=}4Gm3z=_z{@e4!HL zPcpUD6@?iZaXdvYO#5ArQ@3o=?+o|}C`&~?miaLZ^=saaaaf3WX9D~~tY$oty3d2Y z6^s&k3E>!wUgAeL-iItACgq5GrUzS^K6!muzZ%31V-)uY{B+%$evyCZXRm^_p&Qb7 zyD{sFp1d(v_nae|x_Bo>i#x`wyNB5mUy(uj^^bz$Yc(fF~=x zH{n8-Ph{wghBCH}IF<*aZFW_wabWWvX9}#_)a2``jo>d)80mOyn!Y8a+IH>ai;6M1 zc~12Hd&0EI1zp_PC2H5>&3^j*l)|kb)qMRJwR0^iiU!I^ai9a9lu#@VSOL=mn#NCC zQ*OeDuo^Yr{==8P3qSA|z336u_y6HQ(GdsxI=e?gZ!sCSbmuy>)v{T;8QNODbxfDT z#>~8D+vXH&D-L&{!;!Co*|Xg#KD5_$Y!%|N{>x?iW|6gOD>7r+I#oK<=ppfYanh0r5VK%okK35%D-rP!9JjhER%T&dS3R^__q$d!A5k6Ri)nb-x;g_zjtj`; zFTeMX!TAyutb$;aGH7TsJ9lKwjXV4au>K!ZIC&MMmQSndtWT4%Q1pi?MPokpg<}#+ zU?tWvXHaQjn{uR~T#ItJT*S#!b9m2ZZ+6ul!`w>QE2!o2?&*~=LuRE$(mRXMVT!EUtXa$XdPBUvr#y>P*PMM3ZMHkA?S1P`-ZkFWR3L~k9n2oETge`IHyqvXnn6c% z6r8x=;I*{a8ThjKnDrm!1d*Va%OT+KJSb2ziBBWrVqcqf~%VD!c-A_%+) zIlXE2d!gs(P6H2`)s73jgZ`Cw&8T|jw>wbHIkDCoEqFswgN}y@0yKABCSYF<@sc+) zAj5DPzi5|A9B)d}D^k?4x#8*Brm%cfbl>VZ;YTJmc@K0rx^aL-|Dt4Wez^+&C9ZZd zbXyo5frsHcCfObrJvLSu;`Fz<4BJVa!nCveB9T>82^sI_$bw47C1;Kt{e+iB&w z$_G2BVaPfgkKRh9WNZzR#ca933-Hta)iveq2nDJhY45 z6nFdOwNy}307sC=ky^IIe{mKeuZ{D-@b6jCW<99NZRBC_-`Q3x0EZ0d-el%u~ znV~|zoVM;22ksleK9;r`qHq{jTO#BWwS{uuoMs6%;u?WGKiZu(Me#`#>ao+E@%-D@ zUV#hH^Lv^%1`?t0}zd?OvdS%?XcjwvUsmJ{3 zbj`qhtevk|pa1%Z%XLgWsgCiz5M~`*xR${MAzz2MRgA!%%zUp!%Fbh>Mj!^vHCuV} zB0uGOrnrhKe+7E^<&H5bU8?m?%)@O{lEJ> zb9Pzg@aQv~ap4sxp!lew{qgu6BgcliI$-9+5BmS{7b2{;OmRtBS;+U(R(i}6y(i`u z2d7)v?fM?+tZhStDkE!!oKtBuq1i`W>MP)X4LShV2!ye(haLaxKQ2t7kSu+|jPq6Zc+tv#CtRG~5n|lO@AoMqZL)``IR7ddU$akpE5~t`FvI3Ax@sNe&Dc_c)Vnp}dZS)Ei#e zT?gC5|9k@bN!9mM@2F#(6=9_#PX4&P+*)&V{a)RQT=*ApvGd^+kE@G|K6ByHy6{XD zgI)4<7`($0vkvvsT)RuL4v|ZL_W)}1v*QC7&uzja;qN=l1J3?$@{v~oH)ihtc@}?D z9D7sNMlIKUP{BS~QK18_;k?zOY_h3`%J$4A^Z>u9r&b{by7xbk4*Zy)Xd4oFPU`Adw& zCoL1Ifzl7&C#zxklnt1L3p(MqeHsAJTk_u|zbkeo;WyVil7?IrLtqQ&QnA+C--WYZ zk3L--vaS2kLcf|B&Pn;qPMnta_`Mn&v{&``gpLYK5blrrLg(elu3vLra%+xH>BCu$ zp8%zabxnsG7F$-5Hx@{Iamp~JjD&hX#SyY_dPIOZ?Kf(S4=FD6!{`%6?T6eijW4ypv9PnD43u7l;^CZNNUcuW9X4IDEJbZRsv zfGIW6R;UgAWo$SvLSFTt8AQw8mL#|vqbM#TX?1xB2nn+}$QPTA{GuOjw~}sjGyU7Q z#4X2X_;0M$IJ*uE@g02QF-FDr|AvSg*V3|qjtDQ`J}{bq8BD<1%?v5lkEQwD4d$el zeYo`CJ!6&;Y~R66NO-rCC&@v_hya)Uzp&}Y$wVS z5736;`O9p4Sh(M0eF>moboXaR(uN-zW0a&xBFWG{~D?#38N1LvkHhheQI3<|xjdt{dr zf1=MXX~TbXqrFJ6v&?b+gz~+Us%&!cb?gEa)zaV_8McyoayfSYD@sH*~67hy`q-~3Nnu&Onm9{wG??A%j zc#6Rm@|v8!<-_`*dIz-W*KYytz#WOv*78|>PnP~zc90`McaZx)g)}~;{KQ(`@(yA+ zF4zVW-16<6BEJl4|GO`To5DB(o75kmvep0+Bl*h8#8ha(V6;DvAwl@Sd34^_+T4@| zQ~7{f@Q=8r-56HAzLJ!+)FUrwFu~?18J}xQ!Wtjhj7Dt~JDc3xmy&fQ16)uN{?8(L z!4Uf1yS$5|eR8G=wE+yKY|>v2(+EMocm-_ICC2r8j%@f+ISEOw4W1RxPcg7Zy84k z-Ow);2o17%`IN!{#qQwhTqbQ(W3av^<(mJB^{rKZ6(984Uil$hJN;w%cl~4~8hAd` zE6Ie}lV-lw)L+C8HmynmbUZejeljm7DY?lw{A_{sHy66}MfOt#o*)_0PwMZWDO)7! zhJdXXs?&np1t?O4upqiW;UnA;j|=XY?P0xOgJmT~bw?LG#>q56&)0^cCCN#!^${;& zYs~tjDG%v(bDQ4*7ZH4Df$sZtr8p<(76Q+F4;A$NO$T2CVedpif2#b|4Go}0dLkHp zUk9G9hL)xhU%kJy!LTxJzn-{=bh{bFd4A#MleT|;IVY&KnHKZvanr~99I~Yb`LlC% z%47*;^yt*ApsB_g8S+6bDo?emM~E_`+Klek_}_(a{JaOfPl75+E38+D#~v_?{tTGu zR($Jr-GB0-insUH(7k+dYOsvTwY!hDyn%UqKH|z(m&VxG&-q+(hQ%t@IHX|@uI<>N@ti5l3oV%ri zPcG=crmMO;WV^S*-?2W>1Idy0GN8g3MhRttzU*LE0;jLLL!T-m6c-^##PEZ`JV@Zz z9WCDIcx-k4ma2jR^QZ5Mvg;0x2Z60V<|w>^xn$ezlihFkIXuUsRFL%|ov6pM5s%uA zHMOLUq#)zzP*Hc0oF|w(TD9blI%roo`i%N4RJ@JsQL9}tc>HmzM*iW}lTjX&)A;gZ zscd{R<_EK0AMC!|$7KB)~JmpL6l%6f;_Wm-VHzNBCDiV-AeSf%q zu>>`#>NaG;r`%ezyWcTi4q|)wd{sNve)~c}>4kDaYznMv(a!-p{lNvpNo}OeT>lD# z#~mD!dwpOQe|7DKxPwUjeN7e~qIpOd#QP(#*ibB3>aDZLSxvjvKK#)l z&@ra;>W51^lSq)=j!aKiMj9>&@h_P``=>ruY&HWc4FB@`2+qI%{6jhgvW3uudhpZMGKW*O$sIIR?lc-6^sSpfgAT3Vl({o|uOrc>65{$oU zu9ASoY4^f9YmO~=ZtO#3F5Rn;c+q3}&{%8WAwYWsPdK&!L`G0s12 z2yR6)7=R}NLH>hOyw1O&?dLFxl{@H186>yYIm3PMa4n|zZ~A6{A!0ktGLQELK#kTO zL#Gx29D-@9hnLyhY5jJTdHsY=O@Q?6j6I1O`qqPK9im6{^5dM&{A30tHuOrr<((lr zlEn=%wfpJdWm{j843~Lv2EjJKwv*{4rVsastP3Yd${gV`qG9M69BpuO|;=XM$^m__aO_ou*Wa`WO(@5x}!ysjI2n&z7d45rLlN|oR>kw z&g%TN>IuY`z*q$D)hjWY_WK?`g%S9|kR~U!s1oi}BTSLAT<$#yW`V`>o(& zT;824hEEHk3RYDn@(ssgt|$1I_x7%r*D&)Rb{w0QcPJ)3t{1w-wD5+em1Q^Gudn#1 z9lXvdbdMc7uvLcx>VctTBIk0Y8fb8)M|wd0fG`;LCdq6ihV4<{z%-F?*X7}BwRbOv zNC)Uq-Nt04y!dEx{|-++HXJ7LCG>q~K`IYi+WEHmPQW_Ha)qKLU+cbf@d+HnC1EJL z7@??}#Mt7r)QUN!xZg=@fRbj3_sw!T&MS#oa0p{OEwYv&UN9U1+)SJ$RmZBa`^#SUJDcX|HCMvqAcJs?ak@qk_dLZwT2pDp9NHR-c% zyC}1EeG~jGKfH(2%}AW4kj?~tjCQ@xw@~Mwbb_-#`IiH@zn=M}Ar9k_qW3=99&3~I zzOq>_xIxuaO6Iq-Z-*KwWQ0YB42z@OY7|M2*?wZ?l(ho_ilP}%prIgseOL;(IhMVKYZ}szUFJ>xydQ7-C5{-?P?B?%=heywq5ysKX^JKcz|X zWht6jr*Q5dayf$f?T1r_#)xVQu`b;<8EWJON$r&6Sit*aX_<|)Rz<{e60(uCgXsV7 z0$i~q?pF1_K5O|FGpNS?W*YP*8>B*Fw-oEgj{l2T$$5oP_o|e@0PL%!5OH(_rAEdara`Mh=(Ce2bL5+3y*X&%@;>$4}}tlbUh< zVP-bk=_ocxp;T<2s2)T)@rMM_x^!?^_~3ou(49x(KREnCv&C8}NVBqv4hMdvW?u5N zQs@y+b}`dTtK4{-%jn_+Xqs}Y-MT6+yxw;7+4lRrudmx2G5;SvC^Q(N~OD72a1Dv=#a56y-UL|p;O@yqy@ zOnY*+d&gG-J$iorS;Qa6Rk~U@@$My8(#|z64>+62-zgsd3M;OsBs#GZVPIim5-_t$ zCg$QB_*FMjx?ON(Uw$RDu+gJ64cvD3YPFk)@+xn!dOR?;p1wvJ<3*MQ zqFjdnXAR!ie^5*Lq?Shk8m}C}IN)$h1qobIOxyNEeEt2?Ta(z#Hd#E-v7dav@jR2_ zRn3*Bzp%4)ReIO5wd){>(-9e0fKSNOErX7FOD{tu;j)0spHRDzmf+v7NpS)%gx5h?m>6ND#N{TUK2s$}r*&Xd#wmF%K(a zg%*HY*p1~IAA6edOfs&-OKB&Q%Fh8hDStNATJ)zsiNgUO&^hT55W&?ZKsEE}Geo6K z^kxWRI+kH~%VN)s0Og0shfiePE2;<=5StQ%xm5A;@E^Vz3!d*KA?5>aZ_hfD(!w0A<7hS1;Px`!Bh2&tQ2Pi?JEG) zt=KMjd6zm0Cp0D~JQQtp$$F`?F(Lq`0zwvu;j|x=MzwtOE5X`G5ss4^7{$pg;a9G) zQ`N_!&C~#E#42UjR18@!Nnva=Ka~Z*UqRwK&mRY&jKW0I#>m`?=Ccs~SRjJ=^lqJP z3s|#Fq(W&Tt39j{gki0*m=axh+|U`j1z$)HpmD=i@W44ftPGF6(vvbh2hVgO4FT*R z0}_;M8Zf_WJ(9MjdRw80+^?c8p4WH*B7&8=Nh!lGRjBdpUQVIU5fN8 z)U;9wa(l`(?9`XW?AjCT8H~z4!u7%X*)SG?%UN|s-NhVuFkFb(cYajDiR!~jGro&% zuK{4=?=>mnJ7B?I{1~R>ymgi}T4(LNS zR0Zp!V`OE_TpOOsJuTsO?n0^Q7zvfF_^^_DQA*^k*>t&zAA~Bq@K=;m#B}7RGsDi=`@noBstNp3R(vTTEMRl;Elc6^eFPkNPo) zU79I8g}N8iOAGp}{wt$8r)BPORS>5K3lC*{<2LOJpAVHmoar9Gx~Cs8#E1)U_O)b+n-0IOD1teT zFG(SvbmmoG$^{KH2tB}dV-CYdJVRIw-qocDkdn|mFl@8sECJUtZP!JR7huzP6g4)<8SxEgNsP4u{@NKL6k(GlKV^PPLq@3Pi`cj%k%+W3XD2h z4)$%EJs?KVa^rpCjf^c0-lwZcVacSY>ZVJ5vLrw*2xw>i#S9PqMNv{~+xlIdeM2xP z;`db!7+LH*O6x#weP7m*SYYPXC|_1B@MpEz=bpJcG(O}$ZEP8iSJ5G(dAR*Vh&ynkE! zy%jJ;5aWG)!=^c=Y!Ld5?N{9BqhDlhS=4A73O_31OCNk+JYQ{sm*;!8SC6^vPwu;V zPg?p(cwYLEN~qq`4>fHTdBAIU>mIdKPCupi*(&d<{4ZbSX<+{d3UFG z`qbkNBYq=)a0#FqwNHFzwB#a-9Jlx9;>~nsv*c`U_i>Y?%L)OMi#=#7-sc*dj7F+d z5&4L@)9ThYHZ9{vp4(R)c%R@QzU~p2?8yV~Cf=596u(zPU2#>ReE|t=`CphNzl7k; zvY{?T2G@>cQ_ha>lRz@nP6Xhg(6xsf;>O#I)fQvC9#$6ox(q^4$u^dFLBLuD%3+mw z0EAM5Qkam06;rug1^pcCChz?~v{!LDn_p=9{V|uwL2cSc-|UY%d0Ca;jR3DP*SPdj z2j2$h(11JUgm=jl9-^Bs5UUUGA$n3&vfzneg|ky1_QD4jDSXRY?im&ygEJqP(E7Y% zV&Y@c{7boZx(l>vacELs!qZS@^H-d`@^oi`Njm4i8)O_Mi%XJj2?FXo&D$i(K~|}& zo)0t+>ax2@37Lw+0}{cX#gGz}%Q9TaZVJI87ny)xsoxznvIMxFxMbr5js2FOLJ&%F zVy&G$jHB}A3NCRo+-~6sSMAkN`wU0MwU6Fm(NA5+-2DdGlQoe2(!C zlJ_Cw{Ky8PBYhBxGNi-2sH?J-H$wfZ;#W-Y(pDQu@9U@C*^BYjcb9+v5WJ*?(ZETZ zy0(sci=S@0s~Uv8c;c1$Z0aon0C}~l@Y-W^`}M%l%IeO5Waac9!?tC~XVOb4_9w=GZa&B%VTh)`BimRE zZ%(=?yf*1zOo>h-nxfoojTvb2t-nX%Ri>FI{6fGfQsb&xtyj@M zVfAIZ;;2{gz4vEvKB|V}4JcFH`6a=Lyk%OXo5qzJ=q7xjyFgmpzCd?*Uk zPdAK9$K4^l4FbH_OG`TX>^rjjAj}fXwjw43wg05F!GFpfA{mRzcg6}p>+Y{L9lEhf zoX`u*5OPDt1)?770ozSL>!H%q&DxE)lb&Khshk4`6TmyWXBZ@G@4wVrg@xglt zes#NznLOc5^P3EHV|)P4AML2Ho<#Sh`@fH^6k8nCBq)qeugi-1`*y z6v;zUf)^#OvHufqWd?t`(Ffl@Cq>O1;M8-W9_#P%Lh9M)gxEukM)((e8Ok!JzlZRN zend>v{OQgvG|U_TU7aVyAF(Gh6D4+|Kh{WGFqYa+TB5BxgL*w|dxc{(l&c5j&qERq z%o_d>!%dxnCr016#@Z?jB(&13Zq#_X@dniufK*;p*M{Kr6G7+;sMYZ^+t4#L{caFl zCgD$0)-<8rYzF1l6+sWKu z__8O=7D=eHWjq%g)zW z0E+qB=c0!E+Xg^Rn-CPw{=KEgz2Q*^F^Y45HB5MQvqz+zIgD=DK&lvw;cLq}3V0YH zAg9^h0PwaISk+}_nhxc;6nc3D+K-Kl?dT7}PT_=SI|k^RHkyDRhZ--Y{|*T168gUN zr7)rU>K8?fG^D5fyoUM@If4*7=iA}KCe z94V=H&KKFr(%pKa@Ow$+SnJv4mImkxO-Dqyg|;}W!LZINuLu+-Fl*>B45&hZ{?4Dk zz!Ez|%_w%$&k}H)CMNqsZuQ|!%{+`c0)J*g*7I{HwtV{{a~zUAzdU8hRN{*XC&ZBB zNA|^SbqWGM@~ZbjP2M-BP!ru@CbIaK@i&}pwXKM^2lA&-lda8rSP=JvW?0OOUvSn; z=TpbGbr<$^==GQzccWD&-2H@Q-ZG=lx4`+TCHhN(MkZBAhgsQCC zXtqzeRLU|LBtt=qe%F$IbIssSJ*Zk&T zzLd1=R_ELJ%Zy`i-sgFVZ*!&9R^p;hrxm#DyN@|OKj@I4w5Vxv zKa(h0_*|Z9D3yPmZ)>HMbc44AsPUrpt_8r*xrg0o*6Myr<>GqA{qhFw;Ky`*Z%*|< z8I8E!XWlKH?kK;pZOE~u&9K3&l;CQ|&sWUSKqa(+=r5-pH>R*$$#IhyG0Ce8a>@eTzj^)cO~$h0#*D;P^PO-G(DM@G1%t3 z@_?FDTKEy*RiX#rm2X$2)TI5QC?Ili^oF+P0q|3L0Peb(91zv_-&bNAT3w$FgKg!axE##g}dx}Vh%9XIi@OZ+O0qae|;F8CXb=`X6hk4G4t6DxsFqW2_8+kuVPPiY!~kweyG}IJUdN*&b_z7l71y@F#B=ok5i&>~ zK|j8-4D>i`1)+THYa$`!NIzE0ARmxjisFL=!Y`}h z3LKK^lY^8@=mkLt1{mtQqrWf`djyC1G`2aag{xA7Epk4LDzB~TWH~#y#CHq-O}mJ0 z`v424LXvWS6uHynB%^c78Yt+0G5^O#_oxhpFM^*}aCHSbt~<*5t48FmrBh6W{n~W zEGGfpM;D44cs~d9+WG-&sPK^$?TbFo?;?vS(MO(}px&%L_mju5LX!`}I>VouQE6b= zAdF#5)Zl2Az~V;zd$DU)ItDQe&M?$|%t394kbNuQ^sd_TET7k)U#!$`B8YZlB7}Yb zkE@_Cb-{uRA}98o%avsc0K|#*Z@&_FpB4#Aqb7P7;il>jyzH18YTYf@t>ObvmiPJ? z@F_KOQp2S`{n2eD{QVS>J@(v=WTlGl#Z0ysJ>(G*0yvKPD=vQ*}i!l2s zuzI!{6vh~~bQ&r`@QbZd*$OX;1f@={?q7247vqb$c2+3neQTBt?&eg%l(P)OMs{Gr z#8|8p_AbF)MCszR)^ZYUmw;{@3CA?|#=Z92Qa?^Ryv+rGBi@j5hI9b|X4WcCl#uP= zoVKDqFpK~t$(@9i3AAZ+r^3dGdyhylTyY}kaKY2pJ&bXYG7u2O1?76ar1aMLp3nVp zNd4xO2%d-xXy-1M&e4O_hllrK!7>cMW8e^JN&0BPvj6}w3d8W4h?4i0YR1O11pB9G zT~A}6Qo=10koXLd;3K9vg8sGtw)N=~fTz$2U6qo727&L>);CUJqgF?)8Yv{IcqMw# zN4?5$bDeLFi%0#0SqU$@`*M|NB9{5T3PF|d5!-+vMV47*c`%y(GpQeUurD1_h1)4= zh)S2mn8CQQIt{@N9!l%<4kN{2qD9MO2*%0cXIY;!T?#=`;rbCb{J1C+FqC+!v;j5= zVb}8NbD|xN%#4WD!k@3#acxheWHA0>72ZI$=Q>%U;Fv^9fw_x{tkw*y8op|V+oq2Y zxxT#8;=Y)ZDgNqbnUhBc7daq|Q@7*Avd#_$q?=z_aHSQs-_7R~sq{*d2*cahi5?x0 zdLkCd{_B<7$pGWY9QH0sv08muEn64ui}(uPqr_fb0Ije9N6ETS&6AoKV9pLVVy(R# z(@Tfqr;aBV3I&#H*(u62p&mK)8-uQx@dN4Czvz073wTMszCL~Cy4w0K2uHy&OrE=U zw}VzAGp)vSC(8Q?<;n(XA-DiQ4fHueUKyZ{d_zP8t8Uj&O}kZR?N7hB5u1JMt4Pfi zPPO{2pv7%nRJv}+lC!>tkE2jYCY&UB?S7n5ovOn26$EgT3oFM{sopJ5QO4)cMMNQP zfK9Hna^#+$=r3=VVrgHN>iFZiUoxs+${`;InlR!`aiN8yS*ziD0d6GApVjUNR46I{ zVjX>TRx;fFHl@Qmdhk&TfV5;h_{66U`;WyE?CES7$69tW-O&x>9EFrv(cd>)%$y;2 zHo7Bh)j&Rl;iYavRb~gBG@qaTyn`l`=yC3m&*fS6KH<&$Y)zvBy#QBd?@`V^7Dz{R zFN+8JF!(oL_siUyUL6NfVmRmytN8!PAtj(+FMkgbo>0OPoEkXeB9cNmffJj5Cc{3z zu>K&q{k?5@fEOCQeN4MSBU*&Drx34Nq~7-Xg0^>wpFe#E6I$Z`GZ=&A9o;%h)EKw# zW_i?XfZxX6%02yr&PSJ$50IHNli{SA0eN}70*TW>iI8d$4NW!OfDU?2ns@#-kH%1n zlPKXu5%=OH^J!?JGJxeoYN)uho|PAsQckbC)JQ*g_V?}j{9_#7+LnH6kmQB|%~%j5T`$9tJRKaG&MS69Gq ztoCBvPd4S!tumjpi)#0pM&sEY@7Z;ViR=ll-zFZJq|k6j_z&%6;}U>TNyqDh|v=(6$#}e|85cbb7<|QnX;o>%yK2$5aAVva;&cw$;y1t&*No314%q! z)TIMr%jTj{>hZvqA>)%tqIOjxr)bjHd=4Od^ZnDc3~9bNKIrtl=DPeMOVQrMS|~Q| z{0eKkIrgXOW{-(YY6PN*>s=lZ>3xtAW30<<2zX9n71w!8KJrBXR4zO6u6UI`OZbn{F46Egj z0%c6B(SQv+h>%2e49mJ7U}rqOPj-l?Bz06R=4EHJ!`#;Nj}y2*bnV2tn$o~nAqtdf zsz&eWKA=?5rIPG+xB0N$E2vJMd|-q>frirZkzl;ns^9&&@yu@p#aRg<$!z^kA~R#G z)jx)?;W=oQDGQF|wDCh3{a?20y?Ab~1a(Vp+FjqjaIFFuXe`}tmBB{JACmIsGfy1K zfUw5ZJ{OxhWIGEJQtJwD$ZI zNUd~BwV`5@EVZl17SM5DTKCO4v)Fvt$he?rfn|N%pP1^aDe&t6i4?t`OHHr$VP3mKJMaZ9iHHE9*>%f!BkBQkr+Pc1>Fyn_7T(3QH zH8)^ZcaVyVf)7k-t>_E-KQmR^)@UL{f(KaT^zmT21$1g;C>HKuN&Y(=RZR9Xv~oPO zDVJcxAeiB}03^aaO%dErXS>*A=5}XSmFvtW&IQh25FJ6BOR4k_MrfzoHhk2|RX>tK zy+H$Sx+jNU7|!hG^qc|777@siLj7vTgSnR%af5y|dU4k2+edvw1HVs!w}3x@p@Uyk z)F5@W!|tGh;3E){Ufq{4YGHhimI^PT7>(6$I*((UBjj^s-qA2=!0scC`{+F1zvYj; z>m0{3y{oeenK^sTu1(-uQk`#3Tu_(Arn(D-dC-QDhnLL?TUG{x3f#G7@5ug<8llPD zo6wK2&K04=(7x|yA=7ye~c znJGWAmytfp&`>_!U@1J@S2%0rTe5RNui_kqsa0So);cB+*8Z zd^h=8FC&x2bH3T{dXa~zW9mgp>l=Rs|^|3|m+$XqAjE3k90-Q;W4 zr-9_TWt6uPncV}2aYezwYMi|txD_}8TWgeK=E2Bu9Z0Syhd4+x8Hi2)jVf2WdAHdO zV#wNgGziwM^F zlz@C^tt?_kk6AWYW1L%9NnBcfiMVJ@PcJFc#;HgZ(bC6)b~O99#}((@paOHyGIR~- zF*Brg2tt^hO*?8TqzbNP#GNl5gz<&T?715$=--zT$~y091zFDhiajQF zJ33_55$S$H94wmwXoMbfG(T9nCes7#e`8ZkDFY}Of+We#h+anyc7LVVF+tpSeG^Sb zP8nMD1ICKtLqt`N^pxIJGbx9;liZ`zq=P0>^NUT2QeI6K$+U_C(Nxqds6y*Fm8NfX zfB_=U-ONMy=TKGT0$l&M^nCSOP=O(_p5)}iPXj+JXB>Lc;?ASxN$Z)1US2*)VV;9ZK6L^qP$`;T~-SI7tMplD|q z+h|T&>~(BUj~lmI--4dn5#vmR-i>6=vs2c*b@W~pG!J+MdTi8VR3K2`bvdnLbE1|w zeLpnX(!rp$J0mjwX8=ll160b=jQ+y$@!RLIHd?-9`vy9PME zlwv+`lgXc~o9eI@O|2w>mr*kk_*R}>|GkM_j-8$@Blgfej6|tIGm37weym@3s|!Z; z?AG9Pg+)s+AD%2%%&I{LVegL;J%{A(B40l7>hNWE9j}ZUPOCXB#Ol(rwlO|s6E)+5 zqCWCOH_gb*icNye7^4Lv|8pQrlcd3*Mp+-cQ$-ZTf@(83Gcf~pY7^hrZb%TViH=_0 zaaE<}LV+ZVG&&LvvLsSMlud?H}aINQCfc{w@T!?jAX6WCHZdfD*=cKj<>&sYCJB9_*3S zUUV1di@UBnCiRBr(bNu^kKDpKL+r5a(?$wBUXGO?`eu+mAfB$B!>{V0&gkKRHjbsVEEu^jlFD8+m@mrB@q??Qq zi?Tv^1o7d&3K{m3MN&7T@|*Sp*8$g%XSa$BMHN7Flt2<0_VQ`MQ8?C$LfDK{ygqJ( z>7fv=_lL+(^&#M8NV?`R#==iUaQ`54fiJQ_p6oChUPXG^SUcaIWpm!C)Qs835 z_j|N%NY}F!arfL#o&&laiYfpF@*D-cA9x?(YA&bP;c4JANF}dk_b93WbPKAKKn$tI zy~>;lG*BFU_8>EYzd)X6bUPG96+k_TU^Va|q`{mjf@liH)cnVnL# zhVJd&83m@0>fIZFyELmuQB(o6OA#cH9ysqb3SotAO51n}8N~iIU{ss6DT*q9PAP&I z(lckBITf6ur-DG31nvQD0`5_3Ur|&6gz;361TXeGTx(MmZc! zv?ptoC?KOOw*Vu^sKu?olnQ)BQ3arQD~07q5cwpd6plkiFot=oJ(ySfBl$3W(b%5?kN-ayS0t7q9}@@D2k#eilQirq9}@@D2k$loBt1j WrsaD@X1#U*0000DbR!KSog$5NH%NEyx8bkn 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 P28J#MTD|dnpp*X#6`Pi< literal 0 HcmV?d00001 diff --git a/Textures/Tutorials/Hypothermia.jpg b/Textures/Tutorials/Hypothermia.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6becf580eb77eb9d87ed1e2d256de85af4218fef GIT binary patch literal 78706 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 literal 0 HcmV?d00001 diff --git a/Textures/Tutorials/Icons.png b/Textures/Tutorials/Icons.png new file mode 100644 index 0000000000000000000000000000000000000000..546fc64a5c6d6ea3833f8bc25a079cb70c6daf21 GIT binary patch literal 33226 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 Ns48hGR?1t1{XZTtvrqs4 literal 0 HcmV?d00001 diff --git a/Textures/Tutorials/InspirationPreview.png b/Textures/Tutorials/InspirationPreview.png new file mode 100644 index 0000000000000000000000000000000000000000..a9cee787619a63555006133ac24d7ef2e956526e GIT binary patch literal 209601 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

    @a~;tZ$GJG@ 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 literal 0 HcmV?d00001 diff --git a/Textures/Tutorials/WorkTab.png b/Textures/Tutorials/WorkTab.png new file mode 100644 index 0000000000000000000000000000000000000000..6c38b54f3cdcaec7ba6003619e589b043ef9e9da GIT binary patch literal 58918 zcmV*8Kykl`P)dQ@0+Qek%> zaB^>EX>4U6ba`-PAZ2)IW&i+q+O3>vb{#j8h5us}y#&m|axk7#JLu*2cacenlqi?0 z%c4zE z{@nQSe(U)f_!^#H)cjs-^K;MZ{rmIze080lr%xAZ`~AiE`iuTv$k+D<@6SJO6x?$I z`(D`e_d>zHcaG2B$1^RPTP>fbFyGgo_xE=h_}}PL48`Y^U5R{--jkv4ZhKVA}kiBSIW_1mAj^z-NDb4YL8KHWLzA365r z=Pmm1WzHW_)BoqJdd_}k*JEbN`JL3q6z_MuZfLdcyD}ez|C6m+Y<)C7DkU)q=OW1l zAJaAG3FC3mE!W*~`+l8nGQ{Y&FMRcW`rxMFhm~M7KX16BKHTwzz^_mV@gyCB0{&wx z?%uZD+f7%w@p9FWJ&udHn<4+jhxt1%I!6WNoYs=iyC=S0nawB^Ip>UZyo`vr^Db(- z3;gl%>mS865W#epxiZ1dwYdV}AIbepu5be#cwyq}Q%A0>_W~>tBS;L!1tMUx3&~|? zi}$8D$3j*D)ET-D(GSAnQu2#I`WQkcI8*`m<~_yTm-^(N9|MF0B86;1AvTmI!HO}F zKP6UjsHc!(N-3w3YHF$HkX2zhmn=l>C6riF$)%K9TIr^S8f&V#mRf78z4;bE+|;PY zR$FVmbJNb1JMZqip!eZN7;&VLM;Udr(Wf^v%sA7`v&=f%?8~pPsNL}gaFP@= zBIctb;6)K|!FaEj+3I5SikxC*o2M$0XOKz3Sxylnf^j>aj{6b2pOH%@N`G-$wyCPkDAhG4Z^(m7}^f4F9-bB1^0)P zEQ6c_aLRj>+F4xhS&o<)!I~`6T9FH#zT;`Njx$!?uHG;H)CMW9Vb)$FuF}#9In7w7 z8zt_LxdfL!ZkAJuOK~;otA)4@8BkmgrITL8R?2hDcD`$8TjM{F; z_cMwOMEHcg8FFD=b{_FC?d<|98LK6zHJH#__H{D^m%l)*gq(Fp2VJx&VJA z&d@_&f$)>3Ywn&{uwLeJ3pUv#o}aU)I?5!XJ9s7-s#_ME8YCzSJ4qQqZ;tj%KTHq1 zuapanL&Ek>UIg-nLCh2fNjbpmnnp^sQCs9*1$~H`BlT)0wxw~QZU&;ZolqTr| zprkdLC6DS<77pLnnf>eyPSrM7I$<7i$95`&6k2WW3|}ztwMsdZY+{JKDWu+tgZoQ~ z$5kMzk2Y&3fBb4FvTS{>1h|aW866=V;A$tWV_YMVjE;LbrkSEIW{tjY!k69iIpY9J z)J0kV@c~QpyK?OEh4G(VMr8e$BdGdK+si4gH5noRdQwHl$$iL9w+m!9X-A$B5tg@& z0-T)SYW68KB?n1^pc_jm!Rql@34yF(aG{+s*GV0{@Y6>fM6fL8>`ZZ?XolKlAFnZV% zpvX(cucA~Cs#AIFppQ%~_PUQ56aIv@I(dnx3;`mGb^!L)K`s?}rMV{u6S5Yr_E2-$ zoy)LN2mGY4`QLc3#-kTPS{C%33koiXh&G}7B(`A@tC#WQ?&3plc{OF1mhX^#fl(j~ zqbOyq4FmzT1-N8PAiJj$u}KJ7*67!=42R4+K&p#e(Ys3Uk1 zP&%1e6$*8;D6;_osEC#b)0Z_0@81|EY}IjJJ_itI0Atc>m^&w76lbUl?PsB&Q<6sr z_6SRoE2wVc$oN7o3{UdrkS2_{ba7U#k&S32XbJKG$97s&#h4UI8eeZuW}}W;B^^6? zPDpwl;=Apc9ujt^yuq%R8|Ltc^hg9IH8)YxcS!LRn~es9opUf5G%D{%BpGz5A2A9m z6(zA0rwnJ1C`I!?{>`Bs(3+=p{#L^=ZiBv1BI}7}?#Mz>5`u@wY+S7nm`PLXsDoi6 zVy{=`J7+~!BH?yhyGzzA@pu6=Lt*N?-y@~nwo;Br9*W|bO!k)W@}K?otGVBdByybG ziPhW#l_Y3El~V-*5JCYQh+&J zZw9wa{?>#BX(TRDSu+c2HcL;IxSMoDj3NXVl!k!dC>f1Nh#NsermSUf35$aFpn~om z0_@(=m>3D*yaJ;!;o4r3O>wS(NiZ{c7&%qu$x`0;K@fe<-1oq} z^@#()N?{e=q{gN26&z+<5ckrI7!mfYD~&szr=!iQ)5@$vD$GR*GD`4rdJ@F)x;S7V zOhxg96+hCd2uHx#2%Tl%SnZHm(Y*74JQ_E~s(B2=4z6KCnQdMqJ)#^ApuX^|1a53# zVfu)O0G3B~75yAw6Wrwl16lu39nvDAbQnAlNYa56ckX$CXhKjfx-)Bz-~`yvfT8HN z67UVzi&uyN1LOLE&?aloti6(HV@z=ln>$`aWf48a47?{CB=HI^=>A~oh65chfK#Cf zxGbhd%23vXWEStx?h`$xG((XWKhKa~%mztcg$xdUK%hm3psk&Rj7%C8kNzVeGq#)* z$*4pY%og0n+AIix$4B5IyvYNSNKiO;1Iaf255kloBRzwS83Tw2-mJb4vfIk}RHpa5 z4F%y7cPpq7_&dOw9?uRZqX=yVgeEG18(HCmgmnh)tNMQFOCudDxU9C^uoYj99&imBL7pC*vS+RMQJL~OId%~3RHk-3!ENv>Bndsb zgZxFBhU0{f#3tc*$g62lCjv4u)BTQ9<^mOq1IVJGkSu}Zd?d?|Vq$UsBxS;9L^7lQ zM5N0Kf8#4$I7qG014B#K&uwFYLs*g2?dri|{fNvR6D);u!?#feV}U(6cPESv;P;{e zY!hE=ayV<~$blCCFbbq%G-pYtYqt5~5XPz<$0VSD0;UB9#Wzvz5)wp*@f}vBn}F&j z6xWB$8q_k`7J;_q2U$5a9hP8{yd%XsSB=q)Pzf$bd{2vkrIaHHuoTaaej}D+42>iyQ^fAw#0XwXjAY$%Fwi z*eaI9Xs4jjt8FZ`eCo`HQ5o*wF~Gc4J^z6#T$CHIee4NWm;}#^R1)47^sUbX2SKFY zkaNgRWJ+1ai+X1Egthj{dh>})>;gs#4rD?{W2lK{fyfcQAx?ZPUJMzWng_|K(rrS4 zTtGzMS`pCqD~M2LxTg@LK9z#IXLQ3(O`&VOlb94~zhy#TmKcvDxPzc@`T+H4Bt`H9BQGEiIpjh4thp6K zIdrPF@5G$ODol&2B2~f5gz#g0{zP#%=t)^>c~MkckIE~gLKJYpB8|78c+OZahbVk#e7UMpCb)534IWDBy~Rv;B}NPwr&tJ zMkqUFbi4MnD(eRV;J+KhoV1@qy)d;(fPjM_#nM@xIpezhqDG!p2zj&CqlWtmL^kM& zaY7pQ29?z76&xetFDwW$7Br`tP;L#|KO9;VqLz;#1(3DJ$;DW*M7kGvY8#I~rZg!?Kqp%8WGUmjg{0* z!+8}nYl!k53yx>D9WG`t4ddki0)Mw6H|*oO8b7iErc_ba8*R)XX;Qix-)BLA&H*Gq znKa$<6K_Ujai+Dc3US(75Na`Iv+#AdU&Ue~(V>|R2&>c1IwUyH6YguY5EE`7ziYr? zF+Ttbxkn0L+&0f{4A=lQ6tD>yfs@#^jMKqI;D_juc75HDsO6PX$Dr0AtB$2+v9J*+ zwt!E)%@WL0?OZ3IMmkW`PY!+}E1R_El7GWDTqn-=goM?XC~#RDENY)qtb|zF4=n=# z)F>aKCEU2!q^|B>NXV9s=!S~F&R`;V327t-{(wjOVsJf<#X+Bis1_&w4@krB7e|1b zSe{X!x6|$XA(XL_-jnhbow|q`m% z+Nq@M9nQI%;tWW`c}9H4E2$XBVAZ_;dO>79)QKAv=@M(I85jq)jcbi7b8SJ@nk*n` zIn|Zcu3ASY!o}l|t`(^P&|J>yVR|YGCyDW{e42)DO7-Mm!ah*!E_`@T^u`ngfQK)cj5jhMd z(akVP2iVk-^szX3q*<{-YG&`N>_JH`fS?Wo47ge{X=egPN-B1Xnp(2~WrTmR(&Q^z zghdC&@>y0&nmWU9K~_zb2HDO5sz{8=U%}lvzTrr3*O*XMkL~l?-=!!0VZ+PURb;0MKZ;IToY!LN|Hm5L*y#(#{eY2G49+Dc4wJHBEEx zkQy!%GV9LZ_pteU=*^(S$|Mc^N6@O&;uKjp#DKOlF6J*8+bZP{og+^3kf}BTZ1{J6 z!i#Nb9lMDF*B%(R#w#m{0lp5|1DM<~mfK??L0eOsy`e@RPiLAs6PU@3;RU52VIkGp zaY{7Q*)WOM7S5Qjl^cNh(iw^&s|k0O+0gT*V9|;=dBP_WofdJg<*3N^pNKz7eX|>j++nAJxPY)K2*HHu1Vvk`owCD>;dudgqE;7`Gz-~m%A7ls18Q}rxHcjQnM9j08Tyi{o{#;YX%kph| z{yuH=3J{A>T~f0X!Kojcpw`lPx~_15D>xT4CY~C>G$U#kNY2^^SQU-t$h&Ztx2Ts7 z@z#hhb;&4iBbu4t11wxZyX3O~qWD4394UxVN$$1`{lU5%w86xxgdvFpU^wXX zX9O>|0+Ea9`6jrTVud*pk_A@?lcR?W(2Vv(u>s;Jo+Rvn>eQ|DYe9hWoXn&{DvW4| z@1|rSq8WCk?vPDqV*GYxz%UsKTa7=g8&NvKN~k75U6_O+g;6?k4wxtrgqI#E%tps9 zS97D9bGsb~88?`jQ(uS5LsrXP7lg}?Iok`!)%aQBHlcFtHbn#F}|Ey%;E(t0O z9hQQEZZ$EpO!XfdgaNT1zo(-Taf+CI5BTE{ArOida72&b+YzCFmJ z_q}k?01QxKA%divgu{!HW_G9oSuJSL3cUShjY0*~)Qm=I8A~Z5ojfr zIj6~cJ;F|{ZcD|I$YrXPr*;SlkMhPd!?h$N=yudgE&hr$13z~Sr9arDiH+tL{oOuZd^?WEqVGxD_?ZEr^l zA;l50eEn)8fd2@NjhwnSDN$PxjYi?Tp z%;#8sy>RH-*8Chuh4JgV2$8uvUtpn59WhdO`}Nu~U1FduP9hhHdjvd)G+?M!_<|_a z-;G#XqMs?+I<>bF)YItg+Z{(PvZ$_o7hjh4e6wR|@JvweB=l`-hX%GraaM9_jNsH} z6e*ktCwa9Np*cGv?z2;`p=dJ~;Mm8AB>7RVIv<;_rnQ(~ z-_TJ4WnF1X=;I0vf)vGn3JE|St8)|u59<6gGt2!FLLKy@)U>A&v;isX(n*ViGekxR z#|`<6R1{AumKH;KRB{X1KC7K)p7IE z2zsak1Qd~>57o96IFYMJV+0@J@H%J=^cr47-r<@7wF*)|iJLBB>S6u81HOV$Yd9O%@w7eHpC$Ke}+#s(Wn znkspAhIV=+$;!M!-s+5+^F>8sRO42aiOy4h9UoqzBVNTr*@(1E{bvmLUtWekj=I9a)4B(z(l+QR#;8>VO$ibIBx-dPvD}I~r<{3Sw@a<+L_Z zkD5@!L9H=8@)92NfEs)t36HwfIjd4; z+K)x`8FV~kl}U_?HaFzh3mu9>c4Zem5bNds8#xUhErLKB36@#V;{{s|sA;5CRNxMA$d|}<{?Hel=xW-BUXsj|Lr5@-{2EJ! zT2(8OHENBD2gjt=ZQ6rHO4>zTA?d7>He0xzs|awXJv`h1H$Z3so&d~9U6R^SRv|_! zPSNuOIxaSKdPR%95sy`8T4gW-&dV3C76m$pQZPDH*=H*vPHpa%V9Br+wbz2=ChFI* z6&VcFD@F|Y0KGKrjx;^0L~gP$rgt49MhEKeho z6i3Z{yg(c3>gz}ZisOheEtU^i+`*WnqYbzSV|8dpCk%07L&R2d)Hws96hxE% zU=y@^i-s(*=!i##;w$Ek(U&8wMOh~l2q{IWBspv#NDV&7PTMNCoio=!eBx~kQ49?i z4__=iAf)Ctj&V4h9HFeKL7n|bD&(XtpA{6cTFI)p!TZ2ebePe(b49qxnMWPkMA+so zS*f#;>d-kKwmV-VSXVr&4$TD|x)N^{M^p31)9$ zo;ISjcw)c|=gWHZ6Q;JH4oNs6(V*O8NitO|YYG=)da8Cz`K=jIC*D?)uC}*j*5bLN z79c%tgpt1kSD&Qb1C8b|I|2;vd%-`y|WM->F6DI2TwlBCd9ddO8C4&M7@{hJ* zs7?YLM&io;=!p?*NU2QPHa*7|B=wfgub5%)kwGcEK&ERByE6|sMkfZl_WN5&+DbW8 zwYKvLrL~vm56&mu9iHIf{(wIpsNIS-zSKt?^q2}NMd%j`uAl1BaVKww3MA>or%vz@PT|dMo$VT^y`~XHPe{hcYqo{*kMH}hbO*-E( zo;b{qD)$VHKvKQNAu)kCD%xp!_nGdc^F5?x-&1n+*RSSJzxe!>tG>H!I^H{Eu%x*l zGLqe+1JNF4PaU#tiDiZzAjqxFf1S*3%c&lswy-=2sIyvAhn#fiZ0~}W_DnGA(VOOE z*I6tIZ~4?LYiQ2VjsKdt%Qu6tK~6pw7<8w5q84AGT-Zfy!+k?(dL-ixI(nu^RMoHb+`BlpEl zIoZ}F@hy^4b5u_N<)_=NH~#uQ69NDK&l_3ViLgQc0}S3jr+u~_mp$VBw;lhdOIl`! z@XwE^iO+ewWkCk@k5+qjW&&4!Wbm&Sw%YaSm9>8c=kGe(dzt$pfW=Thdca^OhfIzE z77p|0*mYbcmG=(s^?$rs14p0gCwe;LDaRjU@6Wv{Aw6|;gZ^b{%K18_j~N;8%Ws|M zCy>y62|AFV4Nyj-4TYcg{CZ36)jB<%aa^gxI}2D?CN4l8*C=rKZ_Wf;5 z_;TGZm(8Ew9~AS??{@GxBLhnU+IN@})owv&r?!!n{iZQ&@F0ku)4dq-fgtLK>+L@6g!IVPKm%=v_d)*$vs@8>w5o^KViXA8xobF!$XFFm(A$&h*mZJ=l~%}D(=6N^uFq><<>U; zR8xKjw7}7RS}zOc(>WGgJ+>Nx)X`+z@HR;YjFf@=f%oLHh7xnf0 zHeO{#Jxdg%0Z?oMeTD!Uasl!Mo>&U1MH0Y_|tS1K!u}9M0?8nII9~8i~sd^}wlW;~jJ3So| zsWn6nq^7f}>Yt3H!HHu6Ju(SJOcWUP*F;GkPvVWPKB%xpJXa8#!vZjr0>M z{dpezT=h}n`Ps(am?Al!kE`e!=jk5*yvC0!aOvj?AMZyp@qT~zZ?#j+L_;f1XD{>+ z3KytG$LtyPIAlL%*&g}woK~1RWR{c8^3JUz7o)}goE#o37YUL{COsGe`0E73iW%Rz zGa%-sj<^CiP5&T_o(#iov$BW3>A2Qt@gk80?WILdG2p09 zn0-%#QtYg_9;09S4#T28^2pZVJ#>ay zjDmuQ2jM={NyoeD34}QW~T$fDXIPMhvOG9zz?u8An}s!h9*StI?c4U|;bsXRNrF`(b| zD4$=VpdCZA0lSB7)0z0WhjvGc&RfR12+G}vGg;s3A55q^>Py)$>~(ZP0wo6aAmYd_ zJN!ba>4C_dokhy^p@Zbs2gE+OSB)OYpT27siX0o-+>3~MYFJR91D67XtWySo@+gBb zMY(yM*Sn9L@fs+@AQ6{CJ_~-xyU@}my<0-It9?w)P58i}%7fyacN8Wh9WM2H)MtTh zHChl-i(JNi3ctKH_-1Yx5)6^-Z1oNOca6QGd?%6xAz=Hpu>W z)#&f9H2p*Aym0UZ4LmDON`rYAR2_ZBGVu!iqX;?*i(s^uGS3~+J(T~c=GC<7I;FMB z7>FMcdZ)l7#0wIhH$RS^) zGMQzvOnQ6le#lg*1QG}kAc^yfsE{)AoXk9Lp7Z|C^SqA{-~a3X;MQstTo(@yk1q?? zCBHC2tu#foYBHWI;e5}|!d!ypv@g-h>U2PgZ-{no}6RA05Ng^Bx5)K8C zB!MIedb-=tRE2z@OnNqVQ4uQT)0{q?#PMztJ+2U%rn7154iwh~!>CiMR=iR1@c5FD zB!TP7z~u>uW!VgmPUF*6y1QD4MMH$cK@>%ytE-K8B1&s(jASxRu2A`qvExv$SFvqR zK|HRg5shcldU$+ASD)>;*tUc1xPW^ZySP+q1|y@>j8Du^t)BN9_;ig#Jc7@sEk5To z-`{cE%Xxbbk57%_4FO9oLK#i{`f93WJ5;K+cOrZVI4;bjE69?-cHGN$FR6-5A|9f( zHFkkm0GOtQW!Z~&hw1q$N~VU>6e|x8Pe8sv5^Ykt#LrSUtXQ4AZ&n zZ3Q4JG6Q|>bak~M%MwC}hVWZ9rBa32xh$D%X^EgXnBFjZcmnd}AcR=FD8H`9?{T&L zCZNbNogHx!@d%Mf2t|=`U2q(SOeRmUSRpkvkL@^KG^NM2B_NX2xD&E%&-LNqais;l zB_3jMpbK5s&@>fjtcB$BMP}!+EM$t*>Ykn9ag7N`C>Z3{^=ldE??;wp78VwG|IlHk zXJ&CPaT}C~$Jn}MGyC?x$J|2ZQ+=MQDBOM59VAneoH{dd(a#8lf~bl@p;*MWohv?A zk|eR}rdvt0v>}ARbzN%JDw9*=%*-Tl9Q%Tcf7!BC*tW&Q#4xVwcxRi(WfKnh2!{gn z^>z>l_!gh9*9|I_8pCHNDV1y9KzUqy0ul*_c=}sUux8B~;_(;)FieY~<;(f)Z-2*l za`FO~i0irtAsAXV$oKyAPsn6*%xAKT&!5}oVs~KYp7;55wr$(W;loE69vQ{5?F;r* zWSK`EdVp%R#_l)YqEIX@`3~+CG3_u2|NH`#N`?FHyO$k1?&Rc&lT6Lb($F)01n~#2rb?Y`zE*B99!r=(HT!s%mcpuxga9v0w z+GuU1j%(JVHoBqj6eV+ORB(xw$lzN)c7nX>0AkFb(4I7Alo8>GTw)Sx1&- z;_)_GTH2^o%FNBpP_I|<`-8+|EhwsnV_T$Wr-?*jw6wHgng;3gG?hy6lGdTe)j=?z z)7#g9vLxf&Fieuk875~kUVwwgwJjjJrm^2_IzQk+0b|J|! zkACA3B&i`Fy6)q?`|hDqsqn&!FR^FOTXeK{aQ}Vx5(-^zPSg-ahRH(VSav&;o)J%#>N;J96**N_V3%zzWw`= zBnd_N{6S}ukm&8{^z1OPXdHoH_wHRBI<%i?G)6p@pu4Mw zmXis}c@J*s^6ij^pt9>#y+cyKfPVM%l7u2Y!Emcs#*mYJyi@eTk{5 z6suRSC6Q=j`}TV&6mz`$?jDXEJ3@c|0BcrnAQ%b}2}d~k!D067d7XGXPBa?h*s-JR z-TM}nWumI8cgA1knw*W((sKy2H=aUCQf zp)Q$_B}t;Mw})ULfbRD(H9f^!@9aaCB{px|NN->7;sh3ngh5D*kB{^2z5|4U0q(hH z2c4arq-STT*J~U;e1ws+V=NmQV(raq7K_Nau0v)%3kbGv-%hz);^e7QWHK2H!=O|y zGdnlW{QMkUU0v+hv4c{nz@fuOFiq?83y37q-rk9#YS@-dp^#_i%YWd+$)jxEd&JgG!~siQ|WvNvDX#64C;c$>p(2p!j$g)O%Unjbzk}s5*TPS!g zNsntwKq}QL3kwUx<8fBrcmw<2JBaJL^!N4fZ@&L$96oXsTo*}52mw+vw?ZHmU09Ce zG`5i%ubm48Ub-k=uN%0yIF5t#q5OpX2M$sw6j{A$6$66<^!D_SN=@Rr%_U>U;gwfk zCzYCF_3Bmh_xID<+RE9pW1Joy1rY+m&F@nJw+LL`qNHV8ynk>%FYkPgTD^+vy4bdf zqBO+OG)*kaJiln~!puyHmv;V+{=Oml`Ucs$bvuq@0_TGWgbPpi1xkd9gULqonL$zjbW_S|6U!%9Xl}IE+C=@_d6?%F)Xlbd@ z)*54SYVISouRi?#xUN@7(c@~dKy3Ez-OuvnD|qDLhX@7(n5N0Lty}5t?&9sY-=S10 zF*rEDop)?SQ50HQTbZ1i!ZeMByQ@&dG!6Rt`q{Q+Gi~i{sH(=))D+Gqgx^X+;*L9R zXW8HYFYSDp)MScB9(fp_&xdK6L?RIe2Ku>e^JY|4;gwfjWz(jO+;Yn;=(-M~6-VBH zBQFCXAz9-{_WR&YU)}&T6Sxesj$za;waJo;Sg>OGO4hF3z#F??WnyBC#~ync*M&;C zN_STeH{Q68a5zFZ9Aac-1k18M@;(6BT!vgOhh6{uEc#p4MKmZONK1wti<-Ysw;je!57f6ysIz7t^FTBLw{Rfzync<1YALCE{ z_`Arm%<%9C&;8+fBuS9V<|vhly!g_~eDl#q_~8$K04^N;-~(QLZ5Kn!mXXWlFijKJ zai~-(6bc0_%Oao4Q!EupO-{1m)?4|jzx)vZAAE3(GsDBQx3}@|Ll1K2_B$9GALrhC z?qSX9)wr(9z5@pspP0gt)?)hZ$I#XQ5~^_;t!5xupPZNCx(>x+fl8(Pk-PYFua(QC z<_zspEEcI7HKu2#S-Vc~%rk!iuFK@)1Sd}&BbA!qo_ikR>8HMn5HND~4DasUO(YU0 zm(O8YjRpT|wMwyApj0aI#_m_yvEx3TefCdr9fy&T(bIzb{s==| zj*En5juR~Z0@?T(J)QNBt%W6oAQDMn7&RJAxGucl!{IoNZBwok00@O*jS8yO65()+ zNTl(&P{>g%<`4qHp*Z146xVghAlI&*L~Yy6!{Q1I>K|(MW<|D2(Gc z2mHZkS{EdFI@P% zWtn8M>GR`OuTihp7Wc{K=E&yeF8n==Duz*A@*CI}-R?5(DL^E!l|D?R6GsZ;3LRVR zM=@Fvj^qi*SBdLlS~iAZUSLfwT}$-vxT;-P7n@kWnrq4Z4BMPr7;a9Mi;ukv@7$QU z!iOV*xI)84!WAlx2!QZ;0MN+TuChD6CkZQ1Bw{JibB!k!68T zm#P-GEJ#mrCR%FqO6bv0l$owf9UafsMYO{ zxIsTM69oJU-JQYf)D-qpvn4PDHM_AC995w!C=pP62=VnUPN!)Kz1=F7tB^4TbrZ@C z=n}L91uZcdRSE%?cQsuR5&7h6OxG0J+hVjNqC_I0rkko!-lSTsFV@ETxQe`*D$~;y z_6FSJGvm50Q!{0XCG+D2#55fWMdLb++R!j?sfk9&s|(Z}mr~Wm!iKMH`<H%Wg4yCf`B^`Qv4gsNA5SEV@kXqelI(@zRQFUyeODP0S^T>;qj8loB7`GzaS|gNF zD9ua!dQYAcfZ99_oTe~1xKbarfR3RFT+tAai~-e>gJf0#!@HtBCygj9`6B`%34yLF zbal3nh(`zp{YaA3jIwf=oy$-tlu6I!E<3NovK(e+D_#_q#}(&m=gfAIaF;BiJ5qp} zZzGDj3|zZ;Gp;mc!@aJTj9mn-I4>Z=H4)gjLdR6PaD{SyI~2UNk1w7`#Lvnb1{U)? zpb^!$kjXPMvp~LB!SqVGdw2r!)lHk{tqOr7d>G0Arqa9QdFg938d76L*9Eb};&O$8 zd#)s`kQ$GL^0gY9uL4<;&~N@Z~FePe}6$^4W!|ka*$lJu@1C!3%8DJO`;eF5YAb= zEc7p)La9ozR3)1&5)KFG?P-)Ok!6`kB*dE4L*(-%re@|Tm1>@lcz6Qx<=`URDP;3C zB>Ob3XaS*fzHfNr&qZmLpLh8>L}8s15aF616$rP6a2F6x(krC+rJkvfD^w_ys${Z7 zIy(|{ceSA?GPmsjvd>(~Z(lX|fI8LLa``APp*L8`6gG8f^ghEwS=`8w6Ag=ITlFAxt;Ks-FI8v$`4UoiPJS^X}J zD6O%HS&GF9E3`fW0Uy9(-iWT9?|WY;eY*Ge@bCo0!{a(eQ)OCPqO`O`@%u0AU1Jy~ zrs+k=d3XZi;o-3aAq1)-F*wjkXGhBgy+2ITqEIL?H=iSuD|>_G;R%R`hety=G*zav zBTh>qN+=XSmgU6`g!2nIiiI*$=`6PG1vz+l0^;G}(G-ui)(C_BU1++Bs+@0Mo6Q!O zNiUGgm#G_`+seZe5RVT}Ai$u22#sdDBksp9i3*@!K#azA!>$)+cC8YP1c-(M^z^jj z^XX0DfO@@7xm;zqnT_t@;R%SxMOh)>8AYN`mMFL`zcX$2ITtS`B7o%ro>C+RWrALt3U|Js$k#pklj3RNDrV^GUN{+)(%V8g`Cm`1l0l!9fSK9^EcF6AK5!F!B54 zC02=#<;#1Roz0TT7QIDtkE;fG&H63>F*QDdWnFrzQ56NhPserL3rZqLl7vs!0ryKQ zl^{tHx~5?}pUnp>guv(1KUK(M<11%98-@W@##+eT4jcHFt0zxvS+2?hcT zkBofbC$$iQ%^TPA=Rf>D!)MM=D3(6;d#t(XM*iwA{+v`QNhX`Stk2xOZ42N1&bK*z z`V752T_oahDwQgK{)0bb#qwpGJay&^6_Jz+_C-Wwg)FgBkr&-o=PVCTJg#lZl{)kD zIc(d;GA;am9U(-sFNlvwIEc@uQmNE&Jhzs|S12Ht<-+Rk>tp50n^?$X*|+}yXU8T8 z1p?f;{SH>GTE)b85?PY5goUo_1pIzX)1+Lf;y4b9q992UvMiygDwS#t(=-u6pz9h& z-N13(#XBz3G;v)QRaFQE0sxfC6&%N=wY8O-R<0xz3SDR=sVYK%rm9GiOu16VwjCr% zLeo@)5Xh2DrCMWhdYWpjzGz(q0)9-(qFSxtx-POTp(^LwiWUn+rl)66RE2Lp^E78i z$CzJOV0LzvQmKsVx(Fc%2K>mfOu16UvaCe`3I_bBib|zgrEYxs(91mVqU}Q6uSBaQw^!GD5o}{gE_gM)(@hCw(Srd%%Z+UvWKgy7zL z@8-=n-(qSe&5EIAEL%3f-hBs1#AB?#WgY%N09DnZNgc^jRGNl+dJw0rqQMXSy}cc0kA6X?s8Rweg6&zP{rcQhKCh*PR9wACy@ZU{C7jK?U$7?p8Y9u%MMRf(Ieo!NZ;3_T&zMKf zW6e>X3U%8Gd*zBzt%R_s2#@FtA-!N^*e1p&rwfe=9}Ucu$lP!AXhTRX%J`{9Rifoe zT1GtYy>$YVl=AInA*!!!DrhSDKTuOOG7AaCLI+*0TwY*YYc(92_0cAXy^1%>4q}cK zxRe*o!GXi!3l80w7?_w=F$H^3mk-U&2sJR-q1Idwc9E&Chxj9i7Ip zzKPmp610i=g@vTjc%MH<`|onRdRmLRO^6^L9@{tvb|t&jIH$IP8W>`(AvyaDZ}R2$ zChqC9&WK5A(WjXY?N|s;g#ZL8x5jw8m# z2r@TQI_?M_?-H|>7?Ngd4WC6qjkO3X4!klS&mSMi(a+Easzv!J%q=X!^CV+W-5)PH z&Jz7^-sF6Y)0ruIpKJy>L_W4P*6nw_RJUa)BNOhZoGGAVs*$uL5WvcI{H zPsZB@+qF#&>mSp5-zP1#@!m$w1M!H`|0;ICq*^n%t?_adp-ww`CzV}LuTZ}vuXtBn zY{e%y5#GGeVT|l-a_{A8&B*jV_VRJS`3il{9O;DGLvec)qqy>(JTl zz5LL}K%=7JSr5FY!J^boO=O{l2{QRVIG&#_5NF)NY_)MjQM%$$nh%ZPebL}^y~z|eELh9_k6ovylfPlW)OoSTR!E(Xe3 z{gNMFs!eF-yADxVS#;a7vaRJkJVb=2ynp`SAmEEzLcjC5ovk%9Q?{rSeJf@-@dyf7 z1_CN}0#vzVI!$y{pM47END_6g;*8nVo3F;8%#`A}mDw-|HQA=zro%z`IFGdGCjbyaD>-fJ`};OKR<3O7L`KhN8;*6T;ppYEOa>pFSbH}|NTmxB@J~Z}`J9HT zE1`)?OB8DA`5hhE9?;No>k-Qt+lQgGjvLXy)N_ohWp~PkQXN@E#dpQUYrI&YhB(m@ zS{-)e@fKfzNrUk85s&Bg*o1L=e|LTC;XF2;;5juSGFEHs9(Uv6jozrQA5)4k81$52 z=w{yk3WoTJIPn~kwMuWHc`#8P zcOv+s?>gh`3#@>FaHAQLeSVW^b*m=BY8NH#hSFs*^~k$ifo8zLN8P%G#ACp1C?V zZqS67l-$(GDe@!&6<^%&G4P5$g*0ln8tOb2!x#TLRaYxZhG565en8HMCR59>npymn2~9x-i2>Z{(usJ;eLy`kdRV z4oLtcfbAF(f{`j0s>V79tc`q?Hj2_`K=mEdWZF6nHf1@+v~0h^qD7s4&I?kGe=vXl_n1Yw||iJ7OX| zQS30EQsUj5n!FG(n$TSK(GaJmUkg6T0AmBjL|ou2QuKnFiezS-{pGyd00Bnp7u;Az zGf(z2;hq|yYtpOCMZO|+M#?=Ik?`IZYS8<~gj*MC#I%An?n5Jrp59BX=4_nY)NX3# zG#K7NEc0AfYKGg!bkcY9yDDARP!>=h1`>$hPQ!9=6 znoqW_Xfo9+zRDKsa$M}&D{pCx&84Rw;ZJr>J>6QcjLbD6MymI{nY?jB_4`qR@r%_I zriULJwc*(l5N6T|ZDc&V7oG_Wzw9ui<+ zY*85|1!>%Fud@Zl!RXwC^d?(xEH3@_9u_W|<@+i7{Ov6)!6piFPT{xLg*1)kPrz@SmWCY3Mq^@Vr19#s?_VvizRGS} zuX2t!@+tDwh4nTEqp&Y{%!FN9*OJ{s+lpg3tPNeI311WG*DuO$dahfnM`*ex>Z2Aj z?O#|K>Hz^&4odR9O+bO4P(+y|Uk*Cd$1F!%Xf{an>&q_=`%35K?aCr*x!uj9g}qValFqLs#BrM?^QVH|gUnWP%$$_(n71M8`oL&`;7 zj&A?xqK5~xlld)c6W)zzNX#YuvwOYm=1_>V7!9>(4izx+<0qu8TqkvOul^(2)*>}6 zTQ`5zQ?l-C`we+Bfv!Xo|0I*VY{ZE-NQ@?Oxgvfjva*w_Idg$pYhG9BnE=_$6LUyO=G^R=LJoZ*s~vzpT`QTeY5~zyY^Wo>(9~W z0`SVjSsbmmm`n424<>*{R;&vgYVaO7E_<1>$5cJJ+@y(>6+pjo?V9&e_niMSGyMGR z1q0P$2KJ-^iw9B4AI5*&b0+Fjaqw(~9C?9TKe>=V0TgVzc{Bkj`D=lAl_m|&v9Z?W z^Meo}RCQ&*4p5|XRf;~Q5l;WfXKU!rp>plMmU?bMEsRn$(RVG|+@10|0=$_M&0sN_ z>e=QQN8QsKnqISKZ-)M^5e{(3zs5sbJ-ht@+ry7~ZRHAArIh3+6rXe@WPK?&`B$a? zWKzqE6}(7c<^bDy{HT00^!>gj<+5o(RdL(@uKr_gJhT5<#~laPg2Vgnh9geGkivq( z>z2pUWsl7wdlmtg@DTxTkDVkv z?iix!O(34~mV0W28v6u<}5Hx>J`)k~3v%cmQS221^ z%RXP^0S0^M{Ip*EQd?(!w$|}gTJfpS<7)p1lEXK8hF%p^m@CTjPuKT;#nTM=PA|nZ zW?L;^h@vblwxldA*=axxI^X$UkP@<{mh>GIFrc|FyV5BNo^baoWUSnOLO!|iDK+TG zGVi#@5W0tDPYR7Iu6g86$SEX8NOX-jf3KaTQa}-*C#J$dQ7W0HPbS$)FSkY^iM|Ao zNE2%K6{eU%0p?3Nn$5hSk5AC@!vi+H>_)**p9o5zB5Z;^X}UzislUEVQ=_}CZmX=J z=_Hf@YS2#B&CHDP2?TgPWo1zS%e6?OWNOzH!B42U02k|d(|!F21{T&wEy7Skl`?ft z=dpPd>G8$I5qPYC3^TEbkxxe3?Q&j6MQmW;Q;iD!k!!J2^bT*%x9Qp=RK(}+1Pk{_ z1Qu<#)4CQ!1GVp?(gTv;k(!)s%C}xUi18X`))GxKC5)7rl z8*z?rxjnX-k(Y!9K3y%o*U=%ZKfpl?88BmOZ9F3&WYzk&6wC3ep*2RmPVHw0<_=_} zlkDJm=*TIIf$7cnRf<+RUxoi}{F9HvKKF|kFG`y&U&r#F;>_8^089fSA~eJp4u6MV z0x>HA;v-0@)3BsarSu)7UuKP$A(;xQWg1#dPOs~5U#Qg(E*nazANoNE1&LFBKC%@n$#FwHJm5k#3>IHCEFy z0QUjPNG={9pT_m17>G{@7qTS%Lxgc+8KW@@SY#ft>+9?>aFwDN567*N{iQR)RV9y! zu35(|@&)fPf$y|*EEtK?B_F7VSZ}e(R^r1b3$)8vd3Xk+xfX=^vpzamMcV2#{GNvm zfonqz5iQkki?reFKYQ1<55(U7r1VzA9EYz`>_L+l%G0it2!Rle9$^%be3gx>vHQSo zNx_xW!mRJFC%U5e401HeaxF?BDu+(LL&?PtQ=OLCjJ0Uu}*5V{EBjOK3l(e@3!ckQzhp&!11iu*mM>nkmiqOfw>P~$>|<`XHrgaRa8s^ z3A9X$I;4LxR9`f`8!VdBOPWDy--;`)JnO&W3z5c&?FZYJ4%A>Z9Hf}=j9=BA&$H`C~U~W%Ysgw273h+f4rdgy(*xOUiH`tqdc_E1_$3tEQ zTYT1Hqw3PTyV{NX$&f7bHB_3Ltg~=Wtyn!62Ltoc`E10R+jI9kH{kltPjnSW$8LUs zzYwC52zC$!^AB|Hi=K3oJ1+17Nx|iWMvbzB!S!)=%=!A{j1T|dlx`K@kxZS8l~d$h z!ex)_kZZ>LsG|)=_jgTtAewkMU!{YSz;RNZ3l{_FhgvaFW*mAi!rQl~Aie@LhXoKV z$$z)$yxLQaJ|eC}-9wQ6dOP(*kW?lzRo7v?E=csk|z9vIkyV@J5{=EE- zje9)0pcp^Wl(0G<{Sp%ipIyDHUN6%0?1lKat6o82;mho=D=~ca@p1*k5Iq{(MJ z#>+i!WcuE=M0Tn+CR#=#Y19AIHxNJ+qDz%K9q-1*#R|K2m=uG#k`l&vnf9NYC5)Ky zxcC1P?tMRyp9Y=y|C$rC~cVuI)ymsk!{vF8QC`Qot@e(8Vct>FA?p4Cz^gmB! z18XPQ-Up70k*7dUW@coA;5d5fFs7&<19#XQX5O1A-FCX&AJ!30^HZ zJUB9?NUEz-_^kLv_Wom}O-6^gGr^Sq@slF8NJ^df2K@$ZS6cC(6%)(zBJ}HYILCRG z49}kFsTFf*JBt^X5z;4Hp*)Rfj8#&~v(x-iLU?JawoaZdb+VZy!0+*Rf440u)Z<9T zuHNlNw&Y>Vb>Y><^OCc#P`k)Thp@qRsYjlx?0ZW|lm&ZGf#p^|?tqyyI8-S7wx7!6 z({!8nm*b&-?~;AjHtgPUE6IO$uIjTl*dGsklSyuel_zKDXN@sYrdlA7nO0uTl=U!^ zI2-exnRtDBA`c2RVa7}ZC(f_&ah%1)MX@|w7x|X)-Da7x%CS$aX7|aDUr8uCtL5xz z&aNX%v57hq%}v&!@In0g1Kn>-IUfUR%q67@RHlm6mxNrtYPXH%S+(Z04aa$w?()8~`4J@ltILf1!j!!o@k%)cdN*PM^QHV(lAbhHes}5f?}|&K+u? z1Qrw{e)2;LVa<1XFPv+Lsh3h^8>ZXY2<6JKorfeQ;>$ko%3($TCdO>to~ypUGj@#e zE9sysYzmqbVDl0xnV@PVze$oI<8%9bbK{9c$rEXrHat4&bh%HTDo2>DSg29rXy$Q^ zz<5?7cxAS=39_iPcxXBFX!%YNZQfTWcTs#`69OsI7;>S}z$+}HdBXpqFW{~qV;zl& z=W--k$#DdLxeuSf`%}}?;R6%cKq3OW_~4{DVLwx<9BY=G-h6Uc@o%n5vXg!6hdy8P zD+R0RNUlUr-E?=6gkZ>!=1l&pM2PfSIbZ$hdZOa-W>$j(S$fN1YvL6E0u_Gu>Aj_J zSuOM}!ao)G|3z2cYE!`nf17gnCA^MM8jzIq24`Y2I!&6~yrfC<*ap>C@!_+Vk3p1;H*7aYFitEWco1d8lQ-{GQ~ z^@U=qY#Ye}RssZ=k2w_$dAKx;(()ypAi~PVm2yA8JFwO1NVeNYXWrIQ?yW_DQ0{gm z-`#b)4zIHz-5=vbf{}u)QP&-$;J5e0Cpr51=m__8^3Aud=id4CM!h=}LjibmLi0n5 zqILqJ?OWWn6O^*IENbdn8MSD=tia+tS%+>CVC=N%s;Qege8Zls1#qZCBZM4YMW0Dd z4g@nccY+XFZ$LCpc<2@`W8471oSbBfLRf2NN|L$ARo4E%I3X1f2vl_uA;0V;ek}SV zMiVyA-!)plrg;sLkgSSj+}*i=)~jZPhkR@8oFz_!>*eKLX)^@KWbEEJev?^8v*HI- zB$s4Nw}0lVGa7WLK)Zy+$t}UA+=t-viD${!|F~rZj(n1(w3vl$G;UOAdfVvp0#oIR zm)~j4fv}*~@iVfO;y-%ngJh!BRk$Z53Z)IuN)9pf^EoJTc3&yq%Po%ntK|xxd{-PQ z>Zbuc64y@{v`HgORIQOy7%|o!bzSsS3YTy-8>)U6Zl*%;Tsrv&OsLI4=AUm@*L;#6 zoe4n{%#K;WaN$nzu}mW@aCN;Pm|(AaiFmxzkwQmBK_T0Clts>e(*p--$8vB;W{{H` z!>n7lJ+8OK^V))Opaz@)#XFxB<&LLb#NtMXU1vWY!((lYE?6eFLzt)?M^#GLid!UK-?qEu$1(p0wJvDz%H}lJNv3(n$nqmx$kEK? zT$U#$9k$TZar1Bmj_M5AAJC*4d@17w=IV*US~4MmEc z{qy+oT-;pZq#)cb+sq-NPo)zytBjs2@}F?0+9ZRp{nHLg`AJ|Ys9C$R%Wr`EVxDgK z@%-{V;Fq4o(|?S3ygJ6h3X0SirhD~qqG|jn%VcyI)TIlzEbZ+@l-JDy--l#nxoPXb z0z@B&0Y&YUbwp8ZY1wKq!iAJ^C!3ZchG9=kwexv}oLU2@5 z$mL0~dY%T2amuAnM6mBPk=?f)1dBd((R;6q57b%L6J>w6a1q6c$=Z z9%hw4Jb$z=P8BXe!+*Z=ud;w}b8GIRkK!~W=-(R2Hcf~Wqd9kR$BmKz@ngHG;NKho zRXmOCr2#qb1)sAKkS1U9x;-#EpcCQ7H-d*=^cb;7NcID(MlsKdBr!4Z{PObm#L_=f zZcWj6q;F=XLWzs>WU_WJoj@T&0S|5a{K6Fn4%*n0WH*(9qDhU@F|$vmSUXpdN!Jk?JLOAgiBpbMyRgp`E;Axj)@| zDW{I3b7tPYP-(zg@1oc5NcIowtBD%|HU<6!)JEL&zVq+>ge~}Ue4JHcH0Jm8 z++ee-HLw!@<$0$XvewUcCcmpB;-i;b_i<4GN)`{KePZID%x{BnT-;o%eJsL1G7psP z!BnA1p059$2p&G#f9C&OkJgMSmCX>&?@{nLeTj&G6e?t{wOwK7-ugiB-hzk7%E#Bg zzYlHF4SXLKTWJYL!q+min4=mBO+Kj*x_w?#Q-d#Sde~}AYJWI4xqozW5}gDcqW$ng ziCa)Y$2!>b6R3Xi%5#^Y7iQk3!#`yMTej86of2l1HIZ}zC<_bjHY5X&_G^&=rx=3UvUsCi<5gm(f`4D(`*YI zLN?3wNsBG+iCOY&U}Q0?1XpWV^+x^t_RdaUz3pxtNr(TT=aP^|cz?$Y{i?&)$D^YM z-~^r7EVoCC<^)8^G9<12^KrFxbUgkR6>4&FuQXNi^9!N_Iiou)Hg0SSK=Gm?%NPni z1wb6@>p35GCH*_6hA{$#KUR_XS4kR!1J`u%PaSb+U~$oR^R3EK#T1*Z zMy8rGPw+VLP#+%m+qAyuUiofaHF+O+U$h(2p(fyTs^^L+>p*4QMz5(a*Qqa04hJEM zo&zTtiD3}z#Qs6!zERC&bCXyOctpQ4G}a~xug>x5hbKKVnCB{bdbj%S9bDMz^xq~h zUAV><0|ssd!uCa7FUq|Aul)U&AMMSpScR-i6BJ&1oT5f+lnnjxdal>t;5Qlp*ym{5 z8I%9*Vn=tiZSDlh<2mes6s%#904Ye9{av5GWWGwTISvZpAr+bk4i2T0ZKUCL>tiP} zRA1-&oXv69*}L(BOAB{iNTRfw`i83c=n6MhT7fb{ilsZR&to0TW4EaAI?3RM?z+AI zs^gKQi#f}2v#7ALw394ZrRg)=3kBs1%`~Est=%@#qZt|zvG2eng(9yiZH}kgQZLiQd#pDf6K2{pTaPRx z$>N?Za`#QUWCDiyy9jd0e6~9kk;s2GTzDPke=W&m(A0%KCZtH48A|Obn=1w-d7Y?` zD3fnlN3pc;3Uhsv!gzN+(xBDs_em4lXKwI-!B|q_(oBBtm))@B6?I`0KR5UCcM*HC zrJ*+Avi|{cID*g3kipt;Y9Y_ns5cM=nw+;Zwe*a=ywY?zqY8>z&wtC7mY1LY!S)+C zA7(ecsnW6Bz}VcHjrml*Cq|9C zm?d7f$J%OLUxP9^<9~oqKtP-wPbA)yWQ3M3hH?wNqMh{z^@*?DLSv_w<0m2mulUKr zY^u!B@x6=d_&Z}CO6U;0PbS^_v*=v$7yeiU7!}zrsIEf|%a5NoXLi>m!&NBCeTBx` zj(s?$8e6=|K6tRyKu+54$nCX`5+N28a^tB|1StmLLj12jb_qh)ZOcfAtf}lnLtLT# zr<8rBpDUHikGo+8=7xq@?|e_x+i%^M^VG_ZPlvK|V0#IJCYBsJ8Bwi6HDiLZ5Hes1 zfbuZ%ak942 z@t*gf#{8zR`D%|4Ht8lS6ux)#&9tif1&|ri zv{gvN2@6d;{e@R_$Nk~5<9#2)oLnU75Lcs*tEHlE=~@*|f2=%P@))S7lmJ%WrjSE8w^B3*Tx?%ou z+~1?keu611RWq^DeYVx)vcV7`mLWzX(z3XDe-mtNvT}z#5Y@|DUw0<)5XPVSSb+PSU4sA<+sX@Gdu2e%9)r} zXK8PIDE>o|ckn9%c=s8RCFd@vczY2MTr`bjy^}ZeA>P!H+h6ayE)(`_kP`8n3F#FX!q)tU6#d$9ekc~>36MRR^irj$Ps%y9^>tK%qN)@*9oz#V>u zdh8eiiQxCXdkO|*;ZL|*~8*~0s#RP=VNyKh{;!j zul@Cz0x!a;Fc$D%7{6iNK^!z8(@I791i6Z1^Pw-k$JkJTES(zvw?xx*`_ZJ8>kqYbHEUZ8 zHYty};a6RBm(3wz3m@73-3`TSSTGbfIyCG80;=G|4claz{-7b^ufzuthf@g$NFpa6 zeA`R+*0D_cwLeUZ?rbd9WkvP<$y4y`aXvEg>V4|nd(O#OOdQH1SA#DFF&Z9|cibPq zkFSiRM|x%QjNb>5sT7RDGDWIKGD2}<1MJ(b9uK=&A7!dUX(0YtaPr|ts$+C7xecfX z{P(lRs3Af&-!$!AB-$!YZ!i)dc+sJ#A?(#n_#t(8Aw~jJ@&Em^N}=oPMt3q;-o*aI z-plKDMSco$q&abjw5gpPp1Qh)tCyPfL70x5$AFRl?BEB{%B}`HDQTT`_r6`4wE z>S$uPWJE6wc$34!+&tZoZ278s{hY;#rvu;FyQonSpDRZm{JqN;pr=<(sKj^%bNrf_ z(P|#ihP`0r)**DvAM0m8m#Od~su$}*&^iYP3@EOA=$Va;kO0ZqL#l@}3ve`TiFTRQ zh!@T;`Xe|B5Op(yd2;L=Jv}`gcDWd8s8pokz92xiMpKL@3bWnCwC+zn%-WjVOV@30 zmJm!|nVqogS{?tWaaoz~-8NCMIDv~8E>2*?LeL**=Ivglko!}sUt%#zkfgp)sJ?so z8UY%C$93sApqf+ppmgNirtfdD+)-QW@|b+UWS(`DD*T`RfJ{O!9Plid9!;#9Md?eM zKxKjy4K8(xe6H0lxlHF`J@29`xzz<$c?%n3c)MaPjC$V_B{!hs-6$Sq=ar)XB@0O& z4Pz%lBRcS}A~ao=ebkaoRjq5WN~fi9o}uEbY#}Bqw zUz2;smiWUC$mB{A1B4Ow(Xxya<$7>KWroi9wGWsQpl6O~+Cs%WELn;P3UpG1FX+2j znzOhp9DnazYUwc=^DVU>unUNM#JmQdpb*DF#6gN?vuj_9;l4{3vVTAx{wr94CNem8 z2vv=@YmjZyZI>_gZYkvI#*UW?Heqo6Hf9cBmz$gLwcuFhJ$}b+OUHY9c4DI`008oY z{=QmNhLlJk*8 z@e?{W!x*^&k1d&(-G0nMx>C5FpyxrAp%4}9tf?J1h(T{%+U2(+OwJc(qQ^Idzf~3vTZS|;8T3QTW-^c6eklO?% z`WUFv9stdM;q$PGw^!x;Eqk{JDEo)E&oBtL0Gf2rO96$rpFvxR!9+UGjSa=K!&}Oa zf9$BfBMY;WtPOOrCqSe5Vf6=<^%}WKrK`;NRN}=fk*cL`C;qPD9!*|R_FTg>tR#up7`x?3 zo!w@NBYlu`7!t?VS__$+%*Yrz*$m;}r|g@=HNwRla{Iw~Tl<%=7{Zzy6ZbjHku27! zO}54y51VnFjioD1w831Z*nLMQ5Md!&2M){-QyUwbA1gL!AqWQdyYG(6gdWk$p-U*i zF3Z|RIPY){;~H`Y1`>j|Zo;^H59`0(C_vVt1p5jxb{~z&Z=aLqFyY)vW8@bgYU~JV zQeHK0xsM774U@E!8&lCBR8@AV(FPS@xrrZSNoywF{23~&)T11#*Q#(K9_#afe=;p6 z)aG}#3KE0LHJIZ>S+t%{krf=^#r|k@HB5@)DsDYr$0#H`W#>bx3YRIGS(Q9`JGs3y zPfjp_Ps@f2Q5H)U`y=pT?9B7wL|Oqf;GSlS2sTNx&7^E=8Fmrub1pQubdz7hjn??E zRo9Smy})+%9S`?!vph|)!#dIur&RWZF^;jBu5fn0x z6YkHZa5n}Ye-iwZ8Yy=A;l*$_)AdrkFgy5Q3_Ou6br4U(v@5NvDOLk{x`I07qKJTH`=%^^t;P(uQWaNcPc20+Ru6=AQ`d(Hs z{e;!@k#bT=TH0?v@=zq+aIeP6a1!Ltv+?+siSgosUK(N|#EqK>`>4sLRaI3YAiW*3 zl?}iD_dqJiQ#O+D@|`|4&9SUi(XUp5#8+@P9{QOos48xm%$wP!2ns!BF{rli%a>l$ z4!U0M!M$B8Bd=ID7Bp75xksCkB@~sXIvGKX@XroFx(=d59KRYwn;T7Xoh9tgLhY&5 zV_KwFrEfqfVx`-1&d8w5Q#)Gq6wKF7ud~9I#&2w2`e;TY-eAA>7lCw|vl?QgjTL3> zYGs=^ClU6-S<9)2K6#^B*;dtN`}}Q6%GhvXcxb#B?iSNomLAO5v8->+3R8=a2i($t zOS0Q?m!t2mI;LK)Y`5h#HuKGJ$@irxI@<-^lXQh(SD22b)mzNf-D6IcKV4IG-VPnS z=~bzmIeL~$f75e_VfoC6W7qBR}6YCLhp5B2@E(rYrcCIKvcH4qA8) zZDsp=H-gdiqtl|##?C6C=}i&r6P28IS)C_pH!~+Qd%hWGCF==>w9bwSl-b`F_Rm&T zLgezhO*s3`Jt7MgC36#LhjArCzH%&^+s)t~mS@sLI zmxKi>J`VZe2VN$VETU;$J9)+~UPwc|NE6|q1-}COU;lj7SQBhj7Ja}CS;H+T>;uxj zG@dlA5in1bwaY-tD@lKB)_|sp`n((GCCmGJ?A=DimMQm>j7L2g{v$wleN;WT?79)%=HAzQt)$Y;;jr9lp=l1(TOPv{#Pws!0&ts zlOdYoLLcAXWP zU+>T5&BhGfSc{hvq(S8%+&n4okMHFXjrar?+dJcn@X=pLlZ_Qluv`z`ay8a#^jF*H zdpIShWb*{Uy>#1^H@l)4noPo*BJi_)H&LEMS#u=M?Ea|!soGDc_4U_BK8hnfead+K zfG4r|5l?{DOwBS%=k*O=LgSq-+CzqnIWyol{`4 z^J?|COy;zqO|K(=bLgi7FLqwq5T|rE`x=}y-zfj9hND-DoY;Tdd@+W4PkhP=v`as< z1gpJ-o$b8jOomTzkrfNwg;y4=+)xNCcGl`GJy?8-E&rfQfI8&1L&8~31id%_+Xl!2 zTq&z3O;4+jX7Ic~*$6zZR;;i$=A%g7Ipoz?@%$vORZ#)w#;S&5E`}peMH?x!WBV@l zo%!0_3R+A0P#WO;yuyVBj$^<7F0J~w<+{MeB&tPqQwE8!r$bs_wZ%G&@k7!Wc&04eg5w7&`>8ej8+(FK6~-&#OF`5 z^AJTl{F;0*Cy!4Dnl0KSUNy5={nBc0RA8*Znmc`TPycAXT(X8pt@6l>rNjM!hUl^P z5uxjw@%Fp>-|wCWdH#&{ZL-?uY2!!@XBOg9FyWrLB&_maPbcSXcs^C)`r_$XyE`cR z5u?&X$blgrmiEC&d&>Ky?!=AonLBQH#?I_GR540ppVjf(wP(u|jMsL0DXCwKOPMTt z8SWHxOGc4$m-nkwMPEH>iIISP$8AiYcr#EP#PypYkpFU$qmDF~J;Xu`4tAU>O_T3( zWc|I&NN*MXWD2&mdm8k2lstDL6^Y0VXLd1<_GJ$JE{l>`#uCf-hz^aruM#~3_L+mg zl@grtR)#7W?)V_V9KM?fnp@1x&Nl9;vGqGzG|UHnyL?(q6F&kO*iiYN;0Uo)8ZhU> zDlo+KHoh2l-4ph>ckA8oT>2J1jvvQ~RL+KNKV;733dclQ4}?Y^6c07LO4KL;JlwjlMMH zP3ea#SEPY@!tkSR&Q}&k)8uYC=#Z7T+iJl>A73sb2R(Q8_v`VN1;kW8-Qr9_WPA(d zD5<3)+7)|q2JjMJShDUwPCO8$6OMf;VHZE9(`xwyW}@nzDPH3QUdKrV16o81tqb9| zqa(L_K2Ct5ox1OcDV5-&n7b7H{8c2fP!HpON&_`y%}{|NTYPdVK4j}wFj^vArAZ-g zuD3ShnGp8GRqC1VX_xI8f9OjsK>BVP7`H=H?ir$UgJeDgH8b0Vh|(ZzCgEU zC@2u1O`udmV!R9%gDwBqe6jj+S<`MzC%)N;QZ8wd9b=AM6{olQ_Y_1}O_yWL`H<6R zT0(@`-ZU9x$#d?-d*b18ju9%#;9T>f#~3#<|8KHfNhZ#3 zc9j;Nf^OlVkx8Kdy%Oxk+#Zu}I#`&+ND~$|L$?QRVfv4qblP^*aq0Ju&wv{Bb9R$u z?-GNsf@ok%#e_{-lp0e6C%l(NEYC1^f;kF?z8xC9=hgC%wJ11=kK!&y0Ov}ht}c3gt!x=BVffQZQ;u(%K}g#mgJ z*Fr#x)CbQ-fwAuD%$3bU$kpmy%KevH5%#%O#(x6M%4+vj&dm02n~S39dAZN#Ux~-C zwt|Ak*^_K&r48GLt#X>ZtxZy-Uay&`Nc;Fx#xSCQ=2W|0JI6?d_Zc)VV*x4SBrrPa zrL6VTz5b?e(WWL)sdn@qt1dUrV>q=C{&IAyS^o)&d{&OFc9!dbchH825g{7|Yp}`Z~ zZIh!5Zo1`f2~flE3utQ~FId)2=&PY@9I14P3UOokntF_rHdkQ~W~k_V?}>ZfR|=DR z#MzeNLv^`EQam1vCS*jsj~@m$PXFN&V5L0a&BV%nyknG;mp`FfzE(|!MFz%QJ`o9s zsAA5E`)tUKFMCg3qwBj|SfK-$biz;%kDE)V6a-Ni^#3eIOR{?L#~1Nw->D%D?(=!4 zH#XQWOYmaHOvA;eOw9Ffy$pZ8v+3=} zVunv}bh0%Iucx1lk@7#tKxXhD{&8YX-&aC~sNxr*Fb*Lx-88Y}sE}-olV3Ic%J`07 zL;%QUB*iQ*KdX%*{@_`Yp)saV>d#GOLkhN`dcAm#m+8W_fR79A$Sr z5&Z_m+BZxR-!$+4nl>Dp#?bZcm3;&7xPUn1Mwwgx3?43W(h%jMe=zP{D7pO!N9J|7 z|2~oDzDeMIz4uWLPIy4TPGhULY35l}zOo|wkXw}=r8wT;>+T*J5b6Ft!^vz*BobgE z_BuUs#Y-?cSwW{kvS#8Hb%?R5CB|gI!oD%jQu%X+h)=0o3G{KFi@(Exi<`GJv-1*b z@M~lMvjy_eZ4V8@L|o9;Eju4=`Br>P*s(yi7mVur03??oDugzYh8l%AF?RL#+W=m^ z7xwbiU_MPSd#VEL`x1)-f2=OeX9#Lf7ejQ6NSm<_O{A^w@|JVgad&2ge9hcC zqrnZU|4GWSnXQ1-vt`8(DG+J7&-nu;31FIoaL*O;o3smwbcMqHKYyuS?B$eoP#nyL`CxKZ__p5 z7OY$|d##?1nYygQL*|?Drl_zBAX&nebtqD&#{^j3e`tshS7TzbJ-(Fe)k_?Z2eb3+ zZbyp@Ciw+XZgR8#=p7qZypbFK;PU-BL&3qx4xPD@`b#amrfS`snf;ULv5X#O+lS4I zA$~tdznWm+RQm?E8K2t<1?ggU7$IT5k|p;_u@eImwOv{*%lLf`DB0H_gxAzhi;MVl>}>9btH<6QYY8c47O$YR;LAUg(u|SAlXP^z9co}IJzh<6 z%{7cx%*^;!p(D4x_SxL%JDjB7tfsaFshGymgjJlC(1;9 z4@$3r=2bHt);_DFGHI0spie}SS4s(3IS{A6+r+72!B-Vu=waR&Ux%<3w3~Z(B|gc~ zh_O=8W=GU$9IiA{)WF}cMxcC1X8dlnqw{P0qOodeMWU#?rjQoZ8m&qyd=B-cyn1-B zy6CR3OSD_;Pzk2X{i<% z`_O-xXXkBr(L?p9*ZS65n0S=9u?LD4Y$hbdM+)3%i{Vi@8!K}| zEzT0_*E3NUonJb-)%0V8op_|(o1&b5m_wm6n-qJ0YP*k?YVw7xuz;H*WpzLe^i7@E z-quVO=Oo{%n!{J57{mjGpJ~2cq4HIKL~sxjs+gxGz`WFaQx_hJU*H6K{V~PBnT1kw z=edep4@>LG7x2fzv}>Xac{G!|WvT+{QGkRI{O#?6-pHBgMR#Pm<;~oH>umRgTVP+q4k0LmZzR5K>^UAzzffx z*6Ygj<6qpX1-+V^%9?cdi2o^-<_hx8CcK{j7uG9RvO8xf#q6R^`Y=i%jsrdksKqda zyc6o1s75mk6T0H|?cO|yvYz6l9TO7loYF+=uHAW=nR7dAoIkrVD;H{TeJ+hLzj}af z{e^`0NLPC+zi{*VG>Yzt=3C4%$XKD$&TrUTU6`?Fo&Z&AvPeUrYER)3CyJ%58Hrxn z0Y&r9H&V_>s38wUW_!dzGr(>+e>U2N_V^uLGA8@!DxqQ66}IEkwqBtj|Hsr@$3+pY z@56$0vr^I}xqvj%v2=GM-QA6JcY}a*cY}a*w{%H&cgb%&=X*Zy`zNsM&g?uh&wXF_ z6}F4rX@T#aLx5%+a2RBc7gfcEC=wbQMDGuoDp#N~VBTYF+XOJgJs3cHYrJ*1oEUK= zzm-DMA-o!lZLd6HdQfg50$hhV%j8aCXIgiRa-(MdOP=AKc!}*b^CR#5Tj?7aGwE2O z!Q00_TETPCIAp2=4t)5!AJ!a!et5%c8$UcOf)wG#InvZFZs2);!-r(!K0F8uWwdae zxmGvUurd@(pO(@-e5Fb2_An{XA_1;2{BrhLb#Z$@EL7|nsWyyzNa|428I?daWvHl! zD_cH)xoDn4%=qT(x&{ObcG)M>QhMJrS8~$co)55t))q>D@eJv0?z$(7J|jh_&}OvL z1KYc_MwCfu++BPpiaq~(Lsxa|N3Nq$sg~H^FUlrMFs_GI^9C&NWZ__?!tT{Eyi4~a zbG9hTaEXMGmsQG)qAAP!lKJJ(CJ#(&|Gr}p(BrGiNg{`^5#IHKD{(8o!Y2S*4i85p zTZm`;SWQ=W^qQVnL+8p8PuGo*X@u$F@zOgK=hl!2mpf z({GTwS^Oo`ctWahUY6;qWJfm=7*yT0EwNm&#wD}DRYbK7exU^Hwx@3zPT9B!I~adF z05EA7Ku3*dm}7|2sR$9t!pS%7?Q3hl{*Ma~rXWE*a1Kw<&^lK6`@J61hlLc&YmgDCfn<9 zSB&kg?_wR}bJCB5*meo$PFY*mG|>fkj|`SHKBr{WpVzjv;TRj9vI4Vmy~%?0gMTQN zrzMJLyrOEbHHRo2_WsBmwp8-G2#@$^oyOO%gZDl^e<^j?U9}`a&P;q(CBZooxN6^W zNWv0&wyu^Zc;>zdp5=am8{Xo49zAU$D&9wr@L-r-FZcl~B#6~N-afZ^iB3>;40o(A z0Pc8BTA`SgVHO0q0nMWo3#eHAJxy*4Fp3zY$x(HmIVHI&axIPyG=LGZd4oB6sMjMu zTPECVXEZCgbB&s|*0j_l~v!J<~ zTTU+4e};^E`_ur}HUE*g3E&OD0lNmb?)$Zt0S1Z(a1ME*WE?Oew56-D zCJ^D&q))PFe7?6XD=9+?f9UlqGP?ZJDS*<~T)}s6>v`}Tw^I`=2pF3JCb9pH5vupI zObfC)PF2^BR9K)(Q#%n3AT1gV|?aR68r1iJ%Oy23tdKfW$%Tej0g zP|PedMUFbG{ee5Dxi?_x<0qOVsLBi!{?DWvQ<$81@At5Wit0y~om<`<&yHcSQnC8A z!6tM)%wiBTOX<$vhsj|7ITf0e<^~8-&BtN)BxBxAJI7`qLaEhN-y!b5?f3RK`%&aA z^f&6^ZqTy4L_!$HcQ>aGO*YD<9HsNzq4V#xK%%^pYq;v6l#)XUyc)bvekY`Eh=aA_ z!7cY6q*^3#>cIJB%l;93?oaPeEQR=ekMIC8S64(CS_HgH$7FNoEyFw~orc_>j728A zBH7|u>h!4SB!JyMHZB(@GoZnwcIb>=-Qy(?0R=2Pq=Dr#&9im}@}G%Zww?S@!V~X5 z#dZHI4y3olgoPsU`x;pYBlKb+Qk5SO zEJ&t~Gr@X*-yP-fu5ysbvi+WS8sO+mNoaWK38mXyL!!Ec^D7k&J0XAoa(1qbetPjF zx7AYr?cy^i_e_#BgWS=X+`nl3DQz2NIXyMwsYtHbjl4pNFkRvY4M_U9vKyw$2NO(5 zL8shGGhGw0?fE-{yWf*!AlUMgdpAH)tj z>Pj>BoTNRVJ1mc(&w<-trz<6EG#Qi_T~0|(N1wdj>$qBy`j! zS3FCGh2(H|qDhyG}vyR$C>f8nhCI>Boa6B%TOQm5?>CyiS?0Hiq_v4LV&${NagSo>X$nJf6EszH)BA z61iMQ&t`S*%H5l6aMTP3prFV2MpsRH>Pri~qf)}u^R`S$zr-p7Z=u6ObUXF7vgkkU zQ762p=kRwoce!N?S8_hBl+z2&n>}`#- z($U`Ntd1j>{`s`3sHGct{$lJP&ng51B{yc8o+G9FcUsjm1Q;0Y7tesJ=4jc8vvPSm z&#&uqUZZYrT_B1(fX}wrEL%30OH^zXn0y#2{3P0p#M%I_rw0;?YtE_G^?^xLyn!((${6o9JbhQ`_do|R+g4r)b z`!YFE?YJw34U;xD@Nkn3o6XNZaU0DM9wt?9^{0iOOjS&ol5oMqmqoPR?CLI9)si90 zSS5ds6%!*Y1e8J@c2gh)EGJzVW~ycDl=E zWe@r51N7Uaz^j1Dapj-G4QlsnU~=H-(;9UC*!Mv(AsjD{hCG5rS=q>(ELp8wy7srb z``kLTMj}q(2Ho_FvUbWFA&ZKPiU!rpm3D=Hk(w=`IEp_7U%ZPIzM ziV0B!hU7X6yJjTddaY9%FUC^$Fe6sY^)98IHTpvT$TAypB-qZEEkwET{njQe0!?~( zlF{qm;gT|=pMb71=r;q7EI+oXD{sI2#@D?WDWU}e8BVMVL@SmI@~e|=Ww1;UP&68- zZoM?3GFH!v4@y8(^?3PY8Hsvp2vsz9#;?n<=yZKAX9q7~p%$*ggH<`oZ1nu>f*&to zu9Yp0D*1ExSVJpN2K=`kf4Z4u)yjOAVd?2n$%wWz%WOSG$4#J&W(oG*ppKWg7@@C@ z8#jH-7x>GmawH^UEU?)|EImqKUe>eY9-=}g$MO+~Hy9YK1Hk{QR<==k0yeDnQ29jO}IcosI+*t3=6fTh$@?0%F(vid^$8LOEl{mCdvk}u$Rmz zx)>{^b?)8TQi>OA4+TeR2N5G$l|(>Vr-}N>btdtqQ49aUvVq z;3oO`ML3A@vleU9*#=FWz?EvP4Jthiy8oyI<{D%b6O=YRge(A7u9PD2>Rj z4)K;$k`6DiZcS6IMzLj9gyKcbTo@M=k9W(c|=qgKf#$>jbR_dtLbIh7rohuLnX$ zy&H74haiS4U5A-yZ59+?_>)a@60etR&?^WyVz!wDk_)Gglx>_#n{V3(rOpy&s1SN8 zb@n$m2J-R4$b%gtuNSN|V&qwHmK<%GpV93mQ_;#n8FY#AgP$2fBc)9uqWM#{FBiRi z?O!%G3bz$KeIn7Tk`M9G3}pA}Cke?w_+wT~bIUp{dWCk}QTw2vMr}h*8G;qp^z$c@jG;h>lB?xl?-{;1rWsmU;lRb~MOS#2$6j&^%seJ>0EgWb4nr zkqX~C=dfUEN`Kt`m}e)3Nw}#tw!OeBkeJgk)#{zuVTvN_F*_THs8A zv}wDpMQyv+ia^HH$b0i~`}_CF`iAvCrgg`%yX8Y$d>V>^7=j>JO36MaU0|?$o}+DO zz|!x`-`%5vzjAA?yN=gDcE{-?-foshz@cm;SyjRD*%}urZ43g;FB~iRMtnN?SiA4L z9e7uHU{0R{<8zC4Kc`36>sW5L@YhjZjSV{h%|Bmn_w|bqY^A`3ByvCvZORtwLkFkK z+ieI{0S!_!!XiP#D$be4yR1&WgzhnogvV00Y$kn80RbL&$prV?Id$D+ku&4Rcv4+b{yIn1lIfcS3l zPu46&h}3KiZ;G@H|IfAwY5DQ%mu+PL=iBt;H(J6=*=FI%7LG4uz%^e1w6ZK&v6!f| z0DOogg-TV=oXyWM(Vn`{>fF(zF5naa0Yg~I62d}C8lM_Go0pY2xv5f9=?Qbjr_b;TvV9GyKeX4A4HX3sJ*wX8N! zmyFW@Ud7|Z5nO7O`a|&KcS=lT#mW@~Xi9SY2ufSWCB8CB$7eotaO~@f4_!pxjz)$I zl_W2*P(p#CU4>SqWc#d8%zL8D-61f@2MN?TWWM2`;?Fp*BsxOOaLQd<4K@`K*ks z9PiDWZ!of6(j3a-&0p@P@tMA7?R)a9@ADr-X{QH-UD%z?Vyot*R7T$gHWfiY8H0``| z=k=5LZ=U%QM6GhW>*dx@B!{ak&wE++DZPhsXdaDpWwpa>;+b2@VNWuIuYk_I{Y^5c8 zQme3cqst-Lby7H9TSv3Bc6#b@uo-vwQ%_i)M6&?R%#C->`Rff*1bLmJ--8Qjhi`0j zG%A~H{v6VbGdljTdm4m%o~*slLhEw9-}DH)R_*PdlVkwGHBgJjqHM z+sCs;t@C(|KIn@*?em(a&^KsBEI_gI^J;{?d)DV2La0g+6}&}jtvifE2`}J0vNB7H zHPXAB zgQSe7nB?R3{?he^0^H%2Rov(q>L zAHcW=x#a*@-m+4>N?w0${w%;x_y?BE0LIP=5+;WO+#T8e24`RI16-R!Pfx!3gm1Sz z=;fQ@hs(7^PinD|XKXws9}O8f zfBLgLZ;sg5{&JH4%r3Byn_ZCy~$EVk#t+0Vb~u z=}-kkW-f|J`pci2-gxPqYuC!jt?W~qX#SFkA@BIu4Odwi;D`n=A|T`g$>pO-beYI} zpCqZ0BkD6lH0sV-_n(L0li)OQAQ|0fH@VtPof}+u(1-UfDe4Q*wD1V_-!MeeGGj2& z&Rx{`%||?n?Yw@kdlBqfui%thv9Ibzi4kA>6g}w*SB?6%lX?I67-MgQt4uHI;Me8F zRQpb`zWEctCNA{pI6Kvef5x^>Js(hjf`;MxrTc@^y+wC{q)Bt*G5rI~ zP{B5MOcsPxT2jX1si(V;uVy#XW|Q`NeA_EK^!&7r5g5i^$BAN+6&Tu)$9I^|X>WXj zt~&*s`cCrrg;b3PoYH-ye_veEsuQHOAK3F92&4$B-VLu&3AWD`F0JdThf`eFkIBfR zn(PQn;UYudc>1h+yuFm524oq zl_GLyud6vfDs$&Eq0P7R#5LgLDpW7r|IF>WegSN`r_FB!S*hMbBi59MZXLX^b-j#s zMU|l~r{RTke|??v!*Ae3^j^M)on8LY$X-Az6ICo(459>0D`tAnHXPgo74CVC zbe@#c?)Q|YngN0a2ly-FVX7PVo2Hv97sUb%f-iiGm^ng&fjpUrXN|RgeqfyY>Ie|W zZ1YaJZSYR$0q*f32G(>mKS`i5MdKxI^m*V;G6aJRQh$k0w>B!*_q{`pp%9O`xUKff zvUmTiTsV6;Wz8W;33^$vdxg!)CI-MOvIyu5IwwFdr^Cojj<#`ccO0$SRZSb{<<-QI zIOtl%6^$>n{DgzkOH)3NUO+VkfLR=(xDVRvOE z?xd;5yBYg9R1QG4668aG0lfEQ@f>Su6DpzGc~AT&|4WrLsnK7KKid=h!Qng^YXR?u z!=yMcg;h;tW{Z|N4h}fp1ia3%Db-!qJ^oI(9J12av(S&`Db%c)OV7%3WZIPEno~*@ zNJNXxn131%`)zJSd~dShN_=NvM1E&L?rKUKPne#}g+&`Pl%6|Og!#pgGjse7ju;i| zo8w_e>)lDOETsZXAe{%RBfWY&3~F#ctjTWd>tjzDG8HdFd!zc5 z?r7fGELnm<{vwQ5(Xl=dUHOgP@4kn4JT$|-O#BL0GO39rzyO02YfL??+^<63t4Q`J z8f$rGeZJRrB+**U{gRC`jTh!J~pJC<;h zB*!l?GI+iSniZR!i;Z(asC!>=)N3SmO z2k+O=K?~>ViFF8M--v{F?3y~|i$g7U0@MUmulGwl#mhtRHMokMlQ;1l+GLT(ix2$6 zUTjRgTD#V|E~fp$3s)8VzPhE`%hJ9&)&3-)@t?>Mh_%Q7WYx2PL*B~?7H+EAd(aYv zQaFux?1a$)cUc+A8tJZMR&pat<%;geEBDr-Od1+2F34@9@a~y?xocg_N7ls91RBRp zfEtFAANl3U<1m;nBgb6nC7&D={vZHby07FlQnGyJv7m`kR`4d6(S$GH|r@o{oA1pwYP%}JD@8(EWk^(USdpD0qe@wJH*1L(L( zUJt~FcOAcd^-)(<1+VOpbUtH^yK?FW@M(~SRG|*Pe_@?0Z=|{vyKgd+IP3Fqft6d& zeS%kA&at6j57(Pjv^Jq+t|QQdVj;Kit&`mRihXhCaZr71&WGB4@U&j%hy8Sauld?T zw+Al^k;JeJ#>jr>VpmZ6fqtj5j^9>-w2Thn5I;L8`%t06&0%eHY|lr{4+yRi->bg? z&7tbNPHq+j1i|Sm_534 zzq|cJ;%O7m>SQjwy4%ywsGV2)o#Zm%PmZ=~o|A6A4g63xik3R4@_9eTDAT1JPL z@yD!Mw@B&S(RqW*XLe76YT(5=#B>m%s>(aKxwOFKOktOCh<`_;My zHr%UTr1I@nj`#kE;FbPcN!w?p*;F;yUHIK^#_hAr#6*R8gXMmiOr(e}|gtVbbqXT}Wn!YWi54 z4c}(wa0l3egyF8AsU(X(fUA=%*zA~ukax>Su^gS~`?70F{~ptg%X12a9-!w(`FRjl z{vca4BC4Plc8@G{=)aU3Ygx&kip=0QgCJCFR;Ol( z!GaRQAcKKsagr&O7!jIIC?7{6KV^PPqn2SjVEFUCiWZ2f9P*A)8T<3gIwb#@I&G*g zeX=+WPhS6k?wM-#n|`6f;5FrQ(M;4Qa^U43^DqN<8}WT+O{oOLT)`X-!?L3Wg$m*{ zNP{?6H?o=87PIE}77bo@$B=ilujKZz0)M%3UdO7px#fPrar)a%ZjB?;fA6Z1X;!jrCaJ)jj#|``2=aqs^GnOzu;tDt?ZwAVS_oY{IJ{ z&g*zbj>>^3AAT%{xp#?wl=UhvEk(lKUP%A8Yh%qf4Dk&Xu6=x(7heMK^X zj4^0u29dbaEGCfkqZ~K|LwIwnA4JVK7e}+|r?D~YO_;ZQaItmBK9FcIQ_6K&((PC) zIoUuv*VfQ>mtq4>Ue;jJ(`O-|&XoI{C2Q}_ILZ|BRTx32+3fOY3Hmf!lm*iOjJbTl zZ593R5!CCbQ&i8N`?B=_x+lp7gvR>I#KBsb5MJR$1w;#^IaBlnmoHAGedYTRVdCX`_w6ebEbKAfgRU;%YE9A_k-46wNw6^ZWnS23R&{D{X9UT!ee@ z0uMlzt>FsCb-l8V9xco#2V3YYl z8SAeq)UglFonLeMLndMa`>Exxm%sewem|w&a`~lH4PKZAKR(an;ljrV{*Mb_slDd3 z!9$i%xvGB5GB4{UI(7uw@JJk5 zMJ#kK(w~oC^A;raJ`5@(CV*xgL)$|_nVyK^d@C&QN!}g?L$?8bR`&koT=koJ01-K7 zEI}Cn}Z~Aa!!E6_q{zhO?JPCH`jY;}R+ahVN zUD{xI9y(mqIff_=f*GJbQSk_6EHapwpp`$Gn~nlZQi8QofgQ)tKtOraL03hUEE6d) zB6uiTRFhFF(_yG6itaM-IHZatJ4(Nuad*HIcXAApaH)badZ|Ijf%wt)&vf0|X4N`@ z>?Q;}_5y)kaX<`3IjSVSZ5p<09ezH`HYruu@6(FD-{2Ejn|c_|vF$Mp4n96ji%SXMP)}04Cx2(}pIENAwQ)N>V`4LVAl%3lUa$PGzq^*T52uzxi5l z=+`3uI_olZIlLYD<>vb7Ac-7tI#H3Ti)(l}r@}x$zy1#1s-;KNJz$0;$$nq=X2Avc zo8(FBqW$&`4T4Pd(av99c(?}N)?I;e=xM(QrPn~ZSM(dqPeNy1I}&dl=S>OCf)uNa zG`>FH`~qPeBiXrZ+FJpj+hOYkAKt8f)rS;aX@-@Eu|nmGSF11`@z&XUk2C%_aaC-X z&Lww;#t9YMD0u-7lv&3bLUe%C3zyNl|2QAI?IE$FK<}m-t2Q~nMzrpBk5YBa!t+I} z`uyUi9GBVVYd)tjcQ(TyeHuNGr^W4~$?ym1WoA=!IvdM5Ob ziVBAeKy0IAxFxx>fV!e?+lVre8Stiwj4W3Op`OBm_7AiBpH%|(S z_r7^9)$suLraL2%f+ta%E8t)Q_2pvIeq`-LOrHuhRMQ)tw*f>5G?#oRN-CBfxVDz@P) z(cgO`lc~1Q(?Dox6M4?(lrY-QQDlL-#tR6zb2{22s_m4IHC}ECuPF`5)aY#h4GS?d zhdH}hDgj$Nj`B8h4;j&l1Fgz(g^CxTR8y0Z)#5{@-JD}B4?<1W8r^vo;2GDd9PJsy zYZME`m189P2B7##g@H*4^{M5~o`bZUp1*l;mVVC5dlR#FPyJ(;*%TNJvXvBTp%V>^lzS6|n?`dm+MPMO4KX1>%ir9jrPU?@l{= zho#v!c=6MIFZkX)1tUdZtakW)FV#U>NK9)QJuKvoz#xF`1$K3)mZ`3?Pnt1bx2t@->a~=-KnV^+>;vyq#_2($NY3qKM@MNnCdzz>#7uOgqC4 z-kCR^5+N>IF#xue-bBON$CifuM))DQTinFsO+Lz1l?M81XyACeqIV@eO=363NhhgQ zrrNsnzZNt}y)deJ|JrziE~#i=9H3|^6TfEswDho^85~m5=9|Lx0bxe`aH{BiXdaOC zv-;DtY+OB1S;OD-l!*Ztjf+y^ch`a0WLFdrt{5odvdn?{Jn4u?jtS=#)n(zuM}8TY zY(8a*^3pbc54@t%OG!#_N-YmUL0!2O%i~*&8FU&c4TsmAX3Am!v~_xuMQclXzmUm3J0}OfDg#wwZ*+(fV7d64fMH~p zyV3ty3PB<^ID8NVJes@a;_6I11SfFka;#TMU+|YP_%hF5k#&mcIJ3?6?r0!kp^=j^ ze&0|gxhPH|Z$JM}&4f*3DS-w0sMq5CH;CgKtvFp4xhHePj1tGGSJoI|Fo7MsOBI_c z0Tn%MGxN2B@ttk$e7?$YG;feIJ;%Hx;vg=4Z#Z`ybIJX~ATASm2=bpS+6Uf41I_sq z>WnWjPAhCbn(GnC;R4oE5e;XTN)R^HKM$GVO%{ZSQ2@YT6hVrVYDOiaRsZsUNYUam zm3?bCEZI@OB7JT5ekSs{OMnv$@}?Fj{ChZxoh@slYXM`0m6ea==MFE6 z>gE$7X-PGy?3g{nXj;O&lE^&wF%dZCeTW{^R^c3h9A+e0gY#PAjr-xSYYa>VL8+ z_uKix7;YQ;5S9dMhs(^o;!w(&neQZUD^rm*Z)dqzaHwmwl0M(&@H&{bH| zLtkijVVpn(P;NTFN9>nB5$UhWhAlxFg5acmpcU5@CvB^Wm!v+tXVA)8%Yi4y3O1+g zk-Ji4qpfvG{>wm0hbXZ|+VnnBzr1(J7H8AmeQ==-w2C>9tRhR%)a&HP-NBz#m^@AQ zDL(p>zwB(!N1<+In{C0+A$b`X+lY5iwzQOO%iB*PqXds4VkfXm=5*B<-udzh90MyGQ-3%(9b!u*jq6y#vI8l~aey ztwQ~z_b@HVIAP@fAoXx_0&v{!91tRs)tXKi4vA8sivd!fA_m58U^Z)n@~2HJ6;>28 z+HEp*^vX_bNy0EFT!c}qhE8{I;DR;8rS*8uy?%Gtr69ek#XgtN`B`PwCeoYK^Z*|b ztk5)Um7rv}#JG>UfDr6Vb=`RzFEs!Jg1q!`8I{7cT4xmQk|%3fc|B6@{&2jTSa6}k zGy*5%$;!388?Do%KRv;-(48HMjxU(d|WL+O{(t$=k$${85`?sKA(8U_$(DNq`{5 zhEq22+~=HjK| z#?&ut--80NL5gz=%YQK8pz?0TH=S?pkv7M~SsyhBb)qA&{ z6w6)&dRj$@&JqLlS#)-pFVb`pU~GJVf#p=Mro)`R;FTO)^=MnwP!V6iKC&V3s)?6+ z7au3pr(l74M*nfH)a?|t(I5K6g!wTPQd$;q{4^J7W@_rb6E6;!a&$c|Z=728s(s5$ z9s5h0vtTt4IA;%!z`(gX!?jAPgZ!ZbgQ$CTrIqyFIrfgvrhqQIgIMH{p5pi|WIi@7 z4Vh}qJN03S%kna-i@50%hOTPMyQ;XQ) z0OyOE_zR@i>N0R2H`KU>2t{>sR(@3$u;wbw$=bZVHsPfW4`$EyK8L;rR7bv#(BpDB z)a&iP?z8y@wHUaX4S&ZeUG*R{0qFxD>5?NzE*im(=~(@i6kOpKDG4p4oZ0%mz7cT- zKaQ6#vbbWTTa}8}4}R|MC_d?gUzv?U*26wO`%Qu>&$1yf*4pq#o(7DC5d4I@ZJVyu zcJlOxE-H!6xYgP0rtu-8`cB1P+=hw|!u|jdQqk2kF2;J>3}uG3BP>CV>zO(7IU()31{b&6PBW?yzX>$8y*5ra>@!Ycu=C0ABpb-w~F2iDuCAD;s z$w)C#p#n4@;+O%hlgqBxaTpk}!C^tDXcN&uC!UlB%w|n zh4Q^!Q=s{mjWUB4wpgcwC91D^hAKZJ{fQjt4@`>y>nq_vju#D;<`pyG z3Eq+2T2+&0(wL}HwUx8LjA%pf+sQe!wKQo+5k}-eMG`(ZmB;y+!)MgM*D)$w zCP0P`Nw`ME{2j6Qo|6QOfe1hryNvum-`9hWPMjsIsNyV}t95=cvcxXE#J6nw>0et4PY(nbfh(w9L5a@~xPT-LSW=b`0 zYA4{pkwWZuBoQL{qQT>J^W8=oPHramiir-(uRKgfVr#N5{pp%kI2prhJ(;HI{422Z zKG@9jcZE3p7UC;rxhzBkRi87UY9iEDoy!hO3%)7j^xz`#do;itc1b5bhN4823hrd_ z#Wwpi&NU4KU|r~5-OI$_8IU-}FU$todi+4|+zx2Rra5g07j_r@c}v~XOv@wpJx+2y z?*DR*cr0Z`n~0e`y#=Bk4#TmgYxpHnXKUfj#7{Cu?Co7oLbS9irwgsP$M%#VD9Noa zc&YRFi-A{Yhwf<<*Iz)>7{KR^?aij8M889uFiFpmaWrNe?+7gd%5%L9%2dgVi`tKd z23f#s>khfrvcrkK%XiXKf)M#1hvlzYHy&H1Z6O~`hn@Jbsy;_YXcjHIDJ zH1lmgE%`pVSCgQz#Efr^?6E%%U~+l^*FbDldl$_9y`AuPJze70Y|6`6#2}ArwQoQ) z>H*1#vR_F|rUPek_8wVc&zshdYh(Cn9OKS(gO}>TX}aYhPLa-2aGdMLChlM=&B6+R zYz}}hiTx&_#rFmtFOl~T@4!gO9OcOzwf5<8xdvYn%qho`sxV{mxnjg679{%fD^fCn z)$aU^29hkD-!iLa0_3s4qzZE;oM6^v()mCWEp(3si_V5>aQl0!1{E>;JT3T-nFtmg zL$=2$3otZ@E*_z&!b|gsLJ6q|*bon`DWA!+Ed*7PG{u^DC=h1`%E3oz3voB}(j- z_-NAKACMEE`ec&*;LD1#u6jk|(*!wemL3YCyb~~z@iXzH-0}YhO$NVp{3&ny8qg>3 z31j}xPZZr5&kE5^c_gk-pJvs+^d2CAo9d-wi<9{l(Mx1ePxQN*PLudoF`ULSy-%qk zKJ$OwqbIhBAnI{{SJ=|u5`@YvB-V)#d6(x=P(BzbqKy}M>{>(J>!hp5>@Nz(?ibExyYJur*2(%r^rp_tr6|my*Fc8m~x4JowdL*-Lq(V{=L$fIpV4VUbzlDP|7^&M~imleK zl+H4r!MU%HOzhU48}%Z@9Mo+}Lb{xCg}-YoER5j-L}o{$%8&`M5Exc`HQ4>I-sLXM z_pl%V$#+wpdHqMYYCcz7)$wojyx}CzJIqRMMsiB8Yjna00|1q>G1ri&PUHC{!_LDQ zCcWC^WwPwNiV|eQ^E64>`}1v)u&oSu8ba&N_PhGjFW&O<(gGFUrApA_AseoG*~?4x zC$w_{Gs9KR*6VGDo{*9I96o7Z-U%i??=T(iy>i^lA#+_-3F`kMD(k;Jek$2AClhS1 z2PXb>^z_)jy$e2vvvPaBdBUmA(Jfp*b6WUIm{EpO{v9q^$2HcfJc~Of&;YOd$0`gK zSqLmvs8r%H;CE}@{7g}9(6Ieni&ZBu*29(b*CYHc(MC;!>|Xs#8_7{stjEjYH(oK9 zNYEDb))13q#9Prp;?Vv=Tm(d-d%5e*hkW`VR^|MuFuPT^#5N%H=;8bd!PBtY% z7H!O!i#tbDD%N$u(A6>OYfLakL_{tv&|J%6gU6y+In%{3r>p@kB9HrfXnaDxkp0KO zuQAjjyx!-8<%Mue-}SVq$N1#8BqeL-`(20t%x?W;t4+O&sZib?^k%32(xvX}raQbP z6;^YK=Ftliu=vZ&9 zG?W4~dtE88P=y=dY2Q3qv#P)`NeQ8o976!U2^-#ym@q>E)(fdh_cF<2Q0iSKu30vHpz+h)Ff8hLQWRUk4g=3DuRXGJiTdhPzG{n6Lr zH_jWgQM6D;dF~x7(CGc_ivF^>si$`ij?IXUuQvlV3YJXWh6QWOE{ead0DT z`dsdxd(xFi`#FGI@s6IZxBE9@)wzS)Hr|^l5#T-(rY~42SF&@K0A!cryP*W|Mzsio zXUp;cuS20isl3_E$M`54K(CBnkD795Kk#5*8xfm{5ni|Gg&}WhlM6_FgAbm>6%_nC z>N_SvO6X~hC~_yFsr01j{gQgGElwklWobt|lQ z_Vf%G2sgUF>OdWHz#tWRH+z8Xl-^?n$Zc$yb-5#cd;e@2Ak>O_;4BL)c*~A)75?!P z8RFilX|{2u^K2;~l!VLA0d>XIR{BJ)++wFQp5n$aOyZNU@#VY*u_G&)weZWJ17w;y z_#vFDM<>U|<<+eq$*Zl446zl1`y=_=+s>hh7v%(%0{u~wPZvShP7Hk!&8IY>rxPMc z@&!hu1(#4w^@U!SwI66p2+4$_jx9fR?v8(cGK`8X23+C*tH7by4``t!oXgZ~Ky=LN*rnt2Z-V2_{gzq^6GIc}8n>47-~~$xsEC(G<)|ZiUmdp5W~>ft5=e z?E+Q0I(8gH@sMkMJd(yoT4MuRLSE}#-ZES3{yAI!;l2TfR=+L0x%M6>{i!L9@2%5S zo3~6Wl4ZlE!oQs@c99i{rt5`{wDX&_%GdAgY}t~NG;X%0=By>JqE5)VBl+iNy&!~e z8B@*TSxinilRjdGM<9(7Nrx8RVP+WfnN?aZoV`JB;p*oho zfjQx-fGh_O2Udh{R9}&nl~O6&e6kaXd}tVi&3YwYBesm=+%!1IvT*~2wfByH!2is*nZ~8`V=1)FGsD24J)gh zo-qaj9K?TXS5&Av@G)_{V-Wmz_AnP@g?$c`05$_Om*J~;=`sm78h|DEa7=8x%)rp@ zjE)|iLRmwA$P_dHDFP28 z4r)GsjU9+41l4M!J+?}c$7AHi2~mQ!hBkcwg*X5~7fJ=%GI24p{P!SQCh(anIimMG zsHg|hHaJCTjDOG|4I6*g07qCX0ru%FHVAb!027yoK?8uav3sXDOIhdxH6*_M0`4Bt zUt$PkX+wp85ophpOM?)1^*?wpSEWp`ygASx>A%NQMb3v~1pa8|NGHu@{BReNbmK{t zWg8obyKs>1s-VIApX2yBOIBDg*HmMTJL}xcyTSuh%{%~f8iol#r;W9q9sJ{Jp~=ZC zm9Bs#K$R8AvaVN6{hEkpcN+YEE|D98zhJAS?PF_IX;3dWJg(`#TQI!$nioil>)Ar; zcXV1w6K^zydr$P=^}>#rRW)P>h%^?jHk&zL zf%5pjrIVRI%U-I2-%`cttoSixV%0kP8RlXcX z6f0dV(6Wjjjfo$R`F~xVXEA$kjf=s^sk zcS6+Y1Yz{vOO!FhJ@0+r`{mB(InQ(U*?X_G_bUG%A@`Yb5$U&$XUkGu>VQf=7SF#c z&43t4|7Fnn<*7(9u+tEt@D1N+rA^dyTmGx3Px6+Y#UdhW&s}>+EE&8@ga5b{A#)#+ zltuCHl$~jkhmmxic4;js=u&)-?hlK4Dv&kvuBaf5Y`Pwld7$G6*&jWQzDmZVCBgV- z!*okNR_NA|Q4{+*c_R7stM@z)Oih>EvX&(E$v;o7Vk(5~_=_cs>>FhPlV0-6EHjE7 zbJG)OE5jJ^Ff=>D?793`=zolfB&>itl7M3Tk|c(Z9YLYQFPLuO>gqwVaf+|f3|A@F zvGFfaFSA>3&6#tY6HZSm2v6%d{_km5=1iD#N^LDB;FDV67!iVsM)bdr7^ryRmJ2;= zTK`SYqcek#QAkzG+TB(re*g`l=k!hQ3y_@aDed_WVj!&$t^7|axw>@Y3PlM-#kD}f z;b?g8RG7c?(=v6_V-8%_@YqS0M*=bD4FKstDuABL_wSdV#~js5#E;{iafI+J@}+($J3Y9T2;bBwgW((2%w92NvKMZvS&g({mbQQXS(sh zZ2y@W%8a9LMqeiFedH8?$Sc2>7vyE46A#bN&kkHwK8gLpZ4>`zaUTJf!m=?F7E1hD zH(m`P8fG#gQlh7HQv51qi$z8*nxJ31UZZcj|1*r0z;X>JdR5l|mJ#j$i+lzIv13`l zK&wKbMJpl%u(htV;XDA|Vfi(_9x0F`skNtu7*{{|=Mh*kqoL#fW8!mC0j00e&K6ZK zQx)BGGduL6^9ZHrZdhjU8coAvvP6)N*Ng}k~D%o5-@to9i#h3Q9eyw4&^>WpYPw+V=Qr@ zlPZwJaq@rA%4!;f|h{e@RNxNmj!yATkP0n@<`CQoucnVXcFEZiP? zJ}WRfn07UOuf`)oN#OTBSzeSNlEgk4{P8+?b+RDa;~xI2DgTN^CBX2#@n4SRU((Bm zRp4jhp;zQ_JL6x?KW3|O0SbE~{301ZtxhCKGd#{_f#*5EcWJAa=%8IzC_9)yv)$en z4>$~4^JhV844c1rTy(Jint_9Pf)E38CIN0s)FhW0e;GhV4EwX$J+|!VveZImkg&-j zUYOuB_4DXda4@G`n}AatJXb@HJ>U)0u%O6jih|f$dS3+5LKL2{H_k4cUMos{H&wYR za@e2PKh3cmVY}tz=b>)P^RPd++uQg$G0gr1 zL;XHAF4v{|W|xpSqdH;di?PX|A4fVjzQ179{&9h!{Af57kxUG@FDMhWK@{(#6Tw2U zJFsM;!uhKRv@_f=xzEh(vyOx#9uxH>A!Ja-g|@1U{^w^>Lz0HkOJ?^-4oQ+&H7UxM zbM*zYS`|9((y%{eQRl~S_IHpCGGSkSI4mz1c+ss?)YJcyYBj)p#3QgU0lbdmUet*qHw7+VBQs+2`f1ITREDccC0_^nv ze=h{VeI0A81e<4yRlA78d68t+w; z{N8s_QedJ#F7Eb}CWpATZbvrX8k{SiD4Vz?4n04C#8#rKU6`jlu$EwspBS=;W)EpQ zm(PtHd^9-(i!INqC3zHu`M=p=92{L<_W7=Kc-l&P&D}&_eKcfM=j3*ECYsaTJJh&k zNs3dz6uJH+#^VQez@?1a%(f4{TN&lgvE}K0pDhR$wWyn2r4oCzQPz^fp$qo4jUf?5 zC8WbYFUa)+5=gfxV8s>!N+_@aE5N3Y<(l`@AG$;wXuC2u`v$ambi7-J#Aq%5Y3s0M z8KUQU?eT;od2uj{`(*9bjuwt^k~9mQgdoM>4k}+$?JS$8s=pjrB5q>joz>+*olY0S zkEc>Un^2(iw~FSG%~kp>jiLH;L0|W{KvQVrSQ?L&T9hBfAOi7y-Frp10^9f8TzuXb z*R#2O8+iUv;m|`DMr+c>X%(2$DDtL1l4L$3&Z@<}A{>qz=@nG)j4;%?k(r=Yf6t?C zoJWOUkM?)V*;3b)guhk1tsO6D&ZU3C`2}S+FWq7CW#))FHdBX8P~U9i`N&(y5|Z)zM@RlyJV-m-06uS z6!x)-encRQ>vZ4v6fx@zMAb|GC)`?Zq8>>_{y8m%CW+c4V*5cA@F>PHG{P$!cPk`J zw6z1k;dQ!h0nWa)@ZvO}#hGiCGTkUOh!^6@5>Wx_!)}`y7I-ld2i3(ib(T)L3##K!ooF!E)2DPm1PEWc6quT5qmsr3AtCu7FU+d*z@ z4-um84F_gw7ZUthX>iif)lp!^7;vv~hWfrVifnf=N2fq&=Si;)9%;TvK5rc^pDzn+1rGuK61pY~u39B;EGN)Oj{`GuLc16pJ|NA{0&b=N%e zZ!t@4&T<*=FbCYD^XX;y$5mv{#X_%-PCl1&WtY|&fh^5E0Ue*$>`z~nfHFqBT05FT zM2_F8H{~WZ*>?o^0e*{)q_Hobn`{EUMZ6V|?rS%GwOU(5C*$=|-z+d*kcw9z@AX-h zIT9##Iz^m3#Ar8+6+{I~{asV>yUnr_5B|GOcp^@NdlA@mX=oOFPnZ|Fb!qC>-j>>M zZXncmsGeZWBEpu)9o~UBo;q>~p&ab<%U-#esh)83y*a)PRqR+;hrh)3`;!c93EC6z z^b`!b#+Ka{1V;97v1cb9a=WDYuK10r%%4-#-ev12^Y*^#`{99`E8o2JUdEspwT59& zzRqEl{Gbo0lQyV%`ze|1-H?VTL@R{W{*|bk(V+227W`nng;yJH4pq4EKvk@oHu?G9 zIcHgiub`;9hWZqVUc~f%3{I_c%iDp<`e%DIG>V5k5+idaK4lwT#nOValAK6byo-=0 zqP1W^O|a65dqjfSh7UMj12JP#h0jDEU#~KzVBDYxbRLgz z(t@MDohS^WqcP)3ewehnnZFY!a5W4)H)9Ue_8Ed=34eV4jfz5jU6 zP`2FOy%zQOxMPO_5KSG>_*AS@?!F>D09-D2qNvQ31ISFLNn*Pj=^r{V?JHu_fK#JI z@2WJhj9ka^Dl*gjx{Wanqos%-#dIm|-)kUcscIrSG`n!eA3%l`7?kL_O*&tSuvfGZ z(XZ!O0afF_g;}z>+iZ- zXTko2|>~+<9(8v!?rtH%Jc7Z*(T}<9mX3A6J?ZF;F}H z$jc``H#z-QI|Gx*cox^w^;ekkX#ut(nv#~i(0+T!`ixxahw~oj3NXA99j^2BO1BAT z@8bjt&|A2FR-Jb#bYTSKuLS6?_hH!qj zJ&J#rzcO%lCxuNpR-?x=DZ0}7W~sPcWaQPcGC6@P!h=->T5Y z(fotMC?zjl_8fYZX&oX)lg|r|r18ptCPl#k4V3sfz`F&d4KD>=GXoS@Il0P(&2-V% zKx1iQ@TmomksmN@_w!FmW>IBdrxOo)uh-UFUbj>0f=aL;?j@nljy+IQck;~qTFS*n zMtTn1?e^HB3y23NdVT2h^wfm1>1jrfvGiXKYHI3+X$mLM$$(3YY-|I7)<r@#A@=r0zLq^ z%q&qVz8AvDTl1zWTHf)m+eXh)%bulG`Zh}LtLg1B%&k=!Ml7yer-O^r$o7W4eH%jP zT@fkOUW@Ig!XZ72J;y|Z}Mjas>2N;k^YHw(@Mb}%b(SN>c={yH#a$oo*_qDgyw-~K+$ zy;*+Z!#Q7p15JZbZh5(?(5N|EU7ct9Lq~97GC*#@Ty%fol|Fv=yZXGL3l#`#wpQ1q zkpw|e=^>RozfWonv4vdJx2VZKWgzlbcUNv98P+WF1qPNrKG}A8!3ow}ssdSWSu%Sk zgnuKBjjQhuGaeT&-J7f&ZBk5CCv#N)Vh7x$;(CDPg}A#5;Tf%g-j-UrLM<3XXCaWu znyxnK+8{P-pERx^kW9~+1@^EwLr;AoE_1!0vC+y~Wg8b15`L$ckpK5kJmkPLzo-5m z)o}R6Ew2bt%JL^bBr|i-LXND5!4D_YY3J zt9dZ_CBD?vnhJ9I;Vx6ZeP8Nq7u)~*Yygx#(zo$~!{bTXtCBUd7m=$QjQ2QEmbe3# zcTOB0fY#i_F19RKMz&{o9}gLnhYa=%x>$UOa4fpKs!=%Z_69|EU8@CnP@_(Zcdn0s zpnz{JQ8JklXtRI7f93usk$rrjX)3Ze{MC%IL!B*#oi`;9KU?tQq>%GPUTvls85yTiL!RSZ zawW^nMG;kQ>?UjpN9(_jCx&ZG@rn6?D(KvibLVBTkQ8jjp!dD_DAL$|*qbsyZ8%Zt z%7WLVSq|`^=Tmqpi44q?@#lk?zXoI%rLZXO6cS+3xF1>XiTYt`gcGR4e?-x=s z_fGkne^JNmbP1;#vccJm_v2+JOb5N@gO)Yb{hZO2IrKV8{K>Sexv!H{%OgX}%oreNAfFT!9~k7*nQpNN3*27Hxf>pk?O%(){y3&_y3%z)%x0-Y1`~S-4cwXC z==YCWv%`aWH?uWe1Hmrkx2g%wVz1plVd9X9f#u;InVW8#JDA|`N4Re>w48^y5^TO0 zy6FEdGzGYyn<=02@I9WnYJJ6Wn#;P5r6X!y5-bZ^L5}&4*A}U~qk}@vFx`lWwRqCO zb{;xT-grp#iV89u%y-VvAQ=sKvoaeUAl!C~LY2=Q%+L}FA;ie1^j^x8azb%2gIt1r z>7Z&haZ|rJkl(Q`TmS0(l8_Qo(BSDuAW;OD*JOISX5t~_rgMe?&BJo$Ckd#gY3mYg zn27^D(6m`Ph58NKs3-Ds!JhsWqhtkQARb6$1gde-s|z&|6>If0YbM5l3FJ8!#jq;7 z2#ahUUOvyAF=<=7QnBEDwsNm%Kb9fm6`A-#5M5T5t)D%~k0MRP?|`!>xWQ&obFb;j zOn5z!bq}8pBmgKE!ndpU=O3YKMyYQ1Z1UMs8^Es1bWsVD7cNiuAB?_i_Rp)j_m!YG_dd4ds^;);)@lgow%83k14^Ck1LRB&uVLqp@igja;3)a#Cr6ylJpHvmZ9YGcEsE#%^Cxs;Vf zztZ?aVm!a3u)ILBwU1B6oSAeODE33bhj#~8F2~C`WdIU6m9b-daSOuH&)FR8n^09n zW1+kCb5GR3*xa{ij*oQKC^xFart|t(^3(kdT|;!Vja$mlwwU`JwSG0?ZJh}_L*hl% zocV@6;~gEuiT{Q8P)7?&hig_E53t!kER#|AukN-pyH@Y7J2gZyIlCI&KigPjQ)ZVw z!MRzSYd4EpD_|g3DmCDmp2%|*O;;)%74sT6ujqIX|FNLb)Ia1g9 zxCf93w@?T__1hrl58Aai6k)>_Hr{{_9-L%ViShA%Atn?#zPOlGhwK}kghX*&e8TA6f&r1AptunL@F?6Wa>9d`sSApxkp2zYk1;9Lp>PQ zh`Sz&E+&!qI{Sp=iRVku-BB6h0&%|Y3qw~ds@iP_vxi@z0kPa_eR(n^n(PDzLvYp1 zlus0_9$~l?;9^8s$n+V+z%%ll|2ZIbL!6^88_*wG@5G5d4-VtwGA)jSGZfWFj(1l`0pXdtB0P2S z$L+Dr{4O76Oh$nYQG6h2}N76_>ZcevJMe`%a{TYT7& zGmosHDQ*(|l}89P5zjit$H(K9tCue@HY8e6Vp7xNk>WkGZ+*$)))+B%^|Zi76lK{+ zy!d=Xc|WO$NA>1jM!mO>Ki*bi!97W-+#xh&o_Ct^alw5H6Ap;s>5q*beuxm_-O+(R zm0`G|+t(b}8d|9`wAu57Nc5PG1*SccC@pKPy0p>6xTiLq$@T3+p;Q2zPbz9ljHq<$ zuq{QH@r{DR37}->>tMNqIy$NKCETjz$*BskT3M-Y6Kq_7S~h36y zm9SbwX`C-s8Rwq(UJ22YK`kVU>ki0cZ2)zdKUd0odkOVfei&%7($ZQf<#bs~w@4|Z3=hM4&VQ;u8lyL?_#COiVderj5Jxr`E@CtqzA?6Z|S zYsP*Dc(2G>`~F08cgLC3qF*dcb0A&(JvMT&@Xg|>80FirurSHDV?SPZq)&QvsFs|} zf6PF}#9<>SCInB|FzKxG*y4Eb(4`STk}y3l4<~kDnrJnBm~z%JcUJMZmc3(C+dFt= zA4~=Pj+ZROl3gHLZslC5n(QVFgLv<3Eff%}UWia=r}=Fs$MJR+#97OK|E8|~((N&M z*k=ugskgB3wpBmd%v0;W64Q$O+FG=5G}(}@rr-{vs@hI7jvRBV%F>5%8NdVk}Hv_rtBst z-Sqg5Gcm0uOYwb8K7ANt79(o8!^_!PvN}2A5}2N5jhtO25}%``c}4stQC0s)NocCK za-fvdWVz`jelPkW+QNoB`Qy^Efh=l9d2&Uml%0}$_yfA3%H6dp+bP8(;HRqeS`n`B HHvE48DKo&K literal 0 HcmV?d00001 diff --git a/To-Do.md b/To-Do.md index 0e53eeff..a150328f 100644 --- a/To-Do.md +++ b/To-Do.md @@ -1,7 +1,13 @@ # TO-DO In this section I will describe some major changes that I plan to implement. This list is dynamic and will change eventually. Minor issues, bugs, and others can be found [here](../../issues). - +## Pawn attributes & Motivation & Treatment happiness +- There will be more adjustments to how quickly pawn is beign motivated, how fast he is going to be lazy etc. +- Motivation will be increased with high social/combat power of warden +- Prisoners will be able to do forbidden jobs, but: +- Prisoners will get more lazy if doing jobs that they do not like. +- Prisoners will get more lazy if they are working in bad conditions. +- Prisoners will get less treat. happiness when their faction is at very bad stance with player's faction. ## Treatment - I will add new need "Treatment" or "Treatment happiness"(by default hidden, changeable via settings if possible). It will indicate "how good" prisoners are treated. This will make boost to mood, and will reduce chance of revolts.[/li] - Free time, or joy time will now give very little motivation boost, but instead it will give treatment happiness. diff --git a/Translation sheets/Dutch.xlsx b/Translation sheets/Dutch.xlsx index 6eb535443b432bd1405d9b60bd2980431c59db7b..c5d547780ef502156d828db4a90b1a73aa993c81 100644 GIT binary patch delta 17744 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

    JK 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 I^;nQn0Fx;|zW@LL delta 17566 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 literal 0 HcmV?d00001 diff --git a/changelog.txt b/changelog.txt index 0f815e55..bd9ad4a2 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,12 @@ Changelog: -0.10.0 +============== BETA VERSION ============== +0.10.1 +- reworked news pop-up window +- fixed construction job +- new system for removing mod from save (new button in mod menu) +- wardens no longer deliver food if prisoners can get it from another room +- added alert when prisoners can escape +- prisoners now will pick up weapons if treated bad - fixed food reservation throwing errors - added prisoner sucicides - added +5 bonus to mood while prisoner have free time @@ -19,7 +26,9 @@ Changelog: - "Treatment happiness" will decrease if health conditions are bad, when prisoners are hungry, or they're working. - added new hidden need "Treatment" that indicates level of prison treatment towards prisoner (WIP) - now work settings reset after prisoner is recruited, so it should fix some issues +- finally fixed "OnGui()" error, big thanks to @notfood (https://github.com/notfood) - fixed blurred effect on settings window +- fixed Revolts 0.9.11 - fixed compatibility with Fluffy's WorkTab (final) 0.9.10 @@ -54,7 +63,7 @@ Changelog: - added option to disable icons above prisoners heads in mod menu - corrected casing in default prisoner interaction mode option in mod menu - fixed error "null reference in onGui()" when loading save -*********** BETA 18 COMPATIBILITY PATCHES ******************* +============== BETA 18 COMPATIBILITY PATCHES ============== 0.8.9.5 - cleared some code debris, hope it fix the "unknown bug" 0.8.9.4 @@ -71,7 +80,7 @@ Changelog: 0.8.9 - updated libraries to RimWorld b18 - minor fixes related to uptading to RimWorld b18 -************************************************************* +=========================================================== 0.8.8 - changed slow from prisoners chains to act as factor instead offset - fixed compatibility issues with Seeds Please (again) @@ -142,31 +151,25 @@ Changelog: - fixed that new subscribers see all "old player" messages - fixed reserving food for prisoners - fixed "work settings not initialized" error - 0.5 - added growing to available jobs - added prisoner work priorities to "Work" tab - food is no longer reserved in prison cell unless is brought by warden - food is now delivered by Wardens even if prisoner get out of his prison cell - disabled passive "Laziness" when prisoner have no work to do - 0.4 - added "Laziness" bar in "Needs" tab - fixed plant cut / harvest result being forbidden - added German translation - 0.3b - fixed "Forbidden" bug - 0.3a - wardens no longer watch over hungry or tired prisoners - 0.3 - added work of Warden type that supervise prisoners - prisoners will get lazy - added version checker - added stat laziness - added "Work" prisoner interaction mode - 0.2a -- added tutorial in "LearningHelper" +- added tutorial in "LearningHelper" \ No newline at end of file diff --git a/credits.md b/credits.md index 08822a7d..db8a1308 100644 --- a/credits.md +++ b/credits.md @@ -2,4 +2,11 @@ Reflection powered by **[Harmony](https://github.com/pardeike/Harmony/wiki)** [![Harmony](https://camo.githubusercontent.com/074bf079275fa90809f51b74e9dd0deccc70328f/68747470733a2f2f7332342e706f7374696d672e6f72672f3538626c31727a33392f6c6f676f2e706e67)](https://github.com/pardeike/Harmony/wiki) -Also I want to thank community for support and feedback! \ No newline at end of file +Icons downloaded from: +* freepik.com +* flaticon.com + +Arrow in motivation icon made by [Dave Gandy](https://www.flaticon.com/authors/dave-gandy) + +Also I want to thank community for great support and feedback! +This mod wouldn't be so great without you. \ No newline at end of file

    x;5ak&N_ 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 z zWSX4ywhm?_4cE{eO#v=8j3p`p<<&7kj=IpUyC2UCkb)9}g)%LvAkKnQDsWN{4x6!( z-eix9z_HERoswJUMe|!?)ZO?CL|^k*fRS|nvbFJ8 zv|NuOYBYr{><){*Q@246^-2&`HCBC|w6ch#zuk!4ij1QsWMMXTs}yRP?4#4iU5$-J zwBw6ezu)Mn?dK{eakAH7>EcLt!CSx-noxn=x{!C~5h=EW|6uEpMDRbwjPK`yZ#u>m z13UYG|6wfntz7WY#u#ZvO?9T<&oz$J+Jj^{D8XI>X2OR9VT>8Cvfz8Cgzufw7apot zO!#PUxXT4UOGP~@cEn8k1z!mcj|YcCDtHkK_9EC2@W?Yhjs>@!X7)uc_~D$fwK41~ zqY!*;^xCNs@N&ucG#31mmnZz_ZUKRCECrvWg4sHO9VvR}D1zU9eZs}{jE9c!FgQ2@ ze&KRd+&`Un7hi_Zy+Q>0oOe3wPF5WGx_7GWhycK_QD?QOk80W<%?EIq0cYc-yr%8d z#W8o8;x*%=6k36VTvG^5#f4QmEB8X)*{!1`&))KJa=Z0c#Z$c;afgdvM~tSPs(75r znyb=U8+(_6ZUje0nURZD5?{f_H#-+*72C=^15=I9GjPbR53PqLX7%6ZjKR;F9H|}KV;Il-f1%-IFGx-g8k_P zDH;1Y+aaJ`mfJd$=6*XnPzQTsd#3`3{Yedn-fKZt zu9Uj5kJjcE3ze$-i~5Gkw#=_yg*of)$XNl;-G56(yPhIC1{9|Ue$3LCR{Eya-(M-x z{0~dk4s5^JP6;cc%VTxr7b!@&F5k7Q5UJ0Z8^Cb19aOZ$#Aq0vy68{2z?(SXJQ6Ji^w)DNtAkC@dT^DsC( z46yHO!B())EbFL>0Q)TXG-Z5$PVL}+IxrZ7QxUw(1wV-yKd~aoQ1~N(@Z&1YH}uNm zz-?iAXCTU79-NMW9bp_iM#p%(0iK>BUd;*5V?nB>NDv-7!h4=^;Z-u8MGdUamyG90 z@Z%WqmB9FgZu#AV5Wh@R7Rj4?4(jkE6{kb@b|qCR&O}Jl&Z1=1i03K^_jm*3xRS$B z$5#4zD3;WzU5NhoBDw7q`f^wedCfOc*6fe^zb)FfGOnuJ*pMm}3nGRPIrnMU-?bV= zM9pPi`Bb@R7sZB?vW-wzxYykDDmJLWOI2u8<+}CDbrRtE9DAQgF9h&pn|@|Z+q<01 zd`5&T!>G?uXGBZZW%71#xEL6BbH?>C<1#Q#xh|3!bJ92e<84q7A_0Xp^l85oEEe-R z5b*3GV6jjju*xoB;q@tJj9#N9>&9uH1%rVGV-}DI?oOpqgu#rQ>N-}tmucg%4Z-3} z8DR*>Rw!=%AKu>NRkkck^ZV9rPGe@bdyV(u5#iBghB7D>MP` z4bIBNV)WoHhw!ekm`v#+D8XytWrQ-_N{4X6Rog zD?Ol8%1W#z2wbs@<;+T*Q+5C%R3rUd%NSO3vt*oSfHMy~&K40|(cgBpS9uK^Uw>zHq^zM)8}HETPEtlQB5rw9a^uVAT1jXNGJNLpYpL*4VrwS$~yIkK$pFy+b%3AH2`PM$op%UGS1Q0 zvtURn2vJ|i`p@s>G@g=y=?gm_a}SBKTneO_BBtU{3hj4&d90Uiq

    - v0.9.11 + v0.10.0[DEV]