-
-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* mid work commit * Release candiadate * cosmetic changes * fixing wardens * modify hediffs * last fixes * new option feature
- Loading branch information
Showing
62 changed files
with
2,853 additions
and
1,472 deletions.
There are no files selected for viewing
Binary file not shown.
Binary file modified
BIN
+0 Bytes
(100%)
1.4/CashRegistry/Assemblies/PrisonLaborCashRegistryCompatibility.dll
Binary file not shown.
Binary file modified
BIN
+0 Bytes
(100%)
1.4/CleaningArea/Assemblies/PrisonLaborCleaningAreaCompatibility.dll
Binary file not shown.
Binary file modified
BIN
+0 Bytes
(100%)
1.4/ColonyGroups/Assemblies/PrisonLaborColonyGroupsCompatibility.dll
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
<?xml version="1.0" encoding="utf-8" ?> | ||
<Defs> | ||
<PrisonLabor.Core.Interrogation.InterrogationQuestGenDef> | ||
<defName>PL_GenQuest</defName> | ||
<questScriptDefs> | ||
<li>OpportunitySite_ItemStash</li> | ||
<li>OpportunitySite_WorkSite</li> | ||
</questScriptDefs> | ||
</PrisonLabor.Core.Interrogation.InterrogationQuestGenDef> | ||
<ThingDef ParentName="ArtableFurnitureBase"> | ||
<defName>PL_InterrogationChair</defName> | ||
<label>interrogation chair</label> | ||
<description>Not comfortable chair used to interrogate prisoners.</description> | ||
<graphicData> | ||
<texPath>Things/Building/Furniture/DiningChair</texPath> | ||
<graphicClass>Graphic_Multi</graphicClass> | ||
<drawSize>(1,1)</drawSize> | ||
<damageData> | ||
<rectN>(0.25,0.234375,0.5,0.28125)</rectN> | ||
<rectS>(0.25,0.234375,0.5,0.28125)</rectS> | ||
<rectE>(0.28125,0.25,0.453125,0.25)</rectE> | ||
<rectW>(0.28125,0.25,0.453125,0.25)</rectW> | ||
</damageData> | ||
<shadowData> | ||
<volume>(0.23, 0.26, 0.23)</volume> | ||
</shadowData> | ||
</graphicData> | ||
<altitudeLayer>Building</altitudeLayer> | ||
<statBases> | ||
<MaxHitPoints>100</MaxHitPoints> | ||
<WorkToBuild>8000</WorkToBuild> | ||
<Mass>5</Mass> | ||
<Flammability>1.0</Flammability> | ||
<Beauty>1</Beauty> | ||
<Comfort>0.30</Comfort> | ||
<StyleDominance MayRequire="Ludeon.RimWorld.Ideology">5</StyleDominance> | ||
</statBases> | ||
<socialPropernessMatters>true</socialPropernessMatters> | ||
<stuffCategories> | ||
<li>Metallic</li> | ||
<li>Woody</li> | ||
</stuffCategories> | ||
<costStuffCount>45</costStuffCount> | ||
<pathCost>30</pathCost> | ||
<designationHotKey>Misc7</designationHotKey> | ||
<fillPercent>0.35</fillPercent> | ||
<defaultPlacingRot>South</defaultPlacingRot> | ||
<uiOrder>2410</uiOrder> | ||
<building> | ||
<isSittable>true</isSittable> | ||
<paintable>true</paintable> | ||
</building> | ||
<constructionSkillPrerequisite>4</constructionSkillPrerequisite> | ||
<researchPrerequisites> | ||
<li>ComplexFurniture</li> | ||
</researchPrerequisites> | ||
<comps> | ||
<li Class="CompProperties_Styleable"/> | ||
<li Class="PrisonLabor.Core.Interrogation.CompPropertiesInterrogation"/> | ||
</comps> | ||
</ThingDef> | ||
<RoomRoleDef> | ||
<defName>PL_InterrogationRoom</defName> | ||
<label>interrogation room</label> | ||
<workerClass>PrisonLabor.Core.Interrogation.RoomRoleWorker_InterrogationRoom</workerClass> | ||
</RoomRoleDef> | ||
</Defs> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
<?xml version="1.0" encoding="utf-8" ?> | ||
<Defs> | ||
<InteractionDef> | ||
<defName>PL_InterrogateInteraction</defName> | ||
<label>interrogate</label> | ||
<workerClass>InteractionWorker</workerClass> | ||
<ignoreTimeSinceLastInteraction>True</ignoreTimeSinceLastInteraction> | ||
<symbol>UI/Icons/Rituals/Trial</symbol> | ||
<logRulesInitiator> | ||
<rulesStrings> | ||
<li>r_logentry->[INITIATOR_nameDef] asked [RECIPIENT_nameDef] [askPart].</li> | ||
<li>r_logentry->[INITIATOR_nameDef] ordered [RECIPIENT_nameDef] to told about [askPart].</li> | ||
<li>askPart->where is the loot</li> | ||
<li>askPart->why is Gamora</li> | ||
<li>askPart->when finally starts talking</li> | ||
<li>askPart->where is their base</li> | ||
</rulesStrings> | ||
</logRulesInitiator> | ||
</InteractionDef> | ||
<InteractionDef> | ||
<defName>PL_BeIntrrogatedInteraction</defName> | ||
<label>being interrogated</label> | ||
<workerClass>InteractionWorker</workerClass> | ||
<ignoreTimeSinceLastInteraction>True</ignoreTimeSinceLastInteraction> | ||
<symbol>UI/Icons/Rituals/TrialDefend</symbol> | ||
<logRulesInitiator> | ||
<rulesStrings> | ||
<li>r_logentry->[INITIATOR_nameDef] called for mercy.</li> | ||
<li>r_logentry->[INITIATOR_nameDef] begged to spare the face.</li> | ||
<li>r_logentry->[INITIATOR_nameDef] kept silence.</li> | ||
<li>r_logentry->[INITIATOR_nameDef] has no idea.</li> | ||
<li>r_logentry->[INITIATOR_nameDef] told everything.</li> | ||
</rulesStrings> | ||
</logRulesInitiator> | ||
</InteractionDef> | ||
</Defs> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,160 @@ | ||
<?xml version="1.0" encoding="utf-8" ?> | ||
<Defs> | ||
<PreceptDef> | ||
<defName>PL_Interrogation</defName> | ||
<label>prisoner interrogation</label> | ||
<description>Initiate a prisoner interrogation. Warden will take prisoner and try to get usefull information. Depends on warden's traits and abilities prisoner may end up pretty beat up.</description> | ||
<ritualPatternBase>PL_Interrogation</ritualPatternBase> | ||
<iconPath>Things/Mote/SpeechSymbols/Speech</iconPath> | ||
<issue>Ritual</issue> | ||
<preceptClass>Precept_Ritual</preceptClass> | ||
<visible>false</visible> | ||
<classic>true</classic> | ||
<countsTowardsPreceptLimit>false</countsTowardsPreceptLimit> | ||
<selectionWeight>1.0</selectionWeight> | ||
<ignoreNameUniqueness>true</ignoreNameUniqueness> | ||
<usesIdeoVisualEffects>false</usesIdeoVisualEffects> | ||
<mergeRitualGizmosFromAllIdeos>true</mergeRitualGizmosFromAllIdeos> | ||
<useRepeatPenalty>false</useRepeatPenalty> | ||
<showRitualFloatMenuOption>false</showRitualFloatMenuOption> | ||
</PreceptDef> | ||
<RitualPatternDef> | ||
<defName>PL_Interrogation</defName> | ||
<ritualOnlyForIdeoMembers>false</ritualOnlyForIdeoMembers> | ||
<ritualBehavior>PL_Interrogation</ritualBehavior> | ||
<ritualTargetFilter>SelectedThing</ritualTargetFilter> | ||
<ritualObligationTargetFilter>PL_InterrogationRoom</ritualObligationTargetFilter> | ||
<ritualOutcomeEffect>PL_Interrogation</ritualOutcomeEffect> | ||
<playsIdeoMusic>false</playsIdeoMusic> | ||
<alwaysStartAnytime>true</alwaysStartAnytime> | ||
</RitualPatternDef> | ||
<RitualOutcomeEffectDef> | ||
<defName>PL_Interrogation</defName> | ||
<workerClass>PrisonLabor.Core.Interrogation.Ritual.RitualOutcomeEffectWorker_Interrogation</workerClass> | ||
<warnOnLowQuality>false</warnOnLowQuality> | ||
<givesDevelopmentPoints>false</givesDevelopmentPoints> | ||
<comps> | ||
<li Class="RitualOutcomeComp_Indoors"/> | ||
</comps> | ||
</RitualOutcomeEffectDef> | ||
<RitualObligationTargetFilterDef> | ||
<defName>PL_InterrogationRoom</defName> | ||
<workerClass>PrisonLabor.Core.Interrogation.Ritual.RitualObligationTargetWorker_Interrogation</workerClass> | ||
</RitualObligationTargetFilterDef> | ||
<RitualBehaviorDef> | ||
<defName>PL_Interrogation</defName> | ||
<workerClass>PrisonLabor.Core.Interrogation.Ritual.RitualBehaviorWorker_Interrogation</workerClass> | ||
<durationTicks>5000</durationTicks> | ||
<spectatorFilter Class="PrisonLabor.Core.Interrogation.Ritual.RitualSpectatorFilter_None"> | ||
<description>Spectators are not needed</description> | ||
</spectatorFilter> | ||
<roles> | ||
<li Class="RitualRoleWarden"> | ||
<label>warden</label> | ||
<missingDesc>an warden</missingDesc> | ||
<id>warden</id> | ||
<maxCount>1</maxCount> | ||
<required>True</required> | ||
<countsAsParticipant>False</countsAsParticipant> | ||
<allowChild>false</allowChild> | ||
<mustBeAbleToReachTarget>True</mustBeAbleToReachTarget> | ||
</li> | ||
<li Class="PrisonLabor.Core.Interrogation.Ritual.NonColonyPrisonerRole"> | ||
<label>prisoner</label> | ||
<missingDesc>a prisoner</missingDesc> | ||
<id>prisoner</id> | ||
<maxCount>1</maxCount> | ||
<required>True</required> | ||
<countsAsParticipant>False</countsAsParticipant> | ||
<ignoreBleeding>false</ignoreBleeding> | ||
</li> | ||
</roles> | ||
<stages> | ||
<li Class="RitualStage_InteractWithPrisoner"> | ||
<spectatorsRequired>false</spectatorsRequired> | ||
<failTriggers> | ||
<li Class="StageFailTrigger_TargetPawnUnreachable"> | ||
<takerId>warden</takerId> | ||
<takeeId>prisoner</takeeId> | ||
<desc>Convicted prisoner is not reachable.</desc> | ||
</li> | ||
<li Class="StageFailTrigger_PawnAsleep"> | ||
<desc>escort asleep</desc> | ||
<pawnId>warden</pawnId> | ||
</li> | ||
</failTriggers> | ||
<endTriggers> | ||
<li Class="StageEndTrigger_RolesArrived"> | ||
<roleIds> | ||
<li>prisoner</li> | ||
</roleIds> | ||
</li> | ||
</endTriggers> | ||
<roleBehaviors> | ||
<li> | ||
<roleId>warden</roleId> | ||
<dutyDef>DeliverPawnToCell</dutyDef> | ||
<customPositions> | ||
<li Class="PrisonLabor.Core.Interrogation.Ritual.RitualPosition_ThingCenter"/> | ||
</customPositions> | ||
</li> | ||
<li> | ||
<roleId>prisoner</roleId> | ||
<dutyDef>Idle</dutyDef> | ||
</li> | ||
</roleBehaviors> | ||
</li> | ||
<li> | ||
<spectatorsRequired>false</spectatorsRequired> | ||
<endTriggers> | ||
<li Class="StageEndTrigger_DurationPercentage"> | ||
<percentage>1</percentage> | ||
</li> | ||
</endTriggers> | ||
<roleBehaviors> | ||
<li> | ||
<roleId>warden</roleId> | ||
<dutyDef>PL_Interrogate</dutyDef> | ||
<customPositions> | ||
<li Class="RitualPosition_InFrontThingCenter"> | ||
<highlight>false</highlight> | ||
</li> | ||
</customPositions> | ||
</li> | ||
<li> | ||
<roleId>prisoner</roleId> | ||
<dutyDef>StandOnCell</dutyDef> | ||
</li> | ||
</roleBehaviors> | ||
</li> | ||
</stages> | ||
</RitualBehaviorDef> | ||
<DutyDef> | ||
<defName>PL_Interrogate</defName> | ||
<hook>HighPriority</hook> | ||
<socialModeMax>Off</socialModeMax> | ||
<ritualSpectateTarget>true</ritualSpectateTarget> | ||
<thinkNode Class="ThinkNode_Priority"> | ||
<subNodes> | ||
<li Class="ThinkNode_ConditionalRandom"> | ||
<chance>0.6</chance> | ||
<subNodes> | ||
<li Class="JobGiver_WanderInGatheringArea"> | ||
<ticksBetweenWandersRange>50~250</ticksBetweenWandersRange> | ||
</li> | ||
</subNodes> | ||
</li> | ||
<li Class="PrisonLabor.Core.Interrogation.Ritual.JobGiver_Interrogate"> | ||
<soundDefMale>Speech_Ideoligious_Male</soundDefMale> | ||
<soundDefFemale>Speech_Ideoligious_Female</soundDefFemale> | ||
</li> | ||
</subNodes> | ||
</thinkNode> | ||
</DutyDef> | ||
<JobDef> | ||
<defName>PL_Interrogate</defName> | ||
<driverClass>PrisonLabor.Core.Interrogation.Ritual.JobDriver_Interrogate</driverClass> | ||
<reportString>talking.</reportString> | ||
<casualInterruptible>false</casualInterruptible> | ||
</JobDef> | ||
</Defs> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
<?xml version="1.0" encoding="utf-8" ?> | ||
<Defs> | ||
<ThoughtDef> | ||
<defName>PL_BitMe</defName> | ||
<thoughtClass>Thought_MemorySocial</thoughtClass> | ||
<durationDays>10</durationDays> | ||
<stackLimit>300</stackLimit> | ||
<stackLimitForSameOtherPawn>1</stackLimitForSameOtherPawn> | ||
<developmentalStageFilter>Baby, Child, Adult</developmentalStageFilter> | ||
<stages> | ||
<li> | ||
<label>bit me</label> | ||
<description>this fricking lunatic bit me during interrogation</description> | ||
<baseOpinionOffset>-7</baseOpinionOffset> | ||
</li> | ||
</stages> | ||
</ThoughtDef> | ||
<ThoughtDef> | ||
<defName>PL_KindInterrogation</defName> | ||
<thoughtClass>Thought_MemorySocial</thoughtClass> | ||
<durationDays>10</durationDays> | ||
<stackLimit>300</stackLimit> | ||
<stackLimitForSameOtherPawn>1</stackLimitForSameOtherPawn> | ||
<developmentalStageFilter>Baby, Child, Adult</developmentalStageFilter> | ||
<stages> | ||
<li> | ||
<label>kind interrogation</label> | ||
<description>Interrogation was kind of... nice?</description> | ||
<baseOpinionOffset>2</baseOpinionOffset> | ||
</li> | ||
</stages> | ||
</ThoughtDef> | ||
<ThoughtDef> | ||
<defName>PL_Interrogated</defName> | ||
<thoughtClass>Thought_MemorySocial</thoughtClass> | ||
<durationDays>10</durationDays> | ||
<stackLimit>300</stackLimit> | ||
<stackLimitForSameOtherPawn>1</stackLimitForSameOtherPawn> | ||
<developmentalStageFilter>Baby, Child, Adult</developmentalStageFilter> | ||
<stages> | ||
<li> | ||
<label>interrogation</label> | ||
<baseOpinionOffset>-7</baseOpinionOffset> | ||
</li> | ||
</stages> | ||
</ThoughtDef> | ||
<ThoughtDef> | ||
<defName>PL_BrutallyInterrogated</defName> | ||
<thoughtClass>Thought_MemorySocial</thoughtClass> | ||
<durationDays>10</durationDays> | ||
<stackLimit>300</stackLimit> | ||
<stackLimitForSameOtherPawn>1</stackLimitForSameOtherPawn> | ||
<developmentalStageFilter>Baby, Child, Adult</developmentalStageFilter> | ||
<nullifyingTraits> | ||
<li>Masochist</li> | ||
</nullifyingTraits> | ||
<stages> | ||
<li> | ||
<label>brutal interrogation</label> | ||
<description>they beat me up during interrogation</description> | ||
<baseOpinionOffset>-7</baseOpinionOffset> | ||
<baseMoodEffect>-7</baseMoodEffect> | ||
</li> | ||
</stages> | ||
</ThoughtDef> | ||
</Defs> |
Oops, something went wrong.