Changed Living Cumbucket behaviour

This commit is contained in:
Vegapnk 2024-07-23 09:06:36 +02:00
parent 4ef1c95f1f
commit c2f355f954
4 changed files with 32 additions and 13 deletions

View file

@ -182,9 +182,11 @@ Its just meant if you want to drop me a tip.
- Made the Feminizer and Twinkifier configurable with XML. - Made the Feminizer and Twinkifier configurable with XML.
- Typos in the Hediff Defs, tweaking of some values. - Typos in the Hediff Defs, tweaking of some values.
- Living Cum-Bucket & Rut Genes - Living Cum-Bucket & Rut Genes
- Great images by @WasMachenDennSachen - Great icons by @Alpenglow
**Beta-2** (17-07-2024) **Since Beta-2** (17-07-2024)
- Changed behaviour of living cumbucket. Now, once "really full" the output happens more rarely but is much more at once.
# 2.1.0 (27-06-2024) # 2.1.0 (27-06-2024)

View file

@ -20,7 +20,7 @@
<li>0.5</li> <li>0.5</li>
<li>0.25</li> <li>0.25</li>
<li>0.1</li> <li>0.1</li>
<li>0.005</li> <li>0.5</li>
</mtbDaysPerStage> </mtbDaysPerStage>
</li> </li>
</comps> </comps>
@ -74,7 +74,7 @@
</capMods> </capMods>
</li> </li>
<li> <li>
<label>living fountain</label> <label>living reservior</label>
<minSeverity>10.1</minSeverity> <minSeverity>10.1</minSeverity>
<hungerRateFactor>0.1</hungerRateFactor> <hungerRateFactor>0.1</hungerRateFactor>
<statOffsets> <statOffsets>

View file

@ -6,7 +6,7 @@
<JobDef> <JobDef>
<defName>ProcessCumbucket</defName> <defName>ProcessCumbucket</defName>
<driverClass>RJW_Genes.JobDriver_ProcessingCumbucket</driverClass> <driverClass>RJW_Genes.JobDriver_ProcessingCumbucket</driverClass>
<playerInterruptible>true</playerInterruptible> <playerInterruptible>false</playerInterruptible>
<casualInterruptible>false</casualInterruptible> <casualInterruptible>false</casualInterruptible>
<reportString>processing internal cumbucket.</reportString> <reportString>processing internal cumbucket.</reportString>
<suspendable>false</suspendable> <suspendable>false</suspendable>

View file

@ -97,8 +97,9 @@ namespace RJW_Genes
return; return;
} }
//TODO: Fine-Tune the amount and how things calm down. // Case 1: "Normal Severity", just puke out a bit of cum here and there.
if (hediff.Severity <= 10)
{
Thing cum = ThingMaker.MakeThing(cumDef); Thing cum = ThingMaker.MakeThing(cumDef);
cum.Position = cell; cum.Position = cell;
int stacks = Math.Max(1, (int)(hediff.Severity * 1.5)); int stacks = Math.Max(1, (int)(hediff.Severity * 1.5));
@ -106,6 +107,22 @@ namespace RJW_Genes
cum.stackCount = stacks; cum.stackCount = stacks;
cum.SpawnSetup(map, false); cum.SpawnSetup(map, false);
hediff.Severity -= (stacks / 50); hediff.Severity -= (stacks / 50);
} else
// Case 2: Reserviour mode, put out a lot of cum at once but less often.
{
int stacks = Math.Max(1, (int)(hediff.Severity * 1.5));
while (stacks > 0)
{
Thing cum = ThingMaker.MakeThing(cumDef);
cum.Position = cell;
var curStacks = Math.Min(stacks, 75); // 75 is the default max stacksize ...
cum.stackCount = stacks;
cum.SpawnSetup(map, false);
hediff.Severity -= (curStacks / 50);
stacks -= curStacks;
}
}
} }
private int ticksLeft; private int ticksLeft;