replaced compinducelactation with hediffcomp; cleaner

todo:
add abilitydef to hucow handler to begin inducing lactation; give lactation induction hediff to recipient pawn
add thoughtdef w/ thoughtworker_hediff to give pawns thoughts on inducing lactation
This commit is contained in:
c0ffee 2022-10-14 18:10:00 -07:00
parent 1d6ecb3f95
commit 5b4b203d13
19 changed files with 233 additions and 70 deletions

View file

@ -43,4 +43,48 @@
<li Class="CRIALactation.CompProperties_AbilityConvertHucow" />
</comps>
</AbilityDef>
<AbilityDef>
<defName>BeginInducingLactation</defName>
<label>begin inducing lactation</label>
<description>Stimulate someone's milk ducts to begin the process of lactation without childbirth.</description>
<jobDef>CastAbilityOnThingMelee</jobDef>
<iconPath>UI/Abilities/WorkDrive</iconPath>
<warmupMoteSocialSymbol>UI/Issues/Lactating</warmupMoteSocialSymbol>
<stunTargetWhileCasting>True</stunTargetWhileCasting>
<showPsycastEffects>False</showPsycastEffects>
<displayGizmoWhileUndrafted>True</displayGizmoWhileUndrafted>
<disableGizmoWhileUndrafted>False</disableGizmoWhileUndrafted>
<overrideGroupCooldown>True</overrideGroupCooldown>
<cooldownTicksRange>3000</cooldownTicksRange>
<hotKey>Misc12</hotKey>
<uiOrder>4</uiOrder>
<warmupStartSound>WorkDrive_Warmup</warmupStartSound>
<statBases>
<Ability_Duration>3000</Ability_Duration>
</statBases>
<verbProperties>
<verbClass>Verb_CastAbilityTouch</verbClass>
<drawAimPie>False</drawAimPie>
<range>-1</range>
<warmupTime>3.0</warmupTime>
<targetParams>
<canTargetAnimals>false</canTargetAnimals>
<canTargetSelf>false</canTargetSelf>
<canTargetBuildings>false</canTargetBuildings>
<canTargetMechs>false</canTargetMechs>
<onlyTargetColonistsOrPrisonersOrSlaves>true</onlyTargetColonistsOrPrisonersOrSlaves>
</targetParams>
</verbProperties>
<comps>
<li Class="CompProperties_AbilityGiveHediff">
<compClass>CompAbilityEffect_GiveHediff</compClass>
<hediffDef>Hucow</hediffDef>
<applicableToMechs>False</applicableToMechs>
</li>
<li Class="CRIALactation.CompProperties_AbilityConvertHucow" />
</comps>
</AbilityDef>
</Defs>

View file

@ -21,4 +21,26 @@
</li>
</stages>
</HediffDef>
<HediffDef ParentName="RoleStatBuff">
<defName>InducingLactation</defName>
<label>inducing lactation</label>
<description>This person's breasts are being encouraged to lactate. This is a long, arduous process of breast and nipple stimulation. It causes feelings of soreness and swelling that ends once milk begins expressing.</description>
<hediffClass>HediffWithComps</hediffClass>
<comps>
<li Class="HediffCompProperties_DisappearsOnDeath" />
<li Class="CRIALactation.HediffCompProperties_LactationInduction" />
</comps>
<isBad>false</isBad>
<stages>
<li>
<statFactors>
<MilkProductionYield>2.75</MilkProductionYield>
<MilkProductionSpeed>0.5</MilkProductionSpeed>
<WorkSpeedGlobal>0.4</WorkSpeedGlobal>
<MoveSpeed>0.65</MoveSpeed>
</statFactors>
</li>
</stages>
</HediffDef>
</Defs>

View file

@ -1,18 +1,20 @@
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<!--
<MemeGroupDef>
<defName>Sexuality</defName>
<drawOffset>(0.09, 0.33)</drawOffset>
<maxRows>1</maxRows>
</MemeGroupDef>-->
</MemeGroupDef>
<MemeDef>
<defName>Hucow</defName>
<label>hucow</label>
<description>Breast milk should be produced for and consumed by all.</description>
<iconPath>UI/Memes/Hucow</iconPath>
<groupDef>Misc</groupDef>
<groupDef>Sexuality</groupDef>
<exclusionTags>
<li>Sexuality</li>
</exclusionTags>
<impact>3</impact>
<renderOrder>50</renderOrder>
<requireOne>
@ -20,9 +22,6 @@
<li>Lactating_Essential</li>
<li>Lactating_MandatoryHucow</li>
</li>
<li>
<li>IdeoRole_HucowHandler</li>
</li>
</requireOne>
<generalRules>
<rulesStrings>
@ -64,21 +63,17 @@
</descriptionMaker>
<symbolPacks>
<li>
<ideoName>Lactatism</ideoName>
<theme>lactation</theme>
<adjective>lactatist</adjective>
<member>lactatist</member>
<ideoName>Bovinism</ideoName>
<theme>bovines</theme>
<adjective>Bovine</adjective>
<member>Bovinist</member>
</li>
<li>
<ideoName>Hucowism</ideoName>
<theme>hucows</theme>
<adjective>bovine</adjective>
<adjective>hucow</adjective>
<member>Hucowist</member>
</li>
</symbolPacks>
<ritualsToMake>1</ritualsToMake>
<replaceRitualsWithTags>
<li>CelebratedDate</li>
</replaceRitualsWithTags>
</MemeDef>
</Defs>

View file

@ -30,20 +30,27 @@
</roleTags>
</PreceptDef>
-->
<IssueDef>
<defName>HucowHandling</defName>
<label>hucow handling</label>
<iconPath>UI/Issues/Lactating</iconPath>
</IssueDef>
<PreceptDef ParentName="PreceptRoleSingleBase">
<defName>IdeoRole_HucowHandler</defName>
<issue>HucowHandling</issue>
<!--this is needed to override old issue in issuedef to have hucow handler role-->
<label>hucow handler</label>
<description>A special ideoligious status which can convert lactating pawns to hucows, increasing their lactation yield at the cost of their work and movement speed. \n\nThey also receive an increase in the speed at which they harvest milk, and the speed at which they induce lactation in other pawns.</description>
<iconPath>UI/Roles/SpecialistMelee</iconPath>
<nameMaker>NamerRoleMoralist</nameMaker>
<displayOrderInImpact>100</displayOrderInImpact>
<roleTags>
<li>HucowHandler</li>
</roleTags>
<roleRequirements>
<li Class="RoleRequirement_SameIdeo">
<labelKey>RoleRequirementLabelSameIdeo</labelKey>
</li>
<li Class="RoleRequirement_MinSkillAny">
<skills>
<Animals>6</Animals>
@ -51,7 +58,9 @@
</li>
</roleRequirements>
<roleRequiredWorkTags>
<li>Animals</li>
</roleRequiredWorkTags>
<roleEffects>
<li Class="RoleEffect_PawnStatOffset">
<statDef>AnimalGatherSpeed</statDef>
@ -139,7 +148,6 @@
<grantedAbilities>
<li>ConvertToHucow</li>
</grantedAbilities>
<displayOrderInImpact>2</displayOrderInImpact>
</PreceptDef>
</Defs>